@rtsee/ngx 0.0.58 → 0.0.60

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 (179) hide show
  1. package/dist/ngx/fesm2022/rtsee-ngx.mjs +1689 -0
  2. package/dist/ngx/fesm2022/rtsee-ngx.mjs.map +1 -0
  3. package/dist/ngx/index.d.ts +538 -0
  4. package/dist/ngx/src/lib/theme/auth/auth-container.scss +198 -0
  5. package/{projects → dist}/ngx/src/lib/theme/auth/index.scss +0 -1
  6. package/dist/ngx/src/lib/theme/auth/variables.scss +1 -0
  7. package/{projects → dist}/ngx/src/lib/theme/common-variables.scss +1 -0
  8. package/dist/ngx/src/lib/theme/containers/index.scss +4 -0
  9. package/dist/ngx/src/lib/theme/containers/nav-item.scss +99 -0
  10. package/dist/ngx/src/lib/theme/containers/nav.scss +86 -0
  11. package/{projects → dist}/ngx/src/lib/theme/containers/shell.scss +22 -31
  12. package/{projects → dist}/ngx/src/lib/theme/containers/variables.scss +10 -1
  13. package/dist/ngx/src/lib/theme/forms/common.scss +51 -0
  14. package/dist/ngx/src/lib/theme/forms/index.scss +1 -0
  15. package/dist/ngx/src/lib/theme/forms/variables.scss +8 -0
  16. package/{projects → dist}/ngx/src/lib/theme/styles.scss +1 -0
  17. package/package.json +13 -7
  18. package/.editorconfig +0 -16
  19. package/CHANGELOG.md +0 -116
  20. package/angular.json +0 -67
  21. package/jest.config.ts +0 -9
  22. package/projects/ngx/ng-package.json +0 -8
  23. package/projects/ngx/package.json +0 -20
  24. package/projects/ngx/src/lib/common/components/preloader/preloader.component.html +0 -5
  25. package/projects/ngx/src/lib/common/components/preloader/preloader.component.ts +0 -30
  26. package/projects/ngx/src/lib/components/constans/common.const.ts +0 -8
  27. package/projects/ngx/src/lib/components/enums/form.enum.ts +0 -8
  28. package/projects/ngx/src/lib/components/rtsee/rtsee-conference.component.html +0 -70
  29. package/projects/ngx/src/lib/components/rtsee/rtsee-conference.component.ts +0 -35
  30. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.html +0 -54
  31. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.scss +0 -70
  32. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.ts +0 -24
  33. package/projects/ngx/src/lib/components/rtsee-auth/auth/auth.component.html +0 -12
  34. package/projects/ngx/src/lib/components/rtsee-auth/auth/auth.component.ts +0 -32
  35. package/projects/ngx/src/lib/components/rtsee-auth/forgot-password/forgot-password.component.html +0 -35
  36. package/projects/ngx/src/lib/components/rtsee-auth/forgot-password/forgot-password.component.ts +0 -34
  37. package/projects/ngx/src/lib/components/rtsee-auth/reset-password/reset-password.component.html +0 -43
  38. package/projects/ngx/src/lib/components/rtsee-auth/reset-password/reset-password.component.ts +0 -79
  39. package/projects/ngx/src/lib/components/rtsee-auth/services/auth.service.ts +0 -37
  40. package/projects/ngx/src/lib/components/rtsee-auth/services/utils.service.ts +0 -20
  41. package/projects/ngx/src/lib/components/rtsee-auth/sign-in/sign-in.component.html +0 -46
  42. package/projects/ngx/src/lib/components/rtsee-auth/sign-in/sign-in.component.ts +0 -48
  43. package/projects/ngx/src/lib/components/rtsee-auth/sign-up/sign-up.component.html +0 -51
  44. package/projects/ngx/src/lib/components/rtsee-auth/sign-up/sign-up.component.ts +0 -62
  45. package/projects/ngx/src/lib/components/rtsee-auth/types/auth-form.type.ts +0 -35
  46. package/projects/ngx/src/lib/components/rtsee-auth/validators/form-fields-validators.ts +0 -27
  47. package/projects/ngx/src/lib/components/rtsee-auth/vendors/vendors.component.html +0 -1
  48. package/projects/ngx/src/lib/components/rtsee-auth/vendors/vendors.component.ts +0 -10
  49. package/projects/ngx/src/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.html +0 -15
  50. package/projects/ngx/src/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.ts +0 -20
  51. package/projects/ngx/src/lib/components/rtsee-container/rtsee-container.component.html +0 -50
  52. package/projects/ngx/src/lib/components/rtsee-container/rtsee-container.component.ts +0 -37
  53. package/projects/ngx/src/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.html +0 -32
  54. package/projects/ngx/src/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.ts +0 -26
  55. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.html +0 -20
  56. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.ts +0 -89
  57. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.html +0 -1
  58. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.ts +0 -8
  59. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.html +0 -25
  60. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.ts +0 -40
  61. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.html +0 -32
  62. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.ts +0 -21
  63. package/projects/ngx/src/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.html +0 -12
  64. package/projects/ngx/src/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.ts +0 -19
  65. package/projects/ngx/src/lib/components/rtsee-messenger/chat/chat.component.html +0 -10
  66. package/projects/ngx/src/lib/components/rtsee-messenger/chat/chat.component.ts +0 -18
  67. package/projects/ngx/src/lib/components/rtsee-messenger/chat-input/chat-input.component.html +0 -20
  68. package/projects/ngx/src/lib/components/rtsee-messenger/chat-input/chat-input.component.ts +0 -31
  69. package/projects/ngx/src/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.html +0 -28
  70. package/projects/ngx/src/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.ts +0 -27
  71. package/projects/ngx/src/lib/components/rtsee-messenger/chats-list/chats-list.component.html +0 -6
  72. package/projects/ngx/src/lib/components/rtsee-messenger/chats-list/chats-list.component.ts +0 -22
  73. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.html +0 -3
  74. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.scss +0 -0
  75. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.ts +0 -18
  76. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.html +0 -4
  77. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.scss +0 -0
  78. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.ts +0 -18
  79. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/models/MainMenuState.ts +0 -11
  80. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/search/search.component.html +0 -25
  81. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/search/search.component.ts +0 -36
  82. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/main-menu.component.html +0 -32
  83. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/main-menu.component.ts +0 -41
  84. package/projects/ngx/src/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.html +0 -9
  85. package/projects/ngx/src/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.ts +0 -23
  86. package/projects/ngx/src/lib/components/rtsee-messenger/message/message.component.html +0 -17
  87. package/projects/ngx/src/lib/components/rtsee-messenger/message/message.component.ts +0 -64
  88. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.html +0 -10
  89. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.scss +0 -1
  90. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.ts +0 -36
  91. package/projects/ngx/src/lib/components/rtsee-messenger/messages-list/messages-list.component.html +0 -18
  92. package/projects/ngx/src/lib/components/rtsee-messenger/messages-list/messages-list.component.ts +0 -91
  93. package/projects/ngx/src/lib/components/rtsee-messenger/messenger/messenger.component.html +0 -31
  94. package/projects/ngx/src/lib/components/rtsee-messenger/messenger/messenger.component.ts +0 -45
  95. package/projects/ngx/src/lib/components/rtsee-messenger/messenger-header/messenger-header.component.html +0 -57
  96. package/projects/ngx/src/lib/components/rtsee-messenger/messenger-header/messenger-header.component.ts +0 -30
  97. package/projects/ngx/src/lib/components/rtsee-messenger/profile/profile.component.html +0 -20
  98. package/projects/ngx/src/lib/components/rtsee-messenger/profile/profile.component.ts +0 -25
  99. package/projects/ngx/src/lib/components/rtsee-peer/rtsee-peer.component.html +0 -28
  100. package/projects/ngx/src/lib/components/rtsee-peer/rtsee-peer.component.ts +0 -43
  101. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.html +0 -1
  102. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.scss +0 -0
  103. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.ts +0 -9
  104. package/projects/ngx/src/lib/components/rtsee-presentation/presentation/presentation.component.html +0 -24
  105. package/projects/ngx/src/lib/components/rtsee-presentation/presentation/presentation.component.ts +0 -26
  106. package/projects/ngx/src/lib/components/rtsee-presentation/presentation-header/presentation-header.component.html +0 -14
  107. package/projects/ngx/src/lib/components/rtsee-presentation/presentation-header/presentation-header.component.ts +0 -15
  108. package/projects/ngx/src/lib/components/rtsee-presentation/slide/slide.component.html +0 -29
  109. package/projects/ngx/src/lib/components/rtsee-presentation/slide/slide.component.ts +0 -25
  110. package/projects/ngx/src/lib/components/rtsee-presentation/story-player/story-player.component.html +0 -10
  111. package/projects/ngx/src/lib/components/rtsee-presentation/story-player/story-player.component.ts +0 -22
  112. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.html +0 -15
  113. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.scss +0 -0
  114. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.ts +0 -19
  115. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.html +0 -44
  116. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.scss +0 -30
  117. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.ts +0 -57
  118. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.html +0 -19
  119. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.scss +0 -56
  120. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.ts +0 -66
  121. package/projects/ngx/src/lib/directives/shave.directive.ts +0 -15
  122. package/projects/ngx/src/lib/directives/widget.directive.ts +0 -9
  123. package/projects/ngx/src/lib/ngx.module.ts +0 -119
  124. package/projects/ngx/src/lib/ngx.service.spec.ts +0 -16
  125. package/projects/ngx/src/lib/ngx.service.ts +0 -11
  126. package/projects/ngx/src/lib/services/default-images.service.ts +0 -8
  127. package/projects/ngx/src/lib/services/events-widgets.service.ts +0 -19
  128. package/projects/ngx/src/lib/services/message-widgets.service.ts +0 -26
  129. package/projects/ngx/src/lib/services/time-format-helper.service.ts +0 -111
  130. package/projects/ngx/src/lib/theme/auth/auth-container.scss +0 -186
  131. package/projects/ngx/src/lib/theme/auth/auth.scss +0 -0
  132. package/projects/ngx/src/lib/theme/auth/variables.scss +0 -64
  133. package/projects/ngx/src/lib/theme/containers/bottom-nav.scss +0 -15
  134. package/projects/ngx/src/lib/theme/containers/index.scss +0 -4
  135. package/projects/ngx/src/lib/theme/containers/nav-item.scss +0 -70
  136. package/projects/ngx/src/lib/theme/containers/sidenav.scss +0 -125
  137. package/projects/ngx/src/public-api.ts +0 -16
  138. package/projects/ngx/tsconfig.lib.json +0 -14
  139. package/projects/ngx/tsconfig.lib.prod.json +0 -10
  140. package/projects/ngx/tsconfig.spec.json +0 -10
  141. package/projects/ngx/yarn.lock +0 -8
  142. package/scss-bundle.config.json +0 -6
  143. package/setup-jest.ts +0 -1
  144. package/tsconfig.eslint.json +0 -4
  145. package/tsconfig.json +0 -34
  146. package/tsconfig.spec.json +0 -8
  147. /package/{projects → dist}/ngx/README.md +0 -0
  148. /package/{projects → dist}/ngx/src/lib/theme/common-components/preloader.scss +0 -0
  149. /package/{projects → dist}/ngx/src/lib/theme/common.scss +0 -0
  150. /package/{projects → dist}/ngx/src/lib/theme/events-manager/client-thumbnail.scss +0 -0
  151. /package/{projects → dist}/ngx/src/lib/theme/events-manager/event-thumbnail.scss +0 -0
  152. /package/{projects → dist}/ngx/src/lib/theme/events-manager/events-dashboard-session.scss +0 -0
  153. /package/{projects → dist}/ngx/src/lib/theme/events-manager/events-dashboard.scss +0 -0
  154. /package/{projects → dist}/ngx/src/lib/theme/events-manager/events-manager.scss +0 -0
  155. /package/{projects → dist}/ngx/src/lib/theme/events-manager/index.scss +0 -0
  156. /package/{projects → dist}/ngx/src/lib/theme/events-manager.scss +0 -0
  157. /package/{projects → dist}/ngx/src/lib/theme/general.scss +0 -0
  158. /package/{projects → dist}/ngx/src/lib/theme/messenger/call-widget.scss +0 -0
  159. /package/{projects → dist}/ngx/src/lib/theme/messenger/chat-input.scss +0 -0
  160. /package/{projects → dist}/ngx/src/lib/theme/messenger/chat-thumbnail.scss +0 -0
  161. /package/{projects → dist}/ngx/src/lib/theme/messenger/chat.scss +0 -0
  162. /package/{projects → dist}/ngx/src/lib/theme/messenger/chats-list.scss +0 -0
  163. /package/{projects → dist}/ngx/src/lib/theme/messenger/index.scss +0 -0
  164. /package/{projects → dist}/ngx/src/lib/theme/messenger/message-time-and-status.scss +0 -0
  165. /package/{projects → dist}/ngx/src/lib/theme/messenger/message.scss +0 -0
  166. /package/{projects → dist}/ngx/src/lib/theme/messenger/messages-list.scss +0 -0
  167. /package/{projects → dist}/ngx/src/lib/theme/messenger/messenger-header.scss +0 -0
  168. /package/{projects → dist}/ngx/src/lib/theme/messenger/messenger-search.scss +0 -0
  169. /package/{projects → dist}/ngx/src/lib/theme/messenger/messenger.scss +0 -0
  170. /package/{projects → dist}/ngx/src/lib/theme/messenger/variables.scss +0 -0
  171. /package/{projects → dist}/ngx/src/lib/theme/presentation/index.scss +0 -0
  172. /package/{projects → dist}/ngx/src/lib/theme/presentation/slide.scss +0 -0
  173. /package/{projects → dist}/ngx/src/lib/theme/presentation/story-player.scss +0 -0
  174. /package/{projects → dist}/ngx/src/lib/theme/presentation/story-thumbnail.scss +0 -0
  175. /package/{projects → dist}/ngx/src/lib/theme/presentation/variables.scss +0 -0
  176. /package/{projects → dist}/ngx/src/lib/theme/video-chat/index.scss +0 -0
  177. /package/{projects → dist}/ngx/src/lib/theme/video-chat/video-chat.scss +0 -0
  178. /package/{projects → dist}/ngx/src/lib/theme/video-chat/video-peer.scss +0 -0
  179. /package/{projects → dist}/ngx/src/lib/theme/video-chat.scss +0 -0
@@ -1,20 +0,0 @@
1
- <div class="rtsee-events-dashboard-event-thumbnail">
2
- <ng-template *ngIf="event.widget" widgetHost></ng-template>
3
- <div *ngIf="!event.widget" class="rtsee-events-dashboard-default-event-thumbnail"
4
- [ngClass]="{'rtsee-events-dashboard-default-event-thumbnail-with-data': event.data}"
5
- >
6
- <div class="rtsee-events-dashboard-default-event-thumbnail-name">{{event.name}}</div>
7
- <div class="rtsee-events-dashboard-default-event-thumbnail-info">
8
- <div *ngIf="event.data" class="rtsee-events-dashboard-default-event-thumbnail-details"
9
- [title]="tooltip"
10
- >
11
- <span class="rtsee-events-dashboard-default-event-thumbnail-details-icon material-icons-outlined"
12
- >info</span>
13
- </div>
14
- <div class="rtsee-events-dashboard-default-event-thumbnail-time">
15
- <span>{{ timeFormatService.toAgo(event.createdAt) }}</span>
16
- </div>
17
- </div>
18
-
19
- </div>
20
- </div>
@@ -1,89 +0,0 @@
1
- import {
2
- AfterViewInit,
3
- ChangeDetectorRef,
4
- Component,
5
- ComponentFactoryResolver,
6
- ComponentRef,
7
- Input,
8
- OnInit,
9
- ViewChild,
10
- } from '@angular/core';
11
- import { RTSeeDashboardEvent } from '@rtsee/events-dashboard';
12
- import { WidgetDirective } from '../../../../directives/widget.directive';
13
- import { EventsWidgetsService } from '../../../../services/events-widgets.service';
14
- import { TimeFormatHelperService } from '../../../../services/time-format-helper.service';
15
- import {NgClass, NgIf} from "@angular/common";
16
-
17
- @Component({
18
- selector: 'rtsee-event-thumbnail',
19
- templateUrl: './event-thumbnail.component.html',
20
- imports: [
21
- WidgetDirective,
22
- NgIf,
23
- NgClass
24
- ],
25
- standalone: true
26
- })
27
- export class EventThumbnailComponent implements OnInit, AfterViewInit {
28
- tooltip?: string;
29
-
30
- @Input() event!: RTSeeDashboardEvent;
31
- @ViewChild(WidgetDirective, { static: false }) widgetHost!: WidgetDirective;
32
- constructor(
33
- private widgetsService: EventsWidgetsService,
34
- private componentFactoryResolver: ComponentFactoryResolver,
35
- public timeFormatService: TimeFormatHelperService,
36
- private cd: ChangeDetectorRef,
37
- ) {}
38
-
39
- ngOnInit(): void {
40
- if (this.event.data) {
41
- this.generateTooltip();
42
- }
43
- }
44
-
45
- generateTooltip() {
46
- /* eslint-disable */
47
- let tooltip = '';
48
- if (typeof this.event.data !== 'object') {
49
- return;
50
- }
51
- try {
52
- for (const key in this.event.data) {
53
- if (this.event.data.hasOwnProperty(key)) {
54
- if (tooltip) {
55
- tooltip += '&#013;';
56
- }
57
- tooltip += key + ' -> ' + this.event.data[key];
58
- }
59
- }
60
- this.tooltip = tooltip;
61
- } catch (e) {
62
- console.log('Failed to generate a tooltip');
63
- }
64
- /* eslint-enable */
65
- }
66
-
67
- ngAfterViewInit() {
68
- this.cd.detectChanges();
69
- /* eslint-disable */
70
- if (this.event.widget) {
71
- const widget = this.widgetsService.getWidgetComponentByName(
72
- this.event.widget,
73
- );
74
- if (!widget) {
75
- return;
76
- }
77
- const viewContainerRef = this.widgetHost.viewContainerRef;
78
- viewContainerRef.clear();
79
- const componentToShow =
80
- this.componentFactoryResolver.resolveComponentFactory(widget);
81
- const componentRef: ComponentRef<typeof widget> =
82
- viewContainerRef.createComponent(componentToShow);
83
- componentRef.instance.event = this.event;
84
- componentRef.instance.event = this.event;
85
- componentRef.changeDetectorRef.detectChanges();
86
- }
87
- /* eslint-enable */
88
- }
89
- }
@@ -1,8 +0,0 @@
1
- import { Component } from '@angular/core';
2
-
3
- @Component({
4
- selector: 'ngx-rtsee-events-dashboard-client',
5
- templateUrl: './rtsee-events-dashboard-client.component.html',
6
- standalone: true
7
- })
8
- export class RtseeEventsDashboardClientComponent {}
@@ -1,25 +0,0 @@
1
- <div class="rtsee-dashboard-client-thumbnail">
2
- <div class="rtsee-dashboard-client-header">
3
- <div class="rtsee-dashboard-client-header-photo">
4
- <div class="rtsee-dashboard-client-header-image"
5
- [style.background-image]="'url(' + client.imageUrl || defaultImagesService.PROFILE + ')'"
6
- ></div>
7
- @if(client.isConnected) {
8
- <div class="rtsee-dashboard-client-live-indicator"></div>
9
- }
10
- </div>
11
- <p class="rtsee-dashboard-client-name">
12
- <span class="rtsee-dashboard-client-name-text">{{ client.name || client.id }}</span>
13
- <button (click)="openChat()" class="rtsee-dashboard-client-engage">
14
- <span class="rtsee-dashboard-client-engage-icon material-icons-outlined">chat_bubble</span>
15
- </button>
16
- </p>
17
- </div>
18
- <div class="rtsee-dashboard-sessions">
19
- @for(session of client.sessions; track session.id) {
20
- <div class="rtsee-dashboard-sessions-container">
21
- <rtsee-rtsee-events-dashboard-session [session]="session"></rtsee-rtsee-events-dashboard-session>
22
- </div>
23
- }
24
- </div>
25
- </div>
@@ -1,40 +0,0 @@
1
- import { Component, Input, OnInit } from '@angular/core';
2
- import { TimeFormatHelperService } from '../../../../services/time-format-helper.service';
3
- import { DefaultImagesService } from '../../../../services/default-images.service';
4
- import {
5
- RTSeeEventsDashboard,
6
- RTSeeDashboardClient,
7
- } from '@rtsee/events-dashboard';
8
- import {
9
- RtseeEventsDashboardSessionComponent
10
- } from "../rtsee-events-dashboard-session/rtsee-events-dashboard-session.component";
11
- import {NgForOf, NgIf} from "@angular/common";
12
-
13
- @Component({
14
- selector: 'ngx-rtsee-events-dashboard-client-thumbnail',
15
- templateUrl: './rtsee-events-dashboard-client-thumbnail.component.html',
16
- imports: [
17
- RtseeEventsDashboardSessionComponent,
18
- NgIf,
19
- NgForOf
20
- ],
21
- standalone: true
22
- })
23
- export class RtseeEventsDashboardClientThumbnailComponent implements OnInit {
24
- @Input() dashboard!: RTSeeEventsDashboard;
25
- @Input() client!: RTSeeDashboardClient;
26
-
27
- constructor(
28
- public timeFormatService: TimeFormatHelperService,
29
- public defaultImagesService: DefaultImagesService,
30
- ) {}
31
-
32
- ngOnInit(): void {
33
- console.log('client id', this.client.id);
34
- }
35
-
36
- openChat() {
37
- console.log('Open Chat Clicked! Client ID #', this.client.id);
38
- this.dashboard.openChat(this.client);
39
- }
40
- }
@@ -1,32 +0,0 @@
1
- <div class="rtsee-events-dashboard-session">
2
- <div class="rtsee-events-dashboard-session-header" *ngIf="session.info">
3
- <p class="rtsee-events-dashboard-session-client-info">{{session.info.clientThumbnail}}</p>
4
- <p class="rtsee-events-dashboard-session-os-info">{{session.info.osThumbnail}}</p>
5
- <div class="rtsee-events-dashboard-session-device-info" [title]="session.info.deviceThumbnail">
6
- <span *ngIf="session.info.deviceType === 'smartphone' && !session.info.botName"
7
- class="material-icons-outlined rtsee-events-dashboard-session-device-info-icon"
8
- >phone_iphone</span>
9
- <span class="material-icons-outlined rtsee-events-dashboard-session-device-info-icon"
10
- *ngIf="session.info.deviceType === 'tablet' && !session.info.botName"
11
- >tablet_mac</span>
12
- <span class="material-icons-outlined rtsee-events-dashboard-session-device-info-icon"
13
- *ngIf="session.info.deviceType === 'desktop' && !session.info.botName"
14
- >computer</span>
15
- <span class="material-icons-outlined rtsee-events-dashboard-session-device-info-icon"
16
- *ngIf="session.info.botName"
17
- >smart_toy</span>
18
- </div>
19
- </div>
20
- <ul *ngIf="session.events && session.events.length"
21
- class="rtsee-events-dashboard-session-events-list"
22
- >
23
- @for (event of session.events | slice:0:5; track event.id) {
24
- <li class="rtsee-events-dashboard-session-event">
25
- <rtsee-event-thumbnail [event]="event"></rtsee-event-thumbnail>
26
- </li>
27
- }
28
- </ul>
29
- <div class="rtsee-events-dashboard-session-footer">
30
- <button *ngIf="session.events.length > 5">{{session.events.length - 5}} more</button>
31
- </div>
32
- </div>
@@ -1,21 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { TimeFormatHelperService } from '../../../../services/time-format-helper.service';
3
- import { RTSeeDashboardClientSession } from '@rtsee/events-dashboard';
4
- import { NgIf, SlicePipe } from "@angular/common";
5
- import {EventThumbnailComponent} from "../event-thumbnail/event-thumbnail.component";
6
-
7
- @Component({
8
- selector: 'rtsee-rtsee-events-dashboard-session',
9
- templateUrl: './rtsee-events-dashboard-session.component.html',
10
- imports: [
11
- NgIf,
12
-
13
- EventThumbnailComponent,
14
- SlicePipe
15
- ],
16
- standalone: true
17
- })
18
- export class RtseeEventsDashboardSessionComponent {
19
- @Input() session!: RTSeeDashboardClientSession;
20
- constructor(public timeFormatService: TimeFormatHelperService) {}
21
- }
@@ -1,12 +0,0 @@
1
- <div class="rtsee-events-dashboard">
2
- <div class="rtsee-events-dashboard-client-thumbnails">
3
- @for (client of eventsDashboard.clients; track client.id) {
4
- <div class="rtsee-events-dashboard-client-thumbnail-wrapper">
5
- <ngx-rtsee-events-dashboard-client-thumbnail
6
- [client]="client"
7
- [dashboard]="eventsDashboard"
8
- ></ngx-rtsee-events-dashboard-client-thumbnail>
9
- </div>
10
- }
11
- </div>
12
- </div>
@@ -1,19 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { RTSeeEventsDashboard } from '@rtsee/events-dashboard';
3
-
4
-
5
- import {
6
- RtseeEventsDashboardClientThumbnailComponent
7
- } from "./components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component";
8
-
9
- @Component({
10
- selector: 'rtsee-events-dashboard',
11
- templateUrl: './rtsee-events-dashboard.component.html',
12
- imports: [
13
- RtseeEventsDashboardClientThumbnailComponent
14
- ],
15
- standalone: true
16
- })
17
- export class RtseeEventsDashboardComponent {
18
- @Input() eventsDashboard!: RTSeeEventsDashboard;
19
- }
@@ -1,10 +0,0 @@
1
- <div class="rtsee-chat">
2
- <div class="rtsee-chat-body-container">
3
- <rtsee-messages-list [messenger]="messenger" [chat]="chat"></rtsee-messages-list>
4
- </div>
5
- <div class="rtsee-chat-footer-container">
6
- <div class="rtsee-chat-footer-container-inner">
7
- <rtsee-chat-input [messenger]="messenger" [chat]="chat"></rtsee-chat-input>
8
- </div>
9
- </div>
10
- </div>
@@ -1,18 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { RTSeeChat, RTSeeMessenger } from '@rtsee/messenger';
3
- import {MessagesListComponent} from "../messages-list/messages-list.component";
4
- import {ChatInputComponent} from "../chat-input/chat-input.component";
5
-
6
- @Component({
7
- selector: 'rtsee-chat',
8
- templateUrl: './chat.component.html',
9
- imports: [
10
- MessagesListComponent,
11
- ChatInputComponent
12
- ],
13
- standalone: true
14
- })
15
- export class ChatComponent {
16
- @Input() chat!: RTSeeChat;
17
- @Input() messenger!: RTSeeMessenger;
18
- }
@@ -1,20 +0,0 @@
1
- <div class="rtsee-chat-input" xmlns="http://www.w3.org/1999/html">
2
- <div class="rtsee-send-message">
3
- <form [formGroup]="sendMessageForm" class="rtsee-chat-input-form">
4
- <textarea
5
- placeholder="Type message..."
6
- type="text"
7
- formControlName="message"
8
- class="rtsee-chat-input-field"
9
- autosize
10
- required
11
- (keyup.enter)="sendMessage()"
12
- ></textarea>
13
- </form>
14
- </div>
15
- <button (click)="sendMessage()"
16
- class="rtsee-send-message-button"
17
- type="submit">
18
- <span class="material-icons-outlined">send</span>
19
- </button>
20
- </div>
@@ -1,31 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import {FormControl, FormGroup, ReactiveFormsModule, Validators} from '@angular/forms';
3
- import { RTSeeChat, RTSeeMessenger } from '@rtsee/messenger';
4
-
5
- @Component({
6
- selector: 'rtsee-chat-input',
7
- templateUrl: './chat-input.component.html',
8
- imports: [
9
- ReactiveFormsModule
10
- ],
11
- standalone: true
12
- })
13
- export class ChatInputComponent {
14
- sendMessageForm: FormGroup = new FormGroup({
15
- /* eslint-disable */
16
- message: new FormControl('', Validators.required),
17
- /* eslint-enable */
18
- });
19
-
20
- @Input() messenger!: RTSeeMessenger;
21
- @Input() chat!: RTSeeChat;
22
-
23
- sendMessage() {
24
- const text = this.sendMessageForm.get('message')?.value as string;
25
- if (!text) {
26
- return;
27
- }
28
- this.chat.sendMessage(text);
29
- this.sendMessageForm.get('message')?.setValue('');
30
- }
31
- }
@@ -1,28 +0,0 @@
1
- <div class="rtsee-chat-thumbnail" (click)="messenger.openChatById(chat.chatId)">
2
- <div class="rtsee-chat-thumbnail-image">
3
- <img [src]="chat.chatImageUrl" alt="chat-img">
4
- </div>
5
- <div class="rtsee-chat-thumbnail-left">
6
- <div class="rtsee-chat-thumbnail-name">
7
- <span>{{ chat.chatName }}</span>
8
- <div class="rtsee-chat-thumbnail-status">
9
- <rtsee-message-time-and-status [message]="chat"
10
- [hideStatus]="chat && !!(chat.unreadMessagesCount)">
11
- </rtsee-message-time-and-status>
12
- </div>
13
- </div>
14
- <div class="rtsee-chat-thumbnail-last-message"
15
- [ngClass]="{'rtsee-has-unread': chat.unreadMessagesCount}"
16
- rtseeShave>
17
- <span class="rtsee-chat-thumbnail-last-message-sender"
18
- *ngIf="chat.chatType !== RTSeeChatTypes.INDIVIDUAL && chat.senderName"
19
- >{{chat.senderName}}</span>
20
- <span class="rtsee-chat-thumbnail-last-message-text"
21
- *ngIf="chat.text"
22
- >{{chat.text}}</span>
23
- <div class="rtsee-messenger-thumbnail-unread" *ngIf="chat.unreadMessagesCount">
24
- <span class="rtsee-messenger-thumbnail-unread-count">{{chat.unreadMessagesCount}}</span>
25
- </div>
26
- </div>
27
- </div>
28
- </div>
@@ -1,27 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { RTSeeMessenger } from '@rtsee/messenger';
3
- import { RTSeeChatTypes, IMessageThumbnail } from '@rtsee/common';
4
- import { TimeFormatHelperService } from '../../../services/time-format-helper.service';
5
- import {
6
- MessageTimeAndStatusComponent
7
- } from "../message/components/message-time-and-status/message-time-and-status.component";
8
- import {NgClass, NgIf} from "@angular/common";
9
-
10
- @Component({
11
- selector: 'rtsee-chat-thumbnail',
12
- templateUrl: './chat-thumbnail.component.html',
13
- imports: [
14
- MessageTimeAndStatusComponent,
15
- NgClass,
16
- NgIf
17
- ],
18
- standalone: true
19
- })
20
- export class ChatThumbnailComponent {
21
- @Input() chat!: IMessageThumbnail;
22
- @Input() messenger!: RTSeeMessenger;
23
-
24
- readonly RTSeeChatTypes = RTSeeChatTypes;
25
-
26
- constructor(public timeFormatService: TimeFormatHelperService) {}
27
- }
@@ -1,6 +0,0 @@
1
- <div class="rtsee-chats-list">
2
- <div class="rtsee-chat-thumbnail-container" *ngFor="let chat of chats; let last = last;">
3
- <rtsee-chat-thumbnail [chat]="chat.thumbnail" [messenger]="messenger"></rtsee-chat-thumbnail>
4
- <!-- <div class="rtsee-chat-thumbnail-separator" *ngIf="!last"></div>-->
5
- </div>
6
- </div>
@@ -1,22 +0,0 @@
1
- import { Component, Input, OnInit } from '@angular/core';
2
- import { RTSeeChat, RTSeeMessenger } from '@rtsee/messenger';
3
- import {NgForOf} from "@angular/common";
4
- import {ChatThumbnailComponent} from "../chat-thumbnail/chat-thumbnail.component";
5
-
6
- @Component({
7
- selector: 'rtsee-chats-list',
8
- templateUrl: './chats-list.component.html',
9
- imports: [
10
- NgForOf,
11
- ChatThumbnailComponent
12
- ],
13
- standalone: true
14
- })
15
- export class ChatsListComponent implements OnInit {
16
- @Input() messenger!: RTSeeMessenger;
17
- @Input() chats!: RTSeeChat[];
18
-
19
- ngOnInit(): void {
20
- // console.log(this.chats);
21
- }
22
- }
@@ -1,3 +0,0 @@
1
- <div class="rtsee-messenger-contacts-multiselect">
2
- <rtsee-search [search]="search"></rtsee-search>
3
- </div>
@@ -1,18 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { IMainMenuState } from '../models/MainMenuState';
3
- import { RTSeeMessengerSearch } from '@rtsee/messenger';
4
- import { SearchComponent } from "../search/search.component";
5
-
6
- @Component({
7
- selector: 'rtsee-contacts-multiselect',
8
- templateUrl: './contacts-multiselect.component.html',
9
- styleUrls: ['./contacts-multiselect.component.scss'],
10
- imports: [
11
- SearchComponent
12
- ],
13
- standalone: true
14
- })
15
- export class ContactsMultiselectComponent {
16
- @Input() menuState!: IMainMenuState;
17
- @Input() search!: RTSeeMessengerSearch;
18
- }
@@ -1,4 +0,0 @@
1
- <div class="rtsee-messenger-manage-chat">
2
- <p>We are going to manage chat here</p>
3
- <button (click)="onInviteContactsClicked()">Invite Contacts</button>
4
- </div>
@@ -1,18 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { RTSeeMessenger } from '@rtsee/messenger';
3
- import { IMainMenuState, MainMenuPanels } from '../models/MainMenuState';
4
-
5
- @Component({
6
- selector: 'rtsee-manage-chat',
7
- templateUrl: './manage-chat.component.html',
8
- styleUrls: ['./manage-chat.component.scss'],
9
- standalone: true
10
- })
11
- export class ManageChatComponent {
12
- @Input() messenger!: RTSeeMessenger;
13
- @Input() menuState!: IMainMenuState;
14
-
15
- onInviteContactsClicked() {
16
- this.menuState.activePanel = MainMenuPanels.CONTACTS_SELECT;
17
- }
18
- }
@@ -1,11 +0,0 @@
1
- export enum MainMenuPanels {
2
- HOME = 'home',
3
- CONTACTS_SELECT = 'contacts-select',
4
- MANAGE_CHAT = 'manage-chat',
5
- }
6
-
7
- export interface IMainMenuState {
8
- activePanel: MainMenuPanels;
9
- }
10
-
11
- export const DEFAULT_MAIN_MENU_STATE = MainMenuPanels.HOME;
@@ -1,25 +0,0 @@
1
- <div class="rtsee-messenger-search">
2
- <input type="text"
3
- [formControl]="queryControl"
4
- class="rtsee-messenger-search-input"
5
- placeholder="Search"/>
6
- </div>
7
-
8
- <div class="rtsee-messenger-search-results">
9
- <rtsee-preloader [diameter]="50"
10
- *ngIf="search.searchInProgress"
11
- ></rtsee-preloader>
12
- <p>Chats</p>
13
- <div class="rtsee-messenger-search-results-chats">
14
- <div *ngFor="let chat of search.results.chats"
15
- class="rtsee-messenger-search-results-chat-wrapper">
16
- <p>{{chat.name}}</p>
17
- </div>
18
- </div>
19
- <p>Messages</p>
20
- <div class="rtsee-messenger-search-results-messages">
21
- <div *ngFor="let message of search.results.messages" class="rtsee-messenger-search-results-message-wrapper">
22
- <p>{{message.chatName || message.senderName }}</p>
23
- </div>
24
- </div>
25
- </div>
@@ -1,36 +0,0 @@
1
- import { Component, Input, OnDestroy, OnInit } from '@angular/core';
2
- import { debounceTime } from 'rxjs/operators';
3
- import {FormControl, ReactiveFormsModule} from '@angular/forms';
4
- import { Subscription } from 'rxjs';
5
- import { RTSeeMessengerSearch } from '@rtsee/messenger';
6
- import {PreloaderComponent} from "../../../../../common/components/preloader/preloader.component";
7
- import {NgForOf} from "@angular/common";
8
-
9
- @Component({
10
- selector: 'rtsee-search',
11
- templateUrl: './search.component.html',
12
- imports: [
13
- ReactiveFormsModule,
14
- PreloaderComponent,
15
- NgForOf
16
- ],
17
- standalone: true
18
- })
19
- export class SearchComponent implements OnInit, OnDestroy {
20
- queryControl = new FormControl();
21
- queryCtrlSub?: Subscription;
22
-
23
- @Input() search!: RTSeeMessengerSearch;
24
-
25
- ngOnInit(): void {
26
- this.queryCtrlSub = this.queryControl.valueChanges
27
- .pipe(debounceTime(200))
28
- .subscribe((value: string) => this.search.onQueryChange(value));
29
- }
30
-
31
- ngOnDestroy() {
32
- if (this.queryCtrlSub) {
33
- this.queryCtrlSub.unsubscribe();
34
- }
35
- }
36
- }
@@ -1,32 +0,0 @@
1
- <div class="rtsee-messenger-main-menu">
2
- <div class="rtsee-messenger-main-menu-home" *ngIf="state.activePanel === MainMenuPanels.HOME">
3
- <ul class="rtsee-messenger-controls">
4
- <li>
5
- <div class="rtsee-messenger-control-item" (click)="onNewGroupClicked()">
6
- <div class="rtsee-messenger-control-icon">
7
- <span class="material-icons-outlined">people</span>
8
- </div>
9
- <span>New Group</span>
10
- </div>
11
- </li>
12
- <li>
13
- <div class="rtsee-messenger-control-item" (click)="onNewChannelClicked()">
14
- <div class="rtsee-messenger-control-icon">
15
- <span class="material-icons-outlined">campaign</span>
16
- </div>
17
- <span>New Channel</span>
18
- </div>
19
- </li>
20
- </ul>
21
- <rtsee-search [search]="search" ></rtsee-search>
22
- </div>
23
-
24
- <rtsee-manage-chat *ngIf="state.activePanel === MainMenuPanels.MANAGE_CHAT"
25
- [messenger]="messenger"
26
- [menuState]="state"
27
- ></rtsee-manage-chat>
28
- <rtsee-contacts-multiselect [search]="search"
29
- [menuState]="state"
30
- *ngIf="state.activePanel === MainMenuPanels.CONTACTS_SELECT"
31
- ></rtsee-contacts-multiselect>
32
- </div>