@snapcall/stream-ui 1.11.5 → 1.12.1
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/dist/stream-ui.esm.js +794 -316
- package/dist/stream-ui.js +790 -312
- package/dist/stream-ui.umd.js +225 -225
- package/dist/types.d.ts +6 -3
- package/package.json +1 -1
package/dist/stream-ui.esm.js
CHANGED
|
@@ -6,7 +6,7 @@ import $3Sbms$styledcomponents, {keyframes as $3Sbms$keyframes, ThemeProvider as
|
|
|
6
6
|
import $3Sbms$react, {useState as $3Sbms$useState, useRef as $3Sbms$useRef, useEffect as $3Sbms$useEffect, useContext as $3Sbms$useContext, useMemo as $3Sbms$useMemo, createContext as $3Sbms$createContext, useReducer as $3Sbms$useReducer, useLayoutEffect as $3Sbms$useLayoutEffect, useCallback as $3Sbms$useCallback, forwardRef as $3Sbms$forwardRef} from "react";
|
|
7
7
|
import "inobounce";
|
|
8
8
|
import $3Sbms$i18next from "i18next";
|
|
9
|
-
import {initReactI18next as $3Sbms$initReactI18next, useTranslation as $3Sbms$useTranslation} from "react-i18next";
|
|
9
|
+
import {initReactI18next as $3Sbms$initReactI18next, useTranslation as $3Sbms$useTranslation, Trans as $3Sbms$Trans} from "react-i18next";
|
|
10
10
|
import {parse as $3Sbms$parse, getParser as $3Sbms$getParser} from "bowser";
|
|
11
11
|
import {v4 as $3Sbms$v4} from "uuid";
|
|
12
12
|
import {WebSocketTransport as $3Sbms$WebSocketTransport, Peer as $3Sbms$Peer} from "protoo-client";
|
|
@@ -18,11 +18,11 @@ import {createPortal as $3Sbms$createPortal} from "react-dom";
|
|
|
18
18
|
import {toCanvas as $3Sbms$toCanvas} from "qrcode";
|
|
19
19
|
import {useOverlayTriggerState as $3Sbms$useOverlayTriggerState, useToggleState as $3Sbms$useToggleState} from "react-stately";
|
|
20
20
|
import $3Sbms$classnames from "classnames";
|
|
21
|
-
import {useToggleButton as $3Sbms$useToggleButton, useFocusRing as $3Sbms$useFocusRing, useButton as $3Sbms$useButton} from "react-aria";
|
|
22
|
-
import {useModalOverlay as $3Sbms$useModalOverlay, Overlay as $3Sbms$Overlay} from "@react-aria/overlays";
|
|
21
|
+
import {useToggleButton as $3Sbms$useToggleButton, useFocusRing as $3Sbms$useFocusRing, useModalOverlay as $3Sbms$useModalOverlay, Overlay as $3Sbms$Overlay, useButton as $3Sbms$useButton} from "react-aria";
|
|
23
22
|
import {useViewportSize as $3Sbms$useViewportSize} from "@react-aria/utils";
|
|
24
23
|
import {CSSTransition as $3Sbms$CSSTransition} from "react-transition-group";
|
|
25
24
|
import {useHover as $3Sbms$useHover} from "@react-aria/interactions";
|
|
25
|
+
import {useModalOverlay as $3Sbms$useModalOverlay1, Overlay as $3Sbms$Overlay1} from "@react-aria/overlays";
|
|
26
26
|
import $3Sbms$reactcontentloader from "react-content-loader";
|
|
27
27
|
|
|
28
28
|
function $parcel$interopDefault(a) {
|
|
@@ -315,6 +315,24 @@ const $a5146f9062d7bf28$export$3a57e165650c636f = (message, options = {})=>{
|
|
|
315
315
|
};
|
|
316
316
|
|
|
317
317
|
|
|
318
|
+
const $35b37252690084e8$export$1cbfb36c1655a9a = (root, element)=>{
|
|
319
|
+
const mutationObserver = new MutationObserver((mutationRecords)=>{
|
|
320
|
+
mutationRecords.forEach((record)=>{
|
|
321
|
+
record.removedNodes.forEach((node)=>{
|
|
322
|
+
if (node.contains(element)) {
|
|
323
|
+
root.unmount();
|
|
324
|
+
mutationObserver.disconnect();
|
|
325
|
+
}
|
|
326
|
+
});
|
|
327
|
+
});
|
|
328
|
+
});
|
|
329
|
+
mutationObserver.observe(document.documentElement, {
|
|
330
|
+
childList: true,
|
|
331
|
+
subtree: true
|
|
332
|
+
});
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
|
|
318
336
|
|
|
319
337
|
|
|
320
338
|
|
|
@@ -467,6 +485,8 @@ const $18fb8799f38eb407$export$84584c2a98eb6753 = {
|
|
|
467
485
|
someone: "Someone",
|
|
468
486
|
camera: "Camera",
|
|
469
487
|
microphone: "Microphone",
|
|
488
|
+
photo: "Photo",
|
|
489
|
+
video: "Video",
|
|
470
490
|
screen: "Screen",
|
|
471
491
|
speaker: "Speaker",
|
|
472
492
|
user: "User",
|
|
@@ -474,7 +494,10 @@ const $18fb8799f38eb407$export$84584c2a98eb6753 = {
|
|
|
474
494
|
from: "From",
|
|
475
495
|
accept: "Accept",
|
|
476
496
|
decline: "Decline",
|
|
477
|
-
you: "You"
|
|
497
|
+
you: "You",
|
|
498
|
+
cancel: "Cancel",
|
|
499
|
+
confirm: "Confirm",
|
|
500
|
+
remove: "Remove"
|
|
478
501
|
},
|
|
479
502
|
greeting: {
|
|
480
503
|
mainTitle: "Welcome to SnapCall",
|
|
@@ -484,6 +507,46 @@ const $18fb8799f38eb407$export$84584c2a98eb6753 = {
|
|
|
484
507
|
nameSubmit: "Join Conversation",
|
|
485
508
|
footerTitle: "Powered by SnapCall",
|
|
486
509
|
footerDescription: "Meet SnapCall, the easiest way to add real-time video to platform, product or service."
|
|
510
|
+
},
|
|
511
|
+
recorder: {
|
|
512
|
+
submissionTitle: "Thank you for your submission!",
|
|
513
|
+
submissionDescription: "Your photo/video has been successfully submitted. We will review it and get back to you shortly.",
|
|
514
|
+
confirmRemovalTitle: "Confirm deletion",
|
|
515
|
+
confirmRemovalDescription: "Are you sure you want to delete this photo/video? This action cannot be undone.",
|
|
516
|
+
elementBeingProcessed: "Please wait while your {{ type }} is being processed...",
|
|
517
|
+
waitVideo: "A video may take up to 15 seconds to be ready.",
|
|
518
|
+
elementCaptureSuccess: "{{ type }} captured successfully",
|
|
519
|
+
takeNewElement: "Capture a new {{ type }}",
|
|
520
|
+
sendElement: "Send {{ type }}",
|
|
521
|
+
sendElements: "Send {{ count }} elements",
|
|
522
|
+
allowAccess: "Allow access",
|
|
523
|
+
okay: "Okay",
|
|
524
|
+
allowCamMicAccess: "Allow access to camera and microphone",
|
|
525
|
+
allowScreenShareAccess: "Allow access to screen sharing",
|
|
526
|
+
permissionDeniedTitle: "Something went wrong!",
|
|
527
|
+
permissionDeniedDescription: "Without access to the camera and microphone, you won't be able to capture photos or videos to share with the support team. Please grant access in your browser settings.",
|
|
528
|
+
photoInstructionsTitle: "Ready to snap a photo?",
|
|
529
|
+
videoInstructionsTitle: "Ready to record a video?",
|
|
530
|
+
screenShareInstructionsTitle: "Ready to share your screen?",
|
|
531
|
+
instructions: {
|
|
532
|
+
allowAccessOnPrompt: "When prompted, <1>allow access</1> to the camera and microphone.",
|
|
533
|
+
tapPhotoButton: "Tap the <1 /><2>Camera button</2> to take a photo.",
|
|
534
|
+
multiplePhotos: "Feel free to take multiple photos for more details.",
|
|
535
|
+
reviewAndSendPhotos: "Review your photo and <1>send it when you're satisfied.</1>",
|
|
536
|
+
reviewAndSendScreenShare: "Review your video and <1>send it when you're satisfied.</1>",
|
|
537
|
+
tapVideoButton: "Tap the <1 /><2>Record button</2> to start recording.",
|
|
538
|
+
videoSpeech: "You can <1>talk during</1> the recording to provide additional information.",
|
|
539
|
+
tapStopVideoButton: "When you're done, tap the <1 /><2>Stop button</2>.",
|
|
540
|
+
reviewAndSendVideos: "Review your video and <1>send it when you're satisfied</1>.",
|
|
541
|
+
tapScreenShareButton: "Tap <1>Record my screen</1> to begin recording.",
|
|
542
|
+
tapStopScreenShareButton: "When you're done, tap <1>Stop recording</1>."
|
|
543
|
+
},
|
|
544
|
+
switchToMobileTitle: "Switch to your mobile device",
|
|
545
|
+
switchToMobileDescription: "Experience greater convenience by using your phone to take photos and record videos.",
|
|
546
|
+
useDesktopVersion: "Use the desktop version",
|
|
547
|
+
scanQRCode: "Scan this QR code with a compatible device.",
|
|
548
|
+
startScreenShareButton: "Record my screen",
|
|
549
|
+
stopScreenShareButton: "Stop recording"
|
|
487
550
|
}
|
|
488
551
|
}
|
|
489
552
|
};
|
|
@@ -621,6 +684,8 @@ const $c5472fb74fa04782$export$acb2a88f7d552ebf = {
|
|
|
621
684
|
someone: "Quelqu'un",
|
|
622
685
|
camera: "Cam\xe9ra",
|
|
623
686
|
microphone: "Micro",
|
|
687
|
+
photo: "Photo",
|
|
688
|
+
video: "Vid\xe9o",
|
|
624
689
|
screen: "\xc9cran",
|
|
625
690
|
speaker: "Haut-parleur",
|
|
626
691
|
user: "Utilisateur",
|
|
@@ -628,7 +693,10 @@ const $c5472fb74fa04782$export$acb2a88f7d552ebf = {
|
|
|
628
693
|
from: "Depuis",
|
|
629
694
|
accept: "Accepter",
|
|
630
695
|
decline: "D\xe9cliner",
|
|
631
|
-
you: "Vous"
|
|
696
|
+
you: "Vous",
|
|
697
|
+
cancel: "Annuler",
|
|
698
|
+
confirm: "Confirmer",
|
|
699
|
+
remove: "Enlever"
|
|
632
700
|
},
|
|
633
701
|
greeting: {
|
|
634
702
|
mainTitle: "Bienvenue sur SnapCall",
|
|
@@ -638,6 +706,46 @@ const $c5472fb74fa04782$export$acb2a88f7d552ebf = {
|
|
|
638
706
|
nameSubmit: "Rejoindre la conversation",
|
|
639
707
|
footerTitle: "Propuls\xe9 par SnapCall",
|
|
640
708
|
footerDescription: "D\xe9couvrez SnapCall, ajoutez de la vid\xe9o en temps r\xe9el \xe0 n'importe quelle plateforme, produit ou service."
|
|
709
|
+
},
|
|
710
|
+
recorder: {
|
|
711
|
+
submissionTitle: "Merci pour votre soumission !",
|
|
712
|
+
submissionDescription: "Votre photo/vid\xe9o a \xe9t\xe9 envoy\xe9e avec succ\xe8s. Nous l'examinerons et reviendrons vers vous bient\xf4t.",
|
|
713
|
+
confirmRemovalTitle: "Confirmer la suppression",
|
|
714
|
+
confirmRemovalDescription: "Voulez-vous vraiment supprimer cette photo/vid\xe9o ? Cette action ne peut pas \xeatre annul\xe9e.",
|
|
715
|
+
elementBeingProcessed: "Veuillez patienter un moment pendant que votre {{ type }} est en cours de traitement...",
|
|
716
|
+
waitVideo: "Cela peut prendre jusqu'\xe0 15 secondes pour qu'une vid\xe9o soit pr\xeate.",
|
|
717
|
+
elementCaptureSuccess: "{{ type }} captur\xe9(e) avec succ\xe8s",
|
|
718
|
+
takeNewElement: "Prendre une nouvelle {{ type }}",
|
|
719
|
+
sendElement: "Envoyer la {{ type }}",
|
|
720
|
+
sendElements: "Envoyer {{ count }} \xe9l\xe9ments",
|
|
721
|
+
allowAccess: "Autoriser l'acc\xe8s",
|
|
722
|
+
okay: "D'accord",
|
|
723
|
+
allowCamMicAccess: "Autoriser l'acc\xe8s \xe0 la cam\xe9ra et au micro",
|
|
724
|
+
allowScreenShareAccess: "Autoriser l'acc\xe8s au partage d'\xe9cran",
|
|
725
|
+
permissionDeniedTitle: "Quelque chose s'est mal pass\xe9 !",
|
|
726
|
+
permissionDeniedDescription: "Sans acc\xe8s \xe0 la cam\xe9ra et au microphone, vous ne pouvez pas prendre de photos ou de vid\xe9os \xe0 partager avec l'\xe9quipe d'assistance. Veuillez accorder l'acc\xe8s dans les param\xe8tres de votre navigateur.",
|
|
727
|
+
photoInstructionsTitle: "Pr\xeat(e) \xe0 prendre une photo ?",
|
|
728
|
+
videoInstructionsTitle: "Pr\xeat(e) \xe0 enregistrer une vid\xe9o ?",
|
|
729
|
+
screenShareInstructionsTitle: "Pr\xeat(e) \xe0 partager votre \xe9cran ?",
|
|
730
|
+
instructions: {
|
|
731
|
+
allowAccessOnPrompt: "Lorsque vous y \xeates invit\xe9(e), <1>autorisez l'acc\xe8s</1> \xe0 la cam\xe9ra et au microphone.",
|
|
732
|
+
tapPhotoButton: "Appuyez sur le <1 /><2>bouton Appareil photo</2> pour prendre une photo.",
|
|
733
|
+
multiplePhotos: "N'h\xe9sitez pas \xe0 prendre plusieurs photos pour plus de d\xe9tails.",
|
|
734
|
+
reviewAndSendPhotos: "Vous pouvez revoir votre photo, puis <1>l'envoyer lorsque vous avez termin\xe9.</1>",
|
|
735
|
+
tapVideoButton: "Appuyez sur le <1 /><2>bouton d'enregistrement</2> pour d\xe9marrer un enregistrement.",
|
|
736
|
+
videoSpeech: "Vous pouvez <1>parler pendant</1> l'enregistrement pour ajouter des d\xe9tails.",
|
|
737
|
+
tapStopVideoButton: "Lorsque vous avez termin\xe9, appuyez sur le <1 /><2>bouton Arr\xeater</2>.",
|
|
738
|
+
reviewAndSendVideos: "Vous pouvez revoir votre vid\xe9o, puis <1>l'envoyer lorsque vous avez termin\xe9</2>.",
|
|
739
|
+
tapScreenShareButton: "Appuyez sur <1>Enregistrer \xe9cran</1> pour d\xe9marrer un enregistrement.",
|
|
740
|
+
tapStopScreenShareButton: "Lorsque vous avez termin\xe9, appuyez sur <1>Stop enregistrement</1>.",
|
|
741
|
+
reviewAndSendScreenShare: "Vous pouvez revoir votre vid\xe9o, puis <1>l'envoyer lorsque vous avez termin\xe9.</1>"
|
|
742
|
+
},
|
|
743
|
+
switchToMobileTitle: "Passez sur votre mobile",
|
|
744
|
+
switchToMobileDescription: "Profitez d'une exp\xe9rience encore plus pratique en utilisant votre t\xe9l\xe9phone pour prendre des photos et enregistrer des vid\xe9os.",
|
|
745
|
+
useDesktopVersion: "Continuer",
|
|
746
|
+
scanQRCode: "Scannez ce code QR avec un appareil compatible.",
|
|
747
|
+
startScreenShareButton: "Enregistrer \xe9cran",
|
|
748
|
+
stopScreenShareButton: "Stop enregistrement"
|
|
641
749
|
}
|
|
642
750
|
}
|
|
643
751
|
};
|
|
@@ -779,6 +887,8 @@ const $b7790fb9e48df5c4$export$3486a10f30cf1ee4 = {
|
|
|
779
887
|
someone: "Qualcuno",
|
|
780
888
|
camera: "Telecamera",
|
|
781
889
|
microphone: "Microfono",
|
|
890
|
+
photo: "Foto",
|
|
891
|
+
video: "Video",
|
|
782
892
|
screen: "Schermo",
|
|
783
893
|
speaker: "Altoparlante",
|
|
784
894
|
user: "Utente",
|
|
@@ -786,7 +896,10 @@ const $b7790fb9e48df5c4$export$3486a10f30cf1ee4 = {
|
|
|
786
896
|
from: "Da",
|
|
787
897
|
accept: "Accettare",
|
|
788
898
|
decline: "Declinare",
|
|
789
|
-
you: "Voi"
|
|
899
|
+
you: "Voi",
|
|
900
|
+
cancel: "Annulla",
|
|
901
|
+
confirm: "Confermare",
|
|
902
|
+
remove: "Rimuovere"
|
|
790
903
|
},
|
|
791
904
|
greeting: {
|
|
792
905
|
mainTitle: "Benvenuto a SnapCall",
|
|
@@ -796,6 +909,46 @@ const $b7790fb9e48df5c4$export$3486a10f30cf1ee4 = {
|
|
|
796
909
|
nameSubmit: "Partecipa alla conversazione",
|
|
797
910
|
footerTitle: "Offerto da SnapCall",
|
|
798
911
|
footerDescription: "Incontrare SnapCall, il modo pi\xf9 semplice per aggiungere video in tempo reale a piattaforma, prodotto o servizio."
|
|
912
|
+
},
|
|
913
|
+
recorder: {
|
|
914
|
+
submissionTitle: "Grazie per il tuo invio!",
|
|
915
|
+
submissionDescription: "La tua foto/video \xe8 stata inviata con successo. La esamineremo e ti risponderemo al pi\xf9 presto.",
|
|
916
|
+
confirmRemovalTitle: "Conferma rimozione",
|
|
917
|
+
confirmRemovalDescription: "Sei sicuro di voler rimuovere questa foto/video? Questa azione non pu\xf2 essere annullata.",
|
|
918
|
+
elementBeingProcessed: "Attendi un momento mentre il tuo {{ type }} viene elaborato...",
|
|
919
|
+
waitVideo: "Potrebbero essere necessari fino a 15 secondi affinch\xe9 un video sia pronto.",
|
|
920
|
+
elementCaptureSuccess: "{{ type }} catturato con successo",
|
|
921
|
+
takeNewElement: "Cattura un nuovo {{ type }}",
|
|
922
|
+
sendElement: "Invia {{ type }}",
|
|
923
|
+
sendElements: "Invia {{ count }} elementi",
|
|
924
|
+
allowAccess: "Consenti accesso",
|
|
925
|
+
okay: "Okay",
|
|
926
|
+
allowCamMicAccess: "Consenti accesso a fotocamera e microfono",
|
|
927
|
+
allowScreenShareAccess: "Consenti accesso alla condivisione dello schermo",
|
|
928
|
+
permissionDeniedTitle: "Qualcosa \xe8 andato storto!",
|
|
929
|
+
permissionDeniedDescription: "Senza l'accesso alla fotocamera e al microfono, non \xe8 possibile scattare foto o registrare video da condividere con il team di supporto. Si prega di concedere l'accesso nelle impostazioni del browser.",
|
|
930
|
+
photoInstructionsTitle: "Pronto a scattare una foto?",
|
|
931
|
+
videoInstructionsTitle: "Pronto a registrare un video?",
|
|
932
|
+
screenShareInstructionsTitle: "Pronto a condividere il tuo schermo?",
|
|
933
|
+
instructions: {
|
|
934
|
+
allowAccessOnPrompt: "Quando richiesto, <1>consenti l'accesso</1> a fotocamera e microfono.",
|
|
935
|
+
tapPhotoButton: "Tocca il pulsante <1 /><2>Fotocamera</2> per scattare una foto.",
|
|
936
|
+
multiplePhotos: "Non esitare a scattare pi\xf9 foto per maggiori dettagli.",
|
|
937
|
+
reviewAndSendPhotos: "Puoi rivedere la tua foto e poi <1>inviarla quando hai finito.</1>",
|
|
938
|
+
tapVideoButton: "Tocca il pulsante <1 /><2>Registra</2> per avviare una registrazione.",
|
|
939
|
+
videoSpeech: "Puoi <1>parlare durante</1> la registrazione per aggiungere dettagli.",
|
|
940
|
+
tapStopVideoButton: "Quando hai finito, tocca il pulsante <1 /><2>Ferma</2>.",
|
|
941
|
+
reviewAndSendVideos: "Puoi rivedere il tuo video e poi <1>inviarlo quando hai finito</1>.",
|
|
942
|
+
tapScreenShareButton: "Tocca <1>Registra il mio schermo</1> per avviare una registrazione.",
|
|
943
|
+
tapStopScreenShareButton: "Quando hai finito, tocca <1>Ferma registrazione</1>.",
|
|
944
|
+
reviewAndSendScreenShare: "Puoi rivedere il tuo video e poi <1>inviarlo quando hai finito.</1>"
|
|
945
|
+
},
|
|
946
|
+
switchToMobileTitle: "Passa al tuo dispositivo mobile",
|
|
947
|
+
switchToMobileDescription: "Goditi un'esperienza ancora pi\xf9 pratica utilizzando il tuo telefono per scattare foto e registrare video.",
|
|
948
|
+
useDesktopVersion: "Usa la versione desktop",
|
|
949
|
+
scanQRCode: "Scansiona questo codice QR con un dispositivo compatibile.",
|
|
950
|
+
startScreenShareButton: "Registra il mio schermo",
|
|
951
|
+
stopScreenShareButton: "Ferma registrazione"
|
|
799
952
|
}
|
|
800
953
|
}
|
|
801
954
|
};
|
|
@@ -1439,6 +1592,49 @@ class $0148b6fd862a22e8$export$2e2bcd8739ae039 {
|
|
|
1439
1592
|
}
|
|
1440
1593
|
|
|
1441
1594
|
|
|
1595
|
+
const $107ba89b5d0109ab$var$audioContextConstructor = window.AudioContext || window.webkitAudioContext;
|
|
1596
|
+
class $107ba89b5d0109ab$export$22ddc20344c01547 {
|
|
1597
|
+
audioSources = {};
|
|
1598
|
+
tracks = {};
|
|
1599
|
+
constructor(){
|
|
1600
|
+
this.audioContext = new $107ba89b5d0109ab$var$audioContextConstructor();
|
|
1601
|
+
this.audioDestination = this.audioContext.createMediaStreamDestination();
|
|
1602
|
+
}
|
|
1603
|
+
getSetting(identifier) {
|
|
1604
|
+
return this.tracks[identifier]?.getSettings();
|
|
1605
|
+
}
|
|
1606
|
+
removeTrack(identifier) {
|
|
1607
|
+
const track = this.tracks[identifier];
|
|
1608
|
+
if (track) {
|
|
1609
|
+
this.audioSources[identifier]?.disconnect();
|
|
1610
|
+
delete this.tracks[identifier];
|
|
1611
|
+
delete this.audioSources[identifier];
|
|
1612
|
+
track.stop();
|
|
1613
|
+
}
|
|
1614
|
+
}
|
|
1615
|
+
addTrack(identifier, track) {
|
|
1616
|
+
if (track.kind === "audio") {
|
|
1617
|
+
this.removeTrack(identifier);
|
|
1618
|
+
const stream = new MediaStream([
|
|
1619
|
+
track
|
|
1620
|
+
]);
|
|
1621
|
+
const audioSource = this.audioContext.createMediaStreamSource(stream);
|
|
1622
|
+
this.audioSources[identifier] = audioSource;
|
|
1623
|
+
this.tracks[identifier] = track;
|
|
1624
|
+
if (this.audioDestination) audioSource.connect(this.audioDestination);
|
|
1625
|
+
}
|
|
1626
|
+
}
|
|
1627
|
+
getFinalTrack() {
|
|
1628
|
+
return this.audioDestination.stream.getTracks()[0];
|
|
1629
|
+
}
|
|
1630
|
+
removeAll() {
|
|
1631
|
+
Object.keys(this.tracks).forEach((identifier)=>{
|
|
1632
|
+
this.removeTrack(identifier);
|
|
1633
|
+
});
|
|
1634
|
+
}
|
|
1635
|
+
}
|
|
1636
|
+
|
|
1637
|
+
|
|
1442
1638
|
const $c31e3fb4360572af$var$log = new (0, $0f65a9eaf4a1e910$export$2e2bcd8739ae039)("StreamerClient");
|
|
1443
1639
|
const $c31e3fb4360572af$export$103bedf43ba882db = {
|
|
1444
1640
|
WEBRTC_FAILED: "WRTC1",
|
|
@@ -1978,6 +2174,7 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1978
2174
|
this.audioLevel?.release();
|
|
1979
2175
|
this.audioLevel = undefined;
|
|
1980
2176
|
if (this.micProducer && this.micProducer.track) {
|
|
2177
|
+
this.audioMedia?.removeTrack("mic");
|
|
1981
2178
|
this.micProducer?.track?.stop();
|
|
1982
2179
|
$c31e3fb4360572af$var$log.log("switchMicrophone", "stopping previous track");
|
|
1983
2180
|
}
|
|
@@ -1990,7 +2187,9 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1990
2187
|
}));
|
|
1991
2188
|
this.audioLevel = new (0, $67e45b2e30dcc030$export$ea669869acd8f177)(stream, this);
|
|
1992
2189
|
// this.audioLevel.analyse();
|
|
2190
|
+
this.audioMedia = this.audioMedia || new (0, $107ba89b5d0109ab$export$22ddc20344c01547)();
|
|
1993
2191
|
const track = stream.getAudioTracks()[0];
|
|
2192
|
+
this.audioMedia.addTrack("mic", track);
|
|
1994
2193
|
await this.micProducer?.replaceTrack({
|
|
1995
2194
|
track: track
|
|
1996
2195
|
});
|
|
@@ -2066,10 +2265,12 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2066
2265
|
const transport = await this.getTransport("audio", "send");
|
|
2067
2266
|
this.audioLevel = new (0, $67e45b2e30dcc030$export$ea669869acd8f177)(stream, this);
|
|
2068
2267
|
// this.audioLevel.analyse();
|
|
2268
|
+
this.audioMedia = this.audioMedia || new (0, $107ba89b5d0109ab$export$22ddc20344c01547)();
|
|
2069
2269
|
const track = stream.getAudioTracks()[0];
|
|
2270
|
+
this.audioMedia.addTrack("mic", track);
|
|
2070
2271
|
const deviceType = "microphone";
|
|
2071
2272
|
const micProducer = await transport.produce({
|
|
2072
|
-
track:
|
|
2273
|
+
track: this.audioMedia.getFinalTrack(),
|
|
2073
2274
|
codecOptions: {
|
|
2074
2275
|
opusStereo: true,
|
|
2075
2276
|
opusDtx: true
|
|
@@ -2146,6 +2347,8 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2146
2347
|
this.mediaPipe.clean();
|
|
2147
2348
|
this.mediaPipe = undefined;
|
|
2148
2349
|
}
|
|
2350
|
+
this.audioMedia?.removeAll();
|
|
2351
|
+
this.audioMedia = undefined;
|
|
2149
2352
|
this.webcamTrack?.stop();
|
|
2150
2353
|
this.webcamTrack = null;
|
|
2151
2354
|
this.protooTransport.close();
|
|
@@ -2304,14 +2507,13 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2304
2507
|
optionalParam.facingMode = this.webcam.facingMode;
|
|
2305
2508
|
} else {
|
|
2306
2509
|
const webcams = Array.from(this.webcams.keys());
|
|
2307
|
-
const deviceId = this.webcam?.device?.deviceId || "
|
|
2510
|
+
const deviceId = this.webcam?.device?.deviceId || "unknown";
|
|
2308
2511
|
let newWebcamIndex = webcams.indexOf(deviceId);
|
|
2309
2512
|
if (newWebcamIndex < webcams.length - 1) newWebcamIndex++;
|
|
2310
2513
|
else newWebcamIndex = 0;
|
|
2311
2514
|
const newWebcamDevice = this.webcams.get(webcams[newWebcamIndex]);
|
|
2312
2515
|
if (!newWebcamDevice) throw new Error("no webcam device");
|
|
2313
2516
|
this.webcam.device = newWebcamDevice;
|
|
2314
|
-
this.webcam.resolution = "hd";
|
|
2315
2517
|
optionalParam.deviceId = {
|
|
2316
2518
|
ideal: this.webcam.device?.deviceId
|
|
2317
2519
|
};
|
|
@@ -2327,8 +2529,9 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2327
2529
|
ideal: this.webcam.device.deviceId
|
|
2328
2530
|
};
|
|
2329
2531
|
}
|
|
2330
|
-
if (resolution) this.webcam.resolution = resolution;
|
|
2331
2532
|
}
|
|
2533
|
+
this.webcam.resolution = resolution || this.webcam.resolution || "hd";
|
|
2534
|
+
this.webcam.framerate = frameRate || this.webcam.framerate;
|
|
2332
2535
|
let usedResolution = $c31e3fb4360572af$export$d21ffcc5eb136bfa[resolution || this.webcam.resolution];
|
|
2333
2536
|
if (this.useVideoBackground) usedResolution = {
|
|
2334
2537
|
width: {
|
|
@@ -2346,7 +2549,6 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2346
2549
|
});
|
|
2347
2550
|
const mediaStream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
|
|
2348
2551
|
video: {
|
|
2349
|
-
frameRate: frameRate,
|
|
2350
2552
|
...optionalParam,
|
|
2351
2553
|
...usedResolution
|
|
2352
2554
|
}
|
|
@@ -2388,6 +2590,8 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2388
2590
|
};
|
|
2389
2591
|
}
|
|
2390
2592
|
if (!this.webcam.device) throw new Error("no webcam devices");
|
|
2593
|
+
this.webcam.resolution = config?.resolution || this.webcam.resolution || "hd";
|
|
2594
|
+
this.webcam.framerate = config?.frameRate || this.webcam.framerate;
|
|
2391
2595
|
let usedResolution = $c31e3fb4360572af$export$d21ffcc5eb136bfa[config?.resolution || this.webcam.resolution];
|
|
2392
2596
|
if (this.useVideoBackground) usedResolution = {
|
|
2393
2597
|
width: {
|
|
@@ -2494,10 +2698,13 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2494
2698
|
});
|
|
2495
2699
|
this.dispatchEvent(event);
|
|
2496
2700
|
}
|
|
2497
|
-
async enableScreenshare(
|
|
2701
|
+
async enableScreenshare(option = {
|
|
2702
|
+
audioTransportOption: "classic"
|
|
2703
|
+
}) {
|
|
2498
2704
|
if (!this.permissions.find((permission)=>permission === "screen_sharing")) throw new Error("feature not allowed");
|
|
2705
|
+
if (option.audioTransportOption === "mix" && !this.micProducer) throw new Error("microphone not activated and audio mix transport requested");
|
|
2499
2706
|
const stream = await this.handleGetUserMediaError("screen", navigator.mediaDevices.getDisplayMedia({
|
|
2500
|
-
audio:
|
|
2707
|
+
audio: option.audioTransportOption !== "none",
|
|
2501
2708
|
video: {
|
|
2502
2709
|
displaySurface: "monitor",
|
|
2503
2710
|
logicalSurface: true,
|
|
@@ -2517,13 +2724,23 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2517
2724
|
const audioTransport = await this.getTransport("audio", "send");
|
|
2518
2725
|
const audioTrack = stream.getAudioTracks()[0];
|
|
2519
2726
|
if (audioTrack) {
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
this.screenshareVideoProducer
|
|
2526
|
-
|
|
2727
|
+
if (option.audioTransportOption === "classic") {
|
|
2728
|
+
this.screenshareAudioProducer = await this.streamerMediasoup?.produceAudio(audioTransport, audioTrack, {
|
|
2729
|
+
deviceType: deviceType,
|
|
2730
|
+
share: true
|
|
2731
|
+
});
|
|
2732
|
+
this.screenshareVideoProducer?.on("transportclose", ()=>{
|
|
2733
|
+
this.screenshareVideoProducer = undefined;
|
|
2734
|
+
});
|
|
2735
|
+
} else if (option.audioTransportOption === "mix") {
|
|
2736
|
+
this.audioMedia = this.audioMedia || new (0, $107ba89b5d0109ab$export$22ddc20344c01547)();
|
|
2737
|
+
this.audioMedia.addTrack("screen", audioTrack);
|
|
2738
|
+
const finalTracks = this.audioMedia.getFinalTrack();
|
|
2739
|
+
// currently microphone producer has to be enabled before.
|
|
2740
|
+
if (finalTracks && this.micProducer) this.micProducer.replaceTrack({
|
|
2741
|
+
track: finalTracks
|
|
2742
|
+
});
|
|
2743
|
+
}
|
|
2527
2744
|
}
|
|
2528
2745
|
const track = stream.getVideoTracks()[0];
|
|
2529
2746
|
const videoTransport = await this.getTransport("video", "send");
|
|
@@ -2550,6 +2767,7 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2550
2767
|
});
|
|
2551
2768
|
this.screenshareVideoProducer = undefined;
|
|
2552
2769
|
}
|
|
2770
|
+
this.audioMedia?.removeTrack("screen");
|
|
2553
2771
|
if (this.screenshareAudioProducer) {
|
|
2554
2772
|
this.screenshareAudioProducer.close();
|
|
2555
2773
|
if (this.protoo.connected) await this.protoo.request("closeProducer", {
|
|
@@ -2847,7 +3065,7 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2847
3065
|
return this.webcam;
|
|
2848
3066
|
}
|
|
2849
3067
|
getCurrentMicrophoneId() {
|
|
2850
|
-
return this.micProducer?.track?.getSettings().deviceId;
|
|
3068
|
+
return this.audioMedia?.getSetting("mic") || this.micProducer?.track?.getSettings().deviceId;
|
|
2851
3069
|
}
|
|
2852
3070
|
getCurrentSpeakerId() {
|
|
2853
3071
|
const audioRendererKeys = Object.keys(this.audioRenderers);
|
|
@@ -10521,6 +10739,8 @@ const $4fb4815baa04b470$export$914ddf2021ea8ee6 = (0, $3Sbms$styledcomponents).d
|
|
|
10521
10739
|
|
|
10522
10740
|
|
|
10523
10741
|
|
|
10742
|
+
|
|
10743
|
+
|
|
10524
10744
|
|
|
10525
10745
|
|
|
10526
10746
|
|
|
@@ -10566,6 +10786,61 @@ const $5a48b7481979330f$export$d2b052e7b4be1756 = /*#__PURE__*/ (0, $3Sbms$forwa
|
|
|
10566
10786
|
|
|
10567
10787
|
|
|
10568
10788
|
|
|
10789
|
+
const $91e337bf8187124b$export$a703eb468fcf7e69 = (props)=>{
|
|
10790
|
+
const { state: state , children: children } = props;
|
|
10791
|
+
const ref = (0, $3Sbms$useRef)(null);
|
|
10792
|
+
const { modalProps: modalProps , underlayProps: underlayProps } = (0, $3Sbms$useModalOverlay)({
|
|
10793
|
+
isDismissable: true,
|
|
10794
|
+
...props
|
|
10795
|
+
}, state, ref);
|
|
10796
|
+
const [exited, setExited] = (0, $3Sbms$useState)(!state.isOpen);
|
|
10797
|
+
if (!(state.isOpen || !exited)) return null;
|
|
10798
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$Overlay), {
|
|
10799
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$CSSTransition), {
|
|
10800
|
+
in: state.isOpen,
|
|
10801
|
+
appear: true,
|
|
10802
|
+
onEntered: ()=>setExited(false),
|
|
10803
|
+
onExited: ()=>setExited(true),
|
|
10804
|
+
timeout: {
|
|
10805
|
+
enter: 0,
|
|
10806
|
+
exit: 300
|
|
10807
|
+
},
|
|
10808
|
+
classNames: {
|
|
10809
|
+
enter: "opacity-0",
|
|
10810
|
+
enterDone: "opacity-1 transition ease-in",
|
|
10811
|
+
exit: "opacity-0 transition ease-out"
|
|
10812
|
+
},
|
|
10813
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
10814
|
+
className: "fixed z-[100] inset-0 bg-black bg-opacity-90 flex justify-center items-center inter",
|
|
10815
|
+
...underlayProps,
|
|
10816
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$CSSTransition), {
|
|
10817
|
+
in: state.isOpen,
|
|
10818
|
+
appear: true,
|
|
10819
|
+
nodeRef: ref,
|
|
10820
|
+
timeout: {
|
|
10821
|
+
enter: 0,
|
|
10822
|
+
exit: 300
|
|
10823
|
+
},
|
|
10824
|
+
classNames: {
|
|
10825
|
+
appear: "translate-y-2",
|
|
10826
|
+
appearDone: "translate-y-0 transition ease-in",
|
|
10827
|
+
exit: "translate-y-2 transition ease-out"
|
|
10828
|
+
},
|
|
10829
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
10830
|
+
...modalProps,
|
|
10831
|
+
ref: ref,
|
|
10832
|
+
children: children
|
|
10833
|
+
})
|
|
10834
|
+
})
|
|
10835
|
+
})
|
|
10836
|
+
})
|
|
10837
|
+
});
|
|
10838
|
+
};
|
|
10839
|
+
|
|
10840
|
+
|
|
10841
|
+
|
|
10842
|
+
|
|
10843
|
+
|
|
10569
10844
|
|
|
10570
10845
|
|
|
10571
10846
|
|
|
@@ -10581,6 +10856,7 @@ const $0590ee3141e14968$export$353f5b6fc5456de1 = /*#__PURE__*/ (0, $3Sbms$forwa
|
|
|
10581
10856
|
primary: (0, $3Sbms$classnames)(isActive ? "bg-primaryLight" : "bg-primary", "text-white disabled:bg-secondaryLight"),
|
|
10582
10857
|
secondary: (0, $3Sbms$classnames)(isActive ? "bg-graySelected" : "bg-transparent", "text-primary border border-secondaryLight disabled:text-secondaryLight disabled:bg-graySelected"),
|
|
10583
10858
|
basic: (0, $3Sbms$classnames)(isActive ? "bg-graySelected" : "bg-white", "text-primary disabled:text-secondaryLight disabled:bg-graySelected"),
|
|
10859
|
+
tertiary: (0, $3Sbms$classnames)(isActive ? "bg-tertiarySelected" : "bg-tertiary", "text-mainBlue disabled:opacity-50"),
|
|
10584
10860
|
custom: ""
|
|
10585
10861
|
};
|
|
10586
10862
|
const sizeStyle = {
|
|
@@ -10608,12 +10884,6 @@ const $0590ee3141e14968$export$353f5b6fc5456de1 = /*#__PURE__*/ (0, $3Sbms$forwa
|
|
|
10608
10884
|
|
|
10609
10885
|
function $c0bb66c3d546ed81$export$2b77a92f1a5ad772(props) {
|
|
10610
10886
|
const { children: children , state: state , size: size = "small" , title: title , description: description , primaryAction: primaryAction , secondaryAction: secondaryAction , centered: centered = false } = props;
|
|
10611
|
-
const ref = (0, $3Sbms$react).useRef(null);
|
|
10612
|
-
const { modalProps: modalProps , underlayProps: underlayProps } = (0, $3Sbms$useModalOverlay)({
|
|
10613
|
-
isDismissable: true,
|
|
10614
|
-
...props
|
|
10615
|
-
}, state, ref);
|
|
10616
|
-
const [exited, setExited] = (0, $3Sbms$useState)(!state.isOpen);
|
|
10617
10887
|
const viewport = (0, $3Sbms$useViewportSize)();
|
|
10618
10888
|
const maxHeight = viewport.height - 64;
|
|
10619
10889
|
const modalSize = {
|
|
@@ -10621,96 +10891,60 @@ function $c0bb66c3d546ed81$export$2b77a92f1a5ad772(props) {
|
|
|
10621
10891
|
medium: "max-w-[600px]",
|
|
10622
10892
|
large: "max-w-[800px]"
|
|
10623
10893
|
};
|
|
10624
|
-
|
|
10625
|
-
|
|
10626
|
-
|
|
10627
|
-
|
|
10628
|
-
|
|
10629
|
-
|
|
10630
|
-
onEntered: ()=>setExited(false),
|
|
10631
|
-
onExited: ()=>setExited(true),
|
|
10632
|
-
timeout: {
|
|
10633
|
-
enter: 0,
|
|
10634
|
-
exit: 300
|
|
10635
|
-
},
|
|
10636
|
-
classNames: {
|
|
10637
|
-
enter: "opacity-0",
|
|
10638
|
-
enterDone: "opacity-1 transition ease-in",
|
|
10639
|
-
exit: "opacity-0 transition ease-out"
|
|
10894
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $91e337bf8187124b$export$a703eb468fcf7e69), {
|
|
10895
|
+
state: state,
|
|
10896
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
10897
|
+
className: (0, $3Sbms$classnames)("bg-white rounded-[10px] z-[1] overflow-x-auto focus:outline-none", modalSize[size]),
|
|
10898
|
+
style: {
|
|
10899
|
+
maxHeight: `${maxHeight}px`
|
|
10640
10900
|
},
|
|
10641
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10642
|
-
className: "
|
|
10643
|
-
|
|
10644
|
-
|
|
10645
|
-
|
|
10646
|
-
|
|
10647
|
-
|
|
10648
|
-
|
|
10649
|
-
|
|
10650
|
-
exit: 300
|
|
10651
|
-
},
|
|
10652
|
-
classNames: {
|
|
10653
|
-
appear: "translate-y-2",
|
|
10654
|
-
appearDone: "translate-y-0 transition ease-in",
|
|
10655
|
-
exit: "translate-y-2 transition ease-out"
|
|
10656
|
-
},
|
|
10657
|
-
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
10658
|
-
...modalProps,
|
|
10659
|
-
ref: ref,
|
|
10660
|
-
className: (0, $3Sbms$classnames)("bg-white rounded-[10px] z-[1] overflow-x-auto focus:outline-none", modalSize[size]),
|
|
10661
|
-
style: {
|
|
10662
|
-
maxHeight: `${maxHeight}px`
|
|
10663
|
-
},
|
|
10664
|
-
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10665
|
-
className: "flex flex-col gap-5 px-5 py-[25px] max-h-[inherit]",
|
|
10666
|
-
children: [
|
|
10667
|
-
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10668
|
-
className: "flex flex-col gap-5 overflow-auto",
|
|
10669
|
-
children: [
|
|
10670
|
-
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10671
|
-
className: (0, $3Sbms$classnames)("flex flex-col gap-[5px]", {
|
|
10672
|
-
"text-center": centered
|
|
10673
|
-
}),
|
|
10674
|
-
children: [
|
|
10675
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)("h2", {
|
|
10676
|
-
className: "text-xl font-medium",
|
|
10677
|
-
children: title
|
|
10678
|
-
}),
|
|
10679
|
-
description && /*#__PURE__*/ (0, $3Sbms$jsx)("p", {
|
|
10680
|
-
className: "text-sm text-secondary",
|
|
10681
|
-
children: description
|
|
10682
|
-
})
|
|
10683
|
-
]
|
|
10684
|
-
}),
|
|
10685
|
-
children
|
|
10686
|
-
]
|
|
10901
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10902
|
+
className: "flex flex-col gap-5 px-5 py-[25px] max-h-[inherit]",
|
|
10903
|
+
children: [
|
|
10904
|
+
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10905
|
+
className: "flex flex-col gap-5 overflow-auto",
|
|
10906
|
+
children: [
|
|
10907
|
+
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10908
|
+
className: (0, $3Sbms$classnames)("flex flex-col gap-[5px]", {
|
|
10909
|
+
"text-center": centered
|
|
10687
10910
|
}),
|
|
10688
|
-
|
|
10689
|
-
|
|
10690
|
-
|
|
10691
|
-
|
|
10692
|
-
|
|
10693
|
-
|
|
10694
|
-
|
|
10695
|
-
|
|
10696
|
-
|
|
10697
|
-
|
|
10698
|
-
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
|
|
10702
|
-
|
|
10703
|
-
|
|
10704
|
-
|
|
10705
|
-
|
|
10706
|
-
|
|
10707
|
-
|
|
10708
|
-
|
|
10709
|
-
|
|
10710
|
-
|
|
10711
|
-
|
|
10911
|
+
children: [
|
|
10912
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("h2", {
|
|
10913
|
+
className: "text-xl font-medium",
|
|
10914
|
+
children: title
|
|
10915
|
+
}),
|
|
10916
|
+
description && /*#__PURE__*/ (0, $3Sbms$jsx)("p", {
|
|
10917
|
+
className: "text-sm text-secondary",
|
|
10918
|
+
children: description
|
|
10919
|
+
})
|
|
10920
|
+
]
|
|
10921
|
+
}),
|
|
10922
|
+
children
|
|
10923
|
+
]
|
|
10924
|
+
}),
|
|
10925
|
+
(primaryAction || secondaryAction) && /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
10926
|
+
className: (0, $3Sbms$classnames)("flex justify-end gap-2.5", centered ? "justify-center" : "justify-end"),
|
|
10927
|
+
children: [
|
|
10928
|
+
typeof secondaryAction === "string" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
10929
|
+
variant: "secondary",
|
|
10930
|
+
onPress: state.close,
|
|
10931
|
+
fullWidth: centered,
|
|
10932
|
+
children: secondaryAction
|
|
10933
|
+
}),
|
|
10934
|
+
typeof secondaryAction === "function" && secondaryAction({
|
|
10935
|
+
close: state.close
|
|
10936
|
+
}),
|
|
10937
|
+
typeof primaryAction === "string" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
10938
|
+
onPress: state.close,
|
|
10939
|
+
fullWidth: centered,
|
|
10940
|
+
children: primaryAction
|
|
10941
|
+
}),
|
|
10942
|
+
typeof primaryAction === "function" && primaryAction({
|
|
10943
|
+
close: state.close
|
|
10944
|
+
})
|
|
10945
|
+
]
|
|
10712
10946
|
})
|
|
10713
|
-
|
|
10947
|
+
]
|
|
10714
10948
|
})
|
|
10715
10949
|
})
|
|
10716
10950
|
});
|
|
@@ -10806,32 +11040,39 @@ const $96999d2514f71e51$var$InstructionRow = ({ children: children , index: inde
|
|
|
10806
11040
|
]
|
|
10807
11041
|
});
|
|
10808
11042
|
const $96999d2514f71e51$export$788cb893d96254c8 = ({ state: state , type: type })=>{
|
|
11043
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
10809
11044
|
const [permissionsState, setPermissionsState] = (0, $3Sbms$useState)("idle");
|
|
11045
|
+
(0, $3Sbms$useEffect)(()=>{
|
|
11046
|
+
const { deviceState: deviceState } = (0, $c9e496369b59be7a$export$2f377c2162fd02b2).getState();
|
|
11047
|
+
if (deviceState.screenshare.enabled && type === "screen") return setPermissionsState("granted");
|
|
11048
|
+
if (deviceState.camera.enabled && type !== "screen") return setPermissionsState("granted");
|
|
11049
|
+
setPermissionsState("idle");
|
|
11050
|
+
}, [
|
|
11051
|
+
type
|
|
11052
|
+
]);
|
|
11053
|
+
const { deviceState: deviceState } = (0, $c9e496369b59be7a$export$2f377c2162fd02b2).getState();
|
|
10810
11054
|
const [isRoomReady, setRoomReady] = (0, $3Sbms$useState)(false);
|
|
10811
11055
|
const { orientation: orientation } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
10812
11056
|
const device = orientation === "landscape" ? "desktop" : "mobile";
|
|
10813
11057
|
const videoLength = permissionsState === "granted" ? "short" : "full";
|
|
10814
|
-
const videoType = type === "
|
|
10815
|
-
const onDeviceEnabled = ()=>setPermissionsState("granted");
|
|
11058
|
+
const videoType = type === "photo" ? "photo" : "video";
|
|
10816
11059
|
const onEnterRoom = ()=>setRoomReady(true);
|
|
10817
11060
|
const onLeaveRoom = ()=>setRoomReady(false);
|
|
10818
11061
|
const ref = (0, $3Sbms$useRef)(null);
|
|
10819
11062
|
const title = (0, $3Sbms$useMemo)(()=>{
|
|
10820
|
-
if (permissionsState === "refused") return "
|
|
10821
|
-
if (type === "
|
|
10822
|
-
|
|
11063
|
+
if (permissionsState === "refused") return t("recorder.permissionDeniedTitle");
|
|
11064
|
+
if (type === "photo") return t("recorder.photoInstructionsTitle");
|
|
11065
|
+
else if (type === "video") return t("recorder.videoInstructionsTitle");
|
|
11066
|
+
else return t("recorder.screenShareInstructionsTitle");
|
|
10823
11067
|
}, [
|
|
10824
11068
|
permissionsState,
|
|
10825
|
-
type
|
|
11069
|
+
type,
|
|
11070
|
+
t
|
|
10826
11071
|
]);
|
|
10827
11072
|
(0, $3Sbms$useEffect)(()=>{
|
|
10828
|
-
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("localVideoAvailable", onDeviceEnabled);
|
|
10829
|
-
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("microphoneEnabled", onDeviceEnabled);
|
|
10830
11073
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("enterRoom", onEnterRoom);
|
|
10831
11074
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("leaveRoom", onLeaveRoom);
|
|
10832
11075
|
return ()=>{
|
|
10833
|
-
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("localVideoAvailable", onDeviceEnabled);
|
|
10834
|
-
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("microphoneEnabled", onDeviceEnabled);
|
|
10835
11076
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("enterRoom", onEnterRoom);
|
|
10836
11077
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("leaveRoom", onLeaveRoom);
|
|
10837
11078
|
};
|
|
@@ -10846,36 +11087,50 @@ const $96999d2514f71e51$export$788cb893d96254c8 = ({ state: state , type: type
|
|
|
10846
11087
|
children: permissionsState === "refused" ? /*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
10847
11088
|
fullWidth: true,
|
|
10848
11089
|
onPress: ()=>window.location.reload(),
|
|
10849
|
-
children: "
|
|
11090
|
+
children: t("recorder.allowAccess")
|
|
10850
11091
|
}) : /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$Fragment), {
|
|
10851
11092
|
children: permissionsState === "granted" ? /*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
10852
11093
|
fullWidth: true,
|
|
10853
11094
|
onPress: state.close,
|
|
10854
|
-
children: "
|
|
11095
|
+
children: t("recorder.okay")
|
|
10855
11096
|
}) : /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
10856
11097
|
fullWidth: true,
|
|
10857
11098
|
isDisabled: permissionsState === "requesting" || isRoomReady === false,
|
|
10858
11099
|
onPress: async ()=>{
|
|
10859
11100
|
setPermissionsState("requesting");
|
|
10860
11101
|
try {
|
|
10861
|
-
|
|
10862
|
-
|
|
10863
|
-
|
|
10864
|
-
|
|
10865
|
-
|
|
10866
|
-
|
|
10867
|
-
|
|
10868
|
-
|
|
10869
|
-
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
11102
|
+
if (!deviceState.microphone.enabled) {
|
|
11103
|
+
const mediaResult = await navigator.mediaDevices.getUserMedia({
|
|
11104
|
+
audio: true,
|
|
11105
|
+
video: type !== "screen"
|
|
11106
|
+
});
|
|
11107
|
+
mediaResult.getTracks().forEach((track)=>track.stop());
|
|
11108
|
+
}
|
|
11109
|
+
if (!deviceState.microphone.enabled) await (0, $c9e496369b59be7a$export$2f377c2162fd02b2).enableMicrophone();
|
|
11110
|
+
if (!deviceState.camera.enabled && type !== "screen") {
|
|
11111
|
+
await (0, $c9e496369b59be7a$export$2f377c2162fd02b2).disableScreenshare();
|
|
11112
|
+
await (0, $c9e496369b59be7a$export$2f377c2162fd02b2).enableVideo({
|
|
11113
|
+
resolution: "vga",
|
|
11114
|
+
frameRate: 20,
|
|
11115
|
+
facingMode: "environment"
|
|
11116
|
+
});
|
|
11117
|
+
}
|
|
11118
|
+
if (!deviceState.screenshare.enabled && type === "screen") {
|
|
11119
|
+
await (0, $c9e496369b59be7a$export$2f377c2162fd02b2).disableVideo();
|
|
11120
|
+
await (0, $c9e496369b59be7a$export$2f377c2162fd02b2).enableScreenshare({
|
|
11121
|
+
audioTransportOption: "mix"
|
|
11122
|
+
});
|
|
11123
|
+
}
|
|
11124
|
+
setPermissionsState("granted");
|
|
11125
|
+
state.close();
|
|
11126
|
+
} catch (error) {
|
|
11127
|
+
console.log("error", error);
|
|
10873
11128
|
setPermissionsState("refused");
|
|
10874
11129
|
}
|
|
10875
11130
|
},
|
|
10876
11131
|
children: [
|
|
10877
11132
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $910dd7d7d872a463$export$2e2bcd8739ae039), {}),
|
|
10878
|
-
"
|
|
11133
|
+
type !== "screen" ? t("recorder.allowCamMicAccess") : t("recorder.allowScreenShareAccess")
|
|
10879
11134
|
]
|
|
10880
11135
|
})
|
|
10881
11136
|
})
|
|
@@ -10887,51 +11142,61 @@ const $96999d2514f71e51$export$788cb893d96254c8 = ({ state: state , type: type
|
|
|
10887
11142
|
className: "flex flex-col gap-[10px]",
|
|
10888
11143
|
ref: ref,
|
|
10889
11144
|
children: permissionsState === "refused" ? /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
10890
|
-
children: "
|
|
11145
|
+
children: t("recorder.permissionDeniedDescription")
|
|
10891
11146
|
}) : /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Fragment), {
|
|
10892
11147
|
children: [
|
|
10893
11148
|
permissionsState !== "granted" && /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10894
11149
|
index: 1,
|
|
10895
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10896
|
-
children:
|
|
10897
|
-
|
|
10898
|
-
|
|
10899
|
-
|
|
10900
|
-
|
|
10901
|
-
|
|
10902
|
-
|
|
11150
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11151
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11152
|
+
i18nKey: "recorder.instructions.allowAccessOnPrompt",
|
|
11153
|
+
children: [
|
|
11154
|
+
"When prompted, ",
|
|
11155
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11156
|
+
children: "allow access"
|
|
11157
|
+
}),
|
|
11158
|
+
" to camera and microphone."
|
|
11159
|
+
]
|
|
11160
|
+
})
|
|
10903
11161
|
})
|
|
10904
11162
|
}),
|
|
10905
|
-
type === "
|
|
11163
|
+
type === "photo" && /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Fragment), {
|
|
10906
11164
|
children: [
|
|
10907
11165
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10908
11166
|
index: 1 + permissionsInstructionIndex,
|
|
10909
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10910
|
-
children:
|
|
10911
|
-
|
|
10912
|
-
|
|
10913
|
-
|
|
10914
|
-
|
|
10915
|
-
|
|
10916
|
-
|
|
10917
|
-
|
|
11167
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11168
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11169
|
+
i18nKey: "recorder.instructions.tapPhotoButton",
|
|
11170
|
+
com: true,
|
|
11171
|
+
children: [
|
|
11172
|
+
"Tap the ",
|
|
11173
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $444e1dd9fa8f6883$export$dce36e07153365d), {}),
|
|
11174
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11175
|
+
children: " Camera button"
|
|
11176
|
+
}),
|
|
11177
|
+
" to take a photo."
|
|
11178
|
+
]
|
|
11179
|
+
})
|
|
10918
11180
|
})
|
|
10919
11181
|
}),
|
|
10920
11182
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10921
11183
|
index: 2 + permissionsInstructionIndex,
|
|
10922
11184
|
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
10923
|
-
children: "
|
|
11185
|
+
children: t("recorder.instructions.multiplePhotos")
|
|
10924
11186
|
})
|
|
10925
11187
|
}),
|
|
10926
11188
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10927
11189
|
index: 3 + permissionsInstructionIndex,
|
|
10928
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10929
|
-
children:
|
|
10930
|
-
|
|
10931
|
-
|
|
10932
|
-
|
|
10933
|
-
|
|
10934
|
-
|
|
11190
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11191
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11192
|
+
i18nKey: "recorder.instructions.reviewAndSendPhotos",
|
|
11193
|
+
children: [
|
|
11194
|
+
"You can review your photo and then ",
|
|
11195
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11196
|
+
children: "send it when you're done."
|
|
11197
|
+
})
|
|
11198
|
+
]
|
|
11199
|
+
})
|
|
10935
11200
|
})
|
|
10936
11201
|
})
|
|
10937
11202
|
]
|
|
@@ -10940,52 +11205,127 @@ const $96999d2514f71e51$export$788cb893d96254c8 = ({ state: state , type: type
|
|
|
10940
11205
|
children: [
|
|
10941
11206
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10942
11207
|
index: 1 + permissionsInstructionIndex,
|
|
10943
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10944
|
-
children:
|
|
10945
|
-
|
|
10946
|
-
|
|
10947
|
-
|
|
10948
|
-
|
|
10949
|
-
|
|
10950
|
-
|
|
10951
|
-
|
|
11208
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11209
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11210
|
+
i18nKey: "recorder.instructions.tapVideoButton",
|
|
11211
|
+
children: [
|
|
11212
|
+
"Tap the ",
|
|
11213
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $444e1dd9fa8f6883$export$f9da3144ae2525a3), {}),
|
|
11214
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11215
|
+
children: " Record button"
|
|
11216
|
+
}),
|
|
11217
|
+
" to start a recording."
|
|
11218
|
+
]
|
|
11219
|
+
})
|
|
11220
|
+
})
|
|
11221
|
+
}),
|
|
11222
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
11223
|
+
index: 2 + permissionsInstructionIndex,
|
|
11224
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11225
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11226
|
+
i18nKey: "recorder.instructions.videoSpeech",
|
|
11227
|
+
children: [
|
|
11228
|
+
"You can ",
|
|
11229
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11230
|
+
children: "speak during"
|
|
11231
|
+
}),
|
|
11232
|
+
" the recording for added detail."
|
|
11233
|
+
]
|
|
11234
|
+
})
|
|
11235
|
+
})
|
|
11236
|
+
}),
|
|
11237
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
11238
|
+
index: 3 + permissionsInstructionIndex,
|
|
11239
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11240
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11241
|
+
i18nKey: "recorder.instructions.tapStopVideoButton",
|
|
11242
|
+
children: [
|
|
11243
|
+
"When you're finished, tap the ",
|
|
11244
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $444e1dd9fa8f6883$export$c6a849fd9d9d93a2), {}),
|
|
11245
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11246
|
+
children: " Stop button"
|
|
11247
|
+
}),
|
|
11248
|
+
"."
|
|
11249
|
+
]
|
|
11250
|
+
})
|
|
11251
|
+
})
|
|
11252
|
+
}),
|
|
11253
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
11254
|
+
index: 4 + permissionsInstructionIndex,
|
|
11255
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11256
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11257
|
+
i18nKey: "recorder.instructions.reviewAndSendVideos",
|
|
11258
|
+
children: [
|
|
11259
|
+
"You can review your video and then ",
|
|
11260
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11261
|
+
children: "send it when you're done"
|
|
11262
|
+
}),
|
|
11263
|
+
"."
|
|
11264
|
+
]
|
|
11265
|
+
})
|
|
11266
|
+
})
|
|
11267
|
+
})
|
|
11268
|
+
]
|
|
11269
|
+
}),
|
|
11270
|
+
type === "screen" && /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Fragment), {
|
|
11271
|
+
children: [
|
|
11272
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
11273
|
+
index: 1 + permissionsInstructionIndex,
|
|
11274
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11275
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11276
|
+
i18nKey: "recorder.instructions.tapScreenShareButton",
|
|
11277
|
+
children: [
|
|
11278
|
+
"Tap on",
|
|
11279
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11280
|
+
children: " Record my screen"
|
|
11281
|
+
}),
|
|
11282
|
+
" to start a recording."
|
|
11283
|
+
]
|
|
11284
|
+
})
|
|
10952
11285
|
})
|
|
10953
11286
|
}),
|
|
10954
11287
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10955
11288
|
index: 2 + permissionsInstructionIndex,
|
|
10956
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10957
|
-
children:
|
|
10958
|
-
|
|
10959
|
-
|
|
10960
|
-
|
|
10961
|
-
|
|
10962
|
-
|
|
10963
|
-
|
|
11289
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11290
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11291
|
+
i18nKey: "recorder.instructions.videoSpeech",
|
|
11292
|
+
children: [
|
|
11293
|
+
"You can ",
|
|
11294
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11295
|
+
children: "speak during"
|
|
11296
|
+
}),
|
|
11297
|
+
" the recording for added detail."
|
|
11298
|
+
]
|
|
11299
|
+
})
|
|
10964
11300
|
})
|
|
10965
11301
|
}),
|
|
10966
11302
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10967
11303
|
index: 3 + permissionsInstructionIndex,
|
|
10968
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10969
|
-
children:
|
|
10970
|
-
|
|
10971
|
-
|
|
10972
|
-
|
|
10973
|
-
|
|
10974
|
-
|
|
10975
|
-
|
|
10976
|
-
|
|
11304
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11305
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11306
|
+
i18nKey: "recorder.instructions.tapStopScreenShareButton",
|
|
11307
|
+
children: [
|
|
11308
|
+
"When you're finished, tap on ",
|
|
11309
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11310
|
+
children: "Stop recording"
|
|
11311
|
+
}),
|
|
11312
|
+
"."
|
|
11313
|
+
]
|
|
11314
|
+
})
|
|
10977
11315
|
})
|
|
10978
11316
|
}),
|
|
10979
11317
|
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$InstructionRow, {
|
|
10980
11318
|
index: 4 + permissionsInstructionIndex,
|
|
10981
|
-
children: /*#__PURE__*/ (0, $3Sbms$
|
|
10982
|
-
children:
|
|
10983
|
-
|
|
10984
|
-
|
|
10985
|
-
|
|
10986
|
-
|
|
10987
|
-
|
|
10988
|
-
|
|
11319
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Text, {
|
|
11320
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Trans), {
|
|
11321
|
+
i18nKey: "recorder.instructions.reviewAndSendScreenShare",
|
|
11322
|
+
children: [
|
|
11323
|
+
"You can review your video and then ",
|
|
11324
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)($96999d2514f71e51$var$Bold, {
|
|
11325
|
+
children: "send it when you're done."
|
|
11326
|
+
})
|
|
11327
|
+
]
|
|
11328
|
+
})
|
|
10989
11329
|
})
|
|
10990
11330
|
})
|
|
10991
11331
|
]
|
|
@@ -11017,7 +11357,9 @@ const $96999d2514f71e51$export$788cb893d96254c8 = ({ state: state , type: type
|
|
|
11017
11357
|
|
|
11018
11358
|
|
|
11019
11359
|
|
|
11360
|
+
|
|
11020
11361
|
const $1c8fc500105e5c78$export$f9d8408fefd786da = ({ state: state , setReady: setReady })=>{
|
|
11362
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11021
11363
|
const QRCodeRef = (0, $3Sbms$useRef)(null);
|
|
11022
11364
|
const { options: options } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
11023
11365
|
const [QRCodeContainerRef, { width: QRCodeContainerWidth }] = (0, $af23c74942bdcae7$export$e295b0c537d32d7d)();
|
|
@@ -11034,8 +11376,8 @@ const $1c8fc500105e5c78$export$f9d8408fefd786da = ({ state: state , setReady: se
|
|
|
11034
11376
|
]);
|
|
11035
11377
|
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $c0bb66c3d546ed81$export$2b77a92f1a5ad772), {
|
|
11036
11378
|
centered: true,
|
|
11037
|
-
title: "
|
|
11038
|
-
description: "
|
|
11379
|
+
title: t("recorder.switchToMobileTitle"),
|
|
11380
|
+
description: t("recorder.switchToMobileDescription"),
|
|
11039
11381
|
isDismissable: false,
|
|
11040
11382
|
state: state,
|
|
11041
11383
|
primaryAction: ()=>/*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
@@ -11044,7 +11386,7 @@ const $1c8fc500105e5c78$export$f9d8408fefd786da = ({ state: state , setReady: se
|
|
|
11044
11386
|
setReady(true);
|
|
11045
11387
|
state.close();
|
|
11046
11388
|
},
|
|
11047
|
-
children: "
|
|
11389
|
+
children: t("recorder.useDesktopVersion")
|
|
11048
11390
|
}),
|
|
11049
11391
|
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11050
11392
|
className: "flex flex-col gap-[20px]",
|
|
@@ -11064,7 +11406,7 @@ const $1c8fc500105e5c78$export$f9d8408fefd786da = ({ state: state , setReady: se
|
|
|
11064
11406
|
}),
|
|
11065
11407
|
/*#__PURE__*/ (0, $3Sbms$jsx)("p", {
|
|
11066
11408
|
className: "flex items-center justify-center text-xs text-primaryLight text-center",
|
|
11067
|
-
children: "
|
|
11409
|
+
children: t("recorder.scanQRCode")
|
|
11068
11410
|
})
|
|
11069
11411
|
]
|
|
11070
11412
|
})
|
|
@@ -11075,29 +11417,21 @@ const $1c8fc500105e5c78$export$f9d8408fefd786da = ({ state: state , setReady: se
|
|
|
11075
11417
|
function $d48329960b5b412c$export$fc3bf4634b488af8({ mode: mode }) {
|
|
11076
11418
|
const { orientation: orientation } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
11077
11419
|
const desktop = orientation === "landscape";
|
|
11078
|
-
const [ready, setReady] = (0, $3Sbms$useState)(!desktop);
|
|
11420
|
+
const [ready, setReady] = (0, $3Sbms$useState)(mode === "screen" || !desktop);
|
|
11421
|
+
const [isInstructionsModalOpen, setIsInstructionsModalOpen] = (0, $3Sbms$useState)(ready);
|
|
11422
|
+
const modalState = (0, $3Sbms$useOverlayTriggerState)({
|
|
11423
|
+
isOpen: isInstructionsModalOpen && ready,
|
|
11424
|
+
onOpenChange: setIsInstructionsModalOpen
|
|
11425
|
+
});
|
|
11079
11426
|
(0, $3Sbms$useEffect)(()=>{
|
|
11080
|
-
|
|
11081
|
-
setIsPhotoInstructionsModalOpen(mode === "photo" && ready);
|
|
11082
|
-
setIsVideoInstructionsModalOpen(mode === "video" && ready);
|
|
11083
|
-
}
|
|
11427
|
+
setIsInstructionsModalOpen(true);
|
|
11084
11428
|
}, [
|
|
11085
11429
|
ready,
|
|
11086
11430
|
mode
|
|
11087
11431
|
]);
|
|
11088
|
-
const [isPhotoInstructionsModalOpen, setIsPhotoInstructionsModalOpen] = (0, $3Sbms$useState)(mode === "photo" && ready);
|
|
11089
|
-
const [isVideoInstructionsModalOpen, setIsVideoInstructionsModalOpen] = (0, $3Sbms$useState)(mode === "video" && ready);
|
|
11090
|
-
const photoInstructionsModalState = (0, $3Sbms$useOverlayTriggerState)({
|
|
11091
|
-
isOpen: isPhotoInstructionsModalOpen,
|
|
11092
|
-
onOpenChange: setIsPhotoInstructionsModalOpen
|
|
11093
|
-
});
|
|
11094
|
-
const videoInstructionsModalState = (0, $3Sbms$useOverlayTriggerState)({
|
|
11095
|
-
isOpen: isVideoInstructionsModalOpen,
|
|
11096
|
-
onOpenChange: setIsVideoInstructionsModalOpen
|
|
11097
|
-
});
|
|
11098
11432
|
return {
|
|
11099
|
-
|
|
11100
|
-
|
|
11433
|
+
mode: mode,
|
|
11434
|
+
modalState: modalState,
|
|
11101
11435
|
ready: ready,
|
|
11102
11436
|
setReady: setReady
|
|
11103
11437
|
};
|
|
@@ -11111,12 +11445,8 @@ const $d48329960b5b412c$export$bee10e8ab511933f = ({ state: state })=>{
|
|
|
11111
11445
|
return /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Fragment), {
|
|
11112
11446
|
children: [
|
|
11113
11447
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $96999d2514f71e51$export$788cb893d96254c8), {
|
|
11114
|
-
state: state.
|
|
11115
|
-
type:
|
|
11116
|
-
}),
|
|
11117
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $96999d2514f71e51$export$788cb893d96254c8), {
|
|
11118
|
-
state: state.videoInstructionsModalState,
|
|
11119
|
-
type: "video"
|
|
11448
|
+
state: state.modalState,
|
|
11449
|
+
type: state.mode
|
|
11120
11450
|
}),
|
|
11121
11451
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $1c8fc500105e5c78$export$f9d8408fefd786da), {
|
|
11122
11452
|
state: switchToMobileModalState,
|
|
@@ -11127,22 +11457,54 @@ const $d48329960b5b412c$export$bee10e8ab511933f = ({ state: state })=>{
|
|
|
11127
11457
|
};
|
|
11128
11458
|
|
|
11129
11459
|
|
|
11130
|
-
|
|
11131
|
-
|
|
11460
|
+
|
|
11461
|
+
|
|
11462
|
+
|
|
11463
|
+
const $39932392769664d0$export$4e594bceac139abd = (props)=>{
|
|
11464
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11465
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11466
|
+
className: (0, $3Sbms$classnames)("flex rounded-full h-[40px] p-[10px] border-2 border-white text-white justify-center items-center align-middle", "font-semibold", "cursor-pointer", {
|
|
11467
|
+
"bg-[#f12828]": !props.state.streaming
|
|
11468
|
+
}),
|
|
11469
|
+
onClick: ()=>props.onCapturePress(),
|
|
11470
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11471
|
+
children: props.state.streaming ? t("recorder.stopScreenShareButton") : t("recorder.startScreenShareButton")
|
|
11472
|
+
})
|
|
11473
|
+
});
|
|
11474
|
+
};
|
|
11475
|
+
const $39932392769664d0$export$f9da3144ae2525a3 = (props)=>{
|
|
11476
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11477
|
+
className: (0, $3Sbms$classnames)("bg-white rounded-full w-[72px] h-[72px] p-[3px]"),
|
|
11478
|
+
onClick: ()=>props.onCapturePress(),
|
|
11479
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11480
|
+
className: "bg-primary rounded-full w-full h-full p-[3px] flex items-center justify-center cursor-pointer",
|
|
11481
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11482
|
+
className: (0, $3Sbms$classnames)("w-full h-full transition-[transform,border-radius] duration-300", props.state.mode === "photo" ? "bg-white" : "bg-[#f12828]", props.state.streaming ? "rounded-[5px] scale-[0.4]" : "rounded-[60px]")
|
|
11483
|
+
})
|
|
11484
|
+
})
|
|
11485
|
+
});
|
|
11486
|
+
};
|
|
11487
|
+
|
|
11488
|
+
|
|
11489
|
+
function $a94f21ef9007b90a$export$bd7b6af6aa16550c({ state: state = "photo" }) {
|
|
11490
|
+
const [currentMode, setMode] = (0, $3Sbms$useState)(state);
|
|
11132
11491
|
const [streaming, setStreaming] = (0, $3Sbms$useState)(false);
|
|
11133
11492
|
return {
|
|
11134
|
-
|
|
11135
|
-
|
|
11493
|
+
mode: currentMode,
|
|
11494
|
+
setMode: (mode)=>{
|
|
11495
|
+
setMode(mode);
|
|
11496
|
+
},
|
|
11136
11497
|
streaming: streaming,
|
|
11137
11498
|
setStreaming: setStreaming
|
|
11138
11499
|
};
|
|
11139
11500
|
}
|
|
11140
11501
|
const $a94f21ef9007b90a$export$11a6fe490bbc4873 = (props)=>{
|
|
11502
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11141
11503
|
const setupModalsState = (0, $d48329960b5b412c$export$fc3bf4634b488af8)({
|
|
11142
|
-
mode: props.state.
|
|
11504
|
+
mode: props.state.mode
|
|
11143
11505
|
});
|
|
11144
11506
|
return /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11145
|
-
className: "flex flex-col bg-primary h-[150px] w-full max-w-[
|
|
11507
|
+
className: "flex flex-col bg-primary h-[150px] w-full max-w-[500px] rounded-[15px] p-2.5 gap-2.5",
|
|
11146
11508
|
children: [
|
|
11147
11509
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $d48329960b5b412c$export$bee10e8ab511933f), {
|
|
11148
11510
|
state: setupModalsState
|
|
@@ -11163,25 +11525,39 @@ const $a94f21ef9007b90a$export$11a6fe490bbc4873 = (props)=>{
|
|
|
11163
11525
|
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11164
11526
|
className: "flex flex-row justify-end flex-auto items-center gap-[10px] ",
|
|
11165
11527
|
children: [
|
|
11166
|
-
/*#__PURE__*/ (0, $3Sbms$
|
|
11167
|
-
|
|
11168
|
-
|
|
11169
|
-
|
|
11170
|
-
|
|
11171
|
-
|
|
11172
|
-
|
|
11173
|
-
|
|
11174
|
-
|
|
11528
|
+
props.state.mode !== "screen" && /*#__PURE__*/ (0, $3Sbms$jsxs)((0, $3Sbms$Fragment), {
|
|
11529
|
+
children: [
|
|
11530
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $5a48b7481979330f$export$d2b052e7b4be1756), {
|
|
11531
|
+
onPress: ()=>{
|
|
11532
|
+
if (!props.state.streaming) {
|
|
11533
|
+
props.state.setMode("photo");
|
|
11534
|
+
setupModalsState.modalState.open();
|
|
11535
|
+
}
|
|
11536
|
+
},
|
|
11537
|
+
isSelected: props.state.mode === "photo",
|
|
11538
|
+
children: t("misc.photo")
|
|
11539
|
+
}),
|
|
11540
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $5a48b7481979330f$export$d2b052e7b4be1756), {
|
|
11541
|
+
onPress: ()=>{
|
|
11542
|
+
if (!props.state.streaming) {
|
|
11543
|
+
props.state.setMode("video");
|
|
11544
|
+
setupModalsState.modalState.open();
|
|
11545
|
+
}
|
|
11546
|
+
},
|
|
11547
|
+
isSelected: props.state.mode === "video",
|
|
11548
|
+
children: t("misc.video")
|
|
11549
|
+
})
|
|
11550
|
+
]
|
|
11175
11551
|
}),
|
|
11176
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $5a48b7481979330f$export$d2b052e7b4be1756), {
|
|
11552
|
+
props.state.mode === "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $5a48b7481979330f$export$d2b052e7b4be1756), {
|
|
11177
11553
|
onPress: ()=>{
|
|
11178
11554
|
if (!props.state.streaming) {
|
|
11179
|
-
props.state.
|
|
11180
|
-
setupModalsState.
|
|
11555
|
+
props.state.setMode("screen");
|
|
11556
|
+
setupModalsState.modalState.open();
|
|
11181
11557
|
}
|
|
11182
11558
|
},
|
|
11183
|
-
isSelected:
|
|
11184
|
-
children: "
|
|
11559
|
+
isSelected: props.state.mode === "screen",
|
|
11560
|
+
children: t("misc.screen")
|
|
11185
11561
|
})
|
|
11186
11562
|
]
|
|
11187
11563
|
})
|
|
@@ -11194,20 +11570,18 @@ const $a94f21ef9007b90a$export$11a6fe490bbc4873 = (props)=>{
|
|
|
11194
11570
|
className: "w-[60px] h-[60px]",
|
|
11195
11571
|
children: props.thumbnail
|
|
11196
11572
|
}),
|
|
11197
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)(
|
|
11198
|
-
|
|
11199
|
-
|
|
11200
|
-
|
|
11201
|
-
|
|
11202
|
-
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11203
|
-
className: (0, $3Sbms$classnames)("w-full h-full transition-[transform,border-radius] duration-300", props.state.photo ? "bg-white" : "bg-[#f12828]", props.state.streaming ? "rounded-[5px] scale-[0.4]" : "rounded-[60px]")
|
|
11204
|
-
})
|
|
11205
|
-
})
|
|
11573
|
+
props.state.mode === "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $39932392769664d0$export$4e594bceac139abd), {
|
|
11574
|
+
...props
|
|
11575
|
+
}),
|
|
11576
|
+
props.state.mode !== "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $39932392769664d0$export$f9da3144ae2525a3), {
|
|
11577
|
+
...props
|
|
11206
11578
|
}),
|
|
11207
11579
|
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11208
11580
|
onClick: props.onSwitch,
|
|
11209
|
-
className: "
|
|
11210
|
-
|
|
11581
|
+
className: (0, $3Sbms$classnames)("rounded-full w-[56px] h-[56px] flex items-center justify-center", {
|
|
11582
|
+
"bg-[#565656] cursor-pointer": props.state.mode !== "screen"
|
|
11583
|
+
}),
|
|
11584
|
+
children: props.state.mode !== "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $58d405d56c1abe95$export$aefffb14595958fe), {})
|
|
11211
11585
|
})
|
|
11212
11586
|
]
|
|
11213
11587
|
})
|
|
@@ -11227,18 +11601,19 @@ const $a94f21ef9007b90a$export$11a6fe490bbc4873 = (props)=>{
|
|
|
11227
11601
|
|
|
11228
11602
|
|
|
11229
11603
|
|
|
11604
|
+
|
|
11230
11605
|
function $38cdd553fb158eaa$export$4589ed81930b555c(props) {
|
|
11231
11606
|
const { children: children , state: state } = props;
|
|
11232
11607
|
const ref = (0, $3Sbms$react).useRef(null);
|
|
11233
11608
|
const { orientation: orientation } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
11234
|
-
const { modalProps: modalProps , underlayProps: underlayProps } = (0, $3Sbms$
|
|
11609
|
+
const { modalProps: modalProps , underlayProps: underlayProps } = (0, $3Sbms$useModalOverlay1)(props, state, ref);
|
|
11235
11610
|
const [exited, setExited] = (0, $3Sbms$useState)(!state.isOpen);
|
|
11236
11611
|
const viewport = (0, $3Sbms$useViewportSize)();
|
|
11237
11612
|
const maxHeight = viewport.height - 64;
|
|
11238
11613
|
const desktop = orientation === "landscape";
|
|
11239
11614
|
// Don't render anything if the modal is not open and we're not animating out.
|
|
11240
11615
|
if (!(state.isOpen || !exited)) return null;
|
|
11241
|
-
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$
|
|
11616
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$Overlay1), {
|
|
11242
11617
|
children: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $3Sbms$CSSTransition), {
|
|
11243
11618
|
in: state.isOpen,
|
|
11244
11619
|
appear: true,
|
|
@@ -11294,6 +11669,8 @@ function $38cdd553fb158eaa$export$4589ed81930b555c(props) {
|
|
|
11294
11669
|
|
|
11295
11670
|
|
|
11296
11671
|
|
|
11672
|
+
|
|
11673
|
+
|
|
11297
11674
|
const $4425c0dfad3f82bb$export$480db61f4dcd7727 = ()=>/*#__PURE__*/ (0, $3Sbms$jsx)("svg", {
|
|
11298
11675
|
width: "12",
|
|
11299
11676
|
height: "15",
|
|
@@ -11350,26 +11727,61 @@ const $a879d6bc7f43b0c5$export$28e1ba20e0688eb7 = ()=>/*#__PURE__*/ (0, $3Sbms$j
|
|
|
11350
11727
|
});
|
|
11351
11728
|
|
|
11352
11729
|
|
|
11353
|
-
|
|
11354
|
-
|
|
11355
|
-
|
|
11356
|
-
const $
|
|
11357
|
-
|
|
11358
|
-
|
|
11359
|
-
|
|
11360
|
-
|
|
11361
|
-
|
|
11362
|
-
|
|
11363
|
-
|
|
11730
|
+
|
|
11731
|
+
|
|
11732
|
+
|
|
11733
|
+
const $a4b1c68ef470f35c$export$f56b3b5841ad32ae = ({ asset: asset , state: state })=>{
|
|
11734
|
+
return /*#__PURE__*/ (0, $3Sbms$jsx)((0, $91e337bf8187124b$export$a703eb468fcf7e69), {
|
|
11735
|
+
state: state,
|
|
11736
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11737
|
+
className: "flex flex-col items-center w-screen h-screen p-[15px] gap-[10px]",
|
|
11738
|
+
children: [
|
|
11739
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11740
|
+
className: "flex items-center max-w-[400px] w-full h-full",
|
|
11741
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11742
|
+
className: "min-w-full rounded-[10px] overflow-hidden",
|
|
11743
|
+
children: [
|
|
11744
|
+
asset.type === "picture" && /*#__PURE__*/ (0, $3Sbms$jsx)("img", {
|
|
11745
|
+
src: asset.objectUrl,
|
|
11746
|
+
alt: `Asset-${asset.assetId}`,
|
|
11747
|
+
className: "object-fill"
|
|
11748
|
+
}),
|
|
11749
|
+
asset.type === "video" && /*#__PURE__*/ (0, $3Sbms$jsx)("video", {
|
|
11750
|
+
src: asset.objectUrl,
|
|
11751
|
+
playsInline: true,
|
|
11752
|
+
autoPlay: true,
|
|
11753
|
+
controls: true
|
|
11754
|
+
})
|
|
11755
|
+
]
|
|
11756
|
+
})
|
|
11757
|
+
}),
|
|
11758
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11759
|
+
className: "max-w-[135px] w-1/3",
|
|
11760
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
11761
|
+
onPress: state.close,
|
|
11762
|
+
variant: "tertiary",
|
|
11763
|
+
size: "large",
|
|
11764
|
+
fullWidth: true,
|
|
11765
|
+
children: "Close"
|
|
11766
|
+
})
|
|
11767
|
+
})
|
|
11768
|
+
]
|
|
11769
|
+
})
|
|
11770
|
+
});
|
|
11771
|
+
};
|
|
11772
|
+
|
|
11773
|
+
|
|
11364
11774
|
const $77fb06ba253d6f7c$export$c9169049516d8bcf = ({ asset: asset , index: index , removeAsset: removeAsset })=>{
|
|
11775
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11365
11776
|
const confirmRemovalModalState = (0, $3Sbms$useOverlayTriggerState)({});
|
|
11777
|
+
const previewAssetModalProps = (0, $3Sbms$useOverlayTriggerState)({});
|
|
11366
11778
|
return /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11367
11779
|
className: "flex flex-row justify-between items-center",
|
|
11368
11780
|
children: [
|
|
11369
11781
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $c0bb66c3d546ed81$export$2b77a92f1a5ad772), {
|
|
11370
|
-
title: "
|
|
11782
|
+
title: t("recorder.confirmRemovalTitle"),
|
|
11371
11783
|
state: confirmRemovalModalState,
|
|
11372
|
-
description: "
|
|
11784
|
+
description: t("recorder.confirmRemovalDescription"),
|
|
11373
11785
|
primaryAction: ({ close: close })=>/*#__PURE__*/ (0, $3Sbms$jsxs)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
11374
11786
|
onPress: async ()=>{
|
|
11375
11787
|
await removeAsset(asset);
|
|
@@ -11377,29 +11789,34 @@ const $77fb06ba253d6f7c$export$c9169049516d8bcf = ({ asset: asset , index: index
|
|
|
11377
11789
|
},
|
|
11378
11790
|
children: [
|
|
11379
11791
|
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $a879d6bc7f43b0c5$export$28e1ba20e0688eb7), {}),
|
|
11380
|
-
"
|
|
11792
|
+
t("misc.confirm")
|
|
11381
11793
|
]
|
|
11382
11794
|
}),
|
|
11383
|
-
secondaryAction: "
|
|
11795
|
+
secondaryAction: t("misc.cancel")
|
|
11384
11796
|
}),
|
|
11385
11797
|
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11386
11798
|
className: "flex flex-row gap-[10px] items-center",
|
|
11387
11799
|
children: [
|
|
11388
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $
|
|
11800
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $a4b1c68ef470f35c$export$f56b3b5841ad32ae), {
|
|
11801
|
+
state: previewAssetModalProps,
|
|
11389
11802
|
asset: asset
|
|
11390
11803
|
}),
|
|
11804
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $c7542aa0d9bb5f39$export$1cd1efc78cb52ca5), {
|
|
11805
|
+
asset: asset,
|
|
11806
|
+
onClick: previewAssetModalProps.open
|
|
11807
|
+
}),
|
|
11391
11808
|
/*#__PURE__*/ (0, $3Sbms$jsxs)("span", {
|
|
11392
11809
|
className: "text-sm",
|
|
11393
11810
|
style: {
|
|
11394
11811
|
hyphens: "manual"
|
|
11395
11812
|
},
|
|
11396
11813
|
children: [
|
|
11397
|
-
asset.type === "picture" ? "
|
|
11814
|
+
asset.type === "picture" ? t("misc.photo") : t("misc.video"),
|
|
11398
11815
|
" ",
|
|
11399
11816
|
index + 1,
|
|
11400
11817
|
" \xb7",
|
|
11401
11818
|
" ",
|
|
11402
|
-
$
|
|
11819
|
+
(0, $92672d57809ea9d3$export$3ae94a2503e890a1)(new Date(asset.timestamp))
|
|
11403
11820
|
]
|
|
11404
11821
|
})
|
|
11405
11822
|
]
|
|
@@ -11407,7 +11824,7 @@ const $77fb06ba253d6f7c$export$c9169049516d8bcf = ({ asset: asset , index: index
|
|
|
11407
11824
|
/*#__PURE__*/ (0, $3Sbms$jsx)("span", {
|
|
11408
11825
|
className: "text-xs font-bold underline cursor-pointer ml-[10px]",
|
|
11409
11826
|
onClick: confirmRemovalModalState.open,
|
|
11410
|
-
children: "
|
|
11827
|
+
children: t("misc.remove")
|
|
11411
11828
|
})
|
|
11412
11829
|
]
|
|
11413
11830
|
}, asset.assetId);
|
|
@@ -11490,6 +11907,7 @@ const $7436fc0a14c16764$export$4fa52f68b1c78fbf = ()=>/*#__PURE__*/ (0, $3Sbms$j
|
|
|
11490
11907
|
|
|
11491
11908
|
|
|
11492
11909
|
const $d4d374dc7955cc18$export$5c334f209b1aa661 = ({ assets: assets , state: state , onSendAssets: onSendAssets , removeAsset: removeAsset , loading: loading })=>{
|
|
11910
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11493
11911
|
const ref = (0, $3Sbms$useRef)(null);
|
|
11494
11912
|
const [assetKind, setAssetKind] = (0, $3Sbms$useState)(assets[assets.length - 1]?.type === "picture" ? "photo" : "video");
|
|
11495
11913
|
const { orientation: orientation } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
@@ -11517,7 +11935,7 @@ const $d4d374dc7955cc18$export$5c334f209b1aa661 = ({ assets: assets , state: sta
|
|
|
11517
11935
|
children: /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11518
11936
|
className: (0, $3Sbms$classnames)("fixed justify-center w-screen h-screen top-0 left-0 bg-black z-[1]", state.isOpen ? "flex" : "hidden"),
|
|
11519
11937
|
children: loading && /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11520
|
-
className: (0, $3Sbms$classnames)("flex mt-[50px] h-fit opacity-1", desktop ? "flex-row items-center w-[
|
|
11938
|
+
className: (0, $3Sbms$classnames)("flex mt-[50px] h-fit opacity-1", desktop ? "flex-row items-center w-[450px]" : "flex-col items-center text-center w-[320px]"),
|
|
11521
11939
|
children: [
|
|
11522
11940
|
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11523
11941
|
className: "w-[24px] h-[24px] m-[10px]",
|
|
@@ -11526,10 +11944,10 @@ const $d4d374dc7955cc18$export$5c334f209b1aa661 = ({ assets: assets , state: sta
|
|
|
11526
11944
|
/*#__PURE__*/ (0, $3Sbms$jsxs)("span", {
|
|
11527
11945
|
className: "text-sm text-white",
|
|
11528
11946
|
children: [
|
|
11529
|
-
"
|
|
11530
|
-
|
|
11531
|
-
|
|
11532
|
-
loading === "video"
|
|
11947
|
+
t("recorder.elementBeingProcessed", {
|
|
11948
|
+
type: loading === "picture" ? t("misc.photo").toLocaleLowerCase() : t("misc.video").toLocaleLowerCase()
|
|
11949
|
+
}),
|
|
11950
|
+
loading === "video" && t("recorder.waitVideo")
|
|
11533
11951
|
]
|
|
11534
11952
|
})
|
|
11535
11953
|
]
|
|
@@ -11548,12 +11966,11 @@ const $d4d374dc7955cc18$export$5c334f209b1aa661 = ({ assets: assets , state: sta
|
|
|
11548
11966
|
/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11549
11967
|
className: "flex flex-row justify-between p-[12px]",
|
|
11550
11968
|
children: [
|
|
11551
|
-
/*#__PURE__*/ (0, $3Sbms$
|
|
11969
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("h1", {
|
|
11552
11970
|
className: "text-lg first-letter:capitalize",
|
|
11553
|
-
children:
|
|
11554
|
-
assetKind
|
|
11555
|
-
|
|
11556
|
-
]
|
|
11971
|
+
children: t("recorder.elementCaptureSuccess", {
|
|
11972
|
+
type: t(`misc.${assetKind}`)
|
|
11973
|
+
})
|
|
11557
11974
|
}),
|
|
11558
11975
|
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11559
11976
|
className: "flex justify-center items-center rounded-full bg-[#f3f3f3] h-[30px] w-[30px] cursor-pointer",
|
|
@@ -11572,23 +11989,23 @@ const $d4d374dc7955cc18$export$5c334f209b1aa661 = ({ assets: assets , state: sta
|
|
|
11572
11989
|
index: index,
|
|
11573
11990
|
removeAsset: removeAsset
|
|
11574
11991
|
}, asset.assetId)),
|
|
11575
|
-
/*#__PURE__*/ (0, $3Sbms$
|
|
11992
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
11576
11993
|
variant: "secondary",
|
|
11577
11994
|
onPress: state.close,
|
|
11578
|
-
children:
|
|
11579
|
-
|
|
11580
|
-
|
|
11581
|
-
]
|
|
11995
|
+
children: t("recorder.takeNewElement", {
|
|
11996
|
+
type: t(`misc.${assetKind}`).toLocaleLowerCase()
|
|
11997
|
+
})
|
|
11582
11998
|
}),
|
|
11583
|
-
/*#__PURE__*/ (0, $3Sbms$
|
|
11999
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $0590ee3141e14968$export$353f5b6fc5456de1), {
|
|
11584
12000
|
onPress: ()=>{
|
|
11585
12001
|
onSendAssets();
|
|
11586
12002
|
state.close();
|
|
11587
12003
|
},
|
|
11588
|
-
children:
|
|
11589
|
-
|
|
11590
|
-
|
|
11591
|
-
|
|
12004
|
+
children: assets.length > 1 ? t("recorder.sendElements", {
|
|
12005
|
+
count: assets.length
|
|
12006
|
+
}) : t("recorder.sendElement", {
|
|
12007
|
+
type: t(`misc.${assetKind}`).toLocaleLowerCase()
|
|
12008
|
+
})
|
|
11592
12009
|
})
|
|
11593
12010
|
]
|
|
11594
12011
|
})
|
|
@@ -11636,7 +12053,18 @@ const $92672d57809ea9d3$var$timerText = (delta)=>{
|
|
|
11636
12053
|
].map((n)=>`${n < 10 ? "0" : ""}${n}`);
|
|
11637
12054
|
return d.join(":");
|
|
11638
12055
|
};
|
|
12056
|
+
const $92672d57809ea9d3$var$dateFormat = new Intl.DateTimeFormat("default", {
|
|
12057
|
+
dateStyle: "short"
|
|
12058
|
+
});
|
|
12059
|
+
const $92672d57809ea9d3$var$timeFormat = new Intl.DateTimeFormat("default", {
|
|
12060
|
+
hour: "numeric",
|
|
12061
|
+
minute: "2-digit"
|
|
12062
|
+
});
|
|
12063
|
+
function $92672d57809ea9d3$export$3ae94a2503e890a1(date) {
|
|
12064
|
+
return `${$92672d57809ea9d3$var$dateFormat.format(date)} at ${$92672d57809ea9d3$var$timeFormat.format(date)}`;
|
|
12065
|
+
}
|
|
11639
12066
|
const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
12067
|
+
const { t: t } = (0, $3Sbms$useTranslation)();
|
|
11640
12068
|
const { options: options } = (0, $3Sbms$useContext)((0, $5f30d8bf4f04621e$export$2e2bcd8739ae039));
|
|
11641
12069
|
const [startRecordTime, setStartRecordTime] = (0, $3Sbms$useState)(undefined);
|
|
11642
12070
|
const [timer, setTimer] = (0, $3Sbms$useState)(0);
|
|
@@ -11653,7 +12081,7 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11653
12081
|
const sendAssetsModalState = (0, $3Sbms$useOverlayTriggerState)({});
|
|
11654
12082
|
const [flashAnimation, setFlashAnimation] = (0, $3Sbms$useState)(false);
|
|
11655
12083
|
const menuBarState = (0, $a94f21ef9007b90a$export$bd7b6af6aa16550c)({
|
|
11656
|
-
|
|
12084
|
+
state: options?.recorder?.defaultState || "photo"
|
|
11657
12085
|
});
|
|
11658
12086
|
const exitStreaming = (0, $3Sbms$useCallback)(()=>{
|
|
11659
12087
|
menuBarState.setStreaming(false);
|
|
@@ -11668,6 +12096,10 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11668
12096
|
const { facingMode: newFacingMode } = (0, $c9e496369b59be7a$export$2f377c2162fd02b2).requestLocalVideo(videoElementRef?.current);
|
|
11669
12097
|
setFacingMode(newFacingMode);
|
|
11670
12098
|
};
|
|
12099
|
+
const onScreenshareEnabled = (event)=>{
|
|
12100
|
+
if (!videoElementRef.current) return;
|
|
12101
|
+
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).requestLocalScreenshare(videoElementRef.current);
|
|
12102
|
+
};
|
|
11671
12103
|
const onStopRecord = (0, $3Sbms$useCallback)((event)=>{
|
|
11672
12104
|
const { url: url , assetId: assetId } = event.detail;
|
|
11673
12105
|
exitStreaming();
|
|
@@ -11731,10 +12163,12 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11731
12163
|
]);
|
|
11732
12164
|
(0, $3Sbms$useEffect)(()=>{
|
|
11733
12165
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("localVideoAvailable", onLocalVideoChange);
|
|
12166
|
+
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("screenshareEnabled", onScreenshareEnabled);
|
|
11734
12167
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("localVideoChange", onLocalVideoChange);
|
|
11735
12168
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener("recordStopped", onStopRecord);
|
|
11736
12169
|
return ()=>{
|
|
11737
12170
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("localVideoChange", onLocalVideoChange);
|
|
12171
|
+
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("screenshareEnabled", onScreenshareEnabled);
|
|
11738
12172
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("localVideoAvailable", onLocalVideoChange);
|
|
11739
12173
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener("recordStopped", onStopRecord);
|
|
11740
12174
|
};
|
|
@@ -11742,16 +12176,18 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11742
12176
|
onStopRecord
|
|
11743
12177
|
]);
|
|
11744
12178
|
return /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11745
|
-
className: "bg-[#000] w-full h-full justify-center flex flex-col antialiased inter",
|
|
12179
|
+
className: (0, $3Sbms$classnames)("bg-[#000] w-full h-full justify-center flex flex-col antialiased inter", {
|
|
12180
|
+
"bg-[url('https://cdn.snapcall.io/img/assist/gradient-bg.jpg')] bg-cover": menuBarState.mode === "screen"
|
|
12181
|
+
}),
|
|
11746
12182
|
children: [
|
|
11747
|
-
|
|
12183
|
+
(menuBarState.mode === "video" || menuBarState.mode === "screen" && menuBarState.streaming) && /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11748
12184
|
className: "text-base text-white text-center font-medium pt-2.5",
|
|
11749
12185
|
children: $92672d57809ea9d3$var$timerText(timer)
|
|
11750
12186
|
}),
|
|
11751
12187
|
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11752
|
-
className: "flex-1 min-h-0 p-2.5",
|
|
12188
|
+
className: "flex-1 min-h-0 p-2.5 ",
|
|
11753
12189
|
children: /*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
11754
|
-
className: "relative w-full h-full rounded-[10px]",
|
|
12190
|
+
className: "relative w-full h-full rounded-[10px] ",
|
|
11755
12191
|
children: [
|
|
11756
12192
|
countdownVisible && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $db82628e5503d51b$export$53819c0e58f98d49), {
|
|
11757
12193
|
initialValue: 3,
|
|
@@ -11769,7 +12205,20 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11769
12205
|
assetsPopupState.open();
|
|
11770
12206
|
}
|
|
11771
12207
|
}),
|
|
11772
|
-
/*#__PURE__*/ (0, $3Sbms$jsx)("
|
|
12208
|
+
menuBarState.mode === "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
12209
|
+
className: "object-fit h-full",
|
|
12210
|
+
children: /*#__PURE__*/ (0, $3Sbms$jsx)("video", {
|
|
12211
|
+
autoPlay: true,
|
|
12212
|
+
muted: true,
|
|
12213
|
+
playsInline: true,
|
|
12214
|
+
ref: videoElementRef,
|
|
12215
|
+
className: (0, $3Sbms$classnames)("w-full h-full rounded-[inherit]", {
|
|
12216
|
+
"scale-x-[-1]": facingMode === "user" && menuBarState.mode !== "screen",
|
|
12217
|
+
"max-w-[screen]": menuBarState.mode === "screen"
|
|
12218
|
+
})
|
|
12219
|
+
})
|
|
12220
|
+
}),
|
|
12221
|
+
menuBarState.mode !== "screen" && /*#__PURE__*/ (0, $3Sbms$jsx)("video", {
|
|
11773
12222
|
autoPlay: true,
|
|
11774
12223
|
muted: true,
|
|
11775
12224
|
playsInline: true,
|
|
@@ -11782,7 +12231,7 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11782
12231
|
})
|
|
11783
12232
|
}),
|
|
11784
12233
|
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
11785
|
-
className: "flex justify-center px-2.5 pb-2.5",
|
|
12234
|
+
className: "flex justify-center px-2.5 pb-2.5 z-10",
|
|
11786
12235
|
children: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $a94f21ef9007b90a$export$11a6fe490bbc4873), {
|
|
11787
12236
|
state: menuBarState,
|
|
11788
12237
|
thumbnail: /*#__PURE__*/ (0, $3Sbms$jsx)((0, $c7542aa0d9bb5f39$export$1cd1efc78cb52ca5), {
|
|
@@ -11793,16 +12242,16 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11793
12242
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).rotateVideo();
|
|
11794
12243
|
},
|
|
11795
12244
|
onCapturePress: ()=>{
|
|
11796
|
-
if (menuBarState.photo && videoElementRef.current) {
|
|
12245
|
+
if (menuBarState.mode === "photo" && videoElementRef.current) {
|
|
11797
12246
|
onPhotoCapture(videoElementRef.current);
|
|
11798
12247
|
setFlashAnimation(true);
|
|
11799
12248
|
}
|
|
11800
|
-
if (
|
|
12249
|
+
if (menuBarState.mode !== "photo" && !menuBarState.streaming) {
|
|
11801
12250
|
menuBarState.setStreaming(true);
|
|
11802
12251
|
setTimer(0);
|
|
11803
12252
|
setCountdownVisible(true);
|
|
11804
12253
|
}
|
|
11805
|
-
if (
|
|
12254
|
+
if (menuBarState.mode !== "photo" && menuBarState.streaming) {
|
|
11806
12255
|
exitStreaming();
|
|
11807
12256
|
if (startRecordTime) {
|
|
11808
12257
|
(0, $c9e496369b59be7a$export$2f377c2162fd02b2).stopRecord();
|
|
@@ -11823,14 +12272,41 @@ const $92672d57809ea9d3$export$336a011955157f9a = ()=>{
|
|
|
11823
12272
|
removeAsset: removeAsset,
|
|
11824
12273
|
loading: assetLoading
|
|
11825
12274
|
}),
|
|
11826
|
-
/*#__PURE__*/ (0, $3Sbms$
|
|
11827
|
-
title: "
|
|
12275
|
+
/*#__PURE__*/ (0, $3Sbms$jsxs)((0, $c0bb66c3d546ed81$export$2b77a92f1a5ad772), {
|
|
12276
|
+
title: t("recorder.submissionTitle"),
|
|
11828
12277
|
state: sendAssetsModalState,
|
|
11829
12278
|
isDismissable: false,
|
|
11830
|
-
children:
|
|
11831
|
-
|
|
11832
|
-
|
|
11833
|
-
|
|
12279
|
+
children: [
|
|
12280
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("span", {
|
|
12281
|
+
className: "text-base text-primaryLight",
|
|
12282
|
+
children: t("recorder.submissionDescription")
|
|
12283
|
+
}),
|
|
12284
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)("div", {
|
|
12285
|
+
className: "flex flex-col gap-[20px] border-t border-secondaryVLight pt-[20px]",
|
|
12286
|
+
children: assets.map((asset, index)=>/*#__PURE__*/ (0, $3Sbms$jsxs)("div", {
|
|
12287
|
+
className: "flex flex-row items-center gap-[10px]",
|
|
12288
|
+
children: [
|
|
12289
|
+
/*#__PURE__*/ (0, $3Sbms$jsx)((0, $c7542aa0d9bb5f39$export$1cd1efc78cb52ca5), {
|
|
12290
|
+
asset: asset
|
|
12291
|
+
}),
|
|
12292
|
+
/*#__PURE__*/ (0, $3Sbms$jsxs)("span", {
|
|
12293
|
+
className: "text-sm",
|
|
12294
|
+
style: {
|
|
12295
|
+
hyphens: "manual"
|
|
12296
|
+
},
|
|
12297
|
+
children: [
|
|
12298
|
+
asset.type === "picture" ? "Photo" : "Video",
|
|
12299
|
+
" ",
|
|
12300
|
+
index + 1,
|
|
12301
|
+
" \xb7",
|
|
12302
|
+
" ",
|
|
12303
|
+
$92672d57809ea9d3$export$3ae94a2503e890a1(new Date(asset.timestamp))
|
|
12304
|
+
]
|
|
12305
|
+
})
|
|
12306
|
+
]
|
|
12307
|
+
}))
|
|
12308
|
+
})
|
|
12309
|
+
]
|
|
11834
12310
|
})
|
|
11835
12311
|
]
|
|
11836
12312
|
});
|
|
@@ -12579,7 +13055,7 @@ var $f8d57e3d223f5089$export$2e2bcd8739ae039 = $f8d57e3d223f5089$var$GreetingVie
|
|
|
12579
13055
|
|
|
12580
13056
|
|
|
12581
13057
|
var $1e2747ca72d0ab49$exports = {};
|
|
12582
|
-
$1e2747ca72d0ab49$exports = "*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n.visible {\n visibility: visible;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.inset-0 {\n inset: 0;\n}\n\n.left-0 {\n left: 0;\n}\n\n.top-0 {\n top: 0;\n}\n\n.z-50 {\n z-index: 50;\n}\n\n.z-\\[100\\] {\n z-index: 100;\n}\n\n.z-\\[1\\] {\n z-index: 1;\n}\n\n.m-\\[10px\\] {\n margin: 10px;\n}\n\n.mx-\\[20px\\] {\n margin-left: 20px;\n margin-right: 20px;\n}\n\n.ml-\\[10px\\] {\n margin-left: 10px;\n}\n\n.mt-\\[10px\\] {\n margin-top: 10px;\n}\n\n.mt-\\[50px\\] {\n margin-top: 50px;\n}\n\n.block {\n display: block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.hidden {\n display: none;\n}\n\n.h-full {\n height: 100%;\n}\n\n.h-\\[150px\\] {\n height: 150px;\n}\n\n.h-\\[60px\\] {\n height: 60px;\n}\n\n.h-\\[72px\\] {\n height: 72px;\n}\n\n.h-\\[56px\\] {\n height: 56px;\n}\n\n.h-\\[40px\\] {\n height: 40px;\n}\n\n.h-\\[235px\\] {\n height: 235px;\n}\n\n.h-\\[93px\\] {\n height: 93px;\n}\n\n.h-screen {\n height: 100vh;\n}\n\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n}\n\n.h-\\[24px\\] {\n height: 24px;\n}\n\n.h-\\[30px\\] {\n height: 30px;\n}\n\n.h-1\\/3 {\n height: 33.3333%;\n}\n\n.max-h-\\[inherit\\] {\n max-height: inherit;\n}\n\n.max-h-\\[70px\\] {\n max-height: 70px;\n}\n\n.min-h-0 {\n min-height: 0;\n}\n\n.min-h-\\[100\\%\\] {\n min-height: 100%;\n}\n\n.w-full {\n width: 100%;\n}\n\n.w-\\[60px\\] {\n width: 60px;\n}\n\n.w-\\[72px\\] {\n width: 72px;\n}\n\n.w-\\[56px\\] {\n width: 56px;\n}\n\n.w-\\[76px\\] {\n width: 76px;\n}\n\n.w-screen {\n width: 100vw;\n}\n\n.w-\\[360px\\] {\n width: 360px;\n}\n\n.w-\\[400px\\] {\n width: 400px;\n}\n\n.w-\\[320px\\] {\n width: 320px;\n}\n\n.w-\\[24px\\] {\n width: 24px;\n}\n\n.w-\\[30px\\] {\n width: 30px;\n}\n\n.w-1\\/3 {\n width: 33.3333%;\n}\n\n.min-w-\\[100\\%\\] {\n min-width: 100%;\n}\n\n.min-w-\\[24px\\] {\n min-width: 24px;\n}\n\n.max-w-\\[400px\\] {\n max-width: 400px;\n}\n\n.max-w-\\[600px\\] {\n max-width: 600px;\n}\n\n.max-w-\\[800px\\] {\n max-width: 800px;\n}\n\n.max-w-\\[70px\\] {\n max-width: 70px;\n}\n\n.flex-1 {\n flex: 1;\n}\n\n.flex-auto {\n flex: auto;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.translate-y-2 {\n --tw-translate-y: .5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-\\[200\\%\\] {\n --tw-translate-y: 200%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-full {\n --tw-translate-y: 100%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-\\[0\\.4\\] {\n --tw-scale-x: .4;\n --tw-scale-y: .4;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-x-\\[-1\\] {\n --tw-scale-x: -1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.resize {\n resize: both;\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-wrap {\n flex-wrap: wrap;\n}\n\n.items-end {\n align-items: flex-end;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-end {\n justify-content: flex-end;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.gap-\\[5px\\] {\n gap: 5px;\n}\n\n.gap-2\\.5 {\n gap: .625rem;\n}\n\n.gap-2 {\n gap: .5rem;\n}\n\n.gap-\\[10px\\] {\n gap: 10px;\n}\n\n.gap-5 {\n gap: 1.25rem;\n}\n\n.gap-\\[20px\\] {\n gap: 20px;\n}\n\n.overflow-auto {\n overflow: auto;\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.rounded-lg {\n border-radius: .5rem;\n}\n\n.rounded-md {\n border-radius: .375rem;\n}\n\n.rounded-\\[15px\\] {\n border-radius: 15px;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-\\[5px\\] {\n border-radius: 5px;\n}\n\n.rounded-\\[60px\\] {\n border-radius: 60px;\n}\n\n.rounded-\\[10px\\] {\n border-radius: 10px;\n}\n\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n}\n\n.rounded-\\[8px\\] {\n border-radius: 8px;\n}\n\n.rounded-\\[50\\%\\] {\n border-radius: 50%;\n}\n\n.rounded-t-\\[15px\\] {\n border-top-left-radius: 15px;\n border-top-right-radius: 15px;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-secondaryLight {\n --tw-border-opacity: 1;\n border-color: rgb(179 179 179 / var(--tw-border-opacity));\n}\n\n.border-primaryLight {\n --tw-border-opacity: 1;\n border-color: rgb(86 86 86 / var(--tw-border-opacity));\n}\n\n.bg-primaryLight {\n --tw-bg-opacity: 1;\n background-color: rgb(86 86 86 / var(--tw-bg-opacity));\n}\n\n.bg-primary {\n --tw-bg-opacity: 1;\n background-color: rgb(29 28 32 / var(--tw-bg-opacity));\n}\n\n.bg-graySelected {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 245 / var(--tw-bg-opacity));\n}\n\n.bg-transparent {\n background-color: #0000;\n}\n\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.bg-black\\/\\[\\.6\\] {\n background-color: #0009;\n}\n\n.bg-\\[\\#f12828\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(241 40 40 / var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#565656\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(86 86 86 / var(--tw-bg-opacity));\n}\n\n.bg-black, .bg-\\[\\#000\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#FFFFFF\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.bg-underlay {\n background-color: #00000040;\n}\n\n.bg-\\[\\#f3f3f3\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(243 243 243 / var(--tw-bg-opacity));\n}\n\n.bg-secondaryVLight {\n --tw-bg-opacity: 1;\n background-color: rgb(235 235 235 / var(--tw-bg-opacity));\n}\n\n.bg-opacity-90 {\n --tw-bg-opacity: .9;\n}\n\n.object-cover {\n object-fit: cover;\n}\n\n.p-2\\.5 {\n padding: .625rem;\n}\n\n.p-2 {\n padding: .5rem;\n}\n\n.p-\\[3px\\] {\n padding: 3px;\n}\n\n.p-\\[12px\\] {\n padding: 12px;\n}\n\n.py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.py-\\[9px\\] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n\n.px-3\\.5 {\n padding-left: .875rem;\n padding-right: .875rem;\n}\n\n.px-3 {\n padding-left: .75rem;\n padding-right: .75rem;\n}\n\n.py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n.py-1\\.5 {\n padding-top: .375rem;\n padding-bottom: .375rem;\n}\n\n.px-2\\.5 {\n padding-left: .625rem;\n padding-right: .625rem;\n}\n\n.py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n.px-2 {\n padding-left: .5rem;\n padding-right: .5rem;\n}\n\n.px-\\[10px\\] {\n padding-left: 10px;\n padding-right: 10px;\n}\n\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n.py-\\[25px\\] {\n padding-top: 25px;\n padding-bottom: 25px;\n}\n\n.px-\\[20px\\] {\n padding-left: 20px;\n padding-right: 20px;\n}\n\n.pt-2\\.5 {\n padding-top: .625rem;\n}\n\n.pt-2 {\n padding-top: .5rem;\n}\n\n.pb-2\\.5 {\n padding-bottom: .625rem;\n}\n\n.pb-2 {\n padding-bottom: .5rem;\n}\n\n.pb-\\[25px\\] {\n padding-bottom: 25px;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-base {\n letter-spacing: -.02em;\n font-size: 16px;\n line-height: 19px;\n}\n\n.text-sm {\n letter-spacing: -.02em;\n font-size: 14px;\n line-height: 17px;\n}\n\n.text-xs {\n letter-spacing: -.02em;\n font-size: 12px;\n line-height: 14px;\n}\n\n.text-\\[112px\\] {\n font-size: 112px;\n}\n\n.text-xl {\n letter-spacing: -.02em;\n font-size: 20px;\n line-height: 24px;\n}\n\n.text-lg {\n letter-spacing: -.02em;\n font-size: 18px;\n line-height: 22px;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.font-bold {\n font-weight: 700;\n}\n\n.font-normal {\n font-weight: 400;\n}\n\n.leading-\\[20px\\] {\n line-height: 20px;\n}\n\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.text-primary {\n --tw-text-opacity: 1;\n color: rgb(29 28 32 / var(--tw-text-opacity));\n}\n\n.text-white\\/80 {\n color: #fffc;\n}\n\n.text-secondary {\n --tw-text-opacity: 1;\n color: rgb(134 134 134 / var(--tw-text-opacity));\n}\n\n.text-primaryLight {\n --tw-text-opacity: 1;\n color: rgb(86 86 86 / var(--tw-text-opacity));\n}\n\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.antialiased {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-50 {\n opacity: .5;\n}\n\n.opacity-\\[0\\.4\\] {\n opacity: .4;\n}\n\n.opacity-90 {\n opacity: .9;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.ring-\\[3px\\] {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.ring-cta {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(38 138 250 / var(--tw-ring-opacity));\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.transition-\\[transform\\,border-radius\\] {\n transition-property: transform, border-radius;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.duration-300 {\n transition-duration: .3s;\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.ease-in {\n transition-timing-function: cubic-bezier(.4, 0, 1, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n.inter {\n font-family: Inter, sans-serif;\n}\n\n@supports (font-variation-settings: normal) {\n .inter {\n font-family: Inter var, sans-serif;\n }\n}\n\n.first-letter\\:capitalize:first-letter {\n text-transform: capitalize;\n}\n\n.focus\\:outline-none:focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.disabled\\:bg-secondaryLight:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(179 179 179 / var(--tw-bg-opacity));\n}\n\n.disabled\\:bg-graySelected:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 245 / var(--tw-bg-opacity));\n}\n\n.disabled\\:text-secondaryLight:disabled {\n --tw-text-opacity: 1;\n color: rgb(179 179 179 / var(--tw-text-opacity));\n}\n\n";
|
|
13058
|
+
$1e2747ca72d0ab49$exports = "*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n.visible {\n visibility: visible;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.inset-0 {\n inset: 0;\n}\n\n.left-0 {\n left: 0;\n}\n\n.top-0 {\n top: 0;\n}\n\n.z-\\[100\\] {\n z-index: 100;\n}\n\n.z-50 {\n z-index: 50;\n}\n\n.z-\\[1\\] {\n z-index: 1;\n}\n\n.z-10 {\n z-index: 10;\n}\n\n.m-\\[10px\\] {\n margin: 10px;\n}\n\n.mx-\\[20px\\] {\n margin-left: 20px;\n margin-right: 20px;\n}\n\n.ml-\\[10px\\] {\n margin-left: 10px;\n}\n\n.mt-\\[10px\\] {\n margin-top: 10px;\n}\n\n.mt-\\[50px\\] {\n margin-top: 50px;\n}\n\n.block {\n display: block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.hidden {\n display: none;\n}\n\n.h-screen {\n height: 100vh;\n}\n\n.h-full {\n height: 100%;\n}\n\n.h-\\[150px\\] {\n height: 150px;\n}\n\n.h-\\[60px\\] {\n height: 60px;\n}\n\n.h-\\[56px\\] {\n height: 56px;\n}\n\n.h-\\[40px\\] {\n height: 40px;\n}\n\n.h-\\[72px\\] {\n height: 72px;\n}\n\n.h-\\[235px\\] {\n height: 235px;\n}\n\n.h-\\[93px\\] {\n height: 93px;\n}\n\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n}\n\n.h-\\[24px\\] {\n height: 24px;\n}\n\n.h-\\[30px\\] {\n height: 30px;\n}\n\n.h-1\\/3 {\n height: 33.3333%;\n}\n\n.max-h-\\[inherit\\] {\n max-height: inherit;\n}\n\n.max-h-\\[70px\\] {\n max-height: 70px;\n}\n\n.min-h-0 {\n min-height: 0;\n}\n\n.min-h-\\[100\\%\\] {\n min-height: 100%;\n}\n\n.w-screen {\n width: 100vw;\n}\n\n.w-full {\n width: 100%;\n}\n\n.w-1\\/3 {\n width: 33.3333%;\n}\n\n.w-\\[60px\\] {\n width: 60px;\n}\n\n.w-\\[56px\\] {\n width: 56px;\n}\n\n.w-\\[72px\\] {\n width: 72px;\n}\n\n.w-\\[76px\\] {\n width: 76px;\n}\n\n.w-\\[360px\\] {\n width: 360px;\n}\n\n.w-\\[450px\\] {\n width: 450px;\n}\n\n.w-\\[320px\\] {\n width: 320px;\n}\n\n.w-\\[24px\\] {\n width: 24px;\n}\n\n.w-\\[30px\\] {\n width: 30px;\n}\n\n.min-w-full, .min-w-\\[100\\%\\] {\n min-width: 100%;\n}\n\n.min-w-\\[24px\\] {\n min-width: 24px;\n}\n\n.max-w-\\[400px\\] {\n max-width: 400px;\n}\n\n.max-w-\\[135px\\] {\n max-width: 135px;\n}\n\n.max-w-\\[500px\\] {\n max-width: 500px;\n}\n\n.max-w-\\[600px\\] {\n max-width: 600px;\n}\n\n.max-w-\\[800px\\] {\n max-width: 800px;\n}\n\n.max-w-\\[screen\\] {\n max-width: screen;\n}\n\n.max-w-\\[70px\\] {\n max-width: 70px;\n}\n\n.flex-1 {\n flex: 1;\n}\n\n.flex-auto {\n flex: auto;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.translate-y-2 {\n --tw-translate-y: .5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-\\[200\\%\\] {\n --tw-translate-y: 200%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-full {\n --tw-translate-y: 100%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-\\[0\\.4\\] {\n --tw-scale-x: .4;\n --tw-scale-y: .4;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-x-\\[-1\\] {\n --tw-scale-x: -1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.resize {\n resize: both;\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-wrap {\n flex-wrap: wrap;\n}\n\n.items-end {\n align-items: flex-end;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-end {\n justify-content: flex-end;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.gap-\\[10px\\] {\n gap: 10px;\n}\n\n.gap-\\[5px\\] {\n gap: 5px;\n}\n\n.gap-2\\.5 {\n gap: .625rem;\n}\n\n.gap-2 {\n gap: .5rem;\n}\n\n.gap-5 {\n gap: 1.25rem;\n}\n\n.gap-\\[20px\\] {\n gap: 20px;\n}\n\n.overflow-auto {\n overflow: auto;\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-x-auto {\n overflow-x: auto;\n}\n\n.rounded-\\[10px\\] {\n border-radius: 10px;\n}\n\n.rounded-lg {\n border-radius: .5rem;\n}\n\n.rounded-md {\n border-radius: .375rem;\n}\n\n.rounded-\\[15px\\] {\n border-radius: 15px;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-\\[5px\\] {\n border-radius: 5px;\n}\n\n.rounded-\\[60px\\] {\n border-radius: 60px;\n}\n\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n}\n\n.rounded-\\[8px\\] {\n border-radius: 8px;\n}\n\n.rounded-\\[50\\%\\] {\n border-radius: 50%;\n}\n\n.rounded-t-\\[15px\\] {\n border-top-left-radius: 15px;\n border-top-right-radius: 15px;\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-2 {\n border-width: 2px;\n}\n\n.border-t {\n border-top-width: 1px;\n}\n\n.border-secondaryLight {\n --tw-border-opacity: 1;\n border-color: rgb(179 179 179 / var(--tw-border-opacity));\n}\n\n.border-white {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.border-secondaryVLight {\n --tw-border-opacity: 1;\n border-color: rgb(235 235 235 / var(--tw-border-opacity));\n}\n\n.border-primaryLight {\n --tw-border-opacity: 1;\n border-color: rgb(86 86 86 / var(--tw-border-opacity));\n}\n\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n\n.bg-primaryLight {\n --tw-bg-opacity: 1;\n background-color: rgb(86 86 86 / var(--tw-bg-opacity));\n}\n\n.bg-primary {\n --tw-bg-opacity: 1;\n background-color: rgb(29 28 32 / var(--tw-bg-opacity));\n}\n\n.bg-graySelected {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 245 / var(--tw-bg-opacity));\n}\n\n.bg-transparent {\n background-color: #0000;\n}\n\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.bg-tertiarySelected {\n --tw-bg-opacity: 1;\n background-color: rgb(216 216 216 / var(--tw-bg-opacity));\n}\n\n.bg-tertiary {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 245 / var(--tw-bg-opacity));\n}\n\n.bg-black\\/\\[\\.6\\] {\n background-color: #0009;\n}\n\n.bg-\\[\\#565656\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(86 86 86 / var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#f12828\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(241 40 40 / var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#000\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n\n.bg-\\[\\#FFFFFF\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.bg-underlay {\n background-color: #00000040;\n}\n\n.bg-\\[\\#f3f3f3\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(243 243 243 / var(--tw-bg-opacity));\n}\n\n.bg-secondaryVLight {\n --tw-bg-opacity: 1;\n background-color: rgb(235 235 235 / var(--tw-bg-opacity));\n}\n\n.bg-opacity-90 {\n --tw-bg-opacity: .9;\n}\n\n.bg-\\[url\\(\\'https\\:\\/\\/cdn\\.snapcall\\.io\\/img\\/assist\\/gradient-bg\\.jpg\\'\\)\\] {\n background-image: url(\"https://cdn.snapcall.io/img/assist/gradient-bg.jpg\");\n}\n\n.bg-cover {\n background-size: cover;\n}\n\n.object-cover {\n object-fit: cover;\n}\n\n.object-fill {\n object-fit: fill;\n}\n\n.p-\\[15px\\] {\n padding: 15px;\n}\n\n.p-2\\.5 {\n padding: .625rem;\n}\n\n.p-2 {\n padding: .5rem;\n}\n\n.p-\\[10px\\] {\n padding: 10px;\n}\n\n.p-\\[3px\\] {\n padding: 3px;\n}\n\n.p-\\[12px\\] {\n padding: 12px;\n}\n\n.py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.py-\\[9px\\] {\n padding-top: 9px;\n padding-bottom: 9px;\n}\n\n.px-3\\.5 {\n padding-left: .875rem;\n padding-right: .875rem;\n}\n\n.px-3 {\n padding-left: .75rem;\n padding-right: .75rem;\n}\n\n.py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n.py-1\\.5 {\n padding-top: .375rem;\n padding-bottom: .375rem;\n}\n\n.px-2\\.5 {\n padding-left: .625rem;\n padding-right: .625rem;\n}\n\n.py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n.px-2 {\n padding-left: .5rem;\n padding-right: .5rem;\n}\n\n.px-\\[10px\\] {\n padding-left: 10px;\n padding-right: 10px;\n}\n\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n.py-\\[25px\\] {\n padding-top: 25px;\n padding-bottom: 25px;\n}\n\n.px-\\[20px\\] {\n padding-left: 20px;\n padding-right: 20px;\n}\n\n.pt-2\\.5 {\n padding-top: .625rem;\n}\n\n.pt-2 {\n padding-top: .5rem;\n}\n\n.pb-2\\.5 {\n padding-bottom: .625rem;\n}\n\n.pb-2 {\n padding-bottom: .5rem;\n}\n\n.pt-\\[20px\\] {\n padding-top: 20px;\n}\n\n.pb-\\[25px\\] {\n padding-bottom: 25px;\n}\n\n.text-center {\n text-align: center;\n}\n\n.align-middle {\n vertical-align: middle;\n}\n\n.text-base {\n letter-spacing: -.02em;\n font-size: 16px;\n line-height: 19px;\n}\n\n.text-sm {\n letter-spacing: -.02em;\n font-size: 14px;\n line-height: 17px;\n}\n\n.text-xs {\n letter-spacing: -.02em;\n font-size: 12px;\n line-height: 14px;\n}\n\n.text-\\[112px\\] {\n font-size: 112px;\n}\n\n.text-xl {\n letter-spacing: -.02em;\n font-size: 20px;\n line-height: 24px;\n}\n\n.text-lg {\n letter-spacing: -.02em;\n font-size: 18px;\n line-height: 22px;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.font-semibold {\n font-weight: 600;\n}\n\n.font-bold {\n font-weight: 700;\n}\n\n.font-normal {\n font-weight: 400;\n}\n\n.leading-\\[20px\\] {\n line-height: 20px;\n}\n\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.text-primary {\n --tw-text-opacity: 1;\n color: rgb(29 28 32 / var(--tw-text-opacity));\n}\n\n.text-mainBlue {\n --tw-text-opacity: 1;\n color: rgb(0 106 255 / var(--tw-text-opacity));\n}\n\n.text-white\\/80 {\n color: #fffc;\n}\n\n.text-secondary {\n --tw-text-opacity: 1;\n color: rgb(134 134 134 / var(--tw-text-opacity));\n}\n\n.text-primaryLight {\n --tw-text-opacity: 1;\n color: rgb(86 86 86 / var(--tw-text-opacity));\n}\n\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.antialiased {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-50 {\n opacity: .5;\n}\n\n.opacity-\\[0\\.4\\] {\n opacity: .4;\n}\n\n.opacity-90 {\n opacity: .9;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.ring-\\[3px\\] {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.ring-cta {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(38 138 250 / var(--tw-ring-opacity));\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.transition-\\[transform\\,border-radius\\] {\n transition-property: transform, border-radius;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.duration-300 {\n transition-duration: .3s;\n}\n\n.ease-in {\n transition-timing-function: cubic-bezier(.4, 0, 1, 1);\n}\n\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, .2, 1);\n}\n\n.ease-in-out {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.inter {\n font-family: Inter, sans-serif;\n}\n\n@supports (font-variation-settings: normal) {\n .inter {\n font-family: Inter var, sans-serif;\n }\n}\n\n.first-letter\\:capitalize:first-letter {\n text-transform: capitalize;\n}\n\n.focus\\:outline-none:focus {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.disabled\\:bg-secondaryLight:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(179 179 179 / var(--tw-bg-opacity));\n}\n\n.disabled\\:bg-graySelected:disabled {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 245 / var(--tw-bg-opacity));\n}\n\n.disabled\\:text-secondaryLight:disabled {\n --tw-text-opacity: 1;\n color: rgb(179 179 179 / var(--tw-text-opacity));\n}\n\n.disabled\\:opacity-50:disabled {\n opacity: .5;\n}\n\n";
|
|
12583
13059
|
|
|
12584
13060
|
|
|
12585
13061
|
var $e02c50a47b475960$exports = {};
|
|
@@ -12652,12 +13128,14 @@ const $24075a5d702d64b3$export$3f94917203ab7078 = {
|
|
|
12652
13128
|
]
|
|
12653
13129
|
}));
|
|
12654
13130
|
if (mergedOptions.tracking) (0, $3Sbms$hotjarbrowser).init(3111933, 6);
|
|
13131
|
+
(0, $35b37252690084e8$export$1cbfb36c1655a9a)(rootElement, element);
|
|
12655
13132
|
},
|
|
12656
13133
|
initGreeting: (element, onGreetingDone)=>{
|
|
12657
13134
|
const rootElement = (0, $3Sbms$createRoot)(element);
|
|
12658
13135
|
rootElement.render(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $f8d57e3d223f5089$export$2e2bcd8739ae039), {
|
|
12659
13136
|
onGreetingDone: onGreetingDone
|
|
12660
13137
|
}));
|
|
13138
|
+
(0, $35b37252690084e8$export$1cbfb36c1655a9a)(rootElement, element);
|
|
12661
13139
|
},
|
|
12662
13140
|
setExtraSettingsOptions: (extraOptions)=>{
|
|
12663
13141
|
const event = new CustomEvent("streamUISetExtraSettingsOptions", {
|