mediasfu-angular 1.0.1 → 1.0.2

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 (459) hide show
  1. package/README.md +194 -192
  2. package/dist/README.md +194 -192
  3. package/dist/esm2022/lib/components/background-components/background-modal/background-modal.component.mjs +37 -1
  4. package/dist/esm2022/lib/components/breakout-components/breakout-rooms-modal.component.mjs +51 -1
  5. package/dist/esm2022/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.mjs +49 -1
  6. package/dist/esm2022/lib/components/co-host-components/co-host-modal/co-host-modal.component.mjs +1 -2
  7. package/dist/esm2022/lib/components/display-components/alert-component/alert.component.component.mjs +25 -19
  8. package/dist/esm2022/lib/components/display-components/audio-card/audio-card.component.mjs +60 -1
  9. package/dist/esm2022/lib/components/display-components/audio-grid/audio-grid.component.mjs +21 -1
  10. package/dist/esm2022/lib/components/display-components/card-video-display/card-video-display.component.mjs +36 -1
  11. package/dist/esm2022/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.mjs +39 -1
  12. package/dist/esm2022/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.mjs +25 -41
  13. package/dist/esm2022/lib/components/display-components/control-widgets/menu-participants-widget.component.mjs +22 -1
  14. package/dist/esm2022/lib/components/display-components/control-widgets/menu-record-widget.component.mjs +23 -1
  15. package/dist/esm2022/lib/components/display-components/control-widgets/menu-widget.component.mjs +24 -1
  16. package/dist/esm2022/lib/components/display-components/control-widgets/message-widget.component.mjs +24 -1
  17. package/dist/esm2022/lib/components/display-components/control-widgets/record-timer-widget.component.mjs +16 -1
  18. package/dist/esm2022/lib/components/display-components/control-widgets/screenshare-widget.component.mjs +28 -1
  19. package/dist/esm2022/lib/components/display-components/flexible-grid/flexible-grid.component.mjs +28 -19
  20. package/dist/esm2022/lib/components/display-components/flexible-video/flexible-video.component.mjs +31 -46
  21. package/dist/esm2022/lib/components/display-components/loading-modal/loading-modal.component.mjs +20 -18
  22. package/dist/esm2022/lib/components/display-components/main-aspect-component/main-aspect-component.component.mjs +33 -25
  23. package/dist/esm2022/lib/components/display-components/main-container-component/main-container-component.component.mjs +29 -17
  24. package/dist/esm2022/lib/components/display-components/main-grid-component/main-grid-component.component.mjs +29 -15
  25. package/dist/esm2022/lib/components/display-components/main-screen-component/main-screen-component.component.mjs +44 -23
  26. package/dist/esm2022/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.mjs +26 -31
  27. package/dist/esm2022/lib/components/display-components/mini-audio/mini-audio.component.mjs +52 -59
  28. package/dist/esm2022/lib/components/display-components/mini-card/mini-card.component.mjs +20 -24
  29. package/dist/esm2022/lib/components/display-components/mini-card-audio/mini-card-audio.component.mjs +40 -40
  30. package/dist/esm2022/lib/components/display-components/other-grid-component/other-grid-component.component.mjs +29 -14
  31. package/dist/esm2022/lib/components/display-components/pagination/pagination.component.mjs +30 -24
  32. package/dist/esm2022/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.mjs +19 -25
  33. package/dist/esm2022/lib/components/display-components/video-card/video-card.component.mjs +63 -1
  34. package/dist/esm2022/lib/components/display-settings-components/display-settings-modal.component.mjs +29 -18
  35. package/dist/esm2022/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.mjs +48 -39
  36. package/dist/esm2022/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.mjs +36 -23
  37. package/dist/esm2022/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.mjs +36 -25
  38. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-broadcast.component.mjs +50 -1
  39. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-chat.component.mjs +50 -1
  40. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-conference.component.mjs +48 -1
  41. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-generic.component.mjs +48 -1
  42. package/dist/esm2022/lib/components/mediasfu-components/mediasfu-webinar.component.mjs +46 -1
  43. package/dist/esm2022/lib/components/menu-components/custom-buttons/custom-buttons.component.mjs +50 -52
  44. package/dist/esm2022/lib/components/menu-components/meeting-id-component/meeting-id-component.component.mjs +7 -2
  45. package/dist/esm2022/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.mjs +6 -1
  46. package/dist/esm2022/lib/components/menu-components/menu-modal/menu-modal.component.mjs +22 -29
  47. package/dist/esm2022/lib/components/menu-components/share-buttons-component/share-buttons-component.component.mjs +16 -14
  48. package/dist/esm2022/lib/components/message-components/message-panel/message-panel.component.mjs +25 -1
  49. package/dist/esm2022/lib/components/message-components/messages-modal/messages-modal.component.mjs +35 -1
  50. package/dist/esm2022/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.mjs +17 -34
  51. package/dist/esm2022/lib/components/misc-components/pre-join-page/pre-join-page.component.mjs +9 -1
  52. package/dist/esm2022/lib/components/misc-components/share-event-modal/share-event-modal.component.mjs +15 -1
  53. package/dist/esm2022/lib/components/misc-components/welcome-page/welcome-page.component.mjs +16 -1
  54. package/dist/esm2022/lib/components/participants-components/participant-list/participant-list.component.mjs +20 -1
  55. package/dist/esm2022/lib/components/participants-components/participant-list-item/participant-list-item.component.mjs +20 -1
  56. package/dist/esm2022/lib/components/participants-components/participant-list-others/participant-list-others.component.mjs +18 -1
  57. package/dist/esm2022/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.mjs +18 -1
  58. package/dist/esm2022/lib/components/participants-components/participants-modal/participants-modal.component.mjs +25 -1
  59. package/dist/esm2022/lib/components/polls-components/poll-modal/poll-modal.component.mjs +28 -1
  60. package/dist/esm2022/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.mjs +16 -1
  61. package/dist/esm2022/lib/components/recording-components/recording-modal/recording-modal.component.mjs +13 -1
  62. package/dist/esm2022/lib/components/recording-components/standard-panel-component/standard-panel-component.component.mjs +6 -1
  63. package/dist/esm2022/lib/components/requests-components/render-request-component/render-request-component.component.mjs +23 -1
  64. package/dist/esm2022/lib/components/requests-components/requests-modal/requests-modal.component.mjs +18 -1
  65. package/dist/esm2022/lib/components/screenboard-components/screenboard/screenboard.component.mjs +11 -1
  66. package/dist/esm2022/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.mjs +12 -1
  67. package/dist/esm2022/lib/components/waiting-components/waiting-room-modal.component.mjs +60 -1
  68. package/dist/esm2022/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.mjs +22 -1
  69. package/dist/esm2022/lib/components/whiteboard-components/whiteboard/whiteboard.component.mjs +50 -1
  70. package/dist/esm2022/lib/consumers/add-videos-grid.service.mjs +50 -1
  71. package/dist/esm2022/lib/consumers/auto-adjust.service.mjs +27 -1
  72. package/dist/esm2022/lib/consumers/calculate-rows-and-columns.service.mjs +19 -1
  73. package/dist/esm2022/lib/consumers/change-vids.service.mjs +132 -67
  74. package/dist/esm2022/lib/consumers/check-grid.service.mjs +33 -19
  75. package/dist/esm2022/lib/consumers/check-permission.service.mjs +26 -1
  76. package/dist/esm2022/lib/consumers/check-screen-share.service.mjs +36 -1
  77. package/dist/esm2022/lib/consumers/close-and-resize.service.mjs +103 -1
  78. package/dist/esm2022/lib/consumers/compare-active-names.service.mjs +32 -1
  79. package/dist/esm2022/lib/consumers/compare-screen-states.service.mjs +36 -1
  80. package/dist/esm2022/lib/consumers/connect-ips.service.mjs +43 -1
  81. package/dist/esm2022/lib/consumers/connect-recv-transport.service.mjs +34 -1
  82. package/dist/esm2022/lib/consumers/connect-send-transport-audio.service.mjs +39 -1
  83. package/dist/esm2022/lib/consumers/connect-send-transport-screen.service.mjs +41 -1
  84. package/dist/esm2022/lib/consumers/connect-send-transport-video.service.mjs +45 -1
  85. package/dist/esm2022/lib/consumers/connect-send-transport.service.mjs +55 -1
  86. package/dist/esm2022/lib/consumers/consumer-resume.service.mjs +37 -1
  87. package/dist/esm2022/lib/consumers/control-media.service.mjs +46 -1
  88. package/dist/esm2022/lib/consumers/create-send-transport.service.mjs +47 -1
  89. package/dist/esm2022/lib/consumers/disconnect-send-transport-audio.service.mjs +51 -1
  90. package/dist/esm2022/lib/consumers/disconnect-send-transport-screen.service.mjs +40 -1
  91. package/dist/esm2022/lib/consumers/disconnect-send-transport-video.service.mjs +46 -1
  92. package/dist/esm2022/lib/consumers/disp-streams.service.mjs +93 -1
  93. package/dist/esm2022/lib/consumers/generate-page-content.service.mjs +48 -1
  94. package/dist/esm2022/lib/consumers/get-estimate.service.mjs +51 -1
  95. package/dist/esm2022/lib/consumers/get-piped-producers-alt.service.mjs +34 -1
  96. package/dist/esm2022/lib/consumers/get-producers-piped.service.mjs +34 -1
  97. package/dist/esm2022/lib/consumers/get-videos.service.mjs +34 -1
  98. package/dist/esm2022/lib/consumers/mix-streams.service.mjs +23 -1
  99. package/dist/esm2022/lib/consumers/on-screen-changes.service.mjs +41 -1
  100. package/dist/esm2022/lib/consumers/prepopulate-user-media.service.mjs +100 -1
  101. package/dist/esm2022/lib/consumers/process-consumer-transports-audio.service.mjs +30 -1
  102. package/dist/esm2022/lib/consumers/process-consumer-transports.service.mjs +38 -1
  103. package/dist/esm2022/lib/consumers/re-port.service.mjs +49 -1
  104. package/dist/esm2022/lib/consumers/re-update-inter.service.mjs +83 -1
  105. package/dist/esm2022/lib/consumers/readjust.service.mjs +51 -1
  106. package/dist/esm2022/lib/consumers/receive-all-piped-transports.service.mjs +32 -1
  107. package/dist/esm2022/lib/consumers/receive-room-messages.service.mjs +28 -1
  108. package/dist/esm2022/lib/consumers/reorder-streams.service.mjs +59 -1
  109. package/dist/esm2022/lib/consumers/request-screen-share.service.mjs +35 -1
  110. package/dist/esm2022/lib/consumers/resume-pause-audio-streams.service.mjs +52 -1
  111. package/dist/esm2022/lib/consumers/resume-pause-streams.service.mjs +34 -1
  112. package/dist/esm2022/lib/consumers/resume-send-transport-audio.service.mjs +37 -1
  113. package/dist/esm2022/lib/consumers/signal-new-consumer-transport.service.mjs +38 -38
  114. package/dist/esm2022/lib/consumers/socket-receive-methods/join-consume-room.service.mjs +34 -1
  115. package/dist/esm2022/lib/consumers/socket-receive-methods/new-pipe-producer.service.mjs +40 -1
  116. package/dist/esm2022/lib/consumers/socket-receive-methods/producer-closed.service.mjs +28 -1
  117. package/dist/esm2022/lib/consumers/start-share-screen.service.mjs +41 -1
  118. package/dist/esm2022/lib/consumers/stop-share-screen.service.mjs +56 -1
  119. package/dist/esm2022/lib/consumers/stream-success-audio-switch.service.mjs +54 -1
  120. package/dist/esm2022/lib/consumers/stream-success-audio.service.mjs +62 -1
  121. package/dist/esm2022/lib/consumers/stream-success-screen.service.mjs +51 -1
  122. package/dist/esm2022/lib/consumers/stream-success-video.service.mjs +59 -1
  123. package/dist/esm2022/lib/consumers/switch-user-audio.service.mjs +34 -1
  124. package/dist/esm2022/lib/consumers/switch-user-video-alt.service.mjs +33 -1
  125. package/dist/esm2022/lib/consumers/switch-user-video.service.mjs +48 -1
  126. package/dist/esm2022/lib/consumers/trigger.service.mjs +39 -1
  127. package/dist/esm2022/lib/consumers/update-mini-cards-grid.service.mjs +55 -1
  128. package/dist/esm2022/lib/consumers/update-participant-audio-decibels.service.mjs +46 -1
  129. package/dist/esm2022/lib/methods/background-methods/launch-background.service.mjs +26 -1
  130. package/dist/esm2022/lib/methods/breakout-room-methods/breakout-room-updated.service.mjs +72 -1
  131. package/dist/esm2022/lib/methods/breakout-room-methods/launch-breakout-rooms.service.mjs +25 -1
  132. package/dist/esm2022/lib/methods/co-host-methods/launch-co-host.service.mjs +25 -1
  133. package/dist/esm2022/lib/methods/co-host-methods/modify-co-host-settings.service.mjs +45 -1
  134. package/dist/esm2022/lib/methods/display-settings-methods/launch-display-settings.service.mjs +23 -1
  135. package/dist/esm2022/lib/methods/display-settings-methods/modify-display-settings.service.mjs +76 -1
  136. package/dist/esm2022/lib/methods/exit-methods/confirm-exit.service.mjs +25 -1
  137. package/dist/esm2022/lib/methods/exit-methods/launch-confirm-exit.service.mjs +21 -1
  138. package/dist/esm2022/lib/methods/media-settings-methods/launch-media-settings.service.mjs +36 -1
  139. package/dist/esm2022/lib/methods/menu-methods/launch-menu-modal.service.mjs +23 -1
  140. package/dist/esm2022/lib/methods/message-methods/launch-messages.service.mjs +23 -1
  141. package/dist/esm2022/lib/methods/message-methods/send-message.service.mjs +50 -1
  142. package/dist/esm2022/lib/methods/participants-methods/launch-participants.service.mjs +25 -1
  143. package/dist/esm2022/lib/methods/participants-methods/message-participants.service.mjs +47 -1
  144. package/dist/esm2022/lib/methods/participants-methods/mute-participants.service.mjs +40 -1
  145. package/dist/esm2022/lib/methods/participants-methods/remove-participants.service.mjs +46 -1
  146. package/dist/esm2022/lib/methods/polls-methods/handle-create-poll.service.mjs +39 -1
  147. package/dist/esm2022/lib/methods/polls-methods/handle-end-poll.service.mjs +33 -1
  148. package/dist/esm2022/lib/methods/polls-methods/handle-vote-poll.service.mjs +35 -1
  149. package/dist/esm2022/lib/methods/polls-methods/launch-poll.service.mjs +21 -1
  150. package/dist/esm2022/lib/methods/polls-methods/poll-updated.service.mjs +32 -1
  151. package/dist/esm2022/lib/methods/recording-methods/check-pause-state.service.mjs +25 -1
  152. package/dist/esm2022/lib/methods/recording-methods/check-resume-state.service.mjs +23 -1
  153. package/dist/esm2022/lib/methods/recording-methods/confirm-recording.service.mjs +64 -1
  154. package/dist/esm2022/lib/methods/recording-methods/launch-recording.service.mjs +44 -1
  155. package/dist/esm2022/lib/methods/recording-methods/record-pause-timer.service.mjs +28 -1
  156. package/dist/esm2022/lib/methods/recording-methods/record-resume-timer.service.mjs +45 -1
  157. package/dist/esm2022/lib/methods/recording-methods/record-start-timer.service.mjs +46 -1
  158. package/dist/esm2022/lib/methods/recording-methods/record-update-timer.service.mjs +33 -1
  159. package/dist/esm2022/lib/methods/recording-methods/start-recording.service.mjs +51 -1
  160. package/dist/esm2022/lib/methods/recording-methods/stop-recording.service.mjs +39 -1
  161. package/dist/esm2022/lib/methods/recording-methods/update-recording.service.mjs +49 -1
  162. package/dist/esm2022/lib/methods/requests-methods/launch-requests.service.mjs +26 -1
  163. package/dist/esm2022/lib/methods/requests-methods/respond-to-requests.service.mjs +40 -1
  164. package/dist/esm2022/lib/methods/settings-methods/launch-settings.service.mjs +26 -1
  165. package/dist/esm2022/lib/methods/settings-methods/modify-settings.service.mjs +43 -1
  166. package/dist/esm2022/lib/methods/stream-methods/click-audio.service.mjs +98 -1
  167. package/dist/esm2022/lib/methods/stream-methods/click-chat.service.mjs +32 -1
  168. package/dist/esm2022/lib/methods/stream-methods/click-screen-share.service.mjs +69 -1
  169. package/dist/esm2022/lib/methods/stream-methods/click-video.service.mjs +89 -1
  170. package/dist/esm2022/lib/methods/stream-methods/switch-audio.service.mjs +48 -1
  171. package/dist/esm2022/lib/methods/stream-methods/switch-video-alt.service.mjs +51 -1
  172. package/dist/esm2022/lib/methods/stream-methods/switch-video.service.mjs +57 -1
  173. package/dist/esm2022/lib/methods/utils/format-number.service.mjs +27 -15
  174. package/dist/esm2022/lib/methods/utils/generate-random-messages.service.mjs +34 -1
  175. package/dist/esm2022/lib/methods/utils/generate-random-participants.service.mjs +28 -1
  176. package/dist/esm2022/lib/methods/utils/generate-random-polls.service.mjs +27 -1
  177. package/dist/esm2022/lib/methods/utils/generate-random-request-list.service.mjs +37 -1
  178. package/dist/esm2022/lib/methods/utils/generate-random-waiting-room-list.service.mjs +22 -1
  179. package/dist/esm2022/lib/methods/utils/get-modal-position.util.mjs +14 -4
  180. package/dist/esm2022/lib/methods/utils/get-overlay-position.util.mjs +14 -4
  181. package/dist/esm2022/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.mjs +38 -1
  182. package/dist/esm2022/lib/methods/utils/mini-audio-player/mini-audio-player.component.mjs +56 -1
  183. package/dist/esm2022/lib/methods/utils/producer/a-params.service.mjs +38 -1
  184. package/dist/esm2022/lib/methods/utils/producer/h-params.service.mjs +51 -1
  185. package/dist/esm2022/lib/methods/utils/producer/screen-params.service.mjs +38 -1
  186. package/dist/esm2022/lib/methods/utils/producer/v-params.service.mjs +51 -1
  187. package/dist/esm2022/lib/methods/utils/producer/video-capture-constraints.service.mjs +47 -1
  188. package/dist/esm2022/lib/methods/utils/sleep.util.mjs +10 -4
  189. package/dist/esm2022/lib/methods/utils/sound-player.service.mjs +22 -1
  190. package/dist/esm2022/lib/methods/utils/validate-alphanumeric.service.mjs +17 -1
  191. package/dist/esm2022/lib/methods/waiting-methods/launch-waiting.service.mjs +19 -1
  192. package/dist/esm2022/lib/methods/waiting-methods/respond-to-waiting.service.mjs +30 -1
  193. package/dist/esm2022/lib/methods/whiteboard-methods/capture-canvas-stream.service.mjs +30 -1
  194. package/dist/esm2022/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.mjs +21 -1
  195. package/dist/esm2022/lib/producer-client/producer-client-emits/create-device-client.service.mjs +24 -1
  196. package/dist/esm2022/lib/producer-client/producer-client-emits/join-room-client.service.mjs +32 -1
  197. package/dist/esm2022/lib/producer-client/producer-client-emits/update-room-parameters-client.service.mjs +45 -1
  198. package/dist/esm2022/lib/producers/producer-emits/join-con-room.service.mjs +39 -1
  199. package/dist/esm2022/lib/producers/producer-emits/join-room.service.mjs +39 -1
  200. package/dist/esm2022/lib/producers/socket-receive-methods/all-members-rest.service.mjs +74 -1
  201. package/dist/esm2022/lib/producers/socket-receive-methods/all-members.service.mjs +72 -1
  202. package/dist/esm2022/lib/producers/socket-receive-methods/all-waiting-room-members.service.mjs +28 -1
  203. package/dist/esm2022/lib/producers/socket-receive-methods/ban-participant.service.mjs +37 -1
  204. package/dist/esm2022/lib/producers/socket-receive-methods/control-media-host.service.mjs +38 -1
  205. package/dist/esm2022/lib/producers/socket-receive-methods/disconnect-user-self.service.mjs +25 -1
  206. package/dist/esm2022/lib/producers/socket-receive-methods/disconnect.service.mjs +27 -1
  207. package/dist/esm2022/lib/producers/socket-receive-methods/get-domains.service.mjs +25 -10
  208. package/dist/esm2022/lib/producers/socket-receive-methods/host-request-response.service.mjs +32 -49
  209. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-ended.service.mjs +30 -1
  210. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-still-there.service.mjs +24 -1
  211. package/dist/esm2022/lib/producers/socket-receive-methods/meeting-time-remaining.service.mjs +28 -1
  212. package/dist/esm2022/lib/producers/socket-receive-methods/participant-requested.service.mjs +32 -1
  213. package/dist/esm2022/lib/producers/socket-receive-methods/person-joined.service.mjs +26 -1
  214. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-closed.service.mjs +62 -1
  215. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-paused.service.mjs +63 -1
  216. package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-resumed.service.mjs +46 -1
  217. package/dist/esm2022/lib/producers/socket-receive-methods/re-initiate-recording.service.mjs +30 -1
  218. package/dist/esm2022/lib/producers/socket-receive-methods/receive-message.service.mjs +39 -1
  219. package/dist/esm2022/lib/producers/socket-receive-methods/recording-notice.service.mjs +39 -1
  220. package/dist/esm2022/lib/producers/socket-receive-methods/room-record-params.service.mjs +63 -1
  221. package/dist/esm2022/lib/producers/socket-receive-methods/screen-producer-id.service.mjs +42 -1
  222. package/dist/esm2022/lib/producers/socket-receive-methods/start-records.service.mjs +26 -1
  223. package/dist/esm2022/lib/producers/socket-receive-methods/stopped-recording.service.mjs +26 -1
  224. package/dist/esm2022/lib/producers/socket-receive-methods/time-left-recording.service.mjs +22 -1
  225. package/dist/esm2022/lib/producers/socket-receive-methods/update-consuming-domains.service.mjs +43 -1
  226. package/dist/esm2022/lib/producers/socket-receive-methods/update-media-settings.service.mjs +31 -1
  227. package/dist/esm2022/lib/producers/socket-receive-methods/updated-co-host.service.mjs +41 -1
  228. package/dist/esm2022/lib/producers/socket-receive-methods/user-waiting.service.mjs +15 -41
  229. package/dist/esm2022/lib/sockets/socket-manager.service.mjs +41 -1
  230. package/dist/fesm2022/mediasfu-angular.mjs +8160 -898
  231. package/dist/fesm2022/mediasfu-angular.mjs.map +1 -1
  232. package/dist/lib/components/background-components/background-modal/background-modal.component.d.ts +36 -0
  233. package/dist/lib/components/breakout-components/breakout-rooms-modal.component.d.ts +50 -0
  234. package/dist/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.d.ts +48 -0
  235. package/dist/lib/components/co-host-components/co-host-modal/co-host-modal.component.d.ts +62 -0
  236. package/dist/lib/components/display-components/alert-component/alert.component.component.d.ts +24 -18
  237. package/dist/lib/components/display-components/audio-card/audio-card.component.d.ts +59 -0
  238. package/dist/lib/components/display-components/audio-grid/audio-grid.component.d.ts +20 -0
  239. package/dist/lib/components/display-components/card-video-display/card-video-display.component.d.ts +35 -0
  240. package/dist/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.d.ts +38 -0
  241. package/dist/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.d.ts +24 -40
  242. package/dist/lib/components/display-components/control-widgets/menu-participants-widget.component.d.ts +21 -0
  243. package/dist/lib/components/display-components/control-widgets/menu-record-widget.component.d.ts +22 -0
  244. package/dist/lib/components/display-components/control-widgets/menu-widget.component.d.ts +23 -0
  245. package/dist/lib/components/display-components/control-widgets/message-widget.component.d.ts +23 -0
  246. package/dist/lib/components/display-components/control-widgets/record-timer-widget.component.d.ts +15 -0
  247. package/dist/lib/components/display-components/control-widgets/screenshare-widget.component.d.ts +27 -0
  248. package/dist/lib/components/display-components/flexible-grid/flexible-grid.component.d.ts +27 -18
  249. package/dist/lib/components/display-components/flexible-video/flexible-video.component.d.ts +30 -45
  250. package/dist/lib/components/display-components/loading-modal/loading-modal.component.d.ts +19 -17
  251. package/dist/lib/components/display-components/main-aspect-component/main-aspect-component.component.d.ts +32 -24
  252. package/dist/lib/components/display-components/main-container-component/main-container-component.component.d.ts +28 -16
  253. package/dist/lib/components/display-components/main-grid-component/main-grid-component.component.d.ts +28 -14
  254. package/dist/lib/components/display-components/main-screen-component/main-screen-component.component.d.ts +43 -22
  255. package/dist/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.d.ts +25 -30
  256. package/dist/lib/components/display-components/mini-audio/mini-audio.component.d.ts +55 -62
  257. package/dist/lib/components/display-components/mini-card/mini-card.component.d.ts +19 -23
  258. package/dist/lib/components/display-components/mini-card-audio/mini-card-audio.component.d.ts +39 -39
  259. package/dist/lib/components/display-components/other-grid-component/other-grid-component.component.d.ts +28 -13
  260. package/dist/lib/components/display-components/pagination/pagination.component.d.ts +29 -23
  261. package/dist/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.d.ts +18 -24
  262. package/dist/lib/components/display-components/video-card/video-card.component.d.ts +62 -0
  263. package/dist/lib/components/display-settings-components/display-settings-modal.component.d.ts +28 -17
  264. package/dist/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.d.ts +47 -38
  265. package/dist/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.d.ts +35 -22
  266. package/dist/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.d.ts +35 -24
  267. package/dist/lib/components/mediasfu-components/mediasfu-broadcast.component.d.ts +126 -77
  268. package/dist/lib/components/mediasfu-components/mediasfu-chat.component.d.ts +126 -77
  269. package/dist/lib/components/mediasfu-components/mediasfu-conference.component.d.ts +146 -110
  270. package/dist/lib/components/mediasfu-components/mediasfu-generic.component.d.ts +146 -110
  271. package/dist/lib/components/mediasfu-components/mediasfu-webinar.component.d.ts +144 -110
  272. package/dist/lib/components/menu-components/custom-buttons/custom-buttons.component.d.ts +49 -51
  273. package/dist/lib/components/menu-components/meeting-id-component/meeting-id-component.component.d.ts +6 -1
  274. package/dist/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.d.ts +5 -0
  275. package/dist/lib/components/menu-components/menu-modal/menu-modal.component.d.ts +21 -28
  276. package/dist/lib/components/menu-components/share-buttons-component/share-buttons-component.component.d.ts +15 -13
  277. package/dist/lib/components/message-components/message-panel/message-panel.component.d.ts +24 -0
  278. package/dist/lib/components/message-components/messages-modal/messages-modal.component.d.ts +34 -0
  279. package/dist/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.d.ts +16 -33
  280. package/dist/lib/components/misc-components/pre-join-page/pre-join-page.component.d.ts +8 -0
  281. package/dist/lib/components/misc-components/share-event-modal/share-event-modal.component.d.ts +14 -0
  282. package/dist/lib/components/misc-components/welcome-page/welcome-page.component.d.ts +15 -0
  283. package/dist/lib/components/participants-components/participant-list/participant-list.component.d.ts +19 -0
  284. package/dist/lib/components/participants-components/participant-list-item/participant-list-item.component.d.ts +19 -0
  285. package/dist/lib/components/participants-components/participant-list-others/participant-list-others.component.d.ts +17 -0
  286. package/dist/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.d.ts +17 -0
  287. package/dist/lib/components/participants-components/participants-modal/participants-modal.component.d.ts +24 -0
  288. package/dist/lib/components/polls-components/poll-modal/poll-modal.component.d.ts +27 -0
  289. package/dist/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.d.ts +15 -0
  290. package/dist/lib/components/recording-components/recording-modal/recording-modal.component.d.ts +12 -0
  291. package/dist/lib/components/recording-components/standard-panel-component/standard-panel-component.component.d.ts +5 -0
  292. package/dist/lib/components/requests-components/render-request-component/render-request-component.component.d.ts +22 -0
  293. package/dist/lib/components/requests-components/requests-modal/requests-modal.component.d.ts +17 -0
  294. package/dist/lib/components/screenboard-components/screenboard/screenboard.component.d.ts +10 -0
  295. package/dist/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.d.ts +11 -0
  296. package/dist/lib/components/waiting-components/waiting-room-modal.component.d.ts +59 -0
  297. package/dist/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.d.ts +21 -0
  298. package/dist/lib/components/whiteboard-components/whiteboard/whiteboard.component.d.ts +49 -0
  299. package/dist/lib/consumers/add-videos-grid.service.d.ts +49 -0
  300. package/dist/lib/consumers/auto-adjust.service.d.ts +26 -0
  301. package/dist/lib/consumers/calculate-rows-and-columns.service.d.ts +18 -0
  302. package/dist/lib/consumers/change-vids.service.d.ts +131 -66
  303. package/dist/lib/consumers/check-grid.service.d.ts +32 -18
  304. package/dist/lib/consumers/check-permission.service.d.ts +25 -0
  305. package/dist/lib/consumers/check-screen-share.service.d.ts +35 -0
  306. package/dist/lib/consumers/close-and-resize.service.d.ts +102 -0
  307. package/dist/lib/consumers/compare-active-names.service.d.ts +31 -0
  308. package/dist/lib/consumers/compare-screen-states.service.d.ts +35 -0
  309. package/dist/lib/consumers/connect-ips.service.d.ts +42 -0
  310. package/dist/lib/consumers/connect-recv-transport.service.d.ts +33 -0
  311. package/dist/lib/consumers/connect-send-transport-audio.service.d.ts +38 -0
  312. package/dist/lib/consumers/connect-send-transport-screen.service.d.ts +40 -0
  313. package/dist/lib/consumers/connect-send-transport-video.service.d.ts +44 -0
  314. package/dist/lib/consumers/connect-send-transport.service.d.ts +54 -0
  315. package/dist/lib/consumers/consumer-resume.service.d.ts +36 -0
  316. package/dist/lib/consumers/control-media.service.d.ts +45 -0
  317. package/dist/lib/consumers/create-send-transport.service.d.ts +46 -0
  318. package/dist/lib/consumers/disconnect-send-transport-audio.service.d.ts +50 -0
  319. package/dist/lib/consumers/disconnect-send-transport-screen.service.d.ts +39 -0
  320. package/dist/lib/consumers/disconnect-send-transport-video.service.d.ts +45 -0
  321. package/dist/lib/consumers/disp-streams.service.d.ts +92 -0
  322. package/dist/lib/consumers/generate-page-content.service.d.ts +47 -0
  323. package/dist/lib/consumers/get-estimate.service.d.ts +50 -0
  324. package/dist/lib/consumers/get-piped-producers-alt.service.d.ts +33 -0
  325. package/dist/lib/consumers/get-producers-piped.service.d.ts +33 -0
  326. package/dist/lib/consumers/get-videos.service.d.ts +33 -0
  327. package/dist/lib/consumers/mix-streams.service.d.ts +22 -0
  328. package/dist/lib/consumers/on-screen-changes.service.d.ts +40 -0
  329. package/dist/lib/consumers/prepopulate-user-media.service.d.ts +99 -0
  330. package/dist/lib/consumers/process-consumer-transports-audio.service.d.ts +29 -0
  331. package/dist/lib/consumers/process-consumer-transports.service.d.ts +37 -0
  332. package/dist/lib/consumers/re-port.service.d.ts +48 -0
  333. package/dist/lib/consumers/re-update-inter.service.d.ts +82 -0
  334. package/dist/lib/consumers/readjust.service.d.ts +50 -0
  335. package/dist/lib/consumers/receive-all-piped-transports.service.d.ts +31 -0
  336. package/dist/lib/consumers/receive-room-messages.service.d.ts +27 -0
  337. package/dist/lib/consumers/reorder-streams.service.d.ts +58 -0
  338. package/dist/lib/consumers/request-screen-share.service.d.ts +34 -0
  339. package/dist/lib/consumers/resume-pause-audio-streams.service.d.ts +51 -0
  340. package/dist/lib/consumers/resume-pause-streams.service.d.ts +33 -0
  341. package/dist/lib/consumers/resume-send-transport-audio.service.d.ts +36 -0
  342. package/dist/lib/consumers/signal-new-consumer-transport.service.d.ts +37 -37
  343. package/dist/lib/consumers/socket-receive-methods/join-consume-room.service.d.ts +33 -0
  344. package/dist/lib/consumers/socket-receive-methods/new-pipe-producer.service.d.ts +39 -0
  345. package/dist/lib/consumers/socket-receive-methods/producer-closed.service.d.ts +27 -0
  346. package/dist/lib/consumers/start-share-screen.service.d.ts +40 -0
  347. package/dist/lib/consumers/stop-share-screen.service.d.ts +55 -0
  348. package/dist/lib/consumers/stream-success-audio-switch.service.d.ts +53 -0
  349. package/dist/lib/consumers/stream-success-audio.service.d.ts +61 -0
  350. package/dist/lib/consumers/stream-success-screen.service.d.ts +50 -0
  351. package/dist/lib/consumers/stream-success-video.service.d.ts +58 -0
  352. package/dist/lib/consumers/switch-user-audio.service.d.ts +33 -0
  353. package/dist/lib/consumers/switch-user-video-alt.service.d.ts +32 -0
  354. package/dist/lib/consumers/switch-user-video.service.d.ts +47 -0
  355. package/dist/lib/consumers/trigger.service.d.ts +38 -0
  356. package/dist/lib/consumers/update-mini-cards-grid.service.d.ts +54 -0
  357. package/dist/lib/consumers/update-participant-audio-decibels.service.d.ts +45 -0
  358. package/dist/lib/methods/background-methods/launch-background.service.d.ts +25 -0
  359. package/dist/lib/methods/breakout-room-methods/breakout-room-updated.service.d.ts +71 -0
  360. package/dist/lib/methods/breakout-room-methods/launch-breakout-rooms.service.d.ts +24 -0
  361. package/dist/lib/methods/co-host-methods/launch-co-host.service.d.ts +24 -0
  362. package/dist/lib/methods/co-host-methods/modify-co-host-settings.service.d.ts +44 -0
  363. package/dist/lib/methods/display-settings-methods/launch-display-settings.service.d.ts +22 -0
  364. package/dist/lib/methods/display-settings-methods/modify-display-settings.service.d.ts +75 -0
  365. package/dist/lib/methods/exit-methods/confirm-exit.service.d.ts +24 -0
  366. package/dist/lib/methods/exit-methods/launch-confirm-exit.service.d.ts +20 -0
  367. package/dist/lib/methods/media-settings-methods/launch-media-settings.service.d.ts +35 -0
  368. package/dist/lib/methods/menu-methods/launch-menu-modal.service.d.ts +22 -0
  369. package/dist/lib/methods/message-methods/launch-messages.service.d.ts +22 -0
  370. package/dist/lib/methods/message-methods/send-message.service.d.ts +49 -0
  371. package/dist/lib/methods/participants-methods/launch-participants.service.d.ts +24 -0
  372. package/dist/lib/methods/participants-methods/message-participants.service.d.ts +46 -0
  373. package/dist/lib/methods/participants-methods/mute-participants.service.d.ts +39 -0
  374. package/dist/lib/methods/participants-methods/remove-participants.service.d.ts +45 -0
  375. package/dist/lib/methods/polls-methods/handle-create-poll.service.d.ts +38 -0
  376. package/dist/lib/methods/polls-methods/handle-end-poll.service.d.ts +32 -0
  377. package/dist/lib/methods/polls-methods/handle-vote-poll.service.d.ts +34 -0
  378. package/dist/lib/methods/polls-methods/launch-poll.service.d.ts +20 -0
  379. package/dist/lib/methods/polls-methods/poll-updated.service.d.ts +31 -0
  380. package/dist/lib/methods/recording-methods/check-pause-state.service.d.ts +24 -0
  381. package/dist/lib/methods/recording-methods/check-resume-state.service.d.ts +22 -0
  382. package/dist/lib/methods/recording-methods/confirm-recording.service.d.ts +63 -0
  383. package/dist/lib/methods/recording-methods/launch-recording.service.d.ts +43 -0
  384. package/dist/lib/methods/recording-methods/record-pause-timer.service.d.ts +27 -0
  385. package/dist/lib/methods/recording-methods/record-resume-timer.service.d.ts +44 -0
  386. package/dist/lib/methods/recording-methods/record-start-timer.service.d.ts +45 -0
  387. package/dist/lib/methods/recording-methods/record-update-timer.service.d.ts +32 -0
  388. package/dist/lib/methods/recording-methods/start-recording.service.d.ts +50 -0
  389. package/dist/lib/methods/recording-methods/stop-recording.service.d.ts +38 -0
  390. package/dist/lib/methods/recording-methods/update-recording.service.d.ts +48 -0
  391. package/dist/lib/methods/requests-methods/launch-requests.service.d.ts +25 -0
  392. package/dist/lib/methods/requests-methods/respond-to-requests.service.d.ts +39 -0
  393. package/dist/lib/methods/settings-methods/launch-settings.service.d.ts +25 -0
  394. package/dist/lib/methods/settings-methods/modify-settings.service.d.ts +42 -0
  395. package/dist/lib/methods/stream-methods/click-audio.service.d.ts +97 -0
  396. package/dist/lib/methods/stream-methods/click-chat.service.d.ts +31 -0
  397. package/dist/lib/methods/stream-methods/click-screen-share.service.d.ts +68 -0
  398. package/dist/lib/methods/stream-methods/click-video.service.d.ts +88 -0
  399. package/dist/lib/methods/stream-methods/switch-audio.service.d.ts +47 -0
  400. package/dist/lib/methods/stream-methods/switch-video-alt.service.d.ts +50 -0
  401. package/dist/lib/methods/stream-methods/switch-video.service.d.ts +56 -0
  402. package/dist/lib/methods/utils/format-number.service.d.ts +26 -14
  403. package/dist/lib/methods/utils/generate-random-messages.service.d.ts +33 -0
  404. package/dist/lib/methods/utils/generate-random-participants.service.d.ts +27 -0
  405. package/dist/lib/methods/utils/generate-random-polls.service.d.ts +26 -0
  406. package/dist/lib/methods/utils/generate-random-request-list.service.d.ts +36 -0
  407. package/dist/lib/methods/utils/generate-random-waiting-room-list.service.d.ts +21 -0
  408. package/dist/lib/methods/utils/get-modal-position.util.d.ts +13 -3
  409. package/dist/lib/methods/utils/get-overlay-position.util.d.ts +13 -3
  410. package/dist/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.d.ts +37 -0
  411. package/dist/lib/methods/utils/mini-audio-player/mini-audio-player.component.d.ts +55 -0
  412. package/dist/lib/methods/utils/producer/a-params.service.d.ts +37 -0
  413. package/dist/lib/methods/utils/producer/h-params.service.d.ts +50 -0
  414. package/dist/lib/methods/utils/producer/screen-params.service.d.ts +37 -0
  415. package/dist/lib/methods/utils/producer/v-params.service.d.ts +50 -0
  416. package/dist/lib/methods/utils/producer/video-capture-constraints.service.d.ts +46 -0
  417. package/dist/lib/methods/utils/sleep.util.d.ts +9 -3
  418. package/dist/lib/methods/utils/sound-player.service.d.ts +21 -0
  419. package/dist/lib/methods/utils/validate-alphanumeric.service.d.ts +16 -0
  420. package/dist/lib/methods/waiting-methods/launch-waiting.service.d.ts +18 -0
  421. package/dist/lib/methods/waiting-methods/respond-to-waiting.service.d.ts +29 -0
  422. package/dist/lib/methods/whiteboard-methods/capture-canvas-stream.service.d.ts +29 -0
  423. package/dist/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.d.ts +20 -0
  424. package/dist/lib/producer-client/producer-client-emits/create-device-client.service.d.ts +23 -0
  425. package/dist/lib/producer-client/producer-client-emits/join-room-client.service.d.ts +31 -0
  426. package/dist/lib/producer-client/producer-client-emits/update-room-parameters-client.service.d.ts +44 -0
  427. package/dist/lib/producers/producer-emits/join-con-room.service.d.ts +38 -0
  428. package/dist/lib/producers/producer-emits/join-room.service.d.ts +38 -0
  429. package/dist/lib/producers/socket-receive-methods/all-members-rest.service.d.ts +73 -0
  430. package/dist/lib/producers/socket-receive-methods/all-members.service.d.ts +71 -0
  431. package/dist/lib/producers/socket-receive-methods/all-waiting-room-members.service.d.ts +27 -0
  432. package/dist/lib/producers/socket-receive-methods/ban-participant.service.d.ts +36 -0
  433. package/dist/lib/producers/socket-receive-methods/control-media-host.service.d.ts +37 -0
  434. package/dist/lib/producers/socket-receive-methods/disconnect-user-self.service.d.ts +24 -0
  435. package/dist/lib/producers/socket-receive-methods/disconnect.service.d.ts +26 -0
  436. package/dist/lib/producers/socket-receive-methods/get-domains.service.d.ts +24 -9
  437. package/dist/lib/producers/socket-receive-methods/host-request-response.service.d.ts +31 -48
  438. package/dist/lib/producers/socket-receive-methods/meeting-ended.service.d.ts +29 -0
  439. package/dist/lib/producers/socket-receive-methods/meeting-still-there.service.d.ts +23 -0
  440. package/dist/lib/producers/socket-receive-methods/meeting-time-remaining.service.d.ts +27 -0
  441. package/dist/lib/producers/socket-receive-methods/participant-requested.service.d.ts +31 -0
  442. package/dist/lib/producers/socket-receive-methods/person-joined.service.d.ts +25 -0
  443. package/dist/lib/producers/socket-receive-methods/producer-media-closed.service.d.ts +61 -0
  444. package/dist/lib/producers/socket-receive-methods/producer-media-paused.service.d.ts +62 -0
  445. package/dist/lib/producers/socket-receive-methods/producer-media-resumed.service.d.ts +45 -0
  446. package/dist/lib/producers/socket-receive-methods/re-initiate-recording.service.d.ts +29 -0
  447. package/dist/lib/producers/socket-receive-methods/receive-message.service.d.ts +38 -0
  448. package/dist/lib/producers/socket-receive-methods/recording-notice.service.d.ts +38 -0
  449. package/dist/lib/producers/socket-receive-methods/room-record-params.service.d.ts +62 -0
  450. package/dist/lib/producers/socket-receive-methods/screen-producer-id.service.d.ts +41 -0
  451. package/dist/lib/producers/socket-receive-methods/start-records.service.d.ts +25 -0
  452. package/dist/lib/producers/socket-receive-methods/stopped-recording.service.d.ts +25 -0
  453. package/dist/lib/producers/socket-receive-methods/time-left-recording.service.d.ts +21 -0
  454. package/dist/lib/producers/socket-receive-methods/update-consuming-domains.service.d.ts +42 -0
  455. package/dist/lib/producers/socket-receive-methods/update-media-settings.service.d.ts +30 -0
  456. package/dist/lib/producers/socket-receive-methods/updated-co-host.service.d.ts +40 -0
  457. package/dist/lib/producers/socket-receive-methods/user-waiting.service.d.ts +14 -40
  458. package/dist/lib/sockets/socket-manager.service.d.ts +40 -0
  459. package/package.json +1 -1
@@ -1,5 +1,42 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * The `ScreenParams` service provides encoding parameters specifically for screen sharing in a media session using the Mediasoup library.
5
+ * It includes a default configuration for RTP encoding parameters optimized for high-quality screen sharing.
6
+ *
7
+ * @service
8
+ * @example
9
+ * ```typescript
10
+ * import { ScreenParams } from './path/to/screen-params.service';
11
+ *
12
+ * constructor(private screenParamsService: ScreenParams) {
13
+ * console.log(this.screenParamsService.screenParams);
14
+ * }
15
+ * ```
16
+ *
17
+ * @typedef ScreenParamsType
18
+ * @property {RtpEncodingParameters[]} encodings - Array of RTP encoding parameters for screen sharing.
19
+ * @property {ProducerCodecOptions} [codecOptions] - Optional codec options for the screen sharing producer.
20
+ *
21
+ * @example
22
+ * const screenParams: ScreenParamsType = {
23
+ * encodings: [
24
+ * {
25
+ * rid: 'r7',
26
+ * maxBitrate: 3000000, // Max bitrate for this encoding (in bps)
27
+ * },
28
+ * ],
29
+ * codecOptions: {
30
+ * videoGoogleStartBitrate: 1000, // Initial bitrate for the Google codec
31
+ * },
32
+ * };
33
+ *
34
+ * @remarks
35
+ * The default `screenParams` includes one encoding configuration with a high maximum bitrate suitable for sharing detailed screen content.
36
+ * The parameters are optimized to ensure a smooth experience during screen sharing sessions.
37
+ *
38
+ * @returns {ScreenParamsType} The screen sharing parameters for use in screen sharing producer configuration.
39
+ */
3
40
  export class ScreenParams {
4
41
  screenParams = {
5
42
  encodings: [
@@ -21,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
21
58
  providedIn: 'root',
22
59
  }]
23
60
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLXBhcmFtcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWFzZnUtYW5ndWxhci9zcmMvbGliL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvc2NyZWVuLXBhcmFtcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTNDLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQVksR0FBcUI7UUFDL0IsU0FBUyxFQUFFO1lBQ1Q7Z0JBQ0UsR0FBRyxFQUFFLElBQUk7Z0JBQ1QsVUFBVSxFQUFFLE9BQU87YUFDcEI7U0FDRjtRQUNELFlBQVksRUFBRTtZQUNaLHVCQUF1QixFQUFFLElBQUk7U0FDOUI7S0FDRixDQUFDO3VHQVhTLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZHVjZXJDb2RlY09wdGlvbnMsIFJ0cEVuY29kaW5nUGFyYW1ldGVycyB9IGZyb20gJ21lZGlhc291cC1jbGllbnQvbGliL3R5cGVzJztcbmV4cG9ydCB0eXBlIFNjcmVlblBhcmFtc1R5cGUgPSB7XG4gIGVuY29kaW5nczogUnRwRW5jb2RpbmdQYXJhbWV0ZXJzW107XG4gIGNvZGVjT3B0aW9ucz86IFByb2R1Y2VyQ29kZWNPcHRpb25zO1xufTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNjcmVlblBhcmFtcyB7XG4gIHNjcmVlblBhcmFtczogU2NyZWVuUGFyYW1zVHlwZSA9IHtcbiAgICBlbmNvZGluZ3M6IFtcbiAgICAgIHtcbiAgICAgICAgcmlkOiAncjcnLFxuICAgICAgICBtYXhCaXRyYXRlOiAzMDAwMDAwLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvZGVjT3B0aW9uczoge1xuICAgICAgdmlkZW9Hb29nbGVTdGFydEJpdHJhdGU6IDEwMDAsXG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLXBhcmFtcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWFzZnUtYW5ndWxhci9zcmMvbGliL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvc2NyZWVuLXBhcmFtcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQ0c7QUFNSCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUFZLEdBQXFCO1FBQy9CLFNBQVMsRUFBRTtZQUNUO2dCQUNFLEdBQUcsRUFBRSxJQUFJO2dCQUNULFVBQVUsRUFBRSxPQUFPO2FBQ3BCO1NBQ0Y7UUFDRCxZQUFZLEVBQUU7WUFDWix1QkFBdUIsRUFBRSxJQUFJO1NBQzlCO0tBQ0YsQ0FBQzt1R0FYUyxZQUFZOzJHQUFaLFlBQVksY0FGWCxNQUFNOzsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByb2R1Y2VyQ29kZWNPcHRpb25zLCBSdHBFbmNvZGluZ1BhcmFtZXRlcnMgfSBmcm9tICdtZWRpYXNvdXAtY2xpZW50L2xpYi90eXBlcyc7XG5leHBvcnQgdHlwZSBTY3JlZW5QYXJhbXNUeXBlID0ge1xuICBlbmNvZGluZ3M6IFJ0cEVuY29kaW5nUGFyYW1ldGVyc1tdO1xuICBjb2RlY09wdGlvbnM/OiBQcm9kdWNlckNvZGVjT3B0aW9ucztcbn07XG5cbi8qKlxuICogVGhlIGBTY3JlZW5QYXJhbXNgIHNlcnZpY2UgcHJvdmlkZXMgZW5jb2RpbmcgcGFyYW1ldGVycyBzcGVjaWZpY2FsbHkgZm9yIHNjcmVlbiBzaGFyaW5nIGluIGEgbWVkaWEgc2Vzc2lvbiB1c2luZyB0aGUgTWVkaWFzb3VwIGxpYnJhcnkuXG4gKiBJdCBpbmNsdWRlcyBhIGRlZmF1bHQgY29uZmlndXJhdGlvbiBmb3IgUlRQIGVuY29kaW5nIHBhcmFtZXRlcnMgb3B0aW1pemVkIGZvciBoaWdoLXF1YWxpdHkgc2NyZWVuIHNoYXJpbmcuXG4gKlxuICogQHNlcnZpY2VcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBTY3JlZW5QYXJhbXMgfSBmcm9tICcuL3BhdGgvdG8vc2NyZWVuLXBhcmFtcy5zZXJ2aWNlJztcbiAqXG4gKiBjb25zdHJ1Y3Rvcihwcml2YXRlIHNjcmVlblBhcmFtc1NlcnZpY2U6IFNjcmVlblBhcmFtcykge1xuICogICBjb25zb2xlLmxvZyh0aGlzLnNjcmVlblBhcmFtc1NlcnZpY2Uuc2NyZWVuUGFyYW1zKTtcbiAqIH1cbiAqIGBgYFxuICpcbiAqIEB0eXBlZGVmIFNjcmVlblBhcmFtc1R5cGVcbiAqIEBwcm9wZXJ0eSB7UnRwRW5jb2RpbmdQYXJhbWV0ZXJzW119IGVuY29kaW5ncyAtIEFycmF5IG9mIFJUUCBlbmNvZGluZyBwYXJhbWV0ZXJzIGZvciBzY3JlZW4gc2hhcmluZy5cbiAqIEBwcm9wZXJ0eSB7UHJvZHVjZXJDb2RlY09wdGlvbnN9IFtjb2RlY09wdGlvbnNdIC0gT3B0aW9uYWwgY29kZWMgb3B0aW9ucyBmb3IgdGhlIHNjcmVlbiBzaGFyaW5nIHByb2R1Y2VyLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBzY3JlZW5QYXJhbXM6IFNjcmVlblBhcmFtc1R5cGUgPSB7XG4gKiAgIGVuY29kaW5nczogW1xuICogICAgIHtcbiAqICAgICAgIHJpZDogJ3I3JyxcbiAqICAgICAgIG1heEJpdHJhdGU6IDMwMDAwMDAsIC8vIE1heCBiaXRyYXRlIGZvciB0aGlzIGVuY29kaW5nIChpbiBicHMpXG4gKiAgICAgfSxcbiAqICAgXSxcbiAqICAgY29kZWNPcHRpb25zOiB7XG4gKiAgICAgdmlkZW9Hb29nbGVTdGFydEJpdHJhdGU6IDEwMDAsIC8vIEluaXRpYWwgYml0cmF0ZSBmb3IgdGhlIEdvb2dsZSBjb2RlY1xuICogICB9LFxuICogfTtcbiAqXG4gKiBAcmVtYXJrc1xuICogVGhlIGRlZmF1bHQgYHNjcmVlblBhcmFtc2AgaW5jbHVkZXMgb25lIGVuY29kaW5nIGNvbmZpZ3VyYXRpb24gd2l0aCBhIGhpZ2ggbWF4aW11bSBiaXRyYXRlIHN1aXRhYmxlIGZvciBzaGFyaW5nIGRldGFpbGVkIHNjcmVlbiBjb250ZW50LlxuICogVGhlIHBhcmFtZXRlcnMgYXJlIG9wdGltaXplZCB0byBlbnN1cmUgYSBzbW9vdGggZXhwZXJpZW5jZSBkdXJpbmcgc2NyZWVuIHNoYXJpbmcgc2Vzc2lvbnMuXG4gKlxuICogQHJldHVybnMge1NjcmVlblBhcmFtc1R5cGV9IFRoZSBzY3JlZW4gc2hhcmluZyBwYXJhbWV0ZXJzIGZvciB1c2UgaW4gc2NyZWVuIHNoYXJpbmcgcHJvZHVjZXIgY29uZmlndXJhdGlvbi5cbiAqL1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY3JlZW5QYXJhbXMge1xuICBzY3JlZW5QYXJhbXM6IFNjcmVlblBhcmFtc1R5cGUgPSB7XG4gICAgZW5jb2RpbmdzOiBbXG4gICAgICB7XG4gICAgICAgIHJpZDogJ3I3JyxcbiAgICAgICAgbWF4Qml0cmF0ZTogMzAwMDAwMCxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2RlY09wdGlvbnM6IHtcbiAgICAgIHZpZGVvR29vZ2xlU3RhcnRCaXRyYXRlOiAxMDAwLFxuICAgIH0sXG4gIH07XG59XG4iXX0=
@@ -1,5 +1,55 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * The `VParams` service provides encoding parameters for video in a media session using the Mediasoup library.
5
+ * It includes a default configuration for RTP encoding parameters optimized for video streaming.
6
+ *
7
+ * @service
8
+ * @example
9
+ * ```typescript
10
+ * import { VParams } from './path/to/v-params.service';
11
+ *
12
+ * constructor(private vParamsService: VParams) {
13
+ * console.log(this.vParamsService.vParams);
14
+ * }
15
+ * ```
16
+ *
17
+ * @typedef VParamsType
18
+ * @property {RtpEncodingParameters[]} encodings - Array of RTP encoding parameters for video.
19
+ * @property {ProducerCodecOptions} [codecOptions] - Optional codec options for the video producer.
20
+ *
21
+ * @example
22
+ * const vParams: VParamsType = {
23
+ * encodings: [
24
+ * {
25
+ * rid: 'r3',
26
+ * maxBitrate: 200000, // Max bitrate for this encoding (in bps)
27
+ * scalabilityMode: 'L1T3', // Scalability mode for encoding
28
+ * scaleResolutionDownBy: 4.0, // Scale down resolution by this factor
29
+ * },
30
+ * {
31
+ * rid: 'r4',
32
+ * maxBitrate: 400000,
33
+ * scalabilityMode: 'L1T3',
34
+ * scaleResolutionDownBy: 2.0,
35
+ * },
36
+ * {
37
+ * rid: 'r5',
38
+ * maxBitrate: 800000,
39
+ * scalabilityMode: 'L1T3',
40
+ * },
41
+ * ],
42
+ * codecOptions: {
43
+ * videoGoogleStartBitrate: 320, // Initial bitrate for the Google codec
44
+ * },
45
+ * };
46
+ *
47
+ * @remarks
48
+ * The default `vParams` includes multiple encoding configurations with different maximum bitrates,
49
+ * allowing for adaptive streaming based on network conditions and participant capabilities.
50
+ *
51
+ * @returns {VParamsType} The video parameters for use in video producer configuration.
52
+ */
3
53
  export class VParams {
4
54
  vParams = {
5
55
  encodings: [
@@ -34,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
34
84
  providedIn: 'root',
35
85
  }]
36
86
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidi1wYXJhbXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3V0aWxzL3Byb2R1Y2VyL3YtcGFyYW1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVM0MsTUFBTSxPQUFPLE9BQU87SUFDbEIsT0FBTyxHQUFnQjtRQUNyQixTQUFTLEVBQUU7WUFDVDtnQkFDRSxHQUFHLEVBQUUsSUFBSTtnQkFDVCxVQUFVLEVBQUUsTUFBTTtnQkFDbEIsZUFBZSxFQUFFLE1BQU07Z0JBQ3ZCLHFCQUFxQixFQUFFLEdBQUc7YUFDM0I7WUFDRDtnQkFDRSxHQUFHLEVBQUUsSUFBSTtnQkFDVCxVQUFVLEVBQUUsTUFBTTtnQkFDbEIsZUFBZSxFQUFFLE1BQU07Z0JBQ3ZCLHFCQUFxQixFQUFFLEdBQUc7YUFDM0I7WUFDRDtnQkFDRSxHQUFHLEVBQUUsSUFBSTtnQkFDVCxVQUFVLEVBQUUsTUFBTTtnQkFDbEIsZUFBZSxFQUFFLE1BQU07YUFDeEI7U0FDRjtRQUNELFlBQVksRUFBRTtZQUNaLHVCQUF1QixFQUFFLEdBQUc7U0FDN0I7S0FDRixDQUFDO3VHQXhCUyxPQUFPOzJHQUFQLE9BQU8sY0FGTixNQUFNOzsyRkFFUCxPQUFPO2tCQUhuQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByb2R1Y2VyQ29kZWNPcHRpb25zLCBSdHBFbmNvZGluZ1BhcmFtZXRlcnMgfSBmcm9tICdtZWRpYXNvdXAtY2xpZW50L2xpYi90eXBlcyc7XG5leHBvcnQgdHlwZSBWUGFyYW1zVHlwZSA9IHtcbiAgZW5jb2RpbmdzOiBSdHBFbmNvZGluZ1BhcmFtZXRlcnNbXTtcbiAgY29kZWNPcHRpb25zPzogUHJvZHVjZXJDb2RlY09wdGlvbnM7XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVlBhcmFtcyB7XG4gIHZQYXJhbXM6IFZQYXJhbXNUeXBlID0ge1xuICAgIGVuY29kaW5nczogW1xuICAgICAge1xuICAgICAgICByaWQ6ICdyMycsXG4gICAgICAgIG1heEJpdHJhdGU6IDIwMDAwMCxcbiAgICAgICAgc2NhbGFiaWxpdHlNb2RlOiAnTDFUMycsXG4gICAgICAgIHNjYWxlUmVzb2x1dGlvbkRvd25CeTogNC4wLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcmlkOiAncjQnLFxuICAgICAgICBtYXhCaXRyYXRlOiA0MDAwMDAsXG4gICAgICAgIHNjYWxhYmlsaXR5TW9kZTogJ0wxVDMnLFxuICAgICAgICBzY2FsZVJlc29sdXRpb25Eb3duQnk6IDIuMCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJpZDogJ3I1JyxcbiAgICAgICAgbWF4Qml0cmF0ZTogODAwMDAwLFxuICAgICAgICBzY2FsYWJpbGl0eU1vZGU6ICdMMVQzJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2RlY09wdGlvbnM6IHtcbiAgICAgIHZpZGVvR29vZ2xlU3RhcnRCaXRyYXRlOiAzMjAsXG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidi1wYXJhbXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3V0aWxzL3Byb2R1Y2VyL3YtcGFyYW1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpREc7QUFNSCxNQUFNLE9BQU8sT0FBTztJQUNsQixPQUFPLEdBQWdCO1FBQ3JCLFNBQVMsRUFBRTtZQUNUO2dCQUNFLEdBQUcsRUFBRSxJQUFJO2dCQUNULFVBQVUsRUFBRSxNQUFNO2dCQUNsQixlQUFlLEVBQUUsTUFBTTtnQkFDdkIscUJBQXFCLEVBQUUsR0FBRzthQUMzQjtZQUNEO2dCQUNFLEdBQUcsRUFBRSxJQUFJO2dCQUNULFVBQVUsRUFBRSxNQUFNO2dCQUNsQixlQUFlLEVBQUUsTUFBTTtnQkFDdkIscUJBQXFCLEVBQUUsR0FBRzthQUMzQjtZQUNEO2dCQUNFLEdBQUcsRUFBRSxJQUFJO2dCQUNULFVBQVUsRUFBRSxNQUFNO2dCQUNsQixlQUFlLEVBQUUsTUFBTTthQUN4QjtTQUNGO1FBQ0QsWUFBWSxFQUFFO1lBQ1osdUJBQXVCLEVBQUUsR0FBRztTQUM3QjtLQUNGLENBQUM7dUdBeEJTLE9BQU87MkdBQVAsT0FBTyxjQUZOLE1BQU07OzJGQUVQLE9BQU87a0JBSG5CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZHVjZXJDb2RlY09wdGlvbnMsIFJ0cEVuY29kaW5nUGFyYW1ldGVycyB9IGZyb20gJ21lZGlhc291cC1jbGllbnQvbGliL3R5cGVzJztcbmV4cG9ydCB0eXBlIFZQYXJhbXNUeXBlID0ge1xuICBlbmNvZGluZ3M6IFJ0cEVuY29kaW5nUGFyYW1ldGVyc1tdO1xuICBjb2RlY09wdGlvbnM/OiBQcm9kdWNlckNvZGVjT3B0aW9ucztcbn07XG5cbi8qKlxuICogVGhlIGBWUGFyYW1zYCBzZXJ2aWNlIHByb3ZpZGVzIGVuY29kaW5nIHBhcmFtZXRlcnMgZm9yIHZpZGVvIGluIGEgbWVkaWEgc2Vzc2lvbiB1c2luZyB0aGUgTWVkaWFzb3VwIGxpYnJhcnkuXG4gKiBJdCBpbmNsdWRlcyBhIGRlZmF1bHQgY29uZmlndXJhdGlvbiBmb3IgUlRQIGVuY29kaW5nIHBhcmFtZXRlcnMgb3B0aW1pemVkIGZvciB2aWRlbyBzdHJlYW1pbmcuXG4gKlxuICogQHNlcnZpY2VcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBWUGFyYW1zIH0gZnJvbSAnLi9wYXRoL3RvL3YtcGFyYW1zLnNlcnZpY2UnO1xuICpcbiAqIGNvbnN0cnVjdG9yKHByaXZhdGUgdlBhcmFtc1NlcnZpY2U6IFZQYXJhbXMpIHtcbiAqICAgY29uc29sZS5sb2codGhpcy52UGFyYW1zU2VydmljZS52UGFyYW1zKTtcbiAqIH1cbiAqIGBgYFxuICpcbiAqIEB0eXBlZGVmIFZQYXJhbXNUeXBlXG4gKiBAcHJvcGVydHkge1J0cEVuY29kaW5nUGFyYW1ldGVyc1tdfSBlbmNvZGluZ3MgLSBBcnJheSBvZiBSVFAgZW5jb2RpbmcgcGFyYW1ldGVycyBmb3IgdmlkZW8uXG4gKiBAcHJvcGVydHkge1Byb2R1Y2VyQ29kZWNPcHRpb25zfSBbY29kZWNPcHRpb25zXSAtIE9wdGlvbmFsIGNvZGVjIG9wdGlvbnMgZm9yIHRoZSB2aWRlbyBwcm9kdWNlci5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgdlBhcmFtczogVlBhcmFtc1R5cGUgPSB7XG4gKiAgIGVuY29kaW5nczogW1xuICogICAgIHtcbiAqICAgICAgIHJpZDogJ3IzJyxcbiAqICAgICAgIG1heEJpdHJhdGU6IDIwMDAwMCwgLy8gTWF4IGJpdHJhdGUgZm9yIHRoaXMgZW5jb2RpbmcgKGluIGJwcylcbiAqICAgICAgIHNjYWxhYmlsaXR5TW9kZTogJ0wxVDMnLCAvLyBTY2FsYWJpbGl0eSBtb2RlIGZvciBlbmNvZGluZ1xuICogICAgICAgc2NhbGVSZXNvbHV0aW9uRG93bkJ5OiA0LjAsIC8vIFNjYWxlIGRvd24gcmVzb2x1dGlvbiBieSB0aGlzIGZhY3RvclxuICogICAgIH0sXG4gKiAgICAge1xuICogICAgICAgcmlkOiAncjQnLFxuICogICAgICAgbWF4Qml0cmF0ZTogNDAwMDAwLFxuICogICAgICAgc2NhbGFiaWxpdHlNb2RlOiAnTDFUMycsXG4gKiAgICAgICBzY2FsZVJlc29sdXRpb25Eb3duQnk6IDIuMCxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIHJpZDogJ3I1JyxcbiAqICAgICAgIG1heEJpdHJhdGU6IDgwMDAwMCxcbiAqICAgICAgIHNjYWxhYmlsaXR5TW9kZTogJ0wxVDMnLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiAgIGNvZGVjT3B0aW9uczoge1xuICogICAgIHZpZGVvR29vZ2xlU3RhcnRCaXRyYXRlOiAzMjAsIC8vIEluaXRpYWwgYml0cmF0ZSBmb3IgdGhlIEdvb2dsZSBjb2RlY1xuICogICB9LFxuICogfTtcbiAqXG4gKiBAcmVtYXJrc1xuICogVGhlIGRlZmF1bHQgYHZQYXJhbXNgIGluY2x1ZGVzIG11bHRpcGxlIGVuY29kaW5nIGNvbmZpZ3VyYXRpb25zIHdpdGggZGlmZmVyZW50IG1heGltdW0gYml0cmF0ZXMsXG4gKiBhbGxvd2luZyBmb3IgYWRhcHRpdmUgc3RyZWFtaW5nIGJhc2VkIG9uIG5ldHdvcmsgY29uZGl0aW9ucyBhbmQgcGFydGljaXBhbnQgY2FwYWJpbGl0aWVzLlxuICpcbiAqIEByZXR1cm5zIHtWUGFyYW1zVHlwZX0gVGhlIHZpZGVvIHBhcmFtZXRlcnMgZm9yIHVzZSBpbiB2aWRlbyBwcm9kdWNlciBjb25maWd1cmF0aW9uLlxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFZQYXJhbXMge1xuICB2UGFyYW1zOiBWUGFyYW1zVHlwZSA9IHtcbiAgICBlbmNvZGluZ3M6IFtcbiAgICAgIHtcbiAgICAgICAgcmlkOiAncjMnLFxuICAgICAgICBtYXhCaXRyYXRlOiAyMDAwMDAsXG4gICAgICAgIHNjYWxhYmlsaXR5TW9kZTogJ0wxVDMnLFxuICAgICAgICBzY2FsZVJlc29sdXRpb25Eb3duQnk6IDQuMCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJpZDogJ3I0JyxcbiAgICAgICAgbWF4Qml0cmF0ZTogNDAwMDAwLFxuICAgICAgICBzY2FsYWJpbGl0eU1vZGU6ICdMMVQzJyxcbiAgICAgICAgc2NhbGVSZXNvbHV0aW9uRG93bkJ5OiAyLjAsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICByaWQ6ICdyNScsXG4gICAgICAgIG1heEJpdHJhdGU6IDgwMDAwMCxcbiAgICAgICAgc2NhbGFiaWxpdHlNb2RlOiAnTDFUMycsXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29kZWNPcHRpb25zOiB7XG4gICAgICB2aWRlb0dvb2dsZVN0YXJ0Qml0cmF0ZTogMzIwLFxuICAgIH0sXG4gIH07XG59XG4iXX0=
@@ -1,5 +1,51 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * The `VideoCaptureConstraints` service provides various video capture constraints
5
+ * including resolution and frame rate settings for different display sizes (landscape, portrait, and neutral).
6
+ *
7
+ * @service
8
+ * @example
9
+ * ```typescript
10
+ * import { VideoCaptureConstraints } from './path/to/video-capture-constraints.service';
11
+ *
12
+ * constructor(private videoConstraints: VideoCaptureConstraints) {
13
+ * console.log(this.videoConstraints.hdCons); // Access HD constraints
14
+ * }
15
+ * ```
16
+ *
17
+ * @remarks
18
+ * This service contains predefined constraints that can be used for video capture
19
+ * settings based on the desired quality and aspect ratio. These constraints can
20
+ * be applied when requesting media streams from the user's camera.
21
+ *
22
+ * @property {Object} QnHDCons - Video capture constraints for QnHD resolution (320x180).
23
+ * @property {Object} sdCons - Video capture constraints for SD resolution (640x360).
24
+ * @property {Object} hdCons - Video capture constraints for HD resolution (1280x720).
25
+ * @property {Object} fhdCons - Video capture constraints for FHD resolution (1920x1080).
26
+ * @property {Object} qhdCons - Video capture constraints for QHD resolution (2560x1440).
27
+ *
28
+ * @property {Object} QnHDConsPort - Video capture constraints for QnHD resolution in portrait mode.
29
+ * @property {Object} sdConsPort - Video capture constraints for SD resolution in portrait mode.
30
+ * @property {Object} hdConsPort - Video capture constraints for HD resolution in portrait mode.
31
+ * @property {Object} fhdConsPort - Video capture constraints for FHD resolution in portrait mode.
32
+ * @property {Object} qhdConsPort - Video capture constraints for QHD resolution in portrait mode.
33
+ *
34
+ * @property {Object} QnHDConsNeu - Video capture constraints for QnHD resolution in neutral mode.
35
+ * @property {Object} sdConsNeu - Video capture constraints for SD resolution in neutral mode.
36
+ * @property {Object} hdConsNeu - Video capture constraints for HD resolution in neutral mode.
37
+ * @property {Object} fhdConsNeu - Video capture constraints for FHD resolution in neutral mode.
38
+ * @property {Object} qhdConsNeu - Video capture constraints for QnHD resolution in neutral mode.
39
+ *
40
+ * @property {number} QnHDFrameRate - Frame rate for QnHD video capture (5 FPS).
41
+ * @property {number} sdFrameRate - Frame rate for SD video capture (10 FPS).
42
+ * @property {number} hdFrameRate - Frame rate for HD video capture (15 FPS).
43
+ * @property {number} fhdFrameRate - Frame rate for FHD video capture (20 FPS).
44
+ * @property {number} qhdFrameRate - Frame rate for QHD video capture (30 FPS).
45
+ * @property {number} screenFrameRate - Frame rate for screen capture (30 FPS).
46
+ *
47
+ * @returns {VideoCaptureConstraints} The video capture constraints for use in media requests.
48
+ */
3
49
  export class VideoCaptureConstraints {
4
50
  // Landscape display sizes
5
51
  QnHDCons = { width: { ideal: 320 }, height: { ideal: 180 } };
@@ -35,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
35
81
  providedIn: 'root',
36
82
  }]
37
83
  }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8tY2FwdHVyZS1jb25zdHJhaW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWFzZnUtYW5ndWxhci9zcmMvbGliL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvdmlkZW8tY2FwdHVyZS1jb25zdHJhaW50cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsMEJBQTBCO0lBQzFCLFFBQVEsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUM3RCxNQUFNLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDM0QsTUFBTSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQzVELE9BQU8sR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUM5RCxPQUFPLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFFOUQseUJBQXlCO0lBQ3pCLFlBQVksR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNqRSxVQUFVLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDL0QsVUFBVSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ2hFLFdBQVcsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNsRSxXQUFXLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFFbEUsaUNBQWlDO0lBQ2pDLFdBQVcsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNoRSxTQUFTLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDOUQsU0FBUyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQzlELFVBQVUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNqRSxVQUFVLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFFakUsZ0NBQWdDO0lBQ2hDLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFDbEIsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNqQixXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDbEIsWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUNsQixlQUFlLEdBQUcsRUFBRSxDQUFDO3VHQTVCVix1QkFBdUI7MkdBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzsyRkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVmlkZW9DYXB0dXJlQ29uc3RyYWludHMge1xuICAvLyBMYW5kc2NhcGUgZGlzcGxheSBzaXplc1xuICBRbkhEQ29ucyA9IHsgd2lkdGg6IHsgaWRlYWw6IDMyMCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDE4MCB9IH07XG4gIHNkQ29ucyA9IHsgd2lkdGg6IHsgaWRlYWw6IDY0MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDM2MCB9IH07XG4gIGhkQ29ucyA9IHsgd2lkdGg6IHsgaWRlYWw6IDEyODAgfSwgaGVpZ2h0OiB7IGlkZWFsOiA3MjAgfSB9O1xuICBmaGRDb25zID0geyB3aWR0aDogeyBpZGVhbDogMTkyMCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDEwODAgfSB9O1xuICBxaGRDb25zID0geyB3aWR0aDogeyBpZGVhbDogMjU2MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDE0NDAgfSB9O1xuXG4gIC8vIFBvcnRyYWl0IGRpc3BsYXkgc2l6ZXNcbiAgUW5IRENvbnNQb3J0ID0geyB3aWR0aDogeyBpZGVhbDogMTgwIH0sIGhlaWdodDogeyBpZGVhbDogMzIwIH0gfTtcbiAgc2RDb25zUG9ydCA9IHsgd2lkdGg6IHsgaWRlYWw6IDM2MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDY0MCB9IH07XG4gIGhkQ29uc1BvcnQgPSB7IHdpZHRoOiB7IGlkZWFsOiA3MjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAxMjgwIH0gfTtcbiAgZmhkQ29uc1BvcnQgPSB7IHdpZHRoOiB7IGlkZWFsOiAxMDgwIH0sIGhlaWdodDogeyBpZGVhbDogMTkyMCB9IH07XG4gIHFoZENvbnNQb3J0ID0geyB3aWR0aDogeyBpZGVhbDogMTQ0MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDI1NjAgfSB9O1xuXG4gIC8vIE5ldXRyYWwgKFNxdWFyZSkgZGlzcGxheSBzaXplc1xuICBRbkhEQ29uc05ldSA9IHsgd2lkdGg6IHsgaWRlYWw6IDI0MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDI0MCB9IH07XG4gIHNkQ29uc05ldSA9IHsgd2lkdGg6IHsgaWRlYWw6IDQ4MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDQ4MCB9IH07XG4gIGhkQ29uc05ldSA9IHsgd2lkdGg6IHsgaWRlYWw6IDk2MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDk2MCB9IH07XG4gIGZoZENvbnNOZXUgPSB7IHdpZHRoOiB7IGlkZWFsOiAxNDQwIH0sIGhlaWdodDogeyBpZGVhbDogMTQ0MCB9IH07XG4gIHFoZENvbnNOZXUgPSB7IHdpZHRoOiB7IGlkZWFsOiAxOTIwIH0sIGhlaWdodDogeyBpZGVhbDogMTkyMCB9IH07XG5cbiAgLy8gRnJhbWUgcmF0ZXMgZm9yIHZpZGVvIGNhcHR1cmVcbiAgUW5IREZyYW1lUmF0ZSA9IDU7XG4gIHNkRnJhbWVSYXRlID0gMTA7XG4gIGhkRnJhbWVSYXRlID0gMTU7XG4gIGZoZEZyYW1lUmF0ZSA9IDIwO1xuICBxaGRGcmFtZVJhdGUgPSAzMDtcbiAgc2NyZWVuRnJhbWVSYXRlID0gMzA7XG59XG4iXX0=
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8tY2FwdHVyZS1jb25zdHJhaW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWFzZnUtYW5ndWxhci9zcmMvbGliL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvdmlkZW8tY2FwdHVyZS1jb25zdHJhaW50cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Q0c7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLDBCQUEwQjtJQUMxQixRQUFRLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDN0QsTUFBTSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQzNELE1BQU0sR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUM1RCxPQUFPLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFDOUQsT0FBTyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBRTlELHlCQUF5QjtJQUN6QixZQUFZLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDakUsVUFBVSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQy9ELFVBQVUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNoRSxXQUFXLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFDbEUsV0FBVyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBRWxFLGlDQUFpQztJQUNqQyxXQUFXLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDaEUsU0FBUyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQzlELFNBQVMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUM5RCxVQUFVLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7SUFDakUsVUFBVSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBRWpFLGdDQUFnQztJQUNoQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLFdBQVcsR0FBRyxFQUFFLENBQUM7SUFDakIsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNqQixZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDbEIsZUFBZSxHQUFHLEVBQUUsQ0FBQzt1R0E1QlYsdUJBQXVCOzJHQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7MkZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBUaGUgYFZpZGVvQ2FwdHVyZUNvbnN0cmFpbnRzYCBzZXJ2aWNlIHByb3ZpZGVzIHZhcmlvdXMgdmlkZW8gY2FwdHVyZSBjb25zdHJhaW50c1xuICogaW5jbHVkaW5nIHJlc29sdXRpb24gYW5kIGZyYW1lIHJhdGUgc2V0dGluZ3MgZm9yIGRpZmZlcmVudCBkaXNwbGF5IHNpemVzIChsYW5kc2NhcGUsIHBvcnRyYWl0LCBhbmQgbmV1dHJhbCkuXG4gKlxuICogQHNlcnZpY2VcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBWaWRlb0NhcHR1cmVDb25zdHJhaW50cyB9IGZyb20gJy4vcGF0aC90by92aWRlby1jYXB0dXJlLWNvbnN0cmFpbnRzLnNlcnZpY2UnO1xuICpcbiAqIGNvbnN0cnVjdG9yKHByaXZhdGUgdmlkZW9Db25zdHJhaW50czogVmlkZW9DYXB0dXJlQ29uc3RyYWludHMpIHtcbiAqICAgY29uc29sZS5sb2codGhpcy52aWRlb0NvbnN0cmFpbnRzLmhkQ29ucyk7IC8vIEFjY2VzcyBIRCBjb25zdHJhaW50c1xuICogfVxuICogYGBgXG4gKlxuICogQHJlbWFya3NcbiAqIFRoaXMgc2VydmljZSBjb250YWlucyBwcmVkZWZpbmVkIGNvbnN0cmFpbnRzIHRoYXQgY2FuIGJlIHVzZWQgZm9yIHZpZGVvIGNhcHR1cmVcbiAqIHNldHRpbmdzIGJhc2VkIG9uIHRoZSBkZXNpcmVkIHF1YWxpdHkgYW5kIGFzcGVjdCByYXRpby4gVGhlc2UgY29uc3RyYWludHMgY2FuXG4gKiBiZSBhcHBsaWVkIHdoZW4gcmVxdWVzdGluZyBtZWRpYSBzdHJlYW1zIGZyb20gdGhlIHVzZXIncyBjYW1lcmEuXG4gKlxuICogQHByb3BlcnR5IHtPYmplY3R9IFFuSERDb25zIC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgUW5IRCByZXNvbHV0aW9uICgzMjB4MTgwKS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBzZENvbnMgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBTRCByZXNvbHV0aW9uICg2NDB4MzYwKS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBoZENvbnMgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBIRCByZXNvbHV0aW9uICgxMjgweDcyMCkuXG4gKiBAcHJvcGVydHkge09iamVjdH0gZmhkQ29ucyAtIFZpZGVvIGNhcHR1cmUgY29uc3RyYWludHMgZm9yIEZIRCByZXNvbHV0aW9uICgxOTIweDEwODApLlxuICogQHByb3BlcnR5IHtPYmplY3R9IHFoZENvbnMgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBRSEQgcmVzb2x1dGlvbiAoMjU2MHgxNDQwKS5cbiAqXG4gKiBAcHJvcGVydHkge09iamVjdH0gUW5IRENvbnNQb3J0IC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgUW5IRCByZXNvbHV0aW9uIGluIHBvcnRyYWl0IG1vZGUuXG4gKiBAcHJvcGVydHkge09iamVjdH0gc2RDb25zUG9ydCAtIFZpZGVvIGNhcHR1cmUgY29uc3RyYWludHMgZm9yIFNEIHJlc29sdXRpb24gaW4gcG9ydHJhaXQgbW9kZS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBoZENvbnNQb3J0IC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgSEQgcmVzb2x1dGlvbiBpbiBwb3J0cmFpdCBtb2RlLlxuICogQHByb3BlcnR5IHtPYmplY3R9IGZoZENvbnNQb3J0IC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgRkhEIHJlc29sdXRpb24gaW4gcG9ydHJhaXQgbW9kZS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBxaGRDb25zUG9ydCAtIFZpZGVvIGNhcHR1cmUgY29uc3RyYWludHMgZm9yIFFIRCByZXNvbHV0aW9uIGluIHBvcnRyYWl0IG1vZGUuXG4gKlxuICogQHByb3BlcnR5IHtPYmplY3R9IFFuSERDb25zTmV1IC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgUW5IRCByZXNvbHV0aW9uIGluIG5ldXRyYWwgbW9kZS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBzZENvbnNOZXUgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBTRCByZXNvbHV0aW9uIGluIG5ldXRyYWwgbW9kZS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBoZENvbnNOZXUgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBIRCByZXNvbHV0aW9uIGluIG5ldXRyYWwgbW9kZS5cbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBmaGRDb25zTmV1IC0gVmlkZW8gY2FwdHVyZSBjb25zdHJhaW50cyBmb3IgRkhEIHJlc29sdXRpb24gaW4gbmV1dHJhbCBtb2RlLlxuICogQHByb3BlcnR5IHtPYmplY3R9IHFoZENvbnNOZXUgLSBWaWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciBRbkhEIHJlc29sdXRpb24gaW4gbmV1dHJhbCBtb2RlLlxuICpcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBRbkhERnJhbWVSYXRlIC0gRnJhbWUgcmF0ZSBmb3IgUW5IRCB2aWRlbyBjYXB0dXJlICg1IEZQUykuXG4gKiBAcHJvcGVydHkge251bWJlcn0gc2RGcmFtZVJhdGUgLSBGcmFtZSByYXRlIGZvciBTRCB2aWRlbyBjYXB0dXJlICgxMCBGUFMpLlxuICogQHByb3BlcnR5IHtudW1iZXJ9IGhkRnJhbWVSYXRlIC0gRnJhbWUgcmF0ZSBmb3IgSEQgdmlkZW8gY2FwdHVyZSAoMTUgRlBTKS5cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBmaGRGcmFtZVJhdGUgLSBGcmFtZSByYXRlIGZvciBGSEQgdmlkZW8gY2FwdHVyZSAoMjAgRlBTKS5cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBxaGRGcmFtZVJhdGUgLSBGcmFtZSByYXRlIGZvciBRSEQgdmlkZW8gY2FwdHVyZSAoMzAgRlBTKS5cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBzY3JlZW5GcmFtZVJhdGUgLSBGcmFtZSByYXRlIGZvciBzY3JlZW4gY2FwdHVyZSAoMzAgRlBTKS5cbiAqXG4gKiBAcmV0dXJucyB7VmlkZW9DYXB0dXJlQ29uc3RyYWludHN9IFRoZSB2aWRlbyBjYXB0dXJlIGNvbnN0cmFpbnRzIGZvciB1c2UgaW4gbWVkaWEgcmVxdWVzdHMuXG4gKi9cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFZpZGVvQ2FwdHVyZUNvbnN0cmFpbnRzIHtcbiAgLy8gTGFuZHNjYXBlIGRpc3BsYXkgc2l6ZXNcbiAgUW5IRENvbnMgPSB7IHdpZHRoOiB7IGlkZWFsOiAzMjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAxODAgfSB9O1xuICBzZENvbnMgPSB7IHdpZHRoOiB7IGlkZWFsOiA2NDAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAzNjAgfSB9O1xuICBoZENvbnMgPSB7IHdpZHRoOiB7IGlkZWFsOiAxMjgwIH0sIGhlaWdodDogeyBpZGVhbDogNzIwIH0gfTtcbiAgZmhkQ29ucyA9IHsgd2lkdGg6IHsgaWRlYWw6IDE5MjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAxMDgwIH0gfTtcbiAgcWhkQ29ucyA9IHsgd2lkdGg6IHsgaWRlYWw6IDI1NjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAxNDQwIH0gfTtcblxuICAvLyBQb3J0cmFpdCBkaXNwbGF5IHNpemVzXG4gIFFuSERDb25zUG9ydCA9IHsgd2lkdGg6IHsgaWRlYWw6IDE4MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDMyMCB9IH07XG4gIHNkQ29uc1BvcnQgPSB7IHdpZHRoOiB7IGlkZWFsOiAzNjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiA2NDAgfSB9O1xuICBoZENvbnNQb3J0ID0geyB3aWR0aDogeyBpZGVhbDogNzIwIH0sIGhlaWdodDogeyBpZGVhbDogMTI4MCB9IH07XG4gIGZoZENvbnNQb3J0ID0geyB3aWR0aDogeyBpZGVhbDogMTA4MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDE5MjAgfSB9O1xuICBxaGRDb25zUG9ydCA9IHsgd2lkdGg6IHsgaWRlYWw6IDE0NDAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAyNTYwIH0gfTtcblxuICAvLyBOZXV0cmFsIChTcXVhcmUpIGRpc3BsYXkgc2l6ZXNcbiAgUW5IRENvbnNOZXUgPSB7IHdpZHRoOiB7IGlkZWFsOiAyNDAgfSwgaGVpZ2h0OiB7IGlkZWFsOiAyNDAgfSB9O1xuICBzZENvbnNOZXUgPSB7IHdpZHRoOiB7IGlkZWFsOiA0ODAgfSwgaGVpZ2h0OiB7IGlkZWFsOiA0ODAgfSB9O1xuICBoZENvbnNOZXUgPSB7IHdpZHRoOiB7IGlkZWFsOiA5NjAgfSwgaGVpZ2h0OiB7IGlkZWFsOiA5NjAgfSB9O1xuICBmaGRDb25zTmV1ID0geyB3aWR0aDogeyBpZGVhbDogMTQ0MCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDE0NDAgfSB9O1xuICBxaGRDb25zTmV1ID0geyB3aWR0aDogeyBpZGVhbDogMTkyMCB9LCBoZWlnaHQ6IHsgaWRlYWw6IDE5MjAgfSB9O1xuXG4gIC8vIEZyYW1lIHJhdGVzIGZvciB2aWRlbyBjYXB0dXJlXG4gIFFuSERGcmFtZVJhdGUgPSA1O1xuICBzZEZyYW1lUmF0ZSA9IDEwO1xuICBoZEZyYW1lUmF0ZSA9IDE1O1xuICBmaGRGcmFtZVJhdGUgPSAyMDtcbiAgcWhkRnJhbWVSYXRlID0gMzA7XG4gIHNjcmVlbkZyYW1lUmF0ZSA9IDMwO1xufVxuIl19
@@ -1,11 +1,17 @@
1
1
  /**
2
2
  * Pauses the execution for a specified number of milliseconds.
3
3
  *
4
- * @param {SleepOptions} options - An object containing the sleep duration.
5
- * @param {number} options.ms - The number of milliseconds to sleep.
6
- * @returns {Promise<void>} A promise that resolves after the specified duration.
4
+ * @param {SleepOptions} options - Contains the duration to pause.
5
+ * @param {number} options.ms - Number of milliseconds to delay.
6
+ * @returns {Promise<void>} Resolves after the specified duration.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * await sleep({ ms: 2000 });
11
+ * // Pauses execution for 2 seconds
12
+ * ```
7
13
  */
8
14
  export function sleep({ ms }) {
9
15
  return new Promise((resolve) => setTimeout(resolve, ms));
10
16
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xlZXAudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3V0aWxzL3NsZWVwLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7OztHQU1HO0FBRUgsTUFBTSxVQUFVLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBZ0I7SUFDeEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNsZWVwT3B0aW9ucyB7XG4gIG1zOiBudW1iZXI7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIFNsZWVwVHlwZSA9IChvcHRpb25zOiBTbGVlcE9wdGlvbnMpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogUGF1c2VzIHRoZSBleGVjdXRpb24gZm9yIGEgc3BlY2lmaWVkIG51bWJlciBvZiBtaWxsaXNlY29uZHMuXG4gKlxuICogQHBhcmFtIHtTbGVlcE9wdGlvbnN9IG9wdGlvbnMgLSBBbiBvYmplY3QgY29udGFpbmluZyB0aGUgc2xlZXAgZHVyYXRpb24uXG4gKiBAcGFyYW0ge251bWJlcn0gb3B0aW9ucy5tcyAtIFRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHNsZWVwLlxuICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIGFmdGVyIHRoZSBzcGVjaWZpZWQgZHVyYXRpb24uXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHNsZWVwKHsgbXMgfTogU2xlZXBPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtcykpO1xufVxuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xlZXAudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3V0aWxzL3NsZWVwLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7Ozs7Ozs7OztHQVlHO0FBR0gsTUFBTSxVQUFVLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBZ0I7SUFDeEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNsZWVwT3B0aW9ucyB7XG4gIG1zOiBudW1iZXI7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIFNsZWVwVHlwZSA9IChvcHRpb25zOiBTbGVlcE9wdGlvbnMpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogUGF1c2VzIHRoZSBleGVjdXRpb24gZm9yIGEgc3BlY2lmaWVkIG51bWJlciBvZiBtaWxsaXNlY29uZHMuXG4gKlxuICogQHBhcmFtIHtTbGVlcE9wdGlvbnN9IG9wdGlvbnMgLSBDb250YWlucyB0aGUgZHVyYXRpb24gdG8gcGF1c2UuXG4gKiBAcGFyYW0ge251bWJlcn0gb3B0aW9ucy5tcyAtIE51bWJlciBvZiBtaWxsaXNlY29uZHMgdG8gZGVsYXkuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gUmVzb2x2ZXMgYWZ0ZXIgdGhlIHNwZWNpZmllZCBkdXJhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogYXdhaXQgc2xlZXAoeyBtczogMjAwMCB9KTtcbiAqIC8vIFBhdXNlcyBleGVjdXRpb24gZm9yIDIgc2Vjb25kc1xuICogYGBgXG4gKi9cblxuXG5leHBvcnQgZnVuY3Rpb24gc2xlZXAoeyBtcyB9OiBTbGVlcE9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSk7XG59XG4iXX0=
@@ -1,5 +1,26 @@
1
1
  import { Injectable, Input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * SoundPlayer service for playing a sound from a provided URL.
5
+ *
6
+ * @class SoundPlayer
7
+ * @implements {OnInit}
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const soundUrl = 'https://example.com/sound.mp3';
12
+ * const soundPlayer = new SoundPlayer();
13
+ * soundPlayer.playSound({ soundUrl });
14
+ * ```
15
+ *
16
+ * ### Details
17
+ * - **soundUrl**: URL to the sound file that will be played.
18
+ * - **playSound**: Initiates the audio playback.
19
+ * - **ngOnInit**: Automatically triggers sound playback if `soundUrl` is set.
20
+ *
21
+ * @param {SoundPlayerOptions} options - Contains the URL of the sound to play.
22
+ * @returns {void} - No return; sound is played asynchronously.
23
+ */
3
24
  /**
4
25
  * Plays a sound from a given URL.
5
26
  * @class
@@ -39,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
39
60
  }], propDecorators: { soundUrl: [{
40
61
  type: Input
41
62
  }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291bmQtcGxheWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy91dGlscy9zb3VuZC1wbGF5ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBQ2IsUUFBUSxDQUFxQjtJQUV0QyxRQUFRO1FBQ04sTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBRTdCLElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDOUMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQXNCO1FBQ3hDLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO3VHQWxCVSxXQUFXOzJHQUFYLFdBQVcsY0FkVixNQUFNOzsyRkFjUCxXQUFXO2tCQWZ2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs4QkFjVSxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0IGludGVyZmFjZSBTb3VuZFBsYXllck9wdGlvbnMge1xuICBzb3VuZFVybDogc3RyaW5nO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBTb3VuZFBsYXllclR5cGUgPSAob3B0aW9uczogU291bmRQbGF5ZXJPcHRpb25zKSA9PiB2b2lkO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5cbi8qKlxuICogUGxheXMgYSBzb3VuZCBmcm9tIGEgZ2l2ZW4gVVJMLlxuICogQGNsYXNzXG4gKiBAaW1wbGVtZW50cyB7T25Jbml0fVxuICogQHBhcmFtIHtzdHJpbmd9IHNvdW5kVXJsIC0gVGhlIFVSTCBvZiB0aGUgc291bmQgdG8gcGxheS5cbiAqIEByZXR1cm5zIHt2b2lkfVxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHNvdW5kVXJsID0gJ2h0dHBzOi8vZXhhbXBsZS5jb20vc291bmQubXAzJztcbiAqIGNvbnN0IHNvdW5kUGxheWVyID0gbmV3IFNvdW5kUGxheWVyKCk7XG4gKiBzb3VuZFBsYXllci5wbGF5U291bmQoeyBzb3VuZFVybCB9KTtcbiAqL1xuZXhwb3J0IGNsYXNzIFNvdW5kUGxheWVyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgc291bmRVcmw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBzaG91bGRQbGF5U291bmQgPSB0cnVlO1xuXG4gICAgaWYgKHNob3VsZFBsYXlTb3VuZCkge1xuICAgICAgaWYgKHRoaXMuc291bmRVcmwpIHtcbiAgICAgICAgdGhpcy5wbGF5U291bmQoeyBzb3VuZFVybDogdGhpcy5zb3VuZFVybCB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdTb3VuZCBVUkwgaXMgbm90IGRlZmluZWQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwbGF5U291bmQoeyBzb3VuZFVybCB9OiBTb3VuZFBsYXllck9wdGlvbnMpOiB2b2lkIHtcbiAgICBjb25zdCBhdWRpbyA9IG5ldyBBdWRpbyhzb3VuZFVybCk7XG4gICAgYXVkaW8ucGxheSgpLmNhdGNoKChlcnJvcikgPT4gY29uc29sZS5lcnJvcignRXJyb3IgcGxheWluZyBzb3VuZDonLCBlcnJvcikpO1xuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291bmQtcGxheWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy91dGlscy9zb3VuZC1wbGF5ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFRMUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBT0g7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sT0FBTyxXQUFXO0lBQ2IsUUFBUSxDQUFxQjtJQUV0QyxRQUFRO1FBQ04sTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBRTdCLElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDOUMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQXNCO1FBQ3hDLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO3VHQWxCVSxXQUFXOzJHQUFYLFdBQVcsY0FkVixNQUFNOzsyRkFjUCxXQUFXO2tCQWZ2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs4QkFjVSxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0IGludGVyZmFjZSBTb3VuZFBsYXllck9wdGlvbnMge1xuICBzb3VuZFVybDogc3RyaW5nO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBTb3VuZFBsYXllclR5cGUgPSAob3B0aW9uczogU291bmRQbGF5ZXJPcHRpb25zKSA9PiB2b2lkO1xuXG4vKipcbiAqIFNvdW5kUGxheWVyIHNlcnZpY2UgZm9yIHBsYXlpbmcgYSBzb3VuZCBmcm9tIGEgcHJvdmlkZWQgVVJMLlxuICpcbiAqIEBjbGFzcyBTb3VuZFBsYXllclxuICogQGltcGxlbWVudHMge09uSW5pdH1cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgc291bmRVcmwgPSAnaHR0cHM6Ly9leGFtcGxlLmNvbS9zb3VuZC5tcDMnO1xuICogY29uc3Qgc291bmRQbGF5ZXIgPSBuZXcgU291bmRQbGF5ZXIoKTtcbiAqIHNvdW5kUGxheWVyLnBsYXlTb3VuZCh7IHNvdW5kVXJsIH0pO1xuICogYGBgXG4gKlxuICogIyMjIERldGFpbHNcbiAqIC0gKipzb3VuZFVybCoqOiBVUkwgdG8gdGhlIHNvdW5kIGZpbGUgdGhhdCB3aWxsIGJlIHBsYXllZC5cbiAqIC0gKipwbGF5U291bmQqKjogSW5pdGlhdGVzIHRoZSBhdWRpbyBwbGF5YmFjay5cbiAqIC0gKipuZ09uSW5pdCoqOiBBdXRvbWF0aWNhbGx5IHRyaWdnZXJzIHNvdW5kIHBsYXliYWNrIGlmIGBzb3VuZFVybGAgaXMgc2V0LlxuICpcbiAqIEBwYXJhbSB7U291bmRQbGF5ZXJPcHRpb25zfSBvcHRpb25zIC0gQ29udGFpbnMgdGhlIFVSTCBvZiB0aGUgc291bmQgdG8gcGxheS5cbiAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybjsgc291bmQgaXMgcGxheWVkIGFzeW5jaHJvbm91c2x5LlxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuXG4vKipcbiAqIFBsYXlzIGEgc291bmQgZnJvbSBhIGdpdmVuIFVSTC5cbiAqIEBjbGFzc1xuICogQGltcGxlbWVudHMge09uSW5pdH1cbiAqIEBwYXJhbSB7c3RyaW5nfSBzb3VuZFVybCAtIFRoZSBVUkwgb2YgdGhlIHNvdW5kIHRvIHBsYXkuXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqIEBleGFtcGxlXG4gKiBjb25zdCBzb3VuZFVybCA9ICdodHRwczovL2V4YW1wbGUuY29tL3NvdW5kLm1wMyc7XG4gKiBjb25zdCBzb3VuZFBsYXllciA9IG5ldyBTb3VuZFBsYXllcigpO1xuICogc291bmRQbGF5ZXIucGxheVNvdW5kKHsgc291bmRVcmwgfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBTb3VuZFBsYXllciBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHNvdW5kVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3Qgc2hvdWxkUGxheVNvdW5kID0gdHJ1ZTtcblxuICAgIGlmIChzaG91bGRQbGF5U291bmQpIHtcbiAgICAgIGlmICh0aGlzLnNvdW5kVXJsKSB7XG4gICAgICAgIHRoaXMucGxheVNvdW5kKHsgc291bmRVcmw6IHRoaXMuc291bmRVcmwgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmxvZygnU291bmQgVVJMIGlzIG5vdCBkZWZpbmVkJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcGxheVNvdW5kKHsgc291bmRVcmwgfTogU291bmRQbGF5ZXJPcHRpb25zKTogdm9pZCB7XG4gICAgY29uc3QgYXVkaW8gPSBuZXcgQXVkaW8oc291bmRVcmwpO1xuICAgIGF1ZGlvLnBsYXkoKS5jYXRjaCgoZXJyb3IpID0+IGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHBsYXlpbmcgc291bmQ6JywgZXJyb3IpKTtcbiAgfVxufVxuIl19
@@ -1,5 +1,21 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Service to validate if a given string contains only alphanumeric characters.
5
+ *
6
+ * @class ValidateAlphanumeric
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const validator = new ValidateAlphanumeric();
11
+ * validator.validateAlphanumeric({ str: 'abc123' }).then(isValid => console.log(isValid)); // true
12
+ * validator.validateAlphanumeric({ str: 'abc 123!' }).then(isValid => console.log(isValid)); // false
13
+ * ```
14
+ *
15
+ * @param {ValidateAlphanumericOptions} options - Contains the string to validate.
16
+ * @param {string} options.str - The input string that needs to be validated.
17
+ * @returns {Promise<boolean>} - A promise resolving to `true` if the input string is alphanumeric, otherwise `false`.
18
+ */
3
19
  export class ValidateAlphanumeric {
4
20
  /**
5
21
  * Validates if the given string contains only alphanumeric characters.
@@ -30,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
30
46
  providedIn: 'root',
31
47
  }]
32
48
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtYWxwaGFudW1lcmljLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy91dGlscy92YWxpZGF0ZS1hbHBoYW51bWVyaWMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVczQyxNQUFNLE9BQU8sb0JBQW9CO0lBQy9COzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLEdBQUcsRUFBK0I7UUFDN0QsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUVqQixLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNDLElBQUksR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLElBQ0UsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLGdCQUFnQjtnQkFDN0MsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLG9CQUFvQjtnQkFDakQsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUMxQixDQUFDO2dCQUNELG9CQUFvQjtnQkFDcEIsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt1R0F2QlUsb0JBQW9COzJHQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGVBbHBoYW51bWVyaWNPcHRpb25zIHtcbiAgc3RyOiBzdHJpbmc7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIFZhbGlkYXRlQWxwaGFudW1lcmljVHlwZSA9IChvcHRpb25zOiBWYWxpZGF0ZUFscGhhbnVtZXJpY09wdGlvbnMpID0+IFByb21pc2U8Ym9vbGVhbj47XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBWYWxpZGF0ZUFscGhhbnVtZXJpYyB7XG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgaWYgdGhlIGdpdmVuIHN0cmluZyBjb250YWlucyBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge1ZhbGlkYXRlQWxwaGFudW1lcmljT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGNvbnRhaW5pbmcgdGhlIHN0cmluZyB0byB2YWxpZGF0ZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuc3RyIC0gVGhlIHN0cmluZyB0byBiZSB2YWxpZGF0ZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fSAtIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGB0cnVlYCBpZiB0aGUgc3RyaW5nIGlzIGFscGhhbnVtZXJpYywgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gICAqL1xuICBhc3luYyB2YWxpZGF0ZUFscGhhbnVtZXJpYyh7IHN0ciB9OiBWYWxpZGF0ZUFscGhhbnVtZXJpY09wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBsZXQgY29kZSwgaSwgbGVuO1xuXG4gICAgZm9yIChpID0gMCwgbGVuID0gc3RyLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb2RlID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICBpZiAoXG4gICAgICAgICEoY29kZSA+IDQ3ICYmIGNvZGUgPCA1OCkgJiYgLy8gbnVtZXJpYyAoMC05KVxuICAgICAgICAhKGNvZGUgPiA2NCAmJiBjb2RlIDwgOTEpICYmIC8vIHVwcGVyIGFscGhhIChBLVopXG4gICAgICAgICEoY29kZSA+IDk2ICYmIGNvZGUgPCAxMjMpXG4gICAgICApIHtcbiAgICAgICAgLy8gbG93ZXIgYWxwaGEgKGEteilcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtYWxwaGFudW1lcmljLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy91dGlscy92YWxpZGF0ZS1hbHBoYW51bWVyaWMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVEzQzs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFLSCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9COzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLEdBQUcsRUFBK0I7UUFDN0QsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUVqQixLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNDLElBQUksR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLElBQ0UsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLGdCQUFnQjtnQkFDN0MsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLG9CQUFvQjtnQkFDakQsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUMxQixDQUFDO2dCQUNELG9CQUFvQjtnQkFDcEIsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt1R0F2QlUsb0JBQW9COzJHQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGVBbHBoYW51bWVyaWNPcHRpb25zIHtcbiAgc3RyOiBzdHJpbmc7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIFZhbGlkYXRlQWxwaGFudW1lcmljVHlwZSA9IChvcHRpb25zOiBWYWxpZGF0ZUFscGhhbnVtZXJpY09wdGlvbnMpID0+IFByb21pc2U8Ym9vbGVhbj47XG5cbi8qKlxuICogU2VydmljZSB0byB2YWxpZGF0ZSBpZiBhIGdpdmVuIHN0cmluZyBjb250YWlucyBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLlxuICpcbiAqIEBjbGFzcyBWYWxpZGF0ZUFscGhhbnVtZXJpY1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB2YWxpZGF0b3IgPSBuZXcgVmFsaWRhdGVBbHBoYW51bWVyaWMoKTtcbiAqIHZhbGlkYXRvci52YWxpZGF0ZUFscGhhbnVtZXJpYyh7IHN0cjogJ2FiYzEyMycgfSkudGhlbihpc1ZhbGlkID0+IGNvbnNvbGUubG9nKGlzVmFsaWQpKTsgLy8gdHJ1ZVxuICogdmFsaWRhdG9yLnZhbGlkYXRlQWxwaGFudW1lcmljKHsgc3RyOiAnYWJjIDEyMyEnIH0pLnRoZW4oaXNWYWxpZCA9PiBjb25zb2xlLmxvZyhpc1ZhbGlkKSk7IC8vIGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ge1ZhbGlkYXRlQWxwaGFudW1lcmljT3B0aW9uc30gb3B0aW9ucyAtIENvbnRhaW5zIHRoZSBzdHJpbmcgdG8gdmFsaWRhdGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5zdHIgLSBUaGUgaW5wdXQgc3RyaW5nIHRoYXQgbmVlZHMgdG8gYmUgdmFsaWRhdGVkLlxuICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59IC0gQSBwcm9taXNlIHJlc29sdmluZyB0byBgdHJ1ZWAgaWYgdGhlIGlucHV0IHN0cmluZyBpcyBhbHBoYW51bWVyaWMsIG90aGVyd2lzZSBgZmFsc2VgLlxuICovXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBWYWxpZGF0ZUFscGhhbnVtZXJpYyB7XG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgaWYgdGhlIGdpdmVuIHN0cmluZyBjb250YWlucyBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge1ZhbGlkYXRlQWxwaGFudW1lcmljT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGNvbnRhaW5pbmcgdGhlIHN0cmluZyB0byB2YWxpZGF0ZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuc3RyIC0gVGhlIHN0cmluZyB0byBiZSB2YWxpZGF0ZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fSAtIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGB0cnVlYCBpZiB0aGUgc3RyaW5nIGlzIGFscGhhbnVtZXJpYywgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gICAqL1xuICBhc3luYyB2YWxpZGF0ZUFscGhhbnVtZXJpYyh7IHN0ciB9OiBWYWxpZGF0ZUFscGhhbnVtZXJpY09wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBsZXQgY29kZSwgaSwgbGVuO1xuXG4gICAgZm9yIChpID0gMCwgbGVuID0gc3RyLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb2RlID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICBpZiAoXG4gICAgICAgICEoY29kZSA+IDQ3ICYmIGNvZGUgPCA1OCkgJiYgLy8gbnVtZXJpYyAoMC05KVxuICAgICAgICAhKGNvZGUgPiA2NCAmJiBjb2RlIDwgOTEpICYmIC8vIHVwcGVyIGFscGhhIChBLVopXG4gICAgICAgICEoY29kZSA+IDk2ICYmIGNvZGUgPCAxMjMpXG4gICAgICApIHtcbiAgICAgICAgLy8gbG93ZXIgYWxwaGEgKGEteilcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
@@ -1,5 +1,23 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Service to toggle the visibility of a waiting modal.
5
+ *
6
+ * @param {LaunchWaitingOptions} options - The options to control the waiting modal visibility.
7
+ * @param {Function} options.updateIsWaitingModalVisible - Function to update the visibility of the waiting modal.
8
+ * @param {boolean} options.isWaitingModalVisible - Current visibility state of the waiting modal.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const launchWaitingService = new LaunchWaiting();
13
+ * launchWaitingService.launchWaiting({
14
+ * updateIsWaitingModalVisible: (isVisible) => console.log(`Modal is now ${isVisible ? 'visible' : 'hidden'}`),
15
+ * isWaitingModalVisible: false,
16
+ * });
17
+ * ```
18
+ *
19
+ * This example toggles the modal's visibility state, making it visible if it was hidden and vice versa.
20
+ */
3
21
  export class LaunchWaiting {
4
22
  /**
5
23
  * Toggles the visibility of the waiting modal.
@@ -20,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
20
38
  providedIn: 'root',
21
39
  }]
22
40
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXdhaXRpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3dhaXRpbmctbWV0aG9kcy9sYXVuY2gtd2FpdGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWTNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCOzs7OztPQUtHO0lBRUgsYUFBYSxDQUFDLEVBQ1osMkJBQTJCLEVBQzNCLHFCQUFxQixHQUNBO1FBQ3JCLCtCQUErQjtRQUMvQiwyQkFBMkIsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDdEQsQ0FBQzt1R0FkVSxhQUFhOzJHQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoV2FpdGluZ09wdGlvbnMge1xuICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGU6ICh2aXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuICBpc1dhaXRpbmdNb2RhbFZpc2libGU6IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIExhdW5jaFdhaXRpbmdUeXBlID0gKG9wdGlvbnM6IExhdW5jaFdhaXRpbmdPcHRpb25zKSA9PiB2b2lkO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGF1bmNoV2FpdGluZyB7XG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKlxuICAgKiBAcGFyYW0gdXBkYXRlSXNXYWl0aW5nTW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKiBAcGFyYW0gaXNXYWl0aW5nTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKi9cblxuICBsYXVuY2hXYWl0aW5nKHtcbiAgICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGUsXG4gICAgaXNXYWl0aW5nTW9kYWxWaXNpYmxlLFxuICB9OiBMYXVuY2hXYWl0aW5nT3B0aW9ucyk6IHZvaWQge1xuICAgIC8vIE9wZW4gb3IgY2xvc2UgdGhlIG1lbnUgbW9kYWxcbiAgICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGUoIWlzV2FpdGluZ01vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXdhaXRpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL3dhaXRpbmctbWV0aG9kcy9sYXVuY2gtd2FpdGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNDOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQU1ILE1BQU0sT0FBTyxhQUFhO0lBQ3hCOzs7OztPQUtHO0lBRUgsYUFBYSxDQUFDLEVBQ1osMkJBQTJCLEVBQzNCLHFCQUFxQixHQUNBO1FBQ3JCLCtCQUErQjtRQUMvQiwyQkFBMkIsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDdEQsQ0FBQzt1R0FkVSxhQUFhOzJHQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoV2FpdGluZ09wdGlvbnMge1xuICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGU6ICh2aXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuICBpc1dhaXRpbmdNb2RhbFZpc2libGU6IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIExhdW5jaFdhaXRpbmdUeXBlID0gKG9wdGlvbnM6IExhdW5jaFdhaXRpbmdPcHRpb25zKSA9PiB2b2lkO1xuXG4vKipcbiAqIFNlcnZpY2UgdG8gdG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIGEgd2FpdGluZyBtb2RhbC5cbiAqXG4gKiBAcGFyYW0ge0xhdW5jaFdhaXRpbmdPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gY29udHJvbCB0aGUgd2FpdGluZyBtb2RhbCB2aXNpYmlsaXR5LlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy51cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgb2YgdGhlIHdhaXRpbmcgbW9kYWwuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMuaXNXYWl0aW5nTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBsYXVuY2hXYWl0aW5nU2VydmljZSA9IG5ldyBMYXVuY2hXYWl0aW5nKCk7XG4gKiBsYXVuY2hXYWl0aW5nU2VydmljZS5sYXVuY2hXYWl0aW5nKHtcbiAqICAgdXBkYXRlSXNXYWl0aW5nTW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiBjb25zb2xlLmxvZyhgTW9kYWwgaXMgbm93ICR7aXNWaXNpYmxlID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YCksXG4gKiAgIGlzV2FpdGluZ01vZGFsVmlzaWJsZTogZmFsc2UsXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIFRoaXMgZXhhbXBsZSB0b2dnbGVzIHRoZSBtb2RhbCdzIHZpc2liaWxpdHkgc3RhdGUsIG1ha2luZyBpdCB2aXNpYmxlIGlmIGl0IHdhcyBoaWRkZW4gYW5kIHZpY2UgdmVyc2EuXG4gKi9cblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGF1bmNoV2FpdGluZyB7XG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKlxuICAgKiBAcGFyYW0gdXBkYXRlSXNXYWl0aW5nTW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKiBAcGFyYW0gaXNXYWl0aW5nTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSB3YWl0aW5nIG1vZGFsLlxuICAgKi9cblxuICBsYXVuY2hXYWl0aW5nKHtcbiAgICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGUsXG4gICAgaXNXYWl0aW5nTW9kYWxWaXNpYmxlLFxuICB9OiBMYXVuY2hXYWl0aW5nT3B0aW9ucyk6IHZvaWQge1xuICAgIC8vIE9wZW4gb3IgY2xvc2UgdGhlIG1lbnUgbW9kYWxcbiAgICB1cGRhdGVJc1dhaXRpbmdNb2RhbFZpc2libGUoIWlzV2FpdGluZ01vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,34 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Handles the response to a participant in the waiting room, either allowing or denying their entry.
5
+ *
6
+ * @param {RespondToWaitingOptions} options - Options for handling the participant's entry request.
7
+ * @param {string} options.participantId - Unique identifier for the participant.
8
+ * @param {string} options.participantName - Name of the participant.
9
+ * @param {Function} options.updateWaitingList - Function to update the waiting list by removing the responded participant.
10
+ * @param {WaitingRoomParticipant[]} options.waitingList - Current list of participants in the waiting room.
11
+ * @param {boolean | string} options.type - Indicates whether to allow ("true") or deny ("false") the participant's entry.
12
+ * @param {string} options.roomName - The name of the room the participant is requesting to join.
13
+ * @param {Socket} options.socket - The socket instance used to emit the response event.
14
+ * @returns {Promise<void>} Resolves when the response has been processed.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const respondService = new RespondToWaiting();
19
+ * respondService.respondToWaiting({
20
+ * participantId: '12345',
21
+ * participantName: 'John Doe',
22
+ * updateWaitingList: (newList) => console.log('Updated Waiting List:', newList),
23
+ * waitingList: currentWaitingList,
24
+ * type: 'true',
25
+ * roomName: 'Room1',
26
+ * socket: io('http://localhost:3000'),
27
+ * });
28
+ * ```
29
+ *
30
+ * In this example, the participant 'John Doe' is allowed to join 'Room1', and the updated waiting list is logged.
31
+ */
3
32
  export class RespondToWaiting {
4
33
  /**
5
34
  * Responds to a participant waiting to join a room by either allowing or denying their entry.
@@ -37,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
37
66
  providedIn: 'root',
38
67
  }]
39
68
  }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uZC10by13YWl0aW5nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93YWl0aW5nLW1ldGhvZHMvcmVzcG9uZC10by13YWl0aW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFvQjNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0I7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0gsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQ3JCLGFBQWEsRUFDYixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxJQUFJLEVBQ0osUUFBUSxFQUNSLE1BQU0sR0FDa0I7UUFDeEIsbURBQW1EO1FBQ25ELE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLENBQUM7UUFFbkYsMEJBQTBCO1FBQzFCLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRWxDLE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFFekUsNEVBQTRFO1FBQzVFLE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDL0IsYUFBYTtZQUNiLGVBQWU7WUFDZixJQUFJLEVBQUUsWUFBWTtZQUNsQixRQUFRO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0F0Q1UsZ0JBQWdCOzJHQUFoQixnQkFBZ0IsY0FGZixNQUFNOzsyRkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ja2V0IH0gZnJvbSAnc29ja2V0LmlvLWNsaWVudCc7XG5pbXBvcnQgeyBXYWl0aW5nUm9vbVBhcnRpY2lwYW50IH0gZnJvbSAnLi4vLi4vQHR5cGVzL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25kVG9XYWl0aW5nT3B0aW9ucyB7XG4gIHBhcnRpY2lwYW50SWQ6IHN0cmluZztcbiAgcGFydGljaXBhbnROYW1lOiBzdHJpbmc7XG4gIHVwZGF0ZVdhaXRpbmdMaXN0OiAod2FpdGluZ0xpc3Q6IFdhaXRpbmdSb29tUGFydGljaXBhbnRbXSkgPT4gdm9pZDtcbiAgd2FpdGluZ0xpc3Q6IFdhaXRpbmdSb29tUGFydGljaXBhbnRbXTtcbiAgdHlwZTogc3RyaW5nIHwgYm9vbGVhbjtcbiAgcm9vbU5hbWU6IHN0cmluZztcbiAgc29ja2V0OiBTb2NrZXQ7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIFJlc3BvbmRUb1dhaXRpbmdUeXBlID0gKG9wdGlvbnM6IFJlc3BvbmRUb1dhaXRpbmdPcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUmVzcG9uZFRvV2FpdGluZyB7XG4gIC8qKlxuICAgKiBSZXNwb25kcyB0byBhIHBhcnRpY2lwYW50IHdhaXRpbmcgdG8gam9pbiBhIHJvb20gYnkgZWl0aGVyIGFsbG93aW5nIG9yIGRlbnlpbmcgdGhlaXIgZW50cnkuXG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHJlc3BvbmRpbmcgdG8gdGhlIHdhaXRpbmcgcGFydGljaXBhbnQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcnRpY2lwYW50SWQgLSBUaGUgSUQgb2YgdGhlIHBhcnRpY2lwYW50LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJ0aWNpcGFudE5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgcGFydGljaXBhbnQuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlV2FpdGluZ0xpc3QgLSBUaGUgZnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB3YWl0aW5nIGxpc3QuXG4gICAqIEBwYXJhbSB7QXJyYXl9IG9wdGlvbnMud2FpdGluZ0xpc3QgLSBUaGUgY3VycmVudCB3YWl0aW5nIGxpc3Qgb2YgcGFydGljaXBhbnRzLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW4gfCBzdHJpbmd9IG9wdGlvbnMudHlwZSAtIFRoZSB0eXBlIG9mIHJlc3BvbnNlLCBlaXRoZXIgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5yb29tTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSByb29tLlxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucy5zb2NrZXQgLSBUaGUgc29ja2V0IGluc3RhbmNlIHRvIGVtaXQgZXZlbnRzLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSByZXNwb25zZSBoYXMgYmVlbiBwcm9jZXNzZWQuXG4gICAqL1xuICBhc3luYyByZXNwb25kVG9XYWl0aW5nKHtcbiAgICBwYXJ0aWNpcGFudElkLFxuICAgIHBhcnRpY2lwYW50TmFtZSxcbiAgICB1cGRhdGVXYWl0aW5nTGlzdCxcbiAgICB3YWl0aW5nTGlzdCxcbiAgICB0eXBlLFxuICAgIHJvb21OYW1lLFxuICAgIHNvY2tldCxcbiAgfTogUmVzcG9uZFRvV2FpdGluZ09wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBGaWx0ZXIgb3V0IHRoZSBwYXJ0aWNpcGFudCBmcm9tIHRoZSB3YWl0aW5nIGxpc3RcbiAgICBjb25zdCBuZXdXYWl0aW5nTGlzdCA9IHdhaXRpbmdMaXN0LmZpbHRlcigoaXRlbSkgPT4gaXRlbS5uYW1lICE9PSBwYXJ0aWNpcGFudE5hbWUpO1xuXG4gICAgLy8gVXBkYXRlIHRoZSB3YWl0aW5nIGxpc3RcbiAgICB1cGRhdGVXYWl0aW5nTGlzdChuZXdXYWl0aW5nTGlzdCk7XG5cbiAgICBjb25zdCByZXNwb25zZVR5cGUgPSB0eXBlID09PSAndHJ1ZScgfHwgdHlwZSA9PT0gdHJ1ZSA/ICd0cnVlJyA6ICdmYWxzZSc7XG5cbiAgICAvLyBFbWl0IGFuIGV2ZW50IHRvIGFsbG93IG9yIGRlbnkgdGhlIHBhcnRpY2lwYW50IGJhc2VkIG9uIHRoZSByZXNwb25zZSB0eXBlXG4gICAgYXdhaXQgc29ja2V0LmVtaXQoJ2FsbG93VXNlckluJywge1xuICAgICAgcGFydGljaXBhbnRJZCxcbiAgICAgIHBhcnRpY2lwYW50TmFtZSxcbiAgICAgIHR5cGU6IHJlc3BvbnNlVHlwZSxcbiAgICAgIHJvb21OYW1lLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uZC10by13YWl0aW5nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93YWl0aW5nLW1ldGhvZHMvcmVzcG9uZC10by13YWl0aW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFpQjNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNEJHO0FBTUgsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQjs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFDckIsYUFBYSxFQUNiLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLElBQUksRUFDSixRQUFRLEVBQ1IsTUFBTSxHQUNrQjtRQUN4QixtREFBbUQ7UUFDbkQsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsQ0FBQztRQUVuRiwwQkFBMEI7UUFDMUIsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUV6RSw0RUFBNEU7UUFDNUUsTUFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUMvQixhQUFhO1lBQ2IsZUFBZTtZQUNmLElBQUksRUFBRSxZQUFZO1lBQ2xCLFFBQVE7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQXRDVSxnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQUZmLE1BQU07OzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTb2NrZXQgfSBmcm9tICdzb2NrZXQuaW8tY2xpZW50JztcbmltcG9ydCB7IFdhaXRpbmdSb29tUGFydGljaXBhbnQgfSBmcm9tICcuLi8uLi9AdHlwZXMvdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc3BvbmRUb1dhaXRpbmdPcHRpb25zIHtcbiAgcGFydGljaXBhbnRJZDogc3RyaW5nO1xuICBwYXJ0aWNpcGFudE5hbWU6IHN0cmluZztcbiAgdXBkYXRlV2FpdGluZ0xpc3Q6ICh3YWl0aW5nTGlzdDogV2FpdGluZ1Jvb21QYXJ0aWNpcGFudFtdKSA9PiB2b2lkO1xuICB3YWl0aW5nTGlzdDogV2FpdGluZ1Jvb21QYXJ0aWNpcGFudFtdO1xuICB0eXBlOiBzdHJpbmcgfCBib29sZWFuO1xuICByb29tTmFtZTogc3RyaW5nO1xuICBzb2NrZXQ6IFNvY2tldDtcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgUmVzcG9uZFRvV2FpdGluZ1R5cGUgPSAob3B0aW9uczogUmVzcG9uZFRvV2FpdGluZ09wdGlvbnMpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogSGFuZGxlcyB0aGUgcmVzcG9uc2UgdG8gYSBwYXJ0aWNpcGFudCBpbiB0aGUgd2FpdGluZyByb29tLCBlaXRoZXIgYWxsb3dpbmcgb3IgZGVueWluZyB0aGVpciBlbnRyeS5cbiAqXG4gKiBAcGFyYW0ge1Jlc3BvbmRUb1dhaXRpbmdPcHRpb25zfSBvcHRpb25zIC0gT3B0aW9ucyBmb3IgaGFuZGxpbmcgdGhlIHBhcnRpY2lwYW50J3MgZW50cnkgcmVxdWVzdC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcnRpY2lwYW50SWQgLSBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHBhcnRpY2lwYW50LlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFydGljaXBhbnROYW1lIC0gTmFtZSBvZiB0aGUgcGFydGljaXBhbnQuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZVdhaXRpbmdMaXN0IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB3YWl0aW5nIGxpc3QgYnkgcmVtb3ZpbmcgdGhlIHJlc3BvbmRlZCBwYXJ0aWNpcGFudC5cbiAqIEBwYXJhbSB7V2FpdGluZ1Jvb21QYXJ0aWNpcGFudFtdfSBvcHRpb25zLndhaXRpbmdMaXN0IC0gQ3VycmVudCBsaXN0IG9mIHBhcnRpY2lwYW50cyBpbiB0aGUgd2FpdGluZyByb29tLlxuICogQHBhcmFtIHtib29sZWFuIHwgc3RyaW5nfSBvcHRpb25zLnR5cGUgLSBJbmRpY2F0ZXMgd2hldGhlciB0byBhbGxvdyAoXCJ0cnVlXCIpIG9yIGRlbnkgKFwiZmFsc2VcIikgdGhlIHBhcnRpY2lwYW50J3MgZW50cnkuXG4gKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5yb29tTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSByb29tIHRoZSBwYXJ0aWNpcGFudCBpcyByZXF1ZXN0aW5nIHRvIGpvaW4uXG4gKiBAcGFyYW0ge1NvY2tldH0gb3B0aW9ucy5zb2NrZXQgLSBUaGUgc29ja2V0IGluc3RhbmNlIHVzZWQgdG8gZW1pdCB0aGUgcmVzcG9uc2UgZXZlbnQuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gUmVzb2x2ZXMgd2hlbiB0aGUgcmVzcG9uc2UgaGFzIGJlZW4gcHJvY2Vzc2VkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCByZXNwb25kU2VydmljZSA9IG5ldyBSZXNwb25kVG9XYWl0aW5nKCk7XG4gKiByZXNwb25kU2VydmljZS5yZXNwb25kVG9XYWl0aW5nKHtcbiAqICAgcGFydGljaXBhbnRJZDogJzEyMzQ1JyxcbiAqICAgcGFydGljaXBhbnROYW1lOiAnSm9obiBEb2UnLFxuICogICB1cGRhdGVXYWl0aW5nTGlzdDogKG5ld0xpc3QpID0+IGNvbnNvbGUubG9nKCdVcGRhdGVkIFdhaXRpbmcgTGlzdDonLCBuZXdMaXN0KSxcbiAqICAgd2FpdGluZ0xpc3Q6IGN1cnJlbnRXYWl0aW5nTGlzdCxcbiAqICAgdHlwZTogJ3RydWUnLFxuICogICByb29tTmFtZTogJ1Jvb20xJyxcbiAqICAgc29ja2V0OiBpbygnaHR0cDovL2xvY2FsaG9zdDozMDAwJyksXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEluIHRoaXMgZXhhbXBsZSwgdGhlIHBhcnRpY2lwYW50ICdKb2huIERvZScgaXMgYWxsb3dlZCB0byBqb2luICdSb29tMScsIGFuZCB0aGUgdXBkYXRlZCB3YWl0aW5nIGxpc3QgaXMgbG9nZ2VkLlxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlc3BvbmRUb1dhaXRpbmcge1xuICAvKipcbiAgICogUmVzcG9uZHMgdG8gYSBwYXJ0aWNpcGFudCB3YWl0aW5nIHRvIGpvaW4gYSByb29tIGJ5IGVpdGhlciBhbGxvd2luZyBvciBkZW55aW5nIHRoZWlyIGVudHJ5LlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciByZXNwb25kaW5nIHRvIHRoZSB3YWl0aW5nIHBhcnRpY2lwYW50LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJ0aWNpcGFudElkIC0gVGhlIElEIG9mIHRoZSBwYXJ0aWNpcGFudC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFydGljaXBhbnROYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHBhcnRpY2lwYW50LlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZVdhaXRpbmdMaXN0IC0gVGhlIGZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgd2FpdGluZyBsaXN0LlxuICAgKiBAcGFyYW0ge0FycmF5fSBvcHRpb25zLndhaXRpbmdMaXN0IC0gVGhlIGN1cnJlbnQgd2FpdGluZyBsaXN0IG9mIHBhcnRpY2lwYW50cy5cbiAgICogQHBhcmFtIHtib29sZWFuIHwgc3RyaW5nfSBvcHRpb25zLnR5cGUgLSBUaGUgdHlwZSBvZiByZXNwb25zZSwgZWl0aGVyIFwidHJ1ZVwiIG9yIFwiZmFsc2VcIi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucm9vbU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgcm9vbS5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMuc29ja2V0IC0gVGhlIHNvY2tldCBpbnN0YW5jZSB0byBlbWl0IGV2ZW50cy5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgcmVzcG9uc2UgaGFzIGJlZW4gcHJvY2Vzc2VkLlxuICAgKi9cbiAgYXN5bmMgcmVzcG9uZFRvV2FpdGluZyh7XG4gICAgcGFydGljaXBhbnRJZCxcbiAgICBwYXJ0aWNpcGFudE5hbWUsXG4gICAgdXBkYXRlV2FpdGluZ0xpc3QsXG4gICAgd2FpdGluZ0xpc3QsXG4gICAgdHlwZSxcbiAgICByb29tTmFtZSxcbiAgICBzb2NrZXQsXG4gIH06IFJlc3BvbmRUb1dhaXRpbmdPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gRmlsdGVyIG91dCB0aGUgcGFydGljaXBhbnQgZnJvbSB0aGUgd2FpdGluZyBsaXN0XG4gICAgY29uc3QgbmV3V2FpdGluZ0xpc3QgPSB3YWl0aW5nTGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ubmFtZSAhPT0gcGFydGljaXBhbnROYW1lKTtcblxuICAgIC8vIFVwZGF0ZSB0aGUgd2FpdGluZyBsaXN0XG4gICAgdXBkYXRlV2FpdGluZ0xpc3QobmV3V2FpdGluZ0xpc3QpO1xuXG4gICAgY29uc3QgcmVzcG9uc2VUeXBlID0gdHlwZSA9PT0gJ3RydWUnIHx8IHR5cGUgPT09IHRydWUgPyAndHJ1ZScgOiAnZmFsc2UnO1xuXG4gICAgLy8gRW1pdCBhbiBldmVudCB0byBhbGxvdyBvciBkZW55IHRoZSBwYXJ0aWNpcGFudCBiYXNlZCBvbiB0aGUgcmVzcG9uc2UgdHlwZVxuICAgIGF3YWl0IHNvY2tldC5lbWl0KCdhbGxvd1VzZXJJbicsIHtcbiAgICAgIHBhcnRpY2lwYW50SWQsXG4gICAgICBwYXJ0aWNpcGFudE5hbWUsXG4gICAgICB0eXBlOiByZXNwb25zZVR5cGUsXG4gICAgICByb29tTmFtZSxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -2,6 +2,35 @@
2
2
  // canvas.service.ts
3
3
  import { Injectable } from '@angular/core';
4
4
  import * as i0 from "@angular/core";
5
+ /**
6
+ * Manages capturing and streaming from a canvas element.
7
+ *
8
+ * @param {CaptureCanvasStreamOptions} options - Options to control canvas streaming.
9
+ * @param {CaptureCanvasStreamParameters} options.parameters - Object containing media settings and state management functions.
10
+ * @param {boolean} [options.start=true] - If `true`, initiates canvas capture; if `false`, stops the capture.
11
+ * @returns {Promise<void>} A promise that resolves once the canvas stream has started or stopped.
12
+ *
13
+ * The function first checks the availability of `canvasWhiteboard` to capture the canvas stream. If unavailable, it attempts multiple times until a timeout. If successful:
14
+ * - It starts the canvas capture, creating or reconnecting the transport for streaming.
15
+ * - If stopping, it disconnects the transport and halts the stream.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const captureService = new CaptureCanvasStream();
20
+ * captureService.captureCanvasStream({
21
+ * parameters: {
22
+ * canvasWhiteboard: document.getElementById('myCanvas') as HTMLCanvasElement,
23
+ * updateCanvasStream: (stream) => console.log('Canvas Stream:', stream),
24
+ * screenProducer: null,
25
+ * transportCreated: false,
26
+ * // other required parameters...
27
+ * },
28
+ * start: true
29
+ * });
30
+ * ```
31
+ *
32
+ * This example initiates a capture of `myCanvas`, updating the canvas stream upon successful connection.
33
+ */
5
34
  export class CaptureCanvasStream {
6
35
  /**
7
36
  * Capture the canvas stream.
@@ -66,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
66
95
  providedIn: 'root',
67
96
  }]
68
97
  }] });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdHVyZS1jYW52YXMtc3RyZWFtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93aGl0ZWJvYXJkLW1ldGhvZHMvY2FwdHVyZS1jYW52YXMtc3RyZWFtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELG9CQUFvQjtBQUNwQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQTJDM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7Ozs7T0FLRztJQUNILG1CQUFtQixHQUFHLEtBQUssRUFBRSxFQUMzQixVQUFVLEVBQ1YsS0FBSyxHQUFHLElBQUksR0FDZSxFQUFpQixFQUFFO1FBQzlDLElBQUksQ0FBQztZQUNILFVBQVUsR0FBRyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUU5QyxJQUFJLEVBQ0YsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixvQkFBb0IsRUFDcEIsS0FBSyxFQUNMLG1CQUFtQixFQUNuQiwwQkFBMEIsRUFDMUIsNkJBQTZCLEdBQzlCLEdBQUcsVUFBVSxDQUFDO1lBRWYsSUFBSSxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDM0IsNENBQTRDO2dCQUM1QyxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7Z0JBQ2pCLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQyxDQUFDLDhCQUE4QjtnQkFDdEQsT0FBTyxDQUFDLGdCQUFnQixJQUFJLFFBQVEsR0FBRyxXQUFXLEVBQUUsQ0FBQztvQkFDbkQsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6RCxVQUFVLEdBQUcsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUM7b0JBQzlDLGdCQUFnQixHQUFHLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDL0MsUUFBUSxFQUFFLENBQUM7Z0JBQ2IsQ0FBQztnQkFFRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2dCQUNELE1BQU0sTUFBTSxHQUFHLGdCQUFpQixDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbkQsWUFBWSxHQUFHLE1BQU0sQ0FBQztnQkFDdEIsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBRTNCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO29CQUN0QixNQUFNLG1CQUFtQixDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDO3dCQUNILGNBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQzt3QkFDeEIsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzNCLE1BQU0sS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7b0JBQzNCLENBQUM7b0JBQUMsTUFBTSxDQUFDO3dCQUNQLGtCQUFrQjtvQkFDcEIsQ0FBQztvQkFFRCxNQUFNLDBCQUEwQixDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQzNELENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLEtBQUssSUFBSSxZQUFZLEVBQUUsQ0FBQztvQkFDM0IsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQXVCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUM1RSxZQUFZLEdBQUcsSUFBSSxDQUFDO29CQUNwQixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDekIsNkJBQTZCLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQyxDQUFDO3VHQXJFUyxtQkFBbUI7MkdBQW5CLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvbiAqL1xuLy8gY2FudmFzLnNlcnZpY2UudHNcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByb2R1Y2VyIH0gZnJvbSAnbWVkaWFzb3VwLWNsaWVudC9saWIvdHlwZXMnO1xuaW1wb3J0IHtcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5UeXBlLFxuICBDcmVhdGVTZW5kVHJhbnNwb3J0VHlwZSxcbiAgRGlzY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5UeXBlLFxuICBTbGVlcFR5cGUsXG4gIENyZWF0ZVNlbmRUcmFuc3BvcnRQYXJhbWV0ZXJzLFxuICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblBhcmFtZXRlcnMsXG4gIENvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vLi4vQHR5cGVzL3R5cGVzJztcbmV4cG9ydCBpbnRlcmZhY2UgQ2FwdHVyZUNhbnZhc1N0cmVhbVBhcmFtZXRlcnNcbiAgZXh0ZW5kcyBDcmVhdGVTZW5kVHJhbnNwb3J0UGFyYW1ldGVycyxcbiAgICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblBhcmFtZXRlcnMsXG4gICAgQ29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5QYXJhbWV0ZXJzIHtcbiAgY2FudmFzV2hpdGVib2FyZDogSFRNTENhbnZhc0VsZW1lbnQgfCBudWxsO1xuICBjYW52YXNTdHJlYW06IE1lZGlhU3RyZWFtIHwgbnVsbDtcbiAgdXBkYXRlQ2FudmFzU3RyZWFtOiAoc3RyZWFtOiBNZWRpYVN0cmVhbSB8IG51bGwpID0+IHZvaWQ7XG4gIHNjcmVlblByb2R1Y2VyOiBQcm9kdWNlciB8IG51bGw7XG4gIHRyYW5zcG9ydENyZWF0ZWQ6IGJvb2xlYW47XG4gIHVwZGF0ZVNjcmVlblByb2R1Y2VyOiAocHJvZHVjZXI6IFByb2R1Y2VyIHwgbnVsbCkgPT4gdm9pZDtcblxuICAvLyBtZWRpYXNmdSBmdW5jdGlvbnNcbiAgc2xlZXA6IFNsZWVwVHlwZTtcbiAgY3JlYXRlU2VuZFRyYW5zcG9ydDogQ3JlYXRlU2VuZFRyYW5zcG9ydFR5cGU7XG4gIGNvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuOiBDb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblR5cGU7XG4gIGRpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuOiBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblR5cGU7XG5cbiAgZ2V0VXBkYXRlZEFsbFBhcmFtczogKCkgPT4gQ2FwdHVyZUNhbnZhc1N0cmVhbVBhcmFtZXRlcnM7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYXB0dXJlQ2FudmFzU3RyZWFtT3B0aW9ucyB7XG4gIHBhcmFtZXRlcnM6IENhcHR1cmVDYW52YXNTdHJlYW1QYXJhbWV0ZXJzO1xuICBzdGFydD86IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIENhcHR1cmVDYW52YXNTdHJlYW1UeXBlID0gKG9wdGlvbnM6IENhcHR1cmVDYW52YXNTdHJlYW1PcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ2FwdHVyZUNhbnZhc1N0cmVhbSB7XG4gIC8qKlxuICAgKiBDYXB0dXJlIHRoZSBjYW52YXMgc3RyZWFtLlxuICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1ldGVycyAtIFRoZSBwYXJhbWV0ZXJzIG9iamVjdC5cbiAgICogQHBhcmFtIHtib29sZWFufSBbc3RhcnQ9dHJ1ZV0gLSBJbmRpY2F0ZXMgd2hldGhlciB0byBzdGFydCBjYXB0dXJpbmcgdGhlIHN0cmVhbS5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY2FudmFzIHN0cmVhbSBpcyBjYXB0dXJlZC5cbiAgICovXG4gIGNhcHR1cmVDYW52YXNTdHJlYW0gPSBhc3luYyAoe1xuICAgIHBhcmFtZXRlcnMsXG4gICAgc3RhcnQgPSB0cnVlLFxuICB9OiBDYXB0dXJlQ2FudmFzU3RyZWFtT3B0aW9ucyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIHRyeSB7XG4gICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVycy5nZXRVcGRhdGVkQWxsUGFyYW1zKCk7XG5cbiAgICAgIGxldCB7XG4gICAgICAgIGNhbnZhc1doaXRlYm9hcmQsXG4gICAgICAgIGNhbnZhc1N0cmVhbSxcbiAgICAgICAgdXBkYXRlQ2FudmFzU3RyZWFtLFxuICAgICAgICBzY3JlZW5Qcm9kdWNlcixcbiAgICAgICAgdHJhbnNwb3J0Q3JlYXRlZCxcbiAgICAgICAgdXBkYXRlU2NyZWVuUHJvZHVjZXIsXG4gICAgICAgIHNsZWVwLFxuICAgICAgICBjcmVhdGVTZW5kVHJhbnNwb3J0LFxuICAgICAgICBjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlbixcbiAgICAgICAgZGlzY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW4sXG4gICAgICB9ID0gcGFyYW1ldGVycztcblxuICAgICAgaWYgKHN0YXJ0ICYmICFjYW52YXNTdHJlYW0pIHtcbiAgICAgICAgLy8gV2FpdCBmb3IgY2FudmFzV2hpdGVib2FyZCB0byBiZSBhdmFpbGFibGVcbiAgICAgICAgbGV0IGF0dGVtcHRzID0gMDtcbiAgICAgICAgY29uc3QgbWF4QXR0ZW1wdHMgPSAyMDsgLy8gMiBzZWNvbmRzIC8gMTAwbXMgaW50ZXJ2YWxzXG4gICAgICAgIHdoaWxlICghY2FudmFzV2hpdGVib2FyZCAmJiBhdHRlbXB0cyA8IG1heEF0dGVtcHRzKSB7XG4gICAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgMTAwKSk7XG4gICAgICAgICAgcGFyYW1ldGVycyA9IHBhcmFtZXRlcnMuZ2V0VXBkYXRlZEFsbFBhcmFtcygpO1xuICAgICAgICAgIGNhbnZhc1doaXRlYm9hcmQgPSBwYXJhbWV0ZXJzLmNhbnZhc1doaXRlYm9hcmQ7XG4gICAgICAgICAgYXR0ZW1wdHMrKztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghY2FudmFzV2hpdGVib2FyZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2FudmFzIHdoaXRlYm9hcmQgbm90IGF2YWlsYWJsZS4nKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzdHJlYW0gPSBjYW52YXNXaGl0ZWJvYXJkIS5jYXB0dXJlU3RyZWFtKDMwKTtcbiAgICAgICAgY2FudmFzU3RyZWFtID0gc3RyZWFtO1xuICAgICAgICB1cGRhdGVDYW52YXNTdHJlYW0oc3RyZWFtKTtcblxuICAgICAgICBpZiAoIXRyYW5zcG9ydENyZWF0ZWQpIHtcbiAgICAgICAgICBhd2FpdCBjcmVhdGVTZW5kVHJhbnNwb3J0KHsgb3B0aW9uOiAnc2NyZWVuJywgcGFyYW1ldGVycyB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgc2NyZWVuUHJvZHVjZXIhLmNsb3NlKCk7XG4gICAgICAgICAgICB1cGRhdGVTY3JlZW5Qcm9kdWNlcihudWxsKTtcbiAgICAgICAgICAgIGF3YWl0IHNsZWVwKHsgbXM6IDUwMCB9KTtcbiAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIC8qIGhhbmRsZSBlcnJvciAqL1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGF3YWl0IGNvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuKHsgc3RyZWFtLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXN0YXJ0ICYmIGNhbnZhc1N0cmVhbSkge1xuICAgICAgICAgIGNhbnZhc1N0cmVhbS5nZXRUcmFja3MoKS5mb3JFYWNoKCh0cmFjazogTWVkaWFTdHJlYW1UcmFjaykgPT4gdHJhY2suc3RvcCgpKTtcbiAgICAgICAgICBjYW52YXNTdHJlYW0gPSBudWxsO1xuICAgICAgICAgIHVwZGF0ZUNhbnZhc1N0cmVhbShudWxsKTtcbiAgICAgICAgICBkaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlbih7IHBhcmFtZXRlcnMgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIGNhcHR1cmVDYW52YXNTdHJlYW06JywgZXJyb3IpO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdHVyZS1jYW52YXMtc3RyZWFtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93aGl0ZWJvYXJkLW1ldGhvZHMvY2FwdHVyZS1jYW52YXMtc3RyZWFtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELG9CQUFvQjtBQUNwQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQXdDM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Qkc7QUFNSCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCOzs7OztPQUtHO0lBQ0gsbUJBQW1CLEdBQUcsS0FBSyxFQUFFLEVBQzNCLFVBQVUsRUFDVixLQUFLLEdBQUcsSUFBSSxHQUNlLEVBQWlCLEVBQUU7UUFDOUMsSUFBSSxDQUFDO1lBQ0gsVUFBVSxHQUFHLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBRTlDLElBQUksRUFDRixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGtCQUFrQixFQUNsQixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNwQixLQUFLLEVBQ0wsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQiw2QkFBNkIsR0FDOUIsR0FBRyxVQUFVLENBQUM7WUFFZixJQUFJLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUMzQiw0Q0FBNEM7Z0JBQzVDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztnQkFDakIsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDLENBQUMsOEJBQThCO2dCQUN0RCxPQUFPLENBQUMsZ0JBQWdCLElBQUksUUFBUSxHQUFHLFdBQVcsRUFBRSxDQUFDO29CQUNuRCxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3pELFVBQVUsR0FBRyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztvQkFDOUMsZ0JBQWdCLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixDQUFDO29CQUMvQyxRQUFRLEVBQUUsQ0FBQztnQkFDYixDQUFDO2dCQUVELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO29CQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsTUFBTSxNQUFNLEdBQUcsZ0JBQWlCLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRCxZQUFZLEdBQUcsTUFBTSxDQUFDO2dCQUN0QixrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFM0IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7b0JBQ3RCLE1BQU0sbUJBQW1CLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQzlELENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUM7d0JBQ0gsY0FBZSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUN4QixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDM0IsTUFBTSxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztvQkFDM0IsQ0FBQztvQkFBQyxNQUFNLENBQUM7d0JBQ1Asa0JBQWtCO29CQUNwQixDQUFDO29CQUVELE1BQU0sMEJBQTBCLENBQUMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFDM0QsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsS0FBSyxJQUFJLFlBQVksRUFBRSxDQUFDO29CQUMzQixZQUFZLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBdUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7b0JBQzVFLFlBQVksR0FBRyxJQUFJLENBQUM7b0JBQ3BCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN6Qiw2QkFBNkIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ2hELENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDLENBQUM7dUdBckVTLG1CQUFtQjsyR0FBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uICovXG4vLyBjYW52YXMuc2VydmljZS50c1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZHVjZXIgfSBmcm9tICdtZWRpYXNvdXAtY2xpZW50L2xpYi90eXBlcyc7XG5pbXBvcnQge1xuICBDb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblR5cGUsXG4gIENyZWF0ZVNlbmRUcmFuc3BvcnRUeXBlLFxuICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblR5cGUsXG4gIFNsZWVwVHlwZSxcbiAgQ3JlYXRlU2VuZFRyYW5zcG9ydFBhcmFtZXRlcnMsXG4gIERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuUGFyYW1ldGVycyxcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi8uLi9AdHlwZXMvdHlwZXMnO1xuZXhwb3J0IGludGVyZmFjZSBDYXB0dXJlQ2FudmFzU3RyZWFtUGFyYW1ldGVyc1xuICBleHRlbmRzIENyZWF0ZVNlbmRUcmFuc3BvcnRQYXJhbWV0ZXJzLFxuICAgIERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuUGFyYW1ldGVycyxcbiAgICBDb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblBhcmFtZXRlcnMge1xuICBjYW52YXNXaGl0ZWJvYXJkOiBIVE1MQ2FudmFzRWxlbWVudCB8IG51bGw7XG4gIGNhbnZhc1N0cmVhbTogTWVkaWFTdHJlYW0gfCBudWxsO1xuICB1cGRhdGVDYW52YXNTdHJlYW06IChzdHJlYW06IE1lZGlhU3RyZWFtIHwgbnVsbCkgPT4gdm9pZDtcbiAgc2NyZWVuUHJvZHVjZXI6IFByb2R1Y2VyIHwgbnVsbDtcbiAgdHJhbnNwb3J0Q3JlYXRlZDogYm9vbGVhbjtcbiAgdXBkYXRlU2NyZWVuUHJvZHVjZXI6IChwcm9kdWNlcjogUHJvZHVjZXIgfCBudWxsKSA9PiB2b2lkO1xuXG4gIC8vIG1lZGlhc2Z1IGZ1bmN0aW9uc1xuICBzbGVlcDogU2xlZXBUeXBlO1xuICBjcmVhdGVTZW5kVHJhbnNwb3J0OiBDcmVhdGVTZW5kVHJhbnNwb3J0VHlwZTtcbiAgY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW46IENvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuVHlwZTtcbiAgZGlzY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW46IERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuVHlwZTtcblxuICBnZXRVcGRhdGVkQWxsUGFyYW1zOiAoKSA9PiBDYXB0dXJlQ2FudmFzU3RyZWFtUGFyYW1ldGVycztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhcHR1cmVDYW52YXNTdHJlYW1PcHRpb25zIHtcbiAgcGFyYW1ldGVyczogQ2FwdHVyZUNhbnZhc1N0cmVhbVBhcmFtZXRlcnM7XG4gIHN0YXJ0PzogYm9vbGVhbjtcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgQ2FwdHVyZUNhbnZhc1N0cmVhbVR5cGUgPSAob3B0aW9uczogQ2FwdHVyZUNhbnZhc1N0cmVhbU9wdGlvbnMpID0+IFByb21pc2U8dm9pZD47XG5cbi8qKlxuICogTWFuYWdlcyBjYXB0dXJpbmcgYW5kIHN0cmVhbWluZyBmcm9tIGEgY2FudmFzIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHtDYXB0dXJlQ2FudmFzU3RyZWFtT3B0aW9uc30gb3B0aW9ucyAtIE9wdGlvbnMgdG8gY29udHJvbCBjYW52YXMgc3RyZWFtaW5nLlxuICogQHBhcmFtIHtDYXB0dXJlQ2FudmFzU3RyZWFtUGFyYW1ldGVyc30gb3B0aW9ucy5wYXJhbWV0ZXJzIC0gT2JqZWN0IGNvbnRhaW5pbmcgbWVkaWEgc2V0dGluZ3MgYW5kIHN0YXRlIG1hbmFnZW1lbnQgZnVuY3Rpb25zLlxuICogQHBhcmFtIHtib29sZWFufSBbb3B0aW9ucy5zdGFydD10cnVlXSAtIElmIGB0cnVlYCwgaW5pdGlhdGVzIGNhbnZhcyBjYXB0dXJlOyBpZiBgZmFsc2VgLCBzdG9wcyB0aGUgY2FwdHVyZS5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyBvbmNlIHRoZSBjYW52YXMgc3RyZWFtIGhhcyBzdGFydGVkIG9yIHN0b3BwZWQuXG4gKlxuICogVGhlIGZ1bmN0aW9uIGZpcnN0IGNoZWNrcyB0aGUgYXZhaWxhYmlsaXR5IG9mIGBjYW52YXNXaGl0ZWJvYXJkYCB0byBjYXB0dXJlIHRoZSBjYW52YXMgc3RyZWFtLiBJZiB1bmF2YWlsYWJsZSwgaXQgYXR0ZW1wdHMgbXVsdGlwbGUgdGltZXMgdW50aWwgYSB0aW1lb3V0LiBJZiBzdWNjZXNzZnVsOlxuICogLSBJdCBzdGFydHMgdGhlIGNhbnZhcyBjYXB0dXJlLCBjcmVhdGluZyBvciByZWNvbm5lY3RpbmcgdGhlIHRyYW5zcG9ydCBmb3Igc3RyZWFtaW5nLlxuICogLSBJZiBzdG9wcGluZywgaXQgZGlzY29ubmVjdHMgdGhlIHRyYW5zcG9ydCBhbmQgaGFsdHMgdGhlIHN0cmVhbS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgY2FwdHVyZVNlcnZpY2UgPSBuZXcgQ2FwdHVyZUNhbnZhc1N0cmVhbSgpO1xuICogY2FwdHVyZVNlcnZpY2UuY2FwdHVyZUNhbnZhc1N0cmVhbSh7XG4gKiAgIHBhcmFtZXRlcnM6IHtcbiAqICAgICBjYW52YXNXaGl0ZWJvYXJkOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbXlDYW52YXMnKSBhcyBIVE1MQ2FudmFzRWxlbWVudCxcbiAqICAgICB1cGRhdGVDYW52YXNTdHJlYW06IChzdHJlYW0pID0+IGNvbnNvbGUubG9nKCdDYW52YXMgU3RyZWFtOicsIHN0cmVhbSksXG4gKiAgICAgc2NyZWVuUHJvZHVjZXI6IG51bGwsXG4gKiAgICAgdHJhbnNwb3J0Q3JlYXRlZDogZmFsc2UsXG4gKiAgICAgLy8gb3RoZXIgcmVxdWlyZWQgcGFyYW1ldGVycy4uLlxuICogICB9LFxuICogICBzdGFydDogdHJ1ZVxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBUaGlzIGV4YW1wbGUgaW5pdGlhdGVzIGEgY2FwdHVyZSBvZiBgbXlDYW52YXNgLCB1cGRhdGluZyB0aGUgY2FudmFzIHN0cmVhbSB1cG9uIHN1Y2Nlc3NmdWwgY29ubmVjdGlvbi5cbiAqL1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBDYXB0dXJlQ2FudmFzU3RyZWFtIHtcbiAgLyoqXG4gICAqIENhcHR1cmUgdGhlIGNhbnZhcyBzdHJlYW0uXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbWV0ZXJzIC0gVGhlIHBhcmFtZXRlcnMgb2JqZWN0LlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtzdGFydD10cnVlXSAtIEluZGljYXRlcyB3aGV0aGVyIHRvIHN0YXJ0IGNhcHR1cmluZyB0aGUgc3RyZWFtLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjYW52YXMgc3RyZWFtIGlzIGNhcHR1cmVkLlxuICAgKi9cbiAgY2FwdHVyZUNhbnZhc1N0cmVhbSA9IGFzeW5jICh7XG4gICAgcGFyYW1ldGVycyxcbiAgICBzdGFydCA9IHRydWUsXG4gIH06IENhcHR1cmVDYW52YXNTdHJlYW1PcHRpb25zKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzLmdldFVwZGF0ZWRBbGxQYXJhbXMoKTtcblxuICAgICAgbGV0IHtcbiAgICAgICAgY2FudmFzV2hpdGVib2FyZCxcbiAgICAgICAgY2FudmFzU3RyZWFtLFxuICAgICAgICB1cGRhdGVDYW52YXNTdHJlYW0sXG4gICAgICAgIHNjcmVlblByb2R1Y2VyLFxuICAgICAgICB0cmFuc3BvcnRDcmVhdGVkLFxuICAgICAgICB1cGRhdGVTY3JlZW5Qcm9kdWNlcixcbiAgICAgICAgc2xlZXAsXG4gICAgICAgIGNyZWF0ZVNlbmRUcmFuc3BvcnQsXG4gICAgICAgIGNvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuLFxuICAgICAgICBkaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlbixcbiAgICAgIH0gPSBwYXJhbWV0ZXJzO1xuXG4gICAgICBpZiAoc3RhcnQgJiYgIWNhbnZhc1N0cmVhbSkge1xuICAgICAgICAvLyBXYWl0IGZvciBjYW52YXNXaGl0ZWJvYXJkIHRvIGJlIGF2YWlsYWJsZVxuICAgICAgICBsZXQgYXR0ZW1wdHMgPSAwO1xuICAgICAgICBjb25zdCBtYXhBdHRlbXB0cyA9IDIwOyAvLyAyIHNlY29uZHMgLyAxMDBtcyBpbnRlcnZhbHNcbiAgICAgICAgd2hpbGUgKCFjYW52YXNXaGl0ZWJvYXJkICYmIGF0dGVtcHRzIDwgbWF4QXR0ZW1wdHMpIHtcbiAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMDApKTtcbiAgICAgICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVycy5nZXRVcGRhdGVkQWxsUGFyYW1zKCk7XG4gICAgICAgICAgY2FudmFzV2hpdGVib2FyZCA9IHBhcmFtZXRlcnMuY2FudmFzV2hpdGVib2FyZDtcbiAgICAgICAgICBhdHRlbXB0cysrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFjYW52YXNXaGl0ZWJvYXJkKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW52YXMgd2hpdGVib2FyZCBub3QgYXZhaWxhYmxlLicpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN0cmVhbSA9IGNhbnZhc1doaXRlYm9hcmQhLmNhcHR1cmVTdHJlYW0oMzApO1xuICAgICAgICBjYW52YXNTdHJlYW0gPSBzdHJlYW07XG4gICAgICAgIHVwZGF0ZUNhbnZhc1N0cmVhbShzdHJlYW0pO1xuXG4gICAgICAgIGlmICghdHJhbnNwb3J0Q3JlYXRlZCkge1xuICAgICAgICAgIGF3YWl0IGNyZWF0ZVNlbmRUcmFuc3BvcnQoeyBvcHRpb246ICdzY3JlZW4nLCBwYXJhbWV0ZXJzIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBzY3JlZW5Qcm9kdWNlciEuY2xvc2UoKTtcbiAgICAgICAgICAgIHVwZGF0ZVNjcmVlblByb2R1Y2VyKG51bGwpO1xuICAgICAgICAgICAgYXdhaXQgc2xlZXAoeyBtczogNTAwIH0pO1xuICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgLyogaGFuZGxlIGVycm9yICovXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYXdhaXQgY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW4oeyBzdHJlYW0sIHBhcmFtZXRlcnMgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghc3RhcnQgJiYgY2FudmFzU3RyZWFtKSB7XG4gICAgICAgICAgY2FudmFzU3RyZWFtLmdldFRyYWNrcygpLmZvckVhY2goKHRyYWNrOiBNZWRpYVN0cmVhbVRyYWNrKSA9PiB0cmFjay5zdG9wKCkpO1xuICAgICAgICAgIGNhbnZhc1N0cmVhbSA9IG51bGw7XG4gICAgICAgICAgdXBkYXRlQ2FudmFzU3RyZWFtKG51bGwpO1xuICAgICAgICAgIGRpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuKHsgcGFyYW1ldGVycyB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gY2FwdHVyZUNhbnZhc1N0cmVhbTonLCBlcnJvcik7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,6 +1,26 @@
1
1
  // whiteboard.service.ts
2
2
  import { Injectable } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Toggles the visibility of the configure whiteboard modal.
6
+ *
7
+ * @param {LaunchConfigureWhiteboardOptions} options - Options to control whiteboard configuration modal.
8
+ * @param {Function} options.updateIsConfigureWhiteboardModalVisible - Function to update the modal's visibility state.
9
+ * @param {boolean} options.isConfigureWhiteboardModalVisible - Current visibility state of the configure whiteboard modal.
10
+ *
11
+ * This function uses the current visibility state to toggle the whiteboard configuration modal on or off.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const launchService = new LaunchConfigureWhiteboard();
16
+ * launchService.launchConfigureWhiteboard({
17
+ * updateIsConfigureWhiteboardModalVisible: (visible) => console.log('Modal Visible:', visible),
18
+ * isConfigureWhiteboardModalVisible: false
19
+ * });
20
+ * ```
21
+ *
22
+ * In this example, the modal visibility state is toggled, and the updated visibility state is logged.
23
+ */
4
24
  export class LaunchConfigureWhiteboard {
5
25
  /**
6
26
  * Toggles the visibility of the configure whiteboard modal.
@@ -21,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
21
41
  providedIn: 'root',
22
42
  }]
23
43
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWNvbmZpZ3VyZS13aGl0ZWJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93aGl0ZWJvYXJkLW1ldGhvZHMvbGF1bmNoLWNvbmZpZ3VyZS13aGl0ZWJvYXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0JBQXdCO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWTNDLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEM7Ozs7O09BS0c7SUFFSCx5QkFBeUIsQ0FBQyxFQUN4Qix1Q0FBdUMsRUFDdkMsaUNBQWlDLEdBQ0E7UUFDakMsK0JBQStCO1FBQy9CLHVDQUF1QyxDQUFDLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUM5RSxDQUFDO3VHQWRVLHlCQUF5QjsyR0FBekIseUJBQXlCLGNBRnhCLE1BQU07OzJGQUVQLHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB3aGl0ZWJvYXJkLnNlcnZpY2UudHNcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZE9wdGlvbnMge1xuICB1cGRhdGVJc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGU6ICh2aXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuICBpc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGU6IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIExhdW5jaENvbmZpZ3VyZVdoaXRlYm9hcmRUeXBlID0gKG9wdGlvbnM6IExhdW5jaENvbmZpZ3VyZVdoaXRlYm9hcmRPcHRpb25zKSA9PiB2b2lkO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZCB7XG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBjb25maWd1cmUgd2hpdGVib2FyZCBtb2RhbC5cbiAgICpcbiAgICogQHBhcmFtIHVwZGF0ZUlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29uZmlndXJlIHdoaXRlYm9hcmQgbW9kYWwuXG4gICAqIEBwYXJhbSBpc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvbmZpZ3VyZSB3aGl0ZWJvYXJkIG1vZGFsLlxuICAgKi9cblxuICBsYXVuY2hDb25maWd1cmVXaGl0ZWJvYXJkKHtcbiAgICB1cGRhdGVJc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGUsXG4gICAgaXNDb25maWd1cmVXaGl0ZWJvYXJkTW9kYWxWaXNpYmxlLFxuICB9OiBMYXVuY2hDb25maWd1cmVXaGl0ZWJvYXJkT3B0aW9ucyk6IHZvaWQge1xuICAgIC8vIE9wZW4gb3IgY2xvc2UgdGhlIG1lbnUgbW9kYWxcbiAgICB1cGRhdGVJc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGUoIWlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWNvbmZpZ3VyZS13aGl0ZWJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy93aGl0ZWJvYXJkLW1ldGhvZHMvbGF1bmNoLWNvbmZpZ3VyZS13aGl0ZWJvYXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0JBQXdCO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBTUgsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQzs7Ozs7T0FLRztJQUVILHlCQUF5QixDQUFDLEVBQ3hCLHVDQUF1QyxFQUN2QyxpQ0FBaUMsR0FDQTtRQUNqQywrQkFBK0I7UUFDL0IsdUNBQXVDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQzlFLENBQUM7dUdBZFUseUJBQXlCOzJHQUF6Qix5QkFBeUIsY0FGeEIsTUFBTTs7MkZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHdoaXRlYm9hcmQuc2VydmljZS50c1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0IGludGVyZmFjZSBMYXVuY2hDb25maWd1cmVXaGl0ZWJvYXJkT3B0aW9ucyB7XG4gIHVwZGF0ZUlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZTogKHZpc2libGU6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIGlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZTogYm9vbGVhbjtcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZFR5cGUgPSAob3B0aW9uczogTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZE9wdGlvbnMpID0+IHZvaWQ7XG5cbi8qKlxuICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgY29uZmlndXJlIHdoaXRlYm9hcmQgbW9kYWwuXG4gKlxuICogQHBhcmFtIHtMYXVuY2hDb25maWd1cmVXaGl0ZWJvYXJkT3B0aW9uc30gb3B0aW9ucyAtIE9wdGlvbnMgdG8gY29udHJvbCB3aGl0ZWJvYXJkIGNvbmZpZ3VyYXRpb24gbW9kYWwuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbW9kYWwncyB2aXNpYmlsaXR5IHN0YXRlLlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZSAtIEN1cnJlbnQgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29uZmlndXJlIHdoaXRlYm9hcmQgbW9kYWwuXG4gKlxuICogVGhpcyBmdW5jdGlvbiB1c2VzIHRoZSBjdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgdG8gdG9nZ2xlIHRoZSB3aGl0ZWJvYXJkIGNvbmZpZ3VyYXRpb24gbW9kYWwgb24gb3Igb2ZmLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBsYXVuY2hTZXJ2aWNlID0gbmV3IExhdW5jaENvbmZpZ3VyZVdoaXRlYm9hcmQoKTtcbiAqIGxhdW5jaFNlcnZpY2UubGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZCh7XG4gKiAgIHVwZGF0ZUlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZTogKHZpc2libGUpID0+IGNvbnNvbGUubG9nKCdNb2RhbCBWaXNpYmxlOicsIHZpc2libGUpLFxuICogICBpc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGU6IGZhbHNlXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEluIHRoaXMgZXhhbXBsZSwgdGhlIG1vZGFsIHZpc2liaWxpdHkgc3RhdGUgaXMgdG9nZ2xlZCwgYW5kIHRoZSB1cGRhdGVkIHZpc2liaWxpdHkgc3RhdGUgaXMgbG9nZ2VkLlxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaENvbmZpZ3VyZVdoaXRlYm9hcmQge1xuICAvKipcbiAgICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgY29uZmlndXJlIHdoaXRlYm9hcmQgbW9kYWwuXG4gICAqXG4gICAqIEBwYXJhbSB1cGRhdGVJc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIGNvbmZpZ3VyZSB3aGl0ZWJvYXJkIG1vZGFsLlxuICAgKiBAcGFyYW0gaXNDb25maWd1cmVXaGl0ZWJvYXJkTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBjb25maWd1cmUgd2hpdGVib2FyZCBtb2RhbC5cbiAgICovXG5cbiAgbGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZCh7XG4gICAgdXBkYXRlSXNDb25maWd1cmVXaGl0ZWJvYXJkTW9kYWxWaXNpYmxlLFxuICAgIGlzQ29uZmlndXJlV2hpdGVib2FyZE1vZGFsVmlzaWJsZSxcbiAgfTogTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZE9wdGlvbnMpOiB2b2lkIHtcbiAgICAvLyBPcGVuIG9yIGNsb3NlIHRoZSBtZW51IG1vZGFsXG4gICAgdXBkYXRlSXNDb25maWd1cmVXaGl0ZWJvYXJkTW9kYWxWaXNpYmxlKCFpc0NvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFZpc2libGUpO1xuICB9XG59XG4iXX0=
@@ -1,6 +1,29 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as mediasoupClient from 'mediasoup-client';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Creates a mediasoup client device using the provided RTP capabilities.
6
+ *
7
+ * @param {CreateDeviceClientOptions} options - Options containing the required RTP capabilities.
8
+ * @param {RtpCapabilities | null} options.rtpCapabilities - The RTP capabilities necessary for initializing the device.
9
+ * @returns {Promise<Device | null>} - A promise resolving to the created `Device` instance or `null` if creation fails.
10
+ * @throws {Error} - Throws an error if RTP capabilities or the mediasoup client library are not provided, or if the device is unsupported by the browser.
11
+ *
12
+ * This function initializes a mediasoup client `Device` using the specified RTP capabilities, enabling communication capabilities according to provided media configurations. It filters out unsupported video orientation extensions and loads router capabilities, ensuring compatibility with client configurations.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const client = new CreateDeviceClient();
17
+ * const device = await client.createDeviceClient({ rtpCapabilities });
18
+ * if (device) {
19
+ * console.log('Device created successfully:', device);
20
+ * } else {
21
+ * console.log('Failed to create device.');
22
+ * }
23
+ * ```
24
+ *
25
+ * In this example, the function creates a device based on RTP capabilities, handling errors and unsupported devices gracefully.
26
+ */
4
27
  export class CreateDeviceClient {
5
28
  /**
6
29
  * Creates a mediasoup client device with the provided RTP capabilities.
@@ -48,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
48
71
  providedIn: 'root',
49
72
  }]
50
73
  }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRldmljZS1jbGllbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9wcm9kdWNlci1jbGllbnQvcHJvZHVjZXItY2xpZW50LWVtaXRzL2NyZWF0ZS1kZXZpY2UtY2xpZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEtBQUssZUFBZSxNQUFNLGtCQUFrQixDQUFDOztBQVdwRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCOzs7Ozs7OztPQVFHO0lBRUgsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsZUFBZSxFQUE2QjtRQUNyRSxJQUFJLENBQUM7WUFDSCw0QkFBNEI7WUFDNUIsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7WUFDaEYsQ0FBQztZQUVELG1DQUFtQztZQUNuQyxNQUFNLE1BQU0sR0FBVyxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUVwRCxrQ0FBa0M7WUFDbEMsSUFBSSxlQUFlLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDckMsZUFBZSxDQUFDLGdCQUFnQixHQUFHLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQ3hFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLDRCQUE0QixDQUNsRCxDQUFDO1lBQ0osQ0FBQztZQUVELHFEQUFxRDtZQUNyRCxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ2hCLHFCQUFxQixFQUFFLGVBQWU7YUFDdkMsQ0FBQyxDQUFDO1lBRUgsbUZBQW1GO1lBRW5GLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFBQyxPQUFPLEtBQVUsRUFBRSxDQUFDO1lBQ3BCLGlEQUFpRDtZQUNqRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztnQkFDdEMscUNBQXFDO2dCQUNyQyxPQUFPLENBQUMsS0FBSyxDQUFDLG9FQUFvRSxDQUFDLENBQUM7WUFDdEYsQ0FBQztZQUVELE1BQU0sS0FBSyxDQUFDLENBQUMseUJBQXlCO1FBQ3hDLENBQUM7SUFDSCxDQUFDO3VHQTdDVSxrQkFBa0I7MkdBQWxCLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUnRwQ2FwYWJpbGl0aWVzLCBEZXZpY2UgfSBmcm9tICdtZWRpYXNvdXAtY2xpZW50L2xpYi90eXBlcyc7XG5pbXBvcnQgKiBhcyBtZWRpYXNvdXBDbGllbnQgZnJvbSAnbWVkaWFzb3VwLWNsaWVudCc7XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZURldmljZUNsaWVudE9wdGlvbnMge1xuICBydHBDYXBhYmlsaXRpZXM6IFJ0cENhcGFiaWxpdGllcyB8IG51bGw7XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIENyZWF0ZURldmljZUNsaWVudFR5cGUgPSAob3B0aW9uczogQ3JlYXRlRGV2aWNlQ2xpZW50T3B0aW9ucykgPT4gUHJvbWlzZTxEZXZpY2UgfCBudWxsPjtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENyZWF0ZURldmljZUNsaWVudCB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbWVkaWFzb3VwIGNsaWVudCBkZXZpY2Ugd2l0aCB0aGUgcHJvdmlkZWQgUlRQIGNhcGFiaWxpdGllcy5cbiAgICpcbiAgICogQHBhcmFtIHtDcmVhdGVEZXZpY2VDbGllbnRPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGNyZWF0aW5nIHRoZSBkZXZpY2UgY2xpZW50LlxuICAgKiBAcGFyYW0ge1JUUENhcGFiaWxpdGllc30gb3B0aW9ucy5ydHBDYXBhYmlsaXRpZXMgLSBUaGUgUlRQIGNhcGFiaWxpdGllcyByZXF1aXJlZCBmb3IgdGhlIGRldmljZS5cbiAgICogQHJldHVybnMge1Byb21pc2U8RGV2aWNlIHwgbnVsbD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBjcmVhdGVkIERldmljZSBvciBudWxsIGlmIGNyZWF0aW9uIGZhaWxzLlxuICAgKiBAdGhyb3dzIHtFcnJvcn0gVGhyb3dzIGFuIGVycm9yIGlmIHRoZSByZXF1aXJlZCBwYXJhbWV0ZXJzIGFyZSBub3QgcHJvdmlkZWQgb3IgaWYgZGV2aWNlIGNyZWF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQuXG4gICAqXG4gICAqL1xuXG4gIGFzeW5jIGNyZWF0ZURldmljZUNsaWVudCh7IHJ0cENhcGFiaWxpdGllcyB9OiBDcmVhdGVEZXZpY2VDbGllbnRPcHRpb25zKTogUHJvbWlzZTxEZXZpY2UgfCBudWxsPiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIFZhbGlkYXRlIGlucHV0IHBhcmFtZXRlcnNcbiAgICAgIGlmICghcnRwQ2FwYWJpbGl0aWVzIHx8ICFtZWRpYXNvdXBDbGllbnQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdCb3RoIHJ0cENhcGFiaWxpdGllcyBhbmQgbWVkaWFzb3VwQ2xpZW50IG11c3QgYmUgcHJvdmlkZWQuJyk7XG4gICAgICB9XG5cbiAgICAgIC8vIENyZWF0ZSBhIG1lZGlhc291cCBjbGllbnQgZGV2aWNlXG4gICAgICBjb25zdCBkZXZpY2U6IERldmljZSA9IG5ldyBtZWRpYXNvdXBDbGllbnQuRGV2aWNlKCk7XG5cbiAgICAgIC8vIFJlbW92ZSBvcmllbnRhdGlvbiBjYXBhYmlsaXRpZXNcbiAgICAgIGlmIChydHBDYXBhYmlsaXRpZXMuaGVhZGVyRXh0ZW5zaW9ucykge1xuICAgICAgICBydHBDYXBhYmlsaXRpZXMuaGVhZGVyRXh0ZW5zaW9ucyA9IHJ0cENhcGFiaWxpdGllcy5oZWFkZXJFeHRlbnNpb25zLmZpbHRlcihcbiAgICAgICAgICAoZXh0KSA9PiBleHQudXJpICE9PSAndXJuOjNncHA6dmlkZW8tb3JpZW50YXRpb24nLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBMb2FkIHRoZSBwcm92aWRlZCBSVFAgY2FwYWJpbGl0aWVzIGludG8gdGhlIGRldmljZVxuICAgICAgYXdhaXQgZGV2aWNlLmxvYWQoe1xuICAgICAgICByb3V0ZXJSdHBDYXBhYmlsaXRpZXM6IHJ0cENhcGFiaWxpdGllcyxcbiAgICAgIH0pO1xuXG4gICAgICAvLyBQZXJmb3JtIGFkZGl0aW9uYWwgaW5pdGlhbGl6YXRpb24sIGUuZy4sIGxvYWRpbmcgc3Bpbm5lciBhbmQgcmV0cmlldmluZyBtZXNzYWdlc1xuXG4gICAgICByZXR1cm4gZGV2aWNlO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIC8vIEhhbmRsZSBzcGVjaWZpYyBlcnJvcnMsIGUuZy4sIFVuc3VwcG9ydGVkRXJyb3JcbiAgICAgIGlmIChlcnJvci5uYW1lID09PSAnVW5zdXBwb3J0ZWRFcnJvcicpIHtcbiAgICAgICAgLy8gSGFuZGxlIHVuc3VwcG9ydGVkIGRldmljZSBjcmVhdGlvblxuICAgICAgICBjb25zb2xlLmVycm9yKCdVbnN1cHBvcnRlZEVycm9yOiBEZXZpY2UgY3JlYXRpb24gaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgYnJvd3Nlci4nKTtcbiAgICAgIH1cblxuICAgICAgdGhyb3cgZXJyb3I7IC8vIFByb3BhZ2F0ZSBvdGhlciBlcnJvcnNcbiAgICB9XG4gIH1cbn1cbiJdfQ==
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRldmljZS1jbGllbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9wcm9kdWNlci1jbGllbnQvcHJvZHVjZXItY2xpZW50LWVtaXRzL2NyZWF0ZS1kZXZpY2UtY2xpZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEtBQUssZUFBZSxNQUFNLGtCQUFrQixDQUFDOztBQVFwRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUtILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0I7Ozs7Ozs7O09BUUc7SUFFSCxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRSxlQUFlLEVBQTZCO1FBQ3JFLElBQUksQ0FBQztZQUNILDRCQUE0QjtZQUM1QixJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsNERBQTRELENBQUMsQ0FBQztZQUNoRixDQUFDO1lBRUQsbUNBQW1DO1lBQ25DLE1BQU0sTUFBTSxHQUFXLElBQUksZUFBZSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRXBELGtDQUFrQztZQUNsQyxJQUFJLGVBQWUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNyQyxlQUFlLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FDeEUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssNEJBQTRCLENBQ2xELENBQUM7WUFDSixDQUFDO1lBRUQscURBQXFEO1lBQ3JELE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQztnQkFDaEIscUJBQXFCLEVBQUUsZUFBZTthQUN2QyxDQUFDLENBQUM7WUFFSCxtRkFBbUY7WUFFbkYsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUFDLE9BQU8sS0FBVSxFQUFFLENBQUM7WUFDcEIsaURBQWlEO1lBQ2pELElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxrQkFBa0IsRUFBRSxDQUFDO2dCQUN0QyxxQ0FBcUM7Z0JBQ3JDLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztZQUN0RixDQUFDO1lBRUQsTUFBTSxLQUFLLENBQUMsQ0FBQyx5QkFBeUI7UUFDeEMsQ0FBQztJQUNILENBQUM7dUdBN0NVLGtCQUFrQjsyR0FBbEIsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSdHBDYXBhYmlsaXRpZXMsIERldmljZSB9IGZyb20gJ21lZGlhc291cC1jbGllbnQvbGliL3R5cGVzJztcbmltcG9ydCAqIGFzIG1lZGlhc291cENsaWVudCBmcm9tICdtZWRpYXNvdXAtY2xpZW50JztcbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlRGV2aWNlQ2xpZW50T3B0aW9ucyB7XG4gIHJ0cENhcGFiaWxpdGllczogUnRwQ2FwYWJpbGl0aWVzIHwgbnVsbDtcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgQ3JlYXRlRGV2aWNlQ2xpZW50VHlwZSA9IChvcHRpb25zOiBDcmVhdGVEZXZpY2VDbGllbnRPcHRpb25zKSA9PiBQcm9taXNlPERldmljZSB8IG51bGw+O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBtZWRpYXNvdXAgY2xpZW50IGRldmljZSB1c2luZyB0aGUgcHJvdmlkZWQgUlRQIGNhcGFiaWxpdGllcy5cbiAqXG4gKiBAcGFyYW0ge0NyZWF0ZURldmljZUNsaWVudE9wdGlvbnN9IG9wdGlvbnMgLSBPcHRpb25zIGNvbnRhaW5pbmcgdGhlIHJlcXVpcmVkIFJUUCBjYXBhYmlsaXRpZXMuXG4gKiBAcGFyYW0ge1J0cENhcGFiaWxpdGllcyB8IG51bGx9IG9wdGlvbnMucnRwQ2FwYWJpbGl0aWVzIC0gVGhlIFJUUCBjYXBhYmlsaXRpZXMgbmVjZXNzYXJ5IGZvciBpbml0aWFsaXppbmcgdGhlIGRldmljZS5cbiAqIEByZXR1cm5zIHtQcm9taXNlPERldmljZSB8IG51bGw+fSAtIEEgcHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIGNyZWF0ZWQgYERldmljZWAgaW5zdGFuY2Ugb3IgYG51bGxgIGlmIGNyZWF0aW9uIGZhaWxzLlxuICogQHRocm93cyB7RXJyb3J9IC0gVGhyb3dzIGFuIGVycm9yIGlmIFJUUCBjYXBhYmlsaXRpZXMgb3IgdGhlIG1lZGlhc291cCBjbGllbnQgbGlicmFyeSBhcmUgbm90IHByb3ZpZGVkLCBvciBpZiB0aGUgZGV2aWNlIGlzIHVuc3VwcG9ydGVkIGJ5IHRoZSBicm93c2VyLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gaW5pdGlhbGl6ZXMgYSBtZWRpYXNvdXAgY2xpZW50IGBEZXZpY2VgIHVzaW5nIHRoZSBzcGVjaWZpZWQgUlRQIGNhcGFiaWxpdGllcywgZW5hYmxpbmcgY29tbXVuaWNhdGlvbiBjYXBhYmlsaXRpZXMgYWNjb3JkaW5nIHRvIHByb3ZpZGVkIG1lZGlhIGNvbmZpZ3VyYXRpb25zLiBJdCBmaWx0ZXJzIG91dCB1bnN1cHBvcnRlZCB2aWRlbyBvcmllbnRhdGlvbiBleHRlbnNpb25zIGFuZCBsb2FkcyByb3V0ZXIgY2FwYWJpbGl0aWVzLCBlbnN1cmluZyBjb21wYXRpYmlsaXR5IHdpdGggY2xpZW50IGNvbmZpZ3VyYXRpb25zLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBjbGllbnQgPSBuZXcgQ3JlYXRlRGV2aWNlQ2xpZW50KCk7XG4gKiBjb25zdCBkZXZpY2UgPSBhd2FpdCBjbGllbnQuY3JlYXRlRGV2aWNlQ2xpZW50KHsgcnRwQ2FwYWJpbGl0aWVzIH0pO1xuICogaWYgKGRldmljZSkge1xuICogICBjb25zb2xlLmxvZygnRGV2aWNlIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5OicsIGRldmljZSk7XG4gKiB9IGVsc2Uge1xuICogICBjb25zb2xlLmxvZygnRmFpbGVkIHRvIGNyZWF0ZSBkZXZpY2UuJyk7XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBJbiB0aGlzIGV4YW1wbGUsIHRoZSBmdW5jdGlvbiBjcmVhdGVzIGEgZGV2aWNlIGJhc2VkIG9uIFJUUCBjYXBhYmlsaXRpZXMsIGhhbmRsaW5nIGVycm9ycyBhbmQgdW5zdXBwb3J0ZWQgZGV2aWNlcyBncmFjZWZ1bGx5LlxuICovXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBDcmVhdGVEZXZpY2VDbGllbnQge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG1lZGlhc291cCBjbGllbnQgZGV2aWNlIHdpdGggdGhlIHByb3ZpZGVkIFJUUCBjYXBhYmlsaXRpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7Q3JlYXRlRGV2aWNlQ2xpZW50T3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBjcmVhdGluZyB0aGUgZGV2aWNlIGNsaWVudC5cbiAgICogQHBhcmFtIHtSVFBDYXBhYmlsaXRpZXN9IG9wdGlvbnMucnRwQ2FwYWJpbGl0aWVzIC0gVGhlIFJUUCBjYXBhYmlsaXRpZXMgcmVxdWlyZWQgZm9yIHRoZSBkZXZpY2UuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERldmljZSB8IG51bGw+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0aGUgY3JlYXRlZCBEZXZpY2Ugb3IgbnVsbCBpZiBjcmVhdGlvbiBmYWlscy5cbiAgICogQHRocm93cyB7RXJyb3J9IFRocm93cyBhbiBlcnJvciBpZiB0aGUgcmVxdWlyZWQgcGFyYW1ldGVycyBhcmUgbm90IHByb3ZpZGVkIG9yIGlmIGRldmljZSBjcmVhdGlvbiBpcyBub3Qgc3VwcG9ydGVkLlxuICAgKlxuICAgKi9cblxuICBhc3luYyBjcmVhdGVEZXZpY2VDbGllbnQoeyBydHBDYXBhYmlsaXRpZXMgfTogQ3JlYXRlRGV2aWNlQ2xpZW50T3B0aW9ucyk6IFByb21pc2U8RGV2aWNlIHwgbnVsbD4ge1xuICAgIHRyeSB7XG4gICAgICAvLyBWYWxpZGF0ZSBpbnB1dCBwYXJhbWV0ZXJzXG4gICAgICBpZiAoIXJ0cENhcGFiaWxpdGllcyB8fCAhbWVkaWFzb3VwQ2xpZW50KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQm90aCBydHBDYXBhYmlsaXRpZXMgYW5kIG1lZGlhc291cENsaWVudCBtdXN0IGJlIHByb3ZpZGVkLicpO1xuICAgICAgfVxuXG4gICAgICAvLyBDcmVhdGUgYSBtZWRpYXNvdXAgY2xpZW50IGRldmljZVxuICAgICAgY29uc3QgZGV2aWNlOiBEZXZpY2UgPSBuZXcgbWVkaWFzb3VwQ2xpZW50LkRldmljZSgpO1xuXG4gICAgICAvLyBSZW1vdmUgb3JpZW50YXRpb24gY2FwYWJpbGl0aWVzXG4gICAgICBpZiAocnRwQ2FwYWJpbGl0aWVzLmhlYWRlckV4dGVuc2lvbnMpIHtcbiAgICAgICAgcnRwQ2FwYWJpbGl0aWVzLmhlYWRlckV4dGVuc2lvbnMgPSBydHBDYXBhYmlsaXRpZXMuaGVhZGVyRXh0ZW5zaW9ucy5maWx0ZXIoXG4gICAgICAgICAgKGV4dCkgPT4gZXh0LnVyaSAhPT0gJ3VybjozZ3BwOnZpZGVvLW9yaWVudGF0aW9uJyxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgLy8gTG9hZCB0aGUgcHJvdmlkZWQgUlRQIGNhcGFiaWxpdGllcyBpbnRvIHRoZSBkZXZpY2VcbiAgICAgIGF3YWl0IGRldmljZS5sb2FkKHtcbiAgICAgICAgcm91dGVyUnRwQ2FwYWJpbGl0aWVzOiBydHBDYXBhYmlsaXRpZXMsXG4gICAgICB9KTtcblxuICAgICAgLy8gUGVyZm9ybSBhZGRpdGlvbmFsIGluaXRpYWxpemF0aW9uLCBlLmcuLCBsb2FkaW5nIHNwaW5uZXIgYW5kIHJldHJpZXZpbmcgbWVzc2FnZXNcblxuICAgICAgcmV0dXJuIGRldmljZTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICAvLyBIYW5kbGUgc3BlY2lmaWMgZXJyb3JzLCBlLmcuLCBVbnN1cHBvcnRlZEVycm9yXG4gICAgICBpZiAoZXJyb3IubmFtZSA9PT0gJ1Vuc3VwcG9ydGVkRXJyb3InKSB7XG4gICAgICAgIC8vIEhhbmRsZSB1bnN1cHBvcnRlZCBkZXZpY2UgY3JlYXRpb25cbiAgICAgICAgY29uc29sZS5lcnJvcignVW5zdXBwb3J0ZWRFcnJvcjogRGV2aWNlIGNyZWF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIGJyb3dzZXIuJyk7XG4gICAgICB9XG5cbiAgICAgIHRocm93IGVycm9yOyAvLyBQcm9wYWdhdGUgb3RoZXIgZXJyb3JzXG4gICAgfVxuICB9XG59XG4iXX0=