@rtsee/ngx 0.0.55 → 0.0.57

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 (281) hide show
  1. package/.editorconfig +16 -0
  2. package/CHANGELOG.md +112 -0
  3. package/angular.json +67 -0
  4. package/jest.config.ts +9 -0
  5. package/package.json +28 -33
  6. package/projects/ngx/ng-package.json +8 -0
  7. package/projects/ngx/package.json +20 -0
  8. package/projects/ngx/src/lib/common/components/preloader/preloader.component.html +5 -0
  9. package/projects/ngx/src/lib/common/components/preloader/preloader.component.ts +30 -0
  10. package/projects/ngx/src/lib/components/constans/common.const.ts +8 -0
  11. package/projects/ngx/src/lib/components/enums/form.enum.ts +8 -0
  12. package/projects/ngx/src/lib/components/rtsee/rtsee-conference.component.html +70 -0
  13. package/projects/ngx/src/lib/components/rtsee/rtsee-conference.component.ts +35 -0
  14. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.html +54 -0
  15. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.scss +70 -0
  16. package/projects/ngx/src/lib/components/rtsee/rtsee-controls/rtsee-controls.component.ts +24 -0
  17. package/projects/ngx/src/lib/components/rtsee-auth/auth/auth.component.html +12 -0
  18. package/projects/ngx/src/lib/components/rtsee-auth/auth/auth.component.ts +22 -0
  19. package/projects/ngx/src/lib/components/rtsee-auth/forgot-password/forgot-password.component.html +35 -0
  20. package/projects/ngx/src/lib/components/rtsee-auth/forgot-password/forgot-password.component.ts +35 -0
  21. package/projects/ngx/src/lib/components/rtsee-auth/reset-password/reset-password.component.html +43 -0
  22. package/projects/ngx/src/lib/components/rtsee-auth/reset-password/reset-password.component.ts +79 -0
  23. package/projects/ngx/src/lib/components/rtsee-auth/services/utils.service.ts +20 -0
  24. package/projects/ngx/src/lib/components/rtsee-auth/sign-in/sign-in.component.html +46 -0
  25. package/projects/ngx/src/lib/components/rtsee-auth/sign-in/sign-in.component.ts +44 -0
  26. package/projects/ngx/src/lib/components/rtsee-auth/sign-up/sign-up.component.html +51 -0
  27. package/projects/ngx/src/lib/components/rtsee-auth/sign-up/sign-up.component.ts +51 -0
  28. package/projects/ngx/src/lib/components/rtsee-auth/types/auth-form.type.ts +36 -0
  29. package/projects/ngx/src/lib/components/rtsee-auth/validators/form-fields-validators.ts +27 -0
  30. package/projects/ngx/src/lib/components/rtsee-auth/vendors/vendors.component.html +1 -0
  31. package/projects/ngx/src/lib/components/rtsee-auth/vendors/vendors.component.ts +10 -0
  32. package/projects/ngx/src/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.html +15 -0
  33. package/projects/ngx/src/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.ts +20 -0
  34. package/projects/ngx/src/lib/components/rtsee-container/rtsee-container.component.html +50 -0
  35. package/projects/ngx/src/lib/components/rtsee-container/rtsee-container.component.ts +37 -0
  36. package/projects/ngx/src/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.html +32 -0
  37. package/projects/ngx/src/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.ts +26 -0
  38. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.html +20 -0
  39. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.ts +89 -0
  40. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.html +1 -0
  41. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.ts +8 -0
  42. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.html +25 -0
  43. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.ts +40 -0
  44. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.html +32 -0
  45. package/projects/ngx/src/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.ts +21 -0
  46. package/projects/ngx/src/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.html +12 -0
  47. package/projects/ngx/src/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.ts +19 -0
  48. package/projects/ngx/src/lib/components/rtsee-messenger/chat/chat.component.html +10 -0
  49. package/projects/ngx/src/lib/components/rtsee-messenger/chat/chat.component.ts +18 -0
  50. package/projects/ngx/src/lib/components/rtsee-messenger/chat-input/chat-input.component.html +20 -0
  51. package/projects/ngx/src/lib/components/rtsee-messenger/chat-input/chat-input.component.ts +31 -0
  52. package/projects/ngx/src/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.html +28 -0
  53. package/projects/ngx/src/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.ts +27 -0
  54. package/projects/ngx/src/lib/components/rtsee-messenger/chats-list/chats-list.component.html +6 -0
  55. package/projects/ngx/src/lib/components/rtsee-messenger/chats-list/chats-list.component.ts +22 -0
  56. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.html +3 -0
  57. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.scss +0 -0
  58. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.ts +18 -0
  59. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.html +4 -0
  60. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.scss +0 -0
  61. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.ts +18 -0
  62. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/models/MainMenuState.ts +11 -0
  63. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/search/search.component.html +25 -0
  64. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/components/search/search.component.ts +36 -0
  65. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/main-menu.component.html +32 -0
  66. package/projects/ngx/src/lib/components/rtsee-messenger/main-menu/main-menu.component.ts +41 -0
  67. package/projects/ngx/src/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.html +9 -0
  68. package/projects/ngx/src/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.ts +23 -0
  69. package/projects/ngx/src/lib/components/rtsee-messenger/message/message.component.html +17 -0
  70. package/projects/ngx/src/lib/components/rtsee-messenger/message/message.component.ts +64 -0
  71. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.html +10 -0
  72. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.scss +1 -0
  73. package/projects/ngx/src/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.ts +36 -0
  74. package/projects/ngx/src/lib/components/rtsee-messenger/messages-list/messages-list.component.html +18 -0
  75. package/projects/ngx/src/lib/components/rtsee-messenger/messages-list/messages-list.component.ts +91 -0
  76. package/projects/ngx/src/lib/components/rtsee-messenger/messenger/messenger.component.html +31 -0
  77. package/projects/ngx/src/lib/components/rtsee-messenger/messenger/messenger.component.ts +45 -0
  78. package/projects/ngx/src/lib/components/rtsee-messenger/messenger-header/messenger-header.component.html +57 -0
  79. package/projects/ngx/src/lib/components/rtsee-messenger/messenger-header/messenger-header.component.ts +30 -0
  80. package/projects/ngx/src/lib/components/rtsee-messenger/profile/profile.component.html +20 -0
  81. package/projects/ngx/src/lib/components/rtsee-messenger/profile/profile.component.ts +25 -0
  82. package/projects/ngx/src/lib/components/rtsee-peer/rtsee-peer.component.html +28 -0
  83. package/projects/ngx/src/lib/components/rtsee-peer/rtsee-peer.component.ts +43 -0
  84. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.html +1 -0
  85. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.scss +0 -0
  86. package/projects/ngx/src/lib/components/rtsee-peers-list/rtsee-peers-list.component.ts +9 -0
  87. package/projects/ngx/src/lib/components/rtsee-presentation/presentation/presentation.component.html +24 -0
  88. package/projects/ngx/src/lib/components/rtsee-presentation/presentation/presentation.component.ts +26 -0
  89. package/projects/ngx/src/lib/components/rtsee-presentation/presentation-header/presentation-header.component.html +14 -0
  90. package/projects/ngx/src/lib/components/rtsee-presentation/presentation-header/presentation-header.component.ts +15 -0
  91. package/projects/ngx/src/lib/components/rtsee-presentation/slide/slide.component.html +29 -0
  92. package/projects/ngx/src/lib/components/rtsee-presentation/slide/slide.component.ts +25 -0
  93. package/projects/ngx/src/lib/components/rtsee-presentation/story-player/story-player.component.html +10 -0
  94. package/projects/ngx/src/lib/components/rtsee-presentation/story-player/story-player.component.ts +22 -0
  95. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.html +15 -0
  96. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.scss +0 -0
  97. package/projects/ngx/src/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.ts +19 -0
  98. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.html +44 -0
  99. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.scss +30 -0
  100. package/projects/ngx/src/lib/components/rtsee-settings/rtsee-settings.component.ts +57 -0
  101. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.html +19 -0
  102. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.scss +56 -0
  103. package/projects/ngx/src/lib/components/rtsee-soundbar/rtsee-soundbar.component.ts +66 -0
  104. package/projects/ngx/src/lib/directives/shave.directive.ts +15 -0
  105. package/projects/ngx/src/lib/directives/widget.directive.ts +9 -0
  106. package/projects/ngx/src/lib/ngx.module.ts +119 -0
  107. package/projects/ngx/src/lib/ngx.service.spec.ts +16 -0
  108. package/projects/ngx/src/lib/ngx.service.ts +11 -0
  109. package/projects/ngx/src/lib/services/default-images.service.ts +8 -0
  110. package/projects/ngx/src/lib/services/events-widgets.service.ts +19 -0
  111. package/projects/ngx/src/lib/services/message-widgets.service.ts +26 -0
  112. package/projects/ngx/src/lib/services/time-format-helper.service.ts +111 -0
  113. package/projects/ngx/src/lib/theme/auth/auth-container.scss +186 -0
  114. package/projects/ngx/src/lib/theme/auth/auth.scss +0 -0
  115. package/projects/ngx/src/lib/theme/auth/index.scss +2 -0
  116. package/projects/ngx/src/lib/theme/auth/variables.scss +64 -0
  117. package/projects/ngx/src/lib/theme/common-components/preloader.scss +35 -0
  118. package/projects/ngx/src/lib/theme/common-variables.scss +108 -0
  119. package/projects/ngx/src/lib/theme/common.scss +7 -0
  120. package/projects/ngx/src/lib/theme/containers/bottom-nav.scss +15 -0
  121. package/projects/ngx/src/lib/theme/containers/index.scss +4 -0
  122. package/projects/ngx/src/lib/theme/containers/nav-item.scss +70 -0
  123. package/projects/ngx/src/lib/theme/containers/shell.scss +203 -0
  124. package/projects/ngx/src/lib/theme/containers/sidenav.scss +125 -0
  125. package/projects/ngx/src/lib/theme/containers/variables.scss +23 -0
  126. package/projects/ngx/src/lib/theme/events-manager/client-thumbnail.scss +98 -0
  127. package/projects/ngx/src/lib/theme/events-manager/event-thumbnail.scss +47 -0
  128. package/projects/ngx/src/lib/theme/events-manager/events-dashboard-session.scss +54 -0
  129. package/projects/ngx/src/lib/theme/events-manager/events-dashboard.scss +17 -0
  130. package/projects/ngx/src/lib/theme/events-manager/events-manager.scss +0 -0
  131. package/projects/ngx/src/lib/theme/events-manager/index.scss +6 -0
  132. package/projects/ngx/src/lib/theme/events-manager.scss +0 -0
  133. package/projects/ngx/src/lib/theme/general.scss +3 -0
  134. package/projects/ngx/src/lib/theme/messenger/call-widget.scss +16 -0
  135. package/projects/ngx/src/lib/theme/messenger/chat-input.scss +51 -0
  136. package/projects/ngx/src/lib/theme/messenger/chat-thumbnail.scss +106 -0
  137. package/projects/ngx/src/lib/theme/messenger/chat.scss +28 -0
  138. package/projects/ngx/src/lib/theme/messenger/chats-list.scss +14 -0
  139. package/projects/ngx/src/lib/theme/messenger/index.scss +12 -0
  140. package/projects/ngx/src/lib/theme/messenger/message-time-and-status.scss +25 -0
  141. package/projects/ngx/src/lib/theme/messenger/message.scss +65 -0
  142. package/projects/ngx/src/lib/theme/messenger/messages-list.scss +35 -0
  143. package/projects/ngx/src/lib/theme/messenger/messenger-header.scss +182 -0
  144. package/projects/ngx/src/lib/theme/messenger/messenger-search.scss +16 -0
  145. package/projects/ngx/src/lib/theme/messenger/messenger.scss +100 -0
  146. package/projects/ngx/src/lib/theme/messenger/variables.scss +4 -0
  147. package/projects/ngx/src/lib/theme/presentation/index.scss +3 -0
  148. package/projects/ngx/src/lib/theme/presentation/slide.scss +14 -0
  149. package/projects/ngx/src/lib/theme/presentation/story-player.scss +11 -0
  150. package/projects/ngx/src/lib/theme/presentation/story-thumbnail.scss +59 -0
  151. package/projects/ngx/src/lib/theme/presentation/variables.scss +1 -0
  152. package/projects/ngx/src/lib/theme/styles.scss +8 -0
  153. package/projects/ngx/src/lib/theme/video-chat/index.scss +2 -0
  154. package/projects/ngx/src/lib/theme/video-chat/video-chat.scss +264 -0
  155. package/projects/ngx/src/lib/theme/video-chat/video-peer.scss +71 -0
  156. package/projects/ngx/src/lib/theme/video-chat.scss +0 -0
  157. package/{dist/ngx/public-api.d.ts → projects/ngx/src/public-api.ts} +7 -0
  158. package/projects/ngx/tsconfig.lib.json +14 -0
  159. package/projects/ngx/tsconfig.lib.prod.json +10 -0
  160. package/projects/ngx/tsconfig.spec.json +10 -0
  161. package/projects/ngx/yarn.lock +8 -0
  162. package/scss-bundle.config.json +6 -0
  163. package/setup-jest.ts +1 -0
  164. package/tsconfig.eslint.json +4 -0
  165. package/tsconfig.json +38 -0
  166. package/tsconfig.spec.json +8 -0
  167. package/dist/ngx/esm2022/lib/common/components/preloader/preloader.component.mjs +0 -31
  168. package/dist/ngx/esm2022/lib/components/constans/common.const.mjs +0 -9
  169. package/dist/ngx/esm2022/lib/components/enums/form.enum.mjs +0 -10
  170. package/dist/ngx/esm2022/lib/components/rtsee/rtsee-conference.component.mjs +0 -28
  171. package/dist/ngx/esm2022/lib/components/rtsee/rtsee-controls/rtsee-controls.component.mjs +0 -23
  172. package/dist/ngx/esm2022/lib/components/rtsee-auth/auth/auth.component.mjs +0 -19
  173. package/dist/ngx/esm2022/lib/components/rtsee-auth/forgot-password/forgot-password.component.mjs +0 -28
  174. package/dist/ngx/esm2022/lib/components/rtsee-auth/reset-password/reset-password.component.mjs +0 -70
  175. package/dist/ngx/esm2022/lib/components/rtsee-auth/services/utils.service.mjs +0 -24
  176. package/dist/ngx/esm2022/lib/components/rtsee-auth/sign-in/sign-in.component.mjs +0 -36
  177. package/dist/ngx/esm2022/lib/components/rtsee-auth/sign-up/sign-up.component.mjs +0 -43
  178. package/dist/ngx/esm2022/lib/components/rtsee-auth/types/auth-form.type.mjs +0 -2
  179. package/dist/ngx/esm2022/lib/components/rtsee-auth/vendors/vendors.component.mjs +0 -11
  180. package/dist/ngx/esm2022/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.mjs +0 -18
  181. package/dist/ngx/esm2022/lib/components/rtsee-container/rtsee-container.component.mjs +0 -29
  182. package/dist/ngx/esm2022/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.mjs +0 -25
  183. package/dist/ngx/esm2022/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.mjs +0 -72
  184. package/dist/ngx/esm2022/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.mjs +0 -11
  185. package/dist/ngx/esm2022/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.mjs +0 -30
  186. package/dist/ngx/esm2022/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.mjs +0 -19
  187. package/dist/ngx/esm2022/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.mjs +0 -15
  188. package/dist/ngx/esm2022/lib/components/rtsee-messenger/chat/chat.component.mjs +0 -17
  189. package/dist/ngx/esm2022/lib/components/rtsee-messenger/chat-input/chat-input.component.mjs +0 -33
  190. package/dist/ngx/esm2022/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.mjs +0 -24
  191. package/dist/ngx/esm2022/lib/components/rtsee-messenger/chats-list/chats-list.component.mjs +0 -20
  192. package/dist/ngx/esm2022/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.mjs +0 -16
  193. package/dist/ngx/esm2022/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.mjs +0 -19
  194. package/dist/ngx/esm2022/lib/components/rtsee-messenger/main-menu/components/models/MainMenuState.mjs +0 -8
  195. package/dist/ngx/esm2022/lib/components/rtsee-messenger/main-menu/components/search/search.component.mjs +0 -31
  196. package/dist/ngx/esm2022/lib/components/rtsee-messenger/main-menu/main-menu.component.mjs +0 -32
  197. package/dist/ngx/esm2022/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.mjs +0 -23
  198. package/dist/ngx/esm2022/lib/components/rtsee-messenger/message/message.component.mjs +0 -50
  199. package/dist/ngx/esm2022/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.mjs +0 -31
  200. package/dist/ngx/esm2022/lib/components/rtsee-messenger/messages-list/messages-list.component.mjs +0 -69
  201. package/dist/ngx/esm2022/lib/components/rtsee-messenger/messenger/messenger.component.mjs +0 -32
  202. package/dist/ngx/esm2022/lib/components/rtsee-messenger/messenger-header/messenger-header.component.mjs +0 -30
  203. package/dist/ngx/esm2022/lib/components/rtsee-messenger/profile/profile.component.mjs +0 -25
  204. package/dist/ngx/esm2022/lib/components/rtsee-peer/rtsee-peer.component.mjs +0 -31
  205. package/dist/ngx/esm2022/lib/components/rtsee-peers-list/rtsee-peers-list.component.mjs +0 -11
  206. package/dist/ngx/esm2022/lib/components/rtsee-presentation/presentation/presentation.component.mjs +0 -18
  207. package/dist/ngx/esm2022/lib/components/rtsee-presentation/presentation-header/presentation-header.component.mjs +0 -14
  208. package/dist/ngx/esm2022/lib/components/rtsee-presentation/slide/slide.component.mjs +0 -25
  209. package/dist/ngx/esm2022/lib/components/rtsee-presentation/story-player/story-player.component.mjs +0 -18
  210. package/dist/ngx/esm2022/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.mjs +0 -17
  211. package/dist/ngx/esm2022/lib/components/rtsee-settings/rtsee-settings.component.mjs +0 -47
  212. package/dist/ngx/esm2022/lib/components/rtsee-soundbar/rtsee-soundbar.component.mjs +0 -53
  213. package/dist/ngx/esm2022/lib/directives/shave.directive.mjs +0 -21
  214. package/dist/ngx/esm2022/lib/directives/widget.directive.mjs +0 -16
  215. package/dist/ngx/esm2022/lib/ngx.module.mjs +0 -205
  216. package/dist/ngx/esm2022/lib/ngx.service.mjs +0 -16
  217. package/dist/ngx/esm2022/lib/services/default-images.service.mjs +0 -16
  218. package/dist/ngx/esm2022/lib/services/events-widgets.service.mjs +0 -25
  219. package/dist/ngx/esm2022/lib/services/message-widgets.service.mjs +0 -28
  220. package/dist/ngx/esm2022/lib/services/time-format-helper.service.mjs +0 -92
  221. package/dist/ngx/esm2022/public-api.mjs +0 -13
  222. package/dist/ngx/esm2022/rtsee-ngx.mjs +0 -5
  223. package/dist/ngx/fesm2022/rtsee-ngx.mjs +0 -1419
  224. package/dist/ngx/fesm2022/rtsee-ngx.mjs.map +0 -1
  225. package/dist/ngx/index.d.ts +0 -5
  226. package/dist/ngx/lib/common/components/preloader/preloader.component.d.ts +0 -13
  227. package/dist/ngx/lib/components/constans/common.const.d.ts +0 -8
  228. package/dist/ngx/lib/components/enums/form.enum.d.ts +0 -8
  229. package/dist/ngx/lib/components/rtsee/rtsee-conference.component.d.ts +0 -11
  230. package/dist/ngx/lib/components/rtsee/rtsee-controls/rtsee-controls.component.d.ts +0 -9
  231. package/dist/ngx/lib/components/rtsee-auth/auth/auth.component.d.ts +0 -6
  232. package/dist/ngx/lib/components/rtsee-auth/forgot-password/forgot-password.component.d.ts +0 -13
  233. package/dist/ngx/lib/components/rtsee-auth/reset-password/reset-password.component.d.ts +0 -21
  234. package/dist/ngx/lib/components/rtsee-auth/services/utils.service.d.ts +0 -7
  235. package/dist/ngx/lib/components/rtsee-auth/sign-in/sign-in.component.d.ts +0 -14
  236. package/dist/ngx/lib/components/rtsee-auth/sign-up/sign-up.component.d.ts +0 -12
  237. package/dist/ngx/lib/components/rtsee-auth/types/auth-form.type.d.ts +0 -27
  238. package/dist/ngx/lib/components/rtsee-auth/vendors/vendors.component.d.ts +0 -5
  239. package/dist/ngx/lib/components/rtsee-container/rtsee-bottom-nav/rtsee-bottom-nav.component.d.ts +0 -9
  240. package/dist/ngx/lib/components/rtsee-container/rtsee-container.component.d.ts +0 -12
  241. package/dist/ngx/lib/components/rtsee-container/rtsee-sidenav/rtsee-sidenav.component.d.ts +0 -11
  242. package/dist/ngx/lib/components/rtsee-events-dashboard/components/event-thumbnail/event-thumbnail.component.d.ts +0 -21
  243. package/dist/ngx/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client/rtsee-events-dashboard-client.component.d.ts +0 -5
  244. package/dist/ngx/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-client-thumbnail/rtsee-events-dashboard-client-thumbnail.component.d.ts +0 -16
  245. package/dist/ngx/lib/components/rtsee-events-dashboard/components/rtsee-events-dashboard-session/rtsee-events-dashboard-session.component.d.ts +0 -10
  246. package/dist/ngx/lib/components/rtsee-events-dashboard/rtsee-events-dashboard.component.d.ts +0 -7
  247. package/dist/ngx/lib/components/rtsee-messenger/chat/chat.component.d.ts +0 -8
  248. package/dist/ngx/lib/components/rtsee-messenger/chat-input/chat-input.component.d.ts +0 -11
  249. package/dist/ngx/lib/components/rtsee-messenger/chat-thumbnail/chat-thumbnail.component.d.ts +0 -13
  250. package/dist/ngx/lib/components/rtsee-messenger/chats-list/chats-list.component.d.ts +0 -10
  251. package/dist/ngx/lib/components/rtsee-messenger/main-menu/components/contacts-multiselect/contacts-multiselect.component.d.ts +0 -9
  252. package/dist/ngx/lib/components/rtsee-messenger/main-menu/components/manage-chat/manage-chat.component.d.ts +0 -10
  253. package/dist/ngx/lib/components/rtsee-messenger/main-menu/components/models/MainMenuState.d.ts +0 -9
  254. package/dist/ngx/lib/components/rtsee-messenger/main-menu/components/search/search.component.d.ts +0 -14
  255. package/dist/ngx/lib/components/rtsee-messenger/main-menu/main-menu.component.d.ts +0 -13
  256. package/dist/ngx/lib/components/rtsee-messenger/message/components/message-time-and-status/message-time-and-status.component.d.ts +0 -13
  257. package/dist/ngx/lib/components/rtsee-messenger/message/message.component.d.ts +0 -20
  258. package/dist/ngx/lib/components/rtsee-messenger/message-widgets/call-widget/call-widget.component.d.ts +0 -13
  259. package/dist/ngx/lib/components/rtsee-messenger/messages-list/messages-list.component.d.ts +0 -22
  260. package/dist/ngx/lib/components/rtsee-messenger/messenger/messenger.component.d.ts +0 -11
  261. package/dist/ngx/lib/components/rtsee-messenger/messenger-header/messenger-header.component.d.ts +0 -14
  262. package/dist/ngx/lib/components/rtsee-messenger/profile/profile.component.d.ts +0 -9
  263. package/dist/ngx/lib/components/rtsee-peer/rtsee-peer.component.d.ts +0 -14
  264. package/dist/ngx/lib/components/rtsee-peers-list/rtsee-peers-list.component.d.ts +0 -5
  265. package/dist/ngx/lib/components/rtsee-presentation/presentation/presentation.component.d.ts +0 -8
  266. package/dist/ngx/lib/components/rtsee-presentation/presentation-header/presentation-header.component.d.ts +0 -7
  267. package/dist/ngx/lib/components/rtsee-presentation/slide/slide.component.d.ts +0 -9
  268. package/dist/ngx/lib/components/rtsee-presentation/story-player/story-player.component.d.ts +0 -9
  269. package/dist/ngx/lib/components/rtsee-presentation/story-thumbnail/story-thumbnail.component.d.ts +0 -8
  270. package/dist/ngx/lib/components/rtsee-settings/rtsee-settings.component.d.ts +0 -21
  271. package/dist/ngx/lib/components/rtsee-soundbar/rtsee-soundbar.component.d.ts +0 -17
  272. package/dist/ngx/lib/directives/shave.directive.d.ts +0 -9
  273. package/dist/ngx/lib/directives/widget.directive.d.ts +0 -8
  274. package/dist/ngx/lib/ngx.module.d.ts +0 -59
  275. package/dist/ngx/lib/ngx.service.d.ts +0 -7
  276. package/dist/ngx/lib/services/default-images.service.d.ts +0 -6
  277. package/dist/ngx/lib/services/events-widgets.service.d.ts +0 -8
  278. package/dist/ngx/lib/services/message-widgets.service.d.ts +0 -11
  279. package/dist/ngx/lib/services/time-format-helper.service.d.ts +0 -14
  280. package/dist/ngx/src/lib/common/compiled-scss/styles.scss +0 -5387
  281. /package/{dist → projects}/ngx/README.md +0 -0
@@ -0,0 +1,22 @@
1
+ import { Component } from '@angular/core';
2
+ import {SignInComponent} from "../sign-in/sign-in.component";
3
+ import {SignUpComponent} from "../sign-up/sign-up.component";
4
+ import {ForgotPasswordComponent} from "../forgot-password/forgot-password.component";
5
+ import {ResetPasswordComponent} from "../reset-password/reset-password.component";
6
+ import {NgIf} from "@angular/common";
7
+
8
+ @Component({
9
+ selector: 'rtsee-auth',
10
+ templateUrl: './auth.component.html',
11
+ imports: [
12
+ SignInComponent,
13
+ SignUpComponent,
14
+ ForgotPasswordComponent,
15
+ ResetPasswordComponent,
16
+ NgIf
17
+ ],
18
+ standalone: true
19
+ })
20
+ export class AuthComponent {
21
+ activeComponent: 'reset-password' | 'sign-up' | 'sign-in' | 'forgot-password' = 'sign-in' ;
22
+ }
@@ -0,0 +1,35 @@
1
+ <div class="auth-container">
2
+ <img ngSrc="/assets/img.png"
3
+ alt="Company Logo"
4
+ class="auth-logo"
5
+ height="38"
6
+ width="37"
7
+ />
8
+ <h2 class="auth-title">Відновлення паролю</h2>
9
+ <p class="auth-title-description"
10
+ >Введіть вашу електронну пошту, щоб отримати інструкції з відновлення паролю</p>
11
+
12
+ <form class="auth-form"
13
+ [formGroup]="emailForm"
14
+ (ngSubmit)="submitEmail()">
15
+ <!-- Email Field -->
16
+ <label for="forgot-password-email" class="auth-sm-medium">Електронна пошта</label>
17
+ <input
18
+ [formControlName]="forgotPasswordFormKeys.email"
19
+ type="email"
20
+ id="forgot-password-email"
21
+ placeholder="Введіть електронну пошту"
22
+ class="auth-input-container email-input"
23
+ />
24
+
25
+ <!-- Submit Button -->
26
+ <button type="submit" class="auth-btn-container" [disabled]="isLoading">
27
+ <span> {{isLoading ? 'Завантаження...' : 'Відправити'}}</span>
28
+ </button>
29
+ </form>
30
+
31
+ <!-- Redirect to Sign-In -->
32
+ <p class="auth-media-blue-gray-sm-normal">
33
+ Пам'ятаєте пароль? <a [routerLink]="['/', 'sign-in']" class="auth-deep-blue-sm-medium">Увійдіть</a>
34
+ </p>
35
+ </div>
@@ -0,0 +1,35 @@
1
+ import { Component } from '@angular/core';
2
+ import {FormBuilder, FormGroup, ReactiveFormsModule, Validators} from '@angular/forms';
3
+ import { UtilsService } from '../services/utils.service';
4
+ import { ForgotPasswordForm, TypedReactiveForm } from '../types/auth-form.type';
5
+ import {RouterLink} from "@angular/router";
6
+
7
+ @Component({
8
+ selector: 'rtsee-forgot-password',
9
+ templateUrl: './forgot-password.component.html',
10
+ imports: [
11
+ ReactiveFormsModule,
12
+ RouterLink
13
+ ],
14
+ standalone: true
15
+ })
16
+ export class ForgotPasswordComponent {
17
+ public isLoading: boolean = false;
18
+ public readonly emailForm: FormGroup<TypedReactiveForm<ForgotPasswordForm>>;
19
+ public readonly forgotPasswordFormKeys: Record<keyof ForgotPasswordForm, string>;
20
+ constructor(
21
+ private readonly formBuilder: FormBuilder
22
+ ) {
23
+ this.emailForm= this.formBuilder.group<TypedReactiveForm<ForgotPasswordForm>>({
24
+ email: this.formBuilder.control(null, { validators: [Validators.required, Validators.email] }),
25
+ });
26
+ this.forgotPasswordFormKeys = UtilsService.getKeysAsValueObject(this.emailForm.getRawValue());
27
+
28
+ }
29
+
30
+ public submitEmail(): void {
31
+ if (this.emailForm.valid) {
32
+ }
33
+ }
34
+ }
35
+
@@ -0,0 +1,43 @@
1
+ <div class="auth-container">
2
+ <img src="assets/img.png" alt="Company Logo" class="logo" height="38" width="37" />
3
+ <h2 class="auth-title">Відновлення Пароля</h2>
4
+ <p class="auth-title-description">
5
+ Будь ласка, введіть новий пароль для вашого акаунту.
6
+ </p>
7
+
8
+ <form class="auth-form"
9
+ [formGroup]="resetPasswordForm"
10
+ (ngSubmit)="resetPassword()"
11
+ >
12
+ <!-- New Password Field -->
13
+ <label for="new-password"
14
+ class="auth-sm-medium"
15
+ >Новий пароль</label>
16
+ <input [formControlName]="passwordFormKeys.password"
17
+ type="password" id="new-password"
18
+ placeholder="Введіть новий пароль"
19
+ class="auth-input-container password-input"
20
+ />
21
+
22
+ <!-- Confirm Password Field -->
23
+ <label for="confirm-password"
24
+ class="auth-sm-medium"
25
+ >Підтвердження пароля</label>
26
+ <input [formControlName]="passwordFormKeys.passwordConfirm"
27
+ type="password" id="confirm-password"
28
+ placeholder="Підтвердіть пароль"
29
+ class="auth-input-container password-input"
30
+ />
31
+
32
+ <!-- Reset Password Button -->
33
+ <button type="submit"
34
+ class="auth-btn-container"
35
+ >Відновити Пароль</button>
36
+ </form>
37
+
38
+ <!-- Redirect to Login -->
39
+ <p class="auth-media-blue-gray-sm-normal">
40
+ <span>Згадали пароль?</span>
41
+ <a href="#" class="auth-deep-blue-sm-medium">Увійдіть</a>
42
+ </p>
43
+ </div>
@@ -0,0 +1,79 @@
1
+ import { Component, OnInit } from '@angular/core';
2
+ import {FormBuilder, FormGroup, ReactiveFormsModule, ValidatorFn, Validators} from '@angular/forms';
3
+ import { ResetPasswordForm, TypedReactiveForm } from '../types/auth-form.type';
4
+ import { UtilsService } from '../services/utils.service';
5
+ import { ActivatedRoute, Router } from '@angular/router';
6
+ import { FormErrorKey } from '../../enums/form.enum';
7
+ import { COMMON_CONSTANTS } from '../../constans/common.const';
8
+
9
+ @Component({
10
+ selector: 'rtsee-reset-password',
11
+ templateUrl: './reset-password.component.html',
12
+ imports: [
13
+ ReactiveFormsModule
14
+ ],
15
+ standalone: true
16
+ })
17
+ export class ResetPasswordComponent implements OnInit {
18
+ public isLoading: boolean = false;
19
+ public resetPasswordForm: FormGroup<TypedReactiveForm<ResetPasswordForm>>;
20
+ public passwordFormKeys: Record<keyof ResetPasswordForm, string>;
21
+ public hidePassword: Record<keyof ResetPasswordForm, boolean> = {
22
+ password: true,
23
+ passwordConfirm: true
24
+ };
25
+ private token!: string;
26
+
27
+ constructor(
28
+ private formBuilder: FormBuilder,
29
+ private route: ActivatedRoute,
30
+ private router: Router
31
+ ) {
32
+ this.resetPasswordForm = this.formBuilder.group({
33
+ password: this.formBuilder.control('', {validators: [Validators.required, Validators.minLength(COMMON_CONSTANTS.minPasswordLength)], nonNullable: true}),
34
+ passwordConfirm: this.formBuilder.control('', {validators: [Validators.required, Validators.minLength(COMMON_CONSTANTS.minPasswordLength)], nonNullable: true}),
35
+ }, {validators: [this.passwordMatchValidator()]});
36
+ this.passwordFormKeys = UtilsService.getKeysAsValueObject(this.resetPasswordForm.value);
37
+ }
38
+
39
+ public ngOnInit(): void {
40
+ this.token = this.route.snapshot.params['token'];
41
+ }
42
+
43
+ public resetPassword(): void {
44
+ if (this.resetPasswordForm.valid) {
45
+ // this.isLoading = true;
46
+ // this.accountService.resetPassword({passwords: this.resetPasswordForm.getRawValue(), token: this.token})
47
+ // .subscribe((success) => {
48
+ // this.isLoading = false;
49
+ // if (success) {
50
+ // this.router.navigate(['/', 'sign-in']);
51
+ // }
52
+ // })
53
+ }
54
+ }
55
+
56
+ private passwordMatchValidator(): ValidatorFn {
57
+ // @ts-ignore
58
+ return (form: FormGroup<TypedReactiveForm<ResetPasswordForm>>): ValidationErrors | null => {
59
+ const password = form.value.password;
60
+ const passwordConfirm = form.value.passwordConfirm;
61
+ if (password !== passwordConfirm) {
62
+ if (form.controls.password.valid) {
63
+ form.controls.password.setErrors({[FormErrorKey.passwordsMismatch]: true});
64
+ }
65
+ if (form.controls.passwordConfirm.valid) {
66
+ form.controls.passwordConfirm.setErrors({[FormErrorKey.passwordsMismatch]: true});
67
+ }
68
+ return {[FormErrorKey.passwordsMismatch]: true};
69
+ }
70
+ if (form.controls.password.hasError(FormErrorKey.passwordsMismatch)) {
71
+ form.controls.password.setErrors(null);
72
+ }
73
+ if (form.controls.passwordConfirm.hasError(FormErrorKey.passwordsMismatch)) {
74
+ form.controls.passwordConfirm.setErrors(null);
75
+ }
76
+ return null;
77
+ }
78
+ }
79
+ }
@@ -0,0 +1,20 @@
1
+ import { Injectable } from '@angular/core';
2
+
3
+ @Injectable({
4
+ providedIn: 'root'
5
+ })
6
+ export class UtilsService {
7
+
8
+ constructor() {
9
+ }
10
+
11
+ public static getKeysAsValueObject<T extends object>(obj: T): Record<string, string> { // object was {}
12
+ if (obj) {
13
+ return Object.keys(obj).reduce<Record<string, string>>((result, value) => {
14
+ result[value] = value;
15
+ return result;
16
+ }, {});
17
+ }
18
+ return {};
19
+ }
20
+ }
@@ -0,0 +1,46 @@
1
+ <div class="auth-container">
2
+ <img ngSrc="/assets/img.png"
3
+ alt="Company Logo"
4
+ class="auth-logo"
5
+ height="38"
6
+ width="37"
7
+ />
8
+ <h2 class="auth-title">Вхід в Особистий Кабінет</h2>
9
+ <p class="auth-title-description">Аби переглядати казки, увійдіть в свій особистий кабінет</p>
10
+
11
+ <form class="auth-form" [formGroup]="signInForm" (ngSubmit)="login()">
12
+ <label for="sign-in-email" class="auth-sm-medium">Електрон пош</label>
13
+ <input [formControlName]="signInFormKeys.username"
14
+ type="email"
15
+ id="sign-in-email"
16
+ placeholder="Введіть електронну пошту"
17
+ class="auth-input-container email-input"
18
+ />
19
+ <label for="password" class="auth-sm-medium">Пароль</label>
20
+ <input [formControlName]="signInFormKeys.password"
21
+ type="password"
22
+ id="password"
23
+ placeholder="Пароль"
24
+ class="auth-input-container password-input"
25
+ />
26
+ <div class="auth-options">
27
+ <label class="auth-checkbox-label">
28
+ <input type="checkbox" class="auth-deep-blue-sm-medium auth-remember-checkbox" />
29
+ Запам’ятати
30
+ </label>
31
+ <a href="#" [routerLink]="['/', 'forgot-password']"
32
+ class="auth-deep-blue-sm-medium"
33
+ >Забули пароль?</a>
34
+ </div>
35
+
36
+ <button type="submit" class="auth-btn-container">Увійти</button>
37
+ </form>
38
+ <p class="auth-media-blue-gray-sm-normal">
39
+ <span>Немає акаунту?</span>
40
+ <span>&nbsp;</span>
41
+ <a href="#"
42
+ [routerLink]="['/', 'sign-up']"
43
+ class="auth-deep-blue-sm-medium"
44
+ >Створіть!</a>
45
+ </p>
46
+ </div>
@@ -0,0 +1,44 @@
1
+ import { Component } from '@angular/core';
2
+ import {Router, RouterLink} from '@angular/router';
3
+ import {FormBuilder, FormGroup, ReactiveFormsModule, Validators} from '@angular/forms';
4
+ import { UtilsService } from '../services/utils.service';
5
+ import { SignInForm, TypedReactiveForm } from '../types/auth-form.type';
6
+ import {NgOptimizedImage} from "@angular/common";
7
+
8
+ @Component({
9
+ selector: 'rtsee-sign-in',
10
+ templateUrl: './sign-in.component.html',
11
+ imports: [
12
+ NgOptimizedImage,
13
+ ReactiveFormsModule,
14
+ RouterLink
15
+ ],
16
+ standalone: true
17
+ })
18
+ export class SignInComponent {
19
+ public readonly signInForm: FormGroup<TypedReactiveForm<SignInForm>>
20
+ public readonly signInFormKeys: Record<keyof SignInForm, string>;
21
+
22
+ constructor(
23
+ private readonly formBuilder: FormBuilder,
24
+ private readonly router: Router
25
+ ) {
26
+ this.signInForm = this.formBuilder.group<TypedReactiveForm<SignInForm>>({
27
+ username: this.formBuilder.control(null, {validators: [Validators.required, Validators.email]}),
28
+ password: this.formBuilder.control(null, {validators: [Validators.required]}),
29
+ remember: this.formBuilder.control(false, {nonNullable: true})
30
+ });
31
+ this.signInFormKeys = UtilsService.getKeysAsValueObject(this.signInForm.getRawValue());
32
+ }
33
+
34
+ public login(): void {
35
+ if (this.signInForm.valid) {
36
+ // this.authService.signIn(this.signInForm.getRawValue())
37
+ // .subscribe((success) => {
38
+ // if (success) {
39
+ // this.router.navigate(['/']);
40
+ // }
41
+ // });
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,51 @@
1
+ <div class="auth-container">
2
+ <img ngSrc="/assets/img.png" alt="Company Logo" class="logo" height="38" width="37"/>
3
+ <h2 class="auth-title">Реєстрація в Особистий Кабінет</h2>
4
+ <p class="auth-title-description">Створіть свій особистий кабінет, щоб переглядати казки</p>
5
+
6
+ <form class="auth-form" [formGroup]="signUpForm" (ngSubmit)="signUp()">
7
+ <!-- Email Field -->
8
+ <label for="sign-up-email" class="auth-sm-medium">Електрон пошта</label>
9
+ <input [formControlName]="signUpFormKeys.email"
10
+ type="email" id="sign-up-email"
11
+ placeholder="Введіть електронну пошту"
12
+ class="auth-input-container email-input"
13
+ />
14
+
15
+ <!-- Password Field -->
16
+ <label for="sign-up-password" class="auth-sm-medium">Паро</label>
17
+ <input [formControlName]="signUpFormKeys.password"
18
+ type="password" id="sign-up-password"
19
+ placeholder="Створіть пароль"
20
+ class="auth-input-container password-input"
21
+ />
22
+
23
+ <!-- Confirm Password Field -->
24
+ <label for="confirm-password" class="auth-sm-medium">Підтверд пароль</label>
25
+ <input [formControlName]="signUpFormKeys.passwordConfirmation"
26
+ type="password"
27
+ id="confirm-password"
28
+ placeholder="Підтвердьте пароль"
29
+ class="auth-input-container password-input"
30
+ />
31
+
32
+ <!-- Terms and Conditions -->
33
+ <div class="auth-options">
34
+ <label class="auth-checkbox-label">
35
+ <input type="checkbox"
36
+ class="auth-deep-blue-sm-medium"
37
+ [formControlName]="signUpFormKeys.terms"
38
+ />
39
+ Я погоджуюсь з&nbsp;<a href="#" class="auth-deep-blue-sm-medium">умовами використання</a>
40
+ </label>
41
+ </div>
42
+
43
+ <!-- Sign-Up Button -->
44
+ <button type="submit" class="auth-btn-container">Зареєструватись</button>
45
+ </form>
46
+
47
+ <!-- Redirect to Sign-In -->
48
+ <p class="auth-media-blue-gray-sm-normal">
49
+ Вже маєте акаунт? <a href="#" [routerLink]="['/', 'sign-in']" class="auth-deep-blue-sm-medium">Увійдіть</a>
50
+ </p>
51
+ </div>
@@ -0,0 +1,51 @@
1
+ import { Component } from '@angular/core';
2
+ import {FormBuilder, FormGroup, ReactiveFormsModule, Validators} from '@angular/forms';
3
+ import { SignUpForm, TypedReactiveForm } from '../types/auth-form.type';
4
+ import { UtilsService } from '../services/utils.service';
5
+ import {ConfirmPasswordValidator} from "../validators/form-fields-validators";
6
+ import {RouterLink} from "@angular/router";
7
+ import {NgOptimizedImage} from "@angular/common";
8
+
9
+ @Component({
10
+ selector: 'rtsee-sign-up',
11
+ templateUrl: './sign-up.component.html',
12
+ imports: [
13
+ ReactiveFormsModule,
14
+ RouterLink,
15
+ NgOptimizedImage
16
+ ],
17
+ standalone: true
18
+ })
19
+ export class SignUpComponent {
20
+ public readonly signUpForm: FormGroup<TypedReactiveForm<SignUpForm>>;
21
+ public readonly signUpFormKeys: Record<keyof SignUpForm, string>;
22
+
23
+ constructor(
24
+ private readonly formBuilder: FormBuilder
25
+ ) {
26
+ this.signUpForm = this.formBuilder.group<TypedReactiveForm<SignUpForm>>({
27
+ email: this.formBuilder.control('', { validators: [Validators.required, Validators.email] }),
28
+ password: this.formBuilder.control('', { validators: [Validators.required, Validators.minLength(6)] }),
29
+ passwordConfirmation: this.formBuilder.control('', {
30
+ validators: [
31
+ Validators.required,
32
+ Validators.minLength(6)
33
+ ]
34
+ }),
35
+ terms: this.formBuilder.control(false, { nonNullable: true,
36
+ validators: [Validators.requiredTrue]
37
+ }),
38
+ }, { validators: [ ConfirmPasswordValidator.MatchFields ] });
39
+ this.signUpFormKeys = UtilsService.getKeysAsValueObject(this.signUpForm.getRawValue());
40
+ }
41
+
42
+ public signUp(): void {
43
+ if (this.signUpForm.valid) {
44
+ const formValue = this.signUpForm.getRawValue();
45
+
46
+
47
+ // Call sign-up API
48
+ // this.authService.signUp(formValue);
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,36 @@
1
+ import { FormArray, FormControl, FormGroup } from '@angular/forms';
2
+
3
+ export type SignUpForm = {
4
+ email: string | null;
5
+ password: string | null;
6
+ passwordConfirmation: string | null;
7
+ terms: boolean;
8
+ };
9
+
10
+ export type TypedReactiveForm<T> = {
11
+ [Key in keyof T]: T[Key] extends Array<infer Item>
12
+ ? Item extends object
13
+ ? FormArray<FormGroup<TypedReactiveForm<Item>>>
14
+ : FormControl<T[Key]>
15
+ : FormControl<T[Key]>;
16
+ };
17
+
18
+ export type ResetPasswordForm = {
19
+ password: string;
20
+ passwordConfirm: string;
21
+ };
22
+
23
+ export type ConfirmPasswordForm = {
24
+ password: string;
25
+ newPassword: string;
26
+ };
27
+
28
+ export type ForgotPasswordForm = {
29
+ email: string | null;
30
+ };
31
+
32
+ export type SignInForm = {
33
+ username: string | null;
34
+ password: string | null;
35
+ remember: boolean;
36
+ };
@@ -0,0 +1,27 @@
1
+ import {AbstractControl, ValidationErrors} from '@angular/forms';
2
+
3
+ export class ConfirmPasswordValidator {
4
+ /**
5
+ * Check matching password with confirm password
6
+ * @param control AbstractControl
7
+ */
8
+ static MatchFields(control: AbstractControl): ValidationErrors | null {
9
+ const passwordField: AbstractControl | null = control.get('password');
10
+ const passwordConfirmationField: AbstractControl | null = control.get('passwordConfirmation');
11
+
12
+ if (!passwordField || ! passwordConfirmationField) {
13
+ throw new Error('MatchFieldsValidator unable to find password controls!');
14
+ }
15
+
16
+ const password: string = passwordField.getRawValue() as string;
17
+ const passwordConfirmation: string = passwordConfirmationField.getRawValue() as string;
18
+
19
+ if (password !== passwordConfirmation) {
20
+ return {
21
+ confirmPassword: true
22
+ };
23
+ }
24
+
25
+ return null;
26
+ }
27
+ }
@@ -0,0 +1,10 @@
1
+ import { Component } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'rtsee-vendors',
5
+ templateUrl: './vendors.component.html',
6
+ standalone: true
7
+ })
8
+ export class VendorsComponent {
9
+
10
+ }
@@ -0,0 +1,15 @@
1
+ <div class="rtsee-bottom-nav">
2
+ <nav class="rtsee-nav-bar">
3
+ <a *ngFor="let route of config.routes"
4
+ [routerLink]="route.link"
5
+ routerLinkActive
6
+ [ngClass]="{'rtsee-nav-item-hidden': !route.isEnabled}"
7
+ [routerLinkActiveOptions]="{exact:true}"
8
+ class="rtsee-nav-bar-link rtsee-bottom-nav-bar-link"
9
+ >
10
+ <span class="rtsee-nav-bar-link-icon">
11
+ <span class="rtsee-nav-item-icon" [ngClass]="route.iconClassName"></span>
12
+ </span>
13
+ </a>
14
+ </nav>
15
+ </div>
@@ -0,0 +1,20 @@
1
+ import {Component, Input} from '@angular/core';
2
+ import {INavigationConfig} from "@rtsee/factory/dist/factory/src/interfaces/NavigationConfig";
3
+ import {RouterLink, RouterLinkActive} from "@angular/router";
4
+ import {NgClass, NgForOf} from "@angular/common";
5
+
6
+
7
+ @Component({
8
+ selector: 'rtsee-bottom-nav',
9
+ templateUrl: './rtsee-bottom-nav.component.html',
10
+ imports: [
11
+ RouterLink,
12
+ RouterLinkActive,
13
+ NgClass,
14
+ NgForOf
15
+ ],
16
+ standalone: true
17
+ })
18
+ export class RtseeBottomNavComponent {
19
+ @Input() public config!: INavigationConfig;
20
+ }
@@ -0,0 +1,50 @@
1
+ <div class="rtsee-shell"
2
+ [class.rtseeShellConferenceMode]="rtsee.eventsDashboard && rtsee.activeTab === 'events-dashboard'"
3
+ [ngClass]="{
4
+ 'rtsee-shell-conference-mode': rtsee.conference && rtsee.conference.isInActiveCall,
5
+ 'rtsee-shell-messenger-active': rtsee.messenger && rtsee.activeTab === 'messenger',
6
+ 'rtsee-shell-dashboard-active': rtsee.eventsDashboard && rtsee.activeTab === 'events-dashboard',
7
+ 'rtsee-shell-presentation-active': rtsee.presentation && rtsee.activeTab === 'presentation',
8
+ 'rtsee-shell-side-nav-expanded': isSidenavExpanded
9
+ }"
10
+ >
11
+ <div class="rtsee-sidenav-block">
12
+ <rtsee-sidenav [config]="navigationConfig" [isExpanded]="isSidenavExpanded" (toggleClicked)="onSidenavToggleClicked()"></rtsee-sidenav>
13
+ </div>
14
+
15
+ <div class="rtsee-shell-panel">
16
+ <div class="rtsee-conference-container"
17
+ *ngIf="rtsee.conference && rtsee.conference.isInActiveCall"
18
+ >
19
+ <rtsee-conference [rtSee]="rtsee.conference"
20
+ ></rtsee-conference>
21
+ </div>
22
+
23
+ <div class="rtsee-messenger-container"
24
+ *ngIf="rtsee.messenger"
25
+ >
26
+ <rtsee-messenger [messenger]="rtsee.messenger"
27
+ ></rtsee-messenger>
28
+ </div>
29
+
30
+ <div class="rtsee-events-dashboard-container"
31
+ *ngIf="rtsee.eventsDashboard && rtsee.eventsDashboard.isReady"
32
+ >
33
+ <rtsee-events-dashboard [eventsDashboard]="rtsee.eventsDashboard"
34
+ ></rtsee-events-dashboard>
35
+ </div>
36
+
37
+ <div class="rtsee-presentation-container"
38
+ *ngIf="rtsee.presentation && rtsee.presentation.isActive"
39
+ >
40
+ <rtsee-presentation [presentation]="rtsee.presentation"></rtsee-presentation>
41
+ </div>
42
+ </div>
43
+
44
+ <div class="rtsee-content">
45
+ <ng-content></ng-content>
46
+ </div>
47
+ <div class="rtsee-bottom-nav-block">
48
+ <rtsee-bottom-nav [config]="navigationConfig"></rtsee-bottom-nav>
49
+ </div>
50
+ </div>
@@ -0,0 +1,37 @@
1
+ import {Component, Input} from '@angular/core';
2
+ import {RTSee, INavigationConfig} from "@rtsee/factory";
3
+ import {NgClass, NgIf} from "@angular/common";
4
+ import {RtseeSidenavComponent} from "./rtsee-sidenav/rtsee-sidenav.component";
5
+ import {RTSeeConferenceComponent} from "../rtsee/rtsee-conference.component";
6
+ import {MessengerComponent} from "../rtsee-messenger/messenger/messenger.component";
7
+ import {RtseeEventsDashboardComponent} from "../rtsee-events-dashboard/rtsee-events-dashboard.component";
8
+ import {PresentationComponent} from "../rtsee-presentation/presentation/presentation.component";
9
+ import {RtseeBottomNavComponent} from "./rtsee-bottom-nav/rtsee-bottom-nav.component";
10
+
11
+
12
+ @Component({
13
+ selector: 'rtsee-container',
14
+ templateUrl: './rtsee-container.component.html',
15
+ imports: [
16
+ NgClass,
17
+ NgIf,
18
+ RtseeSidenavComponent,
19
+ RTSeeConferenceComponent,
20
+ MessengerComponent,
21
+ RtseeEventsDashboardComponent,
22
+ PresentationComponent,
23
+ RtseeBottomNavComponent
24
+ ],
25
+ standalone: true
26
+ })
27
+ export class RTSeeContainerComponent {
28
+ @Input() rtsee!: RTSee;
29
+ @Input() public navigationConfig!: INavigationConfig;
30
+
31
+ isSidenavExpanded: boolean = true;
32
+ isSidenavExpandededed: boolean = true;
33
+
34
+ onSidenavToggleClicked() {
35
+ this.isSidenavExpanded = !this.isSidenavExpanded;
36
+ }
37
+ }