@vidtreo/recorder-react 1.0.5 → 1.0.6
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/index.d.ts +26 -1
- package/dist/index.js +1 -1
- package/dist/recorder-react.css +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -30,10 +30,28 @@ type TranslationKeys = {
|
|
|
30
30
|
errorTitle: string;
|
|
31
31
|
errorApiKeyRequired: string;
|
|
32
32
|
errorGeneric: string;
|
|
33
|
+
mobileOpenCamera: string;
|
|
34
|
+
mobileOpenCameraTitle: string;
|
|
35
|
+
mobileOpenCameraDescription: string;
|
|
36
|
+
mobileCloseCamera: string;
|
|
37
|
+
mobilePermissionDenied: string;
|
|
38
|
+
mobilePermissionDeniedDescription: string;
|
|
33
39
|
};
|
|
34
40
|
type PartialTranslations = Partial<TranslationKeys>;
|
|
35
41
|
//#endregion
|
|
36
42
|
//#region src/types/index.d.ts
|
|
43
|
+
/**
|
|
44
|
+
* Mobile recording mode options
|
|
45
|
+
* - "embed": Web-based recorder embedded directly in the page (same as desktop)
|
|
46
|
+
* - "overlay": Fullscreen modal with web-based recorder and all SDK controls
|
|
47
|
+
* - "native": Opens device's native camera (file input) - bypasses SDK controls
|
|
48
|
+
*
|
|
49
|
+
* Note: "embed" and "overlay" require modern browser APIs. On unsupported browsers
|
|
50
|
+
* (e.g., iOS Safari), these modes automatically fall back to "native".
|
|
51
|
+
*
|
|
52
|
+
* @deprecated values: "webOverlay" (use "overlay"), "auto" (use "overlay")
|
|
53
|
+
*/
|
|
54
|
+
type MobileMode = "embed" | "overlay" | "native" | "webOverlay" | "auto";
|
|
37
55
|
type BaseRecorderProps = {
|
|
38
56
|
backendUrl?: string;
|
|
39
57
|
countdownDuration?: number;
|
|
@@ -47,7 +65,10 @@ type BaseRecorderProps = {
|
|
|
47
65
|
enableTabVisibilityOverlay?: boolean;
|
|
48
66
|
lang?: string;
|
|
49
67
|
texts?: PartialTranslations;
|
|
68
|
+
/** @deprecated Use mobileMode instead */
|
|
50
69
|
nativeCamera?: boolean;
|
|
70
|
+
/** Controls mobile recording experience. Default: "overlay" */
|
|
71
|
+
mobileMode?: MobileMode;
|
|
51
72
|
onUploadComplete?: (result: {
|
|
52
73
|
recordingId: string;
|
|
53
74
|
uploadUrl: string;
|
|
@@ -82,7 +103,10 @@ type UseVidtreoRecorderConfig = {
|
|
|
82
103
|
enableTabVisibilityOverlay?: boolean;
|
|
83
104
|
proxyEndpoint?: string;
|
|
84
105
|
demo?: boolean;
|
|
106
|
+
/** @deprecated Use mobileMode instead */
|
|
85
107
|
nativeCamera?: boolean;
|
|
108
|
+
/** Controls mobile recording experience. Default: "overlay" */
|
|
109
|
+
mobileMode?: MobileMode;
|
|
86
110
|
lang?: string;
|
|
87
111
|
texts?: PartialTranslations;
|
|
88
112
|
onUploadComplete?: (result: {
|
|
@@ -126,6 +150,7 @@ type VidtreoRecorderActions = {
|
|
|
126
150
|
changeCamera: (deviceId: string) => Promise<void>;
|
|
127
151
|
changeMic: (deviceId: string) => Promise<void>;
|
|
128
152
|
startPreview: (sourceType?: SourceType$1) => Promise<void>;
|
|
153
|
+
stopPreview: () => void;
|
|
129
154
|
downloadVideo: () => void;
|
|
130
155
|
cleanup: () => void;
|
|
131
156
|
};
|
|
@@ -142,4 +167,4 @@ declare function VidtreoRecorder(props: VidtreoRecorderProps): React.JSX.Element
|
|
|
142
167
|
//#region src/hooks/use-vidtreo-recorder.d.ts
|
|
143
168
|
declare function useVidtreoRecorder(config: UseVidtreoRecorderConfig): UseVidtreoRecorderReturn;
|
|
144
169
|
//#endregion
|
|
145
|
-
export { type PartialTranslations, type RecordingState, type RecordingStopResult, type SourceType, type TranslationKeys, UseVidtreoRecorderConfig, UseVidtreoRecorderReturn, VidtreoRecorder, VidtreoRecorder as VidtreoRecorderSSR, VidtreoRecorderActions, VidtreoRecorderProps, VidtreoRecorderState, useVidtreoRecorder };
|
|
170
|
+
export { MobileMode, type PartialTranslations, type RecordingState, type RecordingStopResult, type SourceType, type TranslationKeys, UseVidtreoRecorderConfig, UseVidtreoRecorderReturn, VidtreoRecorder, VidtreoRecorder as VidtreoRecorderSSR, VidtreoRecorderActions, VidtreoRecorderProps, VidtreoRecorderState, useVidtreoRecorder };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(){if(typeof document!=='undefined'){const style=document.createElement('style');style.textContent=`:root{--vidtreo-background:0 0% 100%;--vidtreo-foreground:0 0% 3.9%;--vidtreo-card:0 0% 100%;--vidtreo-card-foreground:0 0% 3.9%;--vidtreo-primary:0 0% 9%;--vidtreo-primary-foreground:0 0% 98%;--vidtreo-secondary:0 0% 96.1%;--vidtreo-secondary-foreground:0 0% 9%;--vidtreo-muted:0 0% 96.1%;--vidtreo-muted-foreground:0 0% 45.1%;--vidtreo-accent:0 0% 96.1%;--vidtreo-accent-foreground:0 0% 9%;--vidtreo-destructive:0 84.2% 60.2%;--vidtreo-destructive-foreground:0 0% 98%;--vidtreo-border:0 0% 89.8%;--vidtreo-input:0 0% 89.8%;--vidtreo-ring:0 0% 3.9%;--vidtreo-radius:0.5rem;--vidtreo-preview-bg:0 0% 0%}.vidtreo-preview-container{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}.vidtreo-preview-container::before{display:none}@media (min-width:768px){.vidtreo-preview-container{aspect-ratio:16 / 9}}.vidtreo-camera-area{width:100%;height:100%;display:none;position:relative;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden;isolation:isolate;will-change:auto}.vidtreo-source-transition-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.7);display:none;align-items:center;justify-content:center;flex-direction:column;border-radius:0;z-index:100;backdrop-filter:blur(4px);transition:opacity 0.3s ease;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:opacity}.vidtreo-source-transition-overlay.vidtreo-active{display:flex;animation:vidtreo-fadeIn 0.2s ease}@keyframes vidtreo-fadeIn{from{opacity:0}to{opacity:1}}.vidtreo-transition-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#667eea;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite;margin-bottom:12px}@keyframes vidtreo-spin{to{transform:rotate(360deg)}}.vidtreo-transition-message{color:white;font-size:14px;font-weight:500;text-align:center}.vidtreo-camera-area.vidtreo-active{display:block}.vidtreo-preview-skeleton{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;border-radius:0;z-index:10;gap:1rem;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#ffffff;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite}.vidtreo-skeleton-text{color:#ffffff;font-size:0.875rem;font-weight:500}.vidtreo-video-preview{width:100%;height:100%;border-radius:0;background:#000;display:block;object-fit:contain;transition:opacity 0.3s ease,transform 0.3s ease;position:absolute;inset:0;transform:translateZ(0);will-change:auto;backface-visibility:hidden}.vidtreo-video-preview-skeleton{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:#000;overflow:hidden;z-index:2;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-shimmer{position:absolute;inset:0;background:linear-gradient( 90deg,hsl(var(--vidtreo-muted)) 0%,hsl(var(--vidtreo-muted) / 0.5) 50%,hsl(var(--vidtreo-muted)) 100% );background-size:200% 100%;animation:vidtreo-shimmer 1.5s ease-in-out infinite}@keyframes vidtreo-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.vidtreo-video-preview-skeleton.vidtreo-hidden{opacity:0;pointer-events:none;transition:opacity 0.3s ease}.vidtreo-video-preview.vidtreo-screen-share{object-fit:cover}.vidtreo-video-preview.vidtreo-transitioning{opacity:0.5;transform:scale(0.98)}.vidtreo-countdown-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.95);display:none;align-items:center;justify-content:center;border-radius:0;z-index:20;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-countdown-overlay.vidtreo-active{display:flex}.vidtreo-countdown-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.vidtreo-countdown-number{font-size:9rem;font-weight:bold;color:#ffffff;animation:vidtreo-zoomIn 0.3s ease}@keyframes vidtreo-zoomIn{from{transform:scale(0.5);opacity:0}to{transform:scale(1);opacity:1}}.vidtreo-countdown-text{font-size:0.875rem;color:#ffffff;margin-top:1rem;font-weight:500}.vidtreo-settings-panel{position:absolute;bottom:4rem;left:50%;margin-left:-47%;background:rgba(0,0,0,0.4);border:none;border-radius:0.75rem;padding:0.625rem;display:none;flex-direction:column;z-index:200;width:90%;overflow:hidden;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-panel.vidtreo-active{display:flex}.vidtreo-settings-content{width:100%;display:flex;flex-direction:column;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-content.vidtreo-slide-right{animation:vidtreo-slideRight 0.3s ease}.vidtreo-settings-content.vidtreo-slide-left{animation:vidtreo-slideLeft 0.3s ease}.vidtreo-settings-content.vidtreo-slide-none{animation:none;will-change:auto}@keyframes vidtreo-slideIn{from{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vidtreo-slideRight{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes vidtreo-slideLeft{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.vidtreo-settings-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;background:none;border:none;color:#ffffff;cursor:pointer;padding:0;width:100%;text-align:left}.vidtreo-settings-back-icon{flex-shrink:0;color:#ffffff}.vidtreo-settings-title{font-size:0.875rem;font-weight:600;margin:0;color:#ffffff}.vidtreo-device-options-container{display:flex;flex-direction:column;gap:0.375rem}.vidtreo-device-option-nav{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;width:100%;gap:1rem;border-radius:0.5rem}.vidtreo-device-option-nav:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-nav-content{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}.vidtreo-device-option-nav-label{font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-device-option-nav-value{display:flex;align-items:center;gap:0.5rem;flex:1;justify-content:flex-end;min-width:0}.vidtreo-device-option-nav-value-text{font-size:0.875rem;color:rgba(255,255,255,0.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}.vidtreo-device-option-nav-chevron{font-size:1.25rem;color:#ffffff;line-height:1}.vidtreo-device-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.vidtreo-device-list::-webkit-scrollbar{width:4px}.vidtreo-device-list::-webkit-scrollbar-track{background:transparent}.vidtreo-device-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:2px}.vidtreo-device-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.3)}.vidtreo-device-option{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;text-align:left;width:100%;gap:0.75rem;border-radius:0.5rem}.vidtreo-device-option:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-check-container{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vidtreo-device-checkmark-placeholder{width:20px;height:20px;flex-shrink:0}.vidtreo-device-checkmark{color:#ffffff;flex-shrink:0}.vidtreo-device-option-label{font-size:0.875rem;color:#ffffff;flex:1}.vidtreo-device-empty{padding:1rem 0;font-size:0.875rem;color:rgba(255,255,255,0.6);text-align:center}.vidtreo-audio-level-bars{position:absolute;bottom:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.125rem;height:1rem;z-index:10;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}@media (min-width:768px){.vidtreo-audio-level-bars{height:1.25rem}}.vidtreo-audio-level-bar{width:0.125rem;border-radius:9999px;background:rgba(255,255,255,0.5);transition:all 0.1s ease;align-self:flex-end}.vidtreo-recording-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%) translateZ(0);z-index:10;contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-controls-row{display:flex;align-items:center;justify-content:center;gap:0.5rem;transform:translateZ(0);will-change:auto}.vidtreo-recording-timer-row{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.vidtreo-recording-timer-badge{position:absolute;top:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);z-index:10;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-dot-small{width:0.375rem;height:0.375rem;background:hsl(var(--vidtreo-destructive));border-radius:50%;animation:vidtreo-pulse 1.5s ease-in-out infinite}.vidtreo-recording-timer-text{font-size:0.75rem;font-family:monospace;font-weight:500;color:#ffffff}.vidtreo-control-buttons-row{display:flex;align-items:center;justify-content:center;gap:0.375rem;height:auto;min-height:2rem;transform:translateZ(0);will-change:auto}@media (min-width:768px){.vidtreo-control-buttons-row{min-height:2.25rem}}.vidtreo-control-button{width:2rem;height:2rem;min-height:2rem;max-height:2rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.2s ease;color:#ffffff;padding:0.25rem;margin:0;flex-shrink:0;box-sizing:border-box;vertical-align:top;position:relative;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-control-button::before{content:"";position:absolute;inset:0.25rem;border-radius:9999px;transition:background-color 0.2s ease;z-index:0}.vidtreo-control-button svg{width:22px !important;height:22px !important;color:inherit;flex-shrink:0;position:relative;z-index:1}@media (min-width:768px){.vidtreo-control-button svg{width:24px !important;height:24px !important}}@media (min-width:768px){.vidtreo-control-button{width:2.25rem;height:2.25rem;min-height:2.25rem;max-height:2.25rem}}.vidtreo-control-button:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-control-button:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-control-button.vidtreo-muted::before{background:rgba(0,0,0,0.3)}.vidtreo-control-button.vidtreo-muted:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-record-button{height:2rem;min-height:2rem;max-height:2rem;padding:0 0.75rem;border-radius:9999px;font-weight:500;font-size:0.75rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;display:inline-flex;align-items:center;justify-content:center;gap:0.375rem;transition:background-color 0.2s ease,filter 0.2s ease;width:auto;margin:0;line-height:1;flex-shrink:0;box-sizing:border-box;vertical-align:top;cursor:pointer}@media (min-width:768px){.vidtreo-record-button{height:2.25rem;min-height:2.25rem;max-height:2.25rem;font-size:0.875rem}}.vidtreo-record-button:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-rec-indicator-top{position:absolute;top:0.75rem;left:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-rec-indicator-top span{font-size:0.75rem;font-weight:500;color:#ffffff}.vidtreo-start-camera-area{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;border-radius:0;padding:40px;text-align:center;background:#000;transition:all 0.3s ease;cursor:pointer;z-index:1;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-start-camera-area:hover:not(.vidtreo-loading){background:#000}.vidtreo-start-camera-area.vidtreo-loading{cursor:wait;opacity:0.7}.vidtreo-start-camera-area.vidtreo-loading .vidtreo-camera-text{color:#ffffff;opacity:0.7}.vidtreo-camera-icon{font-size:48px;margin-bottom:16px;display:flex;justify-content:center;color:#ffffff}.vidtreo-camera-text{color:#ffffff;font-weight:600;margin-bottom:8px}.vidtreo-camera-hint{color:#ffffff;font-size:12px;opacity:0.8}@keyframes vidtreo-pulse{0%,100%{opacity:1}50%{opacity:0.3}}.vidtreo-progress{margin-top:20px;display:none}.vidtreo-progress.vidtreo-active{display:block}.vidtreo-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.vidtreo-progress-fill{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);width:0%;transition:width 0.3s ease}.vidtreo-progress-text{text-align:center;color:#ffffff;font-size:14px}.vidtreo-error{position:absolute;top:0.75rem;left:50%;transform:translateX(-50%);padding:1rem 1.25rem;background:#dc2626;border:none;border-radius:0.5rem;color:#ffffff;font-size:0.875rem;font-weight:500;text-align:center;z-index:100;display:none;box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);max-width:90%;word-wrap:break-word}.vidtreo-error.vidtreo-active{display:block;animation:vidtreo-error-fade-in-slide-down 0.3s ease-out}@keyframes vidtreo-error-fade-in-slide-down{from{opacity:0;transform:translateX(-50%) translateY(-1rem)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.vidtreo-upload-progress{margin-top:20px;display:none}.vidtreo-upload-progress.vidtreo-active{display:block}.vidtreo-preview-container .vidtreo-upload-progress{margin-top:0}.vidtreo-upload-status{margin-top:20px;padding:16px;border-radius:8px;display:none}.vidtreo-upload-status.vidtreo-active{display:block}.vidtreo-upload-status.vidtreo-success{background:#f0f9ff;border:2px solid #48bb78;color:#22543d}.vidtreo-upload-status.vidtreo-error{background:#fee;border:2px solid #fcc;color:#c33}.vidtreo-upload-status-text{font-size:14px;font-weight:500}.vidtreo-preview-error{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}@media (min-width:768px){.vidtreo-preview-error{aspect-ratio:16 / 9}}.vidtreo-error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:#ffffff;max-width:400px}.vidtreo-error-icon{font-size:3rem;line-height:1}.vidtreo-error-title{font-size:1.25rem;font-weight:600;line-height:1.2}.vidtreo-error-message{font-size:0.875rem;line-height:1.5;opacity:0.9;word-break:break-word}.vidtreo-error-config{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.2);width:100%;text-align:left}.vidtreo-error-config-title{font-size:0.875rem;font-weight:600;margin-bottom:0.75rem;color:#ffffff}.vidtreo-error-config-item{font-size:0.8125rem;line-height:1.6;margin-bottom:0.5rem;color:rgba(255,255,255,0.85)}.vidtreo-error-config-item code{background:rgba(255,255,255,0.15);padding:0.125rem 0.375rem;border-radius:0.25rem;font-family:monospace;font-size:0.75rem;color:#ffffff}.vidtreo-error-retry{margin-top:0.5rem;padding:0.5rem 1rem;border-radius:0.375rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;font-size:0.875rem;font-weight:500;cursor:pointer;transition:filter 0.2s ease}.vidtreo-error-retry:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-error-retry:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-error-overlay{position:absolute;inset:0;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;z-index:100}.vidtreo-native-camera-container{position:relative;width:100%;aspect-ratio:9 / 16;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}@media (min-width:768px){.vidtreo-native-camera-container{aspect-ratio:16 / 9}}.vidtreo-native-camera-container:has(.vidtreo-native-camera-preview-container){background:transparent}.vidtreo-config-loading-indicator{position:absolute;top:8px;right:8px;z-index:10}.vidtreo-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:spin 0.6s linear infinite}.vidtreo-native-camera-empty-state{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px}.vidtreo-native-camera-buttons{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.vidtreo-native-camera-process-button,.vidtreo-native-camera-download-button{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:30}.vidtreo-native-camera-process-button .vidtreo-btn,.vidtreo-native-camera-download-button .vidtreo-btn{min-width:200px}.vidtreo-btn{padding:12px 24px;border-radius:var(--vidtreo-radius);font-size:1rem;font-weight:500;cursor:pointer;border:none;transition:all 0.2s}.vidtreo-btn:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-btn-primary{background:hsl(var(--vidtreo-primary));color:hsl(var(--vidtreo-primary-foreground))}.vidtreo-btn-primary:hover:not(:disabled){filter:brightness(0.9)}.vidtreo-btn-secondary{background:hsl(var(--vidtreo-secondary));color:hsl(var(--vidtreo-secondary-foreground));border:1px solid hsl(var(--vidtreo-border))}.vidtreo-btn-secondary:hover:not(:disabled){background:hsl(var(--vidtreo-accent))}.vidtreo-transcoding-progress{width:100%;max-width:400px;padding:16px}.vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-fill{height:100%;background:hsl(var(--vidtreo-primary));transition:width 0.3s ease}.vidtreo-progress-text{margin-top:8px;text-align:center;font-size:0.875rem;color:hsl(var(--vidtreo-foreground))}.vidtreo-native-camera-preview-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.vidtreo-native-camera-preview-image{width:100%;height:100%;object-fit:contain;display:block}.vidtreo-progress-overlay{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);z-index:20;pointer-events:none}.vidtreo-progress-overlay .vidtreo-transcoding-progress,.vidtreo-progress-overlay .vidtreo-upload-progress{position:relative;width:90%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;background:transparent;pointer-events:auto}.vidtreo-progress-overlay .vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-indeterminate{width:100%;background:linear-gradient( 90deg,transparent 0%,#ffffff 50%,transparent 100% );background-size:200% 100%;animation:vidtreo-progress-indeterminate 1.5s ease-in-out infinite}@keyframes vidtreo-progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}`;document.head.appendChild(style);}})();import*as e from"react";import{Component as t,createContext as n,useCallback as r,useEffect as i,useMemo as a,useRef as o,useState as s}from"react";import{ConfigService as c,DEFAULT_TRANSCODE_CONFIG as l,NativeCameraHandler as u,RecorderController as d,VideoUploadService as f,calculateBarColor as p,extractErrorMessage as m,extractVideoDuration as h,getDefaultConfigForFormat as g,isMobileDevice as _,transcodeVideoForNativeCamera as v}from"@vidtreo/recorder";import{Fragment as y,jsx as b,jsxs as x}from"react/jsx-runtime";const S=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,52H182.42L170,33.34A12,12,0,0,0,160,28H96a12,12,0,0,0-10,5.34L73.57,52H48A28,28,0,0,0,20,80V192a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V80A28,28,0,0,0,208,52Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V80a4,4,0,0,1,4-4H80a12,12,0,0,0,10-5.34L102.42,52h51.15L166,70.66A12,12,0,0,0,176,76h32a4,4,0,0,1,4,4ZM128,84a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,84Zm0,72a24,24,0,1,1,24-24A24,24,0,0,1,128,156Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,64H176L160,40H96L80,64H48A16,16,0,0,0,32,80V192a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V80A16,16,0,0,0,208,64ZM128,168a36,36,0,1,1,36-36A36,36,0,0,1,128,168Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm-44,76a36,36,0,1,1-36-36A36,36,0,0,1,164,132Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,58H179.21L165,36.67A6,6,0,0,0,160,34H96a6,6,0,0,0-5,2.67L76.78,58H48A22,22,0,0,0,26,80V192a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V80A22,22,0,0,0,208,58Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V80A10,10,0,0,1,48,70H80a6,6,0,0,0,5-2.67L99.21,46h57.57L171,67.33A6,6,0,0,0,176,70h32a10,10,0,0,1,10,10ZM128,90a42,42,0,1,0,42,42A42,42,0,0,0,128,90Zm0,72a30,30,0,1,1,30-30A30,30,0,0,1,128,162Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,60H178.13L163.32,37.78A4,4,0,0,0,160,36H96a4,4,0,0,0-3.32,1.78L77.85,60H48A20,20,0,0,0,28,80V192a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V80A20,20,0,0,0,208,60Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V80A12,12,0,0,1,48,68H80a4,4,0,0,0,3.33-1.78L98.13,44h59.72l14.82,22.22A4,4,0,0,0,176,68h32a12,12,0,0,1,12,12ZM128,92a40,40,0,1,0,40,40A40,40,0,0,0,128,92Zm0,72a32,32,0,1,1,32-32A32,32,0,0,1,128,164Z`}))]]),C=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168.49,199.51a12,12,0,0,1-17,17l-80-80a12,12,0,0,1,0-17l80-80a12,12,0,0,1,17,17L97,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M160,48V208L80,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M163.06,40.61a8,8,0,0,0-8.72,1.73l-80,80a8,8,0,0,0,0,11.32l80,80A8,8,0,0,0,168,208V48A8,8,0,0,0,163.06,40.61ZM152,188.69,91.31,128,152,67.31Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,48V208a8,8,0,0,1-13.66,5.66l-80-80a8,8,0,0,1,0-11.32l80-80A8,8,0,0,1,168,48Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M164.24,203.76a6,6,0,1,1-8.48,8.48l-80-80a6,6,0,0,1,0-8.48l80-80a6,6,0,0,1,8.48,8.48L88.49,128Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M162.83,205.17a4,4,0,0,1-5.66,5.66l-80-80a4,4,0,0,1,0-5.66l80-80a4,4,0,1,1,5.66,5.66L85.66,128Z`}))]]),w=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z`}))]]),T=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,128A104,104,0,1,1,128,24,104.13,104.13,0,0,1,232,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Z`}))]]),E=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M192.49,167.51a12,12,0,0,1,0,17l-32,32a12,12,0,0,1-17,0l-32-32a12,12,0,1,1,17-17L140,179V128a12,12,0,0,1,24,0v51l11.51-11.52A12,12,0,0,1,192.49,167.51ZM160,36A92.08,92.08,0,0,0,79,84.37,68,68,0,1,0,72,220H84a12,12,0,0,0,0-24H72a44,44,0,0,1-1.81-87.95A91.7,91.7,0,0,0,68,128a12,12,0,0,0,24,0,68,68,0,0,1,136,0,67.27,67.27,0,0,1-7.25,30.59,12,12,0,1,0,21.42,10.82A91.08,91.08,0,0,0,252,128,92.1,92.1,0,0,0,160,36Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M240,128a80,80,0,0,1-80,80H72A56,56,0,1,1,85.92,97.74l0,.1A80,80,0,0,1,240,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M248,128a87.34,87.34,0,0,1-17.6,52.81,8,8,0,1,1-12.8-9.62A71.34,71.34,0,0,0,232,128a72,72,0,0,0-144,0,8,8,0,0,1-16,0,88,88,0,0,1,3.29-23.88C74.2,104,73.1,104,72,104a48,48,0,0,0,0,96H96a8,8,0,0,1,0,16H72A64,64,0,1,1,81.29,88.68,88,88,0,0,1,248,128Zm-69.66,42.34L160,188.69V128a8,8,0,0,0-16,0v60.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M247.93,124.52C246.11,77.54,207.07,40,160.06,40A88.1,88.1,0,0,0,81.29,88.67h0A87.48,87.48,0,0,0,72,127.73,8.18,8.18,0,0,1,64.57,136,8,8,0,0,1,56,128a103.66,103.66,0,0,1,5.34-32.92,4,4,0,0,0-4.75-5.18A64.09,64.09,0,0,0,8,152c0,35.19,29.75,64,65,64H160A88.09,88.09,0,0,0,247.93,124.52Zm-50.27,25.14-32,32a8,8,0,0,1-11.32,0l-32-32a8,8,0,0,1,11.32-11.32L152,156.69V96a8,8,0,0,1,16,0v60.69l18.34-18.35a8,8,0,0,1,11.32,11.32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M246,128a85.27,85.27,0,0,1-17.2,51.6,6,6,0,1,1-9.6-7.2A74,74,0,1,0,86,128a6,6,0,0,1-12,0,85.54,85.54,0,0,1,3.91-25.64A50.68,50.68,0,0,0,72,102a50,50,0,0,0,0,100H96a6,6,0,0,1,0,12H72A62,62,0,1,1,82.43,90.88,86,86,0,0,1,246,128Zm-66.24,43.76L158,193.51V128a6,6,0,0,0-12,0v65.51l-21.76-21.75a6,6,0,0,0-8.48,8.48l32,32a6,6,0,0,0,8.48,0l32-32a6,6,0,0,0-8.48-8.48Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M248,128a87.34,87.34,0,0,1-17.6,52.81,8,8,0,1,1-12.8-9.62A71.34,71.34,0,0,0,232,128a72,72,0,0,0-144,0,8,8,0,0,1-16,0,88,88,0,0,1,3.29-23.88C74.2,104,73.1,104,72,104a48,48,0,0,0,0,96H96a8,8,0,0,1,0,16H72A64,64,0,1,1,81.29,88.68,88,88,0,0,1,248,128Zm-69.66,42.34L160,188.69V128a8,8,0,0,0-16,0v60.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M244,128a83.28,83.28,0,0,1-16.8,50.4,4,4,0,1,1-6.4-4.8A76,76,0,1,0,84,128a4,4,0,0,1-8,0,83.45,83.45,0,0,1,4.57-27.27A52,52,0,1,0,72,204H96a4,4,0,0,1,0,8H72A60,60,0,1,1,83.61,93.13,84,84,0,0,1,244,128Zm-62.83,45.17L156,198.34V128a4,4,0,0,0-8,0v70.34l-25.17-25.17a4,4,0,0,0-5.66,5.66l32,32a4,4,0,0,0,5.66,0l32-32a4,4,0,0,0-5.66-5.66Z`}))]]),D=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z`}))]]),ee=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,180a52.06,52.06,0,0,0,52-52V64A52,52,0,0,0,76,64v64A52.06,52.06,0,0,0,128,180ZM100,64a28,28,0,0,1,56,0v64a28,28,0,0,1-56,0Zm40,155.22V240a12,12,0,0,1-24,0V219.22A92.14,92.14,0,0,1,36,128a12,12,0,0,1,24,0,68,68,0,0,0,136,0,12,12,0,0,1,24,0A92.14,92.14,0,0,1,140,219.22Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M80,128V64a48,48,0,0,1,96,0v64a48,48,0,0,1-96,0Zm128,0a8,8,0,0,0-16,0,64,64,0,0,1-128,0,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.6A80.11,80.11,0,0,0,208,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,174a46.06,46.06,0,0,0,46-46V64a46,46,0,0,0-92,0v64A46.06,46.06,0,0,0,128,174ZM94,64a34,34,0,0,1,68,0v64a34,34,0,0,1-68,0Zm40,141.75V240a6,6,0,0,1-12,0V205.75A78.09,78.09,0,0,1,50,128a6,6,0,0,1,12,0,66,66,0,0,0,132,0,6,6,0,0,1,12,0A78.09,78.09,0,0,1,134,205.75Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,172a44.05,44.05,0,0,0,44-44V64a44,44,0,0,0-88,0v64A44.05,44.05,0,0,0,128,172ZM92,64a36,36,0,0,1,72,0v64a36,36,0,0,1-72,0Zm40,139.89V240a4,4,0,0,1-8,0V203.89A76.09,76.09,0,0,1,52,128a4,4,0,0,1,8,0,68,68,0,0,0,136,0,4,4,0,0,1,8,0A76.09,76.09,0,0,1,132,203.89Z`}))]]),O=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M56.88,39.93A12,12,0,1,0,39.12,56.07L76,96.64V128a52,52,0,0,0,72.11,48l11.26,12.39A67.34,67.34,0,0,1,128,196a68.07,68.07,0,0,1-68-68,12,12,0,0,0-24,0,92.14,92.14,0,0,0,80,91.22V240a12,12,0,0,0,24,0V219.23a90.39,90.39,0,0,0,35.92-12.68l23.2,25.52a12,12,0,0,0,17.76-16.14ZM128,156a28,28,0,0,1-28-28v-5l29.9,32.89C129.27,156,128.64,156,128,156Zm63-2.42A67.63,67.63,0,0,0,196,128a12,12,0,0,1,24,0,91.48,91.48,0,0,1-6.74,34.61,12,12,0,0,1-22.23-9ZM85.7,33.75A52,52,0,0,1,180,64v56.54a12,12,0,0,1-24,0V64a28,28,0,0,0-50.79-16.28,12,12,0,0,1-19.51-14Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M213.38,229.92a8,8,0,0,1-11.3-.54l-30.92-34A78.83,78.83,0,0,1,136,207.59V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64.07,64.07,0,0,0,64,64,63.41,63.41,0,0,0,32.21-8.68l-11.1-12.2A48,48,0,0,1,80,128V95.09L42.08,53.38A8,8,0,0,1,53.92,42.62l160,176A8,8,0,0,1,213.38,229.92Zm-24.19-63.13a7.88,7.88,0,0,0,3.51.82,8,8,0,0,0,7.19-4.49A79.16,79.16,0,0,0,208,128a8,8,0,0,0-16,0,63.32,63.32,0,0,1-6.48,28.09A8,8,0,0,0,189.19,166.79Zm-27.33-29.22A8,8,0,0,0,175.74,133a49.49,49.49,0,0,0,.26-5V64A48,48,0,0,0,84,44.87a8,8,0,0,0,1.41,8.57Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M212.44,220,52.44,44A6,6,0,0,0,43.56,52L82,94.32V128a46,46,0,0,0,67.56,40.64l13.75,15.12A65.26,65.26,0,0,1,128,194a66.08,66.08,0,0,1-66-66,6,6,0,0,0-12,0,78.09,78.09,0,0,0,72,77.75V240a6,6,0,0,0,12,0V205.77a76.93,76.93,0,0,0,37.48-13L203.56,228a6,6,0,0,0,8.88-8.08ZM128,162a34,34,0,0,1-34-34V107.52l47.12,51.84A33.82,33.82,0,0,1,128,162Zm59.32-5A65.38,65.38,0,0,0,194,128a6,6,0,0,1,12,0,77.33,77.33,0,0,1-7.9,34.25A6,6,0,1,1,187.32,157ZM85.8,45.67A46,46,0,0,1,174,64v64a45.17,45.17,0,0,1-.25,4.81,6,6,0,0,1-6,5.38q-.31,0-.63,0a6,6,0,0,1-5.34-6.59A35.41,35.41,0,0,0,162,128V64A34,34,0,0,0,96.8,50.45a6,6,0,0,1-11-4.78Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M211,221.31,51,45.31A4,4,0,0,0,45,50.69L84,93.55V128a44,44,0,0,0,66,38.12l16.38,18A67.21,67.21,0,0,1,128,196a68.07,68.07,0,0,1-68-68,4,4,0,0,0-8,0,76.09,76.09,0,0,0,72,75.89V240a4,4,0,0,0,8,0V203.89a75.1,75.1,0,0,0,39.79-13.77L205,226.69a4,4,0,1,0,5.92-5.38ZM128,164a36,36,0,0,1-36-36V102.35L144.43,160A35.83,35.83,0,0,1,128,164Zm61.12-6.15A67.44,67.44,0,0,0,196,128a4,4,0,0,1,8,0,75.28,75.28,0,0,1-7.7,33.37,4,4,0,0,1-7.18-3.52ZM87.63,46.46A44,44,0,0,1,172,64v64a44.2,44.2,0,0,1-.24,4.61,4,4,0,0,1-4,3.58l-.42,0a4,4,0,0,1-3.57-4.39A36.67,36.67,0,0,0,164,128V64A36,36,0,0,0,95,49.66a4,4,0,0,1-7.34-3.2Z`}))]]),k=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,36H48A28,28,0,0,0,20,64V176a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V64A28,28,0,0,0,208,36Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Zm-40,52a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,228Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,64V176a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64A16,16,0,0,1,48,48H208A16,16,0,0,1,224,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,64V176a24,24,0,0,1-24,24H48a24,24,0,0,1-24-24V64A24,24,0,0,1,48,40H208A24,24,0,0,1,232,64ZM160,216H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,42H48A22,22,0,0,0,26,64V176a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V64A22,22,0,0,0,208,42Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V64A10,10,0,0,1,48,54H208a10,10,0,0,1,10,10Zm-52,48a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,224Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,44H48A20,20,0,0,0,28,64V176a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V64A20,20,0,0,0,208,44Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V64A12,12,0,0,1,48,52H208a12,12,0,0,1,12,12Zm-56,48a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,224Z`}))]]),te=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,28H160a20,20,0,0,0-20,20V208a20,20,0,0,0,20,20h40a20,20,0,0,0,20-20V48A20,20,0,0,0,200,28Zm-4,176H164V52h32ZM96,28H56A20,20,0,0,0,36,48V208a20,20,0,0,0,20,20H96a20,20,0,0,0,20-20V48A20,20,0,0,0,96,28ZM92,204H60V52H92Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,48V208a8,8,0,0,1-8,8H160a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8h40A8,8,0,0,1,208,48ZM96,40H56a8,8,0,0,0-8,8V208a8,8,0,0,0,8,8H96a8,8,0,0,0,8-8V48A8,8,0,0,0,96,40Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M200,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h40a16,16,0,0,0,16-16V48A16,16,0,0,0,200,32Zm0,176H160V48h40ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Zm0,176H56V48H96Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,48V208a16,16,0,0,1-16,16H160a16,16,0,0,1-16-16V48a16,16,0,0,1,16-16h40A16,16,0,0,1,216,48ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,34H160a14,14,0,0,0-14,14V208a14,14,0,0,0,14,14h40a14,14,0,0,0,14-14V48A14,14,0,0,0,200,34Zm2,174a2,2,0,0,1-2,2H160a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2h40a2,2,0,0,1,2,2ZM96,34H56A14,14,0,0,0,42,48V208a14,14,0,0,0,14,14H96a14,14,0,0,0,14-14V48A14,14,0,0,0,96,34Zm2,174a2,2,0,0,1-2,2H56a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H96a2,2,0,0,1,2,2Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h40a16,16,0,0,0,16-16V48A16,16,0,0,0,200,32Zm0,176H160V48h40ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Zm0,176H56V48H96Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,36H160a12,12,0,0,0-12,12V208a12,12,0,0,0,12,12h40a12,12,0,0,0,12-12V48A12,12,0,0,0,200,36Zm4,172a4,4,0,0,1-4,4H160a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4h40a4,4,0,0,1,4,4ZM96,36H56A12,12,0,0,0,44,48V208a12,12,0,0,0,12,12H96a12,12,0,0,0,12-12V48A12,12,0,0,0,96,36Zm4,172a4,4,0,0,1-4,4H56a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H96a4,4,0,0,1,4,4Z`}))]]),ne=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M228.23,134.69,84.15,222.81A8,8,0,0,1,72,216.12V39.88a8,8,0,0,1,12.15-6.69l144.08,88.12A7.82,7.82,0,0,1,228.23,134.69Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z`}))]]),A=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,176H52V52H204Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,48V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H208A8,8,0,0,1,216,48Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,48V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H208A16,16,0,0,1,224,48Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,34H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34Zm2,174a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36Zm4,172a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Z`}))]]),j=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V167.57l24.94,18.14A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM188,180H36V76H188Zm44-27.57-20-14.54V118.11l20-14.54Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M192,72V184a16,16,0,0,1-16,16H32a16,16,0,0,1-16-16V72A16,16,0,0,1,32,56H176A16,16,0,0,1,192,72Zm58,.25a8.23,8.23,0,0,0-6.63,1.22L209.78,95.86A4,4,0,0,0,208,99.19v57.62a4,4,0,0,0,1.78,3.33l33.78,22.52a8,8,0,0,0,8.58.19,8.33,8.33,0,0,0,3.86-7.17V80A8,8,0,0,0,250,72.25Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V155.21L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM194,184a2,2,0,0,1-2,2H32a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H192a2,2,0,0,1,2,2Zm48-19.21-36-24V115.21l36-24Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V151.47l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM196,184a4,4,0,0,1-4,4H32a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H192a4,4,0,0,1,4,4Zm48-15.47-40-26.67V114.14l40-26.67Z`}))]]),re=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-8,56a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Zm-6-82V80a6,6,0,0,1,12,0v56a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,172Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Zm-4-84V80a4,4,0,0,1,8,0v56a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,172Z`}))]]),ie=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z`}))]]),M=n({color:`currentColor`,size:`1em`,weight:`regular`,mirrored:!1}),N=e.forwardRef((t,n)=>{let{alt:r,color:i,size:a,weight:o,mirrored:s,children:c,weights:l,...u}=t,{color:d=`currentColor`,size:f,weight:p=`regular`,mirrored:m=!1,...h}=e.useContext(M);return e.createElement(`svg`,{ref:n,xmlns:`http://www.w3.org/2000/svg`,width:a??f,height:a??f,fill:i??d,viewBox:`0 0 256 256`,transform:s||m?`scale(-1, 1)`:void 0,...h,...u},!!r&&e.createElement(`title`,null,r),c,l.get(o??p))});N.displayName=`IconBase`;const P=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:S}));P.displayName=`CameraIcon`;const F=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:C}));F.displayName=`CaretLeftIcon`;const I=F,L=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:w}));L.displayName=`CheckIcon`;const R=L,z=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:T}));z.displayName=`CircleIcon`;const B=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:E}));B.displayName=`CloudArrowDownIcon`;const V=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:D}));V.displayName=`GearIcon`;const H=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:ee}));H.displayName=`MicrophoneIcon`;const U=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:O}));U.displayName=`MicrophoneSlashIcon`;const W=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:k}));W.displayName=`MonitorIcon`;const G=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:te}));G.displayName=`PauseIcon`;const K=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:ne}));K.displayName=`PlayIcon`;const q=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:A}));q.displayName=`SquareIcon`;const J=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:j}));J.displayName=`VideoCameraIcon`;const Y=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:re}));Y.displayName=`WarningCircleIcon`;const X=e.forwardRef((t,n)=>e.createElement(N,{ref:n,...t,weights:ie}));X.displayName=`XIcon`;const Z=`https://core.vidtreo.com`;var ae=class{constructor(e){if(this.proxyEndpoint=e.proxyEndpoint,this.proxyEndpoint)throw Error(`Proxy mode not yet implemented`);this.service=new f}uploadVideo(e,t){if(this.proxyEndpoint)throw Error(`Proxy mode not yet implemented`);return this.service.uploadVideo(e,t)}};const oe=/^https?:\/\//i;function se(e){return e?oe.test(e)?e:`https://${e}`:Z}function ce(e,t){let n={apiKey:t,backendUrl:se(e.backendUrl)};return e.countdownDuration!==void 0&&(n.countdownDuration=e.countdownDuration),e.maxRecordingTime!==void 0&&(n.maxRecordingTime=e.maxRecordingTime),e.userMetadata&&(n.userMetadata=e.userMetadata),e.enableSourceSwitching!==void 0&&(n.enableSourceSwitching=e.enableSourceSwitching),e.enableMute!==void 0&&(n.enableMute=e.enableMute),e.enablePause!==void 0&&(n.enablePause=e.enablePause),e.enableDeviceChange!==void 0&&(n.enableDeviceChange=e.enableDeviceChange),e.enableTabVisibilityOverlay!==void 0&&(n.enableTabVisibilityOverlay=e.enableTabVisibilityOverlay),n}const Q=new Map;function le(e,t){return`${e}:${t}`}function ue(e){let[t,n]=s(`idle`),[c,l]=s(null),[u,f]=s(!1),[p,_]=s(!1),[v,y]=s(null),[b,x]=s(null),[S,C]=s(``),[w,T]=s(!1),[E,D]=s(null),[ee,O]=s(0),[k,te]=s(null),[ne,A]=s(!1),[j,re]=s(null),[ie,M]=s({cameras:[],microphones:[],selectedCamera:null,selectedMic:null}),N=o(null),P=o(null),F=o(!1),I=o(!1),L=o(e),R=o(!1);L.current=e;let z=r(e=>{let t=m(e);y(t),L.current.onError&&L.current.onError(e instanceof Error?e:Error(t))},[]),B=r(()=>N.current?N.current.getAudioStreamForAnalysis():null,[]),V=r(e=>!(!e||e.getAudioTracks().length===0),[]),H=r(async e=>{N.current&&(N.current.stopAudioLevelTracking(),await N.current.startAudioLevelTracking(e,{onLevelUpdate:(e,t)=>{O(e),f(t)}}))},[]),U=r(async(e=5,t=50)=>{for(let n=0;n<e;n+=1){let r=B();if(r)return r;n<e-1&&await new Promise(e=>{setTimeout(e,t)})}return B()},[B]),W=r(async(e,t=!1)=>{if(!N.current)return;let n=N.current.isRecording(),r=null;n&&t?(r=B(),r||=await U()):e&&(r=e),V(r)&&r&&await H(r)},[B,V,H,U]),G=r(async()=>{if(!(N.current&&c))return;let e=await N.current.getDeviceManager().getAvailableDevices(),t=N.current.getDeviceManager();M({cameras:e.videoinput,microphones:e.audioinput,selectedCamera:t.getSelectedCameraDeviceId(),selectedMic:t.getSelectedMicDeviceId()})},[c]);i(()=>{G()},[G]),i(()=>{N.current&&c&&N.current.getStream()===c&&(f(N.current.getIsMuted()),_(N.current.isPaused()))},[c]);let K=r(async e=>{if(R.current)return{recordingId:``,uploadUrl:``,blob:e};R.current=!0;try{if(L.current.demo)return re(e),{recordingId:``,uploadUrl:``,blob:e};if(!P.current)throw Error(`Upload service not initialized`);T(!0);let t=await h(e),n=`recording-${Date.now()}.mp4`,r=L.current.onUploadProgress,i=L.current.backendUrl||Z;return await P.current.uploadVideo(e,{apiKey:L.current.apiKey,backendUrl:i,filename:n,duration:t,userMetadata:L.current.userMetadata,onProgress:r?e=>{T(!1),D(e),r(e)}:e=>{T(!1),D(e)}}).then(t=>(T(!1),D(null),L.current.onUploadComplete&&L.current.onUploadComplete({recordingId:t.videoId,uploadUrl:t.uploadUrl}),{recordingId:t.videoId,uploadUrl:t.uploadUrl,blob:e})).catch(e=>{T(!1),D(null);let t=e instanceof Error?e:Error(String(e));throw L.current.onUploadError&&L.current.onUploadError(t),t})}finally{R.current=!1}},[]),q=r(e=>({onStateChange:e=>{n(e),e===`recording`&&L.current.onRecordingStart&&L.current.onRecordingStart(),e===`recording`&&setTimeout(()=>{W(null,!0).catch(()=>{})},100),e===`idle`&&(R.current=!1,L.current.onRecordingStop&&L.current.onRecordingStop())},onCountdownUpdate:(e,t)=>{x(t),n(e)},onTimerUpdate:e=>{C(e)},onError:z,onRecordingComplete:e=>{x(null),K(e).catch(e=>{z(e)})},onClearUploadStatus:()=>{D(null)},onStopAudioTracking:()=>{N.current&&N.current.stopAudioLevelTracking()},onGetConfig:()=>{if(!N.current)throw Error(`Controller not initialized`);return e?Promise.resolve(g(`mp4`)):N.current.getConfig()}}),[z,W,K]),J=r(()=>({onProgress:e=>{D(e),L.current.onUploadProgress&&L.current.onUploadProgress(e)},onSuccess:e=>{D(null),L.current.onUploadComplete&&L.current.onUploadComplete({recordingId:e.videoId,uploadUrl:e.uploadUrl})},onError:e=>{D(null),L.current.onUploadError&&L.current.onUploadError(e)},onClearStatus:()=>{D(null)}}),[]),Y=r(()=>({onStreamStart:async e=>{l(e),y(null),N.current?.isRecording()||await W(e,!1).catch(()=>{})},onStreamStop:()=>{N.current&&N.current.stopAudioLevelTracking(),l(null),O(0)},onError:e=>{z(e)}}),[z,W]),X=r(()=>({onSourceChange:async e=>{if(N.current?.isRecording()){if(e===`camera`){let e=N.current?.getStream();if(!e||e.getAudioTracks().length===0)return;await W(e,!1).catch(()=>{});return}await W(null,!0).catch(()=>{})}},onPreviewUpdate:async e=>{let t=N.current?.isRecording();l(e),t||await W(e,!1).catch(()=>{})},onError:z,onTransitionStart:e=>{te(e)},onTransitionEnd:()=>{te(null)}}),[z,W]);i(()=>{let t=e.backendUrl||Z,n=le(e.apiKey,t),r=L.current.apiKey!==e.apiKey,i=(L.current.backendUrl||Z)!==t;if(!(r||i)&&F.current&&N.current)return;let a=Q.get(n);if(a){N.current=a.controller,a.promise.then(()=>{F.current=!0,I.current=!1,A(!0)}).catch(e=>{z(e),F.current=!1,I.current=!1,A(!1),Q.delete(n)});return}if(I.current||N.current&&!r&&!i)return;I.current=!0,N.current&&=(N.current.cleanup(),N.current.getStreamManager().destroy(),null),F.current=!1,L.current=e;let o=ce(e.demo?{demo:!0,backendUrl:void 0,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay}:{demo:!1,apiKey:e.apiKey,backendUrl:t,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay},e.demo?``:e.apiKey);e.demo||(P.current=new ae({apiKey:e.apiKey,backendUrl:t,proxyEndpoint:e.proxyEndpoint}));let s=new d({recording:q(e.demo??!1),upload:J(),stream:Y(),sourceSwitch:X()});N.current=s;let c=s.initialize(o).then(()=>{F.current=!0,I.current=!1,A(!0)});return Q.set(n,{promise:c,controller:s}),c.catch(e=>{z(e),F.current=!1,I.current=!1,A(!1),Q.delete(n)}),()=>{let e=Q.get(n);e&&e.controller===N.current&&Q.delete(n),N.current&&=(N.current.cleanup(),N.current.getStreamManager().destroy(),null),F.current=!1,I.current=!1}},[e.apiKey,e.backendUrl||Z,e.countdownDuration,e.maxRecordingTime,e.userMetadata,e.enableSourceSwitching,e.enableMute,e.enablePause,e.enableDeviceChange,e.proxyEndpoint,e.demo,W,z,q,J,Y,X]);let oe=r(async(e=`camera`)=>{if(!(N.current&&F.current))throw Error(`Controller not initialized`);await N.current.startStream();let t=N.current.getStream();t&&(l(t),y(null),N.current.isRecording()||await W(t,!1).catch(()=>{})),e===`screen`&&await N.current.switchSource(`screen`)},[W]),se=r(e=>e===``||e===`default`?null:e,[]),ue=a(()=>({startRecording:async(e=`camera`)=>{if(!N.current)throw Error(`Controller not initialized`);L.current.demo&&re(null),N.current.isActive()||await oe(e),e!==N.current.getCurrentSourceType()&&await N.current.switchSource(e),await N.current.startRecording()},stopRecording:async()=>{if(!N.current)throw Error(`Controller not initialized`);return K(await N.current.stopRecording())},pauseRecording:()=>{N.current&&(N.current.pauseRecording(),_(N.current.isPaused()))},resumeRecording:()=>{N.current&&(N.current.resumeRecording(),_(N.current.isPaused()))},toggleMute:()=>{N.current&&(N.current.toggleMute(),f(N.current.getIsMuted()))},switchSource:async e=>{if(!N.current)throw Error(`Controller not initialized`);await N.current.switchSource(e)},changeCamera:async e=>{if(!N.current)throw Error(`Controller not initialized`);let t=se(e);N.current.setCameraDevice(t);let n=await N.current.switchVideoDevice(t);l(n),y(null),N.current.isRecording()||await W(n,!1);let r=N.current.getDeviceManager();M(e=>({...e,selectedCamera:r.getSelectedCameraDeviceId()}))},changeMic:async e=>{if(!N.current)throw Error(`Controller not initialized`);let t=se(e);N.current.setMicDevice(t);let n=await N.current.switchAudioDevice(t);l(n),y(null),N.current.isRecording()||await W(n,!1);let r=N.current.getDeviceManager();M(e=>({...e,selectedMic:r.getSelectedMicDeviceId()}))},startPreview:oe,downloadVideo:()=>{if(!j)return;let e=URL.createObjectURL(j),t=document.createElement(`a`);t.href=e,t.download=`recording-${Date.now()}.mp4`,document.body.appendChild(t),t.click(),document.body.removeChild(t),URL.revokeObjectURL(e)},cleanup:()=>{N.current&&=(N.current.cleanup(),N.current.getStreamManager().destroy(),null),F.current=!1,A(!1),re(null)}}),[se,W,oe,j,K]);return{state:a(()=>({recordingState:t,stream:c,isMuted:u,isPaused:p,error:v,countdown:b,timer:S,isFinishing:w,uploadProgress:E,transitionMessage:k,isInitialized:ne,recordedBlob:j,devices:ie}),[t,c,u,p,v,b,S,w,E,k,ne,j,ie]),actions:ue,audioLevel:ee,controller:N.current}}const de={en:{initializingCamera:`Initializing camera...`,grantPermissions:`Grant camera and microphone permissions when prompted`,switchingDevice:`Switching device...`,recordingStartsIn:`Recording starts in...`,switchingSource:`Switching source...`,rec:`REC`,settings:`Settings`,record:`Record`,stop:`Stop`,pause:`Pause`,resume:`Resume`,mute:`Mute`,unmute:`Unmute`,switchSource:`Switch Source`,camera:`Camera`,microphone:`Microphone`,finishing:`Finishing...`,uploading:`Uploading...`,userInAnotherTab:`User in another tab`,download:`Download`,nativeCameraSelectVideo:`Select Video from Gallery`,nativeCameraRecordVideo:`Record with Camera`,nativeCameraProcessing:`Processing video...`,nativeCameraConfigLoading:`Loading settings...`,errorTitle:`Configuration Error`,errorApiKeyRequired:`API Key is required. Provide it as a prop or set VIDTREO_API_KEY environment variable.`,errorGeneric:`An error occurred while initializing the recorder`},es:{initializingCamera:`Inicializando cámara...`,grantPermissions:`Otorga permisos de cámara y micrófono cuando se solicite`,switchingDevice:`Cambiando dispositivo...`,recordingStartsIn:`La grabación comienza en...`,switchingSource:`Cambiando fuente...`,rec:`GRAB`,settings:`Configuración`,record:`Grabar`,stop:`Detener`,pause:`Pausar`,resume:`Reanudar`,mute:`Silenciar`,unmute:`Activar sonido`,switchSource:`Cambiar Fuente`,camera:`Cámara`,microphone:`Micrófono`,finishing:`Finalizando...`,uploading:`Subiendo...`,userInAnotherTab:`Usuario en otra pestaña`,download:`Descargar`,nativeCameraSelectVideo:`Seleccionar Video de la Galería`,nativeCameraRecordVideo:`Grabar con Cámara`,nativeCameraProcessing:`Procesando video...`,nativeCameraConfigLoading:`Cargando configuración...`,errorTitle:`Error de Configuración`,errorApiKeyRequired:`Se requiere una API Key. Proporciónala como prop o configura la variable de entorno VIDTREO_API_KEY.`,errorGeneric:`Ocurrió un error al inicializar la grabadora`}};function fe(e=`en`,t={}){return{...de[e]||de.en,...t}}function pe(e,t){if(t)return``;if(e)return e;if(typeof process<`u`&&process.env&&typeof process.env.VIDTREO_API_KEY==`string`)return process.env.VIDTREO_API_KEY;throw Error(`apiKey is required. Provide it as a prop or set VIDTREO_API_KEY environment variable.`)}function me(e){let[t,n]=s(null),[a,d]=s(null),[p,h]=s(null),[g,_]=s(!1),[y,b]=s(!0),[x,S]=s(null),[C,w]=s(null),T=o(null),E=o(e);E.current=e,i(()=>{let t=e.backendUrl||Z,n=null;e.apiKey&&!e.demo&&(n=c.getInstance({apiKey:e.apiKey,backendUrl:t}));let r=new f;return T.current=new u({apiKey:e.apiKey,backendUrl:t,maxRecordingTime:e.maxRecordingTime,maxFileSize:e.maxFileSize,userMetadata:e.userMetadata},n,r),e.apiKey&&!e.demo?(b(!0),T.current.preloadConfig().then(()=>b(!1)).catch(()=>{b(!1),S(`Failed to load settings`)})):b(!1),()=>{T.current=null}},[e.apiKey,e.backendUrl,e.demo,e.maxRecordingTime,e.maxFileSize,e.userMetadata]);let D=r(async e=>{if(S(null),!T.current)throw Error(`Handler not initialized`);try{let t=await T.current.handleFileSelection(e);return n(t),t}catch(e){let t=m(e),n=e instanceof Error?e:Error(t);throw S(t),E.current.onError?.(n),n}},[]),ee=r(async e=>{let r=e||t;if(!(r&&T.current))return;let i=E.current.demo;try{if(_(!0),d(0),S(null),i)w((await v(r.file,l,e=>{d(e),E.current.onTranscodingProgress?.(e)})).blob),_(!1),d(null);else{let e=await T.current.processAndUpload(e=>{d(e),E.current.onTranscodingProgress?.(e)},e=>{h(e),E.current.onUploadProgress?.(e)});n(null),d(null),h(null),_(!1),E.current.onUploadComplete?.({recordingId:e.recordingId||``,uploadUrl:e.uploadUrl||``})}}catch(e){let t=m(e),n=e instanceof Error?e:Error(t);S(t),_(!1),d(null),h(null),w(null),E.current.onError?.(n),i||E.current.onUploadError?.(n)}},[t]),O=r(()=>{if(!C)return;let e=URL.createObjectURL(C),t=document.createElement(`a`);t.href=e,t.download=`recording-${Date.now()}.mp4`,document.body.appendChild(t),t.click(),document.body.removeChild(t),URL.revokeObjectURL(e)},[C]),k=r(()=>{n(null),d(null),h(null),S(null),_(!1),w(null)},[]);return{state:{file:t,transcodingProgress:a,uploadProgress:p,isTranscoding:g,isConfigLoading:y,error:x,transcodedBlob:C},actions:{handleFileSelect:D,processAndUpload:ee,downloadVideo:O,reset:k}}}function he({error:e,onDismiss:t}){return e?x(`div`,{className:`vidtreo-error`,children:[b(`div`,{className:`vidtreo-error-message`,children:e}),t&&b(`button`,{className:`vidtreo-error-dismiss`,onClick:t,type:`button`,children:b(X,{className:`vidtreo-icon`,weight:`regular`})})]}):null}function ge({progress:e}){let t=Math.round(e*100);return x(`div`,{className:`vidtreo-transcoding-progress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill`,style:{width:`${t}%`}})}),x(`div`,{className:`vidtreo-progress-text`,children:[`Processing video... `,t,`%`]})]})}function _e({progress:e,visible:t}){if(!t||e===null)return null;let n=Math.round(e*100);return x(`div`,{className:`vidtreo-upload-progress`,children:[b(`div`,{className:`vidtreo-upload-progress-bar`,children:b(`div`,{className:`vidtreo-upload-progress-fill`,style:{width:`${n}%`}})}),x(`div`,{className:`vidtreo-upload-progress-text`,children:[`Uploading... `,n,`%`]})]})}function ve({config:e}){let{state:t,actions:n}=me(e),r=o(null),i=fe(e.lang===void 0?`en`:e.lang,e.texts===void 0?{}:e.texts),a=()=>{r.current&&(r.current.accept=`video/*`,r.current.removeAttribute(`capture`),r.current.click())},s=()=>{r.current&&(r.current.accept=`video/*`,r.current.setAttribute(`capture`,`environment`),r.current.click())},c=async e=>{let t=e.target.files?.[0];if(t){let e=await n.handleFileSelect(t);await n.processAndUpload(e)}e.target.value=``},l=t.file!==null,u=!(l||t.isTranscoding)&&t.uploadProgress===null&&!t.transcodedBlob,d=e.demo&&t.transcodedBlob&&!t.isTranscoding&&t.uploadProgress===null;return x(`div`,{className:`vidtreo-native-camera-container`,children:[b(`input`,{onChange:c,ref:r,style:{display:`none`},type:`file`}),t.isConfigLoading&&b(`div`,{className:`vidtreo-config-loading-indicator`,children:b(`div`,{className:`vidtreo-spinner-small`})}),l&&t.file!==null&&x(`div`,{className:`vidtreo-native-camera-preview-container`,children:[b(`img`,{alt:`Video preview`,className:`vidtreo-native-camera-preview-image`,height:480,src:t.file.previewUrl,width:640}),t.isTranscoding&&t.transcodingProgress!==null&&b(`div`,{className:`vidtreo-progress-overlay`,children:b(ge,{progress:t.transcodingProgress})}),t.uploadProgress!==null&&b(`div`,{className:`vidtreo-progress-overlay`,children:b(_e,{progress:t.uploadProgress,visible:!0})}),d&&b(`div`,{className:`vidtreo-native-camera-download-button`,children:b(`button`,{className:`vidtreo-btn vidtreo-btn-primary`,onClick:n.downloadVideo,type:`button`,children:i.download})})]}),u&&b(`div`,{className:`vidtreo-native-camera-empty-state`,children:x(`div`,{className:`vidtreo-native-camera-buttons`,children:[b(`button`,{className:`vidtreo-btn vidtreo-btn-primary`,disabled:t.isConfigLoading,onClick:a,type:`button`,children:`Select Video from Gallery`}),b(`button`,{className:`vidtreo-btn vidtreo-btn-secondary`,disabled:t.isConfigLoading,onClick:s,type:`button`,children:`Record with Camera`})]})}),t.error&&b(he,{error:t.error,onDismiss:n.reset})]})}const ye=.7;function be({audioLevel:e,isMuted:t}){return b(y,{children:Array.from({length:15},(n,r)=>{let i=e>=(r+1)/15*100&&!t,a=`15%`,o=``,s=`1`;if(i){a=`${30+r/15*70}%`;let e=r/15,t=ye+r/15*(1-ye);o=p(e),s=String(t)}let c=`audio-bar-${r}`;return b(`div`,{className:`vidtreo-audio-level-bar`,style:{height:a,backgroundColor:o,opacity:s}},c)})})}function xe({error:e,lang:t,texts:n}){let r=fe(t,n),i=e?.message.includes(`apiKey is required`);return b(`div`,{className:`vidtreo-preview-container`,children:b(`div`,{className:`vidtreo-error-overlay`,children:x(`div`,{className:`vidtreo-error-content`,children:[b(`div`,{className:`vidtreo-error-icon`,children:b(Y,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-error-title`,children:r.errorTitle}),!i&&b(`div`,{className:`vidtreo-error-message`,children:e?.message||r.errorGeneric}),i&&x(`div`,{className:`vidtreo-error-config`,children:[b(`div`,{className:`vidtreo-error-config-title`,children:`Configuration Options:`}),x(`div`,{className:`vidtreo-error-config-item`,children:[b(`code`,{children:`apiKey`}),` prop: Pass the API key as a prop to the component`]}),x(`div`,{className:`vidtreo-error-config-item`,children:[b(`code`,{children:`VIDTREO_API_KEY`}),` environment variable: Set this in your environment`]})]})]})})})}var Se=class extends t{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError?this.props.fallback?this.props.fallback(this.state.error):b(`div`,{className:`vidtreo-preview-error`,children:x(`div`,{className:`vidtreo-error-content`,children:[b(`div`,{className:`vidtreo-error-icon`,children:b(Y,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-error-title`,children:`Preview Error`}),b(`div`,{className:`vidtreo-error-message`,children:this.state.error?.message||`An error occurred while loading the preview`}),b(`button`,{className:`vidtreo-error-retry`,onClick:()=>this.setState({hasError:!1,error:null}),type:`button`,children:`Retry`})]})}):this.props.children}},Ce=class extends t{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError?this.props.fallback?this.props.fallback(this.state.error):b(xe,{error:this.state.error,lang:this.props.lang,texts:this.props.texts}):this.props.children}};function we({buttonVisibility:e,recordingState:t,isMuted:n,currentSourceType:r,onToggleSettings:i,onStartRecording:a,onStopRecording:o,onToggleMute:s,onPause:c,onResume:l,onSwitchSource:u,onDownload:d,translations:f={settings:`Settings`,record:`Record`,stop:`Stop`,pause:`Pause`,resume:`Resume`,mute:`Mute`,unmute:`Unmute`,switchSource:`Switch Source`,download:`Download`}}){return b(`div`,{className:`vidtreo-recording-controls`,children:b(`div`,{className:`vidtreo-recording-controls-row`,children:x(`div`,{className:`vidtreo-control-buttons-row`,children:[e.showSettingsButton&&b(`button`,{className:`vidtreo-control-button`,id:`settingsButton`,onClick:i,title:f.settings,type:`button`,children:b(V,{height:20,weight:`fill`,width:20})}),t===`idle`&&x(`button`,{className:`vidtreo-record-button`,id:`startButton`,onClick:a,type:`button`,children:[b(z,{fill:`currentColor`,height:24,style:{marginRight:`0.375rem`},weight:`fill`,width:24}),f.record]}),e.showMuteButton&&b(`button`,{className:`vidtreo-control-button ${n?`vidtreo-muted`:``}`,id:`muteButton`,onClick:s,title:n?f.unmute:f.mute,type:`button`,children:b(n?U:H,{height:24,weight:`fill`,width:24})}),e.showPauseButton&&b(`button`,{className:`vidtreo-control-button`,id:`pauseButton`,onClick:c,title:f.pause,type:`button`,children:b(G,{height:24,weight:`fill`,width:24})}),e.showResumeButton&&b(`button`,{className:`vidtreo-control-button`,id:`resumeButton`,onClick:l,title:f.resume,type:`button`,children:b(K,{height:24,weight:`fill`,width:24})}),e.showStopButton&&x(`button`,{className:`vidtreo-record-button`,id:`stopButton`,onClick:o,type:`button`,children:[b(q,{fill:`currentColor`,height:24,style:{marginRight:`0.375rem`},weight:`fill`,width:24}),f.stop]}),e.showDownloadButton&&d&&b(`button`,{className:`vidtreo-control-button`,id:`downloadButton`,onClick:d,title:f.download,type:`button`,children:b(B,{height:24,weight:`fill`,width:24})}),e.showSwitchSourceButton&&b(`button`,{className:`vidtreo-control-button`,id:`switchSourceButton`,onClick:u,title:f.switchSource,type:`button`,children:b(r===`camera`?W:P,{height:24,weight:`fill`,width:24})})]})})})}function Te({devices:e,onCameraChange:t,onMicChange:n,translations:r={settings:`Settings`,camera:`Camera`,microphone:`Microphone`}}){let[a,o]=s(`main`),[c,l]=s(`none`),u=e=>{l(`right`),o(e)},d=()=>{l(`left`),o(`main`)};i(()=>{if(c!==`none`){let e=setTimeout(()=>{l(`none`)},300);return()=>{clearTimeout(e)}}},[c]);let f=e.cameras.filter(e=>e.deviceId&&e.deviceId.trim()!==``),p=e.microphones.filter(e=>e.deviceId&&e.deviceId.trim()!==``),m=f.find(t=>t.deviceId===e.selectedCamera)?.label||f[0]?.label||r.camera,h=p.find(t=>t.deviceId===e.selectedMic)?.label||p[0]?.label||r.microphone,g=(e,r)=>{r===`camera`?t(e):n(e),d()};return a===`camera`?b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:x(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:[x(`button`,{className:`vidtreo-settings-header`,onClick:d,type:`button`,children:[b(I,{className:`vidtreo-settings-back-icon`,height:20,weight:`regular`,width:20}),b(`h3`,{className:`vidtreo-settings-title`,children:r.camera})]}),b(`div`,{className:`vidtreo-device-list`,children:f.length===0?b(`div`,{className:`vidtreo-device-empty`,children:`No hay cámaras disponibles`}):f.map(t=>x(`button`,{className:`vidtreo-device-option`,onClick:()=>{g(t.deviceId,`camera`)},type:`button`,children:[b(`div`,{className:`vidtreo-device-option-check-container`,children:t.deviceId===e.selectedCamera?b(R,{className:`vidtreo-device-checkmark`,height:20,weight:`regular`,width:20}):b(`span`,{className:`vidtreo-device-checkmark-placeholder`})}),b(`span`,{className:`vidtreo-device-option-label`,children:t.label||`Camera ${t.deviceId.slice(0,8)}`})]},t.deviceId))})]})}):a===`microphone`?b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:x(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:[x(`button`,{className:`vidtreo-settings-header`,onClick:d,type:`button`,children:[b(I,{className:`vidtreo-settings-back-icon`,height:20,weight:`regular`,width:20}),b(`h3`,{className:`vidtreo-settings-title`,children:r.microphone})]}),b(`div`,{className:`vidtreo-device-list`,children:p.length===0?b(`div`,{className:`vidtreo-device-empty`,children:`No hay micrófonos disponibles`}):p.map(t=>x(`button`,{className:`vidtreo-device-option`,onClick:()=>{g(t.deviceId,`microphone`)},type:`button`,children:[b(`div`,{className:`vidtreo-device-option-check-container`,children:t.deviceId===e.selectedMic?b(R,{className:`vidtreo-device-checkmark`,height:20,weight:`regular`,width:20}):b(`span`,{className:`vidtreo-device-checkmark-placeholder`})}),b(`span`,{className:`vidtreo-device-option-label`,children:t.label||`Microphone ${t.deviceId.slice(0,8)}`})]},t.deviceId))})]})}):b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:b(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:x(`div`,{className:`vidtreo-device-options-container`,children:[x(`button`,{className:`vidtreo-device-option-nav`,onClick:()=>{u(`camera`)},type:`button`,children:[x(`div`,{className:`vidtreo-device-option-nav-content`,children:[b(J,{height:20,weight:`fill`,width:20}),b(`span`,{className:`vidtreo-device-option-nav-label`,children:r.camera})]}),x(`div`,{className:`vidtreo-device-option-nav-value`,children:[b(`span`,{className:`vidtreo-device-option-nav-value-text`,children:m}),b(`span`,{className:`vidtreo-device-option-nav-chevron`,children:`›`})]})]}),x(`button`,{className:`vidtreo-device-option-nav`,onClick:()=>{u(`microphone`)},type:`button`,children:[x(`div`,{className:`vidtreo-device-option-nav-content`,children:[b(H,{height:20,weight:`fill`,width:20}),b(`span`,{className:`vidtreo-device-option-nav-label`,children:r.microphone})]}),x(`div`,{className:`vidtreo-device-option-nav-value`,children:[b(`span`,{className:`vidtreo-device-option-nav-value-text`,children:h}),b(`span`,{className:`vidtreo-device-option-nav-chevron`,children:`›`})]})]})]})})})}function Ee(e){e.pause(),e.srcObject=null}function De(e,t){let n=e.getVideoTracks();return n.length===0||n[0].readyState!==`live`||!e.active?(Ee(t),!1):!0}function Oe(e){let t=e instanceof Error?e.message:String(e);return t.includes(`interrupted`)||t.includes(`abort`)}async function ke(e){if(!(e.readyState>=2&&!e.paused)){await new Promise(e=>{setTimeout(()=>e(),200)});try{await e.play()}catch{}}}async function Ae(e){try{await e.play()}catch(t){Oe(t)&&await ke(e)}}async function je(e,t,n,r){e.srcObject&&e.srcObject!==t&&e.pause(),e.srcObject=null,n===`screen`?e.classList.add(`vidtreo-screen-share`):e.classList.remove(`vidtreo-screen-share`),await new Promise(e=>{setTimeout(()=>e(),100)}),e.srcObject=t;let i=t.getVideoTracks();i.length>0&&!i[0].enabled&&(i[0].enabled=!0),await Ae(e),r.current=!1}function Me(e,t,n){if(!t||!De(t,e))return!1;let r=t.getVideoTracks()[0];return r.enabled||=!0,e.pause(),e.srcObject=t,n&&n(!1),e.play().catch(()=>{}),!0}function Ne(e){let{videoElement:t,currentStream:n,currentSourceType:r,isUpdatingRef:i,setStreamId:a,setSourceType:o,onLoadedChange:s}=e;i.current=!0,a(n.id),o(r),s&&s(!1),je(t,n,r,i).then(()=>{t.readyState>=2&&!t.paused&&s&&s(!0)}).catch(()=>{i.current=!1})}function Pe(e,t,n){let r=0,i=setInterval(()=>{r+=1,(Me(e,t,n)||r>=10)&&clearInterval(i)},100);return()=>{clearInterval(i)}}function Fe({controller:e,stream:t,transitionMessage:n,className:r=``,onLoadedChange:a}){let c=o(null),[l,u]=s(null),[d,f]=s(`camera`),p=o(!1);return i(()=>{let n=c.current;if(!n)return;if(!e){n.pause(),n.srcObject=null,a&&a(!1);return}let r=t||e.getStream(),i=e.getCurrentSourceType();if((r?.id!==l||i!==d)&&r&&!p.current){Ne({videoElement:n,currentStream:r,currentSourceType:i,isUpdatingRef:p,setStreamId:u,setSourceType:f,onLoadedChange:a});return}let o=t||e.getStream();if(!Me(n,o,a))return Pe(n,o,a)},[e,t,l,d,a]),i(()=>{let r=c.current;if(!(r&&e)||n)return;let i=t||e.getStream();i&&r.srcObject===i&&r.paused&&r.readyState>=2&&r.play().catch(()=>{})},[e,t,n]),i(()=>{let e=c.current;if(!e)return;let t=()=>{e.readyState>=2&&!e.paused&&a&&a(!0)},n=()=>{e.readyState>=2&&a&&a(!0)},r=()=>{a&&a(!1)};return e.addEventListener(`loadedmetadata`,t),e.addEventListener(`playing`,n),e.addEventListener(`loadstart`,r),()=>{e.removeEventListener(`loadedmetadata`,t),e.removeEventListener(`playing`,n),e.removeEventListener(`loadstart`,r)}},[a]),b(`video`,{autoPlay:!0,className:r,muted:!0,playsInline:!0,ref:c})}function Ie({className:e=``}){return b(`div`,{className:`vidtreo-video-preview-skeleton ${e}`,children:b(`div`,{className:`vidtreo-skeleton-shimmer`})})}function Le(e,t,n,r){return{showSettingsButton:!e&&r.enableDeviceChange!==!1,showMuteButton:e&&r.enableMute!==!1,showPauseButton:e&&r.enablePause!==!1&&t===`recording`&&!n,showResumeButton:e&&r.enablePause!==!1&&n,showStopButton:e,showSwitchSourceButton:e&&r.enableSourceSwitching!==!1}}function $(e,t){t&&t(e instanceof Error?e:Error(String(e)))}function Re({state:e,isVideoLoaded:t,isRecording:n,controller:r,audioLevel:i,buttonVisibility:a,currentSourceType:o,onStartRecording:s,onStopRecording:c,onSwitchSource:l,onToggleSettings:u,onToggleMute:d,onPause:f,onResume:p,onLoadedChange:m,onDownload:h,translations:g,buttonTranslations:_}){return x(y,{children:[!e.stream&&x(`div`,{className:`vidtreo-start-camera-area`,id:`startCameraArea`,children:[b(`div`,{className:`vidtreo-camera-icon`,children:b(P,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-camera-text`,children:g.initializingCamera}),b(`div`,{className:`vidtreo-camera-hint`,children:g.grantPermissions})]}),e.transitionMessage&&x(`div`,{className:`vidtreo-preview-skeleton`,id:`previewSkeleton`,children:[b(`div`,{className:`vidtreo-skeleton-spinner`}),b(`div`,{className:`vidtreo-skeleton-text`,children:g.switchingDevice})]}),e.stream&&!(t||e.transitionMessage)&&b(Ie,{}),e.stream&&b(Fe,{className:`vidtreo-video-preview`,controller:r,onLoadedChange:m,stream:e.stream,transitionMessage:e.transitionMessage}),e.recordingState===`countdown`&&e.countdown!==null&&b(`div`,{className:`vidtreo-countdown-overlay vidtreo-active`,id:`countdownOverlay`,children:x(`div`,{className:`vidtreo-countdown-content`,children:[b(`div`,{className:`vidtreo-countdown-number`,id:`countdownNumber`,children:e.countdown}),b(`p`,{className:`vidtreo-countdown-text`,children:g.recordingStartsIn})]})}),n&&x(`div`,{className:`vidtreo-rec-indicator-top`,id:`recIndicatorTop`,style:{display:`flex`},children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{children:g.rec})]}),n&&x(`div`,{className:`vidtreo-recording-timer-badge`,id:`recordingTimerRow`,style:{display:`flex`},children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{className:`vidtreo-recording-timer-text`,id:`recordingTimer`,children:e.timer})]}),n&&b(`div`,{className:`vidtreo-audio-level-bars`,id:`audioLevelBars`,style:{display:`flex`},children:b(be,{audioLevel:i,isMuted:e.isMuted})}),e.stream&&b(we,{buttonVisibility:a,currentSourceType:o,isMuted:e.isMuted,onDownload:h,onPause:f,onResume:p,onStartRecording:s,onStopRecording:c,onSwitchSource:l,onToggleMute:d,onToggleSettings:u,recordingState:e.recordingState,translations:_})]})}function ze(e){let t=pe(e.apiKey,e.demo),[n,r]=s(!1),[a,o]=s(!1),c=fe(e.lang||`en`,e.texts||{}),{state:l,actions:u,audioLevel:d,controller:f}=ue({apiKey:t,backendUrl:e.backendUrl,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay,demo:e.demo,nativeCamera:e.nativeCamera,onUploadComplete:e.onUploadComplete,onUploadProgress:e.onUploadProgress,onUploadError:e.onUploadError,onRecordingStart:e.onRecordingStart,onRecordingStop:e.onRecordingStop,onError:e.onError});i(()=>{if(l.stream||!u.startPreview||!l.isInitialized)return;let t=setTimeout(()=>{u.startPreview(`camera`).catch(t=>{$(t,e.onError)})},100);return()=>{clearTimeout(t)}},[l.stream,l.isInitialized,u.startPreview,e.onError]),i(()=>{l.recordingState===`recording`&&n&&r(!1)},[l.recordingState,n]);let p=()=>{u.startRecording(`camera`).catch(t=>{$(t,e.onError)})},m=()=>{u.stopRecording().catch(t=>{$(t,e.onError)})},h=()=>{e.enableDeviceChange!==!1&&r(!n)},g=t=>{u.changeCamera(t).catch(t=>{$(t,e.onError)})},_=t=>{u.changeMic(t).catch(t=>{$(t,e.onError)})},v=()=>{let t=f?.getCurrentSourceType()||`camera`;u.switchSource(t===`camera`?`screen`:`camera`).catch(t=>{$(t,e.onError)})},y=l.recordingState===`recording`||l.isPaused,S=f?.getCurrentSourceType()||`camera`;return x(`div`,{className:`vidtreo-camera-area vidtreo-active`,id:`cameraArea`,children:[b(Se,{children:x(`div`,{className:`vidtreo-preview-container`,children:[Re({state:l,isVideoLoaded:a,isRecording:y,controller:f,audioLevel:d,buttonVisibility:{...Le(y,l.recordingState,l.isPaused,e),showDownloadButton:e.demo&&!y&&l.recordingState===`idle`&&l.recordedBlob!==null},currentSourceType:S,onStartRecording:p,onStopRecording:m,onSwitchSource:v,onToggleSettings:h,onToggleMute:u.toggleMute,onPause:u.pauseRecording,onResume:u.resumeRecording,onLoadedChange:o,onDownload:u.downloadVideo,translations:{initializingCamera:c.initializingCamera,grantPermissions:c.grantPermissions,switchingDevice:c.switchingDevice,recordingStartsIn:c.recordingStartsIn,rec:c.rec},buttonTranslations:{settings:c.settings,record:c.record,stop:c.stop,pause:c.pause,resume:c.resume,mute:c.mute,unmute:c.unmute,switchSource:c.switchSource,download:c.download}}),l.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`finishingProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill vidtreo-progress-indeterminate`,id:`finishingProgressFill`})}),b(`div`,{className:`vidtreo-progress-text`,id:`finishingProgressText`,children:c.finishing})]})}),l.uploadProgress!==null&&!l.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`uploadProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill`,id:`uploadProgressFill`,style:{width:`${Math.round(l.uploadProgress*100)}%`}})}),x(`div`,{className:`vidtreo-progress-text`,id:`uploadProgressText`,children:[c.uploading,` `,Math.round(l.uploadProgress*100),`%`]})]})})]})}),l.transitionMessage&&x(`div`,{className:`vidtreo-source-transition-overlay vidtreo-active`,id:`sourceTransitionOverlay`,children:[b(`div`,{className:`vidtreo-transition-spinner`}),b(`div`,{className:`vidtreo-transition-message`,children:l.transitionMessage})]}),l.stream&&n&&b(Te,{devices:l.devices,onCameraChange:g,onMicChange:_,translations:{settings:c.settings,camera:c.camera,microphone:c.microphone}}),l.error&&b(`div`,{className:`vidtreo-error vidtreo-active`,id:`error`,children:l.error})]})}function Be(e){let t=pe(e.apiKey,e.demo);return e.nativeCamera!==!1&&_()?b(ve,{config:{apiKey:t,backendUrl:e.backendUrl,maxRecordingTime:e.maxRecordingTime,maxFileSize:e.maxFileSize,userMetadata:e.userMetadata,demo:e.demo,lang:e.lang,texts:e.texts,onUploadComplete:e.onUploadComplete,onUploadProgress:e.onUploadProgress,onUploadError:e.onUploadError,onError:e.onError,onTranscodingProgress:e.onTranscodingProgress}}):b(ze,{...e})}function Ve(e){return b(Ce,{lang:e.lang,texts:e.texts,children:b(Be,{...e})})}export{Ve as VidtreoRecorder,Ve as VidtreoRecorderSSR,ue as useVidtreoRecorder};
|
|
1
|
+
(function(){if(typeof document!=='undefined'){const style=document.createElement('style');style.textContent=`:root{--vidtreo-background:0 0% 100%;--vidtreo-foreground:0 0% 3.9%;--vidtreo-card:0 0% 100%;--vidtreo-card-foreground:0 0% 3.9%;--vidtreo-primary:0 0% 9%;--vidtreo-primary-foreground:0 0% 98%;--vidtreo-secondary:0 0% 96.1%;--vidtreo-secondary-foreground:0 0% 9%;--vidtreo-muted:0 0% 96.1%;--vidtreo-muted-foreground:0 0% 45.1%;--vidtreo-accent:0 0% 96.1%;--vidtreo-accent-foreground:0 0% 9%;--vidtreo-destructive:0 84.2% 60.2%;--vidtreo-destructive-foreground:0 0% 98%;--vidtreo-border:0 0% 89.8%;--vidtreo-input:0 0% 89.8%;--vidtreo-ring:0 0% 3.9%;--vidtreo-radius:0.5rem;--vidtreo-preview-bg:0 0% 0%;--vidtreo-z-modal-overlay:9999;--vidtreo-z-settings-panel:200;--vidtreo-z-error-overlay:100;--vidtreo-z-countdown-overlay:20;--vidtreo-z-progress-overlay:20;--vidtreo-z-controls:10}.vidtreo-preview-container{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:visible;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:layout style;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}.vidtreo-preview-container::before{display:none}@media (min-width:768px){.vidtreo-preview-container{aspect-ratio:16 / 9}}.vidtreo-camera-area{width:100%;height:100%;display:none;position:relative;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden;isolation:isolate;will-change:auto}.vidtreo-source-transition-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.7);display:none;align-items:center;justify-content:center;flex-direction:column;border-radius:0;z-index:var(--vidtreo-z-error-overlay);backdrop-filter:blur(4px);transition:opacity 0.3s ease;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:opacity}.vidtreo-source-transition-overlay.vidtreo-active{display:flex;animation:vidtreo-fadeIn 0.2s ease}@keyframes vidtreo-fadeIn{from{opacity:0}to{opacity:1}}.vidtreo-transition-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#667eea;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite;margin-bottom:12px}@keyframes vidtreo-spin{to{transform:rotate(360deg)}}.vidtreo-transition-message{color:white;font-size:14px;font-weight:500;text-align:center}.vidtreo-camera-area.vidtreo-active{display:block}.vidtreo-preview-skeleton{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;border-radius:0;z-index:var(--vidtreo-z-controls);gap:1rem;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#ffffff;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite}.vidtreo-skeleton-text{color:#ffffff;font-size:0.875rem;font-weight:500}.vidtreo-video-preview{width:100%;height:100%;border-radius:0;background:#000;display:block;object-fit:contain;transition:opacity 0.3s ease,transform 0.3s ease;position:absolute;inset:0;transform:translateZ(0);will-change:auto;backface-visibility:hidden}.vidtreo-video-preview-skeleton{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:#000;overflow:hidden;z-index:2;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-shimmer{position:absolute;inset:0;background:linear-gradient( 90deg,hsl(var(--vidtreo-muted)) 0%,hsl(var(--vidtreo-muted) / 0.5) 50%,hsl(var(--vidtreo-muted)) 100% );background-size:200% 100%;animation:vidtreo-shimmer 1.5s ease-in-out infinite}@keyframes vidtreo-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.vidtreo-video-preview-skeleton.vidtreo-hidden{opacity:0;pointer-events:none;transition:opacity 0.3s ease}.vidtreo-video-preview.vidtreo-screen-share{object-fit:cover}.vidtreo-video-preview.vidtreo-transitioning{opacity:0.5;transform:scale(0.98)}.vidtreo-countdown-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.95);display:none;align-items:center;justify-content:center;border-radius:0;z-index:var(--vidtreo-z-countdown-overlay);transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-countdown-overlay.vidtreo-active{display:flex}.vidtreo-countdown-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.vidtreo-countdown-number{font-size:9rem;font-weight:bold;color:#ffffff;animation:vidtreo-zoomIn 0.3s ease}@keyframes vidtreo-zoomIn{from{transform:scale(0.5);opacity:0}to{transform:scale(1);opacity:1}}.vidtreo-countdown-text{font-size:0.875rem;color:#ffffff;margin-top:1rem;font-weight:500}.vidtreo-settings-panel{position:absolute;bottom:4rem;left:50%;margin-left:-47%;background:rgba(0,0,0,0.4);border:none;border-radius:0.75rem;padding:0.625rem;display:none;flex-direction:column;z-index:var(--vidtreo-z-settings-panel);width:90%;overflow:hidden;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-panel.vidtreo-active{display:flex}.vidtreo-settings-content{width:100%;display:flex;flex-direction:column;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-content.vidtreo-slide-right{animation:vidtreo-slideRight 0.3s ease}.vidtreo-settings-content.vidtreo-slide-left{animation:vidtreo-slideLeft 0.3s ease}.vidtreo-settings-content.vidtreo-slide-none{animation:none;will-change:auto}@keyframes vidtreo-slideIn{from{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vidtreo-slideRight{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes vidtreo-slideLeft{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.vidtreo-settings-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;background:none;border:none;color:#ffffff;cursor:pointer;padding:0;width:100%;text-align:left}.vidtreo-settings-back-icon{flex-shrink:0;color:#ffffff}.vidtreo-settings-title{font-size:0.875rem;font-weight:600;margin:0;color:#ffffff}.vidtreo-device-options-container{display:flex;flex-direction:column;gap:0.375rem}.vidtreo-device-option-nav{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;width:100%;gap:1rem;border-radius:0.5rem}.vidtreo-device-option-nav:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-nav-content{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}.vidtreo-device-option-nav-label{font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-device-option-nav-value{display:flex;align-items:center;gap:0.5rem;flex:1;justify-content:flex-end;min-width:0}.vidtreo-device-option-nav-value-text{font-size:0.875rem;color:rgba(255,255,255,0.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}.vidtreo-device-option-nav-chevron{font-size:1.25rem;color:#ffffff;line-height:1}.vidtreo-device-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.vidtreo-device-list::-webkit-scrollbar{width:4px}.vidtreo-device-list::-webkit-scrollbar-track{background:transparent}.vidtreo-device-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:2px}.vidtreo-device-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.3)}.vidtreo-device-option{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;text-align:left;width:100%;gap:0.75rem;border-radius:0.5rem}.vidtreo-device-option:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-check-container{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vidtreo-device-checkmark-placeholder{width:20px;height:20px;flex-shrink:0}.vidtreo-device-checkmark{color:#ffffff;flex-shrink:0}.vidtreo-device-option-label{font-size:0.875rem;color:#ffffff;flex:1}.vidtreo-device-empty{padding:1rem 0;font-size:0.875rem;color:rgba(255,255,255,0.6);text-align:center}.vidtreo-audio-level-bars{position:absolute;bottom:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.125rem;height:1rem;z-index:var(--vidtreo-z-controls);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}@media (min-width:768px){.vidtreo-audio-level-bars{height:1.25rem}}.vidtreo-audio-level-bar{width:0.125rem;border-radius:9999px;background:rgba(255,255,255,0.5);transition:all 0.1s ease;align-self:flex-end}.vidtreo-recording-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%) translateZ(0);z-index:var(--vidtreo-z-controls);contain:layout style;will-change:auto;backface-visibility:hidden}.vidtreo-recording-controls-row{display:flex;align-items:center;justify-content:center;gap:0.5rem;transform:translateZ(0);will-change:auto}.vidtreo-recording-timer-row{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.vidtreo-recording-timer-badge{position:absolute;top:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);z-index:var(--vidtreo-z-controls);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-dot-small{width:0.375rem;height:0.375rem;background:hsl(var(--vidtreo-destructive));border-radius:50%;animation:vidtreo-pulse 1.5s ease-in-out infinite}.vidtreo-recording-timer-text{font-size:0.75rem;font-family:monospace;font-weight:500;color:#ffffff}.vidtreo-control-buttons-row{display:flex;align-items:center;justify-content:center;gap:0.375rem;height:auto;min-height:2rem;transform:translateZ(0);will-change:auto}@media (min-width:768px){.vidtreo-control-buttons-row{min-height:2.25rem}}.vidtreo-control-button{width:2rem;height:2rem;min-height:2rem;max-height:2rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.2s ease;color:#ffffff;padding:0.25rem;margin:0;flex-shrink:0;box-sizing:border-box;vertical-align:top;position:relative;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-control-button::before{content:"";position:absolute;inset:0.25rem;border-radius:9999px;transition:background-color 0.2s ease;z-index:0}.vidtreo-control-button svg{width:22px !important;height:22px !important;color:inherit;flex-shrink:0;position:relative;z-index:1}@media (min-width:768px){.vidtreo-control-button svg{width:24px !important;height:24px !important}}@media (min-width:768px){.vidtreo-control-button{width:2.25rem;height:2.25rem;min-height:2.25rem;max-height:2.25rem}}.vidtreo-control-button:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-control-button:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-control-button.vidtreo-muted::before{background:rgba(0,0,0,0.3)}.vidtreo-control-button.vidtreo-muted:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-record-button{height:2rem;min-height:2rem;max-height:2rem;padding:0 0.75rem;border-radius:9999px;font-weight:500;font-size:0.75rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;display:inline-flex;align-items:center;justify-content:center;gap:0.375rem;transition:background-color 0.2s ease,filter 0.2s ease;width:auto;margin:0;line-height:1;flex-shrink:0;box-sizing:border-box;vertical-align:top;cursor:pointer}@media (min-width:768px){.vidtreo-record-button{height:2.25rem;min-height:2.25rem;max-height:2.25rem;font-size:0.875rem}}.vidtreo-record-button:hover:not(:disabled){filter:brightness(0.85)}#startButton.vidtreo-record-button{animation:vidtreo-record-glow-pulse 2s ease-in-out infinite}@keyframes vidtreo-record-glow-pulse{0%,100%{box-shadow:0 0 8px 2px rgba(239,68,68,0.4),0 0 16px 4px rgba(239,68,68,0.2)}50%{box-shadow:0 0 16px 4px rgba(239,68,68,0.6),0 0 32px 8px rgba(239,68,68,0.3)}}#startButton.vidtreo-record-button:hover:not(:disabled){animation-play-state:paused;box-shadow:0 0 20px 6px rgba(239,68,68,0.7),0 0 40px 10px rgba(239,68,68,0.35)}.vidtreo-rec-indicator-top{position:absolute;top:0.75rem;left:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-rec-indicator-top span{font-size:0.75rem;font-weight:500;color:#ffffff}.vidtreo-start-camera-area{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;border-radius:0;padding:40px;text-align:center;background:#000;transition:all 0.3s ease;cursor:pointer;z-index:1;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-start-camera-area:hover:not(.vidtreo-loading){background:#000}.vidtreo-start-camera-area.vidtreo-loading{cursor:wait;opacity:0.7}.vidtreo-start-camera-area.vidtreo-loading .vidtreo-camera-text{color:#ffffff;opacity:0.7}.vidtreo-camera-icon{font-size:48px;margin-bottom:16px;display:flex;justify-content:center;color:#ffffff}.vidtreo-camera-text{color:#ffffff;font-weight:600;margin-bottom:8px}.vidtreo-camera-hint{color:#ffffff;font-size:12px;opacity:0.8}@keyframes vidtreo-pulse{0%,100%{opacity:1}50%{opacity:0.3}}.vidtreo-progress{margin-top:20px;display:none}.vidtreo-progress.vidtreo-active{display:block}.vidtreo-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.vidtreo-progress-fill{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);width:0%;transition:width 0.3s ease}.vidtreo-progress-text{text-align:center;color:#ffffff;font-size:14px}.vidtreo-error{position:absolute;top:0.75rem;left:50%;transform:translateX(-50%);padding:1rem 1.25rem;background:#dc2626;border:none;border-radius:0.5rem;color:#ffffff;font-size:0.875rem;font-weight:500;text-align:center;z-index:var(--vidtreo-z-error-overlay);display:none;box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);max-width:90%;word-wrap:break-word}.vidtreo-error.vidtreo-active{display:block;animation:vidtreo-error-fade-in-slide-down 0.3s ease-out}@keyframes vidtreo-error-fade-in-slide-down{from{opacity:0;transform:translateX(-50%) translateY(-1rem)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.vidtreo-upload-progress{margin-top:20px;display:none}.vidtreo-upload-progress.vidtreo-active{display:block}.vidtreo-preview-container .vidtreo-upload-progress{margin-top:0}.vidtreo-upload-status{margin-top:20px;padding:16px;border-radius:8px;display:none}.vidtreo-upload-status.vidtreo-active{display:block}.vidtreo-upload-status.vidtreo-success{background:#f0f9ff;border:2px solid #48bb78;color:#22543d}.vidtreo-upload-status.vidtreo-error{background:#fee;border:2px solid #fcc;color:#c33}.vidtreo-upload-status-text{font-size:14px;font-weight:500}.vidtreo-preview-error{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}@media (min-width:768px){.vidtreo-preview-error{aspect-ratio:16 / 9}}.vidtreo-error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:#ffffff;max-width:400px}.vidtreo-error-icon{font-size:3rem;line-height:1}.vidtreo-error-title{font-size:1.25rem;font-weight:600;line-height:1.2}.vidtreo-error-message{font-size:0.875rem;line-height:1.5;opacity:0.9;word-break:break-word}.vidtreo-error-config{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.2);width:100%;text-align:left}.vidtreo-error-config-title{font-size:0.875rem;font-weight:600;margin-bottom:0.75rem;color:#ffffff}.vidtreo-error-config-item{font-size:0.8125rem;line-height:1.6;margin-bottom:0.5rem;color:rgba(255,255,255,0.85)}.vidtreo-error-config-item code{background:rgba(255,255,255,0.15);padding:0.125rem 0.375rem;border-radius:0.25rem;font-family:monospace;font-size:0.75rem;color:#ffffff}.vidtreo-error-retry{margin-top:0.5rem;padding:0.5rem 1rem;border-radius:0.375rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;font-size:0.875rem;font-weight:500;cursor:pointer;transition:filter 0.2s ease}.vidtreo-error-retry:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-error-retry:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-error-overlay{position:absolute;inset:0;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;z-index:var(--vidtreo-z-error-overlay)}.vidtreo-native-camera-container{position:relative;width:100%;aspect-ratio:9 / 16;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}@media (min-width:768px){.vidtreo-native-camera-container{aspect-ratio:16 / 9}}.vidtreo-native-camera-container:has(.vidtreo-native-camera-preview-container){background:transparent}.vidtreo-config-loading-indicator{position:absolute;top:8px;right:8px;z-index:var(--vidtreo-z-controls)}.vidtreo-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:spin 0.6s linear infinite}.vidtreo-native-camera-empty-state{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px}.vidtreo-native-camera-buttons{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.vidtreo-native-camera-process-button,.vidtreo-native-camera-download-button{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:30}.vidtreo-native-camera-process-button .vidtreo-btn,.vidtreo-native-camera-download-button .vidtreo-btn{min-width:200px}.vidtreo-btn{padding:12px 24px;border-radius:var(--vidtreo-radius);font-size:1rem;font-weight:500;cursor:pointer;border:none;transition:all 0.2s}.vidtreo-btn:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-btn-primary{background:hsl(var(--vidtreo-primary));color:hsl(var(--vidtreo-primary-foreground))}.vidtreo-btn-primary:hover:not(:disabled){filter:brightness(0.9)}.vidtreo-btn-secondary{background:hsl(var(--vidtreo-secondary));color:hsl(var(--vidtreo-secondary-foreground));border:1px solid hsl(var(--vidtreo-border))}.vidtreo-btn-secondary:hover:not(:disabled){background:hsl(var(--vidtreo-accent))}.vidtreo-transcoding-progress{width:100%;max-width:400px;padding:16px}.vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-fill{height:100%;background:hsl(var(--vidtreo-primary));transition:width 0.3s ease}.vidtreo-progress-text{margin-top:8px;text-align:center;font-size:0.875rem;color:hsl(var(--vidtreo-foreground))}.vidtreo-native-camera-preview-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.vidtreo-native-camera-preview-image{width:100%;height:100%;object-fit:contain;display:block}.vidtreo-progress-overlay{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);z-index:var(--vidtreo-z-progress-overlay);pointer-events:none}.vidtreo-progress-overlay .vidtreo-transcoding-progress,.vidtreo-progress-overlay .vidtreo-upload-progress{position:relative;width:90%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;background:transparent;pointer-events:auto}.vidtreo-progress-overlay .vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-indeterminate{width:100%;background:linear-gradient( 90deg,transparent 0%,#ffffff 50%,transparent 100% );background-size:200% 100%;animation:vidtreo-progress-indeterminate 1.5s ease-in-out infinite}@keyframes vidtreo-progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}.vidtreo-mobile-web-recorder{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.vidtreo-mobile-landing-container{position:relative;width:100%;aspect-ratio:4 / 3;max-height:100%;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}.vidtreo-mobile-landing-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2rem;text-align:center}.vidtreo-mobile-landing-title{font-size:1.25rem;font-weight:600;color:#ffffff;margin:0;line-height:1.3}.vidtreo-mobile-landing-description{font-size:0.875rem;color:rgba(255,255,255,0.75);margin:0;max-width:280px;line-height:1.5}.vidtreo-mobile-open-camera-btn{display:inline-flex;align-items:center;gap:0.625rem;padding:0.875rem 1.75rem;font-size:1rem;font-weight:600;min-width:200px;justify-content:center;margin-top:0.5rem;border-radius:9999px;transition:all 0.2s ease;animation:vidtreo-btn-glow-pulse 2s ease-in-out infinite}@keyframes vidtreo-btn-glow-pulse{0%,100%{box-shadow:0 0 8px 2px rgba(255,255,255,0.3),0 0 16px 4px rgba(255,255,255,0.15)}50%{box-shadow:0 0 16px 4px rgba(255,255,255,0.5),0 0 32px 8px rgba(255,255,255,0.25)}}.vidtreo-mobile-open-camera-btn:hover:not(:disabled){transform:scale(1.02);animation-play-state:paused;box-shadow:0 0 20px 6px rgba(255,255,255,0.6),0 0 40px 10px rgba(255,255,255,0.3)}.vidtreo-mobile-open-camera-btn:active:not(:disabled){transform:scale(0.98)}.vidtreo-mobile-open-camera-btn:disabled{animation:none;box-shadow:none}.vidtreo-mobile-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;background:#000000;z-index:var(--vidtreo-z-modal-overlay);display:flex;flex-direction:column;animation:vidtreo-modal-fade-in 0.3s ease-out;height:-webkit-fill-available}@keyframes vidtreo-modal-fade-in{from{opacity:0}to{opacity:1}}.vidtreo-mobile-modal-header{position:absolute;top:0;left:0;right:0;padding:0.75rem;padding-top:calc(0.75rem+env(safe-area-inset-top,0px));display:flex;justify-content:center;z-index:var(--vidtreo-z-error-overlay);pointer-events:none}.vidtreo-mobile-modal-close-btn{height:2rem;padding:0 0.75rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.5);color:rgba(255,255,255,0.9);display:flex;align-items:center;justify-content:center;gap:0.375rem;cursor:pointer;transition:all 0.2s ease;pointer-events:auto;backdrop-filter:blur(4px);font-size:0.75rem;font-weight:500}.vidtreo-mobile-modal-close-btn:hover:not(:disabled){background:rgba(0,0,0,0.7)}.vidtreo-mobile-modal-close-btn:disabled{opacity:0.3;cursor:not-allowed}.vidtreo-mobile-modal-content{flex:1;display:flex;flex-direction:column;width:100%;height:100%;position:relative;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.vidtreo-mobile-recorder-content{width:100%;height:100%;display:flex;flex-direction:column;position:relative}.vidtreo-mobile-recorder-content .vidtreo-preview-container{aspect-ratio:unset;height:100%;width:100%;flex:1}.vidtreo-mobile-recorder-content .vidtreo-video-preview{object-fit:cover}.vidtreo-mobile-preview{aspect-ratio:unset !important;height:100% !important;flex:1}.vidtreo-mobile-recorder-content .vidtreo-recording-controls{bottom:calc(24px+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-audio-level-bars{bottom:calc(12px+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-settings-panel{bottom:calc(7rem+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-rec-indicator-top{top:calc(0.75rem+env(safe-area-inset-top,0px));height:2rem;padding:0 0.75rem;contain:layout style}.vidtreo-mobile-recorder-content .vidtreo-recording-timer-badge{top:calc(0.75rem+env(safe-area-inset-top,0px));height:2rem;padding:0 0.75rem;contain:layout style}.vidtreo-mobile-recorder-content .vidtreo-recording-timer-text{font-size:0.875rem;white-space:nowrap;color:#ffffff;min-width:3rem;display:inline-block}.vidtreo-mobile-recorder-content .vidtreo-error{top:calc(3.5rem+env(safe-area-inset-top,0px))}.vidtreo-mobile-recorder-content .vidtreo-control-buttons-row{gap:0.75rem;min-height:4rem}.vidtreo-mobile-recorder-content .vidtreo-control-button{width:4rem;height:4rem;min-height:4rem;max-height:4rem}.vidtreo-mobile-recorder-content .vidtreo-control-button svg{width:1.5rem;height:1.5rem}.vidtreo-mobile-recorder-content .vidtreo-record-button{height:4rem;min-height:4rem;max-height:4rem;padding:0 1.5rem;font-size:1rem;gap:0.5rem}.vidtreo-mobile-recorder-content .vidtreo-record-button svg{width:1.5rem;height:1.5rem}`;document.head.appendChild(style);}})();import*as e from"react";import{Component as t,createContext as n,useCallback as r,useEffect as i,useMemo as a,useRef as o,useState as s}from"react";import{ConfigService as c,DEFAULT_TRANSCODE_CONFIG as l,NativeCameraHandler as u,RecorderController as d,VideoUploadService as f,calculateBarColor as p,extractErrorMessage as m,extractVideoDuration as h,getDefaultConfigForFormat as g,isMobileDevice as _,transcodeVideoForNativeCamera as v}from"@vidtreo/recorder";import{Fragment as y,jsx as b,jsxs as x}from"react/jsx-runtime";const S=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,52H182.42L170,33.34A12,12,0,0,0,160,28H96a12,12,0,0,0-10,5.34L73.57,52H48A28,28,0,0,0,20,80V192a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V80A28,28,0,0,0,208,52Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V80a4,4,0,0,1,4-4H80a12,12,0,0,0,10-5.34L102.42,52h51.15L166,70.66A12,12,0,0,0,176,76h32a4,4,0,0,1,4,4ZM128,84a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,84Zm0,72a24,24,0,1,1,24-24A24,24,0,0,1,128,156Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,64H176L160,40H96L80,64H48A16,16,0,0,0,32,80V192a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V80A16,16,0,0,0,208,64ZM128,168a36,36,0,1,1,36-36A36,36,0,0,1,128,168Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm-44,76a36,36,0,1,1-36-36A36,36,0,0,1,164,132Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,58H179.21L165,36.67A6,6,0,0,0,160,34H96a6,6,0,0,0-5,2.67L76.78,58H48A22,22,0,0,0,26,80V192a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V80A22,22,0,0,0,208,58Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V80A10,10,0,0,1,48,70H80a6,6,0,0,0,5-2.67L99.21,46h57.57L171,67.33A6,6,0,0,0,176,70h32a10,10,0,0,1,10,10ZM128,90a42,42,0,1,0,42,42A42,42,0,0,0,128,90Zm0,72a30,30,0,1,1,30-30A30,30,0,0,1,128,162Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,60H178.13L163.32,37.78A4,4,0,0,0,160,36H96a4,4,0,0,0-3.32,1.78L77.85,60H48A20,20,0,0,0,28,80V192a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V80A20,20,0,0,0,208,60Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V80A12,12,0,0,1,48,68H80a4,4,0,0,0,3.33-1.78L98.13,44h59.72l14.82,22.22A4,4,0,0,0,176,68h32a12,12,0,0,1,12,12ZM128,92a40,40,0,1,0,40,40A40,40,0,0,0,128,92Zm0,72a32,32,0,1,1,32-32A32,32,0,0,1,128,164Z`}))]]),C=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168.49,199.51a12,12,0,0,1-17,17l-80-80a12,12,0,0,1,0-17l80-80a12,12,0,0,1,17,17L97,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M160,48V208L80,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M163.06,40.61a8,8,0,0,0-8.72,1.73l-80,80a8,8,0,0,0,0,11.32l80,80A8,8,0,0,0,168,208V48A8,8,0,0,0,163.06,40.61ZM152,188.69,91.31,128,152,67.31Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,48V208a8,8,0,0,1-13.66,5.66l-80-80a8,8,0,0,1,0-11.32l80-80A8,8,0,0,1,168,48Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M164.24,203.76a6,6,0,1,1-8.48,8.48l-80-80a6,6,0,0,1,0-8.48l80-80a6,6,0,0,1,8.48,8.48L88.49,128Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M162.83,205.17a4,4,0,0,1-5.66,5.66l-80-80a4,4,0,0,1,0-5.66l80-80a4,4,0,1,1,5.66,5.66L85.66,128Z`}))]]),w=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z`}))]]),T=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,128A104,104,0,1,1,128,24,104.13,104.13,0,0,1,232,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Z`}))]]),E=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M192.49,167.51a12,12,0,0,1,0,17l-32,32a12,12,0,0,1-17,0l-32-32a12,12,0,1,1,17-17L140,179V128a12,12,0,0,1,24,0v51l11.51-11.52A12,12,0,0,1,192.49,167.51ZM160,36A92.08,92.08,0,0,0,79,84.37,68,68,0,1,0,72,220H84a12,12,0,0,0,0-24H72a44,44,0,0,1-1.81-87.95A91.7,91.7,0,0,0,68,128a12,12,0,0,0,24,0,68,68,0,0,1,136,0,67.27,67.27,0,0,1-7.25,30.59,12,12,0,1,0,21.42,10.82A91.08,91.08,0,0,0,252,128,92.1,92.1,0,0,0,160,36Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M240,128a80,80,0,0,1-80,80H72A56,56,0,1,1,85.92,97.74l0,.1A80,80,0,0,1,240,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M248,128a87.34,87.34,0,0,1-17.6,52.81,8,8,0,1,1-12.8-9.62A71.34,71.34,0,0,0,232,128a72,72,0,0,0-144,0,8,8,0,0,1-16,0,88,88,0,0,1,3.29-23.88C74.2,104,73.1,104,72,104a48,48,0,0,0,0,96H96a8,8,0,0,1,0,16H72A64,64,0,1,1,81.29,88.68,88,88,0,0,1,248,128Zm-69.66,42.34L160,188.69V128a8,8,0,0,0-16,0v60.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M247.93,124.52C246.11,77.54,207.07,40,160.06,40A88.1,88.1,0,0,0,81.29,88.67h0A87.48,87.48,0,0,0,72,127.73,8.18,8.18,0,0,1,64.57,136,8,8,0,0,1,56,128a103.66,103.66,0,0,1,5.34-32.92,4,4,0,0,0-4.75-5.18A64.09,64.09,0,0,0,8,152c0,35.19,29.75,64,65,64H160A88.09,88.09,0,0,0,247.93,124.52Zm-50.27,25.14-32,32a8,8,0,0,1-11.32,0l-32-32a8,8,0,0,1,11.32-11.32L152,156.69V96a8,8,0,0,1,16,0v60.69l18.34-18.35a8,8,0,0,1,11.32,11.32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M246,128a85.27,85.27,0,0,1-17.2,51.6,6,6,0,1,1-9.6-7.2A74,74,0,1,0,86,128a6,6,0,0,1-12,0,85.54,85.54,0,0,1,3.91-25.64A50.68,50.68,0,0,0,72,102a50,50,0,0,0,0,100H96a6,6,0,0,1,0,12H72A62,62,0,1,1,82.43,90.88,86,86,0,0,1,246,128Zm-66.24,43.76L158,193.51V128a6,6,0,0,0-12,0v65.51l-21.76-21.75a6,6,0,0,0-8.48,8.48l32,32a6,6,0,0,0,8.48,0l32-32a6,6,0,0,0-8.48-8.48Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M248,128a87.34,87.34,0,0,1-17.6,52.81,8,8,0,1,1-12.8-9.62A71.34,71.34,0,0,0,232,128a72,72,0,0,0-144,0,8,8,0,0,1-16,0,88,88,0,0,1,3.29-23.88C74.2,104,73.1,104,72,104a48,48,0,0,0,0,96H96a8,8,0,0,1,0,16H72A64,64,0,1,1,81.29,88.68,88,88,0,0,1,248,128Zm-69.66,42.34L160,188.69V128a8,8,0,0,0-16,0v60.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M244,128a83.28,83.28,0,0,1-16.8,50.4,4,4,0,1,1-6.4-4.8A76,76,0,1,0,84,128a4,4,0,0,1-8,0,83.45,83.45,0,0,1,4.57-27.27A52,52,0,1,0,72,204H96a4,4,0,0,1,0,8H72A60,60,0,1,1,83.61,93.13,84,84,0,0,1,244,128Zm-62.83,45.17L156,198.34V128a4,4,0,0,0-8,0v70.34l-25.17-25.17a4,4,0,0,0-5.66,5.66l32,32a4,4,0,0,0,5.66,0l32-32a4,4,0,0,0-5.66-5.66Z`}))]]),D=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z`}))]]),ee=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,180a52.06,52.06,0,0,0,52-52V64A52,52,0,0,0,76,64v64A52.06,52.06,0,0,0,128,180ZM100,64a28,28,0,0,1,56,0v64a28,28,0,0,1-56,0Zm40,155.22V240a12,12,0,0,1-24,0V219.22A92.14,92.14,0,0,1,36,128a12,12,0,0,1,24,0,68,68,0,0,0,136,0,12,12,0,0,1,24,0A92.14,92.14,0,0,1,140,219.22Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M80,128V64a48,48,0,0,1,96,0v64a48,48,0,0,1-96,0Zm128,0a8,8,0,0,0-16,0,64,64,0,0,1-128,0,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.6A80.11,80.11,0,0,0,208,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,174a46.06,46.06,0,0,0,46-46V64a46,46,0,0,0-92,0v64A46.06,46.06,0,0,0,128,174ZM94,64a34,34,0,0,1,68,0v64a34,34,0,0,1-68,0Zm40,141.75V240a6,6,0,0,1-12,0V205.75A78.09,78.09,0,0,1,50,128a6,6,0,0,1,12,0,66,66,0,0,0,132,0,6,6,0,0,1,12,0A78.09,78.09,0,0,1,134,205.75Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,172a44.05,44.05,0,0,0,44-44V64a44,44,0,0,0-88,0v64A44.05,44.05,0,0,0,128,172ZM92,64a36,36,0,0,1,72,0v64a36,36,0,0,1-72,0Zm40,139.89V240a4,4,0,0,1-8,0V203.89A76.09,76.09,0,0,1,52,128a4,4,0,0,1,8,0,68,68,0,0,0,136,0,4,4,0,0,1,8,0A76.09,76.09,0,0,1,132,203.89Z`}))]]),O=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M56.88,39.93A12,12,0,1,0,39.12,56.07L76,96.64V128a52,52,0,0,0,72.11,48l11.26,12.39A67.34,67.34,0,0,1,128,196a68.07,68.07,0,0,1-68-68,12,12,0,0,0-24,0,92.14,92.14,0,0,0,80,91.22V240a12,12,0,0,0,24,0V219.23a90.39,90.39,0,0,0,35.92-12.68l23.2,25.52a12,12,0,0,0,17.76-16.14ZM128,156a28,28,0,0,1-28-28v-5l29.9,32.89C129.27,156,128.64,156,128,156Zm63-2.42A67.63,67.63,0,0,0,196,128a12,12,0,0,1,24,0,91.48,91.48,0,0,1-6.74,34.61,12,12,0,0,1-22.23-9ZM85.7,33.75A52,52,0,0,1,180,64v56.54a12,12,0,0,1-24,0V64a28,28,0,0,0-50.79-16.28,12,12,0,0,1-19.51-14Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M213.38,229.92a8,8,0,0,1-11.3-.54l-30.92-34A78.83,78.83,0,0,1,136,207.59V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64.07,64.07,0,0,0,64,64,63.41,63.41,0,0,0,32.21-8.68l-11.1-12.2A48,48,0,0,1,80,128V95.09L42.08,53.38A8,8,0,0,1,53.92,42.62l160,176A8,8,0,0,1,213.38,229.92Zm-24.19-63.13a7.88,7.88,0,0,0,3.51.82,8,8,0,0,0,7.19-4.49A79.16,79.16,0,0,0,208,128a8,8,0,0,0-16,0,63.32,63.32,0,0,1-6.48,28.09A8,8,0,0,0,189.19,166.79Zm-27.33-29.22A8,8,0,0,0,175.74,133a49.49,49.49,0,0,0,.26-5V64A48,48,0,0,0,84,44.87a8,8,0,0,0,1.41,8.57Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M212.44,220,52.44,44A6,6,0,0,0,43.56,52L82,94.32V128a46,46,0,0,0,67.56,40.64l13.75,15.12A65.26,65.26,0,0,1,128,194a66.08,66.08,0,0,1-66-66,6,6,0,0,0-12,0,78.09,78.09,0,0,0,72,77.75V240a6,6,0,0,0,12,0V205.77a76.93,76.93,0,0,0,37.48-13L203.56,228a6,6,0,0,0,8.88-8.08ZM128,162a34,34,0,0,1-34-34V107.52l47.12,51.84A33.82,33.82,0,0,1,128,162Zm59.32-5A65.38,65.38,0,0,0,194,128a6,6,0,0,1,12,0,77.33,77.33,0,0,1-7.9,34.25A6,6,0,1,1,187.32,157ZM85.8,45.67A46,46,0,0,1,174,64v64a45.17,45.17,0,0,1-.25,4.81,6,6,0,0,1-6,5.38q-.31,0-.63,0a6,6,0,0,1-5.34-6.59A35.41,35.41,0,0,0,162,128V64A34,34,0,0,0,96.8,50.45a6,6,0,0,1-11-4.78Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M211,221.31,51,45.31A4,4,0,0,0,45,50.69L84,93.55V128a44,44,0,0,0,66,38.12l16.38,18A67.21,67.21,0,0,1,128,196a68.07,68.07,0,0,1-68-68,4,4,0,0,0-8,0,76.09,76.09,0,0,0,72,75.89V240a4,4,0,0,0,8,0V203.89a75.1,75.1,0,0,0,39.79-13.77L205,226.69a4,4,0,1,0,5.92-5.38ZM128,164a36,36,0,0,1-36-36V102.35L144.43,160A35.83,35.83,0,0,1,128,164Zm61.12-6.15A67.44,67.44,0,0,0,196,128a4,4,0,0,1,8,0,75.28,75.28,0,0,1-7.7,33.37,4,4,0,0,1-7.18-3.52ZM87.63,46.46A44,44,0,0,1,172,64v64a44.2,44.2,0,0,1-.24,4.61,4,4,0,0,1-4,3.58l-.42,0a4,4,0,0,1-3.57-4.39A36.67,36.67,0,0,0,164,128V64A36,36,0,0,0,95,49.66a4,4,0,0,1-7.34-3.2Z`}))]]),k=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,36H48A28,28,0,0,0,20,64V176a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V64A28,28,0,0,0,208,36Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Zm-40,52a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,228Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,64V176a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64A16,16,0,0,1,48,48H208A16,16,0,0,1,224,64Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232,64V176a24,24,0,0,1-24,24H48a24,24,0,0,1-24-24V64A24,24,0,0,1,48,40H208A24,24,0,0,1,232,64ZM160,216H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,42H48A22,22,0,0,0,26,64V176a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V64A22,22,0,0,0,208,42Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V64A10,10,0,0,1,48,54H208a10,10,0,0,1,10,10Zm-52,48a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,224Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,44H48A20,20,0,0,0,28,64V176a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V64A20,20,0,0,0,208,44Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V64A12,12,0,0,1,48,52H208a12,12,0,0,1,12,12Zm-56,48a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,224Z`}))]]),te=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,28H160a20,20,0,0,0-20,20V208a20,20,0,0,0,20,20h40a20,20,0,0,0,20-20V48A20,20,0,0,0,200,28Zm-4,176H164V52h32ZM96,28H56A20,20,0,0,0,36,48V208a20,20,0,0,0,20,20H96a20,20,0,0,0,20-20V48A20,20,0,0,0,96,28ZM92,204H60V52H92Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,48V208a8,8,0,0,1-8,8H160a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8h40A8,8,0,0,1,208,48ZM96,40H56a8,8,0,0,0-8,8V208a8,8,0,0,0,8,8H96a8,8,0,0,0,8-8V48A8,8,0,0,0,96,40Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M200,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h40a16,16,0,0,0,16-16V48A16,16,0,0,0,200,32Zm0,176H160V48h40ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Zm0,176H56V48H96Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,48V208a16,16,0,0,1-16,16H160a16,16,0,0,1-16-16V48a16,16,0,0,1,16-16h40A16,16,0,0,1,216,48ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,34H160a14,14,0,0,0-14,14V208a14,14,0,0,0,14,14h40a14,14,0,0,0,14-14V48A14,14,0,0,0,200,34Zm2,174a2,2,0,0,1-2,2H160a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2h40a2,2,0,0,1,2,2ZM96,34H56A14,14,0,0,0,42,48V208a14,14,0,0,0,14,14H96a14,14,0,0,0,14-14V48A14,14,0,0,0,96,34Zm2,174a2,2,0,0,1-2,2H56a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H96a2,2,0,0,1,2,2Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,32H160a16,16,0,0,0-16,16V208a16,16,0,0,0,16,16h40a16,16,0,0,0,16-16V48A16,16,0,0,0,200,32Zm0,176H160V48h40ZM96,32H56A16,16,0,0,0,40,48V208a16,16,0,0,0,16,16H96a16,16,0,0,0,16-16V48A16,16,0,0,0,96,32Zm0,176H56V48H96Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,36H160a12,12,0,0,0-12,12V208a12,12,0,0,0,12,12h40a12,12,0,0,0,12-12V48A12,12,0,0,0,200,36Zm4,172a4,4,0,0,1-4,4H160a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4h40a4,4,0,0,1,4,4ZM96,36H56A12,12,0,0,0,44,48V208a12,12,0,0,0,12,12H96a12,12,0,0,0,12-12V48A12,12,0,0,0,96,36Zm4,172a4,4,0,0,1-4,4H56a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H96a4,4,0,0,1,4,4Z`}))]]),ne=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M228.23,134.69,84.15,222.81A8,8,0,0,1,72,216.12V39.88a8,8,0,0,1,12.15-6.69l144.08,88.12A7.82,7.82,0,0,1,228.23,134.69Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z`}))]]),A=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,176H52V52H204Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,48V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H208A8,8,0,0,1,216,48Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,48V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H208A16,16,0,0,1,224,48Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,34H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34Zm2,174a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36Zm4,172a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Z`}))]]),j=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V167.57l24.94,18.14A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM188,180H36V76H188Zm44-27.57-20-14.54V118.11l20-14.54Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M192,72V184a16,16,0,0,1-16,16H32a16,16,0,0,1-16-16V72A16,16,0,0,1,32,56H176A16,16,0,0,1,192,72Zm58,.25a8.23,8.23,0,0,0-6.63,1.22L209.78,95.86A4,4,0,0,0,208,99.19v57.62a4,4,0,0,0,1.78,3.33l33.78,22.52a8,8,0,0,0,8.58.19,8.33,8.33,0,0,0,3.86-7.17V80A8,8,0,0,0,250,72.25Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V155.21L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM194,184a2,2,0,0,1-2,2H32a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H192a2,2,0,0,1,2,2Zm48-19.21-36-24V115.21l36-24Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V151.47l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM196,184a4,4,0,0,1-4,4H32a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H192a4,4,0,0,1,4,4Zm48-15.47-40-26.67V114.14l40-26.67Z`}))]]),re=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-8,56a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm8,104a12,12,0,1,1,12-12A12,12,0,0,1,128,184Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Zm-6-82V80a6,6,0,0,1,12,0v56a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,172Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm-8-80V80a8,8,0,0,1,16,0v56a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,172Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Zm-4-84V80a4,4,0,0,1,8,0v56a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,172Z`}))]]),ie=new Map([[`bold`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z`}))],[`duotone`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z`,opacity:`0.2`}),e.createElement(`path`,{d:`M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`fill`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`light`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z`}))],[`regular`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z`}))],[`thin`,e.createElement(e.Fragment,null,e.createElement(`path`,{d:`M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z`}))]]),ae=n({color:`currentColor`,size:`1em`,weight:`regular`,mirrored:!1}),M=e.forwardRef((t,n)=>{let{alt:r,color:i,size:a,weight:o,mirrored:s,children:c,weights:l,...u}=t,{color:d=`currentColor`,size:f,weight:p=`regular`,mirrored:m=!1,...h}=e.useContext(ae);return e.createElement(`svg`,{ref:n,xmlns:`http://www.w3.org/2000/svg`,width:a??f,height:a??f,fill:i??d,viewBox:`0 0 256 256`,transform:s||m?`scale(-1, 1)`:void 0,...h,...u},!!r&&e.createElement(`title`,null,r),c,l.get(o??p))});M.displayName=`IconBase`;const N=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:S}));N.displayName=`CameraIcon`;const P=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:C}));P.displayName=`CaretLeftIcon`;const F=P,I=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:w}));I.displayName=`CheckIcon`;const L=I,R=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:T}));R.displayName=`CircleIcon`;const z=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:E}));z.displayName=`CloudArrowDownIcon`;const oe=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:D}));oe.displayName=`GearIcon`;const B=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:ee}));B.displayName=`MicrophoneIcon`;const V=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:O}));V.displayName=`MicrophoneSlashIcon`;const H=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:k}));H.displayName=`MonitorIcon`;const U=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:te}));U.displayName=`PauseIcon`;const W=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:ne}));W.displayName=`PlayIcon`;const se=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:A}));se.displayName=`SquareIcon`;const ce=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:j}));ce.displayName=`VideoCameraIcon`;const G=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:re}));G.displayName=`WarningCircleIcon`;const K=e.forwardRef((t,n)=>e.createElement(M,{ref:n,...t,weights:ie}));K.displayName=`XIcon`;const q=`https://core.vidtreo.com`;var le=class{constructor(e){if(this.proxyEndpoint=e.proxyEndpoint,this.proxyEndpoint)throw Error(`Proxy mode not yet implemented`);this.service=new f}uploadVideo(e,t){if(this.proxyEndpoint)throw Error(`Proxy mode not yet implemented`);return this.service.uploadVideo(e,t)}};const J=/^https?:\/\//i;function Y(e){return e?J.test(e)?e:`https://${e}`:q}function ue(e,t){let n={apiKey:t,backendUrl:Y(e.backendUrl)};return e.demo!==void 0&&(n.demo=e.demo),e.countdownDuration!==void 0&&(n.countdownDuration=e.countdownDuration),e.maxRecordingTime!==void 0&&(n.maxRecordingTime=e.maxRecordingTime),e.userMetadata&&(n.userMetadata=e.userMetadata),e.enableSourceSwitching!==void 0&&(n.enableSourceSwitching=e.enableSourceSwitching),e.enableMute!==void 0&&(n.enableMute=e.enableMute),e.enablePause!==void 0&&(n.enablePause=e.enablePause),e.enableDeviceChange!==void 0&&(n.enableDeviceChange=e.enableDeviceChange),e.enableTabVisibilityOverlay!==void 0&&(n.enableTabVisibilityOverlay=e.enableTabVisibilityOverlay),n}const X=new Map;function de(e,t){return`${e}:${t}`}function Z(e){let[t,n]=s(`idle`),[c,l]=s(null),[u,f]=s(!1),[p,_]=s(!1),[v,y]=s(null),[b,x]=s(null),[S,C]=s(``),[w,T]=s(!1),[E,D]=s(null),[ee,O]=s(0),[k,te]=s(null),[ne,A]=s(!1),[j,re]=s(null),[ie,ae]=s({cameras:[],microphones:[],selectedCamera:null,selectedMic:null}),M=o(null),N=o(null),P=o(!1),F=o(!1),I=o(e),L=o(!1);I.current=e;let R=r(e=>{let t=m(e);y(t),I.current.onError&&I.current.onError(e instanceof Error?e:Error(t))},[]),z=r(()=>M.current?M.current.getAudioStreamForAnalysis():null,[]),oe=r(e=>!(!e||e.getAudioTracks().length===0),[]),B=r(async e=>{M.current&&(M.current.stopAudioLevelTracking(),await M.current.startAudioLevelTracking(e,{onLevelUpdate:(e,t)=>{O(e),f(t)}}))},[]),V=r(async(e=5,t=50)=>{for(let n=0;n<e;n+=1){let r=z();if(r)return r;n<e-1&&await new Promise(e=>{setTimeout(e,t)})}return z()},[z]),H=r(async(e,t=!1)=>{if(!M.current)return;let n=M.current.isRecording(),r=null;n&&t?(r=z(),r||=await V()):e&&(r=e),oe(r)&&r&&await B(r)},[z,oe,B,V]),U=r(async()=>{if(!(M.current&&c))return;let e=await M.current.getDeviceManager().getAvailableDevices(),t=M.current.getDeviceManager();ae({cameras:e.videoinput,microphones:e.audioinput,selectedCamera:t.getSelectedCameraDeviceId(),selectedMic:t.getSelectedMicDeviceId()})},[c]);i(()=>{U()},[U]),i(()=>{M.current&&c&&M.current.getStream()===c&&(f(M.current.getIsMuted()),_(M.current.isPaused()))},[c]);let W=r(async e=>{if(L.current)return{recordingId:``,uploadUrl:``,blob:e};L.current=!0;try{if(I.current.demo)return re(e),{recordingId:``,uploadUrl:``,blob:e};if(!N.current)throw Error(`Upload service not initialized`);T(!0);let t=await h(e),n=`recording-${Date.now()}.mp4`,r=I.current.onUploadProgress,i=I.current.backendUrl||q;return await N.current.uploadVideo(e,{apiKey:I.current.apiKey,backendUrl:i,filename:n,duration:t,userMetadata:I.current.userMetadata,onProgress:r?e=>{T(!1),D(e),r(e)}:e=>{T(!1),D(e)}}).then(t=>(T(!1),D(null),I.current.onUploadComplete&&I.current.onUploadComplete({recordingId:t.videoId,uploadUrl:t.uploadUrl}),{recordingId:t.videoId,uploadUrl:t.uploadUrl,blob:e})).catch(e=>{T(!1),D(null);let t=e instanceof Error?e:Error(String(e));throw I.current.onUploadError&&I.current.onUploadError(t),t})}finally{L.current=!1}},[]),se=r(e=>({onStateChange:e=>{n(e),e===`recording`&&I.current.onRecordingStart&&I.current.onRecordingStart(),e===`recording`&&setTimeout(()=>{H(null,!0).catch(()=>{})},100),e===`idle`&&(L.current=!1,I.current.onRecordingStop&&I.current.onRecordingStop())},onCountdownUpdate:(e,t)=>{x(t),n(e)},onTimerUpdate:e=>{C(e)},onError:R,onRecordingComplete:e=>{x(null),W(e).catch(e=>{R(e)})},onClearUploadStatus:()=>{D(null)},onStopAudioTracking:()=>{M.current&&M.current.stopAudioLevelTracking()},onGetConfig:()=>{if(!M.current)throw Error(`Controller not initialized`);return e?Promise.resolve(g(`mp4`)):M.current.getConfig()}}),[R,H,W]),ce=r(()=>({onProgress:e=>{D(e),I.current.onUploadProgress&&I.current.onUploadProgress(e)},onSuccess:e=>{D(null),I.current.onUploadComplete&&I.current.onUploadComplete({recordingId:e.videoId,uploadUrl:e.uploadUrl})},onError:e=>{D(null),I.current.onUploadError&&I.current.onUploadError(e)},onClearStatus:()=>{D(null)}}),[]),G=r(()=>({onStreamStart:async e=>{l(e),y(null),M.current?.isRecording()||await H(e,!1).catch(()=>{})},onStreamStop:()=>{M.current&&M.current.stopAudioLevelTracking(),l(null),O(0)},onError:e=>{R(e)}}),[R,H]),K=r(()=>({onSourceChange:async e=>{if(M.current?.isRecording()){if(e===`camera`){let e=M.current?.getStream();if(!e||e.getAudioTracks().length===0)return;await H(e,!1).catch(()=>{});return}await H(null,!0).catch(()=>{})}},onPreviewUpdate:async e=>{let t=M.current?.isRecording();l(e),t||await H(e,!1).catch(()=>{})},onError:R,onTransitionStart:e=>{te(e)},onTransitionEnd:()=>{te(null)}}),[R,H]);i(()=>{let t=e.backendUrl||q,n=de(e.apiKey,t),r=I.current.apiKey!==e.apiKey,i=(I.current.backendUrl||q)!==t;if(!(r||i)&&P.current&&M.current)return;let a=X.get(n);if(a){M.current=a.controller,a.promise.then(()=>{P.current=!0,F.current=!1,A(!0)}).catch(e=>{R(e),P.current=!1,F.current=!1,A(!1),X.delete(n)});return}if(F.current||M.current&&!r&&!i)return;F.current=!0,M.current&&=(M.current.cleanup(),M.current.getStreamManager().destroy(),null),P.current=!1,I.current=e;let o=ue(e.demo?{demo:!0,backendUrl:void 0,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay}:{demo:!1,apiKey:e.apiKey,backendUrl:t,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay},e.demo?``:e.apiKey);e.demo||(N.current=new le({apiKey:e.apiKey,backendUrl:t,proxyEndpoint:e.proxyEndpoint}));let s=new d({recording:se(e.demo??!1),upload:ce(),stream:G(),sourceSwitch:K()});M.current=s;let c=s.initialize(o).then(()=>{P.current=!0,F.current=!1,A(!0)});return X.set(n,{promise:c,controller:s}),c.catch(e=>{R(e),P.current=!1,F.current=!1,A(!1),X.delete(n)}),()=>{let e=X.get(n);e&&e.controller===M.current&&X.delete(n),M.current&&=(M.current.cleanup(),M.current.getStreamManager().destroy(),null),P.current=!1,F.current=!1}},[e.apiKey,e.backendUrl||q,e.countdownDuration,e.maxRecordingTime,e.userMetadata,e.enableSourceSwitching,e.enableMute,e.enablePause,e.enableDeviceChange,e.proxyEndpoint,e.demo,H,R,se,ce,G,K]);let J=r(async(e=`camera`)=>{if(!(M.current&&P.current))throw Error(`Controller not initialized`);await M.current.startStream();let t=M.current.getStream();t&&(l(t),y(null),M.current.isRecording()||await H(t,!1).catch(()=>{})),e===`screen`&&await M.current.switchSource(`screen`)},[H]),Y=r(()=>{if(!M.current)throw Error(`Controller not initialized`);return M.current},[]),Z=r(async e=>{Y().isActive()||await J(e)},[Y,J]),fe=r(async e=>{let t=Y();e!==t.getCurrentSourceType()&&await t.switchSource(e)},[Y]),Q=r(e=>e===``||e===`default`?null:e,[]),pe=a(()=>({startRecording:async(e=`camera`)=>{let t=Y();I.current.demo&&re(null),await t.ensureConfigReady(),await Z(e),await fe(e),await t.startRecording()},stopRecording:async()=>{if(!M.current)throw Error(`Controller not initialized`);return W(await M.current.stopRecording())},pauseRecording:()=>{M.current&&(M.current.pauseRecording(),_(M.current.isPaused()))},resumeRecording:()=>{M.current&&(M.current.resumeRecording(),_(M.current.isPaused()))},toggleMute:()=>{M.current&&(M.current.toggleMute(),f(M.current.getIsMuted()))},switchSource:async e=>{if(!M.current)throw Error(`Controller not initialized`);await M.current.switchSource(e)},changeCamera:async e=>{if(!M.current)throw Error(`Controller not initialized`);let t=Q(e);M.current.setCameraDevice(t);let n=await M.current.switchVideoDevice(t);l(n),y(null),M.current.isRecording()||await H(n,!1);let r=M.current.getDeviceManager();ae(e=>({...e,selectedCamera:r.getSelectedCameraDeviceId()}))},changeMic:async e=>{if(!M.current)throw Error(`Controller not initialized`);let t=Q(e);M.current.setMicDevice(t);let n=await M.current.switchAudioDevice(t);l(n),y(null),M.current.isRecording()||await H(n,!1);let r=M.current.getDeviceManager();ae(e=>({...e,selectedMic:r.getSelectedMicDeviceId()}))},startPreview:J,downloadVideo:()=>{if(!j)return;let e=URL.createObjectURL(j),t=document.createElement(`a`);t.href=e,t.download=`recording-${Date.now()}.mp4`,document.body.appendChild(t),t.click(),document.body.removeChild(t),URL.revokeObjectURL(e)},stopPreview:()=>{if(!M.current)return;M.current.stopAudioLevelTracking();let e=M.current.getStream();if(e)for(let t of e.getTracks())t.stop();M.current.getStreamManager().stopStream(),l(null),O(0),y(null)},cleanup:()=>{M.current&&=(M.current.cleanup(),M.current.getStreamManager().destroy(),null),P.current=!1,A(!1),re(null)}}),[Q,H,J,j,W,Y,Z,fe]);return{state:a(()=>({recordingState:t,stream:c,isMuted:u,isPaused:p,error:v,countdown:b,timer:S,isFinishing:w,uploadProgress:E,transitionMessage:k,isInitialized:ne,recordedBlob:j,devices:ie}),[t,c,u,p,v,b,S,w,E,k,ne,j,ie]),actions:pe,audioLevel:ee,controller:M.current}}const fe={en:{initializingCamera:`Initializing camera...`,grantPermissions:`Grant camera and microphone permissions when prompted`,switchingDevice:`Switching device...`,recordingStartsIn:`Recording starts in...`,switchingSource:`Switching source...`,rec:`REC`,settings:`Settings`,record:`Record`,stop:`Stop`,pause:`Pause`,resume:`Resume`,mute:`Mute`,unmute:`Unmute`,switchSource:`Switch Source`,camera:`Camera`,microphone:`Microphone`,finishing:`Finishing...`,uploading:`Uploading...`,userInAnotherTab:`User in another tab`,download:`Download`,nativeCameraSelectVideo:`Select Video from Gallery`,nativeCameraRecordVideo:`Record with Camera`,nativeCameraProcessing:`Processing video...`,nativeCameraConfigLoading:`Loading settings...`,errorTitle:`Configuration Error`,errorApiKeyRequired:`API Key is required. Provide it as a prop or set VIDTREO_API_KEY environment variable.`,errorGeneric:`An error occurred while initializing the recorder`,mobileOpenCamera:`Open Camera`,mobileOpenCameraTitle:`Record a Video`,mobileOpenCameraDescription:`Tap the button below to start recording`,mobileCloseCamera:`Close`,mobilePermissionDenied:`Camera Access Denied`,mobilePermissionDeniedDescription:`Please allow camera access in your browser settings to record video.`},es:{initializingCamera:`Inicializando cámara...`,grantPermissions:`Otorga permisos de cámara y micrófono cuando se solicite`,switchingDevice:`Cambiando dispositivo...`,recordingStartsIn:`La grabación comienza en...`,switchingSource:`Cambiando fuente...`,rec:`GRAB`,settings:`Configuración`,record:`Grabar`,stop:`Detener`,pause:`Pausar`,resume:`Reanudar`,mute:`Silenciar`,unmute:`Activar sonido`,switchSource:`Cambiar Fuente`,camera:`Cámara`,microphone:`Micrófono`,finishing:`Finalizando...`,uploading:`Subiendo...`,userInAnotherTab:`Usuario en otra pestaña`,download:`Descargar`,nativeCameraSelectVideo:`Seleccionar Video de la Galería`,nativeCameraRecordVideo:`Grabar con Cámara`,nativeCameraProcessing:`Procesando video...`,nativeCameraConfigLoading:`Cargando configuración...`,errorTitle:`Error de Configuración`,errorApiKeyRequired:`Se requiere una API Key. Proporciónala como prop o configura la variable de entorno VIDTREO_API_KEY.`,errorGeneric:`Ocurrió un error al inicializar la grabadora`,mobileOpenCamera:`Abrir Cámara`,mobileOpenCameraTitle:`Grabar un Video`,mobileOpenCameraDescription:`Toca el botón para comenzar a grabar`,mobileCloseCamera:`Cerrar`,mobilePermissionDenied:`Acceso a Cámara Denegado`,mobilePermissionDeniedDescription:`Por favor permite el acceso a la cámara en la configuración de tu navegador para grabar video.`}};function Q(e=`en`,t={}){return{...fe[e]||fe.en,...t}}function pe(e,t,n,r){return{showSettingsButton:!e&&r.enableDeviceChange!==!1,showMuteButton:e&&r.enableMute!==!1,showPauseButton:e&&r.enablePause!==!1&&t===`recording`&&!n,showResumeButton:e&&r.enablePause!==!1&&n,showStopButton:e,showSwitchSourceButton:e&&r.enableSourceSwitching!==!1}}function me(e,t){if(t)return``;if(e)return e;if(typeof process<`u`&&process.env&&typeof process.env.VIDTREO_API_KEY==`string`)return process.env.VIDTREO_API_KEY;throw Error(`apiKey is required. Provide it as a prop or set VIDTREO_API_KEY environment variable.`)}function he(e){let[t,n]=s(!1),a=o(!1),c=o(!1),l=Z(e),{state:u,actions:d}=l,f=u.recordingState===`recording`,p=u.recordingState===`countdown`,m=u.isFinishing,h=!(f||p||m),g=r(()=>{n(!0)},[]),_=r(()=>{h&&(d.stopPreview(),n(!1),a.current=!1)},[h,d]);return i(()=>{t&&(a.current||u.isInitialized&&(a.current=!0,d.startPreview(`camera`).catch(()=>{})))},[t,u.isInitialized,d]),i(()=>{if(t)return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=``}},[t]),i(()=>{if(!t)return;let e=c.current,r=u.uploadProgress!==null;c.current=r,e&&!r&&!m&&(d.stopPreview(),n(!1),a.current=!1)},[t,u.uploadProgress,m,d]),{...l,isModalOpen:t,openModal:g,closeModal:_,canCloseModal:h}}const ge=.7;function _e({audioLevel:e,isMuted:t}){return b(y,{children:Array.from({length:15},(n,r)=>{let i=e>=(r+1)/15*100&&!t,a=`15%`,o=``,s=`1`;if(i){a=`${30+r/15*70}%`;let e=r/15,t=ge+r/15*(1-ge);o=p(e),s=String(t)}let c=`audio-bar-${r}`;return b(`div`,{className:`vidtreo-audio-level-bar`,style:{height:a,backgroundColor:o,opacity:s}},c)})})}function ve({error:e,lang:t,texts:n}){let r=Q(t,n),i=e?.message.includes(`apiKey is required`);return b(`div`,{className:`vidtreo-preview-container`,children:b(`div`,{className:`vidtreo-error-overlay`,children:x(`div`,{className:`vidtreo-error-content`,children:[b(`div`,{className:`vidtreo-error-icon`,children:b(G,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-error-title`,children:r.errorTitle}),!i&&b(`div`,{className:`vidtreo-error-message`,children:e?.message||r.errorGeneric}),i&&x(`div`,{className:`vidtreo-error-config`,children:[b(`div`,{className:`vidtreo-error-config-title`,children:`Configuration Options:`}),x(`div`,{className:`vidtreo-error-config-item`,children:[b(`code`,{children:`apiKey`}),` prop: Pass the API key as a prop to the component`]}),x(`div`,{className:`vidtreo-error-config-item`,children:[b(`code`,{children:`VIDTREO_API_KEY`}),` environment variable: Set this in your environment`]})]})]})})})}var ye=class extends t{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError?this.props.fallback?this.props.fallback(this.state.error):b(`div`,{className:`vidtreo-preview-error`,children:x(`div`,{className:`vidtreo-error-content`,children:[b(`div`,{className:`vidtreo-error-icon`,children:b(G,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-error-title`,children:`Preview Error`}),b(`div`,{className:`vidtreo-error-message`,children:this.state.error?.message||`An error occurred while loading the preview`}),b(`button`,{className:`vidtreo-error-retry`,onClick:()=>this.setState({hasError:!1,error:null}),type:`button`,children:`Retry`})]})}):this.props.children}},be=class extends t{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError?this.props.fallback?this.props.fallback(this.state.error):b(ve,{error:this.state.error,lang:this.props.lang,texts:this.props.texts}):this.props.children}};function xe({buttonVisibility:e,recordingState:t,isMuted:n,currentSourceType:r,onToggleSettings:i,onStartRecording:a,onStopRecording:o,onToggleMute:s,onPause:c,onResume:l,onSwitchSource:u,onDownload:d,translations:f={settings:`Settings`,record:`Record`,stop:`Stop`,pause:`Pause`,resume:`Resume`,mute:`Mute`,unmute:`Unmute`,switchSource:`Switch Source`,download:`Download`}}){return b(`div`,{className:`vidtreo-recording-controls`,children:b(`div`,{className:`vidtreo-recording-controls-row`,children:x(`div`,{className:`vidtreo-control-buttons-row`,children:[e.showSettingsButton&&b(`button`,{className:`vidtreo-control-button`,id:`settingsButton`,onClick:i,title:f.settings,type:`button`,children:b(oe,{height:20,weight:`fill`,width:20})}),t===`idle`&&x(`button`,{className:`vidtreo-record-button`,id:`startButton`,onClick:a,type:`button`,children:[b(R,{fill:`currentColor`,height:24,style:{marginRight:`0.375rem`},weight:`fill`,width:24}),f.record]}),e.showMuteButton&&b(`button`,{className:`vidtreo-control-button ${n?`vidtreo-muted`:``}`,id:`muteButton`,onClick:s,title:n?f.unmute:f.mute,type:`button`,children:b(n?V:B,{height:24,weight:`fill`,width:24})}),e.showPauseButton&&b(`button`,{className:`vidtreo-control-button`,id:`pauseButton`,onClick:c,title:f.pause,type:`button`,children:b(U,{height:24,weight:`fill`,width:24})}),e.showResumeButton&&b(`button`,{className:`vidtreo-control-button`,id:`resumeButton`,onClick:l,title:f.resume,type:`button`,children:b(W,{height:24,weight:`fill`,width:24})}),e.showStopButton&&x(`button`,{className:`vidtreo-record-button`,id:`stopButton`,onClick:o,type:`button`,children:[b(se,{fill:`currentColor`,height:24,style:{marginRight:`0.375rem`},weight:`fill`,width:24}),f.stop]}),e.showDownloadButton&&d&&b(`button`,{className:`vidtreo-control-button`,id:`downloadButton`,onClick:d,title:f.download,type:`button`,children:b(z,{height:24,weight:`fill`,width:24})}),e.showSwitchSourceButton&&b(`button`,{className:`vidtreo-control-button`,id:`switchSourceButton`,onClick:u,title:f.switchSource,type:`button`,children:b(r===`camera`?H:N,{height:24,weight:`fill`,width:24})})]})})})}function Se({devices:e,onCameraChange:t,onMicChange:n,translations:r={settings:`Settings`,camera:`Camera`,microphone:`Microphone`}}){let[a,o]=s(`main`),[c,l]=s(`none`),u=e=>{l(`right`),o(e)},d=()=>{l(`left`),o(`main`)};i(()=>{if(c!==`none`){let e=setTimeout(()=>{l(`none`)},300);return()=>{clearTimeout(e)}}},[c]);let f=e.cameras.filter(e=>e.deviceId&&e.deviceId.trim()!==``),p=e.microphones.filter(e=>e.deviceId&&e.deviceId.trim()!==``),m=f.find(t=>t.deviceId===e.selectedCamera)?.label||f[0]?.label||r.camera,h=p.find(t=>t.deviceId===e.selectedMic)?.label||p[0]?.label||r.microphone,g=(e,r)=>{r===`camera`?t(e):n(e),d()};return a===`camera`?b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:x(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:[x(`button`,{className:`vidtreo-settings-header`,onClick:d,type:`button`,children:[b(F,{className:`vidtreo-settings-back-icon`,height:20,weight:`regular`,width:20}),b(`h3`,{className:`vidtreo-settings-title`,children:r.camera})]}),b(`div`,{className:`vidtreo-device-list`,children:f.length===0?b(`div`,{className:`vidtreo-device-empty`,children:`No hay cámaras disponibles`}):f.map(t=>x(`button`,{className:`vidtreo-device-option`,onClick:()=>{g(t.deviceId,`camera`)},type:`button`,children:[b(`div`,{className:`vidtreo-device-option-check-container`,children:t.deviceId===e.selectedCamera?b(L,{className:`vidtreo-device-checkmark`,height:20,weight:`regular`,width:20}):b(`span`,{className:`vidtreo-device-checkmark-placeholder`})}),b(`span`,{className:`vidtreo-device-option-label`,children:t.label||`Camera ${t.deviceId.slice(0,8)}`})]},t.deviceId))})]})}):a===`microphone`?b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:x(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:[x(`button`,{className:`vidtreo-settings-header`,onClick:d,type:`button`,children:[b(F,{className:`vidtreo-settings-back-icon`,height:20,weight:`regular`,width:20}),b(`h3`,{className:`vidtreo-settings-title`,children:r.microphone})]}),b(`div`,{className:`vidtreo-device-list`,children:p.length===0?b(`div`,{className:`vidtreo-device-empty`,children:`No hay micrófonos disponibles`}):p.map(t=>x(`button`,{className:`vidtreo-device-option`,onClick:()=>{g(t.deviceId,`microphone`)},type:`button`,children:[b(`div`,{className:`vidtreo-device-option-check-container`,children:t.deviceId===e.selectedMic?b(L,{className:`vidtreo-device-checkmark`,height:20,weight:`regular`,width:20}):b(`span`,{className:`vidtreo-device-checkmark-placeholder`})}),b(`span`,{className:`vidtreo-device-option-label`,children:t.label||`Microphone ${t.deviceId.slice(0,8)}`})]},t.deviceId))})]})}):b(`div`,{className:`vidtreo-settings-panel vidtreo-active`,id:`settingsPanel`,children:b(`div`,{className:`vidtreo-settings-content vidtreo-slide-${c}`,children:x(`div`,{className:`vidtreo-device-options-container`,children:[x(`button`,{className:`vidtreo-device-option-nav`,onClick:()=>{u(`camera`)},type:`button`,children:[x(`div`,{className:`vidtreo-device-option-nav-content`,children:[b(ce,{height:20,weight:`fill`,width:20}),b(`span`,{className:`vidtreo-device-option-nav-label`,children:r.camera})]}),x(`div`,{className:`vidtreo-device-option-nav-value`,children:[b(`span`,{className:`vidtreo-device-option-nav-value-text`,children:m}),b(`span`,{className:`vidtreo-device-option-nav-chevron`,children:`›`})]})]}),x(`button`,{className:`vidtreo-device-option-nav`,onClick:()=>{u(`microphone`)},type:`button`,children:[x(`div`,{className:`vidtreo-device-option-nav-content`,children:[b(B,{height:20,weight:`fill`,width:20}),b(`span`,{className:`vidtreo-device-option-nav-label`,children:r.microphone})]}),x(`div`,{className:`vidtreo-device-option-nav-value`,children:[b(`span`,{className:`vidtreo-device-option-nav-value-text`,children:h}),b(`span`,{className:`vidtreo-device-option-nav-chevron`,children:`›`})]})]})]})})})}function Ce(e){e.pause(),e.srcObject=null}function we(e,t){let n=e.getVideoTracks();return n.length===0||n[0].readyState!==`live`||!e.active?(Ce(t),!1):!0}function Te(e){let t=e instanceof Error?e.message:String(e);return t.includes(`interrupted`)||t.includes(`abort`)}async function Ee(e){if(!(e.readyState>=2&&!e.paused)){await new Promise(e=>{setTimeout(()=>e(),200)});try{await e.play()}catch{}}}async function De(e){try{await e.play()}catch(t){Te(t)&&await Ee(e)}}async function Oe(e,t,n,r){e.srcObject&&e.srcObject!==t&&e.pause(),e.srcObject=null,n===`screen`?e.classList.add(`vidtreo-screen-share`):e.classList.remove(`vidtreo-screen-share`),await new Promise(e=>{setTimeout(()=>e(),100)}),e.srcObject=t;let i=t.getVideoTracks();i.length>0&&!i[0].enabled&&(i[0].enabled=!0),await De(e),r.current=!1}function ke(e,t,n){if(!t||!we(t,e))return!1;let r=t.getVideoTracks()[0];return r.enabled||=!0,e.pause(),e.srcObject=t,n&&n(!1),e.play().catch(()=>{}),!0}function Ae(e){let{videoElement:t,currentStream:n,currentSourceType:r,isUpdatingRef:i,setStreamId:a,setSourceType:o,onLoadedChange:s}=e;i.current=!0,a(n.id),o(r),s&&s(!1),Oe(t,n,r,i).then(()=>{t.readyState>=2&&!t.paused&&s&&s(!0)}).catch(()=>{i.current=!1})}function je(e,t,n){let r=0,i=setInterval(()=>{r+=1,(ke(e,t,n)||r>=10)&&clearInterval(i)},100);return()=>{clearInterval(i)}}function Me({controller:e,stream:t,transitionMessage:n,className:r=``,onLoadedChange:a}){let c=o(null),[l,u]=s(null),[d,f]=s(`camera`),p=o(!1);return i(()=>{let n=c.current;if(!n)return;if(!e){n.pause(),n.srcObject=null,a&&a(!1);return}let r=t||e.getStream(),i=e.getCurrentSourceType();if((r?.id!==l||i!==d)&&r&&!p.current){Ae({videoElement:n,currentStream:r,currentSourceType:i,isUpdatingRef:p,setStreamId:u,setSourceType:f,onLoadedChange:a});return}let o=t||e.getStream();if(!ke(n,o,a))return je(n,o,a)},[e,t,l,d,a]),i(()=>{let r=c.current;if(!(r&&e)||n)return;let i=t||e.getStream();i&&r.srcObject===i&&r.paused&&r.readyState>=2&&r.play().catch(()=>{})},[e,t,n]),i(()=>{let e=c.current;if(!e)return;let t=()=>{e.readyState>=2&&!e.paused&&a&&a(!0)},n=()=>{e.readyState>=2&&a&&a(!0)},r=()=>{a&&a(!1)};return e.addEventListener(`loadedmetadata`,t),e.addEventListener(`playing`,n),e.addEventListener(`loadstart`,r),()=>{e.removeEventListener(`loadedmetadata`,t),e.removeEventListener(`playing`,n),e.removeEventListener(`loadstart`,r)}},[a]),b(`video`,{autoPlay:!0,className:r,muted:!0,playsInline:!0,ref:c})}function Ne({className:e=``}){return b(`div`,{className:`vidtreo-video-preview-skeleton ${e}`,children:b(`div`,{className:`vidtreo-skeleton-shimmer`})})}function Pe({onOpenCamera:e,translations:t,disabled:n}){return b(`div`,{className:`vidtreo-mobile-landing-container`,children:x(`div`,{className:`vidtreo-mobile-landing-content`,children:[b(`h2`,{className:`vidtreo-mobile-landing-title`,children:t.mobileOpenCameraTitle}),b(`p`,{className:`vidtreo-mobile-landing-description`,children:t.mobileOpenCameraDescription}),x(`button`,{className:`vidtreo-btn vidtreo-btn-primary vidtreo-mobile-open-camera-btn`,disabled:n,onClick:e,type:`button`,children:[b(N,{size:24,weight:`fill`}),t.mobileOpenCamera]})]})})}function Fe({children:e,onClose:t,canClose:n,translations:r}){return i(()=>{function e(e){e.key===`Escape`&&n&&t()}return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[n,t]),x(`div`,{"aria-label":r.mobileOpenCameraTitle,"aria-modal":`true`,className:`vidtreo-mobile-modal-overlay`,role:`dialog`,children:[b(`div`,{className:`vidtreo-mobile-modal-header`,children:x(`button`,{className:`vidtreo-mobile-modal-close-btn`,disabled:!n,onClick:t,type:`button`,children:[b(K,{size:16,weight:`bold`}),r.mobileCloseCamera]})}),b(`div`,{className:`vidtreo-mobile-modal-content`,children:e})]})}function Ie({config:e,state:t,actions:n,audioLevel:r,controller:a,translations:o}){let[c,l]=s(!1),[u,d]=s(!1),f=t.recordingState===`recording`||t.isPaused,p=a?.getCurrentSourceType()||`camera`,m={...pe(f,t.recordingState,t.isPaused,e),showDownloadButton:e.demo&&!f&&t.recordingState===`idle`&&t.recordedBlob!==null};i(()=>{t.recordingState===`recording`&&c&&l(!1)},[t.recordingState,c]);let h=()=>{n.startRecording(`camera`).catch(()=>{})},g=()=>{n.stopRecording().catch(()=>{})},_=()=>{e.enableDeviceChange!==!1&&l(!c)},v=e=>{n.changeCamera(e).catch(()=>{})},y=e=>{n.changeMic(e).catch(()=>{})},S=()=>{let e=a?.getCurrentSourceType()||`camera`;n.switchSource(e===`camera`?`screen`:`camera`).catch(()=>{})},C=o;return x(`div`,{className:`vidtreo-mobile-recorder-content`,children:[b(ye,{children:x(`div`,{className:`vidtreo-preview-container vidtreo-mobile-preview`,children:[!t.stream&&x(`div`,{className:`vidtreo-start-camera-area`,id:`startCameraArea`,children:[b(`div`,{className:`vidtreo-camera-icon`,children:b(N,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-camera-text`,children:C.initializingCamera}),b(`div`,{className:`vidtreo-camera-hint`,children:C.grantPermissions})]}),t.transitionMessage&&x(`div`,{className:`vidtreo-preview-skeleton`,id:`previewSkeleton`,children:[b(`div`,{className:`vidtreo-skeleton-spinner`}),b(`div`,{className:`vidtreo-skeleton-text`,children:C.switchingDevice})]}),t.stream&&!(u||t.transitionMessage)&&b(Ne,{}),t.stream&&b(Me,{className:`vidtreo-video-preview`,controller:a,onLoadedChange:d,stream:t.stream,transitionMessage:t.transitionMessage}),t.recordingState===`countdown`&&t.countdown!==null&&b(`div`,{className:`vidtreo-countdown-overlay vidtreo-active`,id:`countdownOverlay`,children:x(`div`,{className:`vidtreo-countdown-content`,children:[b(`div`,{className:`vidtreo-countdown-number`,id:`countdownNumber`,children:t.countdown}),b(`p`,{className:`vidtreo-countdown-text`,children:C.recordingStartsIn})]})}),f&&x(`div`,{className:`vidtreo-rec-indicator-top`,id:`recIndicatorTop`,children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{children:C.rec})]}),f&&x(`div`,{className:`vidtreo-recording-timer-badge`,id:`recordingTimerRow`,children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{className:`vidtreo-recording-timer-text`,id:`recordingTimer`,children:t.timer||`00:00`})]}),f&&b(`div`,{className:`vidtreo-audio-level-bars`,id:`audioLevelBars`,children:b(_e,{audioLevel:r,isMuted:t.isMuted})}),t.stream&&b(xe,{buttonVisibility:m,currentSourceType:p,isMuted:t.isMuted,onDownload:n.downloadVideo,onPause:n.pauseRecording,onResume:n.resumeRecording,onStartRecording:h,onStopRecording:g,onSwitchSource:S,onToggleMute:n.toggleMute,onToggleSettings:_,recordingState:t.recordingState,translations:{settings:C.settings,record:C.record,stop:C.stop,pause:C.pause,resume:C.resume,mute:C.mute,unmute:C.unmute,switchSource:C.switchSource,download:C.download}}),t.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`finishingProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill vidtreo-progress-indeterminate`,id:`finishingProgressFill`})}),b(`div`,{className:`vidtreo-progress-text`,id:`finishingProgressText`,children:C.finishing})]})}),t.uploadProgress!==null&&!t.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`uploadProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill`,id:`uploadProgressFill`,style:{width:`${Math.round(t.uploadProgress*100)}%`}})}),x(`div`,{className:`vidtreo-progress-text`,id:`uploadProgressText`,children:[C.uploading,` `,Math.round(t.uploadProgress*100),`%`]})]})})]})}),t.transitionMessage&&x(`div`,{className:`vidtreo-source-transition-overlay vidtreo-active`,id:`sourceTransitionOverlay`,children:[b(`div`,{className:`vidtreo-transition-spinner`}),b(`div`,{className:`vidtreo-transition-message`,children:t.transitionMessage})]}),t.stream&&c&&b(Se,{devices:t.devices,onCameraChange:v,onMicChange:y,translations:{settings:C.settings,camera:C.camera,microphone:C.microphone}}),t.error&&b(`div`,{className:`vidtreo-error vidtreo-active`,id:`error`,children:t.error})]})}function Le({config:e}){let t=Q(e.lang===void 0?`en`:e.lang,e.texts===void 0?{}:e.texts),{state:n,actions:r,audioLevel:i,controller:a,isModalOpen:o,openModal:s,closeModal:c,canCloseModal:l}=he(e);return x(`div`,{className:`vidtreo-mobile-web-recorder`,children:[!o&&b(Pe,{disabled:!n.isInitialized,onOpenCamera:s,translations:{mobileOpenCamera:t.mobileOpenCamera,mobileOpenCameraTitle:t.mobileOpenCameraTitle,mobileOpenCameraDescription:t.mobileOpenCameraDescription}}),o&&b(Fe,{canClose:l,onClose:c,translations:{mobileCloseCamera:t.mobileCloseCamera,mobileOpenCameraTitle:t.mobileOpenCameraTitle},children:b(Ie,{actions:r,audioLevel:i,config:e,controller:a,state:n,translations:t})})]})}function Re(e){let[t,n]=s(null),[a,d]=s(null),[p,h]=s(null),[g,_]=s(!1),[y,b]=s(!0),[x,S]=s(null),[C,w]=s(null),T=o(null),E=o(e);E.current=e,i(()=>{let t=e.backendUrl||q,n=null;e.apiKey&&!e.demo&&(n=c.getInstance({apiKey:e.apiKey,backendUrl:t}));let r=new f;return T.current=new u({apiKey:e.apiKey,backendUrl:t,maxRecordingTime:e.maxRecordingTime,maxFileSize:e.maxFileSize,userMetadata:e.userMetadata},n,r),e.apiKey&&!e.demo?(b(!0),T.current.preloadConfig().then(()=>b(!1)).catch(()=>{b(!1),S(`Failed to load settings`)})):b(!1),()=>{T.current=null}},[e.apiKey,e.backendUrl,e.demo,e.maxRecordingTime,e.maxFileSize,e.userMetadata]);let D=r(async e=>{if(S(null),!T.current)throw Error(`Handler not initialized`);try{let t=await T.current.handleFileSelection(e);return n(t),t}catch(e){let t=m(e),n=e instanceof Error?e:Error(t);throw S(t),E.current.onError?.(n),n}},[]),ee=r(async e=>{let r=e||t;if(!(r&&T.current))return;let i=E.current.demo;try{if(_(!0),d(0),S(null),i)w((await v(r.file,l,e=>{d(e),E.current.onTranscodingProgress?.(e)})).blob),_(!1),d(null);else{let e=await T.current.processAndUpload(e=>{d(e),E.current.onTranscodingProgress?.(e)},e=>{h(e),E.current.onUploadProgress?.(e)});n(null),d(null),h(null),_(!1),E.current.onUploadComplete?.({recordingId:e.recordingId||``,uploadUrl:e.uploadUrl||``})}}catch(e){let t=m(e),n=e instanceof Error?e:Error(t);S(t),_(!1),d(null),h(null),w(null),E.current.onError?.(n),i||E.current.onUploadError?.(n)}},[t]),O=r(()=>{if(!C)return;let e=URL.createObjectURL(C),t=document.createElement(`a`);t.href=e,t.download=`recording-${Date.now()}.mp4`,document.body.appendChild(t),t.click(),document.body.removeChild(t),URL.revokeObjectURL(e)},[C]),k=r(()=>{n(null),d(null),h(null),S(null),_(!1),w(null)},[]);return{state:{file:t,transcodingProgress:a,uploadProgress:p,isTranscoding:g,isConfigLoading:y,error:x,transcodedBlob:C},actions:{handleFileSelect:D,processAndUpload:ee,downloadVideo:O,reset:k}}}function ze({error:e,onDismiss:t}){return e?x(`div`,{className:`vidtreo-error`,children:[b(`div`,{className:`vidtreo-error-message`,children:e}),t&&b(`button`,{className:`vidtreo-error-dismiss`,onClick:t,type:`button`,children:b(K,{className:`vidtreo-icon`,weight:`regular`})})]}):null}function Be({progress:e}){let t=Math.round(e*100);return x(`div`,{className:`vidtreo-transcoding-progress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill`,style:{width:`${t}%`}})}),x(`div`,{className:`vidtreo-progress-text`,children:[`Processing video... `,t,`%`]})]})}function Ve({progress:e,visible:t}){if(!t||e===null)return null;let n=Math.round(e*100);return x(`div`,{className:`vidtreo-upload-progress`,children:[b(`div`,{className:`vidtreo-upload-progress-bar`,children:b(`div`,{className:`vidtreo-upload-progress-fill`,style:{width:`${n}%`}})}),x(`div`,{className:`vidtreo-upload-progress-text`,children:[`Uploading... `,n,`%`]})]})}function He({config:e}){let{state:t,actions:n}=Re(e),r=o(null),i=Q(e.lang===void 0?`en`:e.lang,e.texts===void 0?{}:e.texts),a=()=>{r.current&&(r.current.accept=`video/*`,r.current.removeAttribute(`capture`),r.current.click())},s=()=>{r.current&&(r.current.accept=`video/*`,r.current.setAttribute(`capture`,`environment`),r.current.click())},c=async e=>{let t=e.target.files?.[0];if(t){let e=await n.handleFileSelect(t);await n.processAndUpload(e)}e.target.value=``},l=t.file!==null,u=!(l||t.isTranscoding)&&t.uploadProgress===null&&!t.transcodedBlob,d=e.demo&&t.transcodedBlob&&!t.isTranscoding&&t.uploadProgress===null;return x(`div`,{className:`vidtreo-native-camera-container`,children:[b(`input`,{onChange:c,ref:r,style:{display:`none`},type:`file`}),t.isConfigLoading&&b(`div`,{className:`vidtreo-config-loading-indicator`,children:b(`div`,{className:`vidtreo-spinner-small`})}),l&&t.file!==null&&x(`div`,{className:`vidtreo-native-camera-preview-container`,children:[b(`img`,{alt:`Video preview`,className:`vidtreo-native-camera-preview-image`,height:480,src:t.file.previewUrl,width:640}),t.isTranscoding&&t.transcodingProgress!==null&&b(`div`,{className:`vidtreo-progress-overlay`,children:b(Be,{progress:t.transcodingProgress})}),t.uploadProgress!==null&&b(`div`,{className:`vidtreo-progress-overlay`,children:b(Ve,{progress:t.uploadProgress,visible:!0})}),d&&b(`div`,{className:`vidtreo-native-camera-download-button`,children:b(`button`,{className:`vidtreo-btn vidtreo-btn-primary`,onClick:n.downloadVideo,type:`button`,children:i.download})})]}),u&&b(`div`,{className:`vidtreo-native-camera-empty-state`,children:x(`div`,{className:`vidtreo-native-camera-buttons`,children:[b(`button`,{className:`vidtreo-btn vidtreo-btn-primary`,disabled:t.isConfigLoading,onClick:a,type:`button`,children:`Select Video from Gallery`}),b(`button`,{className:`vidtreo-btn vidtreo-btn-secondary`,disabled:t.isConfigLoading,onClick:s,type:`button`,children:`Record with Camera`})]})}),t.error&&b(ze,{error:t.error,onDismiss:n.reset})]})}function $(e,t){t&&t(e instanceof Error?e:Error(String(e)))}function Ue({state:e,isVideoLoaded:t,isRecording:n,controller:r,audioLevel:i,buttonVisibility:a,currentSourceType:o,onStartRecording:s,onStopRecording:c,onSwitchSource:l,onToggleSettings:u,onToggleMute:d,onPause:f,onResume:p,onLoadedChange:m,onDownload:h,translations:g,buttonTranslations:_}){return x(y,{children:[!e.stream&&x(`div`,{className:`vidtreo-start-camera-area`,id:`startCameraArea`,children:[b(`div`,{className:`vidtreo-camera-icon`,children:b(N,{color:`currentColor`,height:48,weight:`fill`,width:48})}),b(`div`,{className:`vidtreo-camera-text`,children:g.initializingCamera}),b(`div`,{className:`vidtreo-camera-hint`,children:g.grantPermissions})]}),e.transitionMessage&&x(`div`,{className:`vidtreo-preview-skeleton`,id:`previewSkeleton`,children:[b(`div`,{className:`vidtreo-skeleton-spinner`}),b(`div`,{className:`vidtreo-skeleton-text`,children:g.switchingDevice})]}),e.stream&&!(t||e.transitionMessage)&&b(Ne,{}),e.stream&&b(Me,{className:`vidtreo-video-preview`,controller:r,onLoadedChange:m,stream:e.stream,transitionMessage:e.transitionMessage}),e.recordingState===`countdown`&&e.countdown!==null&&b(`div`,{className:`vidtreo-countdown-overlay vidtreo-active`,id:`countdownOverlay`,children:x(`div`,{className:`vidtreo-countdown-content`,children:[b(`div`,{className:`vidtreo-countdown-number`,id:`countdownNumber`,children:e.countdown}),b(`p`,{className:`vidtreo-countdown-text`,children:g.recordingStartsIn})]})}),n&&x(`div`,{className:`vidtreo-rec-indicator-top`,id:`recIndicatorTop`,children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{children:g.rec})]}),n&&x(`div`,{className:`vidtreo-recording-timer-badge`,id:`recordingTimerRow`,children:[b(`div`,{className:`vidtreo-recording-dot-small`}),b(`span`,{className:`vidtreo-recording-timer-text`,id:`recordingTimer`,children:e.timer})]}),n&&b(`div`,{className:`vidtreo-audio-level-bars`,id:`audioLevelBars`,children:b(_e,{audioLevel:i,isMuted:e.isMuted})}),e.stream&&b(xe,{buttonVisibility:a,currentSourceType:o,isMuted:e.isMuted,onDownload:h,onPause:f,onResume:p,onStartRecording:s,onStopRecording:c,onSwitchSource:l,onToggleMute:d,onToggleSettings:u,recordingState:e.recordingState,translations:_})]})}function We(e){let t=me(e.apiKey,e.demo),[n,r]=s(!1),[a,o]=s(!1),c=Q(e.lang||`en`,e.texts||{}),{state:l,actions:u,audioLevel:d,controller:f}=Z({apiKey:t,backendUrl:e.backendUrl,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay,demo:e.demo,nativeCamera:e.nativeCamera,onUploadComplete:e.onUploadComplete,onUploadProgress:e.onUploadProgress,onUploadError:e.onUploadError,onRecordingStart:e.onRecordingStart,onRecordingStop:e.onRecordingStop,onError:e.onError});i(()=>{if(l.stream||!u.startPreview||!l.isInitialized)return;let t=setTimeout(()=>{u.startPreview(`camera`).catch(t=>{$(t,e.onError)})},100);return()=>{clearTimeout(t)}},[l.stream,l.isInitialized,u.startPreview,e.onError]),i(()=>{l.recordingState===`recording`&&n&&r(!1)},[l.recordingState,n]);let p=()=>{u.startRecording(`camera`).catch(t=>{$(t,e.onError)})},m=()=>{u.stopRecording().catch(t=>{$(t,e.onError)})},h=()=>{e.enableDeviceChange!==!1&&r(!n)},g=t=>{u.changeCamera(t).catch(t=>{$(t,e.onError)})},_=t=>{u.changeMic(t).catch(t=>{$(t,e.onError)})},v=()=>{let t=f?.getCurrentSourceType()||`camera`;u.switchSource(t===`camera`?`screen`:`camera`).catch(t=>{$(t,e.onError)})},y=l.recordingState===`recording`||l.isPaused,S=f?.getCurrentSourceType()||`camera`;return x(`div`,{className:`vidtreo-camera-area vidtreo-active`,id:`cameraArea`,children:[b(ye,{children:x(`div`,{className:`vidtreo-preview-container`,children:[Ue({state:l,isVideoLoaded:a,isRecording:y,controller:f,audioLevel:d,buttonVisibility:{...pe(y,l.recordingState,l.isPaused,e),showDownloadButton:e.demo&&!y&&l.recordingState===`idle`&&l.recordedBlob!==null},currentSourceType:S,onStartRecording:p,onStopRecording:m,onSwitchSource:v,onToggleSettings:h,onToggleMute:u.toggleMute,onPause:u.pauseRecording,onResume:u.resumeRecording,onLoadedChange:o,onDownload:u.downloadVideo,translations:{initializingCamera:c.initializingCamera,grantPermissions:c.grantPermissions,switchingDevice:c.switchingDevice,recordingStartsIn:c.recordingStartsIn,rec:c.rec},buttonTranslations:{settings:c.settings,record:c.record,stop:c.stop,pause:c.pause,resume:c.resume,mute:c.mute,unmute:c.unmute,switchSource:c.switchSource,download:c.download}}),l.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`finishingProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill vidtreo-progress-indeterminate`,id:`finishingProgressFill`})}),b(`div`,{className:`vidtreo-progress-text`,id:`finishingProgressText`,children:c.finishing})]})}),l.uploadProgress!==null&&!l.isFinishing&&b(`div`,{className:`vidtreo-progress-overlay`,children:x(`div`,{className:`vidtreo-upload-progress vidtreo-active`,id:`uploadProgress`,children:[b(`div`,{className:`vidtreo-progress-bar`,children:b(`div`,{className:`vidtreo-progress-fill`,id:`uploadProgressFill`,style:{width:`${Math.round(l.uploadProgress*100)}%`}})}),x(`div`,{className:`vidtreo-progress-text`,id:`uploadProgressText`,children:[c.uploading,` `,Math.round(l.uploadProgress*100),`%`]})]})})]})}),l.transitionMessage&&x(`div`,{className:`vidtreo-source-transition-overlay vidtreo-active`,id:`sourceTransitionOverlay`,children:[b(`div`,{className:`vidtreo-transition-spinner`}),b(`div`,{className:`vidtreo-transition-message`,children:l.transitionMessage})]}),l.stream&&n&&b(Se,{devices:l.devices,onCameraChange:g,onMicChange:_,translations:{settings:c.settings,camera:c.camera,microphone:c.microphone}}),l.error&&b(`div`,{className:`vidtreo-error vidtreo-active`,id:`error`,children:l.error})]})}function Ge(){return typeof window>`u`?!1:typeof Worker<`u`&&`MediaStreamTrackProcessor`in window&&`VideoFrame`in window&&`AudioData`in window&&`OffscreenCanvas`in window}function Ke(e){return e===`webOverlay`||e===`auto`?`overlay`:e}function qe(e,t){return t===!0?`native`:e===void 0?Ge()?`overlay`:`native`:Ke(e)}function Je(e){let t=me(e.apiKey,e.demo);if(!_())return b(We,{...e});let n=qe(e.mobileMode,e.nativeCamera);return n===`embed`?b(We,{...e}):n===`native`?b(He,{config:{apiKey:t,backendUrl:e.backendUrl,maxRecordingTime:e.maxRecordingTime,maxFileSize:e.maxFileSize,userMetadata:e.userMetadata,demo:e.demo,lang:e.lang,texts:e.texts,onUploadComplete:e.onUploadComplete,onUploadProgress:e.onUploadProgress,onUploadError:e.onUploadError,onError:e.onError,onTranscodingProgress:e.onTranscodingProgress}}):b(Le,{config:{apiKey:t,backendUrl:e.backendUrl,countdownDuration:e.countdownDuration,maxRecordingTime:e.maxRecordingTime,maxFileSize:e.maxFileSize,userMetadata:e.userMetadata,enableSourceSwitching:e.enableSourceSwitching,enableMute:e.enableMute,enablePause:e.enablePause,enableDeviceChange:e.enableDeviceChange,enableTabVisibilityOverlay:e.enableTabVisibilityOverlay,demo:e.demo,lang:e.lang,texts:e.texts,onUploadComplete:e.onUploadComplete,onUploadProgress:e.onUploadProgress,onUploadError:e.onUploadError,onRecordingStart:e.onRecordingStart,onRecordingStop:e.onRecordingStop,onError:e.onError,onTranscodingProgress:e.onTranscodingProgress}})}function Ye(e){return b(be,{lang:e.lang,texts:e.texts,children:b(Je,{...e})})}export{Ye as VidtreoRecorder,Ye as VidtreoRecorderSSR,Z as useVidtreoRecorder};
|
package/dist/recorder-react.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--vidtreo-background:0 0% 100%;--vidtreo-foreground:0 0% 3.9%;--vidtreo-card:0 0% 100%;--vidtreo-card-foreground:0 0% 3.9%;--vidtreo-primary:0 0% 9%;--vidtreo-primary-foreground:0 0% 98%;--vidtreo-secondary:0 0% 96.1%;--vidtreo-secondary-foreground:0 0% 9%;--vidtreo-muted:0 0% 96.1%;--vidtreo-muted-foreground:0 0% 45.1%;--vidtreo-accent:0 0% 96.1%;--vidtreo-accent-foreground:0 0% 9%;--vidtreo-destructive:0 84.2% 60.2%;--vidtreo-destructive-foreground:0 0% 98%;--vidtreo-border:0 0% 89.8%;--vidtreo-input:0 0% 89.8%;--vidtreo-ring:0 0% 3.9%;--vidtreo-radius:0.5rem;--vidtreo-preview-bg:0 0% 0%}.vidtreo-preview-container{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}.vidtreo-preview-container::before{display:none}@media (min-width:768px){.vidtreo-preview-container{aspect-ratio:16 / 9}}.vidtreo-camera-area{width:100%;height:100%;display:none;position:relative;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden;isolation:isolate;will-change:auto}.vidtreo-source-transition-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.7);display:none;align-items:center;justify-content:center;flex-direction:column;border-radius:0;z-index:100;backdrop-filter:blur(4px);transition:opacity 0.3s ease;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:opacity}.vidtreo-source-transition-overlay.vidtreo-active{display:flex;animation:vidtreo-fadeIn 0.2s ease}@keyframes vidtreo-fadeIn{from{opacity:0}to{opacity:1}}.vidtreo-transition-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#667eea;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite;margin-bottom:12px}@keyframes vidtreo-spin{to{transform:rotate(360deg)}}.vidtreo-transition-message{color:white;font-size:14px;font-weight:500;text-align:center}.vidtreo-camera-area.vidtreo-active{display:block}.vidtreo-preview-skeleton{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;border-radius:0;z-index:10;gap:1rem;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#ffffff;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite}.vidtreo-skeleton-text{color:#ffffff;font-size:0.875rem;font-weight:500}.vidtreo-video-preview{width:100%;height:100%;border-radius:0;background:#000;display:block;object-fit:contain;transition:opacity 0.3s ease,transform 0.3s ease;position:absolute;inset:0;transform:translateZ(0);will-change:auto;backface-visibility:hidden}.vidtreo-video-preview-skeleton{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:#000;overflow:hidden;z-index:2;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-shimmer{position:absolute;inset:0;background:linear-gradient( 90deg,hsl(var(--vidtreo-muted)) 0%,hsl(var(--vidtreo-muted) / 0.5) 50%,hsl(var(--vidtreo-muted)) 100% );background-size:200% 100%;animation:vidtreo-shimmer 1.5s ease-in-out infinite}@keyframes vidtreo-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.vidtreo-video-preview-skeleton.vidtreo-hidden{opacity:0;pointer-events:none;transition:opacity 0.3s ease}.vidtreo-video-preview.vidtreo-screen-share{object-fit:cover}.vidtreo-video-preview.vidtreo-transitioning{opacity:0.5;transform:scale(0.98)}.vidtreo-countdown-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.95);display:none;align-items:center;justify-content:center;border-radius:0;z-index:20;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-countdown-overlay.vidtreo-active{display:flex}.vidtreo-countdown-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.vidtreo-countdown-number{font-size:9rem;font-weight:bold;color:#ffffff;animation:vidtreo-zoomIn 0.3s ease}@keyframes vidtreo-zoomIn{from{transform:scale(0.5);opacity:0}to{transform:scale(1);opacity:1}}.vidtreo-countdown-text{font-size:0.875rem;color:#ffffff;margin-top:1rem;font-weight:500}.vidtreo-settings-panel{position:absolute;bottom:4rem;left:50%;margin-left:-47%;background:rgba(0,0,0,0.4);border:none;border-radius:0.75rem;padding:0.625rem;display:none;flex-direction:column;z-index:200;width:90%;overflow:hidden;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-panel.vidtreo-active{display:flex}.vidtreo-settings-content{width:100%;display:flex;flex-direction:column;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-content.vidtreo-slide-right{animation:vidtreo-slideRight 0.3s ease}.vidtreo-settings-content.vidtreo-slide-left{animation:vidtreo-slideLeft 0.3s ease}.vidtreo-settings-content.vidtreo-slide-none{animation:none;will-change:auto}@keyframes vidtreo-slideIn{from{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vidtreo-slideRight{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes vidtreo-slideLeft{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.vidtreo-settings-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;background:none;border:none;color:#ffffff;cursor:pointer;padding:0;width:100%;text-align:left}.vidtreo-settings-back-icon{flex-shrink:0;color:#ffffff}.vidtreo-settings-title{font-size:0.875rem;font-weight:600;margin:0;color:#ffffff}.vidtreo-device-options-container{display:flex;flex-direction:column;gap:0.375rem}.vidtreo-device-option-nav{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;width:100%;gap:1rem;border-radius:0.5rem}.vidtreo-device-option-nav:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-nav-content{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}.vidtreo-device-option-nav-label{font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-device-option-nav-value{display:flex;align-items:center;gap:0.5rem;flex:1;justify-content:flex-end;min-width:0}.vidtreo-device-option-nav-value-text{font-size:0.875rem;color:rgba(255,255,255,0.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}.vidtreo-device-option-nav-chevron{font-size:1.25rem;color:#ffffff;line-height:1}.vidtreo-device-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.vidtreo-device-list::-webkit-scrollbar{width:4px}.vidtreo-device-list::-webkit-scrollbar-track{background:transparent}.vidtreo-device-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:2px}.vidtreo-device-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.3)}.vidtreo-device-option{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;text-align:left;width:100%;gap:0.75rem;border-radius:0.5rem}.vidtreo-device-option:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-check-container{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vidtreo-device-checkmark-placeholder{width:20px;height:20px;flex-shrink:0}.vidtreo-device-checkmark{color:#ffffff;flex-shrink:0}.vidtreo-device-option-label{font-size:0.875rem;color:#ffffff;flex:1}.vidtreo-device-empty{padding:1rem 0;font-size:0.875rem;color:rgba(255,255,255,0.6);text-align:center}.vidtreo-audio-level-bars{position:absolute;bottom:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.125rem;height:1rem;z-index:10;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}@media (min-width:768px){.vidtreo-audio-level-bars{height:1.25rem}}.vidtreo-audio-level-bar{width:0.125rem;border-radius:9999px;background:rgba(255,255,255,0.5);transition:all 0.1s ease;align-self:flex-end}.vidtreo-recording-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%) translateZ(0);z-index:10;contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-controls-row{display:flex;align-items:center;justify-content:center;gap:0.5rem;transform:translateZ(0);will-change:auto}.vidtreo-recording-timer-row{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.vidtreo-recording-timer-badge{position:absolute;top:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);z-index:10;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-dot-small{width:0.375rem;height:0.375rem;background:hsl(var(--vidtreo-destructive));border-radius:50%;animation:vidtreo-pulse 1.5s ease-in-out infinite}.vidtreo-recording-timer-text{font-size:0.75rem;font-family:monospace;font-weight:500;color:#ffffff}.vidtreo-control-buttons-row{display:flex;align-items:center;justify-content:center;gap:0.375rem;height:auto;min-height:2rem;transform:translateZ(0);will-change:auto}@media (min-width:768px){.vidtreo-control-buttons-row{min-height:2.25rem}}.vidtreo-control-button{width:2rem;height:2rem;min-height:2rem;max-height:2rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.2s ease;color:#ffffff;padding:0.25rem;margin:0;flex-shrink:0;box-sizing:border-box;vertical-align:top;position:relative;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-control-button::before{content:"";position:absolute;inset:0.25rem;border-radius:9999px;transition:background-color 0.2s ease;z-index:0}.vidtreo-control-button svg{width:22px !important;height:22px !important;color:inherit;flex-shrink:0;position:relative;z-index:1}@media (min-width:768px){.vidtreo-control-button svg{width:24px !important;height:24px !important}}@media (min-width:768px){.vidtreo-control-button{width:2.25rem;height:2.25rem;min-height:2.25rem;max-height:2.25rem}}.vidtreo-control-button:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-control-button:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-control-button.vidtreo-muted::before{background:rgba(0,0,0,0.3)}.vidtreo-control-button.vidtreo-muted:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-record-button{height:2rem;min-height:2rem;max-height:2rem;padding:0 0.75rem;border-radius:9999px;font-weight:500;font-size:0.75rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;display:inline-flex;align-items:center;justify-content:center;gap:0.375rem;transition:background-color 0.2s ease,filter 0.2s ease;width:auto;margin:0;line-height:1;flex-shrink:0;box-sizing:border-box;vertical-align:top;cursor:pointer}@media (min-width:768px){.vidtreo-record-button{height:2.25rem;min-height:2.25rem;max-height:2.25rem;font-size:0.875rem}}.vidtreo-record-button:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-rec-indicator-top{position:absolute;top:0.75rem;left:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-rec-indicator-top span{font-size:0.75rem;font-weight:500;color:#ffffff}.vidtreo-start-camera-area{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;border-radius:0;padding:40px;text-align:center;background:#000;transition:all 0.3s ease;cursor:pointer;z-index:1;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-start-camera-area:hover:not(.vidtreo-loading){background:#000}.vidtreo-start-camera-area.vidtreo-loading{cursor:wait;opacity:0.7}.vidtreo-start-camera-area.vidtreo-loading .vidtreo-camera-text{color:#ffffff;opacity:0.7}.vidtreo-camera-icon{font-size:48px;margin-bottom:16px;display:flex;justify-content:center;color:#ffffff}.vidtreo-camera-text{color:#ffffff;font-weight:600;margin-bottom:8px}.vidtreo-camera-hint{color:#ffffff;font-size:12px;opacity:0.8}@keyframes vidtreo-pulse{0%,100%{opacity:1}50%{opacity:0.3}}.vidtreo-progress{margin-top:20px;display:none}.vidtreo-progress.vidtreo-active{display:block}.vidtreo-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.vidtreo-progress-fill{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);width:0%;transition:width 0.3s ease}.vidtreo-progress-text{text-align:center;color:#ffffff;font-size:14px}.vidtreo-error{position:absolute;top:0.75rem;left:50%;transform:translateX(-50%);padding:1rem 1.25rem;background:#dc2626;border:none;border-radius:0.5rem;color:#ffffff;font-size:0.875rem;font-weight:500;text-align:center;z-index:100;display:none;box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);max-width:90%;word-wrap:break-word}.vidtreo-error.vidtreo-active{display:block;animation:vidtreo-error-fade-in-slide-down 0.3s ease-out}@keyframes vidtreo-error-fade-in-slide-down{from{opacity:0;transform:translateX(-50%) translateY(-1rem)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.vidtreo-upload-progress{margin-top:20px;display:none}.vidtreo-upload-progress.vidtreo-active{display:block}.vidtreo-preview-container .vidtreo-upload-progress{margin-top:0}.vidtreo-upload-status{margin-top:20px;padding:16px;border-radius:8px;display:none}.vidtreo-upload-status.vidtreo-active{display:block}.vidtreo-upload-status.vidtreo-success{background:#f0f9ff;border:2px solid #48bb78;color:#22543d}.vidtreo-upload-status.vidtreo-error{background:#fee;border:2px solid #fcc;color:#c33}.vidtreo-upload-status-text{font-size:14px;font-weight:500}.vidtreo-preview-error{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}@media (min-width:768px){.vidtreo-preview-error{aspect-ratio:16 / 9}}.vidtreo-error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:#ffffff;max-width:400px}.vidtreo-error-icon{font-size:3rem;line-height:1}.vidtreo-error-title{font-size:1.25rem;font-weight:600;line-height:1.2}.vidtreo-error-message{font-size:0.875rem;line-height:1.5;opacity:0.9;word-break:break-word}.vidtreo-error-config{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.2);width:100%;text-align:left}.vidtreo-error-config-title{font-size:0.875rem;font-weight:600;margin-bottom:0.75rem;color:#ffffff}.vidtreo-error-config-item{font-size:0.8125rem;line-height:1.6;margin-bottom:0.5rem;color:rgba(255,255,255,0.85)}.vidtreo-error-config-item code{background:rgba(255,255,255,0.15);padding:0.125rem 0.375rem;border-radius:0.25rem;font-family:monospace;font-size:0.75rem;color:#ffffff}.vidtreo-error-retry{margin-top:0.5rem;padding:0.5rem 1rem;border-radius:0.375rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;font-size:0.875rem;font-weight:500;cursor:pointer;transition:filter 0.2s ease}.vidtreo-error-retry:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-error-retry:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-error-overlay{position:absolute;inset:0;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;z-index:100}.vidtreo-native-camera-container{position:relative;width:100%;aspect-ratio:9 / 16;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}@media (min-width:768px){.vidtreo-native-camera-container{aspect-ratio:16 / 9}}.vidtreo-native-camera-container:has(.vidtreo-native-camera-preview-container){background:transparent}.vidtreo-config-loading-indicator{position:absolute;top:8px;right:8px;z-index:10}.vidtreo-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:spin 0.6s linear infinite}.vidtreo-native-camera-empty-state{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px}.vidtreo-native-camera-buttons{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.vidtreo-native-camera-process-button,.vidtreo-native-camera-download-button{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:30}.vidtreo-native-camera-process-button .vidtreo-btn,.vidtreo-native-camera-download-button .vidtreo-btn{min-width:200px}.vidtreo-btn{padding:12px 24px;border-radius:var(--vidtreo-radius);font-size:1rem;font-weight:500;cursor:pointer;border:none;transition:all 0.2s}.vidtreo-btn:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-btn-primary{background:hsl(var(--vidtreo-primary));color:hsl(var(--vidtreo-primary-foreground))}.vidtreo-btn-primary:hover:not(:disabled){filter:brightness(0.9)}.vidtreo-btn-secondary{background:hsl(var(--vidtreo-secondary));color:hsl(var(--vidtreo-secondary-foreground));border:1px solid hsl(var(--vidtreo-border))}.vidtreo-btn-secondary:hover:not(:disabled){background:hsl(var(--vidtreo-accent))}.vidtreo-transcoding-progress{width:100%;max-width:400px;padding:16px}.vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-fill{height:100%;background:hsl(var(--vidtreo-primary));transition:width 0.3s ease}.vidtreo-progress-text{margin-top:8px;text-align:center;font-size:0.875rem;color:hsl(var(--vidtreo-foreground))}.vidtreo-native-camera-preview-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.vidtreo-native-camera-preview-image{width:100%;height:100%;object-fit:contain;display:block}.vidtreo-progress-overlay{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);z-index:20;pointer-events:none}.vidtreo-progress-overlay .vidtreo-transcoding-progress,.vidtreo-progress-overlay .vidtreo-upload-progress{position:relative;width:90%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;background:transparent;pointer-events:auto}.vidtreo-progress-overlay .vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-indeterminate{width:100%;background:linear-gradient( 90deg,transparent 0%,#ffffff 50%,transparent 100% );background-size:200% 100%;animation:vidtreo-progress-indeterminate 1.5s ease-in-out infinite}@keyframes vidtreo-progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}
|
|
1
|
+
:root{--vidtreo-background:0 0% 100%;--vidtreo-foreground:0 0% 3.9%;--vidtreo-card:0 0% 100%;--vidtreo-card-foreground:0 0% 3.9%;--vidtreo-primary:0 0% 9%;--vidtreo-primary-foreground:0 0% 98%;--vidtreo-secondary:0 0% 96.1%;--vidtreo-secondary-foreground:0 0% 9%;--vidtreo-muted:0 0% 96.1%;--vidtreo-muted-foreground:0 0% 45.1%;--vidtreo-accent:0 0% 96.1%;--vidtreo-accent-foreground:0 0% 9%;--vidtreo-destructive:0 84.2% 60.2%;--vidtreo-destructive-foreground:0 0% 98%;--vidtreo-border:0 0% 89.8%;--vidtreo-input:0 0% 89.8%;--vidtreo-ring:0 0% 3.9%;--vidtreo-radius:0.5rem;--vidtreo-preview-bg:0 0% 0%;--vidtreo-z-modal-overlay:9999;--vidtreo-z-settings-panel:200;--vidtreo-z-error-overlay:100;--vidtreo-z-countdown-overlay:20;--vidtreo-z-progress-overlay:20;--vidtreo-z-controls:10}.vidtreo-preview-container{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:visible;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:layout style;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}.vidtreo-preview-container::before{display:none}@media (min-width:768px){.vidtreo-preview-container{aspect-ratio:16 / 9}}.vidtreo-camera-area{width:100%;height:100%;display:none;position:relative;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden;isolation:isolate;will-change:auto}.vidtreo-source-transition-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.7);display:none;align-items:center;justify-content:center;flex-direction:column;border-radius:0;z-index:var(--vidtreo-z-error-overlay);backdrop-filter:blur(4px);transition:opacity 0.3s ease;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:opacity}.vidtreo-source-transition-overlay.vidtreo-active{display:flex;animation:vidtreo-fadeIn 0.2s ease}@keyframes vidtreo-fadeIn{from{opacity:0}to{opacity:1}}.vidtreo-transition-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#667eea;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite;margin-bottom:12px}@keyframes vidtreo-spin{to{transform:rotate(360deg)}}.vidtreo-transition-message{color:white;font-size:14px;font-weight:500;text-align:center}.vidtreo-camera-area.vidtreo-active{display:block}.vidtreo-preview-skeleton{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;border-radius:0;z-index:var(--vidtreo-z-controls);gap:1rem;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,0.3);border-top-color:#ffffff;border-radius:50%;animation:vidtreo-spin 0.8s linear infinite}.vidtreo-skeleton-text{color:#ffffff;font-size:0.875rem;font-weight:500}.vidtreo-video-preview{width:100%;height:100%;border-radius:0;background:#000;display:block;object-fit:contain;transition:opacity 0.3s ease,transform 0.3s ease;position:absolute;inset:0;transform:translateZ(0);will-change:auto;backface-visibility:hidden}.vidtreo-video-preview-skeleton{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:#000;overflow:hidden;z-index:2;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-skeleton-shimmer{position:absolute;inset:0;background:linear-gradient( 90deg,hsl(var(--vidtreo-muted)) 0%,hsl(var(--vidtreo-muted) / 0.5) 50%,hsl(var(--vidtreo-muted)) 100% );background-size:200% 100%;animation:vidtreo-shimmer 1.5s ease-in-out infinite}@keyframes vidtreo-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.vidtreo-video-preview-skeleton.vidtreo-hidden{opacity:0;pointer-events:none;transition:opacity 0.3s ease}.vidtreo-video-preview.vidtreo-screen-share{object-fit:cover}.vidtreo-video-preview.vidtreo-transitioning{opacity:0.5;transform:scale(0.98)}.vidtreo-countdown-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.95);display:none;align-items:center;justify-content:center;border-radius:0;z-index:var(--vidtreo-z-countdown-overlay);transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-countdown-overlay.vidtreo-active{display:flex}.vidtreo-countdown-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.vidtreo-countdown-number{font-size:9rem;font-weight:bold;color:#ffffff;animation:vidtreo-zoomIn 0.3s ease}@keyframes vidtreo-zoomIn{from{transform:scale(0.5);opacity:0}to{transform:scale(1);opacity:1}}.vidtreo-countdown-text{font-size:0.875rem;color:#ffffff;margin-top:1rem;font-weight:500}.vidtreo-settings-panel{position:absolute;bottom:4rem;left:50%;margin-left:-47%;background:rgba(0,0,0,0.4);border:none;border-radius:0.75rem;padding:0.625rem;display:none;flex-direction:column;z-index:var(--vidtreo-z-settings-panel);width:90%;overflow:hidden;contain:layout style paint;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-panel.vidtreo-active{display:flex}.vidtreo-settings-content{width:100%;display:flex;flex-direction:column;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.vidtreo-settings-content.vidtreo-slide-right{animation:vidtreo-slideRight 0.3s ease}.vidtreo-settings-content.vidtreo-slide-left{animation:vidtreo-slideLeft 0.3s ease}.vidtreo-settings-content.vidtreo-slide-none{animation:none;will-change:auto}@keyframes vidtreo-slideIn{from{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes vidtreo-slideRight{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes vidtreo-slideLeft{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.vidtreo-settings-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;background:none;border:none;color:#ffffff;cursor:pointer;padding:0;width:100%;text-align:left}.vidtreo-settings-back-icon{flex-shrink:0;color:#ffffff}.vidtreo-settings-title{font-size:0.875rem;font-weight:600;margin:0;color:#ffffff}.vidtreo-device-options-container{display:flex;flex-direction:column;gap:0.375rem}.vidtreo-device-option-nav{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;width:100%;gap:1rem;border-radius:0.5rem}.vidtreo-device-option-nav:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-nav-content{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}.vidtreo-device-option-nav-label{font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-device-option-nav-value{display:flex;align-items:center;gap:0.5rem;flex:1;justify-content:flex-end;min-width:0}.vidtreo-device-option-nav-value-text{font-size:0.875rem;color:rgba(255,255,255,0.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}.vidtreo-device-option-nav-chevron{font-size:1.25rem;color:#ffffff;line-height:1}.vidtreo-device-list{display:flex;flex-direction:column;gap:0;max-height:200px;overflow-y:auto}.vidtreo-device-list::-webkit-scrollbar{width:4px}.vidtreo-device-list::-webkit-scrollbar-track{background:transparent}.vidtreo-device-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:2px}.vidtreo-device-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.3)}.vidtreo-device-option{display:flex;align-items:center;padding:0.5rem 0.75rem;background:none;border:none;cursor:pointer;color:#ffffff;transition:background-color 0.2s ease;text-align:left;width:100%;gap:0.75rem;border-radius:0.5rem}.vidtreo-device-option:hover{background:rgba(255,255,255,0.2)}.vidtreo-device-option-check-container{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vidtreo-device-checkmark-placeholder{width:20px;height:20px;flex-shrink:0}.vidtreo-device-checkmark{color:#ffffff;flex-shrink:0}.vidtreo-device-option-label{font-size:0.875rem;color:#ffffff;flex:1}.vidtreo-device-empty{padding:1rem 0;font-size:0.875rem;color:rgba(255,255,255,0.6);text-align:center}.vidtreo-audio-level-bars{position:absolute;bottom:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.125rem;height:1rem;z-index:var(--vidtreo-z-controls);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}@media (min-width:768px){.vidtreo-audio-level-bars{height:1.25rem}}.vidtreo-audio-level-bar{width:0.125rem;border-radius:9999px;background:rgba(255,255,255,0.5);transition:all 0.1s ease;align-self:flex-end}.vidtreo-recording-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%) translateZ(0);z-index:var(--vidtreo-z-controls);contain:layout style;will-change:auto;backface-visibility:hidden}.vidtreo-recording-controls-row{display:flex;align-items:center;justify-content:center;gap:0.5rem;transform:translateZ(0);will-change:auto}.vidtreo-recording-timer-row{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.vidtreo-recording-timer-badge{position:absolute;top:0.75rem;right:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);z-index:var(--vidtreo-z-controls);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-recording-dot-small{width:0.375rem;height:0.375rem;background:hsl(var(--vidtreo-destructive));border-radius:50%;animation:vidtreo-pulse 1.5s ease-in-out infinite}.vidtreo-recording-timer-text{font-size:0.75rem;font-family:monospace;font-weight:500;color:#ffffff}.vidtreo-control-buttons-row{display:flex;align-items:center;justify-content:center;gap:0.375rem;height:auto;min-height:2rem;transform:translateZ(0);will-change:auto}@media (min-width:768px){.vidtreo-control-buttons-row{min-height:2.25rem}}.vidtreo-control-button{width:2rem;height:2rem;min-height:2rem;max-height:2rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.2s ease;color:#ffffff;padding:0.25rem;margin:0;flex-shrink:0;box-sizing:border-box;vertical-align:top;position:relative;transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-control-button::before{content:"";position:absolute;inset:0.25rem;border-radius:9999px;transition:background-color 0.2s ease;z-index:0}.vidtreo-control-button svg{width:22px !important;height:22px !important;color:inherit;flex-shrink:0;position:relative;z-index:1}@media (min-width:768px){.vidtreo-control-button svg{width:24px !important;height:24px !important}}@media (min-width:768px){.vidtreo-control-button{width:2.25rem;height:2.25rem;min-height:2.25rem;max-height:2.25rem}}.vidtreo-control-button:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-control-button:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-control-button.vidtreo-muted::before{background:rgba(0,0,0,0.3)}.vidtreo-control-button.vidtreo-muted:hover:not(:disabled)::before{background:rgba(255,255,255,0.2)}.vidtreo-record-button{height:2rem;min-height:2rem;max-height:2rem;padding:0 0.75rem;border-radius:9999px;font-weight:500;font-size:0.75rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;display:inline-flex;align-items:center;justify-content:center;gap:0.375rem;transition:background-color 0.2s ease,filter 0.2s ease;width:auto;margin:0;line-height:1;flex-shrink:0;box-sizing:border-box;vertical-align:top;cursor:pointer}@media (min-width:768px){.vidtreo-record-button{height:2.25rem;min-height:2.25rem;max-height:2.25rem;font-size:0.875rem}}.vidtreo-record-button:hover:not(:disabled){filter:brightness(0.85)}#startButton.vidtreo-record-button{animation:vidtreo-record-glow-pulse 2s ease-in-out infinite}@keyframes vidtreo-record-glow-pulse{0%,100%{box-shadow:0 0 8px 2px rgba(239,68,68,0.4),0 0 16px 4px rgba(239,68,68,0.2)}50%{box-shadow:0 0 16px 4px rgba(239,68,68,0.6),0 0 32px 8px rgba(239,68,68,0.3)}}#startButton.vidtreo-record-button:hover:not(:disabled){animation-play-state:paused;box-shadow:0 0 20px 6px rgba(239,68,68,0.7),0 0 40px 10px rgba(239,68,68,0.35)}.vidtreo-rec-indicator-top{position:absolute;top:0.75rem;left:0.75rem;display:flex;align-items:center;gap:0.375rem;background:rgba(0,0,0,0.3);border:none;padding:0.25rem 0.5rem;border-radius:9999px;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);transform:translateZ(0);contain:layout style paint;will-change:auto;backface-visibility:hidden}.vidtreo-rec-indicator-top span{font-size:0.75rem;font-weight:500;color:#ffffff}.vidtreo-start-camera-area{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;border-radius:0;padding:40px;text-align:center;background:#000;transition:all 0.3s ease;cursor:pointer;z-index:1;transform:translateZ(0);contain:layout style paint;backface-visibility:hidden;will-change:auto}.vidtreo-start-camera-area:hover:not(.vidtreo-loading){background:#000}.vidtreo-start-camera-area.vidtreo-loading{cursor:wait;opacity:0.7}.vidtreo-start-camera-area.vidtreo-loading .vidtreo-camera-text{color:#ffffff;opacity:0.7}.vidtreo-camera-icon{font-size:48px;margin-bottom:16px;display:flex;justify-content:center;color:#ffffff}.vidtreo-camera-text{color:#ffffff;font-weight:600;margin-bottom:8px}.vidtreo-camera-hint{color:#ffffff;font-size:12px;opacity:0.8}@keyframes vidtreo-pulse{0%,100%{opacity:1}50%{opacity:0.3}}.vidtreo-progress{margin-top:20px;display:none}.vidtreo-progress.vidtreo-active{display:block}.vidtreo-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.vidtreo-progress-fill{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);width:0%;transition:width 0.3s ease}.vidtreo-progress-text{text-align:center;color:#ffffff;font-size:14px}.vidtreo-error{position:absolute;top:0.75rem;left:50%;transform:translateX(-50%);padding:1rem 1.25rem;background:#dc2626;border:none;border-radius:0.5rem;color:#ffffff;font-size:0.875rem;font-weight:500;text-align:center;z-index:var(--vidtreo-z-error-overlay);display:none;box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);max-width:90%;word-wrap:break-word}.vidtreo-error.vidtreo-active{display:block;animation:vidtreo-error-fade-in-slide-down 0.3s ease-out}@keyframes vidtreo-error-fade-in-slide-down{from{opacity:0;transform:translateX(-50%) translateY(-1rem)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.vidtreo-upload-progress{margin-top:20px;display:none}.vidtreo-upload-progress.vidtreo-active{display:block}.vidtreo-preview-container .vidtreo-upload-progress{margin-top:0}.vidtreo-upload-status{margin-top:20px;padding:16px;border-radius:8px;display:none}.vidtreo-upload-status.vidtreo-active{display:block}.vidtreo-upload-status.vidtreo-success{background:#f0f9ff;border:2px solid #48bb78;color:#22543d}.vidtreo-upload-status.vidtreo-error{background:#fee;border:2px solid #fcc;color:#c33}.vidtreo-upload-status-text{font-size:14px;font-weight:500}.vidtreo-preview-error{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:0;overflow:hidden;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;border:none;contain:strict;transform:translateZ(0);will-change:auto;backface-visibility:hidden;isolation:isolate}@media (min-width:768px){.vidtreo-preview-error{aspect-ratio:16 / 9}}.vidtreo-error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:#ffffff;max-width:400px}.vidtreo-error-icon{font-size:3rem;line-height:1}.vidtreo-error-title{font-size:1.25rem;font-weight:600;line-height:1.2}.vidtreo-error-message{font-size:0.875rem;line-height:1.5;opacity:0.9;word-break:break-word}.vidtreo-error-config{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.2);width:100%;text-align:left}.vidtreo-error-config-title{font-size:0.875rem;font-weight:600;margin-bottom:0.75rem;color:#ffffff}.vidtreo-error-config-item{font-size:0.8125rem;line-height:1.6;margin-bottom:0.5rem;color:rgba(255,255,255,0.85)}.vidtreo-error-config-item code{background:rgba(255,255,255,0.15);padding:0.125rem 0.375rem;border-radius:0.25rem;font-family:monospace;font-size:0.75rem;color:#ffffff}.vidtreo-error-retry{margin-top:0.5rem;padding:0.5rem 1rem;border-radius:0.375rem;background:hsl(var(--vidtreo-destructive));color:hsl(var(--vidtreo-destructive-foreground));border:none;font-size:0.875rem;font-weight:500;cursor:pointer;transition:filter 0.2s ease}.vidtreo-error-retry:hover:not(:disabled){filter:brightness(0.85)}.vidtreo-error-retry:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-error-overlay{position:absolute;inset:0;background:hsl(var(--vidtreo-preview-bg));display:flex;align-items:center;justify-content:center;z-index:var(--vidtreo-z-error-overlay)}.vidtreo-native-camera-container{position:relative;width:100%;aspect-ratio:9 / 16;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}@media (min-width:768px){.vidtreo-native-camera-container{aspect-ratio:16 / 9}}.vidtreo-native-camera-container:has(.vidtreo-native-camera-preview-container){background:transparent}.vidtreo-config-loading-indicator{position:absolute;top:8px;right:8px;z-index:var(--vidtreo-z-controls)}.vidtreo-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:spin 0.6s linear infinite}.vidtreo-native-camera-empty-state{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px}.vidtreo-native-camera-buttons{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.vidtreo-native-camera-process-button,.vidtreo-native-camera-download-button{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:30}.vidtreo-native-camera-process-button .vidtreo-btn,.vidtreo-native-camera-download-button .vidtreo-btn{min-width:200px}.vidtreo-btn{padding:12px 24px;border-radius:var(--vidtreo-radius);font-size:1rem;font-weight:500;cursor:pointer;border:none;transition:all 0.2s}.vidtreo-btn:disabled{opacity:0.5;cursor:not-allowed}.vidtreo-btn-primary{background:hsl(var(--vidtreo-primary));color:hsl(var(--vidtreo-primary-foreground))}.vidtreo-btn-primary:hover:not(:disabled){filter:brightness(0.9)}.vidtreo-btn-secondary{background:hsl(var(--vidtreo-secondary));color:hsl(var(--vidtreo-secondary-foreground));border:1px solid hsl(var(--vidtreo-border))}.vidtreo-btn-secondary:hover:not(:disabled){background:hsl(var(--vidtreo-accent))}.vidtreo-transcoding-progress{width:100%;max-width:400px;padding:16px}.vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-fill{height:100%;background:hsl(var(--vidtreo-primary));transition:width 0.3s ease}.vidtreo-progress-text{margin-top:8px;text-align:center;font-size:0.875rem;color:hsl(var(--vidtreo-foreground))}.vidtreo-native-camera-preview-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.vidtreo-native-camera-preview-image{width:100%;height:100%;object-fit:contain;display:block}.vidtreo-progress-overlay{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);z-index:var(--vidtreo-z-progress-overlay);pointer-events:none}.vidtreo-progress-overlay .vidtreo-transcoding-progress,.vidtreo-progress-overlay .vidtreo-upload-progress{position:relative;width:90%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;background:transparent;pointer-events:auto}.vidtreo-progress-overlay .vidtreo-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-text{margin-top:0;text-align:center;font-size:0.875rem;font-weight:500;color:#ffffff}.vidtreo-progress-overlay .vidtreo-upload-progress-bar{width:100%;height:8px;background:rgba(255,255,255,0.2);border-radius:4px;overflow:hidden}.vidtreo-progress-overlay .vidtreo-upload-progress-fill{height:100%;background:#ffffff;transition:width 0.3s ease}.vidtreo-progress-overlay .vidtreo-progress-indeterminate{width:100%;background:linear-gradient( 90deg,transparent 0%,#ffffff 50%,transparent 100% );background-size:200% 100%;animation:vidtreo-progress-indeterminate 1.5s ease-in-out infinite}@keyframes vidtreo-progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}.vidtreo-mobile-web-recorder{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.vidtreo-mobile-landing-container{position:relative;width:100%;aspect-ratio:4 / 3;max-height:100%;display:flex;align-items:center;justify-content:center;background:hsl(var(--vidtreo-preview-bg));border-radius:0;overflow:hidden}.vidtreo-mobile-landing-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2rem;text-align:center}.vidtreo-mobile-landing-title{font-size:1.25rem;font-weight:600;color:#ffffff;margin:0;line-height:1.3}.vidtreo-mobile-landing-description{font-size:0.875rem;color:rgba(255,255,255,0.75);margin:0;max-width:280px;line-height:1.5}.vidtreo-mobile-open-camera-btn{display:inline-flex;align-items:center;gap:0.625rem;padding:0.875rem 1.75rem;font-size:1rem;font-weight:600;min-width:200px;justify-content:center;margin-top:0.5rem;border-radius:9999px;transition:all 0.2s ease;animation:vidtreo-btn-glow-pulse 2s ease-in-out infinite}@keyframes vidtreo-btn-glow-pulse{0%,100%{box-shadow:0 0 8px 2px rgba(255,255,255,0.3),0 0 16px 4px rgba(255,255,255,0.15)}50%{box-shadow:0 0 16px 4px rgba(255,255,255,0.5),0 0 32px 8px rgba(255,255,255,0.25)}}.vidtreo-mobile-open-camera-btn:hover:not(:disabled){transform:scale(1.02);animation-play-state:paused;box-shadow:0 0 20px 6px rgba(255,255,255,0.6),0 0 40px 10px rgba(255,255,255,0.3)}.vidtreo-mobile-open-camera-btn:active:not(:disabled){transform:scale(0.98)}.vidtreo-mobile-open-camera-btn:disabled{animation:none;box-shadow:none}.vidtreo-mobile-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;background:#000000;z-index:var(--vidtreo-z-modal-overlay);display:flex;flex-direction:column;animation:vidtreo-modal-fade-in 0.3s ease-out;height:-webkit-fill-available}@keyframes vidtreo-modal-fade-in{from{opacity:0}to{opacity:1}}.vidtreo-mobile-modal-header{position:absolute;top:0;left:0;right:0;padding:0.75rem;padding-top:calc(0.75rem+env(safe-area-inset-top,0px));display:flex;justify-content:center;z-index:var(--vidtreo-z-error-overlay);pointer-events:none}.vidtreo-mobile-modal-close-btn{height:2rem;padding:0 0.75rem;border-radius:9999px;border:none;background:rgba(0,0,0,0.5);color:rgba(255,255,255,0.9);display:flex;align-items:center;justify-content:center;gap:0.375rem;cursor:pointer;transition:all 0.2s ease;pointer-events:auto;backdrop-filter:blur(4px);font-size:0.75rem;font-weight:500}.vidtreo-mobile-modal-close-btn:hover:not(:disabled){background:rgba(0,0,0,0.7)}.vidtreo-mobile-modal-close-btn:disabled{opacity:0.3;cursor:not-allowed}.vidtreo-mobile-modal-content{flex:1;display:flex;flex-direction:column;width:100%;height:100%;position:relative;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.vidtreo-mobile-recorder-content{width:100%;height:100%;display:flex;flex-direction:column;position:relative}.vidtreo-mobile-recorder-content .vidtreo-preview-container{aspect-ratio:unset;height:100%;width:100%;flex:1}.vidtreo-mobile-recorder-content .vidtreo-video-preview{object-fit:cover}.vidtreo-mobile-preview{aspect-ratio:unset !important;height:100% !important;flex:1}.vidtreo-mobile-recorder-content .vidtreo-recording-controls{bottom:calc(24px+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-audio-level-bars{bottom:calc(12px+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-settings-panel{bottom:calc(7rem+env(safe-area-inset-bottom,0px))}.vidtreo-mobile-recorder-content .vidtreo-rec-indicator-top{top:calc(0.75rem+env(safe-area-inset-top,0px));height:2rem;padding:0 0.75rem;contain:layout style}.vidtreo-mobile-recorder-content .vidtreo-recording-timer-badge{top:calc(0.75rem+env(safe-area-inset-top,0px));height:2rem;padding:0 0.75rem;contain:layout style}.vidtreo-mobile-recorder-content .vidtreo-recording-timer-text{font-size:0.875rem;white-space:nowrap;color:#ffffff;min-width:3rem;display:inline-block}.vidtreo-mobile-recorder-content .vidtreo-error{top:calc(3.5rem+env(safe-area-inset-top,0px))}.vidtreo-mobile-recorder-content .vidtreo-control-buttons-row{gap:0.75rem;min-height:4rem}.vidtreo-mobile-recorder-content .vidtreo-control-button{width:4rem;height:4rem;min-height:4rem;max-height:4rem}.vidtreo-mobile-recorder-content .vidtreo-control-button svg{width:1.5rem;height:1.5rem}.vidtreo-mobile-recorder-content .vidtreo-record-button{height:4rem;min-height:4rem;max-height:4rem;padding:0 1.5rem;font-size:1rem;gap:0.5rem}.vidtreo-mobile-recorder-content .vidtreo-record-button svg{width:1.5rem;height:1.5rem}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vidtreo/recorder-react",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "React components and hooks for @vidtreo/recorder - video recording SDK",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"author": "cfonseca@vidtreo.com",
|
|
45
45
|
"license": "MIT",
|
|
46
46
|
"peerDependencies": {
|
|
47
|
-
"@vidtreo/recorder": ">=1.0.
|
|
47
|
+
"@vidtreo/recorder": ">=1.0.6",
|
|
48
48
|
"react": ">=18.0.0",
|
|
49
49
|
"react-dom": ">=18.0.0"
|
|
50
50
|
},
|