mediasfu-angular 1.0.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +678 -578
- package/dist/README.md +677 -578
- package/dist/fesm2022/mediasfu-angular.mjs +5551 -2944
- package/dist/fesm2022/mediasfu-angular.mjs.map +1 -1
- package/dist/lib/@types/types.d.ts +22 -1
- package/dist/lib/components/breakout-components/breakout-rooms-modal.component.d.ts +1 -0
- package/dist/lib/components/mediasfu-components/mediasfu-broadcast.component.d.ts +153 -61
- package/dist/lib/components/mediasfu-components/mediasfu-chat.component.d.ts +154 -66
- package/dist/lib/components/mediasfu-components/mediasfu-conference.component.d.ts +190 -76
- package/dist/lib/components/mediasfu-components/mediasfu-generic.component.d.ts +184 -70
- package/dist/lib/components/mediasfu-components/mediasfu-webinar.component.d.ts +192 -78
- package/dist/lib/components/menu-components/menu-modal/menu-modal.component.d.ts +6 -1
- package/dist/lib/components/menu-components/share-buttons-component/share-buttons-component.component.d.ts +5 -2
- package/dist/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.d.ts +4 -2
- package/dist/lib/components/misc-components/pre-join-page/pre-join-page.component.d.ts +71 -66
- package/dist/lib/components/misc-components/share-event-modal/share-event-modal.component.d.ts +5 -1
- package/dist/lib/consumers/connect-local-ips.service.d.ts +81 -0
- package/dist/lib/consumers/connect-send-transport-audio.service.d.ts +43 -11
- package/dist/lib/consumers/connect-send-transport-screen.service.d.ts +87 -46
- package/dist/lib/consumers/connect-send-transport-video.service.d.ts +89 -43
- package/dist/lib/consumers/connect-send-transport.service.d.ts +5 -1
- package/dist/lib/consumers/create-send-transport.service.d.ts +130 -40
- package/dist/lib/consumers/disconnect-send-transport-audio.service.d.ts +77 -40
- package/dist/lib/consumers/disconnect-send-transport-screen.service.d.ts +48 -14
- package/dist/lib/consumers/disconnect-send-transport-video.service.d.ts +81 -44
- package/dist/lib/consumers/get-piped-producers-alt.service.d.ts +5 -1
- package/dist/lib/consumers/receive-all-piped-transports.service.d.ts +5 -1
- package/dist/lib/consumers/resume-send-transport-audio.service.d.ts +54 -21
- package/dist/lib/consumers/stream-success-audio-switch.service.d.ts +124 -40
- package/dist/lib/consumers/trigger.service.d.ts +3 -0
- package/dist/lib/methods/exit-methods/confirm-exit.service.d.ts +5 -1
- package/dist/lib/methods/recording-methods/start-recording.service.d.ts +3 -0
- package/dist/lib/methods/recording-methods/stop-recording.service.d.ts +4 -1
- package/dist/lib/methods/recording-methods/update-recording.service.d.ts +3 -0
- package/dist/lib/methods/stream-methods/click-audio.service.d.ts +3 -0
- package/dist/lib/methods/utils/check-limits-and-make-request.service.d.ts +23 -0
- package/dist/lib/methods/utils/create-response-join-room.util.d.ts +33 -0
- package/dist/lib/methods/utils/create-room-on-media-sfu.service.d.ts +25 -0
- package/dist/lib/methods/utils/initial-values.util.d.ts +6 -0
- package/dist/lib/methods/utils/join-room-on-media-sfu.service.d.ts +52 -0
- package/dist/lib/methods/whiteboard-methods/capture-canvas-stream.service.d.ts +37 -20
- package/dist/lib/producers/producer-emits/join-local-room.service.d.ts +125 -0
- package/dist/lib/producers/socket-receive-methods/all-members-rest.service.d.ts +7 -2
- package/dist/lib/producers/socket-receive-methods/all-members.service.d.ts +7 -2
- package/dist/lib/producers/socket-receive-methods/disconnect-user-self.service.d.ts +5 -1
- package/dist/lib/sockets/socket-manager.service.d.ts +90 -0
- package/dist/public-api.d.ts +11 -1
- package/package.json +17 -20
- package/dist/esm2022/lib/@types/types.mjs +0 -2
- package/dist/esm2022/lib/components/background-components/background-modal/background-modal.component.mjs +0 -799
- package/dist/esm2022/lib/components/breakout-components/breakout-rooms-modal.component.mjs +0 -366
- package/dist/esm2022/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.mjs +0 -143
- package/dist/esm2022/lib/components/breakout-components/room-list/room-list.component.mjs +0 -40
- package/dist/esm2022/lib/components/co-host-components/co-host-modal/co-host-modal.component.mjs +0 -245
- package/dist/esm2022/lib/components/display-components/alert-component/alert.component.component.mjs +0 -79
- package/dist/esm2022/lib/components/display-components/audio-card/audio-card.component.mjs +0 -356
- package/dist/esm2022/lib/components/display-components/audio-grid/audio-grid.component.mjs +0 -80
- package/dist/esm2022/lib/components/display-components/card-video-display/card-video-display.component.mjs +0 -129
- package/dist/esm2022/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.mjs +0 -138
- package/dist/esm2022/lib/components/display-components/control-buttons-component/control-buttons-component.component.mjs +0 -231
- package/dist/esm2022/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.mjs +0 -282
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-participants-widget.component.mjs +0 -82
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-record-widget.component.mjs +0 -65
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-widget.component.mjs +0 -137
- package/dist/esm2022/lib/components/display-components/control-widgets/message-widget.component.mjs +0 -137
- package/dist/esm2022/lib/components/display-components/control-widgets/record-timer-widget.component.mjs +0 -51
- package/dist/esm2022/lib/components/display-components/control-widgets/screenshare-widget.component.mjs +0 -101
- package/dist/esm2022/lib/components/display-components/flexible-grid/flexible-grid.component.mjs +0 -151
- package/dist/esm2022/lib/components/display-components/flexible-video/flexible-video.component.mjs +0 -250
- package/dist/esm2022/lib/components/display-components/loading-modal/loading-modal.component.mjs +0 -102
- package/dist/esm2022/lib/components/display-components/main-aspect-component/main-aspect-component.component.mjs +0 -140
- package/dist/esm2022/lib/components/display-components/main-container-component/main-container-component.component.mjs +0 -131
- package/dist/esm2022/lib/components/display-components/main-grid-component/main-grid-component.component.mjs +0 -120
- package/dist/esm2022/lib/components/display-components/main-screen-component/main-screen-component.component.mjs +0 -201
- package/dist/esm2022/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.mjs +0 -115
- package/dist/esm2022/lib/components/display-components/mini-audio/mini-audio.component.mjs +0 -319
- package/dist/esm2022/lib/components/display-components/mini-card/mini-card.component.mjs +0 -161
- package/dist/esm2022/lib/components/display-components/mini-card-audio/mini-card-audio.component.mjs +0 -230
- package/dist/esm2022/lib/components/display-components/other-grid-component/other-grid-component.component.mjs +0 -126
- package/dist/esm2022/lib/components/display-components/pagination/pagination.component.mjs +0 -334
- package/dist/esm2022/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.mjs +0 -112
- package/dist/esm2022/lib/components/display-components/video-card/video-card.component.mjs +0 -392
- package/dist/esm2022/lib/components/display-settings-components/display-settings-modal.component.mjs +0 -106
- package/dist/esm2022/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.mjs +0 -199
- package/dist/esm2022/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.mjs +0 -132
- package/dist/esm2022/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.mjs +0 -220
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-broadcast.component.mjs +0 -4238
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-chat.component.mjs +0 -3754
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-conference.component.mjs +0 -5071
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-generic.component.mjs +0 -5380
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-webinar.component.mjs +0 -5068
- package/dist/esm2022/lib/components/menu-components/custom-buttons/custom-buttons.component.mjs +0 -83
- package/dist/esm2022/lib/components/menu-components/meeting-id-component/meeting-id-component.component.mjs +0 -27
- package/dist/esm2022/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.mjs +0 -27
- package/dist/esm2022/lib/components/menu-components/menu-modal/menu-modal.component.mjs +0 -125
- package/dist/esm2022/lib/components/menu-components/share-buttons-component/share-buttons-component.component.mjs +0 -106
- package/dist/esm2022/lib/components/message-components/message-panel/message-panel.component.mjs +0 -228
- package/dist/esm2022/lib/components/message-components/messages-modal/messages-modal.component.mjs +0 -277
- package/dist/esm2022/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.mjs +0 -130
- package/dist/esm2022/lib/components/misc-components/pre-join-page/pre-join-page.component.mjs +0 -343
- package/dist/esm2022/lib/components/misc-components/share-event-modal/share-event-modal.component.mjs +0 -127
- package/dist/esm2022/lib/components/misc-components/welcome-page/welcome-page.component.mjs +0 -241
- package/dist/esm2022/lib/components/participants-components/participant-list/participant-list.component.mjs +0 -82
- package/dist/esm2022/lib/components/participants-components/participant-list-item/participant-list-item.component.mjs +0 -139
- package/dist/esm2022/lib/components/participants-components/participant-list-others/participant-list-others.component.mjs +0 -40
- package/dist/esm2022/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.mjs +0 -60
- package/dist/esm2022/lib/components/participants-components/participants-modal/participants-modal.component.mjs +0 -124
- package/dist/esm2022/lib/components/polls-components/poll-modal/poll-modal.component.mjs +0 -201
- package/dist/esm2022/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.mjs +0 -92
- package/dist/esm2022/lib/components/recording-components/recording-modal/recording-modal.component.mjs +0 -133
- package/dist/esm2022/lib/components/recording-components/standard-panel-component/standard-panel-component.component.mjs +0 -90
- package/dist/esm2022/lib/components/requests-components/render-request-component/render-request-component.component.mjs +0 -81
- package/dist/esm2022/lib/components/requests-components/requests-modal/requests-modal.component.mjs +0 -147
- package/dist/esm2022/lib/components/screenboard-components/screenboard/screenboard.component.mjs +0 -627
- package/dist/esm2022/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.mjs +0 -391
- package/dist/esm2022/lib/components/waiting-components/waiting-room-modal.component.mjs +0 -201
- package/dist/esm2022/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.mjs +0 -286
- package/dist/esm2022/lib/components/whiteboard-components/whiteboard/whiteboard.component.mjs +0 -1833
- package/dist/esm2022/lib/consumers/add-videos-grid.service.mjs +0 -345
- package/dist/esm2022/lib/consumers/auto-adjust.service.mjs +0 -109
- package/dist/esm2022/lib/consumers/calculate-rows-and-columns.service.mjs +0 -60
- package/dist/esm2022/lib/consumers/change-vids.service.mjs +0 -551
- package/dist/esm2022/lib/consumers/check-grid.service.mjs +0 -93
- package/dist/esm2022/lib/consumers/check-permission.service.mjs +0 -105
- package/dist/esm2022/lib/consumers/check-screen-share.service.mjs +0 -106
- package/dist/esm2022/lib/consumers/close-and-resize.service.mjs +0 -331
- package/dist/esm2022/lib/consumers/compare-active-names.service.mjs +0 -106
- package/dist/esm2022/lib/consumers/compare-screen-states.service.mjs +0 -98
- package/dist/esm2022/lib/consumers/connect-ips.service.mjs +0 -154
- package/dist/esm2022/lib/consumers/connect-recv-transport.service.mjs +0 -146
- package/dist/esm2022/lib/consumers/connect-send-transport-audio.service.mjs +0 -84
- package/dist/esm2022/lib/consumers/connect-send-transport-screen.service.mjs +0 -102
- package/dist/esm2022/lib/consumers/connect-send-transport-video.service.mjs +0 -99
- package/dist/esm2022/lib/consumers/connect-send-transport.service.mjs +0 -140
- package/dist/esm2022/lib/consumers/consumer-resume.service.mjs +0 -368
- package/dist/esm2022/lib/consumers/control-media.service.mjs +0 -113
- package/dist/esm2022/lib/consumers/create-send-transport.service.mjs +0 -172
- package/dist/esm2022/lib/consumers/disconnect-send-transport-audio.service.mjs +0 -108
- package/dist/esm2022/lib/consumers/disconnect-send-transport-screen.service.mjs +0 -84
- package/dist/esm2022/lib/consumers/disconnect-send-transport-video.service.mjs +0 -101
- package/dist/esm2022/lib/consumers/disp-streams.service.mjs +0 -513
- package/dist/esm2022/lib/consumers/generate-page-content.service.mjs +0 -106
- package/dist/esm2022/lib/consumers/get-estimate.service.mjs +0 -120
- package/dist/esm2022/lib/consumers/get-piped-producers-alt.service.mjs +0 -82
- package/dist/esm2022/lib/consumers/get-producers-piped.service.mjs +0 -79
- package/dist/esm2022/lib/consumers/get-videos.service.mjs +0 -91
- package/dist/esm2022/lib/consumers/mix-streams.service.mjs +0 -95
- package/dist/esm2022/lib/consumers/on-screen-changes.service.mjs +0 -103
- package/dist/esm2022/lib/consumers/prepopulate-user-media.service.mjs +0 -541
- package/dist/esm2022/lib/consumers/process-consumer-transports-audio.service.mjs +0 -101
- package/dist/esm2022/lib/consumers/process-consumer-transports.service.mjs +0 -128
- package/dist/esm2022/lib/consumers/re-port.service.mjs +0 -114
- package/dist/esm2022/lib/consumers/re-update-inter.service.mjs +0 -239
- package/dist/esm2022/lib/consumers/readjust.service.mjs +0 -173
- package/dist/esm2022/lib/consumers/receive-all-piped-transports.service.mjs +0 -87
- package/dist/esm2022/lib/consumers/receive-room-messages.service.mjs +0 -69
- package/dist/esm2022/lib/consumers/reorder-streams.service.mjs +0 -239
- package/dist/esm2022/lib/consumers/request-screen-share.service.mjs +0 -101
- package/dist/esm2022/lib/consumers/resume-pause-audio-streams.service.mjs +0 -150
- package/dist/esm2022/lib/consumers/resume-pause-streams.service.mjs +0 -103
- package/dist/esm2022/lib/consumers/resume-send-transport-audio.service.mjs +0 -91
- package/dist/esm2022/lib/consumers/signal-new-consumer-transport.service.mjs +0 -136
- package/dist/esm2022/lib/consumers/socket-receive-methods/join-consume-room.service.mjs +0 -96
- package/dist/esm2022/lib/consumers/socket-receive-methods/new-pipe-producer.service.mjs +0 -100
- package/dist/esm2022/lib/consumers/socket-receive-methods/producer-closed.service.mjs +0 -78
- package/dist/esm2022/lib/consumers/start-share-screen.service.mjs +0 -120
- package/dist/esm2022/lib/consumers/stop-share-screen.service.mjs +0 -175
- package/dist/esm2022/lib/consumers/stream-success-audio-switch.service.mjs +0 -185
- package/dist/esm2022/lib/consumers/stream-success-audio.service.mjs +0 -210
- package/dist/esm2022/lib/consumers/stream-success-screen.service.mjs +0 -193
- package/dist/esm2022/lib/consumers/stream-success-video.service.mjs +0 -260
- package/dist/esm2022/lib/consumers/switch-user-audio.service.mjs +0 -120
- package/dist/esm2022/lib/consumers/switch-user-video-alt.service.mjs +0 -260
- package/dist/esm2022/lib/consumers/switch-user-video.service.mjs +0 -172
- package/dist/esm2022/lib/consumers/trigger.service.mjs +0 -210
- package/dist/esm2022/lib/consumers/update-mini-cards-grid.service.mjs +0 -135
- package/dist/esm2022/lib/consumers/update-participant-audio-decibels.service.mjs +0 -84
- package/dist/esm2022/lib/methods/background-methods/launch-background.service.mjs +0 -48
- package/dist/esm2022/lib/methods/breakout-room-methods/breakout-room-updated.service.mjs +0 -183
- package/dist/esm2022/lib/methods/breakout-room-methods/launch-breakout-rooms.service.mjs +0 -46
- package/dist/esm2022/lib/methods/co-host-methods/launch-co-host.service.mjs +0 -46
- package/dist/esm2022/lib/methods/co-host-methods/modify-co-host-settings.service.mjs +0 -104
- package/dist/esm2022/lib/methods/display-settings-methods/launch-display-settings.service.mjs +0 -46
- package/dist/esm2022/lib/methods/display-settings-methods/modify-display-settings.service.mjs +0 -194
- package/dist/esm2022/lib/methods/exit-methods/confirm-exit.service.mjs +0 -52
- package/dist/esm2022/lib/methods/exit-methods/launch-confirm-exit.service.mjs +0 -42
- package/dist/esm2022/lib/methods/media-settings-methods/launch-media-settings.service.mjs +0 -85
- package/dist/esm2022/lib/methods/menu-methods/launch-menu-modal.service.mjs +0 -44
- package/dist/esm2022/lib/methods/message-methods/launch-messages.service.mjs +0 -45
- package/dist/esm2022/lib/methods/message-methods/send-message.service.mjs +0 -143
- package/dist/esm2022/lib/methods/participants-methods/launch-participants.service.mjs +0 -47
- package/dist/esm2022/lib/methods/participants-methods/message-participants.service.mjs +0 -98
- package/dist/esm2022/lib/methods/participants-methods/mute-participants.service.mjs +0 -96
- package/dist/esm2022/lib/methods/participants-methods/remove-participants.service.mjs +0 -107
- package/dist/esm2022/lib/methods/polls-methods/handle-create-poll.service.mjs +0 -75
- package/dist/esm2022/lib/methods/polls-methods/handle-end-poll.service.mjs +0 -72
- package/dist/esm2022/lib/methods/polls-methods/handle-vote-poll.service.mjs +0 -83
- package/dist/esm2022/lib/methods/polls-methods/launch-poll.service.mjs +0 -43
- package/dist/esm2022/lib/methods/polls-methods/poll-updated.service.mjs +0 -95
- package/dist/esm2022/lib/methods/recording-methods/check-pause-state.service.mjs +0 -69
- package/dist/esm2022/lib/methods/recording-methods/check-resume-state.service.mjs +0 -56
- package/dist/esm2022/lib/methods/recording-methods/confirm-recording.service.mjs +0 -278
- package/dist/esm2022/lib/methods/recording-methods/launch-recording.service.mjs +0 -125
- package/dist/esm2022/lib/methods/recording-methods/record-pause-timer.service.mjs +0 -67
- package/dist/esm2022/lib/methods/recording-methods/record-resume-timer.service.mjs +0 -130
- package/dist/esm2022/lib/methods/recording-methods/record-start-timer.service.mjs +0 -134
- package/dist/esm2022/lib/methods/recording-methods/record-update-timer.service.mjs +0 -80
- package/dist/esm2022/lib/methods/recording-methods/start-recording.service.mjs +0 -197
- package/dist/esm2022/lib/methods/recording-methods/stop-recording.service.mjs +0 -112
- package/dist/esm2022/lib/methods/recording-methods/update-recording.service.mjs +0 -272
- package/dist/esm2022/lib/methods/requests-methods/launch-requests.service.mjs +0 -51
- package/dist/esm2022/lib/methods/requests-methods/respond-to-requests.service.mjs +0 -84
- package/dist/esm2022/lib/methods/settings-methods/launch-settings.service.mjs +0 -51
- package/dist/esm2022/lib/methods/settings-methods/modify-settings.service.mjs +0 -109
- package/dist/esm2022/lib/methods/stream-methods/click-audio.service.mjs +0 -275
- package/dist/esm2022/lib/methods/stream-methods/click-chat.service.mjs +0 -75
- package/dist/esm2022/lib/methods/stream-methods/click-screen-share.service.mjs +0 -178
- package/dist/esm2022/lib/methods/stream-methods/click-video.service.mjs +0 -271
- package/dist/esm2022/lib/methods/stream-methods/switch-audio.service.mjs +0 -80
- package/dist/esm2022/lib/methods/stream-methods/switch-video-alt.service.mjs +0 -116
- package/dist/esm2022/lib/methods/stream-methods/switch-video.service.mjs +0 -132
- package/dist/esm2022/lib/methods/utils/format-number.service.mjs +0 -57
- package/dist/esm2022/lib/methods/utils/generate-random-messages.service.mjs +0 -120
- package/dist/esm2022/lib/methods/utils/generate-random-participants.service.mjs +0 -126
- package/dist/esm2022/lib/methods/utils/generate-random-polls.service.mjs +0 -78
- package/dist/esm2022/lib/methods/utils/generate-random-request-list.service.mjs +0 -90
- package/dist/esm2022/lib/methods/utils/generate-random-waiting-room-list.service.mjs +0 -59
- package/dist/esm2022/lib/methods/utils/get-modal-position.util.mjs +0 -32
- package/dist/esm2022/lib/methods/utils/get-overlay-position.util.mjs +0 -31
- package/dist/esm2022/lib/methods/utils/initial-values.util.mjs +0 -379
- package/dist/esm2022/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.mjs +0 -96
- package/dist/esm2022/lib/methods/utils/mini-audio-player/mini-audio-player.component.mjs +0 -315
- package/dist/esm2022/lib/methods/utils/producer/a-params.service.mjs +0 -58
- package/dist/esm2022/lib/methods/utils/producer/h-params.service.mjs +0 -87
- package/dist/esm2022/lib/methods/utils/producer/screen-params.service.mjs +0 -61
- package/dist/esm2022/lib/methods/utils/producer/v-params.service.mjs +0 -87
- package/dist/esm2022/lib/methods/utils/producer/video-capture-constraints.service.mjs +0 -84
- package/dist/esm2022/lib/methods/utils/sleep.util.mjs +0 -17
- package/dist/esm2022/lib/methods/utils/sound-player.service.mjs +0 -63
- package/dist/esm2022/lib/methods/utils/validate-alphanumeric.service.mjs +0 -49
- package/dist/esm2022/lib/methods/waiting-methods/launch-waiting.service.mjs +0 -41
- package/dist/esm2022/lib/methods/waiting-methods/respond-to-waiting.service.mjs +0 -69
- package/dist/esm2022/lib/methods/whiteboard-methods/capture-canvas-stream.service.mjs +0 -98
- package/dist/esm2022/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.mjs +0 -44
- package/dist/esm2022/lib/producer-client/producer-client-emits/create-device-client.service.mjs +0 -74
- package/dist/esm2022/lib/producer-client/producer-client-emits/join-room-client.service.mjs +0 -96
- package/dist/esm2022/lib/producer-client/producer-client-emits/update-room-parameters-client.service.mjs +0 -276
- package/dist/esm2022/lib/producers/producer-emits/join-con-room.service.mjs +0 -152
- package/dist/esm2022/lib/producers/producer-emits/join-room.service.mjs +0 -152
- package/dist/esm2022/lib/producers/socket-receive-methods/all-members-rest.service.mjs +0 -228
- package/dist/esm2022/lib/producers/socket-receive-methods/all-members.service.mjs +0 -218
- package/dist/esm2022/lib/producers/socket-receive-methods/all-waiting-room-members.service.mjs +0 -57
- package/dist/esm2022/lib/producers/socket-receive-methods/ban-participant.service.mjs +0 -76
- package/dist/esm2022/lib/producers/socket-receive-methods/control-media-host.service.mjs +0 -183
- package/dist/esm2022/lib/producers/socket-receive-methods/disconnect-user-self.service.mjs +0 -50
- package/dist/esm2022/lib/producers/socket-receive-methods/disconnect.service.mjs +0 -64
- package/dist/esm2022/lib/producers/socket-receive-methods/get-domains.service.mjs +0 -78
- package/dist/esm2022/lib/producers/socket-receive-methods/host-request-response.service.mjs +0 -150
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-ended.service.mjs +0 -73
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-still-there.service.mjs +0 -47
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-time-remaining.service.mjs +0 -63
- package/dist/esm2022/lib/producers/socket-receive-methods/participant-requested.service.mjs +0 -63
- package/dist/esm2022/lib/producers/socket-receive-methods/person-joined.service.mjs +0 -54
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-closed.service.mjs +0 -129
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-paused.service.mjs +0 -152
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-resumed.service.mjs +0 -99
- package/dist/esm2022/lib/producers/socket-receive-methods/re-initiate-recording.service.mjs +0 -67
- package/dist/esm2022/lib/producers/socket-receive-methods/receive-message.service.mjs +0 -134
- package/dist/esm2022/lib/producers/socket-receive-methods/recording-notice.service.mjs +0 -233
- package/dist/esm2022/lib/producers/socket-receive-methods/room-record-params.service.mjs +0 -121
- package/dist/esm2022/lib/producers/socket-receive-methods/screen-producer-id.service.mjs +0 -86
- package/dist/esm2022/lib/producers/socket-receive-methods/start-records.service.mjs +0 -60
- package/dist/esm2022/lib/producers/socket-receive-methods/stopped-recording.service.mjs +0 -62
- package/dist/esm2022/lib/producers/socket-receive-methods/time-left-recording.service.mjs +0 -57
- package/dist/esm2022/lib/producers/socket-receive-methods/update-consuming-domains.service.mjs +0 -105
- package/dist/esm2022/lib/producers/socket-receive-methods/update-media-settings.service.mjs +0 -66
- package/dist/esm2022/lib/producers/socket-receive-methods/updated-co-host.service.mjs +0 -96
- package/dist/esm2022/lib/producers/socket-receive-methods/user-waiting.service.mjs +0 -52
- package/dist/esm2022/lib/sockets/socket-manager.service.mjs +0 -113
- package/dist/esm2022/mediasfu-angular.mjs +0 -5
- package/dist/esm2022/public-api.mjs +0 -187
package/dist/esm2022/lib/methods/display-settings-methods/modify-display-settings.service.mjs
DELETED
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Modifies the display settings based on the provided parameters.
|
|
5
|
-
*
|
|
6
|
-
* This method updates the display settings for the meeting based on the participant's level,
|
|
7
|
-
* recording status, and other conditions. It validates display types and shows alerts
|
|
8
|
-
* when necessary. It also handles the display settings for breakout rooms.
|
|
9
|
-
*
|
|
10
|
-
* @param {ModifyDisplaySettingsOptions} options - The options containing the parameters to modify the display settings.
|
|
11
|
-
* @param {Object} options.parameters - The parameters for modifying the display settings.
|
|
12
|
-
* @param {Function} options.parameters.showAlert - Function to show alert messages.
|
|
13
|
-
* @param {string} options.parameters.meetingDisplayType - The current meeting display type.
|
|
14
|
-
* @param {boolean} options.parameters.autoWave - Flag indicating if auto wave is enabled.
|
|
15
|
-
* @param {boolean} options.parameters.forceFullDisplay - Flag indicating if full display is forced.
|
|
16
|
-
* @param {boolean} options.parameters.meetingVideoOptimized - Flag indicating if the meeting video is optimized.
|
|
17
|
-
* @param {string} options.parameters.islevel - The current level of the meeting.
|
|
18
|
-
* @param {boolean} options.parameters.recordStarted - Flag indicating if recording has started.
|
|
19
|
-
* @param {boolean} options.parameters.recordResumed - Flag indicating if recording has resumed.
|
|
20
|
-
* @param {boolean} options.parameters.recordStopped - Flag indicating if recording has stopped.
|
|
21
|
-
* @param {boolean} options.parameters.recordPaused - Flag indicating if recording is paused.
|
|
22
|
-
* @param {string} options.parameters.recordingDisplayType - The current recording display type.
|
|
23
|
-
* @param {boolean} options.parameters.recordingVideoOptimized - Flag indicating if the recording video is optimized.
|
|
24
|
-
* @param {string} options.parameters.prevForceFullDisplay - The previous force full display value.
|
|
25
|
-
* @param {string} options.parameters.prevMeetingDisplayType - The previous meeting display type.
|
|
26
|
-
* @param {Function} options.parameters.updateMeetingDisplayType - Function to update the meeting display type.
|
|
27
|
-
* @param {Function} options.parameters.updateAutoWave - Function to update the auto wave setting.
|
|
28
|
-
* @param {Function} options.parameters.updateForceFullDisplay - Function to update the force full display setting.
|
|
29
|
-
* @param {Function} options.parameters.updateMeetingVideoOptimized - Function to update the meeting video optimization setting.
|
|
30
|
-
* @param {Function} options.parameters.updatePrevForceFullDisplay - Function to update the previous force full display setting.
|
|
31
|
-
* @param {Function} options.parameters.updatePrevMeetingDisplayType - Function to update the previous meeting display type.
|
|
32
|
-
* @param {Function} options.parameters.updateIsDisplaySettingsModalVisible - Function to update the visibility of the display settings modal.
|
|
33
|
-
* @param {Function} options.parameters.updateFirstAll - Function to update the first all setting.
|
|
34
|
-
* @param {Function} options.parameters.updateUpdateMainWindow - Function to update the main window.
|
|
35
|
-
* @param {boolean} options.parameters.breakOutRoomStarted - Flag indicating if a breakout room has started.
|
|
36
|
-
* @param {boolean} options.parameters.breakOutRoomEnded - Flag indicating if a breakout room has ended.
|
|
37
|
-
* @param {Function} options.parameters.onScreenChanges - Function to handle screen changes.
|
|
38
|
-
*
|
|
39
|
-
* @returns {Promise<void>} A promise that resolves when the display settings have been modified.
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```typescript
|
|
43
|
-
* const options: ModifyDisplaySettingsOptions = {
|
|
44
|
-
* parameters: {
|
|
45
|
-
* showAlert: (alert) => console.log(alert.message),
|
|
46
|
-
* meetingDisplayType: 'video',
|
|
47
|
-
* autoWave: true,
|
|
48
|
-
* forceFullDisplay: false,
|
|
49
|
-
* meetingVideoOptimized: true,
|
|
50
|
-
* islevel: '1',
|
|
51
|
-
* recordStarted: false,
|
|
52
|
-
* recordResumed: false,
|
|
53
|
-
* recordStopped: false,
|
|
54
|
-
* recordPaused: false,
|
|
55
|
-
* recordingDisplayType: 'media',
|
|
56
|
-
* recordingVideoOptimized: false,
|
|
57
|
-
* prevForceFullDisplay: false,
|
|
58
|
-
* prevMeetingDisplayType: 'media',
|
|
59
|
-
* updateMeetingDisplayType: (type) => console.log('Updated display type:', type),
|
|
60
|
-
* updateAutoWave: (wave) => console.log('Updated auto wave:', wave),
|
|
61
|
-
* updateForceFullDisplay: (fullDisplay) => console.log('Updated force full display:', fullDisplay),
|
|
62
|
-
* updateMeetingVideoOptimized: (optimized) => console.log('Updated video optimization:', optimized),
|
|
63
|
-
* updatePrevForceFullDisplay: (fullDisplay) => console.log('Updated previous full display:', fullDisplay),
|
|
64
|
-
* updatePrevMeetingDisplayType: (type) => console.log('Updated previous display type:', type),
|
|
65
|
-
* updateIsDisplaySettingsModalVisible: (isVisible) => console.log('Display settings modal is now:', isVisible),
|
|
66
|
-
* updateFirstAll: (firstAll) => console.log('Updated first all:', firstAll),
|
|
67
|
-
* updateUpdateMainWindow: (update) => console.log('Updated main window:', update),
|
|
68
|
-
* breakOutRoomStarted: false,
|
|
69
|
-
* breakOutRoomEnded: false,
|
|
70
|
-
* onScreenChanges: async ({ changed, parameters }) => console.log('Screen changes:', changed),
|
|
71
|
-
* },
|
|
72
|
-
* };
|
|
73
|
-
*
|
|
74
|
-
* const modifyDisplaySettingsService = new ModifyDisplaySettings();
|
|
75
|
-
* await modifyDisplaySettingsService.modifyDisplaySettings(options);
|
|
76
|
-
* ```
|
|
77
|
-
*/
|
|
78
|
-
export class ModifyDisplaySettings {
|
|
79
|
-
/**
|
|
80
|
-
* Modifies the display settings based on the provided parameters.
|
|
81
|
-
*
|
|
82
|
-
* @param {ModifyDisplaySettingsOptions} options - The options containing the parameters to modify the display settings.
|
|
83
|
-
* @param {Object} options.parameters - The parameters for modifying the display settings.
|
|
84
|
-
* @param {Function} options.parameters.showAlert - Function to show alert messages.
|
|
85
|
-
* @param {string} options.parameters.meetingDisplayType - The current meeting display type.
|
|
86
|
-
* @param {boolean} options.parameters.autoWave - Flag indicating if auto wave is enabled.
|
|
87
|
-
* @param {boolean} options.parameters.forceFullDisplay - Flag indicating if full display is forced.
|
|
88
|
-
* @param {boolean} options.parameters.meetingVideoOptimized - Flag indicating if the meeting video is optimized.
|
|
89
|
-
* @param {string} options.parameters.islevel - The current level of the meeting.
|
|
90
|
-
* @param {boolean} options.parameters.recordStarted - Flag indicating if recording has started.
|
|
91
|
-
* @param {boolean} options.parameters.recordResumed - Flag indicating if recording has resumed.
|
|
92
|
-
* @param {boolean} options.parameters.recordStopped - Flag indicating if recording has stopped.
|
|
93
|
-
* @param {boolean} options.parameters.recordPaused - Flag indicating if recording is paused.
|
|
94
|
-
* @param {string} options.parameters.recordingDisplayType - The current recording display type.
|
|
95
|
-
* @param {boolean} options.parameters.recordingVideoOptimized - Flag indicating if the recording video is optimized.
|
|
96
|
-
* @param {string} options.parameters.prevForceFullDisplay - The previous force full display value.
|
|
97
|
-
* @param {string} options.parameters.prevMeetingDisplayType - The previous meeting display type.
|
|
98
|
-
* @param {Function} options.parameters.updateMeetingDisplayType - Function to update the meeting display type.
|
|
99
|
-
* @param {Function} options.parameters.updateAutoWave - Function to update the auto wave setting.
|
|
100
|
-
* @param {Function} options.parameters.updateForceFullDisplay - Function to update the force full display setting.
|
|
101
|
-
* @param {Function} options.parameters.updateMeetingVideoOptimized - Function to update the meeting video optimization setting.
|
|
102
|
-
* @param {Function} options.parameters.updatePrevForceFullDisplay - Function to update the previous force full display setting.
|
|
103
|
-
* @param {Function} options.parameters.updatePrevMeetingDisplayType - Function to update the previous meeting display type.
|
|
104
|
-
* @param {Function} options.parameters.updateIsDisplaySettingsModalVisible - Function to update the visibility of the display settings modal.
|
|
105
|
-
* @param {Function} options.parameters.updateFirstAll - Function to update the first all setting.
|
|
106
|
-
* @param {Function} options.parameters.updateUpdateMainWindow - Function to update the main window.
|
|
107
|
-
* @param {boolean} options.parameters.breakOutRoomStarted - Flag indicating if a breakout room has started.
|
|
108
|
-
* @param {boolean} options.parameters.breakOutRoomEnded - Flag indicating if a breakout room has ended.
|
|
109
|
-
* @param {Function} options.parameters.onScreenChanges - Function to handle screen changes.
|
|
110
|
-
*
|
|
111
|
-
* @returns {Promise<void>} A promise that resolves when the display settings have been modified.
|
|
112
|
-
*/
|
|
113
|
-
modifyDisplaySettings = async ({ parameters }) => {
|
|
114
|
-
// Destructure the parameters
|
|
115
|
-
let { showAlert, meetingDisplayType, autoWave, forceFullDisplay, meetingVideoOptimized, islevel, recordStarted, recordResumed, recordStopped, recordPaused, recordingDisplayType, recordingVideoOptimized, prevForceFullDisplay, prevMeetingDisplayType, updateMeetingDisplayType, updateAutoWave, updateForceFullDisplay, updateMeetingVideoOptimized, updatePrevForceFullDisplay, updatePrevMeetingDisplayType, updateIsDisplaySettingsModalVisible, updateFirstAll, updateUpdateMainWindow, breakOutRoomStarted, breakOutRoomEnded, onScreenChanges, } = parameters;
|
|
116
|
-
// Update previous states
|
|
117
|
-
updateAutoWave(autoWave);
|
|
118
|
-
updateForceFullDisplay(forceFullDisplay);
|
|
119
|
-
if (islevel === '2' && (recordStarted || recordResumed) && !recordStopped && !recordPaused) {
|
|
120
|
-
if (recordingDisplayType === 'video' &&
|
|
121
|
-
meetingDisplayType === 'video' &&
|
|
122
|
-
meetingVideoOptimized &&
|
|
123
|
-
!recordingVideoOptimized) {
|
|
124
|
-
showAlert?.({
|
|
125
|
-
message: 'Meeting display type can be either video, media, or all when recording display type is non-optimized video.',
|
|
126
|
-
type: 'danger',
|
|
127
|
-
duration: 3000,
|
|
128
|
-
});
|
|
129
|
-
// Reset to previous values or handle as needed
|
|
130
|
-
meetingDisplayType = recordingDisplayType;
|
|
131
|
-
updateMeetingDisplayType(meetingDisplayType);
|
|
132
|
-
meetingVideoOptimized = recordingVideoOptimized;
|
|
133
|
-
updateMeetingVideoOptimized(meetingVideoOptimized);
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
else if (recordingDisplayType === 'media' && meetingDisplayType === 'video') {
|
|
137
|
-
showAlert?.({
|
|
138
|
-
message: 'Meeting display type can be either media or all when recording display type is media.',
|
|
139
|
-
type: 'danger',
|
|
140
|
-
duration: 3000,
|
|
141
|
-
});
|
|
142
|
-
// Reset to previous values or handle as needed
|
|
143
|
-
meetingDisplayType = recordingDisplayType;
|
|
144
|
-
updateMeetingDisplayType(meetingDisplayType);
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
else if (recordingDisplayType === 'all' &&
|
|
148
|
-
(meetingDisplayType === 'video' || meetingDisplayType === 'media')) {
|
|
149
|
-
showAlert?.({
|
|
150
|
-
message: 'Meeting display type can be only all when recording display type is all.',
|
|
151
|
-
type: 'danger',
|
|
152
|
-
duration: 3000,
|
|
153
|
-
});
|
|
154
|
-
// Reset to previous values or handle as needed
|
|
155
|
-
meetingDisplayType = recordingDisplayType;
|
|
156
|
-
updateMeetingDisplayType(meetingDisplayType);
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
updateMeetingDisplayType(meetingDisplayType);
|
|
161
|
-
updateMeetingVideoOptimized(meetingVideoOptimized);
|
|
162
|
-
// Close the modal or perform additional actions
|
|
163
|
-
updateIsDisplaySettingsModalVisible(false);
|
|
164
|
-
if (prevMeetingDisplayType !== meetingDisplayType ||
|
|
165
|
-
prevForceFullDisplay !== forceFullDisplay) {
|
|
166
|
-
if (breakOutRoomStarted && !breakOutRoomEnded && meetingDisplayType !== 'all') {
|
|
167
|
-
showAlert?.({
|
|
168
|
-
message: 'Breakout room is active. Display type can only be all.',
|
|
169
|
-
type: 'danger',
|
|
170
|
-
});
|
|
171
|
-
meetingDisplayType = prevMeetingDisplayType;
|
|
172
|
-
updateMeetingDisplayType(prevMeetingDisplayType);
|
|
173
|
-
return;
|
|
174
|
-
}
|
|
175
|
-
updateFirstAll(meetingDisplayType !== 'all' ? true : false);
|
|
176
|
-
updateUpdateMainWindow(true);
|
|
177
|
-
await onScreenChanges({
|
|
178
|
-
changed: true,
|
|
179
|
-
parameters: { ...parameters, meetingDisplayType, forceFullDisplay },
|
|
180
|
-
});
|
|
181
|
-
updatePrevForceFullDisplay(forceFullDisplay);
|
|
182
|
-
updatePrevMeetingDisplayType(meetingDisplayType);
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyDisplaySettings, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
186
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyDisplaySettings, providedIn: 'root' });
|
|
187
|
-
}
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModifyDisplaySettings, decorators: [{
|
|
189
|
-
type: Injectable,
|
|
190
|
-
args: [{
|
|
191
|
-
providedIn: 'root',
|
|
192
|
-
}]
|
|
193
|
-
}] });
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kaWZ5LWRpc3BsYXktc2V0dGluZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL2Rpc3BsYXktc2V0dGluZ3MtbWV0aG9kcy9tb2RpZnktZGlzcGxheS1zZXR0aW5ncy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBMkMzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRUc7QUFLSCxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FpQ0c7SUFFSCxxQkFBcUIsR0FBRyxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQWdDLEVBQWlCLEVBQUU7UUFDNUYsNkJBQTZCO1FBQzdCLElBQUksRUFDRixTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUixnQkFBZ0IsRUFDaEIscUJBQXFCLEVBQ3JCLE9BQU8sRUFDUCxhQUFhLEVBQ2IsYUFBYSxFQUNiLGFBQWEsRUFDYixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLHdCQUF3QixFQUN4QixjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3RCLDJCQUEyQixFQUMzQiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBQzVCLG1DQUFtQyxFQUNuQyxjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUNuQixpQkFBaUIsRUFDakIsZUFBZSxHQUNoQixHQUFHLFVBQVUsQ0FBQztRQUVmLHlCQUF5QjtRQUN6QixjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekIsc0JBQXNCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV6QyxJQUFJLE9BQU8sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMzRixJQUNFLG9CQUFvQixLQUFLLE9BQU87Z0JBQ2hDLGtCQUFrQixLQUFLLE9BQU87Z0JBQzlCLHFCQUFxQjtnQkFDckIsQ0FBQyx1QkFBdUIsRUFDeEIsQ0FBQztnQkFDRCxTQUFTLEVBQUUsQ0FBQztvQkFDVixPQUFPLEVBQ0wsNkdBQTZHO29CQUMvRyxJQUFJLEVBQUUsUUFBUTtvQkFDZCxRQUFRLEVBQUUsSUFBSTtpQkFDZixDQUFDLENBQUM7Z0JBQ0gsK0NBQStDO2dCQUMvQyxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztnQkFDMUMsd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDN0MscUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7Z0JBQ2hELDJCQUEyQixDQUFDLHFCQUFxQixDQUFDLENBQUM7Z0JBQ25ELE9BQU87WUFDVCxDQUFDO2lCQUFNLElBQUksb0JBQW9CLEtBQUssT0FBTyxJQUFJLGtCQUFrQixLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUM5RSxTQUFTLEVBQUUsQ0FBQztvQkFDVixPQUFPLEVBQ0wsdUZBQXVGO29CQUN6RixJQUFJLEVBQUUsUUFBUTtvQkFDZCxRQUFRLEVBQUUsSUFBSTtpQkFDZixDQUFDLENBQUM7Z0JBRUgsK0NBQStDO2dCQUMvQyxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztnQkFDMUMsd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDN0MsT0FBTztZQUNULENBQUM7aUJBQU0sSUFDTCxvQkFBb0IsS0FBSyxLQUFLO2dCQUM5QixDQUFDLGtCQUFrQixLQUFLLE9BQU8sSUFBSSxrQkFBa0IsS0FBSyxPQUFPLENBQUMsRUFDbEUsQ0FBQztnQkFDRCxTQUFTLEVBQUUsQ0FBQztvQkFDVixPQUFPLEVBQUUsMEVBQTBFO29CQUNuRixJQUFJLEVBQUUsUUFBUTtvQkFDZCxRQUFRLEVBQUUsSUFBSTtpQkFDZixDQUFDLENBQUM7Z0JBQ0gsK0NBQStDO2dCQUMvQyxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztnQkFDMUMsd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDN0MsT0FBTztZQUNULENBQUM7UUFDSCxDQUFDO1FBRUQsd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUM3QywyQkFBMkIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRW5ELGdEQUFnRDtRQUNoRCxtQ0FBbUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzQyxJQUNFLHNCQUFzQixLQUFLLGtCQUFrQjtZQUM3QyxvQkFBb0IsS0FBSyxnQkFBZ0IsRUFDekMsQ0FBQztZQUNELElBQUksbUJBQW1CLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxrQkFBa0IsS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDOUUsU0FBUyxFQUFFLENBQUM7b0JBQ1YsT0FBTyxFQUFFLHdEQUF3RDtvQkFDakUsSUFBSSxFQUFFLFFBQVE7aUJBQ2YsQ0FBQyxDQUFDO2dCQUNILGtCQUFrQixHQUFHLHNCQUFzQixDQUFDO2dCQUM1Qyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUNqRCxPQUFPO1lBQ1QsQ0FBQztZQUVELGNBQWMsQ0FBQyxrQkFBa0IsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUQsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsTUFBTSxlQUFlLENBQUM7Z0JBQ3BCLE9BQU8sRUFBRSxJQUFJO2dCQUNiLFVBQVUsRUFBRSxFQUFFLEdBQUcsVUFBVSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFO2FBQ3BFLENBQUMsQ0FBQztZQUNILDBCQUEwQixDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDN0MsNEJBQTRCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQyxDQUFDO3VHQW5KUyxxQkFBcUI7MkdBQXJCLHFCQUFxQixjQUZwQixNQUFNOzsyRkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT25TY3JlZW5DaGFuZ2VzUGFyYW1ldGVycywgT25TY3JlZW5DaGFuZ2VzVHlwZSwgU2hvd0FsZXJ0IH0gZnJvbSAnLi4vLi4vQHR5cGVzL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlEaXNwbGF5U2V0dGluZ3NQYXJhbWV0ZXJzIGV4dGVuZHMgT25TY3JlZW5DaGFuZ2VzUGFyYW1ldGVycyB7XG4gIHNob3dBbGVydD86IFNob3dBbGVydDtcbiAgbWVldGluZ0Rpc3BsYXlUeXBlOiBzdHJpbmc7XG4gIGF1dG9XYXZlOiBib29sZWFuO1xuICBmb3JjZUZ1bGxEaXNwbGF5OiBib29sZWFuO1xuICBtZWV0aW5nVmlkZW9PcHRpbWl6ZWQ6IGJvb2xlYW47XG4gIGlzbGV2ZWw6IHN0cmluZztcbiAgcmVjb3JkU3RhcnRlZDogYm9vbGVhbjtcbiAgcmVjb3JkUmVzdW1lZDogYm9vbGVhbjtcbiAgcmVjb3JkU3RvcHBlZDogYm9vbGVhbjtcbiAgcmVjb3JkUGF1c2VkOiBib29sZWFuO1xuICByZWNvcmRpbmdEaXNwbGF5VHlwZTogJ3ZpZGVvJyB8ICdtZWRpYScgfCAnYWxsJztcbiAgcmVjb3JkaW5nVmlkZW9PcHRpbWl6ZWQ6IGJvb2xlYW47XG4gIHByZXZGb3JjZUZ1bGxEaXNwbGF5OiBib29sZWFuO1xuICBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlOiBzdHJpbmc7XG4gIHVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZTogKGRpc3BsYXlUeXBlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIHVwZGF0ZUF1dG9XYXZlOiAoYXV0b1dhdmU6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHVwZGF0ZUZvcmNlRnVsbERpc3BsYXk6IChmb3JjZUZ1bGxEaXNwbGF5OiBib29sZWFuKSA9PiB2b2lkO1xuICB1cGRhdGVNZWV0aW5nVmlkZW9PcHRpbWl6ZWQ6IChvcHRpbWl6ZWQ6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHVwZGF0ZVByZXZGb3JjZUZ1bGxEaXNwbGF5OiAoZm9yY2VGdWxsRGlzcGxheTogYm9vbGVhbikgPT4gdm9pZDtcbiAgdXBkYXRlUHJldk1lZXRpbmdEaXNwbGF5VHlwZTogKGRpc3BsYXlUeXBlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIHVwZGF0ZUlzRGlzcGxheVNldHRpbmdzTW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuICB1cGRhdGVGaXJzdEFsbDogKGZpcnN0QWxsOiBib29sZWFuKSA9PiB2b2lkO1xuICB1cGRhdGVVcGRhdGVNYWluV2luZG93OiAodXBkYXRlOiBib29sZWFuKSA9PiB2b2lkO1xuICBicmVha091dFJvb21TdGFydGVkOiBib29sZWFuO1xuICBicmVha091dFJvb21FbmRlZDogYm9vbGVhbjtcblxuICAvLyBtZWRpYXNmdSBmdW5jdGlvbnNcbiAgb25TY3JlZW5DaGFuZ2VzOiBPblNjcmVlbkNoYW5nZXNUeXBlO1xuXG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlEaXNwbGF5U2V0dGluZ3NPcHRpb25zIHtcbiAgcGFyYW1ldGVyczogTW9kaWZ5RGlzcGxheVNldHRpbmdzUGFyYW1ldGVycztcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgTW9kaWZ5RGlzcGxheVNldHRpbmdzVHlwZSA9IChvcHRpb25zOiBNb2RpZnlEaXNwbGF5U2V0dGluZ3NPcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4vKipcbiAqIE1vZGlmaWVzIHRoZSBkaXNwbGF5IHNldHRpbmdzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICpcbiAqIFRoaXMgbWV0aG9kIHVwZGF0ZXMgdGhlIGRpc3BsYXkgc2V0dGluZ3MgZm9yIHRoZSBtZWV0aW5nIGJhc2VkIG9uIHRoZSBwYXJ0aWNpcGFudCdzIGxldmVsLFxuICogcmVjb3JkaW5nIHN0YXR1cywgYW5kIG90aGVyIGNvbmRpdGlvbnMuIEl0IHZhbGlkYXRlcyBkaXNwbGF5IHR5cGVzIGFuZCBzaG93cyBhbGVydHNcbiAqIHdoZW4gbmVjZXNzYXJ5LiBJdCBhbHNvIGhhbmRsZXMgdGhlIGRpc3BsYXkgc2V0dGluZ3MgZm9yIGJyZWFrb3V0IHJvb21zLlxuICpcbiAqIEBwYXJhbSB7TW9kaWZ5RGlzcGxheVNldHRpbmdzT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGNvbnRhaW5pbmcgdGhlIHBhcmFtZXRlcnMgdG8gbW9kaWZ5IHRoZSBkaXNwbGF5IHNldHRpbmdzLlxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMucGFyYW1ldGVycyAtIFRoZSBwYXJhbWV0ZXJzIGZvciBtb2RpZnlpbmcgdGhlIGRpc3BsYXkgc2V0dGluZ3MuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMuc2hvd0FsZXJ0IC0gRnVuY3Rpb24gdG8gc2hvdyBhbGVydCBtZXNzYWdlcy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMubWVldGluZ0Rpc3BsYXlUeXBlIC0gVGhlIGN1cnJlbnQgbWVldGluZyBkaXNwbGF5IHR5cGUuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5hdXRvV2F2ZSAtIEZsYWcgaW5kaWNhdGluZyBpZiBhdXRvIHdhdmUgaXMgZW5hYmxlZC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmZvcmNlRnVsbERpc3BsYXkgLSBGbGFnIGluZGljYXRpbmcgaWYgZnVsbCBkaXNwbGF5IGlzIGZvcmNlZC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLm1lZXRpbmdWaWRlb09wdGltaXplZCAtIEZsYWcgaW5kaWNhdGluZyBpZiB0aGUgbWVldGluZyB2aWRlbyBpcyBvcHRpbWl6ZWQuXG4gKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJhbWV0ZXJzLmlzbGV2ZWwgLSBUaGUgY3VycmVudCBsZXZlbCBvZiB0aGUgbWVldGluZy5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnJlY29yZFN0YXJ0ZWQgLSBGbGFnIGluZGljYXRpbmcgaWYgcmVjb3JkaW5nIGhhcyBzdGFydGVkLlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMucmVjb3JkUmVzdW1lZCAtIEZsYWcgaW5kaWNhdGluZyBpZiByZWNvcmRpbmcgaGFzIHJlc3VtZWQuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5yZWNvcmRTdG9wcGVkIC0gRmxhZyBpbmRpY2F0aW5nIGlmIHJlY29yZGluZyBoYXMgc3RvcHBlZC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnJlY29yZFBhdXNlZCAtIEZsYWcgaW5kaWNhdGluZyBpZiByZWNvcmRpbmcgaXMgcGF1c2VkLlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFyYW1ldGVycy5yZWNvcmRpbmdEaXNwbGF5VHlwZSAtIFRoZSBjdXJyZW50IHJlY29yZGluZyBkaXNwbGF5IHR5cGUuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5yZWNvcmRpbmdWaWRlb09wdGltaXplZCAtIEZsYWcgaW5kaWNhdGluZyBpZiB0aGUgcmVjb3JkaW5nIHZpZGVvIGlzIG9wdGltaXplZC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMucHJldkZvcmNlRnVsbERpc3BsYXkgLSBUaGUgcHJldmlvdXMgZm9yY2UgZnVsbCBkaXNwbGF5IHZhbHVlLlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFyYW1ldGVycy5wcmV2TWVldGluZ0Rpc3BsYXlUeXBlIC0gVGhlIHByZXZpb3VzIG1lZXRpbmcgZGlzcGxheSB0eXBlLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbWVldGluZyBkaXNwbGF5IHR5cGUuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlQXV0b1dhdmUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGF1dG8gd2F2ZSBzZXR0aW5nLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZUZvcmNlRnVsbERpc3BsYXkgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGZvcmNlIGZ1bGwgZGlzcGxheSBzZXR0aW5nLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZU1lZXRpbmdWaWRlb09wdGltaXplZCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbWVldGluZyB2aWRlbyBvcHRpbWl6YXRpb24gc2V0dGluZy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVQcmV2Rm9yY2VGdWxsRGlzcGxheSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgcHJldmlvdXMgZm9yY2UgZnVsbCBkaXNwbGF5IHNldHRpbmcuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlUHJldk1lZXRpbmdEaXNwbGF5VHlwZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgcHJldmlvdXMgbWVldGluZyBkaXNwbGF5IHR5cGUuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlSXNEaXNwbGF5U2V0dGluZ3NNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGRpc3BsYXkgc2V0dGluZ3MgbW9kYWwuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlRmlyc3RBbGwgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGZpcnN0IGFsbCBzZXR0aW5nLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVVwZGF0ZU1haW5XaW5kb3cgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIG1haW4gd2luZG93LlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMuYnJlYWtPdXRSb29tU3RhcnRlZCAtIEZsYWcgaW5kaWNhdGluZyBpZiBhIGJyZWFrb3V0IHJvb20gaGFzIHN0YXJ0ZWQuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5icmVha091dFJvb21FbmRlZCAtIEZsYWcgaW5kaWNhdGluZyBpZiBhIGJyZWFrb3V0IHJvb20gaGFzIGVuZGVkLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLm9uU2NyZWVuQ2hhbmdlcyAtIEZ1bmN0aW9uIHRvIGhhbmRsZSBzY3JlZW4gY2hhbmdlcy5cbiAqXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZGlzcGxheSBzZXR0aW5ncyBoYXZlIGJlZW4gbW9kaWZpZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IG9wdGlvbnM6IE1vZGlmeURpc3BsYXlTZXR0aW5nc09wdGlvbnMgPSB7XG4gKiAgIHBhcmFtZXRlcnM6IHtcbiAqICAgICBzaG93QWxlcnQ6IChhbGVydCkgPT4gY29uc29sZS5sb2coYWxlcnQubWVzc2FnZSksXG4gKiAgICAgbWVldGluZ0Rpc3BsYXlUeXBlOiAndmlkZW8nLFxuICogICAgIGF1dG9XYXZlOiB0cnVlLFxuICogICAgIGZvcmNlRnVsbERpc3BsYXk6IGZhbHNlLFxuICogICAgIG1lZXRpbmdWaWRlb09wdGltaXplZDogdHJ1ZSxcbiAqICAgICBpc2xldmVsOiAnMScsXG4gKiAgICAgcmVjb3JkU3RhcnRlZDogZmFsc2UsXG4gKiAgICAgcmVjb3JkUmVzdW1lZDogZmFsc2UsXG4gKiAgICAgcmVjb3JkU3RvcHBlZDogZmFsc2UsXG4gKiAgICAgcmVjb3JkUGF1c2VkOiBmYWxzZSxcbiAqICAgICByZWNvcmRpbmdEaXNwbGF5VHlwZTogJ21lZGlhJyxcbiAqICAgICByZWNvcmRpbmdWaWRlb09wdGltaXplZDogZmFsc2UsXG4gKiAgICAgcHJldkZvcmNlRnVsbERpc3BsYXk6IGZhbHNlLFxuICogICAgIHByZXZNZWV0aW5nRGlzcGxheVR5cGU6ICdtZWRpYScsXG4gKiAgICAgdXBkYXRlTWVldGluZ0Rpc3BsYXlUeXBlOiAodHlwZSkgPT4gY29uc29sZS5sb2coJ1VwZGF0ZWQgZGlzcGxheSB0eXBlOicsIHR5cGUpLFxuICogICAgIHVwZGF0ZUF1dG9XYXZlOiAod2F2ZSkgPT4gY29uc29sZS5sb2coJ1VwZGF0ZWQgYXV0byB3YXZlOicsIHdhdmUpLFxuICogICAgIHVwZGF0ZUZvcmNlRnVsbERpc3BsYXk6IChmdWxsRGlzcGxheSkgPT4gY29uc29sZS5sb2coJ1VwZGF0ZWQgZm9yY2UgZnVsbCBkaXNwbGF5OicsIGZ1bGxEaXNwbGF5KSxcbiAqICAgICB1cGRhdGVNZWV0aW5nVmlkZW9PcHRpbWl6ZWQ6IChvcHRpbWl6ZWQpID0+IGNvbnNvbGUubG9nKCdVcGRhdGVkIHZpZGVvIG9wdGltaXphdGlvbjonLCBvcHRpbWl6ZWQpLFxuICogICAgIHVwZGF0ZVByZXZGb3JjZUZ1bGxEaXNwbGF5OiAoZnVsbERpc3BsYXkpID0+IGNvbnNvbGUubG9nKCdVcGRhdGVkIHByZXZpb3VzIGZ1bGwgZGlzcGxheTonLCBmdWxsRGlzcGxheSksXG4gKiAgICAgdXBkYXRlUHJldk1lZXRpbmdEaXNwbGF5VHlwZTogKHR5cGUpID0+IGNvbnNvbGUubG9nKCdVcGRhdGVkIHByZXZpb3VzIGRpc3BsYXkgdHlwZTonLCB0eXBlKSxcbiAqICAgICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZTogKGlzVmlzaWJsZSkgPT4gY29uc29sZS5sb2coJ0Rpc3BsYXkgc2V0dGluZ3MgbW9kYWwgaXMgbm93OicsIGlzVmlzaWJsZSksXG4gKiAgICAgdXBkYXRlRmlyc3RBbGw6IChmaXJzdEFsbCkgPT4gY29uc29sZS5sb2coJ1VwZGF0ZWQgZmlyc3QgYWxsOicsIGZpcnN0QWxsKSxcbiAqICAgICB1cGRhdGVVcGRhdGVNYWluV2luZG93OiAodXBkYXRlKSA9PiBjb25zb2xlLmxvZygnVXBkYXRlZCBtYWluIHdpbmRvdzonLCB1cGRhdGUpLFxuICogICAgIGJyZWFrT3V0Um9vbVN0YXJ0ZWQ6IGZhbHNlLFxuICogICAgIGJyZWFrT3V0Um9vbUVuZGVkOiBmYWxzZSxcbiAqICAgICBvblNjcmVlbkNoYW5nZXM6IGFzeW5jICh7IGNoYW5nZWQsIHBhcmFtZXRlcnMgfSkgPT4gY29uc29sZS5sb2coJ1NjcmVlbiBjaGFuZ2VzOicsIGNoYW5nZWQpLFxuICogICB9LFxuICogfTtcbiAqXG4gKiBjb25zdCBtb2RpZnlEaXNwbGF5U2V0dGluZ3NTZXJ2aWNlID0gbmV3IE1vZGlmeURpc3BsYXlTZXR0aW5ncygpO1xuICogYXdhaXQgbW9kaWZ5RGlzcGxheVNldHRpbmdzU2VydmljZS5tb2RpZnlEaXNwbGF5U2V0dGluZ3Mob3B0aW9ucyk7XG4gKiBgYGBcbiAqL1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kaWZ5RGlzcGxheVNldHRpbmdzIHtcbiAgLyoqXG4gICAqIE1vZGlmaWVzIHRoZSBkaXNwbGF5IHNldHRpbmdzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge01vZGlmeURpc3BsYXlTZXR0aW5nc09wdGlvbnN9IG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBjb250YWluaW5nIHRoZSBwYXJhbWV0ZXJzIHRvIG1vZGlmeSB0aGUgZGlzcGxheSBzZXR0aW5ncy5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMucGFyYW1ldGVycyAtIFRoZSBwYXJhbWV0ZXJzIGZvciBtb2RpZnlpbmcgdGhlIGRpc3BsYXkgc2V0dGluZ3MuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy5zaG93QWxlcnQgLSBGdW5jdGlvbiB0byBzaG93IGFsZXJ0IG1lc3NhZ2VzLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJhbWV0ZXJzLm1lZXRpbmdEaXNwbGF5VHlwZSAtIFRoZSBjdXJyZW50IG1lZXRpbmcgZGlzcGxheSB0eXBlLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5hdXRvV2F2ZSAtIEZsYWcgaW5kaWNhdGluZyBpZiBhdXRvIHdhdmUgaXMgZW5hYmxlZC5cbiAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMuZm9yY2VGdWxsRGlzcGxheSAtIEZsYWcgaW5kaWNhdGluZyBpZiBmdWxsIGRpc3BsYXkgaXMgZm9yY2VkLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5tZWV0aW5nVmlkZW9PcHRpbWl6ZWQgLSBGbGFnIGluZGljYXRpbmcgaWYgdGhlIG1lZXRpbmcgdmlkZW8gaXMgb3B0aW1pemVkLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXJhbWV0ZXJzLmlzbGV2ZWwgLSBUaGUgY3VycmVudCBsZXZlbCBvZiB0aGUgbWVldGluZy5cbiAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMucmVjb3JkU3RhcnRlZCAtIEZsYWcgaW5kaWNhdGluZyBpZiByZWNvcmRpbmcgaGFzIHN0YXJ0ZWQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnJlY29yZFJlc3VtZWQgLSBGbGFnIGluZGljYXRpbmcgaWYgcmVjb3JkaW5nIGhhcyByZXN1bWVkLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5yZWNvcmRTdG9wcGVkIC0gRmxhZyBpbmRpY2F0aW5nIGlmIHJlY29yZGluZyBoYXMgc3RvcHBlZC5cbiAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMucmVjb3JkUGF1c2VkIC0gRmxhZyBpbmRpY2F0aW5nIGlmIHJlY29yZGluZyBpcyBwYXVzZWQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMucmVjb3JkaW5nRGlzcGxheVR5cGUgLSBUaGUgY3VycmVudCByZWNvcmRpbmcgZGlzcGxheSB0eXBlLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMucGFyYW1ldGVycy5yZWNvcmRpbmdWaWRlb09wdGltaXplZCAtIEZsYWcgaW5kaWNhdGluZyBpZiB0aGUgcmVjb3JkaW5nIHZpZGVvIGlzIG9wdGltaXplZC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucGFyYW1ldGVycy5wcmV2Rm9yY2VGdWxsRGlzcGxheSAtIFRoZSBwcmV2aW91cyBmb3JjZSBmdWxsIGRpc3BsYXkgdmFsdWUuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhcmFtZXRlcnMucHJldk1lZXRpbmdEaXNwbGF5VHlwZSAtIFRoZSBwcmV2aW91cyBtZWV0aW5nIGRpc3BsYXkgdHlwZS5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbWVldGluZyBkaXNwbGF5IHR5cGUuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVBdXRvV2F2ZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgYXV0byB3YXZlIHNldHRpbmcuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVGb3JjZUZ1bGxEaXNwbGF5IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBmb3JjZSBmdWxsIGRpc3BsYXkgc2V0dGluZy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZU1lZXRpbmdWaWRlb09wdGltaXplZCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgbWVldGluZyB2aWRlbyBvcHRpbWl6YXRpb24gc2V0dGluZy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVByZXZGb3JjZUZ1bGxEaXNwbGF5IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBwcmV2aW91cyBmb3JjZSBmdWxsIGRpc3BsYXkgc2V0dGluZy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLnVwZGF0ZVByZXZNZWV0aW5nRGlzcGxheVR5cGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHByZXZpb3VzIG1lZXRpbmcgZGlzcGxheSB0eXBlLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnBhcmFtZXRlcnMudXBkYXRlSXNEaXNwbGF5U2V0dGluZ3NNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGRpc3BsYXkgc2V0dGluZ3MgbW9kYWwuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVGaXJzdEFsbCAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgZmlyc3QgYWxsIHNldHRpbmcuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy51cGRhdGVVcGRhdGVNYWluV2luZG93IC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBtYWluIHdpbmRvdy5cbiAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLnBhcmFtZXRlcnMuYnJlYWtPdXRSb29tU3RhcnRlZCAtIEZsYWcgaW5kaWNhdGluZyBpZiBhIGJyZWFrb3V0IHJvb20gaGFzIHN0YXJ0ZWQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5wYXJhbWV0ZXJzLmJyZWFrT3V0Um9vbUVuZGVkIC0gRmxhZyBpbmRpY2F0aW5nIGlmIGEgYnJlYWtvdXQgcm9vbSBoYXMgZW5kZWQuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMucGFyYW1ldGVycy5vblNjcmVlbkNoYW5nZXMgLSBGdW5jdGlvbiB0byBoYW5kbGUgc2NyZWVuIGNoYW5nZXMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBkaXNwbGF5IHNldHRpbmdzIGhhdmUgYmVlbiBtb2RpZmllZC5cbiAgICovXG5cbiAgbW9kaWZ5RGlzcGxheVNldHRpbmdzID0gYXN5bmMgKHsgcGFyYW1ldGVycyB9OiBNb2RpZnlEaXNwbGF5U2V0dGluZ3NPcHRpb25zKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgLy8gRGVzdHJ1Y3R1cmUgdGhlIHBhcmFtZXRlcnNcbiAgICBsZXQge1xuICAgICAgc2hvd0FsZXJ0LFxuICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlLFxuICAgICAgYXV0b1dhdmUsXG4gICAgICBmb3JjZUZ1bGxEaXNwbGF5LFxuICAgICAgbWVldGluZ1ZpZGVvT3B0aW1pemVkLFxuICAgICAgaXNsZXZlbCxcbiAgICAgIHJlY29yZFN0YXJ0ZWQsXG4gICAgICByZWNvcmRSZXN1bWVkLFxuICAgICAgcmVjb3JkU3RvcHBlZCxcbiAgICAgIHJlY29yZFBhdXNlZCxcbiAgICAgIHJlY29yZGluZ0Rpc3BsYXlUeXBlLFxuICAgICAgcmVjb3JkaW5nVmlkZW9PcHRpbWl6ZWQsXG4gICAgICBwcmV2Rm9yY2VGdWxsRGlzcGxheSxcbiAgICAgIHByZXZNZWV0aW5nRGlzcGxheVR5cGUsXG4gICAgICB1cGRhdGVNZWV0aW5nRGlzcGxheVR5cGUsXG4gICAgICB1cGRhdGVBdXRvV2F2ZSxcbiAgICAgIHVwZGF0ZUZvcmNlRnVsbERpc3BsYXksXG4gICAgICB1cGRhdGVNZWV0aW5nVmlkZW9PcHRpbWl6ZWQsXG4gICAgICB1cGRhdGVQcmV2Rm9yY2VGdWxsRGlzcGxheSxcbiAgICAgIHVwZGF0ZVByZXZNZWV0aW5nRGlzcGxheVR5cGUsXG4gICAgICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZSxcbiAgICAgIHVwZGF0ZUZpcnN0QWxsLFxuICAgICAgdXBkYXRlVXBkYXRlTWFpbldpbmRvdyxcbiAgICAgIGJyZWFrT3V0Um9vbVN0YXJ0ZWQsXG4gICAgICBicmVha091dFJvb21FbmRlZCxcbiAgICAgIG9uU2NyZWVuQ2hhbmdlcyxcbiAgICB9ID0gcGFyYW1ldGVycztcblxuICAgIC8vIFVwZGF0ZSBwcmV2aW91cyBzdGF0ZXNcbiAgICB1cGRhdGVBdXRvV2F2ZShhdXRvV2F2ZSk7XG4gICAgdXBkYXRlRm9yY2VGdWxsRGlzcGxheShmb3JjZUZ1bGxEaXNwbGF5KTtcblxuICAgIGlmIChpc2xldmVsID09PSAnMicgJiYgKHJlY29yZFN0YXJ0ZWQgfHwgcmVjb3JkUmVzdW1lZCkgJiYgIXJlY29yZFN0b3BwZWQgJiYgIXJlY29yZFBhdXNlZCkge1xuICAgICAgaWYgKFxuICAgICAgICByZWNvcmRpbmdEaXNwbGF5VHlwZSA9PT0gJ3ZpZGVvJyAmJlxuICAgICAgICBtZWV0aW5nRGlzcGxheVR5cGUgPT09ICd2aWRlbycgJiZcbiAgICAgICAgbWVldGluZ1ZpZGVvT3B0aW1pemVkICYmXG4gICAgICAgICFyZWNvcmRpbmdWaWRlb09wdGltaXplZFxuICAgICAgKSB7XG4gICAgICAgIHNob3dBbGVydD8uKHtcbiAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgJ01lZXRpbmcgZGlzcGxheSB0eXBlIGNhbiBiZSBlaXRoZXIgdmlkZW8sIG1lZGlhLCBvciBhbGwgd2hlbiByZWNvcmRpbmcgZGlzcGxheSB0eXBlIGlzIG5vbi1vcHRpbWl6ZWQgdmlkZW8uJyxcbiAgICAgICAgICB0eXBlOiAnZGFuZ2VyJyxcbiAgICAgICAgICBkdXJhdGlvbjogMzAwMCxcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIFJlc2V0IHRvIHByZXZpb3VzIHZhbHVlcyBvciBoYW5kbGUgYXMgbmVlZGVkXG4gICAgICAgIG1lZXRpbmdEaXNwbGF5VHlwZSA9IHJlY29yZGluZ0Rpc3BsYXlUeXBlO1xuICAgICAgICB1cGRhdGVNZWV0aW5nRGlzcGxheVR5cGUobWVldGluZ0Rpc3BsYXlUeXBlKTtcbiAgICAgICAgbWVldGluZ1ZpZGVvT3B0aW1pemVkID0gcmVjb3JkaW5nVmlkZW9PcHRpbWl6ZWQ7XG4gICAgICAgIHVwZGF0ZU1lZXRpbmdWaWRlb09wdGltaXplZChtZWV0aW5nVmlkZW9PcHRpbWl6ZWQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZGluZ0Rpc3BsYXlUeXBlID09PSAnbWVkaWEnICYmIG1lZXRpbmdEaXNwbGF5VHlwZSA9PT0gJ3ZpZGVvJykge1xuICAgICAgICBzaG93QWxlcnQ/Lih7XG4gICAgICAgICAgbWVzc2FnZTpcbiAgICAgICAgICAgICdNZWV0aW5nIGRpc3BsYXkgdHlwZSBjYW4gYmUgZWl0aGVyIG1lZGlhIG9yIGFsbCB3aGVuIHJlY29yZGluZyBkaXNwbGF5IHR5cGUgaXMgbWVkaWEuJyxcbiAgICAgICAgICB0eXBlOiAnZGFuZ2VyJyxcbiAgICAgICAgICBkdXJhdGlvbjogMzAwMCxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gUmVzZXQgdG8gcHJldmlvdXMgdmFsdWVzIG9yIGhhbmRsZSBhcyBuZWVkZWRcbiAgICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlID0gcmVjb3JkaW5nRGlzcGxheVR5cGU7XG4gICAgICAgIHVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZShtZWV0aW5nRGlzcGxheVR5cGUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICByZWNvcmRpbmdEaXNwbGF5VHlwZSA9PT0gJ2FsbCcgJiZcbiAgICAgICAgKG1lZXRpbmdEaXNwbGF5VHlwZSA9PT0gJ3ZpZGVvJyB8fCBtZWV0aW5nRGlzcGxheVR5cGUgPT09ICdtZWRpYScpXG4gICAgICApIHtcbiAgICAgICAgc2hvd0FsZXJ0Py4oe1xuICAgICAgICAgIG1lc3NhZ2U6ICdNZWV0aW5nIGRpc3BsYXkgdHlwZSBjYW4gYmUgb25seSBhbGwgd2hlbiByZWNvcmRpbmcgZGlzcGxheSB0eXBlIGlzIGFsbC4nLFxuICAgICAgICAgIHR5cGU6ICdkYW5nZXInLFxuICAgICAgICAgIGR1cmF0aW9uOiAzMDAwLFxuICAgICAgICB9KTtcbiAgICAgICAgLy8gUmVzZXQgdG8gcHJldmlvdXMgdmFsdWVzIG9yIGhhbmRsZSBhcyBuZWVkZWRcbiAgICAgICAgbWVldGluZ0Rpc3BsYXlUeXBlID0gcmVjb3JkaW5nRGlzcGxheVR5cGU7XG4gICAgICAgIHVwZGF0ZU1lZXRpbmdEaXNwbGF5VHlwZShtZWV0aW5nRGlzcGxheVR5cGUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlTWVldGluZ0Rpc3BsYXlUeXBlKG1lZXRpbmdEaXNwbGF5VHlwZSk7XG4gICAgdXBkYXRlTWVldGluZ1ZpZGVvT3B0aW1pemVkKG1lZXRpbmdWaWRlb09wdGltaXplZCk7XG5cbiAgICAvLyBDbG9zZSB0aGUgbW9kYWwgb3IgcGVyZm9ybSBhZGRpdGlvbmFsIGFjdGlvbnNcbiAgICB1cGRhdGVJc0Rpc3BsYXlTZXR0aW5nc01vZGFsVmlzaWJsZShmYWxzZSk7XG5cbiAgICBpZiAoXG4gICAgICBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlICE9PSBtZWV0aW5nRGlzcGxheVR5cGUgfHxcbiAgICAgIHByZXZGb3JjZUZ1bGxEaXNwbGF5ICE9PSBmb3JjZUZ1bGxEaXNwbGF5XG4gICAgKSB7XG4gICAgICBpZiAoYnJlYWtPdXRSb29tU3RhcnRlZCAmJiAhYnJlYWtPdXRSb29tRW5kZWQgJiYgbWVldGluZ0Rpc3BsYXlUeXBlICE9PSAnYWxsJykge1xuICAgICAgICBzaG93QWxlcnQ/Lih7XG4gICAgICAgICAgbWVzc2FnZTogJ0JyZWFrb3V0IHJvb20gaXMgYWN0aXZlLiBEaXNwbGF5IHR5cGUgY2FuIG9ubHkgYmUgYWxsLicsXG4gICAgICAgICAgdHlwZTogJ2RhbmdlcicsXG4gICAgICAgIH0pO1xuICAgICAgICBtZWV0aW5nRGlzcGxheVR5cGUgPSBwcmV2TWVldGluZ0Rpc3BsYXlUeXBlO1xuICAgICAgICB1cGRhdGVNZWV0aW5nRGlzcGxheVR5cGUocHJldk1lZXRpbmdEaXNwbGF5VHlwZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdXBkYXRlRmlyc3RBbGwobWVldGluZ0Rpc3BsYXlUeXBlICE9PSAnYWxsJyA/IHRydWUgOiBmYWxzZSk7XG4gICAgICB1cGRhdGVVcGRhdGVNYWluV2luZG93KHRydWUpO1xuICAgICAgYXdhaXQgb25TY3JlZW5DaGFuZ2VzKHtcbiAgICAgICAgY2hhbmdlZDogdHJ1ZSxcbiAgICAgICAgcGFyYW1ldGVyczogeyAuLi5wYXJhbWV0ZXJzLCBtZWV0aW5nRGlzcGxheVR5cGUsIGZvcmNlRnVsbERpc3BsYXkgfSxcbiAgICAgIH0pO1xuICAgICAgdXBkYXRlUHJldkZvcmNlRnVsbERpc3BsYXkoZm9yY2VGdWxsRGlzcGxheSk7XG4gICAgICB1cGRhdGVQcmV2TWVldGluZ0Rpc3BsYXlUeXBlKG1lZXRpbmdEaXNwbGF5VHlwZSk7XG4gICAgfVxuICB9O1xufVxuIl19
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
// confirm-exit.service.ts
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Confirms the exit of a member from a room and optionally bans them.
|
|
6
|
-
*
|
|
7
|
-
* This method emits a socket event to disconnect the specified member from the given room.
|
|
8
|
-
* If the `ban` option is set to true, the member will be banned from rejoining the room.
|
|
9
|
-
*
|
|
10
|
-
* @param {ConfirmExitOptions} options - The options for confirming the exit.
|
|
11
|
-
* @param {Socket} options.socket - The socket instance to emit the event.
|
|
12
|
-
* @param {string} options.member - The member who is exiting.
|
|
13
|
-
* @param {string} options.roomName - The name of the room the member is exiting from.
|
|
14
|
-
* @param {boolean} [options.ban=false] - Whether to ban the member from the room.
|
|
15
|
-
* @returns {Promise<void>} A promise that resolves when the exit is confirmed.
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```typescript
|
|
19
|
-
* const confirmExitService = new ConfirmExit();
|
|
20
|
-
* await confirmExitService.confirmExit({
|
|
21
|
-
* socket: socketInstance,
|
|
22
|
-
* member: 'JohnDoe',
|
|
23
|
-
* roomName: 'Room1',
|
|
24
|
-
* ban: true, // Optional: set to true if you want to ban the member
|
|
25
|
-
* });
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export class ConfirmExit {
|
|
29
|
-
/**
|
|
30
|
-
* Confirms the exit of a member from a room and optionally bans them.
|
|
31
|
-
*
|
|
32
|
-
* @param {Object} options - The options for confirming the exit.
|
|
33
|
-
* @param {Socket} options.socket - The socket instance to emit the event.
|
|
34
|
-
* @param {string} options.member - The member who is exiting.
|
|
35
|
-
* @param {string} options.roomName - The name of the room the member is exiting from.
|
|
36
|
-
* @param {boolean} [options.ban=false] - Whether to ban the member from the room.
|
|
37
|
-
* @returns {Promise<void>} A promise that resolves when the exit is confirmed.
|
|
38
|
-
*/
|
|
39
|
-
async confirmExit({ socket, member, roomName, ban = false }) {
|
|
40
|
-
// Emit a socket event to disconnect the user from the room
|
|
41
|
-
socket.emit('disconnectUser', { member: member, roomName: roomName, ban: ban });
|
|
42
|
-
}
|
|
43
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ConfirmExit, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
44
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ConfirmExit, providedIn: 'root' });
|
|
45
|
-
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ConfirmExit, decorators: [{
|
|
47
|
-
type: Injectable,
|
|
48
|
-
args: [{
|
|
49
|
-
providedIn: 'root',
|
|
50
|
-
}]
|
|
51
|
-
}] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1leGl0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy9leGl0LW1ldGhvZHMvY29uZmlybS1leGl0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMEJBQTBCO0FBRTFCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBYTNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQUtILE1BQU0sT0FBTyxXQUFXO0lBQ3RCOzs7Ozs7Ozs7T0FTRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEdBQUcsS0FBSyxFQUFzQjtRQUM3RSwyREFBMkQ7UUFDM0QsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDO3VHQWRVLFdBQVc7MkdBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gY29uZmlybS1leGl0LnNlcnZpY2UudHNcblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ja2V0IH0gZnJvbSAnc29ja2V0LmlvLWNsaWVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybUV4aXRPcHRpb25zIHtcbiAgc29ja2V0OiBTb2NrZXQ7XG4gIG1lbWJlcjogc3RyaW5nO1xuICByb29tTmFtZTogc3RyaW5nO1xuICBiYW4/OiBib29sZWFuO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBDb25maXJtRXhpdFR5cGUgPSAob3B0aW9uczogQ29uZmlybUV4aXRPcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4vKipcbiAqIENvbmZpcm1zIHRoZSBleGl0IG9mIGEgbWVtYmVyIGZyb20gYSByb29tIGFuZCBvcHRpb25hbGx5IGJhbnMgdGhlbS5cbiAqXG4gKiBUaGlzIG1ldGhvZCBlbWl0cyBhIHNvY2tldCBldmVudCB0byBkaXNjb25uZWN0IHRoZSBzcGVjaWZpZWQgbWVtYmVyIGZyb20gdGhlIGdpdmVuIHJvb20uXG4gKiBJZiB0aGUgYGJhbmAgb3B0aW9uIGlzIHNldCB0byB0cnVlLCB0aGUgbWVtYmVyIHdpbGwgYmUgYmFubmVkIGZyb20gcmVqb2luaW5nIHRoZSByb29tLlxuICpcbiAqIEBwYXJhbSB7Q29uZmlybUV4aXRPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGNvbmZpcm1pbmcgdGhlIGV4aXQuXG4gKiBAcGFyYW0ge1NvY2tldH0gb3B0aW9ucy5zb2NrZXQgLSBUaGUgc29ja2V0IGluc3RhbmNlIHRvIGVtaXQgdGhlIGV2ZW50LlxuICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMubWVtYmVyIC0gVGhlIG1lbWJlciB3aG8gaXMgZXhpdGluZy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnJvb21OYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHJvb20gdGhlIG1lbWJlciBpcyBleGl0aW5nIGZyb20uXG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtvcHRpb25zLmJhbj1mYWxzZV0gLSBXaGV0aGVyIHRvIGJhbiB0aGUgbWVtYmVyIGZyb20gdGhlIHJvb20uXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZXhpdCBpcyBjb25maXJtZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGNvbmZpcm1FeGl0U2VydmljZSA9IG5ldyBDb25maXJtRXhpdCgpO1xuICogYXdhaXQgY29uZmlybUV4aXRTZXJ2aWNlLmNvbmZpcm1FeGl0KHtcbiAqICAgc29ja2V0OiBzb2NrZXRJbnN0YW5jZSxcbiAqICAgbWVtYmVyOiAnSm9obkRvZScsXG4gKiAgIHJvb21OYW1lOiAnUm9vbTEnLFxuICogICBiYW46IHRydWUsIC8vIE9wdGlvbmFsOiBzZXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0byBiYW4gdGhlIG1lbWJlclxuICogfSk7XG4gKiBgYGBcbiAqL1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybUV4aXQge1xuICAvKipcbiAgICogQ29uZmlybXMgdGhlIGV4aXQgb2YgYSBtZW1iZXIgZnJvbSBhIHJvb20gYW5kIG9wdGlvbmFsbHkgYmFucyB0aGVtLlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBjb25maXJtaW5nIHRoZSBleGl0LlxuICAgKiBAcGFyYW0ge1NvY2tldH0gb3B0aW9ucy5zb2NrZXQgLSBUaGUgc29ja2V0IGluc3RhbmNlIHRvIGVtaXQgdGhlIGV2ZW50LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5tZW1iZXIgLSBUaGUgbWVtYmVyIHdobyBpcyBleGl0aW5nLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5yb29tTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSByb29tIHRoZSBtZW1iZXIgaXMgZXhpdGluZyBmcm9tLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtvcHRpb25zLmJhbj1mYWxzZV0gLSBXaGV0aGVyIHRvIGJhbiB0aGUgbWVtYmVyIGZyb20gdGhlIHJvb20uXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBleGl0IGlzIGNvbmZpcm1lZC5cbiAgICovXG4gIGFzeW5jIGNvbmZpcm1FeGl0KHsgc29ja2V0LCBtZW1iZXIsIHJvb21OYW1lLCBiYW4gPSBmYWxzZSB9OiBDb25maXJtRXhpdE9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBFbWl0IGEgc29ja2V0IGV2ZW50IHRvIGRpc2Nvbm5lY3QgdGhlIHVzZXIgZnJvbSB0aGUgcm9vbVxuICAgIHNvY2tldC5lbWl0KCdkaXNjb25uZWN0VXNlcicsIHsgbWVtYmVyOiBtZW1iZXIsIHJvb21OYW1lOiByb29tTmFtZSwgYmFuOiBiYW4gfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Toggles the visibility of the confirmation exit modal.
|
|
5
|
-
*
|
|
6
|
-
* This method updates the state of the confirmation exit modal by inverting its current visibility status.
|
|
7
|
-
*
|
|
8
|
-
* @param {LaunchConfirmExitOptions} options - The options for toggling the confirmation exit modal visibility.
|
|
9
|
-
* @param {Function} options.updateIsConfirmExitModalVisible - Function to update the visibility state of the confirmation exit modal.
|
|
10
|
-
* @param {boolean} options.isConfirmExitModalVisible - Current visibility state of the confirmation exit modal.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* const launchConfirmExitService = new LaunchConfirmExit();
|
|
15
|
-
* launchConfirmExitService.launchConfirmExit({
|
|
16
|
-
* updateIsConfirmExitModalVisible: (isVisible) => {
|
|
17
|
-
* console.log('Confirm exit modal is now:', isVisible ? 'Visible' : 'Hidden');
|
|
18
|
-
* },
|
|
19
|
-
* isConfirmExitModalVisible: false, // Initially not visible
|
|
20
|
-
* });
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export class LaunchConfirmExit {
|
|
24
|
-
/**
|
|
25
|
-
* Toggles the visibility of the confirmation exit modal.
|
|
26
|
-
*
|
|
27
|
-
* @param updateIsConfirmExitModalVisible - Function to update the visibility state of the confirmation exit modal.
|
|
28
|
-
* @param isConfirmExitModalVisible - Current visibility state of the confirmation exit modal.
|
|
29
|
-
*/
|
|
30
|
-
launchConfirmExit({ updateIsConfirmExitModalVisible, isConfirmExitModalVisible, }) {
|
|
31
|
-
updateIsConfirmExitModalVisible(!isConfirmExitModalVisible);
|
|
32
|
-
}
|
|
33
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchConfirmExit, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
34
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchConfirmExit, providedIn: 'root' });
|
|
35
|
-
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchConfirmExit, decorators: [{
|
|
37
|
-
type: Injectable,
|
|
38
|
-
args: [{
|
|
39
|
-
providedIn: 'root',
|
|
40
|
-
}]
|
|
41
|
-
}] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWNvbmZpcm0tZXhpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWFzZnUtYW5ndWxhci9zcmMvbGliL21ldGhvZHMvZXhpdC1tZXRob2RzL2xhdW5jaC1jb25maXJtLWV4aXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVMzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQU1ILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUI7Ozs7O09BS0c7SUFFSCxpQkFBaUIsQ0FBQyxFQUNoQiwrQkFBK0IsRUFDL0IseUJBQXlCLEdBQ0E7UUFDekIsK0JBQStCLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzlELENBQUM7dUdBYlUsaUJBQWlCOzJHQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7MkZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoQ29uZmlybUV4aXRPcHRpb25zIHtcbiAgdXBkYXRlSXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZTogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbiAgaXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZTogYm9vbGVhbjtcbn1cblxuLy8gRXhwb3J0IHRoZSB0eXBlIGRlZmluaXRpb24gZm9yIHRoZSBmdW5jdGlvblxuZXhwb3J0IHR5cGUgTGF1bmNoQ29uZmlybUV4aXRUeXBlID0gKG9wdGlvbnM6IExhdW5jaENvbmZpcm1FeGl0T3B0aW9ucykgPT4gdm9pZDtcblxuLyoqXG4gKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBjb25maXJtYXRpb24gZXhpdCBtb2RhbC5cbiAqXG4gKiBUaGlzIG1ldGhvZCB1cGRhdGVzIHRoZSBzdGF0ZSBvZiB0aGUgY29uZmlybWF0aW9uIGV4aXQgbW9kYWwgYnkgaW52ZXJ0aW5nIGl0cyBjdXJyZW50IHZpc2liaWxpdHkgc3RhdHVzLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoQ29uZmlybUV4aXRPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRvZ2dsaW5nIHRoZSBjb25maXJtYXRpb24gZXhpdCBtb2RhbCB2aXNpYmlsaXR5LlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy51cGRhdGVJc0NvbmZpcm1FeGl0TW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBjb25maXJtYXRpb24gZXhpdCBtb2RhbC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5pc0NvbmZpcm1FeGl0TW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBjb25maXJtYXRpb24gZXhpdCBtb2RhbC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgbGF1bmNoQ29uZmlybUV4aXRTZXJ2aWNlID0gbmV3IExhdW5jaENvbmZpcm1FeGl0KCk7XG4gKiBsYXVuY2hDb25maXJtRXhpdFNlcnZpY2UubGF1bmNoQ29uZmlybUV4aXQoe1xuICogICB1cGRhdGVJc0NvbmZpcm1FeGl0TW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ0NvbmZpcm0gZXhpdCBtb2RhbCBpcyBub3c6JywgaXNWaXNpYmxlID8gJ1Zpc2libGUnIDogJ0hpZGRlbicpO1xuICogICB9LFxuICogICBpc0NvbmZpcm1FeGl0TW9kYWxWaXNpYmxlOiBmYWxzZSwgLy8gSW5pdGlhbGx5IG5vdCB2aXNpYmxlXG4gKiB9KTtcbiAqIGBgYFxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaENvbmZpcm1FeGl0IHtcbiAgLyoqXG4gICAqIFRvZ2dsZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGNvbmZpcm1hdGlvbiBleGl0IG1vZGFsLlxuICAgKlxuICAgKiBAcGFyYW0gdXBkYXRlSXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgY29uZmlybWF0aW9uIGV4aXQgbW9kYWwuXG4gICAqIEBwYXJhbSBpc0NvbmZpcm1FeGl0TW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBjb25maXJtYXRpb24gZXhpdCBtb2RhbC5cbiAgICovXG5cbiAgbGF1bmNoQ29uZmlybUV4aXQoe1xuICAgIHVwZGF0ZUlzQ29uZmlybUV4aXRNb2RhbFZpc2libGUsXG4gICAgaXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZSxcbiAgfTogTGF1bmNoQ29uZmlybUV4aXRPcHRpb25zKTogdm9pZCB7XG4gICAgdXBkYXRlSXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZSghaXNDb25maXJtRXhpdE1vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Launches the media settings modal and updates the available audio and video input devices.
|
|
5
|
-
*
|
|
6
|
-
* This method checks the current visibility of the media settings modal and, if it is not visible,
|
|
7
|
-
* retrieves the list of available audio and video input devices. It then updates the state with
|
|
8
|
-
* these devices and opens the modal. If the modal is already visible, it closes the modal.
|
|
9
|
-
*
|
|
10
|
-
* @param {LaunchMediaSettingsOptions} options - The options for launching media settings.
|
|
11
|
-
* @param {Function} options.updateIsMediaSettingsModalVisible - Function to update the visibility state of the media settings modal.
|
|
12
|
-
* @param {boolean} options.isMediaSettingsModalVisible - Current visibility state of the media settings modal.
|
|
13
|
-
* @param {MediaDeviceInfo[]} options.audioInputs - Array to store available audio input devices.
|
|
14
|
-
* @param {MediaDeviceInfo[]} options.videoInputs - Array to store available video input devices.
|
|
15
|
-
* @param {Function} options.updateAudioInputs - Function to update the available audio input devices.
|
|
16
|
-
* @param {Function} options.updateVideoInputs - Function to update the available video input devices.
|
|
17
|
-
* @returns {Promise<void>} A promise that resolves when the media settings have been updated.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* const launchMediaSettingsService = new LaunchMediaSettings();
|
|
22
|
-
* launchMediaSettingsService.launchMediaSettings({
|
|
23
|
-
* updateIsMediaSettingsModalVisible: (isVisible) => {
|
|
24
|
-
* console.log('Media settings modal is now:', isVisible ? 'Visible' : 'Hidden');
|
|
25
|
-
* },
|
|
26
|
-
* isMediaSettingsModalVisible: false, // Initially not visible
|
|
27
|
-
* audioInputs: [],
|
|
28
|
-
* videoInputs: [],
|
|
29
|
-
* updateAudioInputs: (inputs) => {
|
|
30
|
-
* console.log('Available audio inputs:', inputs);
|
|
31
|
-
* },
|
|
32
|
-
* updateVideoInputs: (inputs) => {
|
|
33
|
-
* console.log('Available video inputs:', inputs);
|
|
34
|
-
* },
|
|
35
|
-
* });
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
38
|
-
export class LaunchMediaSettings {
|
|
39
|
-
/**
|
|
40
|
-
* Launches the media settings modal and updates the available audio and video input devices.
|
|
41
|
-
*
|
|
42
|
-
* @param {Object} options - The options for launching media settings.
|
|
43
|
-
* @param {Function} options.updateIsMediaSettingsModalVisible - Function to update the visibility state of the media settings modal.
|
|
44
|
-
* @param {boolean} options.isMediaSettingsModalVisible - Current visibility state of the media settings modal.
|
|
45
|
-
* @param {MediaDeviceInfo[]} options.audioInputs - Array to store available audio input devices.
|
|
46
|
-
* @param {MediaDeviceInfo[]} options.videoInputs - Array to store available video input devices.
|
|
47
|
-
* @param {Function} options.updateAudioInputs - Function to update the available audio input devices.
|
|
48
|
-
* @param {Function} options.updateVideoInputs - Function to update the available video input devices.
|
|
49
|
-
* @returns {Promise<void>} A promise that resolves when the media settings have been updated.
|
|
50
|
-
*/
|
|
51
|
-
async launchMediaSettings({ updateIsMediaSettingsModalVisible, isMediaSettingsModalVisible, audioInputs, videoInputs, updateAudioInputs, updateVideoInputs, }) {
|
|
52
|
-
// Check if media settings modal is not visible and update available audio and video input devices
|
|
53
|
-
if (!isMediaSettingsModalVisible) {
|
|
54
|
-
try {
|
|
55
|
-
// Get the list of all available media devices
|
|
56
|
-
const devices = await navigator.mediaDevices.enumerateDevices();
|
|
57
|
-
// Filter the devices to get only audio and video input devices
|
|
58
|
-
videoInputs = devices.filter((device) => device.kind === 'videoinput');
|
|
59
|
-
audioInputs = devices.filter((device) => device.kind === 'audioinput');
|
|
60
|
-
// Update the available audio and video input devices
|
|
61
|
-
updateVideoInputs(videoInputs);
|
|
62
|
-
updateAudioInputs(audioInputs);
|
|
63
|
-
// Open the media settings modal
|
|
64
|
-
updateIsMediaSettingsModalVisible(true);
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
// Open the media settings modal
|
|
68
|
-
updateIsMediaSettingsModalVisible(true);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
// Close the media settings modal
|
|
73
|
-
updateIsMediaSettingsModalVisible(false);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMediaSettings, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
77
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMediaSettings, providedIn: 'root' });
|
|
78
|
-
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMediaSettings, decorators: [{
|
|
80
|
-
type: Injectable,
|
|
81
|
-
args: [{
|
|
82
|
-
providedIn: 'root',
|
|
83
|
-
}]
|
|
84
|
-
}] });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLW1lZGlhLXNldHRpbmdzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy9tZWRpYS1zZXR0aW5ncy1tZXRob2RzL2xhdW5jaC1tZWRpYS1zZXR0aW5ncy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBYzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NHO0FBTUgsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7Ozs7Ozs7Ozs7T0FXRztJQUVILEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxFQUN4QixpQ0FBaUMsRUFDakMsMkJBQTJCLEVBQzNCLFdBQVcsRUFDWCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLGlCQUFpQixHQUNVO1FBQzNCLGtHQUFrRztRQUNsRyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUM7Z0JBQ0gsOENBQThDO2dCQUM5QyxNQUFNLE9BQU8sR0FBRyxNQUFNLFNBQVMsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDaEUsK0RBQStEO2dCQUMvRCxXQUFXLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQXVCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUM7Z0JBQ3hGLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBdUIsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxZQUFZLENBQUMsQ0FBQztnQkFFeEYscURBQXFEO2dCQUNyRCxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDL0IsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBRS9CLGdDQUFnQztnQkFDaEMsaUNBQWlDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUMsQ0FBQztZQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7Z0JBQ2YsZ0NBQWdDO2dCQUNoQyxpQ0FBaUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixpQ0FBaUM7WUFDakMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7dUdBN0NVLG1CQUFtQjsyR0FBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoTWVkaWFTZXR0aW5nc09wdGlvbnMge1xuICB1cGRhdGVJc01lZGlhU2V0dGluZ3NNb2RhbFZpc2libGU6IChpc1Zpc2libGU6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIGlzTWVkaWFTZXR0aW5nc01vZGFsVmlzaWJsZTogYm9vbGVhbjtcbiAgYXVkaW9JbnB1dHM6IE1lZGlhRGV2aWNlSW5mb1tdO1xuICB2aWRlb0lucHV0czogTWVkaWFEZXZpY2VJbmZvW107XG4gIHVwZGF0ZUF1ZGlvSW5wdXRzOiAoaW5wdXRzOiBNZWRpYURldmljZUluZm9bXSkgPT4gdm9pZDtcbiAgdXBkYXRlVmlkZW9JbnB1dHM6IChpbnB1dHM6IE1lZGlhRGV2aWNlSW5mb1tdKSA9PiB2b2lkO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBMYXVuY2hNZWRpYVNldHRpbmdzVHlwZSA9IChvcHRpb25zOiBMYXVuY2hNZWRpYVNldHRpbmdzT3B0aW9ucykgPT4gUHJvbWlzZTx2b2lkPjtcblxuLyoqXG4gKiBMYXVuY2hlcyB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWwgYW5kIHVwZGF0ZXMgdGhlIGF2YWlsYWJsZSBhdWRpbyBhbmQgdmlkZW8gaW5wdXQgZGV2aWNlcy5cbiAqXG4gKiBUaGlzIG1ldGhvZCBjaGVja3MgdGhlIGN1cnJlbnQgdmlzaWJpbGl0eSBvZiB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWwgYW5kLCBpZiBpdCBpcyBub3QgdmlzaWJsZSxcbiAqIHJldHJpZXZlcyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgYXVkaW8gYW5kIHZpZGVvIGlucHV0IGRldmljZXMuIEl0IHRoZW4gdXBkYXRlcyB0aGUgc3RhdGUgd2l0aFxuICogdGhlc2UgZGV2aWNlcyBhbmQgb3BlbnMgdGhlIG1vZGFsLiBJZiB0aGUgbW9kYWwgaXMgYWxyZWFkeSB2aXNpYmxlLCBpdCBjbG9zZXMgdGhlIG1vZGFsLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoTWVkaWFTZXR0aW5nc09wdGlvbnN9IG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgbGF1bmNoaW5nIG1lZGlhIHNldHRpbmdzLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy51cGRhdGVJc01lZGlhU2V0dGluZ3NNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lZGlhIHNldHRpbmdzIG1vZGFsLlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmlzTWVkaWFTZXR0aW5nc01vZGFsVmlzaWJsZSAtIEN1cnJlbnQgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWwuXG4gKiBAcGFyYW0ge01lZGlhRGV2aWNlSW5mb1tdfSBvcHRpb25zLmF1ZGlvSW5wdXRzIC0gQXJyYXkgdG8gc3RvcmUgYXZhaWxhYmxlIGF1ZGlvIGlucHV0IGRldmljZXMuXG4gKiBAcGFyYW0ge01lZGlhRGV2aWNlSW5mb1tdfSBvcHRpb25zLnZpZGVvSW5wdXRzIC0gQXJyYXkgdG8gc3RvcmUgYXZhaWxhYmxlIHZpZGVvIGlucHV0IGRldmljZXMuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUF1ZGlvSW5wdXRzIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBhdmFpbGFibGUgYXVkaW8gaW5wdXQgZGV2aWNlcy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlVmlkZW9JbnB1dHMgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGF2YWlsYWJsZSB2aWRlbyBpbnB1dCBkZXZpY2VzLlxuICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIG1lZGlhIHNldHRpbmdzIGhhdmUgYmVlbiB1cGRhdGVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBsYXVuY2hNZWRpYVNldHRpbmdzU2VydmljZSA9IG5ldyBMYXVuY2hNZWRpYVNldHRpbmdzKCk7XG4gKiBsYXVuY2hNZWRpYVNldHRpbmdzU2VydmljZS5sYXVuY2hNZWRpYVNldHRpbmdzKHtcbiAqICAgdXBkYXRlSXNNZWRpYVNldHRpbmdzTW9kYWxWaXNpYmxlOiAoaXNWaXNpYmxlKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ01lZGlhIHNldHRpbmdzIG1vZGFsIGlzIG5vdzonLCBpc1Zpc2libGUgPyAnVmlzaWJsZScgOiAnSGlkZGVuJyk7XG4gKiAgIH0sXG4gKiAgIGlzTWVkaWFTZXR0aW5nc01vZGFsVmlzaWJsZTogZmFsc2UsIC8vIEluaXRpYWxseSBub3QgdmlzaWJsZVxuICogICBhdWRpb0lucHV0czogW10sXG4gKiAgIHZpZGVvSW5wdXRzOiBbXSxcbiAqICAgdXBkYXRlQXVkaW9JbnB1dHM6IChpbnB1dHMpID0+IHtcbiAqICAgICBjb25zb2xlLmxvZygnQXZhaWxhYmxlIGF1ZGlvIGlucHV0czonLCBpbnB1dHMpO1xuICogICB9LFxuICogICB1cGRhdGVWaWRlb0lucHV0czogKGlucHV0cykgPT4ge1xuICogICAgIGNvbnNvbGUubG9nKCdBdmFpbGFibGUgdmlkZW8gaW5wdXRzOicsIGlucHV0cyk7XG4gKiAgIH0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaE1lZGlhU2V0dGluZ3Mge1xuICAvKipcbiAgICogTGF1bmNoZXMgdGhlIG1lZGlhIHNldHRpbmdzIG1vZGFsIGFuZCB1cGRhdGVzIHRoZSBhdmFpbGFibGUgYXVkaW8gYW5kIHZpZGVvIGlucHV0IGRldmljZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGxhdW5jaGluZyBtZWRpYSBzZXR0aW5ncy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gb3B0aW9ucy51cGRhdGVJc01lZGlhU2V0dGluZ3NNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lZGlhIHNldHRpbmdzIG1vZGFsLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG9wdGlvbnMuaXNNZWRpYVNldHRpbmdzTW9kYWxWaXNpYmxlIC0gQ3VycmVudCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtZWRpYSBzZXR0aW5ncyBtb2RhbC5cbiAgICogQHBhcmFtIHtNZWRpYURldmljZUluZm9bXX0gb3B0aW9ucy5hdWRpb0lucHV0cyAtIEFycmF5IHRvIHN0b3JlIGF2YWlsYWJsZSBhdWRpbyBpbnB1dCBkZXZpY2VzLlxuICAgKiBAcGFyYW0ge01lZGlhRGV2aWNlSW5mb1tdfSBvcHRpb25zLnZpZGVvSW5wdXRzIC0gQXJyYXkgdG8gc3RvcmUgYXZhaWxhYmxlIHZpZGVvIGlucHV0IGRldmljZXMuXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IG9wdGlvbnMudXBkYXRlQXVkaW9JbnB1dHMgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIGF2YWlsYWJsZSBhdWRpbyBpbnB1dCBkZXZpY2VzLlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZVZpZGVvSW5wdXRzIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBhdmFpbGFibGUgdmlkZW8gaW5wdXQgZGV2aWNlcy5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIG1lZGlhIHNldHRpbmdzIGhhdmUgYmVlbiB1cGRhdGVkLlxuICAgKi9cblxuICBhc3luYyBsYXVuY2hNZWRpYVNldHRpbmdzKHtcbiAgICB1cGRhdGVJc01lZGlhU2V0dGluZ3NNb2RhbFZpc2libGUsXG4gICAgaXNNZWRpYVNldHRpbmdzTW9kYWxWaXNpYmxlLFxuICAgIGF1ZGlvSW5wdXRzLFxuICAgIHZpZGVvSW5wdXRzLFxuICAgIHVwZGF0ZUF1ZGlvSW5wdXRzLFxuICAgIHVwZGF0ZVZpZGVvSW5wdXRzLFxuICB9OiBMYXVuY2hNZWRpYVNldHRpbmdzT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIENoZWNrIGlmIG1lZGlhIHNldHRpbmdzIG1vZGFsIGlzIG5vdCB2aXNpYmxlIGFuZCB1cGRhdGUgYXZhaWxhYmxlIGF1ZGlvIGFuZCB2aWRlbyBpbnB1dCBkZXZpY2VzXG4gICAgaWYgKCFpc01lZGlhU2V0dGluZ3NNb2RhbFZpc2libGUpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIEdldCB0aGUgbGlzdCBvZiBhbGwgYXZhaWxhYmxlIG1lZGlhIGRldmljZXNcbiAgICAgICAgY29uc3QgZGV2aWNlcyA9IGF3YWl0IG5hdmlnYXRvci5tZWRpYURldmljZXMuZW51bWVyYXRlRGV2aWNlcygpO1xuICAgICAgICAvLyBGaWx0ZXIgdGhlIGRldmljZXMgdG8gZ2V0IG9ubHkgYXVkaW8gYW5kIHZpZGVvIGlucHV0IGRldmljZXNcbiAgICAgICAgdmlkZW9JbnB1dHMgPSBkZXZpY2VzLmZpbHRlcigoZGV2aWNlOiBNZWRpYURldmljZUluZm8pID0+IGRldmljZS5raW5kID09PSAndmlkZW9pbnB1dCcpO1xuICAgICAgICBhdWRpb0lucHV0cyA9IGRldmljZXMuZmlsdGVyKChkZXZpY2U6IE1lZGlhRGV2aWNlSW5mbykgPT4gZGV2aWNlLmtpbmQgPT09ICdhdWRpb2lucHV0Jyk7XG5cbiAgICAgICAgLy8gVXBkYXRlIHRoZSBhdmFpbGFibGUgYXVkaW8gYW5kIHZpZGVvIGlucHV0IGRldmljZXNcbiAgICAgICAgdXBkYXRlVmlkZW9JbnB1dHModmlkZW9JbnB1dHMpO1xuICAgICAgICB1cGRhdGVBdWRpb0lucHV0cyhhdWRpb0lucHV0cyk7XG5cbiAgICAgICAgLy8gT3BlbiB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWxcbiAgICAgICAgdXBkYXRlSXNNZWRpYVNldHRpbmdzTW9kYWxWaXNpYmxlKHRydWUpO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gT3BlbiB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWxcbiAgICAgICAgdXBkYXRlSXNNZWRpYVNldHRpbmdzTW9kYWxWaXNpYmxlKHRydWUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBDbG9zZSB0aGUgbWVkaWEgc2V0dGluZ3MgbW9kYWxcbiAgICAgIHVwZGF0ZUlzTWVkaWFTZXR0aW5nc01vZGFsVmlzaWJsZShmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Toggles the visibility of the menu modal.
|
|
5
|
-
*
|
|
6
|
-
* This method updates the visibility state of the menu modal by calling the provided
|
|
7
|
-
* function with the negated current visibility state. If the modal is currently visible,
|
|
8
|
-
* it will be hidden, and vice versa.
|
|
9
|
-
*
|
|
10
|
-
* @param {LaunchMenuModalOptions} options - The options for launching the menu modal.
|
|
11
|
-
* @param {Function} options.updateIsMenuModalVisible - Function to update the visibility state of the menu modal.
|
|
12
|
-
* @param {boolean} options.isMenuModalVisible - Current visibility state of the menu modal.
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* ```typescript
|
|
16
|
-
* const launchMenuModalService = new LaunchMenuModal();
|
|
17
|
-
* launchMenuModalService.launchMenuModal({
|
|
18
|
-
* updateIsMenuModalVisible: (isVisible) => {
|
|
19
|
-
* console.log('Menu modal is now:', isVisible ? 'Visible' : 'Hidden');
|
|
20
|
-
* },
|
|
21
|
-
* isMenuModalVisible: false, // Initially not visible
|
|
22
|
-
* });
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export class LaunchMenuModal {
|
|
26
|
-
/**
|
|
27
|
-
* Toggles the visibility of the menu modal.
|
|
28
|
-
*
|
|
29
|
-
* @param updateIsMenuModalVisible - Function to update the visibility state of the menu modal.
|
|
30
|
-
* @param isMenuModalVisible - Current visibility state of the menu modal.
|
|
31
|
-
*/
|
|
32
|
-
launchMenuModal({ updateIsMenuModalVisible, isMenuModalVisible }) {
|
|
33
|
-
updateIsMenuModalVisible(!isMenuModalVisible);
|
|
34
|
-
}
|
|
35
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMenuModal, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMenuModal, providedIn: 'root' });
|
|
37
|
-
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMenuModal, decorators: [{
|
|
39
|
-
type: Injectable,
|
|
40
|
-
args: [{
|
|
41
|
-
providedIn: 'root',
|
|
42
|
-
}]
|
|
43
|
-
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLW1lbnUtbW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhc2Z1LWFuZ3VsYXIvc3JjL2xpYi9tZXRob2RzL21lbnUtbWV0aG9kcy9sYXVuY2gtbWVudS1tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQkc7QUFLSCxNQUFNLE9BQU8sZUFBZTtJQUMxQjs7Ozs7T0FLRztJQUVILGVBQWUsQ0FBQyxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixFQUEwQjtRQUN0Rix3QkFBd0IsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDaEQsQ0FBQzt1R0FWVSxlQUFlOzJHQUFmLGVBQWUsY0FGZCxNQUFNOzsyRkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoTWVudU1vZGFsT3B0aW9ucyB7XG4gIHVwZGF0ZUlzTWVudU1vZGFsVmlzaWJsZTogKGlzVmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcbiAgaXNNZW51TW9kYWxWaXNpYmxlOiBib29sZWFuO1xufVxuXG4vLyBFeHBvcnQgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGZ1bmN0aW9uXG5leHBvcnQgdHlwZSBMYXVuY2hNZW51TW9kYWxUeXBlID0gKG9wdGlvbnM6IExhdW5jaE1lbnVNb2RhbE9wdGlvbnMpID0+IHZvaWQ7XG5cbi8qKlxuICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgbWVudSBtb2RhbC5cbiAqXG4gKiBUaGlzIG1ldGhvZCB1cGRhdGVzIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtZW51IG1vZGFsIGJ5IGNhbGxpbmcgdGhlIHByb3ZpZGVkXG4gKiBmdW5jdGlvbiB3aXRoIHRoZSBuZWdhdGVkIGN1cnJlbnQgdmlzaWJpbGl0eSBzdGF0ZS4gSWYgdGhlIG1vZGFsIGlzIGN1cnJlbnRseSB2aXNpYmxlLFxuICogaXQgd2lsbCBiZSBoaWRkZW4sIGFuZCB2aWNlIHZlcnNhLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoTWVudU1vZGFsT3B0aW9uc30gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBsYXVuY2hpbmcgdGhlIG1lbnUgbW9kYWwuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzTWVudU1vZGFsVmlzaWJsZSAtIEZ1bmN0aW9uIHRvIHVwZGF0ZSB0aGUgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgbWVudSBtb2RhbC5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gb3B0aW9ucy5pc01lbnVNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lbnUgbW9kYWwuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGxhdW5jaE1lbnVNb2RhbFNlcnZpY2UgPSBuZXcgTGF1bmNoTWVudU1vZGFsKCk7XG4gKiBsYXVuY2hNZW51TW9kYWxTZXJ2aWNlLmxhdW5jaE1lbnVNb2RhbCh7XG4gKiAgIHVwZGF0ZUlzTWVudU1vZGFsVmlzaWJsZTogKGlzVmlzaWJsZSkgPT4ge1xuICogICAgIGNvbnNvbGUubG9nKCdNZW51IG1vZGFsIGlzIG5vdzonLCBpc1Zpc2libGUgPyAnVmlzaWJsZScgOiAnSGlkZGVuJyk7XG4gKiAgIH0sXG4gKiAgIGlzTWVudU1vZGFsVmlzaWJsZTogZmFsc2UsIC8vIEluaXRpYWxseSBub3QgdmlzaWJsZVxuICogfSk7XG4gKiBgYGBcbiAqL1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGF1bmNoTWVudU1vZGFsIHtcbiAgLyoqXG4gICAqIFRvZ2dsZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIG1lbnUgbW9kYWwuXG4gICAqXG4gICAqIEBwYXJhbSB1cGRhdGVJc01lbnVNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lbnUgbW9kYWwuXG4gICAqIEBwYXJhbSBpc01lbnVNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lbnUgbW9kYWwuXG4gICAqL1xuXG4gIGxhdW5jaE1lbnVNb2RhbCh7IHVwZGF0ZUlzTWVudU1vZGFsVmlzaWJsZSwgaXNNZW51TW9kYWxWaXNpYmxlIH06IExhdW5jaE1lbnVNb2RhbE9wdGlvbnMpOiB2b2lkIHtcbiAgICB1cGRhdGVJc01lbnVNb2RhbFZpc2libGUoIWlzTWVudU1vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Toggles the visibility state of the messages modal.
|
|
5
|
-
*
|
|
6
|
-
* This method updates the visibility state of the messages modal by calling the provided
|
|
7
|
-
* function with the negated current visibility state. If the modal is currently visible,
|
|
8
|
-
* it will be closed; if it's hidden, it will be opened.
|
|
9
|
-
*
|
|
10
|
-
* @param {LaunchMessagesOptions} options - The options for launching the messages modal.
|
|
11
|
-
* @param {Function} options.updateIsMessagesModalVisible - Function to update the visibility state of the messages modal.
|
|
12
|
-
* @param {boolean} options.isMessagesModalVisible - Current visibility state of the messages modal.
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* ```typescript
|
|
16
|
-
* const launchMessagesService = new LaunchMessages();
|
|
17
|
-
* launchMessagesService.launchMessages({
|
|
18
|
-
* updateIsMessagesModalVisible: (visible) => {
|
|
19
|
-
* console.log('Messages modal is now:', visible ? 'Visible' : 'Hidden');
|
|
20
|
-
* },
|
|
21
|
-
* isMessagesModalVisible: false, // Initially not visible
|
|
22
|
-
* });
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export class LaunchMessages {
|
|
26
|
-
/**
|
|
27
|
-
* Toggles the visibility state of the messages modal.
|
|
28
|
-
* If the modal is currently visible, it will be closed. If it's hidden, it will be opened.
|
|
29
|
-
*
|
|
30
|
-
* @param updateIsMessagesModalVisible - Function to update the visibility state of the messages modal.
|
|
31
|
-
* @param isMessagesModalVisible - Current visibility state of the messages modal.
|
|
32
|
-
*/
|
|
33
|
-
launchMessages({ updateIsMessagesModalVisible, isMessagesModalVisible, }) {
|
|
34
|
-
updateIsMessagesModalVisible(!isMessagesModalVisible);
|
|
35
|
-
}
|
|
36
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMessages, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
37
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMessages, providedIn: 'root' });
|
|
38
|
-
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LaunchMessages, decorators: [{
|
|
40
|
-
type: Injectable,
|
|
41
|
-
args: [{
|
|
42
|
-
providedIn: 'root',
|
|
43
|
-
}]
|
|
44
|
-
}] });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLW1lc3NhZ2VzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvbWV0aG9kcy9tZXNzYWdlLW1ldGhvZHMvbGF1bmNoLW1lc3NhZ2VzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBQ3pCOzs7Ozs7T0FNRztJQUNILGNBQWMsQ0FBQyxFQUNiLDRCQUE0QixFQUM1QixzQkFBc0IsR0FDQTtRQUN0Qiw0QkFBNEIsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDeEQsQ0FBQzt1R0FiVSxjQUFjOzJHQUFkLGNBQWMsY0FGYixNQUFNOzsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoTWVzc2FnZXNPcHRpb25zIHtcbiAgdXBkYXRlSXNNZXNzYWdlc01vZGFsVmlzaWJsZTogKHZpc2libGU6IGJvb2xlYW4pID0+IHZvaWQ7XG4gIGlzTWVzc2FnZXNNb2RhbFZpc2libGU6IGJvb2xlYW47XG59XG5cbi8vIEV4cG9ydCB0aGUgdHlwZSBkZWZpbml0aW9uIGZvciB0aGUgZnVuY3Rpb25cbmV4cG9ydCB0eXBlIExhdW5jaE1lc3NhZ2VzVHlwZSA9IChvcHRpb25zOiBMYXVuY2hNZXNzYWdlc09wdGlvbnMpID0+IHZvaWQ7XG5cbi8qKlxuICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgbWVzc2FnZXMgbW9kYWwuXG4gKlxuICogVGhpcyBtZXRob2QgdXBkYXRlcyB0aGUgdmlzaWJpbGl0eSBzdGF0ZSBvZiB0aGUgbWVzc2FnZXMgbW9kYWwgYnkgY2FsbGluZyB0aGUgcHJvdmlkZWRcbiAqIGZ1bmN0aW9uIHdpdGggdGhlIG5lZ2F0ZWQgY3VycmVudCB2aXNpYmlsaXR5IHN0YXRlLiBJZiB0aGUgbW9kYWwgaXMgY3VycmVudGx5IHZpc2libGUsXG4gKiBpdCB3aWxsIGJlIGNsb3NlZDsgaWYgaXQncyBoaWRkZW4sIGl0IHdpbGwgYmUgb3BlbmVkLlxuICpcbiAqIEBwYXJhbSB7TGF1bmNoTWVzc2FnZXNPcHRpb25zfSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGxhdW5jaGluZyB0aGUgbWVzc2FnZXMgbW9kYWwuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvcHRpb25zLnVwZGF0ZUlzTWVzc2FnZXNNb2RhbFZpc2libGUgLSBGdW5jdGlvbiB0byB1cGRhdGUgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lc3NhZ2VzIG1vZGFsLlxuICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmlzTWVzc2FnZXNNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lc3NhZ2VzIG1vZGFsLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBsYXVuY2hNZXNzYWdlc1NlcnZpY2UgPSBuZXcgTGF1bmNoTWVzc2FnZXMoKTtcbiAqIGxhdW5jaE1lc3NhZ2VzU2VydmljZS5sYXVuY2hNZXNzYWdlcyh7XG4gKiAgIHVwZGF0ZUlzTWVzc2FnZXNNb2RhbFZpc2libGU6ICh2aXNpYmxlKSA9PiB7XG4gKiAgICAgY29uc29sZS5sb2coJ01lc3NhZ2VzIG1vZGFsIGlzIG5vdzonLCB2aXNpYmxlID8gJ1Zpc2libGUnIDogJ0hpZGRlbicpO1xuICogICB9LFxuICogICBpc01lc3NhZ2VzTW9kYWxWaXNpYmxlOiBmYWxzZSwgLy8gSW5pdGlhbGx5IG5vdCB2aXNpYmxlXG4gKiB9KTtcbiAqIGBgYFxuICovXG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaE1lc3NhZ2VzIHtcbiAgLyoqXG4gICAqIFRvZ2dsZXMgdGhlIHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lc3NhZ2VzIG1vZGFsLlxuICAgKiBJZiB0aGUgbW9kYWwgaXMgY3VycmVudGx5IHZpc2libGUsIGl0IHdpbGwgYmUgY2xvc2VkLiBJZiBpdCdzIGhpZGRlbiwgaXQgd2lsbCBiZSBvcGVuZWQuXG4gICAqXG4gICAqIEBwYXJhbSB1cGRhdGVJc01lc3NhZ2VzTW9kYWxWaXNpYmxlIC0gRnVuY3Rpb24gdG8gdXBkYXRlIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtZXNzYWdlcyBtb2RhbC5cbiAgICogQHBhcmFtIGlzTWVzc2FnZXNNb2RhbFZpc2libGUgLSBDdXJyZW50IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIG1lc3NhZ2VzIG1vZGFsLlxuICAgKi9cbiAgbGF1bmNoTWVzc2FnZXMoe1xuICAgIHVwZGF0ZUlzTWVzc2FnZXNNb2RhbFZpc2libGUsXG4gICAgaXNNZXNzYWdlc01vZGFsVmlzaWJsZSxcbiAgfTogTGF1bmNoTWVzc2FnZXNPcHRpb25zKTogdm9pZCB7XG4gICAgdXBkYXRlSXNNZXNzYWdlc01vZGFsVmlzaWJsZSghaXNNZXNzYWdlc01vZGFsVmlzaWJsZSk7XG4gIH1cbn1cbiJdfQ==
|