mediasfu-angular 1.0.2 → 2.0.0

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/README.md +678 -578
  2. package/dist/README.md +677 -578
  3. package/dist/fesm2022/mediasfu-angular.mjs +5551 -2944
  4. package/dist/fesm2022/mediasfu-angular.mjs.map +1 -1
  5. package/dist/lib/@types/types.d.ts +22 -1
  6. package/dist/lib/components/breakout-components/breakout-rooms-modal.component.d.ts +1 -0
  7. package/dist/lib/components/mediasfu-components/mediasfu-broadcast.component.d.ts +153 -61
  8. package/dist/lib/components/mediasfu-components/mediasfu-chat.component.d.ts +154 -66
  9. package/dist/lib/components/mediasfu-components/mediasfu-conference.component.d.ts +190 -76
  10. package/dist/lib/components/mediasfu-components/mediasfu-generic.component.d.ts +184 -70
  11. package/dist/lib/components/mediasfu-components/mediasfu-webinar.component.d.ts +192 -78
  12. package/dist/lib/components/menu-components/menu-modal/menu-modal.component.d.ts +6 -1
  13. package/dist/lib/components/menu-components/share-buttons-component/share-buttons-component.component.d.ts +5 -2
  14. package/dist/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.d.ts +4 -2
  15. package/dist/lib/components/misc-components/pre-join-page/pre-join-page.component.d.ts +71 -66
  16. package/dist/lib/components/misc-components/share-event-modal/share-event-modal.component.d.ts +5 -1
  17. package/dist/lib/consumers/connect-local-ips.service.d.ts +81 -0
  18. package/dist/lib/consumers/connect-send-transport-audio.service.d.ts +43 -11
  19. package/dist/lib/consumers/connect-send-transport-screen.service.d.ts +87 -46
  20. package/dist/lib/consumers/connect-send-transport-video.service.d.ts +89 -43
  21. package/dist/lib/consumers/connect-send-transport.service.d.ts +5 -1
  22. package/dist/lib/consumers/create-send-transport.service.d.ts +130 -40
  23. package/dist/lib/consumers/disconnect-send-transport-audio.service.d.ts +77 -40
  24. package/dist/lib/consumers/disconnect-send-transport-screen.service.d.ts +48 -14
  25. package/dist/lib/consumers/disconnect-send-transport-video.service.d.ts +81 -44
  26. package/dist/lib/consumers/get-piped-producers-alt.service.d.ts +5 -1
  27. package/dist/lib/consumers/receive-all-piped-transports.service.d.ts +5 -1
  28. package/dist/lib/consumers/resume-send-transport-audio.service.d.ts +54 -21
  29. package/dist/lib/consumers/stream-success-audio-switch.service.d.ts +124 -40
  30. package/dist/lib/consumers/trigger.service.d.ts +3 -0
  31. package/dist/lib/methods/exit-methods/confirm-exit.service.d.ts +5 -1
  32. package/dist/lib/methods/recording-methods/start-recording.service.d.ts +3 -0
  33. package/dist/lib/methods/recording-methods/stop-recording.service.d.ts +4 -1
  34. package/dist/lib/methods/recording-methods/update-recording.service.d.ts +3 -0
  35. package/dist/lib/methods/stream-methods/click-audio.service.d.ts +3 -0
  36. package/dist/lib/methods/utils/check-limits-and-make-request.service.d.ts +23 -0
  37. package/dist/lib/methods/utils/create-response-join-room.util.d.ts +33 -0
  38. package/dist/lib/methods/utils/create-room-on-media-sfu.service.d.ts +25 -0
  39. package/dist/lib/methods/utils/initial-values.util.d.ts +6 -0
  40. package/dist/lib/methods/utils/join-room-on-media-sfu.service.d.ts +52 -0
  41. package/dist/lib/methods/whiteboard-methods/capture-canvas-stream.service.d.ts +37 -20
  42. package/dist/lib/producers/producer-emits/join-local-room.service.d.ts +125 -0
  43. package/dist/lib/producers/socket-receive-methods/all-members-rest.service.d.ts +7 -2
  44. package/dist/lib/producers/socket-receive-methods/all-members.service.d.ts +7 -2
  45. package/dist/lib/producers/socket-receive-methods/disconnect-user-self.service.d.ts +5 -1
  46. package/dist/lib/sockets/socket-manager.service.d.ts +90 -0
  47. package/dist/public-api.d.ts +11 -1
  48. package/package.json +17 -20
  49. package/dist/esm2022/lib/@types/types.mjs +0 -2
  50. package/dist/esm2022/lib/components/background-components/background-modal/background-modal.component.mjs +0 -799
  51. package/dist/esm2022/lib/components/breakout-components/breakout-rooms-modal.component.mjs +0 -366
  52. package/dist/esm2022/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.mjs +0 -143
  53. package/dist/esm2022/lib/components/breakout-components/room-list/room-list.component.mjs +0 -40
  54. package/dist/esm2022/lib/components/co-host-components/co-host-modal/co-host-modal.component.mjs +0 -245
  55. package/dist/esm2022/lib/components/display-components/alert-component/alert.component.component.mjs +0 -79
  56. package/dist/esm2022/lib/components/display-components/audio-card/audio-card.component.mjs +0 -356
  57. package/dist/esm2022/lib/components/display-components/audio-grid/audio-grid.component.mjs +0 -80
  58. package/dist/esm2022/lib/components/display-components/card-video-display/card-video-display.component.mjs +0 -129
  59. package/dist/esm2022/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.mjs +0 -138
  60. package/dist/esm2022/lib/components/display-components/control-buttons-component/control-buttons-component.component.mjs +0 -231
  61. package/dist/esm2022/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.mjs +0 -282
  62. package/dist/esm2022/lib/components/display-components/control-widgets/menu-participants-widget.component.mjs +0 -82
  63. package/dist/esm2022/lib/components/display-components/control-widgets/menu-record-widget.component.mjs +0 -65
  64. package/dist/esm2022/lib/components/display-components/control-widgets/menu-widget.component.mjs +0 -137
  65. package/dist/esm2022/lib/components/display-components/control-widgets/message-widget.component.mjs +0 -137
  66. package/dist/esm2022/lib/components/display-components/control-widgets/record-timer-widget.component.mjs +0 -51
  67. package/dist/esm2022/lib/components/display-components/control-widgets/screenshare-widget.component.mjs +0 -101
  68. package/dist/esm2022/lib/components/display-components/flexible-grid/flexible-grid.component.mjs +0 -151
  69. package/dist/esm2022/lib/components/display-components/flexible-video/flexible-video.component.mjs +0 -250
  70. package/dist/esm2022/lib/components/display-components/loading-modal/loading-modal.component.mjs +0 -102
  71. package/dist/esm2022/lib/components/display-components/main-aspect-component/main-aspect-component.component.mjs +0 -140
  72. package/dist/esm2022/lib/components/display-components/main-container-component/main-container-component.component.mjs +0 -131
  73. package/dist/esm2022/lib/components/display-components/main-grid-component/main-grid-component.component.mjs +0 -120
  74. package/dist/esm2022/lib/components/display-components/main-screen-component/main-screen-component.component.mjs +0 -201
  75. package/dist/esm2022/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.mjs +0 -115
  76. package/dist/esm2022/lib/components/display-components/mini-audio/mini-audio.component.mjs +0 -319
  77. package/dist/esm2022/lib/components/display-components/mini-card/mini-card.component.mjs +0 -161
  78. package/dist/esm2022/lib/components/display-components/mini-card-audio/mini-card-audio.component.mjs +0 -230
  79. package/dist/esm2022/lib/components/display-components/other-grid-component/other-grid-component.component.mjs +0 -126
  80. package/dist/esm2022/lib/components/display-components/pagination/pagination.component.mjs +0 -334
  81. package/dist/esm2022/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.mjs +0 -112
  82. package/dist/esm2022/lib/components/display-components/video-card/video-card.component.mjs +0 -392
  83. package/dist/esm2022/lib/components/display-settings-components/display-settings-modal.component.mjs +0 -106
  84. package/dist/esm2022/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.mjs +0 -199
  85. package/dist/esm2022/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.mjs +0 -132
  86. package/dist/esm2022/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.mjs +0 -220
  87. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-broadcast.component.mjs +0 -4238
  88. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-chat.component.mjs +0 -3754
  89. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-conference.component.mjs +0 -5071
  90. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-generic.component.mjs +0 -5380
  91. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-webinar.component.mjs +0 -5068
  92. package/dist/esm2022/lib/components/menu-components/custom-buttons/custom-buttons.component.mjs +0 -83
  93. package/dist/esm2022/lib/components/menu-components/meeting-id-component/meeting-id-component.component.mjs +0 -27
  94. package/dist/esm2022/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.mjs +0 -27
  95. package/dist/esm2022/lib/components/menu-components/menu-modal/menu-modal.component.mjs +0 -125
  96. package/dist/esm2022/lib/components/menu-components/share-buttons-component/share-buttons-component.component.mjs +0 -106
  97. package/dist/esm2022/lib/components/message-components/message-panel/message-panel.component.mjs +0 -228
  98. package/dist/esm2022/lib/components/message-components/messages-modal/messages-modal.component.mjs +0 -277
  99. package/dist/esm2022/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.mjs +0 -130
  100. package/dist/esm2022/lib/components/misc-components/pre-join-page/pre-join-page.component.mjs +0 -343
  101. package/dist/esm2022/lib/components/misc-components/share-event-modal/share-event-modal.component.mjs +0 -127
  102. package/dist/esm2022/lib/components/misc-components/welcome-page/welcome-page.component.mjs +0 -241
  103. package/dist/esm2022/lib/components/participants-components/participant-list/participant-list.component.mjs +0 -82
  104. package/dist/esm2022/lib/components/participants-components/participant-list-item/participant-list-item.component.mjs +0 -139
  105. package/dist/esm2022/lib/components/participants-components/participant-list-others/participant-list-others.component.mjs +0 -40
  106. package/dist/esm2022/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.mjs +0 -60
  107. package/dist/esm2022/lib/components/participants-components/participants-modal/participants-modal.component.mjs +0 -124
  108. package/dist/esm2022/lib/components/polls-components/poll-modal/poll-modal.component.mjs +0 -201
  109. package/dist/esm2022/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.mjs +0 -92
  110. package/dist/esm2022/lib/components/recording-components/recording-modal/recording-modal.component.mjs +0 -133
  111. package/dist/esm2022/lib/components/recording-components/standard-panel-component/standard-panel-component.component.mjs +0 -90
  112. package/dist/esm2022/lib/components/requests-components/render-request-component/render-request-component.component.mjs +0 -81
  113. package/dist/esm2022/lib/components/requests-components/requests-modal/requests-modal.component.mjs +0 -147
  114. package/dist/esm2022/lib/components/screenboard-components/screenboard/screenboard.component.mjs +0 -627
  115. package/dist/esm2022/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.mjs +0 -391
  116. package/dist/esm2022/lib/components/waiting-components/waiting-room-modal.component.mjs +0 -201
  117. package/dist/esm2022/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.mjs +0 -286
  118. package/dist/esm2022/lib/components/whiteboard-components/whiteboard/whiteboard.component.mjs +0 -1833
  119. package/dist/esm2022/lib/consumers/add-videos-grid.service.mjs +0 -345
  120. package/dist/esm2022/lib/consumers/auto-adjust.service.mjs +0 -109
  121. package/dist/esm2022/lib/consumers/calculate-rows-and-columns.service.mjs +0 -60
  122. package/dist/esm2022/lib/consumers/change-vids.service.mjs +0 -551
  123. package/dist/esm2022/lib/consumers/check-grid.service.mjs +0 -93
  124. package/dist/esm2022/lib/consumers/check-permission.service.mjs +0 -105
  125. package/dist/esm2022/lib/consumers/check-screen-share.service.mjs +0 -106
  126. package/dist/esm2022/lib/consumers/close-and-resize.service.mjs +0 -331
  127. package/dist/esm2022/lib/consumers/compare-active-names.service.mjs +0 -106
  128. package/dist/esm2022/lib/consumers/compare-screen-states.service.mjs +0 -98
  129. package/dist/esm2022/lib/consumers/connect-ips.service.mjs +0 -154
  130. package/dist/esm2022/lib/consumers/connect-recv-transport.service.mjs +0 -146
  131. package/dist/esm2022/lib/consumers/connect-send-transport-audio.service.mjs +0 -84
  132. package/dist/esm2022/lib/consumers/connect-send-transport-screen.service.mjs +0 -102
  133. package/dist/esm2022/lib/consumers/connect-send-transport-video.service.mjs +0 -99
  134. package/dist/esm2022/lib/consumers/connect-send-transport.service.mjs +0 -140
  135. package/dist/esm2022/lib/consumers/consumer-resume.service.mjs +0 -368
  136. package/dist/esm2022/lib/consumers/control-media.service.mjs +0 -113
  137. package/dist/esm2022/lib/consumers/create-send-transport.service.mjs +0 -172
  138. package/dist/esm2022/lib/consumers/disconnect-send-transport-audio.service.mjs +0 -108
  139. package/dist/esm2022/lib/consumers/disconnect-send-transport-screen.service.mjs +0 -84
  140. package/dist/esm2022/lib/consumers/disconnect-send-transport-video.service.mjs +0 -101
  141. package/dist/esm2022/lib/consumers/disp-streams.service.mjs +0 -513
  142. package/dist/esm2022/lib/consumers/generate-page-content.service.mjs +0 -106
  143. package/dist/esm2022/lib/consumers/get-estimate.service.mjs +0 -120
  144. package/dist/esm2022/lib/consumers/get-piped-producers-alt.service.mjs +0 -82
  145. package/dist/esm2022/lib/consumers/get-producers-piped.service.mjs +0 -79
  146. package/dist/esm2022/lib/consumers/get-videos.service.mjs +0 -91
  147. package/dist/esm2022/lib/consumers/mix-streams.service.mjs +0 -95
  148. package/dist/esm2022/lib/consumers/on-screen-changes.service.mjs +0 -103
  149. package/dist/esm2022/lib/consumers/prepopulate-user-media.service.mjs +0 -541
  150. package/dist/esm2022/lib/consumers/process-consumer-transports-audio.service.mjs +0 -101
  151. package/dist/esm2022/lib/consumers/process-consumer-transports.service.mjs +0 -128
  152. package/dist/esm2022/lib/consumers/re-port.service.mjs +0 -114
  153. package/dist/esm2022/lib/consumers/re-update-inter.service.mjs +0 -239
  154. package/dist/esm2022/lib/consumers/readjust.service.mjs +0 -173
  155. package/dist/esm2022/lib/consumers/receive-all-piped-transports.service.mjs +0 -87
  156. package/dist/esm2022/lib/consumers/receive-room-messages.service.mjs +0 -69
  157. package/dist/esm2022/lib/consumers/reorder-streams.service.mjs +0 -239
  158. package/dist/esm2022/lib/consumers/request-screen-share.service.mjs +0 -101
  159. package/dist/esm2022/lib/consumers/resume-pause-audio-streams.service.mjs +0 -150
  160. package/dist/esm2022/lib/consumers/resume-pause-streams.service.mjs +0 -103
  161. package/dist/esm2022/lib/consumers/resume-send-transport-audio.service.mjs +0 -91
  162. package/dist/esm2022/lib/consumers/signal-new-consumer-transport.service.mjs +0 -136
  163. package/dist/esm2022/lib/consumers/socket-receive-methods/join-consume-room.service.mjs +0 -96
  164. package/dist/esm2022/lib/consumers/socket-receive-methods/new-pipe-producer.service.mjs +0 -100
  165. package/dist/esm2022/lib/consumers/socket-receive-methods/producer-closed.service.mjs +0 -78
  166. package/dist/esm2022/lib/consumers/start-share-screen.service.mjs +0 -120
  167. package/dist/esm2022/lib/consumers/stop-share-screen.service.mjs +0 -175
  168. package/dist/esm2022/lib/consumers/stream-success-audio-switch.service.mjs +0 -185
  169. package/dist/esm2022/lib/consumers/stream-success-audio.service.mjs +0 -210
  170. package/dist/esm2022/lib/consumers/stream-success-screen.service.mjs +0 -193
  171. package/dist/esm2022/lib/consumers/stream-success-video.service.mjs +0 -260
  172. package/dist/esm2022/lib/consumers/switch-user-audio.service.mjs +0 -120
  173. package/dist/esm2022/lib/consumers/switch-user-video-alt.service.mjs +0 -260
  174. package/dist/esm2022/lib/consumers/switch-user-video.service.mjs +0 -172
  175. package/dist/esm2022/lib/consumers/trigger.service.mjs +0 -210
  176. package/dist/esm2022/lib/consumers/update-mini-cards-grid.service.mjs +0 -135
  177. package/dist/esm2022/lib/consumers/update-participant-audio-decibels.service.mjs +0 -84
  178. package/dist/esm2022/lib/methods/background-methods/launch-background.service.mjs +0 -48
  179. package/dist/esm2022/lib/methods/breakout-room-methods/breakout-room-updated.service.mjs +0 -183
  180. package/dist/esm2022/lib/methods/breakout-room-methods/launch-breakout-rooms.service.mjs +0 -46
  181. package/dist/esm2022/lib/methods/co-host-methods/launch-co-host.service.mjs +0 -46
  182. package/dist/esm2022/lib/methods/co-host-methods/modify-co-host-settings.service.mjs +0 -104
  183. package/dist/esm2022/lib/methods/display-settings-methods/launch-display-settings.service.mjs +0 -46
  184. package/dist/esm2022/lib/methods/display-settings-methods/modify-display-settings.service.mjs +0 -194
  185. package/dist/esm2022/lib/methods/exit-methods/confirm-exit.service.mjs +0 -52
  186. package/dist/esm2022/lib/methods/exit-methods/launch-confirm-exit.service.mjs +0 -42
  187. package/dist/esm2022/lib/methods/media-settings-methods/launch-media-settings.service.mjs +0 -85
  188. package/dist/esm2022/lib/methods/menu-methods/launch-menu-modal.service.mjs +0 -44
  189. package/dist/esm2022/lib/methods/message-methods/launch-messages.service.mjs +0 -45
  190. package/dist/esm2022/lib/methods/message-methods/send-message.service.mjs +0 -143
  191. package/dist/esm2022/lib/methods/participants-methods/launch-participants.service.mjs +0 -47
  192. package/dist/esm2022/lib/methods/participants-methods/message-participants.service.mjs +0 -98
  193. package/dist/esm2022/lib/methods/participants-methods/mute-participants.service.mjs +0 -96
  194. package/dist/esm2022/lib/methods/participants-methods/remove-participants.service.mjs +0 -107
  195. package/dist/esm2022/lib/methods/polls-methods/handle-create-poll.service.mjs +0 -75
  196. package/dist/esm2022/lib/methods/polls-methods/handle-end-poll.service.mjs +0 -72
  197. package/dist/esm2022/lib/methods/polls-methods/handle-vote-poll.service.mjs +0 -83
  198. package/dist/esm2022/lib/methods/polls-methods/launch-poll.service.mjs +0 -43
  199. package/dist/esm2022/lib/methods/polls-methods/poll-updated.service.mjs +0 -95
  200. package/dist/esm2022/lib/methods/recording-methods/check-pause-state.service.mjs +0 -69
  201. package/dist/esm2022/lib/methods/recording-methods/check-resume-state.service.mjs +0 -56
  202. package/dist/esm2022/lib/methods/recording-methods/confirm-recording.service.mjs +0 -278
  203. package/dist/esm2022/lib/methods/recording-methods/launch-recording.service.mjs +0 -125
  204. package/dist/esm2022/lib/methods/recording-methods/record-pause-timer.service.mjs +0 -67
  205. package/dist/esm2022/lib/methods/recording-methods/record-resume-timer.service.mjs +0 -130
  206. package/dist/esm2022/lib/methods/recording-methods/record-start-timer.service.mjs +0 -134
  207. package/dist/esm2022/lib/methods/recording-methods/record-update-timer.service.mjs +0 -80
  208. package/dist/esm2022/lib/methods/recording-methods/start-recording.service.mjs +0 -197
  209. package/dist/esm2022/lib/methods/recording-methods/stop-recording.service.mjs +0 -112
  210. package/dist/esm2022/lib/methods/recording-methods/update-recording.service.mjs +0 -272
  211. package/dist/esm2022/lib/methods/requests-methods/launch-requests.service.mjs +0 -51
  212. package/dist/esm2022/lib/methods/requests-methods/respond-to-requests.service.mjs +0 -84
  213. package/dist/esm2022/lib/methods/settings-methods/launch-settings.service.mjs +0 -51
  214. package/dist/esm2022/lib/methods/settings-methods/modify-settings.service.mjs +0 -109
  215. package/dist/esm2022/lib/methods/stream-methods/click-audio.service.mjs +0 -275
  216. package/dist/esm2022/lib/methods/stream-methods/click-chat.service.mjs +0 -75
  217. package/dist/esm2022/lib/methods/stream-methods/click-screen-share.service.mjs +0 -178
  218. package/dist/esm2022/lib/methods/stream-methods/click-video.service.mjs +0 -271
  219. package/dist/esm2022/lib/methods/stream-methods/switch-audio.service.mjs +0 -80
  220. package/dist/esm2022/lib/methods/stream-methods/switch-video-alt.service.mjs +0 -116
  221. package/dist/esm2022/lib/methods/stream-methods/switch-video.service.mjs +0 -132
  222. package/dist/esm2022/lib/methods/utils/format-number.service.mjs +0 -57
  223. package/dist/esm2022/lib/methods/utils/generate-random-messages.service.mjs +0 -120
  224. package/dist/esm2022/lib/methods/utils/generate-random-participants.service.mjs +0 -126
  225. package/dist/esm2022/lib/methods/utils/generate-random-polls.service.mjs +0 -78
  226. package/dist/esm2022/lib/methods/utils/generate-random-request-list.service.mjs +0 -90
  227. package/dist/esm2022/lib/methods/utils/generate-random-waiting-room-list.service.mjs +0 -59
  228. package/dist/esm2022/lib/methods/utils/get-modal-position.util.mjs +0 -32
  229. package/dist/esm2022/lib/methods/utils/get-overlay-position.util.mjs +0 -31
  230. package/dist/esm2022/lib/methods/utils/initial-values.util.mjs +0 -379
  231. package/dist/esm2022/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.mjs +0 -96
  232. package/dist/esm2022/lib/methods/utils/mini-audio-player/mini-audio-player.component.mjs +0 -315
  233. package/dist/esm2022/lib/methods/utils/producer/a-params.service.mjs +0 -58
  234. package/dist/esm2022/lib/methods/utils/producer/h-params.service.mjs +0 -87
  235. package/dist/esm2022/lib/methods/utils/producer/screen-params.service.mjs +0 -61
  236. package/dist/esm2022/lib/methods/utils/producer/v-params.service.mjs +0 -87
  237. package/dist/esm2022/lib/methods/utils/producer/video-capture-constraints.service.mjs +0 -84
  238. package/dist/esm2022/lib/methods/utils/sleep.util.mjs +0 -17
  239. package/dist/esm2022/lib/methods/utils/sound-player.service.mjs +0 -63
  240. package/dist/esm2022/lib/methods/utils/validate-alphanumeric.service.mjs +0 -49
  241. package/dist/esm2022/lib/methods/waiting-methods/launch-waiting.service.mjs +0 -41
  242. package/dist/esm2022/lib/methods/waiting-methods/respond-to-waiting.service.mjs +0 -69
  243. package/dist/esm2022/lib/methods/whiteboard-methods/capture-canvas-stream.service.mjs +0 -98
  244. package/dist/esm2022/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.mjs +0 -44
  245. package/dist/esm2022/lib/producer-client/producer-client-emits/create-device-client.service.mjs +0 -74
  246. package/dist/esm2022/lib/producer-client/producer-client-emits/join-room-client.service.mjs +0 -96
  247. package/dist/esm2022/lib/producer-client/producer-client-emits/update-room-parameters-client.service.mjs +0 -276
  248. package/dist/esm2022/lib/producers/producer-emits/join-con-room.service.mjs +0 -152
  249. package/dist/esm2022/lib/producers/producer-emits/join-room.service.mjs +0 -152
  250. package/dist/esm2022/lib/producers/socket-receive-methods/all-members-rest.service.mjs +0 -228
  251. package/dist/esm2022/lib/producers/socket-receive-methods/all-members.service.mjs +0 -218
  252. package/dist/esm2022/lib/producers/socket-receive-methods/all-waiting-room-members.service.mjs +0 -57
  253. package/dist/esm2022/lib/producers/socket-receive-methods/ban-participant.service.mjs +0 -76
  254. package/dist/esm2022/lib/producers/socket-receive-methods/control-media-host.service.mjs +0 -183
  255. package/dist/esm2022/lib/producers/socket-receive-methods/disconnect-user-self.service.mjs +0 -50
  256. package/dist/esm2022/lib/producers/socket-receive-methods/disconnect.service.mjs +0 -64
  257. package/dist/esm2022/lib/producers/socket-receive-methods/get-domains.service.mjs +0 -78
  258. package/dist/esm2022/lib/producers/socket-receive-methods/host-request-response.service.mjs +0 -150
  259. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-ended.service.mjs +0 -73
  260. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-still-there.service.mjs +0 -47
  261. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-time-remaining.service.mjs +0 -63
  262. package/dist/esm2022/lib/producers/socket-receive-methods/participant-requested.service.mjs +0 -63
  263. package/dist/esm2022/lib/producers/socket-receive-methods/person-joined.service.mjs +0 -54
  264. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-closed.service.mjs +0 -129
  265. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-paused.service.mjs +0 -152
  266. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-resumed.service.mjs +0 -99
  267. package/dist/esm2022/lib/producers/socket-receive-methods/re-initiate-recording.service.mjs +0 -67
  268. package/dist/esm2022/lib/producers/socket-receive-methods/receive-message.service.mjs +0 -134
  269. package/dist/esm2022/lib/producers/socket-receive-methods/recording-notice.service.mjs +0 -233
  270. package/dist/esm2022/lib/producers/socket-receive-methods/room-record-params.service.mjs +0 -121
  271. package/dist/esm2022/lib/producers/socket-receive-methods/screen-producer-id.service.mjs +0 -86
  272. package/dist/esm2022/lib/producers/socket-receive-methods/start-records.service.mjs +0 -60
  273. package/dist/esm2022/lib/producers/socket-receive-methods/stopped-recording.service.mjs +0 -62
  274. package/dist/esm2022/lib/producers/socket-receive-methods/time-left-recording.service.mjs +0 -57
  275. package/dist/esm2022/lib/producers/socket-receive-methods/update-consuming-domains.service.mjs +0 -105
  276. package/dist/esm2022/lib/producers/socket-receive-methods/update-media-settings.service.mjs +0 -66
  277. package/dist/esm2022/lib/producers/socket-receive-methods/updated-co-host.service.mjs +0 -96
  278. package/dist/esm2022/lib/producers/socket-receive-methods/user-waiting.service.mjs +0 -52
  279. package/dist/esm2022/lib/sockets/socket-manager.service.mjs +0 -113
  280. package/dist/esm2022/mediasfu-angular.mjs +0 -5
  281. package/dist/esm2022/public-api.mjs +0 -187
@@ -1,183 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * Updates the state of breakout rooms based on the provided data and parameters.
5
- *
6
- * This method handles changes in breakout rooms, updates the relevant state variables,
7
- * and triggers necessary UI updates based on the current status of the breakout rooms.
8
- *
9
- * @param {BreakoutRoomUpdatedOptions} options - The options object containing the data and parameters.
10
- * @param {BreakoutRoomUpdatedData} options.data - The data object containing information about the breakout rooms.
11
- * @param {BreakoutRoomUpdatedParameters} options.parameters - The parameters object containing various state update functions and other parameters.
12
- * @param {boolean} options.parameters.breakOutRoomStarted - Indicates if the breakout room has started.
13
- * @param {boolean} options.parameters.breakOutRoomEnded - Indicates if the breakout room has ended.
14
- * @param {Array<BreakoutParticipant[]>} options.parameters.breakoutRooms - The list of current breakout rooms.
15
- * @param {number} options.parameters.hostNewRoom - The ID of the new room for the host.
16
- * @param {string} options.parameters.islevel - The level of the breakout room (e.g., '2' for host).
17
- * @param {Array<Participant>} options.parameters.participantsAll - The list of all participants.
18
- * @param {Array<Participant>} options.parameters.participants - The list of participants who are not banned.
19
- * @param {string} options.parameters.meetingDisplayType - The current display type of the meeting.
20
- * @param {string} options.parameters.prevMeetingDisplayType - The previous display type of the meeting.
21
- * @param {Function} options.parameters.updateBreakoutRooms - Function to update the breakout rooms.
22
- * @param {Function} options.parameters.updateBreakOutRoomStarted - Function to update the breakout room started state.
23
- * @param {Function} options.parameters.updateBreakOutRoomEnded - Function to update the breakout room ended state.
24
- * @param {Function} options.parameters.updateHostNewRoom - Function to update the host's new room.
25
- * @param {Function} options.parameters.updateMeetingDisplayType - Function to update the meeting display type.
26
- * @param {Function} options.parameters.updateParticipantsAll - Function to update the list of all participants.
27
- * @param {Function} options.parameters.updateParticipants - Function to update the list of participants who are not banned.
28
- * @param {Function} options.parameters.onScreenChanges - Function to handle screen changes.
29
- * @param {Function} options.parameters.rePort - Function to handle reporting.
30
- *
31
- * @returns {Promise<void>} A promise that resolves when the breakout room state has been updated.
32
- *
33
- * @throws Will throw an error if the update process fails.
34
- *
35
- * @example
36
- * ```typescript
37
- * const options = {
38
- * data: {
39
- * forHost: true,
40
- * newRoom: 3,
41
- * status: 'started',
42
- * members: [
43
- * { name: 'user1', isBanned: false, audioID: 'audio1', videoID: 'video1' },
44
- * { name: 'user2', isBanned: true, audioID: 'audio2', videoID: 'video2' },
45
- * ],
46
- * breakoutRooms: [[{ name: 'user1' }, { name: 'user2' }]],
47
- * },
48
- * parameters: {
49
- * socket: socketInstance,
50
- * roomName: 'mainRoom',
51
- * screenStates: [{ mainScreenPerson: 'user1', mainScreenFilled: true, adminOnMainScreen: false }],
52
- * participants: [{ name: 'admin', islevel: '2' }],
53
- * breakOutRoomStarted: false,
54
- * breakOutRoomEnded: false,
55
- * hostNewRoom: 0,
56
- * islevel: '2',
57
- * participantsAll: [],
58
- * updateBreakoutRooms: (rooms) => {},
59
- * updateBreakOutRoomStarted: (started) => {},
60
- * updateBreakOutRoomEnded: (ended) => {},
61
- * updateHostNewRoom: (room) => {},
62
- * updateMeetingDisplayType: (type) => {},
63
- * updateParticipantsAll: (participants) => {},
64
- * updateParticipants: (participants) => {},
65
- * onScreenChanges: async () => {},
66
- * rePort: async () => {},
67
- * },
68
- * };
69
- *
70
- * const breakoutRoomService = new BreakoutRoomUpdated();
71
- * await breakoutRoomService.breakoutRoomUpdated(options);
72
- * ```
73
- */
74
- export class BreakoutRoomUpdated {
75
- /**
76
- * Updates the state of breakout rooms based on the provided data and parameters.
77
- *
78
- * @param {Object} options - The options object.
79
- * @param {Object} options.data - The data object containing information about the breakout rooms.
80
- * @param {Object} options.parameters - The parameters object containing various state update functions and other parameters.
81
- * @param {boolean} options.parameters.breakOutRoomStarted - Indicates if the breakout room has started.
82
- * @param {boolean} options.parameters.breakOutRoomEnded - Indicates if the breakout room has ended.
83
- * @param {Array} options.parameters.breakoutRooms - The list of current breakout rooms.
84
- * @param {number} options.parameters.hostNewRoom - The ID of the new room for the host.
85
- * @param {string} options.parameters.islevel - The level of the breakout room.
86
- * @param {Array} options.parameters.participantsAll - The list of all participants.
87
- * @param {Array} options.parameters.participants - The list of participants who are not banned.
88
- * @param {string} options.parameters.meetingDisplayType - The current display type of the meeting.
89
- * @param {string} options.parameters.prevMeetingDisplayType - The previous display type of the meeting.
90
- * @param {Function} options.parameters.updateBreakoutRooms - Function to update the breakout rooms.
91
- * @param {Function} options.parameters.updateBreakOutRoomStarted - Function to update the breakout room started state.
92
- * @param {Function} options.parameters.updateBreakOutRoomEnded - Function to update the breakout room ended state.
93
- * @param {Function} options.parameters.updateHostNewRoom - Function to update the host's new room.
94
- * @param {Function} options.parameters.updateMeetingDisplayType - Function to update the meeting display type.
95
- * @param {Function} options.parameters.updateParticipantsAll - Function to update the list of all participants.
96
- * @param {Function} options.parameters.updateParticipants - Function to update the list of participants who are not banned.
97
- * @param {Function} options.parameters.onScreenChanges - Function to handle screen changes.
98
- * @param {Function} options.parameters.rePort - Function to handle reporting.
99
- *
100
- * @returns {Promise<void>} A promise that resolves when the breakout room state has been updated.
101
- *
102
- * @throws Will throw an error if the update process fails.
103
- */
104
- breakoutRoomUpdated = async ({ data, parameters }) => {
105
- try {
106
- parameters = parameters.getUpdatedAllParams();
107
- let { breakOutRoomStarted, breakOutRoomEnded, breakoutRooms, islevel, participantsAll, participants, updateBreakoutRooms, updateBreakOutRoomStarted, updateBreakOutRoomEnded, updateHostNewRoom, updateMeetingDisplayType, meetingDisplayType, prevMeetingDisplayType, updateParticipantsAll, updateParticipants,
108
- //mediaSfu functions
109
- onScreenChanges, rePort, } = parameters;
110
- if (data.forHost) {
111
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
112
- updateHostNewRoom(data.newRoom);
113
- await onScreenChanges({ changed: true, parameters });
114
- return;
115
- }
116
- if (islevel == '2' && data.members) {
117
- //filter out the participant that isBanned == true
118
- participantsAll = data.members;
119
- //remove every field other than isBanned and name from participantsAll
120
- participantsAll = data.members.map((participant) => ({
121
- isBanned: participant.isBanned,
122
- name: participant.name,
123
- audioID: participant.audioID,
124
- videoID: participant.videoID,
125
- }));
126
- updateParticipantsAll(participantsAll);
127
- participants = data.members.filter((participant) => participant.isBanned == false);
128
- updateParticipants(participants);
129
- }
130
- breakoutRooms = data.breakoutRooms || [];
131
- updateBreakoutRooms(breakoutRooms);
132
- if (data.status == 'started' && (breakOutRoomStarted || !breakOutRoomEnded)) {
133
- breakOutRoomStarted = true;
134
- breakOutRoomEnded = false;
135
- updateBreakOutRoomStarted(true);
136
- updateBreakOutRoomEnded(false);
137
- prevMeetingDisplayType = meetingDisplayType;
138
- if (meetingDisplayType != 'all') {
139
- meetingDisplayType = 'all';
140
- updateMeetingDisplayType('all');
141
- }
142
- await onScreenChanges({ changed: true, parameters });
143
- if (islevel == '2') {
144
- await rePort({ restart: true, parameters });
145
- }
146
- }
147
- else if (data.status == 'ended') {
148
- breakOutRoomEnded = true;
149
- updateBreakOutRoomEnded(true);
150
- if (meetingDisplayType != prevMeetingDisplayType) {
151
- meetingDisplayType = prevMeetingDisplayType;
152
- updateMeetingDisplayType(prevMeetingDisplayType);
153
- }
154
- await onScreenChanges({ changed: true, parameters });
155
- if (islevel == '2') {
156
- await rePort({ restart: true, parameters });
157
- }
158
- }
159
- else if (data.status == 'started' && breakOutRoomStarted) {
160
- breakOutRoomStarted = true;
161
- breakOutRoomEnded = false;
162
- updateBreakOutRoomStarted(true);
163
- updateBreakOutRoomEnded(false);
164
- await onScreenChanges({ changed: true, parameters });
165
- if (islevel == '2') {
166
- await rePort({ restart: true, parameters });
167
- }
168
- }
169
- }
170
- catch (error) {
171
- // console.log('Error updating breakout room:', error.message);
172
- }
173
- };
174
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BreakoutRoomUpdated, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
175
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BreakoutRoomUpdated, providedIn: 'root' });
176
- }
177
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: BreakoutRoomUpdated, decorators: [{
178
- type: Injectable,
179
- args: [{
180
- providedIn: 'root',
181
- }]
182
- }] });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtvdXQtcm9vbS11cGRhdGVkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy9icmVha291dC1yb29tLW1ldGhvZHMvYnJlYWtvdXQtcm9vbS11cGRhdGVkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUE2QzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0VHO0FBTUgsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTRCRztJQUVILG1CQUFtQixHQUFHLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQThCLEVBQWlCLEVBQUU7UUFDOUYsSUFBSSxDQUFDO1lBQ0gsVUFBVSxHQUFHLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBRTlDLElBQUksRUFDRixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixPQUFPLEVBQ1AsZUFBZSxFQUNmLFlBQVksRUFFWixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLGtCQUFrQjtZQUVsQixvQkFBb0I7WUFDcEIsZUFBZSxFQUNmLE1BQU0sR0FDUCxHQUFHLFVBQVUsQ0FBQztZQUVmLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNqQixvRUFBb0U7Z0JBQ3BFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFRLENBQUMsQ0FBQztnQkFDakMsTUFBTSxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ3JELE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxPQUFPLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDbkMsa0RBQWtEO2dCQUNsRCxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDL0Isc0VBQXNFO2dCQUN0RSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ25ELFFBQVEsRUFBRSxXQUFXLENBQUMsUUFBUTtvQkFDOUIsSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJO29CQUN0QixPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU87b0JBQzVCLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTztpQkFDN0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ0oscUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBRXZDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDaEMsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FDNUQsQ0FBQztnQkFDRixrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRUQsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO1lBQ3pDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRW5DLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxTQUFTLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztnQkFDNUUsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixpQkFBaUIsR0FBRyxLQUFLLENBQUM7Z0JBQzFCLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDL0Isc0JBQXNCLEdBQUcsa0JBQWtCLENBQUM7Z0JBQzVDLElBQUksa0JBQWtCLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ2hDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztvQkFDM0Isd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7Z0JBQ0QsTUFBTSxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ3JELElBQUksT0FBTyxJQUFJLEdBQUcsRUFBRSxDQUFDO29CQUNuQixNQUFNLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztZQUNILENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNsQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7Z0JBQ3pCLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM5QixJQUFJLGtCQUFrQixJQUFJLHNCQUFzQixFQUFFLENBQUM7b0JBQ2pELGtCQUFrQixHQUFHLHNCQUFzQixDQUFDO29CQUM1Qyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUNuRCxDQUFDO2dCQUNELE1BQU0sZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUNyRCxJQUFJLE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztvQkFDbkIsTUFBTSxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQzlDLENBQUM7WUFDSCxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxTQUFTLElBQUksbUJBQW1CLEVBQUUsQ0FBQztnQkFDM0QsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixpQkFBaUIsR0FBRyxLQUFLLENBQUM7Z0JBQzFCLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDL0IsTUFBTSxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ3JELElBQUksT0FBTyxJQUFJLEdBQUcsRUFBRSxDQUFDO29CQUNuQixNQUFNLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztZQUNwQiwrREFBK0Q7UUFDakUsQ0FBQztJQUNILENBQUMsQ0FBQzt1R0E1SFMsbUJBQW1COzJHQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJyZWFrb3V0UGFydGljaXBhbnQsXG4gIEJyZWFrb3V0Um9vbVVwZGF0ZWREYXRhLFxuICBPblNjcmVlbkNoYW5nZXNQYXJhbWV0ZXJzLFxuICBPblNjcmVlbkNoYW5nZXNUeXBlLFxuICBQYXJ0aWNpcGFudCxcbiAgUmVQb3J0UGFyYW1ldGVycyxcbiAgUmVQb3J0VHlwZSxcbn0gZnJvbSAnLi4vLi4vQHR5cGVzL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBCcmVha291dFJvb21VcGRhdGVkUGFyYW1ldGVycyBleHRlbmRzIE9uU2NyZWVuQ2hhbmdlc1BhcmFtZXRlcnMsIFJlUG9ydFBhcmFtZXRlcnMge1xuICBicmVha091dFJvb21TdGFydGVkOiBib29sZWFuO1xuICBicmVha091dFJvb21FbmRlZDogYm9vbGVhbjtcbiAgYnJlYWtvdXRSb29tczogQnJlYWtvdXRQYXJ0aWNpcGFudFtdW107XG4gIGhvc3ROZXdSb29tOiBudW1iZXI7XG4gIGlzbGV2ZWw6IHN0cmluZztcbiAgcGFydGljaXBhbnRzQWxsOiBQYXJ0aWNpcGFudFtdO1xuICBwYXJ0aWNpcGFudHM6IFBhcnRpY2lwYW50W107XG4gIG1lZXRpbmdEaXNwbGF5VHlwZTogc3RyaW5nO1xuICBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlOiBzdHJpbmc7XG4gIHVwZGF0ZUJyZWFrb3V0Um9vbXM6IChyb29tczogQnJlYWtvdXRQYXJ0aWNpcGFudFtdW10pID0+IHZvaWQ7XG4gIHVwZGF0ZUJyZWFrT3V0Um9vbVN0YXJ0ZWQ6IChzdGFydGVkOiBib29sZWFuKSA9PiB2b2lkO1xuICB1cGRhdGVCcmVha091dFJvb21FbmRlZDogKGVuZGVkOiBib29sZWFuKSA9PiB2b2lkO1xuICB1cGRhdGVIb3N0TmV3Um9vbTogKHJvb206IG51bWJlcikgPT4gdm9pZDtcbiAgdXBkYXRlTWVldGluZ0Rpc3BsYXlUeXBlOiAodHlwZTogc3RyaW5nKSA9PiB2b2lkO1xuICB1cGRhdGVQYXJ0aWNpcGFudHNBbGw6IChwYXJ0aWNpcGFudHM6IFBhcnRpY2lwYW50W10pID0+IHZvaWQ7XG4gIHVwZGF0ZVBhcnRpY2lwYW50czogKHBhcnRpY2lwYW50czogUGFydGljaXBhbnRbXSkgPT4gdm9pZDtcblxuICAvL21lZGlhc2Z1IGZ1bmN0aW9uc1xuICBvblNjcmVlbkNoYW5nZXM6IE9uU2NyZWVuQ2hhbmdlc1R5cGU7XG4gIHJlUG9ydDogUmVQb3J0VHlwZTtcblxuICBnZXRVcGRhdGVkQWxsUGFyYW1zOiAoKSA9PiBCcmVha291dFJvb21VcGRhdGVkUGFyYW1ldGVycztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFrb3V0Um9vbVVwZGF0ZWRPcHRpb25zIHtcbiAgZGF0YTogQnJlYWtvdXRSb29tVXBkYXRlZERhdGE7XG4gIHBhcmFtZXRlcnM6IEJyZWFrb3V0Um9vbVVwZGF0ZWRQYXJhbWV0ZXJzO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBCcmVha291dFJvb21VcGRhdGVkVHlwZSA9IChvcHRpb25zOiBCcmVha291dFJvb21VcGRhdGVkT3B0aW9ucykgPT4gUHJvbWlzZTx2b2lkPjtcblxuLyoqXG4gKiBVcGRhdGVzIHRoZSBzdGF0ZSBvZiBicmVha291dCByb29tcyBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZGF0YSBhbmQgcGFyYW1ldGVycy5cbiAqXG4gKiBUaGlzIG1ldGhvZCBoYW5kbGVzIGNoYW5nZXMgaW4gYnJlYWtvdXQgcm9vbXMsIHVwZGF0ZXMgdGhlIHJlbGV2YW50IHN0YXRlIHZhcmlhYmxlcyxcbiAqIGFuZCB0cmlnZ2VycyBuZWNlc3NhcnkgVUkgdXBkYXRlcyBiYXNlZCBvbiB0aGUgY3VycmVudCBzdGF0dXMgb2YgdGhlIGJyZWFrb3V0IHJvb21zLlxuICpcbiAqIEBwYXJhbSB7QnJlYWtvdXRSb29tVXBkYXRlZE9wdGlvbnN9IG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBvYmplY3QgY29udGFpbmluZyB0aGUgZGF0YSBhbmQgcGFyYW1ldGVycy5cbiAqIEBwYXJhbSB7QnJlYWtvdXRSb29tVXBkYXRlZERhdGF9IG9wdGlvbnMuZGF0YSAtIFRoZSBkYXRhIG9iamVjdCBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBicmVha291dCByb29tcy5cbiAqIEBwYXJhbSB7QnJlYWtvdXRSb29tVXBkYXRlZFBhcmFtZXRlcnN9IG9wdGlvbnMucGFyYW1ldGVycyAtIFRoZSBwYXJhbWV0ZXJzIG9iamVjdCBjb250YWluaW5nIHZhcmlvdXMgc3RhdGUgdXBkYXRlIGZ1bmN0aW9ucyBhbmQgb3RoZXIgcGFyYW1ldGVycy5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmJyZWFrT3V0Um9vbVN0YXJ0ZWQgLSBJbmRpY2F0ZXMgaWYgdGhlIGJyZWFrb3V0IHJvb20gaGFzIHN0YXJ0ZWQuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5icmVha091dFJvb21FbmRlZCAtIEluZGljYXRlcyBpZiB0aGUgYnJlYWtvdXQgcm9vbSBoYXMgZW5kZWQuXG4gKiBAcGFyYW0ge0FycmF5PEJyZWFrb3V0UGFydGljaXBhbnRbXT59IG9wdGlvbnMucGFyYW1ldGVycy5icmVha291dFJvb21zIC0gVGhlIGxpc3Qgb2YgY3VycmVudCBicmVha291dCByb29tcy5cbiAqIEBwYXJhbSB7bnVtYmVyfSBvcHRpb25zLnBhcmFtZXRlcnMuaG9zdE5ld1Jvb20gLSBUaGUgSUQgb2YgdGhlIG5ldyByb29tIGZvciB0aGUgaG9zdC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMuaXNsZXZlbCAtIFRoZSBsZXZlbCBvZiB0aGUgYnJlYWtvdXQgcm9vbSAoZS5nLiwgJzInIGZvciBob3N0KS5cbiAqIEBwYXJhbSB7QXJyYXk8UGFydGljaXBhbnQ+fSBvcHRpb25zLnBhcmFtZXRlcnMucGFydGljaXBhbnRzQWxsIC0gVGhlIGxpc3Qgb2YgYWxsIHBhcnRpY2lwYW50cy5cbiAqIEBwYXJhbSB7QXJyYXk8UGFydGljaXBhbnQ+fSBvcHRpb25zLnBhcmFtZXRlcnMucGFydGljaXBhbnRzIC0gVGhlIGxpc3Qgb2YgcGFydGljaXBhbnRzIHdobyBhcmUgbm90IGJhbm5lZC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMubWVldGluZ0Rpc3BsYXlUeXBlIC0gVGhlIGN1cnJlbnQgZGlzcGxheSB0eXBlIG9mIHRoZSBtZWV0aW5nLlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFyYW1ldGVycy5wcmV2TWVldGluZ0Rpc3BsYXlUeXBlIC0gVGhlIHByZXZpb3VzIGRpc3BsYXkgdHlwZSBvZiB0aGUgbWVldGluZy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVCcmVha291dFJvb21zIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBicmVha291dCByb29tcy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVCcmVha091dFJvb21TdGFydGVkIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBicmVha291dCByb29tIHN0YXJ0ZWQgc3RhdGUuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlQnJlYWtPdXRSb29tRW5kZWQgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGJyZWFrb3V0IHJvb20gZW5kZWQgc3RhdGUuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlSG9zdE5ld1Jvb20gLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGhvc3QncyBuZXcgcm9vbS5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVNZWV0aW5nRGlzcGxheVR5cGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIG1lZXRpbmcgZGlzcGxheSB0eXBlLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVBhcnRpY2lwYW50c0FsbCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbGlzdCBvZiBhbGwgcGFydGljaXBhbnRzLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVBhcnRpY2lwYW50cyAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbGlzdCBvZiBwYXJ0aWNpcGFudHMgd2hvIGFyZSBub3QgYmFubmVkLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLm9uU2NyZWVuQ2hhbmdlcyAtIEZ1bmN0aW9uIHRvIGhhbmRsZSBzY3JlZW4gY2hhbmdlcy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy5yZVBvcnQgLSBGdW5jdGlvbiB0byBoYW5kbGUgcmVwb3J0aW5nLlxuICpcbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBicmVha291dCByb29tIHN0YXRlIGhhcyBiZWVuIHVwZGF0ZWQuXG4gKlxuICogQHRocm93cyBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSB1cGRhdGUgcHJvY2VzcyBmYWlscy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgb3B0aW9ucyA9IHtcbiAqICAgZGF0YToge1xuICogICAgIGZvckhvc3Q6IHRydWUsXG4gKiAgICAgbmV3Um9vbTogMyxcbiAqICAgICBzdGF0dXM6ICdzdGFydGVkJyxcbiAqICAgICBtZW1iZXJzOiBbXG4gKiAgICAgICB7IG5hbWU6ICd1c2VyMScsIGlzQmFubmVkOiBmYWxzZSwgYXVkaW9JRDogJ2F1ZGlvMScsIHZpZGVvSUQ6ICd2aWRlbzEnIH0sXG4gKiAgICAgICB7IG5hbWU6ICd1c2VyMicsIGlzQmFubmVkOiB0cnVlLCBhdWRpb0lEOiAnYXVkaW8yJywgdmlkZW9JRDogJ3ZpZGVvMicgfSxcbiAqICAgICBdLFxuICogICAgIGJyZWFrb3V0Um9vbXM6IFtbeyBuYW1lOiAndXNlcjEnIH0sIHsgbmFtZTogJ3VzZXIyJyB9XV0sXG4gKiAgIH0sXG4gKiAgIHBhcmFtZXRlcnM6IHtcbiAqICAgICBzb2NrZXQ6IHNvY2tldEluc3RhbmNlLFxuICogICAgIHJvb21OYW1lOiAnbWFpblJvb20nLFxuICogICAgIHNjcmVlblN0YXRlczogW3sgbWFpblNjcmVlblBlcnNvbjogJ3VzZXIxJywgbWFpblNjcmVlbkZpbGxlZDogdHJ1ZSwgYWRtaW5Pbk1haW5TY3JlZW46IGZhbHNlIH1dLFxuICogICAgIHBhcnRpY2lwYW50czogW3sgbmFtZTogJ2FkbWluJywgaXNsZXZlbDogJzInIH1dLFxuICogICAgIGJyZWFrT3V0Um9vbVN0YXJ0ZWQ6IGZhbHNlLFxuICogICAgIGJyZWFrT3V0Um9vbUVuZGVkOiBmYWxzZSxcbiAqICAgICBob3N0TmV3Um9vbTogMCxcbiAqICAgICBpc2xldmVsOiAnMicsXG4gKiAgICAgcGFydGljaXBhbnRzQWxsOiBbXSxcbiAqICAgICB1cGRhdGVCcmVha291dFJvb21zOiAocm9vbXMpID0+IHt9LFxuICogICAgIHVwZGF0ZUJyZWFrT3V0Um9vbVN0YXJ0ZWQ6IChzdGFydGVkKSA9PiB7fSxcbiAqICAgICB1cGRhdGVCcmVha091dFJvb21FbmRlZDogKGVuZGVkKSA9PiB7fSxcbiAqICAgICB1cGRhdGVIb3N0TmV3Um9vbTogKHJvb20pID0+IHt9LFxuICogICAgIHVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZTogKHR5cGUpID0+IHt9LFxuICogICAgIHVwZGF0ZVBhcnRpY2lwYW50c0FsbDogKHBhcnRpY2lwYW50cykgPT4ge30sXG4gKiAgICAgdXBkYXRlUGFydGljaXBhbnRzOiAocGFydGljaXBhbnRzKSA9PiB7fSxcbiAqICAgICBvblNjcmVlbkNoYW5nZXM6IGFzeW5jICgpID0+IHt9LFxuICogICAgIHJlUG9ydDogYXN5bmMgKCkgPT4ge30sXG4gKiAgIH0sXG4gKiB9O1xuICpcbiAqIGNvbnN0IGJyZWFrb3V0Um9vbVNlcnZpY2UgPSBuZXcgQnJlYWtvdXRSb29tVXBkYXRlZCgpO1xuICogYXdhaXQgYnJlYWtvdXRSb29tU2VydmljZS5icmVha291dFJvb21VcGRhdGVkKG9wdGlvbnMpO1xuICogYGBgXG4gKi9cblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWtvdXRSb29tVXBkYXRlZCB7XG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBzdGF0ZSBvZiBicmVha291dCByb29tcyBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZGF0YSBhbmQgcGFyYW1ldGVycy5cbiAgICpcbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBvYmplY3QuXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zLmRhdGEgLSBUaGUgZGF0YSBvYmplY3QgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtvdXQgcm9vbXMuXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zLnBhcmFtZXRlcnMgLSBUaGUgcGFyYW1ldGVycyBvYmplY3QgY29udGFpbmluZyB2YXJpb3VzIHN0YXRlIHVwZGF0ZSBmdW5jdGlvbnMgYW5kIG90aGVyIHBhcmFtZXRlcnMuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmJyZWFrT3V0Um9vbVN0YXJ0ZWQgLSBJbmRpY2F0ZXMgaWYgdGhlIGJyZWFrb3V0IHJvb20gaGFzIHN0YXJ0ZWQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmJyZWFrT3V0Um9vbUVuZGVkIC0gSW5kaWNhdGVzIGlmIHRoZSBicmVha291dCByb29tIGhhcyBlbmRlZC5cbiAgICogQHBhcmFtIHtBcnJheX0gb3B0aW9ucy5wYXJhbWV0ZXJzLmJyZWFrb3V0Um9vbXMgLSBUaGUgbGlzdCBvZiBjdXJyZW50IGJyZWFrb3V0IHJvb21zLlxuICAgKiBAcGFyYW0ge251bWJlcn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmhvc3ROZXdSb29tIC0gVGhlIElEIG9mIHRoZSBuZXcgcm9vbSBmb3IgdGhlIGhvc3QuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMuaXNsZXZlbCAtIFRoZSBsZXZlbCBvZiB0aGUgYnJlYWtvdXQgcm9vbS5cbiAgICogQHBhcmFtIHtBcnJheX0gb3B0aW9ucy5wYXJhbWV0ZXJzLnBhcnRpY2lwYW50c0FsbCAtIFRoZSBsaXN0IG9mIGFsbCBwYXJ0aWNpcGFudHMuXG4gICAqIEBwYXJhbSB7QXJyYXl9IG9wdGlvbnMucGFyYW1ldGVycy5wYXJ0aWNpcGFudHMgLSBUaGUgbGlzdCBvZiBwYXJ0aWNpcGFudHMgd2hvIGFyZSBub3QgYmFubmVkLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJhbWV0ZXJzLm1lZXRpbmdEaXNwbGF5VHlwZSAtIFRoZSBjdXJyZW50IGRpc3BsYXkgdHlwZSBvZiB0aGUgbWVldGluZy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFyYW1ldGVycy5wcmV2TWVldGluZ0Rpc3BsYXlUeXBlIC0gVGhlIHByZXZpb3VzIGRpc3BsYXkgdHlwZSBvZiB0aGUgbWVldGluZy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZUJyZWFrb3V0Um9vbXMgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGJyZWFrb3V0IHJvb21zLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlQnJlYWtPdXRSb29tU3RhcnRlZCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgYnJlYWtvdXQgcm9vbSBzdGFydGVkIHN0YXRlLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlQnJlYWtPdXRSb29tRW5kZWQgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGJyZWFrb3V0IHJvb20gZW5kZWQgc3RhdGUuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVIb3N0TmV3Um9vbSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgaG9zdCdzIG5ldyByb29tLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlTWVldGluZ0Rpc3BsYXlUeXBlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBtZWV0aW5nIGRpc3BsYXkgdHlwZS5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVBhcnRpY2lwYW50c0FsbCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbGlzdCBvZiBhbGwgcGFydGljaXBhbnRzLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlUGFydGljaXBhbnRzIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBsaXN0IG9mIHBhcnRpY2lwYW50cyB3aG8gYXJlIG5vdCBiYW5uZWQuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy5vblNjcmVlbkNoYW5nZXMgLSBGdW5jdGlvbiB0byBoYW5kbGUgc2NyZWVuIGNoYW5nZXMuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy5yZVBvcnQgLSBGdW5jdGlvbiB0byBoYW5kbGUgcmVwb3J0aW5nLlxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgYnJlYWtvdXQgcm9vbSBzdGF0ZSBoYXMgYmVlbiB1cGRhdGVkLlxuICAgKlxuICAgKiBAdGhyb3dzIFdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIHVwZGF0ZSBwcm9jZXNzIGZhaWxzLlxuICAgKi9cblxuICBicmVha291dFJvb21VcGRhdGVkID0gYXN5bmMgKHsgZGF0YSwgcGFyYW1ldGVycyB9OiBCcmVha291dFJvb21VcGRhdGVkT3B0aW9ucyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIHRyeSB7XG4gICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVycy5nZXRVcGRhdGVkQWxsUGFyYW1zKCk7XG5cbiAgICAgIGxldCB7XG4gICAgICAgIGJyZWFrT3V0Um9vbVN0YXJ0ZWQsXG4gICAgICAgIGJyZWFrT3V0Um9vbUVuZGVkLFxuICAgICAgICBicmVha291dFJvb21zLFxuICAgICAgICBpc2xldmVsLFxuICAgICAgICBwYXJ0aWNpcGFudHNBbGwsXG4gICAgICAgIHBhcnRpY2lwYW50cyxcblxuICAgICAgICB1cGRhdGVCcmVha291dFJvb21zLFxuICAgICAgICB1cGRhdGVCcmVha091dFJvb21TdGFydGVkLFxuICAgICAgICB1cGRhdGVCcmVha091dFJvb21FbmRlZCxcbiAgICAgICAgdXBkYXRlSG9zdE5ld1Jvb20sXG4gICAgICAgIHVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZSxcbiAgICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlLFxuICAgICAgICBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlLFxuICAgICAgICB1cGRhdGVQYXJ0aWNpcGFudHNBbGwsXG4gICAgICAgIHVwZGF0ZVBhcnRpY2lwYW50cyxcblxuICAgICAgICAvL21lZGlhU2Z1IGZ1bmN0aW9uc1xuICAgICAgICBvblNjcmVlbkNoYW5nZXMsXG4gICAgICAgIHJlUG9ydCxcbiAgICAgIH0gPSBwYXJhbWV0ZXJzO1xuXG4gICAgICBpZiAoZGF0YS5mb3JIb3N0KSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgIHVwZGF0ZUhvc3ROZXdSb29tKGRhdGEubmV3Um9vbSEpO1xuICAgICAgICBhd2FpdCBvblNjcmVlbkNoYW5nZXMoeyBjaGFuZ2VkOiB0cnVlLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpc2xldmVsID09ICcyJyAmJiBkYXRhLm1lbWJlcnMpIHtcbiAgICAgICAgLy9maWx0ZXIgb3V0IHRoZSBwYXJ0aWNpcGFudCB0aGF0IGlzQmFubmVkID09IHRydWVcbiAgICAgICAgcGFydGljaXBhbnRzQWxsID0gZGF0YS5tZW1iZXJzO1xuICAgICAgICAvL3JlbW92ZSBldmVyeSBmaWVsZCBvdGhlciB0aGFuIGlzQmFubmVkIGFuZCBuYW1lIGZyb20gcGFydGljaXBhbnRzQWxsXG4gICAgICAgIHBhcnRpY2lwYW50c0FsbCA9IGRhdGEubWVtYmVycy5tYXAoKHBhcnRpY2lwYW50KSA9PiAoe1xuICAgICAgICAgIGlzQmFubmVkOiBwYXJ0aWNpcGFudC5pc0Jhbm5lZCxcbiAgICAgICAgICBuYW1lOiBwYXJ0aWNpcGFudC5uYW1lLFxuICAgICAgICAgIGF1ZGlvSUQ6IHBhcnRpY2lwYW50LmF1ZGlvSUQsXG4gICAgICAgICAgdmlkZW9JRDogcGFydGljaXBhbnQudmlkZW9JRCxcbiAgICAgICAgfSkpO1xuICAgICAgICB1cGRhdGVQYXJ0aWNpcGFudHNBbGwocGFydGljaXBhbnRzQWxsKTtcblxuICAgICAgICBwYXJ0aWNpcGFudHMgPSBkYXRhLm1lbWJlcnMuZmlsdGVyKFxuICAgICAgICAgIChwYXJ0aWNpcGFudDogUGFydGljaXBhbnQpID0+IHBhcnRpY2lwYW50LmlzQmFubmVkID09IGZhbHNlLFxuICAgICAgICApO1xuICAgICAgICB1cGRhdGVQYXJ0aWNpcGFudHMocGFydGljaXBhbnRzKTtcbiAgICAgIH1cblxuICAgICAgYnJlYWtvdXRSb29tcyA9IGRhdGEuYnJlYWtvdXRSb29tcyB8fCBbXTtcbiAgICAgIHVwZGF0ZUJyZWFrb3V0Um9vbXMoYnJlYWtvdXRSb29tcyk7XG5cbiAgICAgIGlmIChkYXRhLnN0YXR1cyA9PSAnc3RhcnRlZCcgJiYgKGJyZWFrT3V0Um9vbVN0YXJ0ZWQgfHwgIWJyZWFrT3V0Um9vbUVuZGVkKSkge1xuICAgICAgICBicmVha091dFJvb21TdGFydGVkID0gdHJ1ZTtcbiAgICAgICAgYnJlYWtPdXRSb29tRW5kZWQgPSBmYWxzZTtcbiAgICAgICAgdXBkYXRlQnJlYWtPdXRSb29tU3RhcnRlZCh0cnVlKTtcbiAgICAgICAgdXBkYXRlQnJlYWtPdXRSb29tRW5kZWQoZmFsc2UpO1xuICAgICAgICBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlID0gbWVldGluZ0Rpc3BsYXlUeXBlO1xuICAgICAgICBpZiAobWVldGluZ0Rpc3BsYXlUeXBlICE9ICdhbGwnKSB7XG4gICAgICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlID0gJ2FsbCc7XG4gICAgICAgICAgdXBkYXRlTWVldGluZ0Rpc3BsYXlUeXBlKCdhbGwnKTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCBvblNjcmVlbkNoYW5nZXMoeyBjaGFuZ2VkOiB0cnVlLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICBpZiAoaXNsZXZlbCA9PSAnMicpIHtcbiAgICAgICAgICBhd2FpdCByZVBvcnQoeyByZXN0YXJ0OiB0cnVlLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGRhdGEuc3RhdHVzID09ICdlbmRlZCcpIHtcbiAgICAgICAgYnJlYWtPdXRSb29tRW5kZWQgPSB0cnVlO1xuICAgICAgICB1cGRhdGVCcmVha091dFJvb21FbmRlZCh0cnVlKTtcbiAgICAgICAgaWYgKG1lZXRpbmdEaXNwbGF5VHlwZSAhPSBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlKSB7XG4gICAgICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlID0gcHJldk1lZXRpbmdEaXNwbGF5VHlwZTtcbiAgICAgICAgICB1cGRhdGVNZWV0aW5nRGlzcGxheVR5cGUocHJldk1lZXRpbmdEaXNwbGF5VHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgYXdhaXQgb25TY3JlZW5DaGFuZ2VzKHsgY2hhbmdlZDogdHJ1ZSwgcGFyYW1ldGVycyB9KTtcbiAgICAgICAgaWYgKGlzbGV2ZWwgPT0gJzInKSB7XG4gICAgICAgICAgYXdhaXQgcmVQb3J0KHsgcmVzdGFydDogdHJ1ZSwgcGFyYW1ldGVycyB9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChkYXRhLnN0YXR1cyA9PSAnc3RhcnRlZCcgJiYgYnJlYWtPdXRSb29tU3RhcnRlZCkge1xuICAgICAgICBicmVha091dFJvb21TdGFydGVkID0gdHJ1ZTtcbiAgICAgICAgYnJlYWtPdXRSb29tRW5kZWQgPSBmYWxzZTtcbiAgICAgICAgdXBkYXRlQnJlYWtPdXRSb29tU3RhcnRlZCh0cnVlKTtcbiAgICAgICAgdXBkYXRlQnJlYWtPdXRSb29tRW5kZWQoZmFsc2UpO1xuICAgICAgICBhd2FpdCBvblNjcmVlbkNoYW5nZXMoeyBjaGFuZ2VkOiB0cnVlLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICBpZiAoaXNsZXZlbCA9PSAnMicpIHtcbiAgICAgICAgICBhd2FpdCByZVBvcnQoeyByZXN0YXJ0OiB0cnVlLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgLy8gY29uc29sZS5sb2coJ0Vycm9yIHVwZGF0aW5nIGJyZWFrb3V0IHJvb206JywgZXJyb3IubWVzc2FnZSk7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,46 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * Launches the breakout rooms by toggling the visibility of the breakout rooms modal.
5
- *
6
- * This method is used to show or hide the breakout rooms modal based on the current visibility state.
7
- *
8
- * @param {LaunchBreakoutRoomsOptions} options - The options object containing necessary variables and functions.
9
- * @param {Function} options.updateIsBreakoutRoomsModalVisible - Function to update the visibility state of the breakout rooms modal.
10
- * @param {boolean} options.isBreakoutRoomsModalVisible - Current visibility state of the breakout rooms modal.
11
- *
12
- * @returns {void}
13
- *
14
- * @example
15
- * ```typescript
16
- * const options: LaunchBreakoutRoomsOptions = {
17
- * updateIsBreakoutRoomsModalVisible: (isVisible) => {
18
- * console.log('Breakout Rooms Modal is now:', isVisible ? 'Visible' : 'Hidden');
19
- * },
20
- * isBreakoutRoomsModalVisible: false,
21
- * };
22
- *
23
- * const launchBreakoutRoomsService = new LaunchBreakoutRooms();
24
- * launchBreakoutRoomsService.launchBreakoutRooms(options);
25
- * ```
26
- */
27
- export class LaunchBreakoutRooms {
28
- /**
29
- * Launches the breakout rooms by toggling the visibility of the breakout rooms modal.
30
- *
31
- * @param updateIsBreakoutRoomsModalVisible - Function to update the visibility state of the breakout rooms modal.
32
- * @param isBreakoutRoomsModalVisible - Current visibility state of the breakout rooms modal.
33
- */
34
- launchBreakoutRooms({ updateIsBreakoutRoomsModalVisible, isBreakoutRoomsModalVisible, }) {
35
- updateIsBreakoutRoomsModalVisible(!isBreakoutRoomsModalVisible);
36
- }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchBreakoutRooms, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchBreakoutRooms, providedIn: 'root' });
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchBreakoutRooms, decorators: [{
41
- type: Injectable,
42
- args: [{
43
- providedIn: 'root',
44
- }]
45
- }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWJyZWFrb3V0LXJvb21zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy9icmVha291dC1yb29tLW1ldGhvZHMvbGF1bmNoLWJyZWFrb3V0LXJvb21zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJHO0FBTUgsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7Ozs7T0FLRztJQUVILG1CQUFtQixDQUFDLEVBQ2xCLGlDQUFpQyxFQUNqQywyQkFBMkIsR0FDQTtRQUMzQixpQ0FBaUMsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDbEUsQ0FBQzt1R0FiVSxtQkFBbUI7MkdBQW5CLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0IGludGVyZmFjZSBMYXVuY2hCcmVha291dFJvb21zT3B0aW9ucyB7XG4gIHVwZGF0ZUlzQnJlYWtvdXRSb29tc01vZGFsVmlzaWJsZTogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbiAgaXNCcmVha291dFJvb21zTW9kYWxWaXNpYmxlOiBib29sZWFuO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBMYXVuY2hCcmVha291dFJvb21zVHlwZSA9IChvcHRpb25zOiBMYXVuY2hCcmVha291dFJvb21zT3B0aW9ucykgPT4gdm9pZDtcblxuXG4vKipcbiAqIExhdW5jaGVzIHRoZSBicmVha291dCByb29tcyBieSB0b2dnbGluZyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYnJlYWtvdXQgcm9vbXMgbW9kYWwuXG4gKlxuICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byBzaG93IG9yIGhpZGUgdGhlIGJyZWFrb3V0IHJvb21zIG1vZGFsIGJhc2VkIG9uIHRoZSBjdXJyZW50IHZpc2liaWxpdHkgc3RhdGUuXG4gKlxuICogQHBhcmFtIHtMYXVuY2hCcmVha291dFJvb21zT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIG9iamVjdCBjb250YWluaW5nIG5lY2Vzc2FyeSB2YXJpYWJsZXMgYW5kIGZ1bmN0aW9ucy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlSXNCcmVha291dFJvb21zTW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBicmVha291dCByb29tcyBtb2RhbC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5pc0JyZWFrb3V0Um9vbXNNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGJyZWFrb3V0IHJvb21zIG1vZGFsLlxuICpcbiAqIEByZXR1cm5zIHt2b2lkfVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBvcHRpb25zOiBMYXVuY2hCcmVha291dFJvb21zT3B0aW9ucyA9IHtcbiAqICAgdXBkYXRlSXNCcmVha291dFJvb21zTW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ0JyZWFrb3V0IFJvb21zIE1vZGFsIGlzIG5vdzonLCBpc1Zpc2libGUgPyAnVmlzaWJsZScgOiAnSGlkZGVuJyk7XG4gKiAgIH0sXG4gKiAgIGlzQnJlYWtvdXRSb29tc01vZGFsVmlzaWJsZTogZmFsc2UsXG4gKiB9O1xuICpcbiAqIGNvbnN0IGxhdW5jaEJyZWFrb3V0Um9vbXNTZXJ2aWNlID0gbmV3IExhdW5jaEJyZWFrb3V0Um9vbXMoKTtcbiAqIGxhdW5jaEJyZWFrb3V0Um9vbXNTZXJ2aWNlLmxhdW5jaEJyZWFrb3V0Um9vbXMob3B0aW9ucyk7XG4gKiBgYGBcbiAqL1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBMYXVuY2hCcmVha291dFJvb21zIHtcbiAgLyoqXG4gICAqIExhdW5jaGVzIHRoZSBicmVha291dCByb29tcyBieSB0b2dnbGluZyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYnJlYWtvdXQgcm9vbXMgbW9kYWwuXG4gICAqXG4gICAqIEBwYXJhbSB1cGRhdGVJc0JyZWFrb3V0Um9vbXNNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGJyZWFrb3V0IHJvb21zIG1vZGFsLlxuICAgKiBAcGFyYW0gaXNCcmVha291dFJvb21zTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBicmVha291dCByb29tcyBtb2RhbC5cbiAgICovXG5cbiAgbGF1bmNoQnJlYWtvdXRSb29tcyh7XG4gICAgdXBkYXRlSXNCcmVha291dFJvb21zTW9kYWxWaXNpYmxlLFxuICAgIGlzQnJlYWtvdXRSb29tc01vZGFsVmlzaWJsZSxcbiAgfTogTGF1bmNoQnJlYWtvdXRSb29tc09wdGlvbnMpOiB2b2lkIHtcbiAgICB1cGRhdGVJc0JyZWFrb3V0Um9vbXNNb2RhbFZpc2libGUoIWlzQnJlYWtvdXRSb29tc01vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,46 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * Toggles the visibility of the co-host modal.
5
- *
6
- * This method is used to show or hide the co-host modal based on the current visibility state.
7
- *
8
- * @param {LaunchCoHostOptions} options - The options object containing necessary variables and functions.
9
- * @param {Function} options.updateIsCoHostModalVisible - Function to update the visibility state of the co-host modal.
10
- * @param {boolean} options.isCoHostModalVisible - Current visibility state of the co-host modal.
11
- *
12
- * @returns {void}
13
- *
14
- * @example
15
- * ```typescript
16
- * const options: LaunchCoHostOptions = {
17
- * updateIsCoHostModalVisible: (isVisible) => {
18
- * console.log('Co-Host Modal is now:', isVisible ? 'Visible' : 'Hidden');
19
- * },
20
- * isCoHostModalVisible: false,
21
- * };
22
- *
23
- * const launchCoHostService = new launchCoHost();
24
- * launchCoHostService.launchCoHost(options);
25
- * ```
26
- */
27
- export class launchCoHost {
28
- /**
29
- * Toggles the visibility of the co-host modal.
30
- *
31
- * @param updateIsCoHostModalVisible - Function to update the visibility state of the co-host modal.
32
- * @param isCoHostModalVisible - Current visibility state of the co-host modal.
33
- */
34
- launchCoHost({ updateIsCoHostModalVisible, isCoHostModalVisible }) {
35
- updateIsCoHostModalVisible(!isCoHostModalVisible);
36
- }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: launchCoHost, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: launchCoHost, providedIn: 'root' });
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: launchCoHost, decorators: [{
41
- type: Injectable,
42
- args: [{
43
- providedIn: 'root',
44
- }]
45
- }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWNvLWhvc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL2NvLWhvc3QtbWV0aG9kcy9sYXVuY2gtY28taG9zdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQU1ILE1BQU0sT0FBTyxZQUFZO0lBQ3ZCOzs7OztPQUtHO0lBRUgsWUFBWSxDQUFDLEVBQUUsMEJBQTBCLEVBQUUsb0JBQW9CLEVBQXVCO1FBQ3BGLDBCQUEwQixDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRCxDQUFDO3VHQVZVLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0IGludGVyZmFjZSBMYXVuY2hDb0hvc3RPcHRpb25zIHtcbiAgdXBkYXRlSXNDb0hvc3RNb2RhbFZpc2libGU6IChpc1Zpc2libGU6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIGlzQ29Ib3N0TW9kYWxWaXNpYmxlOiBib29sZWFuO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBMYXVuY2hDb0hvc3RUeXBlID0gKG9wdGlvbnM6IExhdW5jaENvSG9zdE9wdGlvbnMpID0+IHZvaWQ7XG5cbi8qKlxuICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgY28taG9zdCBtb2RhbC5cbiAqXG4gKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHNob3cgb3IgaGlkZSB0aGUgY28taG9zdCBtb2RhbCBiYXNlZCBvbiB0aGUgY3VycmVudCB2aXNpYmlsaXR5IHN0YXRlLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoQ29Ib3N0T3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIG9iamVjdCBjb250YWluaW5nIG5lY2Vzc2FyeSB2YXJpYWJsZXMgYW5kIGZ1bmN0aW9ucy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlSXNDb0hvc3RNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvLWhvc3QgbW9kYWwuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMuaXNDb0hvc3RNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvLWhvc3QgbW9kYWwuXG4gKlxuICogQHJldHVybnMge3ZvaWR9XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9wdGlvbnM6IExhdW5jaENvSG9zdE9wdGlvbnMgPSB7XG4gKiAgIHVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ0NvLUhvc3QgTW9kYWwgaXMgbm93OicsIGlzVmlzaWJsZSA/ICdWaXNpYmxlJyA6ICdIaWRkZW4nKTtcbiAqICAgfSxcbiAqICAgaXNDb0hvc3RNb2RhbFZpc2libGU6IGZhbHNlLFxuICogfTtcbiAqXG4gKiBjb25zdCBsYXVuY2hDb0hvc3RTZXJ2aWNlID0gbmV3IGxhdW5jaENvSG9zdCgpO1xuICogbGF1bmNoQ29Ib3N0U2VydmljZS5sYXVuY2hDb0hvc3Qob3B0aW9ucyk7XG4gKiBgYGBcbiAqL1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBsYXVuY2hDb0hvc3Qge1xuICAvKipcbiAgICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgY28taG9zdCBtb2RhbC5cbiAgICpcbiAgICogQHBhcmFtIHVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBjby1ob3N0IG1vZGFsLlxuICAgKiBAcGFyYW0gaXNDb0hvc3RNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvLWhvc3QgbW9kYWwuXG4gICAqL1xuXG4gIGxhdW5jaENvSG9zdCh7IHVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlLCBpc0NvSG9zdE1vZGFsVmlzaWJsZSB9OiBMYXVuY2hDb0hvc3RPcHRpb25zKTogdm9pZCB7XG4gICAgdXBkYXRlSXNDb0hvc3RNb2RhbFZpc2libGUoIWlzQ29Ib3N0TW9kYWxWaXNpYmxlKTtcbiAgfVxufVxuIl19
@@ -1,104 +0,0 @@
1
- // This method is used to modify the co-host settings in the chat room.
2
- import { Injectable } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Modifies the co-host settings for a given room.
6
- *
7
- * This method allows you to update the co-host for a chat room, set their responsibilities,
8
- * and emit the relevant changes to the server. It also handles demo mode restrictions.
9
- *
10
- * @param {ModifyCoHostSettingsOptions} options - The options for modifying co-host settings.
11
- * @param {string} options.roomName - The name of the room.
12
- * @param {Function} options.showAlert - Function to show an alert message.
13
- * @param {string} options.selectedParticipant - The participant selected to be co-host.
14
- * @param {string} options.coHost - The current co-host.
15
- * @param {Array<CoHostResponsibility>} options.coHostResponsibility - The responsibilities assigned to the co-host.
16
- * @param {Function} options.updateIsCoHostModalVisible - Function to update the visibility of the co-host modal.
17
- * @param {Function} options.updateCoHostResponsibility - Function to update the co-host responsibility.
18
- * @param {Function} options.updateCoHost - Function to update the co-host.
19
- * @param {Socket} options.socket - The socket instance for emitting events.
20
- *
21
- * @returns {Promise<void>} A promise that resolves when the co-host settings have been modified.
22
- *
23
- * @remarks
24
- * - If the room is in demo mode (room name starts with "d"), co-host cannot be added and an alert is shown.
25
- * - If a valid participant is selected, they are set as the new co-host.
26
- * - The co-host responsibility is updated.
27
- * - A socket event is emitted to update the co-host information.
28
- * - The co-host modal is closed after updating the settings.
29
- *
30
- * @example
31
- * ```typescript
32
- * const options: ModifyCoHostSettingsOptions = {
33
- * roomName: 'mainRoom',
34
- * showAlert: (alert) => console.log(alert.message),
35
- * selectedParticipant: 'JohnDoe',
36
- * coHost: 'No coHost',
37
- * coHostResponsibility: ['manage participants', 'start/stop recording'],
38
- * updateIsCoHostModalVisible: (isVisible) => console.log('Co-host modal visible:', isVisible),
39
- * updateCoHostResponsibility: (responsibility) => console.log('Updated co-host responsibility:', responsibility),
40
- * updateCoHost: (coHost) => console.log('New co-host:', coHost),
41
- * socket: socketInstance,
42
- * };
43
- *
44
- * const modifyCoHostService = new ModifyCoHostSettings();
45
- * await modifyCoHostService.modifyCoHostSettings(options);
46
- * ```
47
- */
48
- export class ModifyCoHostSettings {
49
- /**
50
- * Modifies the co-host settings for a given room.
51
- *
52
- * @param {Object} options - The options for modifying co-host settings.
53
- * @param {string} options.roomName - The name of the room.
54
- * @param {Function} options.showAlert - Function to show an alert message.
55
- * @param {string} options.selectedParticipant - The participant selected to be co-host.
56
- * @param {string} options.coHost - The current co-host.
57
- * @param {string} options.coHostResponsibility - The responsibility assigned to the co-host.
58
- * @param {Function} options.updateIsCoHostModalVisible - Function to update the visibility of the co-host modal.
59
- * @param {Function} options.updateCoHostResponsibility - Function to update the co-host responsibility.
60
- * @param {Function} options.updateCoHost - Function to update the co-host.
61
- * @param {Object} options.socket - The socket instance for emitting events.
62
- * @returns {Promise<void>} A promise that resolves when the co-host settings have been modified.
63
- *
64
- * @remarks
65
- * - If the room is in demo mode (room name starts with "d"), co-host cannot be added and an alert is shown.
66
- * - If a valid participant is selected, they are set as the new co-host.
67
- * - The co-host responsibility is updated.
68
- * - A socket event is emitted to update the co-host information.
69
- * - The co-host modal is closed after updating the settings.
70
- */
71
- async modifyCoHostSettings({ roomName, showAlert, selectedParticipant, coHost, coHostResponsibility, updateIsCoHostModalVisible, updateCoHostResponsibility, updateCoHost, socket, }) {
72
- // Check if the chat room is in demo mode
73
- if (roomName.toLowerCase().startsWith('d')) {
74
- showAlert?.({
75
- message: 'You cannot add co-host in demo mode.',
76
- type: 'danger',
77
- duration: 3000,
78
- });
79
- return;
80
- }
81
- let newCoHost = coHost;
82
- if (coHost != 'No coHost' ||
83
- (selectedParticipant && selectedParticipant != 'Select a participant')) {
84
- if (selectedParticipant && selectedParticipant != 'Select a participant') {
85
- newCoHost = selectedParticipant;
86
- updateCoHost(newCoHost);
87
- }
88
- updateCoHostResponsibility(coHostResponsibility);
89
- // Emit a socket event to update co-host information
90
- socket.emit('updateCoHost', { roomName, coHost: newCoHost, coHostResponsibility });
91
- }
92
- // Close the co-host modal
93
- updateIsCoHostModalVisible(false);
94
- }
95
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyCoHostSettings, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
96
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyCoHostSettings, providedIn: 'root' });
97
- }
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyCoHostSettings, decorators: [{
99
- type: Injectable,
100
- args: [{
101
- providedIn: 'root',
102
- }]
103
- }] });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kaWZ5LWNvLWhvc3Qtc2V0dGluZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL2NvLWhvc3QtbWV0aG9kcy9tb2RpZnktY28taG9zdC1zZXR0aW5ncy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVFQUF1RTtBQUV2RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQW1CM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ0c7QUFNSCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FxQkc7SUFDSCxLQUFLLENBQUMsb0JBQW9CLENBQUMsRUFDekIsUUFBUSxFQUNSLFNBQVMsRUFDVCxtQkFBbUIsRUFDbkIsTUFBTSxFQUNOLG9CQUFvQixFQUNwQiwwQkFBMEIsRUFDMUIsMEJBQTBCLEVBQzFCLFlBQVksRUFDWixNQUFNLEdBQ3NCO1FBQzVCLHlDQUF5QztRQUN6QyxJQUFJLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMzQyxTQUFTLEVBQUUsQ0FBQztnQkFDVixPQUFPLEVBQUUsc0NBQXNDO2dCQUMvQyxJQUFJLEVBQUUsUUFBUTtnQkFDZCxRQUFRLEVBQUUsSUFBSTthQUNmLENBQUMsQ0FBQztZQUVILE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxTQUFTLEdBQUcsTUFBTSxDQUFDO1FBRXZCLElBQ0UsTUFBTSxJQUFJLFdBQVc7WUFDckIsQ0FBQyxtQkFBbUIsSUFBSSxtQkFBbUIsSUFBSSxzQkFBc0IsQ0FBQyxFQUN0RSxDQUFDO1lBQ0QsSUFBSSxtQkFBbUIsSUFBSSxtQkFBbUIsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO2dCQUN6RSxTQUFTLEdBQUcsbUJBQW1CLENBQUM7Z0JBQ2hDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQixDQUFDO1lBRUQsMEJBQTBCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUVqRCxvREFBb0Q7WUFDcEQsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFDckYsQ0FBQztRQUVELDBCQUEwQjtRQUMxQiwwQkFBMEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO3VHQWhFVSxvQkFBb0I7MkdBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBtZXRob2QgaXMgdXNlZCB0byBtb2RpZnkgdGhlIGNvLWhvc3Qgc2V0dGluZ3MgaW4gdGhlIGNoYXQgcm9vbS5cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2hvd0FsZXJ0LCBDb0hvc3RSZXNwb25zaWJpbGl0eSB9IGZyb20gJy4uLy4uL0B0eXBlcy90eXBlcyc7XG5pbXBvcnQgeyBTb2NrZXQgfSBmcm9tICdzb2NrZXQuaW8tY2xpZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlDb0hvc3RTZXR0aW5nc09wdGlvbnMge1xuICByb29tTmFtZTogc3RyaW5nO1xuICBzaG93QWxlcnQ/OiBTaG93QWxlcnQ7XG4gIHNlbGVjdGVkUGFydGljaXBhbnQ6IHN0cmluZztcbiAgY29Ib3N0OiBzdHJpbmc7XG4gIGNvSG9zdFJlc3BvbnNpYmlsaXR5OiBDb0hvc3RSZXNwb25zaWJpbGl0eVtdO1xuICB1cGRhdGVJc0NvSG9zdE1vZGFsVmlzaWJsZTogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbiAgdXBkYXRlQ29Ib3N0UmVzcG9uc2liaWxpdHk6IChjb0hvc3RSZXNwb25zaWJpbGl0eTogQ29Ib3N0UmVzcG9uc2liaWxpdHlbXSkgPT4gdm9pZDtcbiAgdXBkYXRlQ29Ib3N0OiAoY29Ib3N0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNvY2tldDogU29ja2V0O1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBNb2RpZnlDb0hvc3RTZXR0aW5nc1R5cGUgPSAob3B0aW9uczogTW9kaWZ5Q29Ib3N0U2V0dGluZ3NPcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4vKipcbiAqIE1vZGlmaWVzIHRoZSBjby1ob3N0IHNldHRpbmdzIGZvciBhIGdpdmVuIHJvb20uXG4gKlxuICogVGhpcyBtZXRob2QgYWxsb3dzIHlvdSB0byB1cGRhdGUgdGhlIGNvLWhvc3QgZm9yIGEgY2hhdCByb29tLCBzZXQgdGhlaXIgcmVzcG9uc2liaWxpdGllcyxcbiAqIGFuZCBlbWl0IHRoZSByZWxldmFudCBjaGFuZ2VzIHRvIHRoZSBzZXJ2ZXIuIEl0IGFsc28gaGFuZGxlcyBkZW1vIG1vZGUgcmVzdHJpY3Rpb25zLlxuICpcbiAqIEBwYXJhbSB7TW9kaWZ5Q29Ib3N0U2V0dGluZ3NPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIG1vZGlmeWluZyBjby1ob3N0IHNldHRpbmdzLlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucm9vbU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgcm9vbS5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMuc2hvd0FsZXJ0IC0gRnVuY3Rpb24gdG8gc2hvdyBhbiBhbGVydCBtZXNzYWdlLlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuc2VsZWN0ZWRQYXJ0aWNpcGFudCAtIFRoZSBwYXJ0aWNpcGFudCBzZWxlY3RlZCB0byBiZSBjby1ob3N0LlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuY29Ib3N0IC0gVGhlIGN1cnJlbnQgY28taG9zdC5cbiAqIEBwYXJhbSB7QXJyYXk8Q29Ib3N0UmVzcG9uc2liaWxpdHk+fSBvcHRpb25zLmNvSG9zdFJlc3BvbnNpYmlsaXR5IC0gVGhlIHJlc3BvbnNpYmlsaXRpZXMgYXNzaWduZWQgdG8gdGhlIGNvLWhvc3QuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBjby1ob3N0IG1vZGFsLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy51cGRhdGVDb0hvc3RSZXNwb25zaWJpbGl0eSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgY28taG9zdCByZXNwb25zaWJpbGl0eS5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlQ29Ib3N0IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBjby1ob3N0LlxuICogQHBhcmFtIHtTb2NrZXR9IG9wdGlvbnMuc29ja2V0IC0gVGhlIHNvY2tldCBpbnN0YW5jZSBmb3IgZW1pdHRpbmcgZXZlbnRzLlxuICpcbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjby1ob3N0IHNldHRpbmdzIGhhdmUgYmVlbiBtb2RpZmllZC5cbiAqXG4gKiBAcmVtYXJrc1xuICogLSBJZiB0aGUgcm9vbSBpcyBpbiBkZW1vIG1vZGUgKHJvb20gbmFtZSBzdGFydHMgd2l0aCBcImRcIiksIGNvLWhvc3QgY2Fubm90IGJlIGFkZGVkIGFuZCBhbiBhbGVydCBpcyBzaG93bi5cbiAqIC0gSWYgYSB2YWxpZCBwYXJ0aWNpcGFudCBpcyBzZWxlY3RlZCwgdGhleSBhcmUgc2V0IGFzIHRoZSBuZXcgY28taG9zdC5cbiAqIC0gVGhlIGNvLWhvc3QgcmVzcG9uc2liaWxpdHkgaXMgdXBkYXRlZC5cbiAqIC0gQSBzb2NrZXQgZXZlbnQgaXMgZW1pdHRlZCB0byB1cGRhdGUgdGhlIGNvLWhvc3QgaW5mb3JtYXRpb24uXG4gKiAtIFRoZSBjby1ob3N0IG1vZGFsIGlzIGNsb3NlZCBhZnRlciB1cGRhdGluZyB0aGUgc2V0dGluZ3MuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9wdGlvbnM6IE1vZGlmeUNvSG9zdFNldHRpbmdzT3B0aW9ucyA9IHtcbiAqICAgcm9vbU5hbWU6ICdtYWluUm9vbScsXG4gKiAgIHNob3dBbGVydDogKGFsZXJ0KSA9PiBjb25zb2xlLmxvZyhhbGVydC5tZXNzYWdlKSxcbiAqICAgc2VsZWN0ZWRQYXJ0aWNpcGFudDogJ0pvaG5Eb2UnLFxuICogICBjb0hvc3Q6ICdObyBjb0hvc3QnLFxuICogICBjb0hvc3RSZXNwb25zaWJpbGl0eTogWydtYW5hZ2UgcGFydGljaXBhbnRzJywgJ3N0YXJ0L3N0b3AgcmVjb3JkaW5nJ10sXG4gKiAgIHVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiBjb25zb2xlLmxvZygnQ28taG9zdCBtb2RhbCB2aXNpYmxlOicsIGlzVmlzaWJsZSksXG4gKiAgIHVwZGF0ZUNvSG9zdFJlc3BvbnNpYmlsaXR5OiAocmVzcG9uc2liaWxpdHkpID0+IGNvbnNvbGUubG9nKCdVcGRhdGVkIGNvLWhvc3QgcmVzcG9uc2liaWxpdHk6JywgcmVzcG9uc2liaWxpdHkpLFxuICogICB1cGRhdGVDb0hvc3Q6IChjb0hvc3QpID0+IGNvbnNvbGUubG9nKCdOZXcgY28taG9zdDonLCBjb0hvc3QpLFxuICogICBzb2NrZXQ6IHNvY2tldEluc3RhbmNlLFxuICogfTtcbiAqXG4gKiBjb25zdCBtb2RpZnlDb0hvc3RTZXJ2aWNlID0gbmV3IE1vZGlmeUNvSG9zdFNldHRpbmdzKCk7XG4gKiBhd2FpdCBtb2RpZnlDb0hvc3RTZXJ2aWNlLm1vZGlmeUNvSG9zdFNldHRpbmdzKG9wdGlvbnMpO1xuICogYGBgXG4gKi9cblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kaWZ5Q29Ib3N0U2V0dGluZ3Mge1xuICAvKipcbiAgICogTW9kaWZpZXMgdGhlIGNvLWhvc3Qgc2V0dGluZ3MgZm9yIGEgZ2l2ZW4gcm9vbS5cbiAgICpcbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgbW9kaWZ5aW5nIGNvLWhvc3Qgc2V0dGluZ3MuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnJvb21OYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHJvb20uXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMuc2hvd0FsZXJ0IC0gRnVuY3Rpb24gdG8gc2hvdyBhbiBhbGVydCBtZXNzYWdlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5zZWxlY3RlZFBhcnRpY2lwYW50IC0gVGhlIHBhcnRpY2lwYW50IHNlbGVjdGVkIHRvIGJlIGNvLWhvc3QuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmNvSG9zdCAtIFRoZSBjdXJyZW50IGNvLWhvc3QuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmNvSG9zdFJlc3BvbnNpYmlsaXR5IC0gVGhlIHJlc3BvbnNpYmlsaXR5IGFzc2lnbmVkIHRvIHRoZSBjby1ob3N0LlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBjby1ob3N0IG1vZGFsLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUNvSG9zdFJlc3BvbnNpYmlsaXR5IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBjby1ob3N0IHJlc3BvbnNpYmlsaXR5LlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUNvSG9zdCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgY28taG9zdC5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMuc29ja2V0IC0gVGhlIHNvY2tldCBpbnN0YW5jZSBmb3IgZW1pdHRpbmcgZXZlbnRzLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY28taG9zdCBzZXR0aW5ncyBoYXZlIGJlZW4gbW9kaWZpZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIC0gSWYgdGhlIHJvb20gaXMgaW4gZGVtbyBtb2RlIChyb29tIG5hbWUgc3RhcnRzIHdpdGggXCJkXCIpLCBjby1ob3N0IGNhbm5vdCBiZSBhZGRlZCBhbmQgYW4gYWxlcnQgaXMgc2hvd24uXG4gICAqIC0gSWYgYSB2YWxpZCBwYXJ0aWNpcGFudCBpcyBzZWxlY3RlZCwgdGhleSBhcmUgc2V0IGFzIHRoZSBuZXcgY28taG9zdC5cbiAgICogLSBUaGUgY28taG9zdCByZXNwb25zaWJpbGl0eSBpcyB1cGRhdGVkLlxuICAgKiAtIEEgc29ja2V0IGV2ZW50IGlzIGVtaXR0ZWQgdG8gdXBkYXRlIHRoZSBjby1ob3N0IGluZm9ybWF0aW9uLlxuICAgKiAtIFRoZSBjby1ob3N0IG1vZGFsIGlzIGNsb3NlZCBhZnRlciB1cGRhdGluZyB0aGUgc2V0dGluZ3MuXG4gICAqL1xuICBhc3luYyBtb2RpZnlDb0hvc3RTZXR0aW5ncyh7XG4gICAgcm9vbU5hbWUsXG4gICAgc2hvd0FsZXJ0LFxuICAgIHNlbGVjdGVkUGFydGljaXBhbnQsXG4gICAgY29Ib3N0LFxuICAgIGNvSG9zdFJlc3BvbnNpYmlsaXR5LFxuICAgIHVwZGF0ZUlzQ29Ib3N0TW9kYWxWaXNpYmxlLFxuICAgIHVwZGF0ZUNvSG9zdFJlc3BvbnNpYmlsaXR5LFxuICAgIHVwZGF0ZUNvSG9zdCxcbiAgICBzb2NrZXQsXG4gIH06IE1vZGlmeUNvSG9zdFNldHRpbmdzT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIENoZWNrIGlmIHRoZSBjaGF0IHJvb20gaXMgaW4gZGVtbyBtb2RlXG4gICAgaWYgKHJvb21OYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCgnZCcpKSB7XG4gICAgICBzaG93QWxlcnQ/Lih7XG4gICAgICAgIG1lc3NhZ2U6ICdZb3UgY2Fubm90IGFkZCBjby1ob3N0IGluIGRlbW8gbW9kZS4nLFxuICAgICAgICB0eXBlOiAnZGFuZ2VyJyxcbiAgICAgICAgZHVyYXRpb246IDMwMDAsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBuZXdDb0hvc3QgPSBjb0hvc3Q7XG5cbiAgICBpZiAoXG4gICAgICBjb0hvc3QgIT0gJ05vIGNvSG9zdCcgfHxcbiAgICAgIChzZWxlY3RlZFBhcnRpY2lwYW50ICYmIHNlbGVjdGVkUGFydGljaXBhbnQgIT0gJ1NlbGVjdCBhIHBhcnRpY2lwYW50JylcbiAgICApIHtcbiAgICAgIGlmIChzZWxlY3RlZFBhcnRpY2lwYW50ICYmIHNlbGVjdGVkUGFydGljaXBhbnQgIT0gJ1NlbGVjdCBhIHBhcnRpY2lwYW50Jykge1xuICAgICAgICBuZXdDb0hvc3QgPSBzZWxlY3RlZFBhcnRpY2lwYW50O1xuICAgICAgICB1cGRhdGVDb0hvc3QobmV3Q29Ib3N0KTtcbiAgICAgIH1cblxuICAgICAgdXBkYXRlQ29Ib3N0UmVzcG9uc2liaWxpdHkoY29Ib3N0UmVzcG9uc2liaWxpdHkpO1xuXG4gICAgICAvLyBFbWl0IGEgc29ja2V0IGV2ZW50IHRvIHVwZGF0ZSBjby1ob3N0IGluZm9ybWF0aW9uXG4gICAgICBzb2NrZXQuZW1pdCgndXBkYXRlQ29Ib3N0JywgeyByb29tTmFtZSwgY29Ib3N0OiBuZXdDb0hvc3QsIGNvSG9zdFJlc3BvbnNpYmlsaXR5IH0pO1xuICAgIH1cblxuICAgIC8vIENsb3NlIHRoZSBjby1ob3N0IG1vZGFsXG4gICAgdXBkYXRlSXNDb0hvc3RNb2RhbFZpc2libGUoZmFsc2UpO1xuICB9XG59XG4iXX0=
@@ -1,46 +0,0 @@
1
- // display-settings.service.ts
2
- import { Injectable } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Toggles the visibility of the display settings modal.
6
- *
7
- * This method allows you to show or hide the display settings modal by updating its visibility state.
8
- *
9
- * @param {LaunchDisplaySettingsOptions} options - The options for launching the display settings.
10
- * @param {Function} options.updateIsDisplaySettingsModalVisible - Function to update the visibility state of the display settings modal.
11
- * @param {boolean} options.isDisplaySettingsModalVisible - Current visibility state of the display settings modal.
12
- *
13
- * @returns {void}
14
- *
15
- * @example
16
- * ```typescript
17
- * const options: LaunchDisplaySettingsOptions = {
18
- * updateIsDisplaySettingsModalVisible: (isVisible) => console.log('Display settings modal is now:', isVisible),
19
- * isDisplaySettingsModalVisible: false,
20
- * };
21
- *
22
- * const launchDisplaySettingsService = new LaunchDisplaySettings();
23
- * launchDisplaySettingsService.launchDisplaySettings(options);
24
- * ```
25
- */
26
- export class LaunchDisplaySettings {
27
- /**
28
- * Toggles the visibility of the display settings modal.
29
- *
30
- * @param updateIsDisplaySettingsModalVisible - Function to update the visibility state of the display settings modal.
31
- * @param isDisplaySettingsModalVisible - Current visibility state of the display settings modal.
32
- */
33
- launchDisplaySettings({ updateIsDisplaySettingsModalVisible, isDisplaySettingsModalVisible, }) {
34
- // Toggle the visibility of the display settings modal.
35
- updateIsDisplaySettingsModalVisible(!isDisplaySettingsModalVisible);
36
- }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchDisplaySettings, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchDisplaySettings, providedIn: 'root' });
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchDisplaySettings, decorators: [{
41
- type: Injectable,
42
- args: [{
43
- providedIn: 'root',
44
- }]
45
- }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWRpc3BsYXktc2V0dGluZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL2Rpc3BsYXktc2V0dGluZ3MtbWV0aG9kcy9sYXVuY2gtZGlzcGxheS1zZXR0aW5ncy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhCQUE4QjtBQUM5QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVUzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQzs7Ozs7T0FLRztJQUVILHFCQUFxQixDQUFDLEVBQ3BCLG1DQUFtQyxFQUNuQyw2QkFBNkIsR0FDQTtRQUM3Qix1REFBdUQ7UUFDdkQsbUNBQW1DLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7dUdBZFUscUJBQXFCOzJHQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGRpc3BsYXktc2V0dGluZ3Muc2VydmljZS50c1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExhdW5jaERpc3BsYXlTZXR0aW5nc09wdGlvbnMge1xuICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZTogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbiAgaXNEaXNwbGF5U2V0dGluZ3NNb2RhbFZpc2libGU6IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIExhdW5jaERpc3BsYXlTZXR0aW5nc1R5cGUgPSAob3B0aW9uczogTGF1bmNoRGlzcGxheVNldHRpbmdzT3B0aW9ucykgPT4gdm9pZDtcblxuLyoqXG4gKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNwbGF5IHNldHRpbmdzIG1vZGFsLlxuICpcbiAqIFRoaXMgbWV0aG9kIGFsbG93cyB5b3UgdG8gc2hvdyBvciBoaWRlIHRoZSBkaXNwbGF5IHNldHRpbmdzIG1vZGFsIGJ5IHVwZGF0aW5nIGl0cyB2aXNpYmlsaXR5IHN0YXRlLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoRGlzcGxheVNldHRpbmdzT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBsYXVuY2hpbmcgdGhlIGRpc3BsYXkgc2V0dGluZ3MuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzRGlzcGxheVNldHRpbmdzTW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBkaXNwbGF5IHNldHRpbmdzIG1vZGFsLlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmlzRGlzcGxheVNldHRpbmdzTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBkaXNwbGF5IHNldHRpbmdzIG1vZGFsLlxuICpcbiAqIEByZXR1cm5zIHt2b2lkfVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBvcHRpb25zOiBMYXVuY2hEaXNwbGF5U2V0dGluZ3NPcHRpb25zID0ge1xuICogICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZTogKGlzVmlzaWJsZSkgPT4gY29uc29sZS5sb2coJ0Rpc3BsYXkgc2V0dGluZ3MgbW9kYWwgaXMgbm93OicsIGlzVmlzaWJsZSksXG4gKiAgIGlzRGlzcGxheVNldHRpbmdzTW9kYWxWaXNpYmxlOiBmYWxzZSxcbiAqIH07XG4gKlxuICogY29uc3QgbGF1bmNoRGlzcGxheVNldHRpbmdzU2VydmljZSA9IG5ldyBMYXVuY2hEaXNwbGF5U2V0dGluZ3MoKTtcbiAqIGxhdW5jaERpc3BsYXlTZXR0aW5nc1NlcnZpY2UubGF1bmNoRGlzcGxheVNldHRpbmdzKG9wdGlvbnMpO1xuICogYGBgXG4gKi9cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaERpc3BsYXlTZXR0aW5ncyB7XG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNwbGF5IHNldHRpbmdzIG1vZGFsLlxuICAgKlxuICAgKiBAcGFyYW0gdXBkYXRlSXNEaXNwbGF5U2V0dGluZ3NNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGRpc3BsYXkgc2V0dGluZ3MgbW9kYWwuXG4gICAqIEBwYXJhbSBpc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZSAtIEN1cnJlbnQgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgZGlzcGxheSBzZXR0aW5ncyBtb2RhbC5cbiAgICovXG5cbiAgbGF1bmNoRGlzcGxheVNldHRpbmdzKHtcbiAgICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZSxcbiAgICBpc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZSxcbiAgfTogTGF1bmNoRGlzcGxheVNldHRpbmdzT3B0aW9ucyk6IHZvaWQge1xuICAgIC8vIFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZGlzcGxheSBzZXR0aW5ncyBtb2RhbC5cbiAgICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZSghaXNEaXNwbGF5U2V0dGluZ3NNb2RhbFZpc2libGUpO1xuICB9XG59XG4iXX0=