@vocalstack/player 0.1.0-alpha.39 → 0.1.0-alpha.40
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.js +548 -544
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var ge = (t, e, n) =>
|
|
1
|
+
var $a = Object.defineProperty;
|
|
2
|
+
var Qa = (t, e, n) => e in t ? $a(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
|
+
var ge = (t, e, n) => Qa(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
4
|
import { jsx as i, jsxs as g, Fragment as xe } from "react/jsx-runtime";
|
|
5
|
-
import { useState as L, useRef as k, useEffect as D, useLayoutEffect as Kt, createContext as ki, useMemo as ze, useContext as
|
|
6
|
-
import { createPortal as
|
|
5
|
+
import { useState as L, useRef as k, useEffect as D, useLayoutEffect as Kt, createContext as ki, useMemo as ze, useContext as Ba, useCallback as Je, Fragment as Va, forwardRef as Ha, useImperativeHandle as Wa } from "react";
|
|
6
|
+
import { createPortal as Fa } from "react-dom";
|
|
7
7
|
import { VocalStackError as ji, VocalStack as zi } from "@vocalstack/js-sdk";
|
|
8
|
-
const Ii = "https://vocalstack.com", Fa = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzU1YWJlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", Za = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDVCOEY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzI0NUI4RjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZWM2MzRkIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", Ga = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojNTVhYmU1O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2Y3ODQ3MiIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==", qa = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojMjQ1YjhmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDViOGY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==";
|
|
9
|
-
function
|
|
8
|
+
const Ii = "https://vocalstack.com", Za = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzU1YWJlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", Ga = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDVCOEY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzI0NUI4RjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZWM2MzRkIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", qa = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojNTVhYmU1O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2Y3ODQ3MiIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==", Ka = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojMjQ1YjhmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDViOGY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==";
|
|
9
|
+
function Ja({ size: t = 16, sw: e = 1.5, children: n, style: r, ...s }) {
|
|
10
10
|
return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "none", stroke: "currentColor", strokeWidth: e, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", style: { flex: "none", ...r }, ...s, children: n });
|
|
11
11
|
}
|
|
12
12
|
const X = {
|
|
@@ -53,12 +53,12 @@ const X = {
|
|
|
53
53
|
video: "m15.75 10.5 4.72-4.72a.75.75 0 0 1 1.28.53v11.38a.75.75 0 0 1-1.28.53l-4.72-4.72M4.5 18.75h9a2.25 2.25 0 0 0 2.25-2.25v-9a2.25 2.25 0 0 0-2.25-2.25h-9A2.25 2.25 0 0 0 2.25 7.5v9a2.25 2.25 0 0 0 2.25 2.25Z"
|
|
54
54
|
};
|
|
55
55
|
function oe({ d: t, ...e }) {
|
|
56
|
-
return /* @__PURE__ */ i(
|
|
56
|
+
return /* @__PURE__ */ i(Ja, { ...e, children: (Array.isArray(t) ? t : [t]).map((n) => /* @__PURE__ */ i("path", { d: n }, n)) });
|
|
57
57
|
}
|
|
58
|
-
function
|
|
58
|
+
function Xa({ size: t = 15 }) {
|
|
59
59
|
return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", "aria-hidden": "true", children: /* @__PURE__ */ i("rect", { x: "6", y: "6", width: "12", height: "12", rx: "2.5" }) });
|
|
60
60
|
}
|
|
61
|
-
function
|
|
61
|
+
function Mn({ size: t = 13 }) {
|
|
62
62
|
return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", style: { marginLeft: 2 }, "aria-hidden": "true", children: /* @__PURE__ */ i("path", { d: "M7.5 5.6a1 1 0 0 1 1.52-.85l9.1 5.55a1 1 0 0 1 0 1.7l-9.1 5.55a1 1 0 0 1-1.52-.85V5.6Z" }) });
|
|
63
63
|
}
|
|
64
64
|
function lt({ size: t = 15, color: e = "currentColor", track: n = "rgba(127,127,127,.35)", sw: r }) {
|
|
@@ -80,18 +80,18 @@ function lt({ size: t = 15, color: e = "currentColor", track: n = "rgba(127,127,
|
|
|
80
80
|
}
|
|
81
81
|
);
|
|
82
82
|
}
|
|
83
|
-
function
|
|
83
|
+
function eo({ size: t = 12 }) {
|
|
84
84
|
return /* @__PURE__ */ g("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", "aria-hidden": "true", children: [
|
|
85
85
|
/* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
|
|
86
86
|
/* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
|
|
87
87
|
] });
|
|
88
88
|
}
|
|
89
89
|
function $n({ dark: t, height: e = 20, link: n = !0 }) {
|
|
90
|
-
const r = /* @__PURE__ */ i("img", { src: t ?
|
|
90
|
+
const r = /* @__PURE__ */ i("img", { src: t ? Za : Ga, alt: "VocalStack", decoding: "sync", style: { height: e, width: "auto", display: "block" } });
|
|
91
91
|
return n ? /* @__PURE__ */ i("a", { href: Ii, style: { display: "block" }, children: r }) : r;
|
|
92
92
|
}
|
|
93
93
|
function Ar({ dark: t, size: e = 30 }) {
|
|
94
|
-
return /* @__PURE__ */ i("img", { src: t ?
|
|
94
|
+
return /* @__PURE__ */ i("img", { src: t ? qa : Ka, alt: "VocalStack", style: { width: e, height: Math.round(e * 26 / 30 * 100) / 100, display: "block" } });
|
|
95
95
|
}
|
|
96
96
|
function ei({ children: t, panel: e, inset: n, className: r = "", style: s }) {
|
|
97
97
|
return /* @__PURE__ */ i("div", { className: `vs-card${e ? " panel" : ""}${n ? " vs-card--inset" : ""} ${r}`, style: s, children: t });
|
|
@@ -122,10 +122,10 @@ function wr({ value: t, onChange: e, options: n, size: r, bordered: s = !0, fill
|
|
|
122
122
|
] }, d.value))
|
|
123
123
|
] });
|
|
124
124
|
}
|
|
125
|
-
function
|
|
125
|
+
function to({ children: t, onClick: e, label: n, size: r, variant: s, bordered: a = !0, active: o, title: l }) {
|
|
126
126
|
return /* @__PURE__ */ i("button", { type: "button", className: `vs-icon-btn${r === "sm" ? " vs-icon-btn--sm" : ""}${s === "primary" ? " vs-icon-btn--primary" : ""}${o ? " vs-icon-btn--primary" : ""}${a ? "" : " vs-icon-btn--borderless"}`, onClick: e, "aria-label": n, title: l ?? n, children: t });
|
|
127
127
|
}
|
|
128
|
-
function
|
|
128
|
+
function Yn({ flag: t, code: e, label: n, onClick: r, variant: s, block: a, bordered: o = !0, size: l, style: c, flagOnly: u }) {
|
|
129
129
|
if (u)
|
|
130
130
|
return /* @__PURE__ */ i("button", { type: "button", className: "mutebtn vs-flagbtn", onClick: r, "aria-label": n ? e ? `${n} (${e})` : n : e || "Language", title: n ?? e, style: c, children: /* @__PURE__ */ i("span", { style: { fontSize: 20, lineHeight: 1, display: "flex" }, children: t }) });
|
|
131
131
|
const d = a && !!e;
|
|
@@ -135,7 +135,7 @@ function _n({ flag: t, code: e, label: n, onClick: r, variant: s, block: a, bord
|
|
|
135
135
|
/* @__PURE__ */ i(oe, { d: X.chevronDown, size: 13, className: "vs-lang-chip__chevron", style: { color: s === "primary" ? "currentColor" : "var(--vs-text-muted)" } })
|
|
136
136
|
] });
|
|
137
137
|
}
|
|
138
|
-
function
|
|
138
|
+
function no({ value: t, label: e = "Copy", onCopied: n }) {
|
|
139
139
|
const [r, s] = L(!1), a = async () => {
|
|
140
140
|
try {
|
|
141
141
|
await navigator.clipboard.writeText(t), s(!0), n == null || n(), setTimeout(() => s(!1), 1400);
|
|
@@ -160,7 +160,7 @@ function to({ value: t, label: e = "Copy", onCopied: n }) {
|
|
|
160
160
|
}
|
|
161
161
|
);
|
|
162
162
|
}
|
|
163
|
-
function
|
|
163
|
+
function ro(t, e) {
|
|
164
164
|
Kt(() => {
|
|
165
165
|
const n = t.current, r = window.visualViewport;
|
|
166
166
|
if (!e || !n || !r) return;
|
|
@@ -182,9 +182,9 @@ function vr({ children: t, ms: e = 220 }) {
|
|
|
182
182
|
var r;
|
|
183
183
|
return typeof window < "u" && !!((r = window.matchMedia) != null && r.call(window, "(hover: hover) and (pointer: fine)").matches);
|
|
184
184
|
});
|
|
185
|
-
return n ? /* @__PURE__ */ i(
|
|
185
|
+
return n ? /* @__PURE__ */ i(so, { ms: e, children: t }) : /* @__PURE__ */ i("div", { children: t });
|
|
186
186
|
}
|
|
187
|
-
function
|
|
187
|
+
function so({ children: t, ms: e }) {
|
|
188
188
|
const n = k(null), r = k(null), [s, a] = L(null);
|
|
189
189
|
return Kt(() => {
|
|
190
190
|
const o = r.current, l = n.current;
|
|
@@ -211,7 +211,7 @@ function ro({ children: t, ms: e }) {
|
|
|
211
211
|
}
|
|
212
212
|
function Jt({ open: t, onClose: e, title: n, titleNode: r, note: s, doneLabel: a = "Done", children: o, drawer: l = !1, header: c, kind: u, sticky: d = !1 }) {
|
|
213
213
|
const M = k(null);
|
|
214
|
-
return
|
|
214
|
+
return ro(M, t), D(() => {
|
|
215
215
|
if (!t) return;
|
|
216
216
|
const h = (f) => {
|
|
217
217
|
f.key === "Escape" && e();
|
|
@@ -232,12 +232,12 @@ ki(0);
|
|
|
232
232
|
function Lr({ children: t, style: e, className: n }) {
|
|
233
233
|
return /* @__PURE__ */ i("div", { className: n ? `eyebrow ${n}` : "eyebrow", style: e, children: t });
|
|
234
234
|
}
|
|
235
|
-
let
|
|
236
|
-
function
|
|
237
|
-
|
|
235
|
+
let xn = null;
|
|
236
|
+
function Qu(t) {
|
|
237
|
+
xn = t;
|
|
238
238
|
}
|
|
239
239
|
function Oi(t) {
|
|
240
|
-
|
|
240
|
+
xn == null || xn(t);
|
|
241
241
|
}
|
|
242
242
|
function Qn() {
|
|
243
243
|
try {
|
|
@@ -246,11 +246,11 @@ function Qn() {
|
|
|
246
246
|
return "ogg";
|
|
247
247
|
}
|
|
248
248
|
}
|
|
249
|
-
function
|
|
249
|
+
function io(t = {}) {
|
|
250
250
|
const e = new URLSearchParams();
|
|
251
251
|
return t.media ? e.set("media", t.media) : t.accessToken && e.set("access_token", t.accessToken), t.listenerToken && e.set("listenerToken", t.listenerToken), t.shareCode && e.set("shareCode", t.shareCode), e.toString();
|
|
252
252
|
}
|
|
253
|
-
async function
|
|
253
|
+
async function ao(t) {
|
|
254
254
|
try {
|
|
255
255
|
const e = await fetch(t, { redirect: "manual", headers: { accept: "application/json" } });
|
|
256
256
|
if (e.type === "opaqueredirect" || e.ok || e.status >= 300 && e.status < 400) return null;
|
|
@@ -265,7 +265,7 @@ async function io(t) {
|
|
|
265
265
|
return null;
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
|
-
async function
|
|
268
|
+
async function oo(t) {
|
|
269
269
|
try {
|
|
270
270
|
const e = await fetch(t, { redirect: "manual", headers: { accept: "application/json" } });
|
|
271
271
|
return e.type === "opaqueredirect" || e.status >= 300 && e.status < 400;
|
|
@@ -273,7 +273,7 @@ async function ao(t) {
|
|
|
273
273
|
return !1;
|
|
274
274
|
}
|
|
275
275
|
}
|
|
276
|
-
function
|
|
276
|
+
function lo(t, e, n = {}) {
|
|
277
277
|
const r = new URLSearchParams({ kind: "delivery", format: Qn() });
|
|
278
278
|
return n.media ? r.set("media", n.media) : n.accessToken && r.set("access_token", n.accessToken), n.listenerToken && r.set("listenerToken", n.listenerToken), n.shareCode && r.set("shareCode", n.shareCode), `${t}/v1/recordings/${e}/audio?${r}`;
|
|
279
279
|
}
|
|
@@ -281,18 +281,18 @@ function ti(t, e, n = {}, r = "background") {
|
|
|
281
281
|
const s = new URLSearchParams({ kind: r, format: Qn() });
|
|
282
282
|
return n.media ? s.set("media", n.media) : n.accessToken && s.set("access_token", n.accessToken), n.listenerToken && s.set("listenerToken", n.listenerToken), n.shareCode && s.set("shareCode", n.shareCode), `${t}/v1/recordings/${e}/audio?${s}`;
|
|
283
283
|
}
|
|
284
|
-
function
|
|
284
|
+
function bn(t, e, n, r = {}) {
|
|
285
285
|
const s = new URLSearchParams({ kind: n });
|
|
286
286
|
return n === "delivery" && s.set("format", "mp3"), r.media ? s.set("media", r.media) : r.accessToken && s.set("access_token", r.accessToken), r.listenerToken && s.set("listenerToken", r.listenerToken), r.shareCode && s.set("shareCode", r.shareCode), `${t}/v1/recordings/${e}/audio?${s}`;
|
|
287
287
|
}
|
|
288
|
-
function
|
|
289
|
-
return
|
|
288
|
+
function co(t, e, n, r, s = {}) {
|
|
289
|
+
return uo(t, e, n, r, "mp3", s);
|
|
290
290
|
}
|
|
291
|
-
function
|
|
291
|
+
function uo(t, e, n, r, s, a) {
|
|
292
292
|
const o = new URLSearchParams({ kind: "voice", lang: n, format: s });
|
|
293
293
|
return r && o.set("voice", r), a.media ? o.set("media", a.media) : a.accessToken && o.set("access_token", a.accessToken), a.listenerToken && o.set("listenerToken", a.listenerToken), a.shareCode && o.set("shareCode", a.shareCode), `${t}/v1/recordings/${e}/audio?${o}`;
|
|
294
294
|
}
|
|
295
|
-
function
|
|
295
|
+
function ho(t, e = !0) {
|
|
296
296
|
const n = (t == null ? void 0 : t.code) ?? 0, r = n === 2 ? "the download failed" : n === 3 ? "this browser could not decode it" : n === 4 ? "the file is not available, or this browser cannot play it" : n === 1 ? "the load was stopped" : "something went wrong";
|
|
297
297
|
return e && bi(t), `The audio could not be played: ${r}.`;
|
|
298
298
|
}
|
|
@@ -300,15 +300,15 @@ function bi(t) {
|
|
|
300
300
|
const e = (t == null ? void 0 : t.code) ?? 0;
|
|
301
301
|
e !== 1 && Oi(new Error(`media error ${e}${t != null && t.message ? `: ${t.message}` : ""}`));
|
|
302
302
|
}
|
|
303
|
-
const
|
|
304
|
-
function
|
|
303
|
+
const Mo = 3e3;
|
|
304
|
+
function go(t, e, n) {
|
|
305
305
|
if (t !== 503) return null;
|
|
306
306
|
const r = e == null || e.trim() === "" ? NaN : Number(e);
|
|
307
307
|
if (Number.isFinite(r)) return Math.min(15e3, Math.max(1e3, r * 1e3));
|
|
308
308
|
const s = n;
|
|
309
|
-
return s && (s.retryable === !0 || s.code === "engine_unavailable") ?
|
|
309
|
+
return s && (s.retryable === !0 || s.code === "engine_unavailable") ? Mo : null;
|
|
310
310
|
}
|
|
311
|
-
class
|
|
311
|
+
class fo {
|
|
312
312
|
constructor(e = {}) {
|
|
313
313
|
ge(this, "entries", /* @__PURE__ */ new Map());
|
|
314
314
|
ge(this, "wanted", []);
|
|
@@ -453,7 +453,7 @@ const nt = class nt {
|
|
|
453
453
|
ge(this, "loading", null);
|
|
454
454
|
ge(this, "readAhead", 0);
|
|
455
455
|
ge(this, "readAheadS", 0);
|
|
456
|
-
ge(this, "prefetch", new
|
|
456
|
+
ge(this, "prefetch", new fo());
|
|
457
457
|
ge(this, "warmed", /* @__PURE__ */ new Set());
|
|
458
458
|
ge(this, "startingSince", /* @__PURE__ */ new Map());
|
|
459
459
|
ge(this, "retries", /* @__PURE__ */ new Map());
|
|
@@ -789,7 +789,7 @@ const nt = class nt {
|
|
|
789
789
|
const l = await fetch(n, { method: "GET" });
|
|
790
790
|
s = l.ok, r = l.status === 202 || l.status === 503 || l.status === 429;
|
|
791
791
|
const c = l.status === 503 ? await l.json().catch(() => null) : null;
|
|
792
|
-
a =
|
|
792
|
+
a = go(l.status, l.headers.get("Retry-After"), c);
|
|
793
793
|
} catch {
|
|
794
794
|
r = !0;
|
|
795
795
|
}
|
|
@@ -895,11 +895,11 @@ let kr = nt;
|
|
|
895
895
|
function Di(t, e) {
|
|
896
896
|
return e == null ? t.find((n) => !n.voiceKey) ?? null : t.find((n) => n.voiceKey === e) ?? t.find((n) => !n.voiceKey && n.voice === e) ?? null;
|
|
897
897
|
}
|
|
898
|
-
function
|
|
898
|
+
function po(t, e, n, r = {}, s) {
|
|
899
899
|
if (!t) return [];
|
|
900
900
|
const a = s != null && s.length ? s : t.clips;
|
|
901
901
|
if (!(a != null && a.length)) return [];
|
|
902
|
-
const o =
|
|
902
|
+
const o = io(r), l = o ? `&${o}` : "", c = t.voiceKey ? `&voice=${encodeURIComponent(t.voiceKey)}` : "";
|
|
903
903
|
return a.flatMap((u) => {
|
|
904
904
|
var h, f;
|
|
905
905
|
const d = (h = t.clipRev) == null ? void 0 : h[String(u)], M = Math.max(1, ((f = t.clipParts) == null ? void 0 : f[String(u)]) ?? 1);
|
|
@@ -925,9 +925,9 @@ function Ai(t, e) {
|
|
|
925
925
|
for (let s = 0; s < n.length && e.t >= n[s][0]; s++) r = s;
|
|
926
926
|
return r;
|
|
927
927
|
}
|
|
928
|
-
return e.dur > 0 ?
|
|
928
|
+
return e.dur > 0 ? mo(t, e.t, e.dur) : null;
|
|
929
929
|
}
|
|
930
|
-
function
|
|
930
|
+
function mo(t, e, n) {
|
|
931
931
|
if (t.length <= 1 || !(n > 0)) return 0;
|
|
932
932
|
const r = t.map((l) => l.t.length + 1.6), s = r.reduce((l, c) => l + c, 0);
|
|
933
933
|
let a = 0;
|
|
@@ -978,14 +978,14 @@ function Yi(t, e) {
|
|
|
978
978
|
const n = new Set(t[e]);
|
|
979
979
|
return t.languages.filter((r) => n.has(r.code)).map((r) => ({ code: r.code, label: r.name, native: r.native, flag: r.flag ?? "🌐", voice: !!r.voice }));
|
|
980
980
|
}
|
|
981
|
-
function
|
|
981
|
+
function No(t) {
|
|
982
982
|
const [e, n] = Er(`vs.pins.${t}`, null);
|
|
983
983
|
return [Array.isArray(e) ? e : [], n];
|
|
984
984
|
}
|
|
985
|
-
const
|
|
986
|
-
function
|
|
985
|
+
const yo = 352;
|
|
986
|
+
function To(t) {
|
|
987
987
|
const [e, n] = Er(t === "ga" ? "vs.colW.ga" : "vs.colW", null);
|
|
988
|
-
return [typeof e == "number" && e > 0 ? e : t === "ga" ? 560 :
|
|
988
|
+
return [typeof e == "number" && e > 0 ? e : t === "ga" ? 560 : yo, n];
|
|
989
989
|
}
|
|
990
990
|
function _r({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPlaceholder: a = "Search languages", none: o, pinned: l = [], recent: c = [], requireVoice: u, keepOpen: d, busy: M }) {
|
|
991
991
|
const [h, f] = L(""), [m, y] = L(!1), [j, N] = L(null);
|
|
@@ -1068,7 +1068,7 @@ function _r({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
|
|
|
1068
1068
|
] });
|
|
1069
1069
|
return { search: z, list: F };
|
|
1070
1070
|
}
|
|
1071
|
-
function
|
|
1071
|
+
function wo({ open: t, onClose: e, title: n, note: r, sticky: s, ...a }) {
|
|
1072
1072
|
const { search: o, list: l } = _r({ ...a, open: t, onClose: e });
|
|
1073
1073
|
return /* @__PURE__ */ i(Jt, { open: t, onClose: e, title: n, note: r, drawer: !1, sticky: s, kind: "picker", header: o, children: l });
|
|
1074
1074
|
}
|
|
@@ -1120,7 +1120,7 @@ function ri({ src: t, setup: e, t: n, playing: r, seekN: s, onToggle: a, seekOve
|
|
|
1120
1120
|
}
|
|
1121
1121
|
),
|
|
1122
1122
|
c && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
|
|
1123
|
-
c && /* @__PURE__ */ i("div", { className: `txyt__paused${r ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(
|
|
1123
|
+
c && /* @__PURE__ */ i("div", { className: `txyt__paused${r ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Mn, { size: 44 }) }) })
|
|
1124
1124
|
] });
|
|
1125
1125
|
}
|
|
1126
1126
|
const Ui = [
|
|
@@ -1137,11 +1137,11 @@ const Ui = [
|
|
|
1137
1137
|
{ id: "kick", name: "Kick", color: "#53fc18", hosts: /(^|\.)kick\.com$/, glyph: "M4 3h5.5v5H11V6h2V3h5.5v6.5h-2V11h-2v2h2v1.5h2V21H13v-3h-2v-2H9.5v5H4V3Z" },
|
|
1138
1138
|
{ id: "mixcloud", name: "Mixcloud", color: "#7f8cff", hosts: /(^|\.)mixcloud\.com$/, audioOnly: !0, glyph: "M17.5 9.5a5.5 5.5 0 0 0-10.6 1.2A3.8 3.8 0 0 0 7.3 18h10.2a4.25 4.25 0 0 0 0-8.5Z" },
|
|
1139
1139
|
{ id: "bandcamp", name: "Bandcamp", color: "#1da0c3", hosts: /(^|\.)bandcamp\.com$/, audioOnly: !0, glyph: "M2 18 8.5 6H22l-6.5 12H2Z" }
|
|
1140
|
-
],
|
|
1141
|
-
function
|
|
1142
|
-
return t ?
|
|
1140
|
+
], vo = new Map(Ui.map((t) => [t.id, t]));
|
|
1141
|
+
function Bu(t) {
|
|
1142
|
+
return t ? vo.get(t) ?? null : null;
|
|
1143
1143
|
}
|
|
1144
|
-
function
|
|
1144
|
+
function Lo(t) {
|
|
1145
1145
|
const e = t == null ? void 0 : t.trim();
|
|
1146
1146
|
if (!e) return null;
|
|
1147
1147
|
try {
|
|
@@ -1150,8 +1150,8 @@ function vo(t) {
|
|
|
1150
1150
|
return null;
|
|
1151
1151
|
}
|
|
1152
1152
|
}
|
|
1153
|
-
function
|
|
1154
|
-
const e =
|
|
1153
|
+
function ko(t) {
|
|
1154
|
+
const e = Lo(t);
|
|
1155
1155
|
return e ? Ui.find((n) => n.hosts.test(e)) ?? null : null;
|
|
1156
1156
|
}
|
|
1157
1157
|
function Bn(t) {
|
|
@@ -1161,13 +1161,13 @@ function Bn(t) {
|
|
|
1161
1161
|
return null;
|
|
1162
1162
|
}
|
|
1163
1163
|
}
|
|
1164
|
-
const
|
|
1164
|
+
const Sn = (t) => Math.max(0, Math.floor(t));
|
|
1165
1165
|
function Ri(t) {
|
|
1166
1166
|
var n;
|
|
1167
1167
|
const e = /\/(?:share|embed)\/(?:[^/?#]*-)?([0-9a-f]{32})(?:[/?#]|$)/i.exec(((n = Bn(t)) == null ? void 0 : n.pathname) ?? "");
|
|
1168
1168
|
return e ? e[1].toLowerCase() : null;
|
|
1169
1169
|
}
|
|
1170
|
-
function
|
|
1170
|
+
function jo(t) {
|
|
1171
1171
|
const e = Bn(t);
|
|
1172
1172
|
if (!e) return null;
|
|
1173
1173
|
const n = e.pathname.split("/").filter(Boolean), r = n.map((a, o) => /^\d+$/.test(a) ? o : -1).filter((a) => a >= 0).pop();
|
|
@@ -1175,14 +1175,14 @@ function ko(t) {
|
|
|
1175
1175
|
const s = n[r + 1];
|
|
1176
1176
|
return { id: n[r], h: e.searchParams.get("h") ?? (s && /^[0-9a-f]{6,}$/i.test(s) ? s : null) };
|
|
1177
1177
|
}
|
|
1178
|
-
function
|
|
1178
|
+
function zo(t) {
|
|
1179
1179
|
const e = Bn(t);
|
|
1180
1180
|
if (!e) return null;
|
|
1181
1181
|
if (/(^|\.)dai\.ly$/i.test(e.hostname)) return e.pathname.split("/").filter(Boolean)[0] ?? null;
|
|
1182
1182
|
const n = /\/video\/([a-z0-9]+)/i.exec(e.pathname);
|
|
1183
1183
|
return n ? n[1] : null;
|
|
1184
1184
|
}
|
|
1185
|
-
function
|
|
1185
|
+
function Io(t) {
|
|
1186
1186
|
const e = Bn(t);
|
|
1187
1187
|
if (!e) return null;
|
|
1188
1188
|
const n = e.pathname.split("/").filter(Boolean);
|
|
@@ -1192,39 +1192,39 @@ function zo(t) {
|
|
|
1192
1192
|
const s = n.indexOf("clip");
|
|
1193
1193
|
return s >= 0 && n[s + 1] ? { clip: n[s + 1] } : n[0] ? { channel: n[0] } : null;
|
|
1194
1194
|
}
|
|
1195
|
-
const
|
|
1196
|
-
const e =
|
|
1195
|
+
const Oo = (t) => {
|
|
1196
|
+
const e = Sn(t);
|
|
1197
1197
|
return `${Math.floor(e / 3600)}h${Math.floor(e % 3600 / 60)}m${e % 60}s`;
|
|
1198
1198
|
};
|
|
1199
1199
|
function Pi(t, e) {
|
|
1200
|
-
const n =
|
|
1200
|
+
const n = ko(t);
|
|
1201
1201
|
if (!n) return null;
|
|
1202
1202
|
const r = e.play ? 1 : 0;
|
|
1203
1203
|
switch (n.id) {
|
|
1204
1204
|
case "loom": {
|
|
1205
1205
|
const s = Ri(t);
|
|
1206
1206
|
if (!s) return null;
|
|
1207
|
-
const a = new URLSearchParams({ hide_owner: "true", hide_share: "true", hide_title: "true", hideEmbedTopBar: "true", hide_speed: "true", muted: "true", autoplay: e.play ? "true" : "false", t: String(
|
|
1207
|
+
const a = new URLSearchParams({ hide_owner: "true", hide_share: "true", hide_title: "true", hideEmbedTopBar: "true", hide_speed: "true", muted: "true", autoplay: e.play ? "true" : "false", t: String(Sn(e.t)) });
|
|
1208
1208
|
return `https://www.loom.com/embed/${s}?${a}`;
|
|
1209
1209
|
}
|
|
1210
1210
|
case "vimeo": {
|
|
1211
|
-
const s =
|
|
1211
|
+
const s = jo(t);
|
|
1212
1212
|
if (!s) return null;
|
|
1213
1213
|
const a = new URLSearchParams({ autoplay: String(r), muted: "1", controls: "0", title: "0", byline: "0", portrait: "0", dnt: "1" });
|
|
1214
|
-
return s.h && a.set("h", s.h), `https://player.vimeo.com/video/${s.id}?${a}#t=${
|
|
1214
|
+
return s.h && a.set("h", s.h), `https://player.vimeo.com/video/${s.id}?${a}#t=${Sn(e.t)}s`;
|
|
1215
1215
|
}
|
|
1216
1216
|
case "dailymotion": {
|
|
1217
|
-
const s =
|
|
1217
|
+
const s = zo(t);
|
|
1218
1218
|
if (!s) return null;
|
|
1219
|
-
const a = new URLSearchParams({ autoplay: String(r), mute: "1", controls: "0", "queue-enable": "0", "sharing-enable": "0", "ui-start-screen-info": "0", start: String(
|
|
1219
|
+
const a = new URLSearchParams({ autoplay: String(r), mute: "1", controls: "0", "queue-enable": "0", "sharing-enable": "0", "ui-start-screen-info": "0", start: String(Sn(e.t)) });
|
|
1220
1220
|
return `https://www.dailymotion.com/embed/video/${s}?${a}`;
|
|
1221
1221
|
}
|
|
1222
1222
|
case "twitch": {
|
|
1223
|
-
const s =
|
|
1223
|
+
const s = Io(t);
|
|
1224
1224
|
if (!s || !e.host) return null;
|
|
1225
1225
|
if (s.clip) return `https://clips.twitch.tv/embed?${new URLSearchParams({ clip: s.clip, parent: e.host, autoplay: String(!!e.play), muted: "true" })}`;
|
|
1226
1226
|
const a = new URLSearchParams({ parent: e.host, autoplay: String(!!e.play), muted: "true" });
|
|
1227
|
-
return s.video ? (a.set("video", `v${s.video}`), a.set("time",
|
|
1227
|
+
return s.video ? (a.set("video", `v${s.video}`), a.set("time", Oo(e.t))) : s.channel && a.set("channel", s.channel), `https://player.twitch.tv/?${a}`;
|
|
1228
1228
|
}
|
|
1229
1229
|
case "facebook":
|
|
1230
1230
|
return `https://www.facebook.com/plugins/video.php?${new URLSearchParams({ href: t, autoplay: String(!!e.play), mute: "1", show_text: "false" })}`;
|
|
@@ -1232,10 +1232,10 @@ function Pi(t, e) {
|
|
|
1232
1232
|
return null;
|
|
1233
1233
|
}
|
|
1234
1234
|
}
|
|
1235
|
-
function
|
|
1235
|
+
function bo(t) {
|
|
1236
1236
|
return !!t && Pi(t, { t: 0, play: !1, host: "localhost" }) != null;
|
|
1237
1237
|
}
|
|
1238
|
-
function
|
|
1238
|
+
function Co({ url: t, t: e, playing: n, seekN: r, title: s }) {
|
|
1239
1239
|
const a = k(e);
|
|
1240
1240
|
a.current = e;
|
|
1241
1241
|
const [o, l] = L(!1), c = typeof window < "u" ? window.location.hostname : "localhost", u = ze(() => Pi(t, { t: a.current, play: n, host: c }), [t, n, r, c]);
|
|
@@ -1255,7 +1255,7 @@ function bo({ url: t, t: e, playing: n, seekN: r, title: s }) {
|
|
|
1255
1255
|
u
|
|
1256
1256
|
) : null;
|
|
1257
1257
|
}
|
|
1258
|
-
async function
|
|
1258
|
+
async function xo(t) {
|
|
1259
1259
|
try {
|
|
1260
1260
|
const e = await fetch(`https://www.loom.com/api/campaigns/sessions/${t}/raw-url`, { method: "POST" });
|
|
1261
1261
|
if (!e.ok || e.status === 204) return null;
|
|
@@ -1265,17 +1265,17 @@ async function Co(t) {
|
|
|
1265
1265
|
return null;
|
|
1266
1266
|
}
|
|
1267
1267
|
}
|
|
1268
|
-
function
|
|
1268
|
+
function So(t) {
|
|
1269
1269
|
const e = t.includes("?") ? t.slice(t.indexOf("?") + 1) : "";
|
|
1270
1270
|
return (n, r) => {
|
|
1271
1271
|
e && !r.includes("Signature=") && n.open("GET", r + (r.includes("?") ? "&" : "?") + e, !0);
|
|
1272
1272
|
};
|
|
1273
1273
|
}
|
|
1274
|
-
function
|
|
1274
|
+
function Do(t) {
|
|
1275
1275
|
return (e, n) => {
|
|
1276
1276
|
let r = !0, s = null;
|
|
1277
1277
|
return (async () => {
|
|
1278
|
-
const a = await
|
|
1278
|
+
const a = await xo(t);
|
|
1279
1279
|
if (!r) return;
|
|
1280
1280
|
if (!a) {
|
|
1281
1281
|
n();
|
|
@@ -1288,7 +1288,7 @@ function So(t) {
|
|
|
1288
1288
|
n();
|
|
1289
1289
|
return;
|
|
1290
1290
|
}
|
|
1291
|
-
const c = new l({ xhrSetup:
|
|
1291
|
+
const c = new l({ xhrSetup: So(a), capLevelToPlayerSize: !0, startLevel: 0, maxBufferLength: 20 });
|
|
1292
1292
|
c.on(l.Events.ERROR, (u, d) => {
|
|
1293
1293
|
d.fatal && (c.destroy(), n());
|
|
1294
1294
|
}), c.loadSource(a), c.attachMedia(e), s = () => c.destroy();
|
|
@@ -1298,7 +1298,7 @@ function So(t) {
|
|
|
1298
1298
|
};
|
|
1299
1299
|
}
|
|
1300
1300
|
const ln = /* @__PURE__ */ new Map();
|
|
1301
|
-
function
|
|
1301
|
+
function Ao(t) {
|
|
1302
1302
|
const [e, n] = L(() => t ? ln.get(t) ?? null : null);
|
|
1303
1303
|
return D(() => {
|
|
1304
1304
|
if (!t) {
|
|
@@ -1320,11 +1320,11 @@ function Do(t) {
|
|
|
1320
1320
|
};
|
|
1321
1321
|
}, [t]), e;
|
|
1322
1322
|
}
|
|
1323
|
-
const
|
|
1324
|
-
function
|
|
1323
|
+
const Eo = /^[0-9a-f]{16,}$/i, si = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
1324
|
+
function _o(t) {
|
|
1325
1325
|
const e = (r) => {
|
|
1326
1326
|
const s = r == null ? void 0 : r.trim();
|
|
1327
|
-
return s && s !== t.id && !si.test(s) && !
|
|
1327
|
+
return s && s !== t.id && !si.test(s) && !Eo.test(s) ? s : null;
|
|
1328
1328
|
}, n = (() => {
|
|
1329
1329
|
if (!t.url) return null;
|
|
1330
1330
|
try {
|
|
@@ -1335,37 +1335,37 @@ function Eo(t) {
|
|
|
1335
1335
|
})();
|
|
1336
1336
|
return e(t.name) ?? e(t.sourceName) ?? e(t.ytTitle) ?? n ?? (si.test(t.id) ? "VocalStack" : t.id);
|
|
1337
1337
|
}
|
|
1338
|
-
const
|
|
1338
|
+
const Yo = 0.3;
|
|
1339
1339
|
function ii(t, e) {
|
|
1340
|
-
t.muted = e.muted, Math.abs(t.currentTime - e.t) >
|
|
1340
|
+
t.muted = e.muted, Math.abs(t.currentTime - e.t) > Yo && (t.currentTime = Math.max(0, e.t)), e.playing ? t.paused && Promise.resolve(t.play()).catch(() => {
|
|
1341
1341
|
}) : t.paused || t.pause();
|
|
1342
1342
|
}
|
|
1343
|
-
const
|
|
1344
|
-
function
|
|
1343
|
+
const Un = "Remove background sound", Uo = "Takes out everything that isn't speech: music, ambience and noise.";
|
|
1344
|
+
function Ro(t) {
|
|
1345
1345
|
const e = Math.max(0, Math.floor(t)), n = Math.floor(e / 3600), r = Math.floor(e % 3600 / 60), s = String(e % 60).padStart(2, "0");
|
|
1346
1346
|
return n ? `${n}:${String(r).padStart(2, "0")}:${s}` : `${r}:${s}`;
|
|
1347
1347
|
}
|
|
1348
|
-
function
|
|
1349
|
-
return e === "unavailable" ? `Not available for this ${n}` : e === "making" ? r > 0 ? `Separating the speech from the background… ready up to ${
|
|
1348
|
+
function Po(t, e, n = "transcription", r = 0) {
|
|
1349
|
+
return e === "unavailable" ? `Not available for this ${n}` : e === "making" ? r > 0 ? `Separating the speech from the background… ready up to ${Ro(r)}` : "Separating the speech from the background…" : Uo;
|
|
1350
1350
|
}
|
|
1351
|
-
function
|
|
1351
|
+
function $o(t, e) {
|
|
1352
1352
|
return { bed: e && !t, speech: !e && t };
|
|
1353
1353
|
}
|
|
1354
|
-
function
|
|
1354
|
+
function Qo(t) {
|
|
1355
1355
|
const e = t.get("bg");
|
|
1356
1356
|
return e === "off" || e === "remove";
|
|
1357
1357
|
}
|
|
1358
|
-
function
|
|
1358
|
+
function Bo(t, e) {
|
|
1359
1359
|
e ? t.searchParams.set("bg", "remove") : t.searchParams.delete("bg");
|
|
1360
1360
|
}
|
|
1361
|
-
function
|
|
1361
|
+
function Vo(t, e) {
|
|
1362
1362
|
var r, s;
|
|
1363
1363
|
if (t !== 503) return null;
|
|
1364
1364
|
const n = (s = (r = e == null ? void 0 : e.data) == null ? void 0 : r.details) == null ? void 0 : s.retryAfterS;
|
|
1365
1365
|
return typeof n == "number" && n > 0 ? Math.max(2, n) : 3;
|
|
1366
1366
|
}
|
|
1367
|
-
const
|
|
1368
|
-
function
|
|
1367
|
+
const Ho = 0.05;
|
|
1368
|
+
function Wo(t) {
|
|
1369
1369
|
var r, s;
|
|
1370
1370
|
const e = (s = (r = t == null ? void 0 : t.data) == null ? void 0 : r.details) == null ? void 0 : s.parts, n = [];
|
|
1371
1371
|
if (Array.isArray(e))
|
|
@@ -1377,8 +1377,8 @@ function Ho(t) {
|
|
|
1377
1377
|
}
|
|
1378
1378
|
return { untilS: n.length ? n[n.length - 1].endS : 0, parts: n };
|
|
1379
1379
|
}
|
|
1380
|
-
function
|
|
1381
|
-
if (!t.length || e < 0 || e >= t[t.length - 1].endS -
|
|
1380
|
+
function Fo(t, e) {
|
|
1381
|
+
if (!t.length || e < 0 || e >= t[t.length - 1].endS - Ho) return -1;
|
|
1382
1382
|
let n = 0, r = t.length - 1;
|
|
1383
1383
|
for (; n < r; ) {
|
|
1384
1384
|
const s = n + r + 1 >> 1;
|
|
@@ -1386,17 +1386,17 @@ function Wo(t, e) {
|
|
|
1386
1386
|
}
|
|
1387
1387
|
return n;
|
|
1388
1388
|
}
|
|
1389
|
-
function
|
|
1389
|
+
function Zo(t, e, n, r) {
|
|
1390
1390
|
const s = t[e].startS, a = n[r] === s ? r : n[1 - r] === s ? 1 - r : r, o = [];
|
|
1391
1391
|
n[a] !== s && o.push([a, e]);
|
|
1392
1392
|
const l = 1 - a;
|
|
1393
1393
|
return e + 1 < t.length && n[l] !== t[e + 1].startS && o.push([l, e + 1]), { play: a, load: o };
|
|
1394
1394
|
}
|
|
1395
|
-
async function
|
|
1395
|
+
async function Go(t) {
|
|
1396
1396
|
const e = await fetch(t, { redirect: "manual", credentials: "omit" });
|
|
1397
1397
|
if (e.type === "opaqueredirect" || e.status >= 300 && e.status < 400 || e.ok) return { ready: !0 };
|
|
1398
1398
|
const n = await e.json().catch(() => null);
|
|
1399
|
-
return { ready: !1, retryS:
|
|
1399
|
+
return { ready: !1, retryS: Vo(e.status, n), ...Wo(n) };
|
|
1400
1400
|
}
|
|
1401
1401
|
function Mr(t) {
|
|
1402
1402
|
t && (t.pause(), t.removeAttribute("src"), t.load());
|
|
@@ -1411,7 +1411,7 @@ function $i(t, e) {
|
|
|
1411
1411
|
let h = !1, f;
|
|
1412
1412
|
r("making");
|
|
1413
1413
|
const m = () => {
|
|
1414
|
-
|
|
1414
|
+
Go(t).then((y) => {
|
|
1415
1415
|
if (!h) {
|
|
1416
1416
|
if (y.ready) {
|
|
1417
1417
|
const j = new Audio();
|
|
@@ -1443,12 +1443,12 @@ function $i(t, e) {
|
|
|
1443
1443
|
h(), ii(c.current, e), l(!0);
|
|
1444
1444
|
return;
|
|
1445
1445
|
}
|
|
1446
|
-
const f = n === "making" ?
|
|
1446
|
+
const f = n === "making" ? Fo(s, e.t) : -1;
|
|
1447
1447
|
if (f < 0) {
|
|
1448
1448
|
h(), l(!1);
|
|
1449
1449
|
return;
|
|
1450
1450
|
}
|
|
1451
|
-
const m =
|
|
1451
|
+
const m = Zo(s, f, d.current, M.current);
|
|
1452
1452
|
for (const [N, p] of m.load) {
|
|
1453
1453
|
let I = u.current[N];
|
|
1454
1454
|
I || (I = new Audio(), I.preload = "auto", u.current[N] = I), I.pause(), I.src = s[p].url, d.current[N] = s[p].startS;
|
|
@@ -1458,16 +1458,16 @@ function $i(t, e) {
|
|
|
1458
1458
|
j && !j.paused && j.pause(), ii(y, { ...e, t: e.t - s[f].startS }), l(!e.playing || y.readyState >= 3);
|
|
1459
1459
|
}, [n, s, e.t, e.playing, e.muted]), { state: n, on: o, untilS: n === "ready" ? 1 / 0 : s.length ? s[s.length - 1].endS : 0 };
|
|
1460
1460
|
}
|
|
1461
|
-
function
|
|
1461
|
+
function qo(t, e) {
|
|
1462
1462
|
return $i(t, e).state;
|
|
1463
1463
|
}
|
|
1464
|
-
const
|
|
1464
|
+
const Ko = 0.5, Jo = 3;
|
|
1465
1465
|
function Yr(t, e) {
|
|
1466
1466
|
let n = -1;
|
|
1467
1467
|
for (let r = 0; r < t.length && t[r].start <= e + 0.02; r++) n = r;
|
|
1468
1468
|
return n;
|
|
1469
1469
|
}
|
|
1470
|
-
function
|
|
1470
|
+
function Xo(t, e, n) {
|
|
1471
1471
|
const r = Yr(t, n);
|
|
1472
1472
|
if (r < 0) return { kind: "none" };
|
|
1473
1473
|
const s = t[r];
|
|
@@ -1485,14 +1485,14 @@ function Jo(t, e, n) {
|
|
|
1485
1485
|
}
|
|
1486
1486
|
return { kind: "done", sid: s.sid };
|
|
1487
1487
|
}
|
|
1488
|
-
function
|
|
1488
|
+
function el(t, e, n) {
|
|
1489
1489
|
if (n == null) return !1;
|
|
1490
1490
|
const r = Yr(t, e);
|
|
1491
1491
|
if (r < 0) return !1;
|
|
1492
1492
|
const s = t[r];
|
|
1493
1493
|
return e >= s.end ? s.sid === n : r > 0 && t[r - 1].sid === n && e - s.start < 1.5;
|
|
1494
1494
|
}
|
|
1495
|
-
function
|
|
1495
|
+
function tl(t, e, n, r = Jo) {
|
|
1496
1496
|
const s = Math.max(0, Yr(t, n)), a = [];
|
|
1497
1497
|
for (let o = s; o < t.length && o <= s + r; o++) {
|
|
1498
1498
|
const l = (e.get(t[o].sid) ?? []).find((c) => c.part === 0);
|
|
@@ -1500,7 +1500,7 @@ function el(t, e, n, r = Ko) {
|
|
|
1500
1500
|
}
|
|
1501
1501
|
return a;
|
|
1502
1502
|
}
|
|
1503
|
-
function
|
|
1503
|
+
function nl(t) {
|
|
1504
1504
|
const e = ze(() => {
|
|
1505
1505
|
const c = /* @__PURE__ */ new Map();
|
|
1506
1506
|
for (const u of t.clips) c.set(u.sentenceId, [...c.get(u.sentenceId) ?? [], u]);
|
|
@@ -1521,9 +1521,9 @@ function tl(t) {
|
|
|
1521
1521
|
l(), a((m) => m.missing == null && m.sid == null ? m : { missing: null, sid: null });
|
|
1522
1522
|
return;
|
|
1523
1523
|
}
|
|
1524
|
-
const c =
|
|
1524
|
+
const c = Xo(t.lines, e, t.t), u = c.kind === "missing" ? c.sid : null, d = c.kind === "none" ? null : c.sid;
|
|
1525
1525
|
a((m) => m.missing === u && m.sid === d ? m : { missing: u, sid: d });
|
|
1526
|
-
const M = new Set(
|
|
1526
|
+
const M = new Set(tl(t.lines, e, t.t));
|
|
1527
1527
|
for (const m of M) o(m);
|
|
1528
1528
|
const h = r.current;
|
|
1529
1529
|
h && M.add(h.src);
|
|
@@ -1533,12 +1533,12 @@ function tl(t) {
|
|
|
1533
1533
|
return;
|
|
1534
1534
|
}
|
|
1535
1535
|
if (c.kind !== "play") {
|
|
1536
|
-
if (h && !h.el.paused && !h.el.ended &&
|
|
1536
|
+
if (h && !h.el.paused && !h.el.ended && el(t.lines, t.t, h.sid)) return;
|
|
1537
1537
|
h && h.el.pause(), r.current = null;
|
|
1538
1538
|
return;
|
|
1539
1539
|
}
|
|
1540
1540
|
if (h && h.src === c.src) {
|
|
1541
|
-
if (h.el.muted = t.muted, !h.el.ended && Math.abs(h.el.currentTime - c.offset) >
|
|
1541
|
+
if (h.el.muted = t.muted, !h.el.ended && Math.abs(h.el.currentTime - c.offset) > Ko)
|
|
1542
1542
|
try {
|
|
1543
1543
|
h.el.currentTime = c.offset;
|
|
1544
1544
|
} catch {
|
|
@@ -1559,7 +1559,7 @@ function tl(t) {
|
|
|
1559
1559
|
}, [t.on, t.t, t.playing, t.muted, t.lines, e]), s;
|
|
1560
1560
|
}
|
|
1561
1561
|
const ai = ["play", "pause", "stop", "nexttrack", "previoustrack"];
|
|
1562
|
-
function
|
|
1562
|
+
function rl(t, e) {
|
|
1563
1563
|
var n, r;
|
|
1564
1564
|
if (t === "play") {
|
|
1565
1565
|
e.playing || e.toggle();
|
|
@@ -1575,12 +1575,12 @@ function nl(t, e) {
|
|
|
1575
1575
|
}
|
|
1576
1576
|
(r = e.prev) == null || r.call(e);
|
|
1577
1577
|
}
|
|
1578
|
-
function
|
|
1578
|
+
function sl(t, e) {
|
|
1579
1579
|
for (const n of ai)
|
|
1580
1580
|
try {
|
|
1581
1581
|
t.setActionHandler(n, () => {
|
|
1582
1582
|
const r = e();
|
|
1583
|
-
r &&
|
|
1583
|
+
r && rl(n, r);
|
|
1584
1584
|
});
|
|
1585
1585
|
} catch {
|
|
1586
1586
|
}
|
|
@@ -1592,14 +1592,14 @@ function rl(t, e) {
|
|
|
1592
1592
|
}
|
|
1593
1593
|
};
|
|
1594
1594
|
}
|
|
1595
|
-
function
|
|
1595
|
+
function il(t, e) {
|
|
1596
1596
|
const n = k(t);
|
|
1597
1597
|
n.current = t;
|
|
1598
1598
|
const r = !!t;
|
|
1599
1599
|
D(() => {
|
|
1600
1600
|
const a = typeof navigator < "u" ? navigator.mediaSession : void 0;
|
|
1601
1601
|
if (!(!a || !r))
|
|
1602
|
-
return
|
|
1602
|
+
return sl(a, () => n.current);
|
|
1603
1603
|
}, [r]);
|
|
1604
1604
|
const s = !!(t != null && t.playing);
|
|
1605
1605
|
D(() => {
|
|
@@ -1631,7 +1631,7 @@ function qt() {
|
|
|
1631
1631
|
spans: []
|
|
1632
1632
|
};
|
|
1633
1633
|
}
|
|
1634
|
-
function
|
|
1634
|
+
function al(t, e) {
|
|
1635
1635
|
for (const r of t.spans) {
|
|
1636
1636
|
const s = r.mediaEnd ?? 1 / 0;
|
|
1637
1637
|
if (e < s || r.mediaEnd == null) return r.wallStart + Math.max(0, e - r.mediaStart);
|
|
@@ -1708,7 +1708,7 @@ function oi(t, e) {
|
|
|
1708
1708
|
const n = e ?? {};
|
|
1709
1709
|
return !t || !Object.keys(t).length ? n : Object.keys(n).length ? { ...t, ...n } : t;
|
|
1710
1710
|
}
|
|
1711
|
-
function
|
|
1711
|
+
function ol(t, e) {
|
|
1712
1712
|
const n = e.tail;
|
|
1713
1713
|
if (!n || !Array.isArray(n.words) || n.replaced !== t.length || n.words.length !== t.length) return !1;
|
|
1714
1714
|
let r = !1;
|
|
@@ -1725,7 +1725,7 @@ function al(t, e) {
|
|
|
1725
1725
|
}
|
|
1726
1726
|
return r;
|
|
1727
1727
|
}
|
|
1728
|
-
function
|
|
1728
|
+
function ll(t, e) {
|
|
1729
1729
|
var n;
|
|
1730
1730
|
switch (delete t.numbers, e.type) {
|
|
1731
1731
|
case "transcript.committed": {
|
|
@@ -1766,7 +1766,7 @@ function ol(t, e) {
|
|
|
1766
1766
|
}
|
|
1767
1767
|
case "transcript.amended": {
|
|
1768
1768
|
const r = t.segments.get(e.seq);
|
|
1769
|
-
if (r && r.corrected &&
|
|
1769
|
+
if (r && r.corrected && ol(r.words, e)) {
|
|
1770
1770
|
r.text = e.text, r.words = dn(e.seq, e.tail.words);
|
|
1771
1771
|
break;
|
|
1772
1772
|
}
|
|
@@ -1814,7 +1814,7 @@ function ol(t, e) {
|
|
|
1814
1814
|
seqs: r.seqs,
|
|
1815
1815
|
speaker: r.speaker,
|
|
1816
1816
|
start: r.start,
|
|
1817
|
-
wallStart:
|
|
1817
|
+
wallStart: al(t, r.start),
|
|
1818
1818
|
text: a ? s.text : r.text,
|
|
1819
1819
|
status: r.status === "open" ? "open" : "closed",
|
|
1820
1820
|
settled: !!r.settled,
|
|
@@ -1866,7 +1866,7 @@ function ol(t, e) {
|
|
|
1866
1866
|
}
|
|
1867
1867
|
return typeof e.seq == "number" && (t.lastSeq = Math.max(t.lastSeq, e.seq)), t;
|
|
1868
1868
|
}
|
|
1869
|
-
function
|
|
1869
|
+
function cl(t) {
|
|
1870
1870
|
const e = [], n = [...t.sentences.values()].sort((r, s) => r.start - s.start || (r.sentenceId ?? 0) - (s.sentenceId ?? 0));
|
|
1871
1871
|
for (const r of n) {
|
|
1872
1872
|
const s = r.seqs.map((l) => t.segments.get(l)).filter(Boolean), a = s.length === r.seqs.length || !r.text ? s.flatMap((l) => l.words) : [], o = s[s.length - 1];
|
|
@@ -1879,16 +1879,16 @@ function ll(t) {
|
|
|
1879
1879
|
catchup: s.some((l) => l.catchup),
|
|
1880
1880
|
suppressed: r.suppressed || s.length > 0 && s.every((l) => l.suppressed),
|
|
1881
1881
|
unclear: r.unclear || s.length > 0 && s.every((l) => l.unclear),
|
|
1882
|
-
confidence:
|
|
1882
|
+
confidence: ul(s),
|
|
1883
1883
|
latencyS: o == null ? void 0 : o.latencyS,
|
|
1884
1884
|
settled: r.settled || s.length > 0 && s.every((l) => l.settled),
|
|
1885
|
-
translations: Object.keys(r.translations).length ? r.translations :
|
|
1885
|
+
translations: Object.keys(r.translations).length ? r.translations : dl(s),
|
|
1886
1886
|
speaker: r.speaker >= 0 ? r.speaker : (o == null ? void 0 : o.speaker) ?? -1
|
|
1887
1887
|
});
|
|
1888
1888
|
}
|
|
1889
1889
|
return e.sort((r, s) => r.start - s.start), e;
|
|
1890
1890
|
}
|
|
1891
|
-
function
|
|
1891
|
+
function ul(t) {
|
|
1892
1892
|
let e = 0, n = 0;
|
|
1893
1893
|
for (const r of t) {
|
|
1894
1894
|
if (r.confidence == null) continue;
|
|
@@ -1897,20 +1897,20 @@ function cl(t) {
|
|
|
1897
1897
|
}
|
|
1898
1898
|
return n ? e / n : void 0;
|
|
1899
1899
|
}
|
|
1900
|
-
function
|
|
1900
|
+
function dl(t) {
|
|
1901
1901
|
const e = {};
|
|
1902
1902
|
for (const n of t) for (const [r, s] of Object.entries(n.translations)) e[r] = e[r] ? `${e[r]} ${s}` : s;
|
|
1903
1903
|
return e;
|
|
1904
1904
|
}
|
|
1905
|
-
const
|
|
1906
|
-
function Ml(t) {
|
|
1907
|
-
return t == null ? "" : t < hl ? "low" : t < dl ? "mid" : "";
|
|
1908
|
-
}
|
|
1909
|
-
const bn = ["a", "b", "c", "d", "e", "f", "g", "h"];
|
|
1905
|
+
const hl = 0.85, Ml = 0.75;
|
|
1910
1906
|
function gl(t) {
|
|
1911
|
-
return
|
|
1907
|
+
return t == null ? "" : t < Ml ? "low" : t < hl ? "mid" : "";
|
|
1912
1908
|
}
|
|
1909
|
+
const Cn = ["a", "b", "c", "d", "e", "f", "g", "h"];
|
|
1913
1910
|
function fl(t) {
|
|
1911
|
+
return Cn[(t % Cn.length + Cn.length) % Cn.length];
|
|
1912
|
+
}
|
|
1913
|
+
function pl(t) {
|
|
1914
1914
|
if (t.numbers) return t.numbers;
|
|
1915
1915
|
const e = /* @__PURE__ */ new Map(), n = (a, o) => {
|
|
1916
1916
|
if (a < 0) return;
|
|
@@ -1924,28 +1924,28 @@ function fl(t) {
|
|
|
1924
1924
|
const r = [...e].sort((a, o) => a[1] - o[1] || a[0] - o[0]).map(([a]) => a), s = [...new Set([...Object.keys(t.speakers), ...Object.keys(t.speakerIds)].map(Number))].filter((a) => a >= 0 && !e.has(a)).sort((a, o) => a - o);
|
|
1925
1925
|
return t.numbers = new Map([...r, ...s].map((a, o) => [a, o + 1])), t.numbers;
|
|
1926
1926
|
}
|
|
1927
|
-
function
|
|
1927
|
+
function Rn(t, e) {
|
|
1928
1928
|
if (e < 0) return 0;
|
|
1929
|
-
const n =
|
|
1929
|
+
const n = pl(t);
|
|
1930
1930
|
return n.get(e) ?? n.size + 1 + e;
|
|
1931
1931
|
}
|
|
1932
|
-
const
|
|
1932
|
+
const ml = /^\s*speaker\s+\d+\s*$/i;
|
|
1933
1933
|
function li(t) {
|
|
1934
|
-
return t && t.trim() && !
|
|
1934
|
+
return t && t.trim() && !ml.test(t) ? t : void 0;
|
|
1935
1935
|
}
|
|
1936
1936
|
function Qi(t, e) {
|
|
1937
1937
|
var n;
|
|
1938
1938
|
return li(t.speakers[e]) ?? li((n = t.speakerIds[e]) == null ? void 0 : n.name);
|
|
1939
1939
|
}
|
|
1940
1940
|
function Ur(t, e) {
|
|
1941
|
-
return e < 0 ? "" : Qi(t, e) ?? `Speaker ${
|
|
1941
|
+
return e < 0 ? "" : Qi(t, e) ?? `Speaker ${Rn(t, e)}`;
|
|
1942
1942
|
}
|
|
1943
1943
|
function Bi(t, e) {
|
|
1944
1944
|
if (e < 0) return "?";
|
|
1945
1945
|
const n = Qi(t, e);
|
|
1946
|
-
return n ? (n.split(" ").filter(Boolean).slice(0, 2).map((s) => s[0]).join("") || `S${
|
|
1946
|
+
return n ? (n.split(" ").filter(Boolean).slice(0, 2).map((s) => s[0]).join("") || `S${Rn(t, e)}`).toUpperCase() : `S${Rn(t, e)}`;
|
|
1947
1947
|
}
|
|
1948
|
-
function
|
|
1948
|
+
function Nl(t) {
|
|
1949
1949
|
if (t) {
|
|
1950
1950
|
if (t.startsWith("#"))
|
|
1951
1951
|
return { fg: t, soft: `color-mix(in srgb, ${t} 16%, transparent)` };
|
|
@@ -1954,10 +1954,10 @@ function ml(t) {
|
|
|
1954
1954
|
}
|
|
1955
1955
|
}
|
|
1956
1956
|
function Rr(t, e) {
|
|
1957
|
-
const n = t.speakerIds[e], r =
|
|
1958
|
-
return { fg: r == null ? void 0 : r.fg, soft: r == null ? void 0 : r.soft, lane:
|
|
1957
|
+
const n = t.speakerIds[e], r = Nl(n == null ? void 0 : n.color);
|
|
1958
|
+
return { fg: r == null ? void 0 : r.fg, soft: r == null ? void 0 : r.soft, lane: fl(Rn(t, e) - 1), hasVoice: !!n };
|
|
1959
1959
|
}
|
|
1960
|
-
function
|
|
1960
|
+
function yl(t, e, n, r = !1) {
|
|
1961
1961
|
const s = n ? n.speakerLabels ?? "auto" : null, a = (r ? s : null) ?? t.labels ?? s ?? "on";
|
|
1962
1962
|
if (a !== "auto") return a === "on";
|
|
1963
1963
|
const o = /* @__PURE__ */ new Set();
|
|
@@ -1965,7 +1965,7 @@ function Nl(t, e, n, r = !1) {
|
|
|
1965
1965
|
return !0;
|
|
1966
1966
|
return !1;
|
|
1967
1967
|
}
|
|
1968
|
-
const
|
|
1968
|
+
const Tl = /* @__PURE__ */ new Set([
|
|
1969
1969
|
"invalid_audio",
|
|
1970
1970
|
"invalid_options",
|
|
1971
1971
|
"invalid_token",
|
|
@@ -2006,30 +2006,30 @@ function Ot(t) {
|
|
|
2006
2006
|
const e = t, n = typeof (e == null ? void 0 : e.code) == "string" ? e.code : void 0, r = typeof (e == null ? void 0 : e.status) == "number" ? e.status : void 0, s = e == null ? void 0 : e.details;
|
|
2007
2007
|
if (n || r && r >= 400) {
|
|
2008
2008
|
const o = typeof (e == null ? void 0 : e.requestId) == "string" && e.requestId ? { requestId: e.requestId } : {};
|
|
2009
|
-
return n &&
|
|
2009
|
+
return n && Tl.has(n) && typeof (e == null ? void 0 : e.message) == "string" ? { message: e.message, code: n, status: r, details: s, ...o } : n === "unavailable" && r === void 0 ? { message: fr, code: n, details: s, ...o } : r === 0 ? { message: typeof (e == null ? void 0 : e.message) == "string" ? e.message : fr, code: n, status: r, details: s, ...o } : { message: n && Vi[n] || Or, code: n, status: r, details: s, ...o };
|
|
2010
2010
|
}
|
|
2011
2011
|
const a = (e == null ? void 0 : e.name) ?? "";
|
|
2012
2012
|
return a === "TypeError" && /fetch|network|load failed/i.test(String((e == null ? void 0 : e.message) ?? "")) ? (typeof navigator < "u" && navigator.onLine !== !1 && Oi(t instanceof Error ? t : new Error(String(t))), { message: fr }) : ci[a] ? { message: ci[a] } : t instanceof Error && a === "Error" && !(t instanceof ji) ? { message: t.message } : { message: Or };
|
|
2013
2013
|
}
|
|
2014
2014
|
const Hi = "https://api.vocalstack.com", Pr = ki(null);
|
|
2015
|
-
function
|
|
2016
|
-
const t =
|
|
2015
|
+
function Bt() {
|
|
2016
|
+
const t = Ba(Pr);
|
|
2017
2017
|
if (!t) throw new Error("VocalStack player hooks must be used inside <VocalStackPlayer> or <PlayerApiProvider>");
|
|
2018
2018
|
return t;
|
|
2019
2019
|
}
|
|
2020
|
-
function
|
|
2021
|
-
return t.value ? /* @__PURE__ */ i(Pr.Provider, { value: t.value, children: t.children }) : /* @__PURE__ */ i(
|
|
2020
|
+
function wl(t) {
|
|
2021
|
+
return t.value ? /* @__PURE__ */ i(Pr.Provider, { value: t.value, children: t.children }) : /* @__PURE__ */ i(vl, { ...t });
|
|
2022
2022
|
}
|
|
2023
|
-
function
|
|
2023
|
+
function vl({ children: t, ...e }) {
|
|
2024
2024
|
const n = Wi(e);
|
|
2025
2025
|
return /* @__PURE__ */ i(Pr.Provider, { value: n, children: t });
|
|
2026
2026
|
}
|
|
2027
|
-
const
|
|
2028
|
-
function
|
|
2029
|
-
return
|
|
2027
|
+
const Ll = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
2028
|
+
function kl(t) {
|
|
2029
|
+
return Ll.test(t);
|
|
2030
2030
|
}
|
|
2031
2031
|
function Wi(t) {
|
|
2032
|
-
const e = t.listen ?? null, n = e ? null : t.listenerToken ?? null, r = !e && !n && !!t.token && (!t.id ||
|
|
2032
|
+
const e = t.listen ?? null, n = e ? null : t.listenerToken ?? null, r = !e && !n && !!t.token && (!t.id || kl(t.id)), s = (t.baseUrl ?? Hi).replace(/\/$/, ""), a = k(t.token);
|
|
2033
2033
|
a.current = t.token;
|
|
2034
2034
|
const o = !!t.token, l = ze(() => async () => {
|
|
2035
2035
|
const h = a.current;
|
|
@@ -2055,10 +2055,10 @@ function Wi(t) {
|
|
|
2055
2055
|
return { client: M, origin: s, owner: r, shareCode: h, listen: null, bearer: l, cred: r ? { accessToken: c ?? void 0 } : { shareCode: h }, readAs: h ? { shareCode: h } : {} };
|
|
2056
2056
|
}, [M, s, r, t.id, l, e, n, c]);
|
|
2057
2057
|
}
|
|
2058
|
-
function
|
|
2058
|
+
function jl(t, e) {
|
|
2059
2059
|
return e ? { ...t, cred: { ...t.cred, media: e } } : t;
|
|
2060
2060
|
}
|
|
2061
|
-
async function
|
|
2061
|
+
async function zl(t, e) {
|
|
2062
2062
|
if (t.listen) {
|
|
2063
2063
|
const r = await t.client.recordings.get(t.listen.recordingId, t.readAs), s = r;
|
|
2064
2064
|
return { key: e, code: null, transcriptionId: t.listen.transcriptionId, name: s.name ?? s.title ?? "", recording: r, job: s.job ?? (s.source ? { source: s.source } : null), allowDownload: !0, allowExport: !0, allowTranslate: !0, sharedBy: null };
|
|
@@ -2083,11 +2083,11 @@ async function jl(t, e) {
|
|
|
2083
2083
|
sharedBy: n.sharedBy ?? null
|
|
2084
2084
|
};
|
|
2085
2085
|
}
|
|
2086
|
-
function
|
|
2086
|
+
function Il(t, e) {
|
|
2087
2087
|
const [n, r] = L(null), [s, a] = L(!1), [o, l] = L(null), [c, u] = L(0);
|
|
2088
2088
|
return D(() => {
|
|
2089
2089
|
let d = !0;
|
|
2090
|
-
return
|
|
2090
|
+
return zl(t, e).then((M) => {
|
|
2091
2091
|
d && (r(M), a(!1), l(null));
|
|
2092
2092
|
}).catch((M) => {
|
|
2093
2093
|
if (!d) return;
|
|
@@ -2098,7 +2098,7 @@ function zl(t, e) {
|
|
|
2098
2098
|
};
|
|
2099
2099
|
}, [t, e, c]), { source: n, gone: s, error: o, reload: () => u((d) => d + 1) };
|
|
2100
2100
|
}
|
|
2101
|
-
function
|
|
2101
|
+
function Ol(t, e) {
|
|
2102
2102
|
const [n, r] = L(null);
|
|
2103
2103
|
return D(() => {
|
|
2104
2104
|
if (!t.owner || !e) {
|
|
@@ -2133,7 +2133,7 @@ async function ui(t, e, n = {}) {
|
|
|
2133
2133
|
}
|
|
2134
2134
|
const pr = /* @__PURE__ */ new Map();
|
|
2135
2135
|
function Fi() {
|
|
2136
|
-
const t =
|
|
2136
|
+
const t = Bt(), [e, n] = L(pr.get(t.origin) ?? null);
|
|
2137
2137
|
return D(() => {
|
|
2138
2138
|
pr.has(t.origin) || t.client.languages.list().then((r) => {
|
|
2139
2139
|
pr.set(t.origin, r), n(r);
|
|
@@ -2150,9 +2150,9 @@ function Zi(t, e) {
|
|
|
2150
2150
|
};
|
|
2151
2151
|
}, [...e, o]), { data: n, error: s, reload: () => l((c) => c + 1) };
|
|
2152
2152
|
}
|
|
2153
|
-
const
|
|
2154
|
-
function
|
|
2155
|
-
const n =
|
|
2153
|
+
const bl = (t) => new Promise((e) => setTimeout(e, t)), Cl = 2500, xl = 72;
|
|
2154
|
+
function Sl(t, e) {
|
|
2155
|
+
const n = Bt(), r = k(n);
|
|
2156
2156
|
r.current = n;
|
|
2157
2157
|
const [s, a] = L(qt), o = k(qt()), l = k(null), c = k(e.lang ?? null), [u, d] = L(!1), [M, h] = L(null), [f, m] = L(!1), y = Je(() => {
|
|
2158
2158
|
const A = o.current;
|
|
@@ -2185,7 +2185,7 @@ function xl(t, e) {
|
|
|
2185
2185
|
if (le.type === "snapshot")
|
|
2186
2186
|
o.current = gr(le.snapshot, le.reason === "gap" ? o.current : qt()), y(), te();
|
|
2187
2187
|
else if (le.type === "frame") {
|
|
2188
|
-
|
|
2188
|
+
ll(o.current, le.frame);
|
|
2189
2189
|
const Te = le.frame;
|
|
2190
2190
|
Te.type === "recording.state" && (b = o.current.state, (v = (K = j.current).onState) == null || v.call(K, Te.state, Te.reason)), (ne = (ie = j.current).onFrame) == null || ne.call(ie, Te), y();
|
|
2191
2191
|
} else le.type === "closed" && d(!1);
|
|
@@ -2220,7 +2220,7 @@ function xl(t, e) {
|
|
|
2220
2220
|
}
|
|
2221
2221
|
const J = o.current.state;
|
|
2222
2222
|
if (!A || J === "ended" || J === "finalized" || J === "processing") return;
|
|
2223
|
-
T += 1, await
|
|
2223
|
+
T += 1, await bl(Math.min(15e3, 1e3 * 2 ** Math.min(T, 4)));
|
|
2224
2224
|
}
|
|
2225
2225
|
})(), () => {
|
|
2226
2226
|
var K;
|
|
@@ -2236,9 +2236,9 @@ function xl(t, e) {
|
|
|
2236
2236
|
_ === S.current && (o.current = gr(v, o.current), Y(A), y(), v.translationPending && K > 0 && window.setTimeout(() => {
|
|
2237
2237
|
_ === S.current && b(K - 1).catch(() => {
|
|
2238
2238
|
});
|
|
2239
|
-
},
|
|
2239
|
+
}, Cl));
|
|
2240
2240
|
});
|
|
2241
|
-
b(
|
|
2241
|
+
b(xl).catch(() => {
|
|
2242
2242
|
_ === S.current && A && C(A);
|
|
2243
2243
|
}).finally(() => {
|
|
2244
2244
|
_ === S.current && p(!1);
|
|
@@ -2286,14 +2286,14 @@ function mr(t) {
|
|
|
2286
2286
|
return "queued";
|
|
2287
2287
|
}
|
|
2288
2288
|
}
|
|
2289
|
-
function
|
|
2289
|
+
function Dl(t) {
|
|
2290
2290
|
return t ? t.progress ? { state: t.state, processedS: t.progress.processedS, totalS: t.progress.totalS ?? null, segmentsDone: t.progress.segmentsDone, segmentsTotal: t.progress.segmentsTotal ?? null, pct: t.progress.pct, error: t.error ?? null } : t.state ? { state: t.state, processedS: 0, totalS: null, segmentsDone: 0, segmentsTotal: null, pct: 0, error: t.error ?? null } : null : null;
|
|
2291
2291
|
}
|
|
2292
|
-
const
|
|
2292
|
+
const Al = (t, e) => {
|
|
2293
2293
|
const n = (t == null ? void 0 : t.segmentsDone) ?? e, r = Math.max(n, (t == null ? void 0 : t.segmentsTotal) ?? n);
|
|
2294
2294
|
return `${n} / ${r} SEGMENTS`;
|
|
2295
2295
|
};
|
|
2296
|
-
function
|
|
2296
|
+
function El(t, e) {
|
|
2297
2297
|
var s;
|
|
2298
2298
|
const n = ((s = t == null ? void 0 : t.source) == null ? void 0 : s.durationS) ?? (e == null ? void 0 : e.totalS) ?? null, r = t == null ? void 0 : t.crop;
|
|
2299
2299
|
if (r && (r.startS != null || r.endS != null)) {
|
|
@@ -2312,19 +2312,19 @@ function $r(t) {
|
|
|
2312
2312
|
const e = document.createElement("a");
|
|
2313
2313
|
e.href = t, e.style.display = "none", document.body.appendChild(e), e.click(), e.remove();
|
|
2314
2314
|
}
|
|
2315
|
-
async function
|
|
2315
|
+
async function _l(t) {
|
|
2316
2316
|
const e = await fetch(t, { redirect: "manual" });
|
|
2317
2317
|
if (e.type !== "opaqueredirect" && !e.ok) throw await qi(e);
|
|
2318
2318
|
$r(t);
|
|
2319
2319
|
}
|
|
2320
|
-
async function
|
|
2320
|
+
async function Yl(t, e, n, r = {}) {
|
|
2321
2321
|
var h, f;
|
|
2322
2322
|
const s = await t.client.recordings.export(e, n, { lang: r.lang ?? void 0, ...t.readAs });
|
|
2323
2323
|
if (!s.ok) throw await qi(s);
|
|
2324
2324
|
const a = await s.blob(), o = s.headers.get("content-disposition") ?? "", l = (h = /filename\*=UTF-8''([^;]+)/i.exec(o)) == null ? void 0 : h[1], c = (f = /filename="([^"]+)"/i.exec(o)) == null ? void 0 : f[1], u = l ? decodeURIComponent(l) : c ?? `transcript.${n}`, d = URL.createObjectURL(a), M = document.createElement("a");
|
|
2325
2325
|
M.href = d, M.download = u, M.style.display = "none", document.body.appendChild(M), M.click(), M.remove(), window.setTimeout(() => URL.revokeObjectURL(d), 6e4);
|
|
2326
2326
|
}
|
|
2327
|
-
async function
|
|
2327
|
+
async function Ul(t, e) {
|
|
2328
2328
|
const { recordingId: n, lang: r, voiceKey: s, cred: a } = e, o = async () => (await t.client.recordings.voice(n, r, t.readAs)).filter((M) => M.lang === r), l = (d) => Di(d, s);
|
|
2329
2329
|
let c = l(await o());
|
|
2330
2330
|
(!c || c.state === "clips" || c.state === "failed") && await e.request();
|
|
@@ -2334,25 +2334,25 @@ async function Yl(t, e) {
|
|
|
2334
2334
|
if (Date.now() > u) throw new Error("The spoken track is taking too long; try again in a moment.");
|
|
2335
2335
|
await new Promise((d) => setTimeout(d, 4e3)), c = l(await o());
|
|
2336
2336
|
}
|
|
2337
|
-
$r(
|
|
2337
|
+
$r(co(t.origin, n, r, c.voiceKey, a));
|
|
2338
2338
|
}
|
|
2339
2339
|
const Ki = (t) => {
|
|
2340
2340
|
var e;
|
|
2341
2341
|
return ((e = t == null ? void 0 : t.match(/(?:youtu\.be\/|[?&]v=|\/shorts\/|\/embed\/|\/live\/)([\w-]{11})/)) == null ? void 0 : e[1]) ?? null;
|
|
2342
|
-
},
|
|
2342
|
+
}, Rl = (t) => `https://www.youtube-nocookie.com/embed/${t}?autoplay=1&mute=1&controls=0&rel=0&modestbranding=1&playsinline=1&iv_load_policy=3`, hi = 0.3, Pl = 1.5;
|
|
2343
2343
|
function Ji(t, e, n) {
|
|
2344
2344
|
var s;
|
|
2345
2345
|
const r = (s = t.words[t.words.length - 1]) == null ? void 0 : s.end;
|
|
2346
2346
|
return r != null && r > t.start ? r : t.end != null && t.end > t.start ? t.end : (e == null ? void 0 : e.start) ?? n;
|
|
2347
2347
|
}
|
|
2348
|
-
function
|
|
2348
|
+
function $l(t, e, n) {
|
|
2349
2349
|
var c, u;
|
|
2350
2350
|
const r = t[e];
|
|
2351
2351
|
if (!r) return !1;
|
|
2352
|
-
const s = (((c = r.words[0]) == null ? void 0 : c.start) ?? r.start) - hi, a = t[e + 1], o = Ji(r, a, r.start + 4) +
|
|
2352
|
+
const s = (((c = r.words[0]) == null ? void 0 : c.start) ?? r.start) - hi, a = t[e + 1], o = Ji(r, a, r.start + 4) + Pl, l = a ? Math.min(o, (((u = a.words[0]) == null ? void 0 : u.start) ?? a.start) - hi) : o;
|
|
2353
2353
|
return n >= s && n < Math.max(l, s + 0.5);
|
|
2354
2354
|
}
|
|
2355
|
-
function
|
|
2355
|
+
function Ql(t, e, n) {
|
|
2356
2356
|
const r = Math.max(0, n - e), s = t.map((l) => Math.max(1, [...l.replace(/[^\p{L}\p{N}]/gu, "")].length)), a = s.reduce((l, c) => l + c, 0) || 1;
|
|
2357
2357
|
let o = e;
|
|
2358
2358
|
return t.map((l, c) => {
|
|
@@ -2367,7 +2367,7 @@ function Nr(t) {
|
|
|
2367
2367
|
bottom: Math.min(parseFloat(e.paddingBottom) || 0, n)
|
|
2368
2368
|
};
|
|
2369
2369
|
}
|
|
2370
|
-
function
|
|
2370
|
+
function Bl(t, e, n = 0) {
|
|
2371
2371
|
const r = k(() => {
|
|
2372
2372
|
});
|
|
2373
2373
|
D(() => {
|
|
@@ -2430,10 +2430,10 @@ function Ql(t, e, n = 0) {
|
|
|
2430
2430
|
};
|
|
2431
2431
|
}, []);
|
|
2432
2432
|
}
|
|
2433
|
-
function
|
|
2433
|
+
function Vl({ thumbRef: t }) {
|
|
2434
2434
|
return /* @__PURE__ */ i("div", { className: "feedbar", "aria-hidden": "true", children: /* @__PURE__ */ i("div", { ref: t, className: "feedbar__thumb" }) });
|
|
2435
2435
|
}
|
|
2436
|
-
function
|
|
2436
|
+
function Hl({ error: t, onClose: e }) {
|
|
2437
2437
|
const n = k(e);
|
|
2438
2438
|
n.current = e;
|
|
2439
2439
|
const [r, s] = L(!1), [a, o] = L(!1), l = k();
|
|
@@ -2469,7 +2469,7 @@ Request id: ${t.requestId}` : t.message;
|
|
|
2469
2469
|
function Xi({ color: t }) {
|
|
2470
2470
|
return /* @__PURE__ */ i("span", { title: "Cloned voice", style: { flex: "none", display: "inline-flex" }, children: /* @__PURE__ */ i(oe, { d: X.voiceClone, size: 13, sw: 1.7, stroke: t }) });
|
|
2471
2471
|
}
|
|
2472
|
-
function
|
|
2472
|
+
function Vu({ chip: t, note: e, scrub: n, mute: r, voice: s, prev: a, play: o, next: l }) {
|
|
2473
2473
|
return /* @__PURE__ */ g("div", { className: "vs-tt", children: [
|
|
2474
2474
|
/* @__PURE__ */ g("div", { className: "vs-tt__r1", children: [
|
|
2475
2475
|
/* @__PURE__ */ i("div", { className: "vs-tt__chip", children: t }),
|
|
@@ -2486,7 +2486,7 @@ function Bu({ chip: t, note: e, scrub: n, mute: r, voice: s, prev: a, play: o, n
|
|
|
2486
2486
|
] })
|
|
2487
2487
|
] });
|
|
2488
2488
|
}
|
|
2489
|
-
function
|
|
2489
|
+
function Wl({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek: a, onSeekFrac: o, onScrubStart: l, onScrubEnd: c, frac: u, glideMs: d = 260 }) {
|
|
2490
2490
|
const M = k(null), h = k(!1), [f, m] = L(null), y = Math.max(1, e), j = f ?? u, N = j != null ? Math.min(100, Math.max(0, j * 100)) : t / Math.max(1, y - 1) * 100, p = u != null && d > 0 && f == null ? `width ${d}ms linear, left ${d}ms linear` : "none", I = (S) => {
|
|
2491
2491
|
var z;
|
|
2492
2492
|
const B = (z = M.current) == null ? void 0 : z.getBoundingClientRect();
|
|
@@ -2530,7 +2530,7 @@ function Hl({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek:
|
|
|
2530
2530
|
] })
|
|
2531
2531
|
] });
|
|
2532
2532
|
}
|
|
2533
|
-
function
|
|
2533
|
+
function Fl(t, e, n) {
|
|
2534
2534
|
const r = new Set(t.seqs ?? t.words.map((l) => l.seq)), s = (e ?? []).filter((l) => !l.revertedAt && l.seq != null && r.has(l.seq) && (l.kind === "word" || l.kind === "line")), a = s.some((l) => l.kind === "line"), o = (l) => !!(n != null && n.has(`${l.seq}:${l.idx}`));
|
|
2535
2535
|
return {
|
|
2536
2536
|
script: a ? 0 : t.words.filter((l) => l.script && !o(l)).length,
|
|
@@ -2538,7 +2538,7 @@ function Wl(t, e, n) {
|
|
|
2538
2538
|
manualCount: a ? 0 : s.filter((l) => l.kind === "word").length
|
|
2539
2539
|
};
|
|
2540
2540
|
}
|
|
2541
|
-
function
|
|
2541
|
+
function Zl({ f: t, desk: e, onOpen: n }) {
|
|
2542
2542
|
const r = (s, a, o) => /* @__PURE__ */ g("span", { role: "button", title: "Open this line in Fix", className: "badge badge--fix", style: { marginLeft: o ? "auto" : 0 }, onClick: (l) => {
|
|
2543
2543
|
l.stopPropagation(), n == null || n();
|
|
2544
2544
|
}, children: [
|
|
@@ -2551,7 +2551,7 @@ function Fl({ f: t, desk: e, onOpen: n }) {
|
|
|
2551
2551
|
t.manual && r(e ? "MANUAL FIX" : "MANUAL", t.manualCount, t.script === 0)
|
|
2552
2552
|
] });
|
|
2553
2553
|
}
|
|
2554
|
-
function
|
|
2554
|
+
function Gl({ onOpen: t, alone: e }) {
|
|
2555
2555
|
const [n, r] = L(!1);
|
|
2556
2556
|
return /* @__PURE__ */ g("span", { role: "button", title: "Fix this line", className: `badge badge--pen${n ? " is-over" : ""}`, style: { marginLeft: e ? "auto" : 0 }, onMouseEnter: () => r(!0), onMouseLeave: () => r(!1), onClick: (s) => {
|
|
2557
2557
|
s.stopPropagation(), t();
|
|
@@ -2560,8 +2560,8 @@ function Zl({ onOpen: t, alone: e }) {
|
|
|
2560
2560
|
n && "FIX"
|
|
2561
2561
|
] });
|
|
2562
2562
|
}
|
|
2563
|
-
function
|
|
2564
|
-
const s =
|
|
2563
|
+
function ql(t, e, n, r) {
|
|
2564
|
+
const s = Bt(), [a, o] = L([]), [l, c] = L(0), u = k(/* @__PURE__ */ new Set()), d = k(!1), M = ze(() => new Map(n.filter((f) => f.sentenceId != null).map((f) => [f.sentenceId, f])), [n]);
|
|
2565
2565
|
D(() => {
|
|
2566
2566
|
u.current = /* @__PURE__ */ new Set();
|
|
2567
2567
|
}, [t, e]);
|
|
@@ -2587,13 +2587,13 @@ function Gl(t, e, n, r) {
|
|
|
2587
2587
|
}
|
|
2588
2588
|
}, [t, e, a, l, M, r]), h;
|
|
2589
2589
|
}
|
|
2590
|
-
function
|
|
2590
|
+
function Kl(t) {
|
|
2591
2591
|
return t.live || t.auto ? "From this session" : t.cloned ? t.library === !1 ? "This transcription only" : "Saved in Voices" : "";
|
|
2592
2592
|
}
|
|
2593
2593
|
function cn(t, e) {
|
|
2594
2594
|
return t.cloned ? { rank: 0, head: e.vcSheet } : t.gender === "male" ? { rank: 1, head: e.vcMale.toUpperCase() } : t.gender === "female" ? { rank: 2, head: e.vcFemale.toUpperCase() } : { rank: 3, head: e.vcSynth };
|
|
2595
2595
|
}
|
|
2596
|
-
function
|
|
2596
|
+
function Jl(t, e) {
|
|
2597
2597
|
const n = t.slice().sort((s, a) => cn(s, e).rank - cn(a, e).rank || s.name.localeCompare(a.name, void 0, { numeric: !0 })), r = {};
|
|
2598
2598
|
for (const s of n) {
|
|
2599
2599
|
const a = cn(s, e).head;
|
|
@@ -2604,7 +2604,7 @@ function Kl(t, e) {
|
|
|
2604
2604
|
return { v: s, headOn: l, head: o, headCount: r[o], rule: l ? "0" : "1px solid var(--hair)" };
|
|
2605
2605
|
});
|
|
2606
2606
|
}
|
|
2607
|
-
function
|
|
2607
|
+
function Xl(t, e, n) {
|
|
2608
2608
|
const r = /* @__PURE__ */ new Set();
|
|
2609
2609
|
let s = !1;
|
|
2610
2610
|
for (const o of t)
|
|
@@ -2654,7 +2654,7 @@ function fi(t, e, n = !0) {
|
|
|
2654
2654
|
}
|
|
2655
2655
|
return a;
|
|
2656
2656
|
}
|
|
2657
|
-
function
|
|
2657
|
+
function ec({ roster: t, selected: e, onSelect: n, noClone: r, building: s, short: a, warn: o, sexOf: l, t: c }) {
|
|
2658
2658
|
const u = t.find((d) => d.key === e) ?? t[0] ?? null;
|
|
2659
2659
|
return u ? /* @__PURE__ */ i("div", { style: { display: "flex", flexWrap: "wrap", gap: 6, padding: "0 2px 9px", margin: "0 -2px" }, children: t.map((d) => {
|
|
2660
2660
|
const M = d.key === u.key, h = d.key >= 0 ? (o == null ? void 0 : o(d)) ?? null : null, f = d.key >= 0 && !h && !!(s != null && s(d)), m = d.key >= 0 && !h && !f && r(d), y = d.key >= 0 && !h && !f && !m && !d.hasVoice && !!(a != null && a(d));
|
|
@@ -2686,8 +2686,8 @@ function Xl({ roster: t, selected: e, onSelect: n, noClone: r, building: s, shor
|
|
|
2686
2686
|
);
|
|
2687
2687
|
}) }) : null;
|
|
2688
2688
|
}
|
|
2689
|
-
function
|
|
2690
|
-
const y = ze(() =>
|
|
2689
|
+
function tc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s = null, dlId: a = null, onPick: o, onAdd: l, onUse: c, usedBy: u, foldKey: d, foldFor: M = null, problem: h, noClone: f = null, t: m }) {
|
|
2690
|
+
const y = ze(() => Jl(e, m), [e, m]), [j, N] = L({});
|
|
2691
2691
|
D(() => {
|
|
2692
2692
|
N({});
|
|
2693
2693
|
}, [d, M]);
|
|
@@ -2700,7 +2700,7 @@ function ec({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
2700
2700
|
h && /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "flex-start", gap: 9, padding: "10px 11px", marginBottom: 10, borderRadius: 11, background: "var(--conf-low-soft)" }, children: [
|
|
2701
2701
|
/* @__PURE__ */ i(oe, { d: X.warnTri, size: 15, sw: 1.7, style: { flex: "none", marginTop: 1, color: "var(--conf-low)" } }),
|
|
2702
2702
|
/* @__PURE__ */ i("span", { style: { flex: 1, minWidth: 0, fontSize: 12.5, fontWeight: 300, lineHeight: 1.45, color: "var(--ink-80)", textWrap: "pretty" }, children: h }),
|
|
2703
|
-
/* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(
|
|
2703
|
+
/* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(no, { value: h, label: "Copy this error" }) })
|
|
2704
2704
|
] }),
|
|
2705
2705
|
t,
|
|
2706
2706
|
f && /* @__PURE__ */ g(xe, { children: [
|
|
@@ -2716,8 +2716,8 @@ function ec({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
2716
2716
|
] })
|
|
2717
2717
|
] }),
|
|
2718
2718
|
y.map(({ v: S, headOn: B, head: Y, headCount: ee, rule: z }, F) => {
|
|
2719
|
-
const A =
|
|
2720
|
-
return /* @__PURE__ */ g(
|
|
2719
|
+
const A = Kl(S), T = a === S.id, _ = I(Y), b = (u == null ? void 0 : u(S)) ?? null;
|
|
2720
|
+
return /* @__PURE__ */ g(Va, { children: [
|
|
2721
2721
|
B && Y === m.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: F === 0 && !f ? "0" : "1px solid var(--hair)", userSelect: "none" }, children: /* @__PURE__ */ i("span", { style: { font: "600 9px var(--vs-font-mono)", letterSpacing: ".13em", color: "var(--ink-62)" }, children: Y }) }),
|
|
2722
2722
|
B && Y !== m.vcSheet && /* @__PURE__ */ g(
|
|
2723
2723
|
"button",
|
|
@@ -2747,8 +2747,8 @@ function ec({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
2747
2747
|
style: { width: "100%", textAlign: "left", font: "inherit", border: 0, borderTop: _ ? z : "0", display: "flex", alignItems: "center", gap: 11, padding: _ ? "11px 8px" : "0px 8px", margin: "0 -6px", borderRadius: 10, background: r === S.id ? "var(--brand-tint)" : "transparent", cursor: "pointer", opacity: _ ? 1 : 0, maxHeight: _ ? 120 : 0, overflow: "hidden", transition: "max-height 280ms cubic-bezier(.32,.72,0,1),padding 280ms cubic-bezier(.32,.72,0,1),opacity 200ms ease" },
|
|
2748
2748
|
children: [
|
|
2749
2749
|
/* @__PURE__ */ i("span", { title: T ? "Downloading this voice" : void 0, style: { flex: "none", width: 32, height: 32, borderRadius: "50%", background: T ? "transparent" : S.cloned ? "var(--brand-soft)" : "var(--fill-06)", display: "flex", alignItems: "center", justifyContent: "center" }, children: T ? /* @__PURE__ */ i("span", { style: { width: 16, height: 16, borderRadius: "50%", border: "2px solid var(--fill-10)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite" } }) : s === S.id ? /* @__PURE__ */ g("span", { className: "vcplay", children: [
|
|
2750
|
-
/* @__PURE__ */ i("span", { className: "vcplay__eq", children: /* @__PURE__ */ i(
|
|
2751
|
-
/* @__PURE__ */ i("span", { className: "vcplay__stop", children: /* @__PURE__ */ i(
|
|
2750
|
+
/* @__PURE__ */ i("span", { className: "vcplay__eq", children: /* @__PURE__ */ i(nc, { height: 13, width: 2.5 }) }),
|
|
2751
|
+
/* @__PURE__ */ i("span", { className: "vcplay__stop", children: /* @__PURE__ */ i(Xa, { size: 11 }) })
|
|
2752
2752
|
] }) : /* @__PURE__ */ i(oe, { d: S.cloned ? X.voiceClone : S.gender === "female" ? X.venus : S.gender === "male" ? X.mars : X.mic, size: 15, sw: 1.6, style: { color: S.cloned ? "var(--brand)" : "var(--ink-55)" } }) }),
|
|
2753
2753
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
2754
2754
|
/* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", gap: 7, minWidth: 0 }, children: /* @__PURE__ */ i("span", { style: { minWidth: 0, fontSize: 14.5, fontWeight: S.id === n ? 600 : 400, color: "var(--ink-96)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: S.name }) }),
|
|
@@ -2776,7 +2776,7 @@ function ec({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
2776
2776
|
C && /* @__PURE__ */ i("div", { style: { position: "sticky", bottom: 0, zIndex: 3, marginTop: 6, padding: "11px 0 3px", animation: "vs-slide-up .18s ease-out" }, children: /* @__PURE__ */ i("button", { type: "button", className: "vcuse", title: "Apply this voice", onClick: () => r && c(r), children: /* @__PURE__ */ i("span", { children: m.vcUse }) }) })
|
|
2777
2777
|
] });
|
|
2778
2778
|
}
|
|
2779
|
-
function
|
|
2779
|
+
function nc({ height: t, width: e = 2 }) {
|
|
2780
2780
|
const n = { width: e, height: "100%", borderRadius: 1, background: "var(--brand)" };
|
|
2781
2781
|
return /* @__PURE__ */ g("span", { style: { flex: "none", display: "flex", alignItems: "flex-end", gap: 2, height: t }, children: [
|
|
2782
2782
|
/* @__PURE__ */ i("span", { style: { ...n, animation: "vs-eq .62s ease-in-out infinite" } }),
|
|
@@ -2784,16 +2784,16 @@ function tc({ height: t, width: e = 2 }) {
|
|
|
2784
2784
|
/* @__PURE__ */ i("span", { style: { ...n, animation: "vs-eq .62s ease-in-out .38s infinite" } })
|
|
2785
2785
|
] });
|
|
2786
2786
|
}
|
|
2787
|
-
const
|
|
2787
|
+
const rc = /* @__PURE__ */ g("span", { style: { display: "inline-flex", alignItems: "center", gap: 3 }, children: [
|
|
2788
2788
|
/* @__PURE__ */ i(oe, { d: X.langAuto, size: 19, sw: 1.7, style: { color: "var(--ink-62)", display: "block" } }),
|
|
2789
2789
|
/* @__PURE__ */ i(oe, { d: X.globe, size: 18, sw: 1.6, style: { color: "var(--ink-62)", display: "block" } })
|
|
2790
2790
|
] });
|
|
2791
2791
|
function Cr(t, e) {
|
|
2792
2792
|
const n = e ? t == null ? void 0 : t.languages.find((r) => r.code === e) : null;
|
|
2793
|
-
return { flag: e ? (n == null ? void 0 : n.flag) ?? "🌐" :
|
|
2793
|
+
return { flag: e ? (n == null ? void 0 : n.flag) ?? "🌐" : rc, code: e ? e.toUpperCase() : "", label: (n == null ? void 0 : n.native) ?? "As spoken", name: (n == null ? void 0 : n.name) ?? "Original" };
|
|
2794
2794
|
}
|
|
2795
|
-
function
|
|
2796
|
-
const s = (r == null ? void 0 : r.id) ?? null, a = (r == null ? void 0 : r.token) ?? null, o = (r == null ? void 0 : r.shareCode) ?? null, l =
|
|
2795
|
+
function sc(t, e, n = 0, r) {
|
|
2796
|
+
const s = (r == null ? void 0 : r.id) ?? null, a = (r == null ? void 0 : r.token) ?? null, o = (r == null ? void 0 : r.shareCode) ?? null, l = Bt(), { data: c } = Zi(async () => {
|
|
2797
2797
|
if (!t || !e) return null;
|
|
2798
2798
|
try {
|
|
2799
2799
|
return await l.client.voices.available(t, { recording: s ?? void 0, shareCode: s ? o ?? void 0 : void 0, asOwner: l.owner });
|
|
@@ -2803,11 +2803,11 @@ function rc(t, e, n = 0, r) {
|
|
|
2803
2803
|
}, [t, e, n, s, a, o]);
|
|
2804
2804
|
return c;
|
|
2805
2805
|
}
|
|
2806
|
-
function
|
|
2806
|
+
function ic(t) {
|
|
2807
2807
|
return (/* @__PURE__ */ new Set([...Object.keys(t.speakers), ...Object.keys(t.speakerIds)])).size;
|
|
2808
2808
|
}
|
|
2809
|
-
function
|
|
2810
|
-
const o =
|
|
2809
|
+
function ac({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, sentenceIds: a }) {
|
|
2810
|
+
const o = Bt(), { data: l, reload: c } = Zi(async () => {
|
|
2811
2811
|
if (!t || !e) return null;
|
|
2812
2812
|
const K = await o.client.recordings.voice(t, e, o.readAs).catch(() => []);
|
|
2813
2813
|
return { recordingId: t, lang: e, rows: K.filter((v) => v.lang === e) };
|
|
@@ -2858,11 +2858,11 @@ function ic({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, senten
|
|
|
2858
2858
|
const b = ze(() => {
|
|
2859
2859
|
if (!t) return [];
|
|
2860
2860
|
const K = B ? B.split(",").map(Number).filter((ie) => !n || z.has(ie)) : void 0, v = d ?? (K != null && K.length && e ? { lang: e, voiceKey: s ?? "", clips: [], voice: null } : null);
|
|
2861
|
-
return
|
|
2861
|
+
return po(v, t, o.origin, r, K);
|
|
2862
2862
|
}, [d, t, o, r, B, e, s, n, z]), te = ze(() => new Set(F), [F]);
|
|
2863
2863
|
return { listed: l, rows: u, track: d, renderVoiceId: M, rendering: C, failed: S, clips: b, requestRender: p, forget: I, reload: c, setNear: ee, missing: F.length, coming: te };
|
|
2864
2864
|
}
|
|
2865
|
-
const
|
|
2865
|
+
const oc = { share: X.share, delay: X.tabGauge, video: X.video, source: X.tabSources, script: X.tabScript, fix: X.tabFix, ending: X.tabEnding, summary: X.tabSummary, export: X.tabExport, settings: X.tabSettings, sources: X.tabSources, recs: X.mic };
|
|
2866
2866
|
function ea({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s }) {
|
|
2867
2867
|
const o = s && t.length <= 3, l = t.some((j) => j.key === e), [c, u] = L(null), d = k(null), [M, h] = L(0);
|
|
2868
2868
|
D(() => {
|
|
@@ -2881,7 +2881,7 @@ function ea({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
|
|
|
2881
2881
|
let y = null;
|
|
2882
2882
|
if (c) {
|
|
2883
2883
|
const j = { l: 0, r: typeof window < "u" ? window.innerWidth : 0 }, N = M || 80, p = Math.max(j.l + 8, Math.min(j.r - N - 8, c.x - N / 2));
|
|
2884
|
-
y =
|
|
2884
|
+
y = Fa(
|
|
2885
2885
|
/* @__PURE__ */ i("div", { className: "vsp vsp-portal", "data-theme": "dark", children: /* @__PURE__ */ g("div", { ref: d, "data-theme": "dark", className: "vs-tip__bubble vs-tip__bubble--top tabtip", style: { position: "fixed", left: p, top: c.y - 8, bottom: "auto", width: "auto", whiteSpace: "nowrap", transform: "translateY(-100%)", zIndex: 2147483e3, pointerEvents: "none" }, children: [
|
|
2886
2886
|
/* @__PURE__ */ i("span", { className: "vs-tip__row", children: /* @__PURE__ */ i("span", { className: "vs-tip__copy", children: c.label }) }),
|
|
2887
2887
|
/* @__PURE__ */ i("span", { className: "vs-tip__arrow", style: { left: Math.round(Math.max(8, Math.min(N - 19, c.x - p - 5.5))) } })
|
|
@@ -2891,7 +2891,7 @@ function ea({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
|
|
|
2891
2891
|
}
|
|
2892
2892
|
return /* @__PURE__ */ g("div", { role: "tablist", className: `tabbar tabbar--icons${s ? "" : " tabbar--desk"}`, "data-desk-tabs": a ? "" : void 0, "data-tab-n": a ? t.length : void 0, style: { marginBottom: r ? 12 : 0 }, onMouseLeave: m, children: [
|
|
2893
2893
|
t.map((j) => {
|
|
2894
|
-
const N = e === j.key, p = o || N, I = o ? "1 1 0" : N ? "1 1 auto" : s && !l ? "1 1 0" : "0 0 auto", C = j.icon ??
|
|
2894
|
+
const N = e === j.key, p = o || N, I = o ? "1 1 0" : N ? "1 1 auto" : s && !l ? "1 1 0" : "0 0 auto", C = j.icon ?? oc[j.key], S = () => {
|
|
2895
2895
|
m(), n(s && N ? "none" : j.key);
|
|
2896
2896
|
};
|
|
2897
2897
|
return s ? /* @__PURE__ */ g("button", { type: "button", role: "tab", "aria-selected": N, title: j.label, className: `tabbar__tab${N ? " is-on" : ""}`, style: { flex: I }, onClick: S, children: [
|
|
@@ -2905,8 +2905,8 @@ function ea({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
|
|
|
2905
2905
|
y
|
|
2906
2906
|
] });
|
|
2907
2907
|
}
|
|
2908
|
-
const
|
|
2909
|
-
function
|
|
2908
|
+
const lc = "M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3", cc = "m9 9 10.5-3m0 6.553v3.75a2.25 2.25 0 0 1-1.632 2.163l-1.32.377a1.803 1.803 0 1 1-.99-3.467l2.31-.66a2.25 2.25 0 0 0 1.632-2.163Zm0 0V2.25L9 5.25v10.303m0 0v3.75a2.25 2.25 0 0 1-1.632 2.163l-1.32.377a1.803 1.803 0 0 1-.99-3.467l2.31-.66A2.25 2.25 0 0 0 9 15.553Z";
|
|
2909
|
+
function uc({ audio: t, video: e, formats: n, onExport: r }) {
|
|
2910
2910
|
const [s, a] = L(null), [o, l] = L(null), c = k(void 0), u = k(!0);
|
|
2911
2911
|
D(() => (u.current = !0, () => {
|
|
2912
2912
|
u.current = !1, window.clearTimeout(c.current);
|
|
@@ -2935,11 +2935,11 @@ function cc({ audio: t, video: e, formats: n, onExport: r }) {
|
|
|
2935
2935
|
/* @__PURE__ */ i("span", { style: { fontSize: 13, fontWeight: 500, color: "var(--ink-96)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: y.name }),
|
|
2936
2936
|
/* @__PURE__ */ i("span", { style: { font: "500 9.5px var(--vs-font-mono)", color: "var(--ink-40)", letterSpacing: ".04em" }, children: y.meta })
|
|
2937
2937
|
] }),
|
|
2938
|
-
/* @__PURE__ */ i(oe, { d: s === m ? X.check :
|
|
2938
|
+
/* @__PURE__ */ i(oe, { d: s === m ? X.check : lc, size: 17, sw: 1.6, style: { flex: "none", color: s === m ? "var(--brand)" : "var(--ink-62)" } })
|
|
2939
2939
|
] })
|
|
2940
2940
|
] });
|
|
2941
2941
|
return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
|
|
2942
|
-
t && f("audio", t,
|
|
2942
|
+
t && f("audio", t, cc, "DOWNLOAD AUDIO"),
|
|
2943
2943
|
e && f("video", e, X.video, "DOWNLOAD VIDEO"),
|
|
2944
2944
|
n !== !1 && /* @__PURE__ */ g(xe, { children: [
|
|
2945
2945
|
/* @__PURE__ */ i(Lr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "EXPORT AS" }),
|
|
@@ -2964,9 +2964,9 @@ function Qr(t, e, n) {
|
|
|
2964
2964
|
}
|
|
2965
2965
|
r();
|
|
2966
2966
|
}
|
|
2967
|
-
function
|
|
2967
|
+
function dc(t, e, n) {
|
|
2968
2968
|
const [r, s] = L(null), a = t.state === "ready", o = `${e ?? ""}|${n ?? ""}|${a ? `${t.title}
|
|
2969
|
-
${t.summary}` : ""}`, l =
|
|
2969
|
+
${t.summary}` : ""}`, l = Bt();
|
|
2970
2970
|
return D(() => {
|
|
2971
2971
|
if (!e || !n || !a) return;
|
|
2972
2972
|
let c = !0;
|
|
@@ -2981,12 +2981,12 @@ ${t.summary}` : ""}`, l = Qt();
|
|
|
2981
2981
|
};
|
|
2982
2982
|
}, [o, l]), !n || !a ? t : (r == null ? void 0 : r.key) === o ? r.s : { state: "pending", retry: t.retry };
|
|
2983
2983
|
}
|
|
2984
|
-
function
|
|
2984
|
+
function hc(t) {
|
|
2985
2985
|
return t != null && t.title && (t != null && t.summary) ? { state: "ready", title: t.title, summary: t.summary, retry: () => {
|
|
2986
2986
|
} } : { state: "unavailable", retry: () => {
|
|
2987
2987
|
} };
|
|
2988
2988
|
}
|
|
2989
|
-
function
|
|
2989
|
+
function Mc({ s: t }) {
|
|
2990
2990
|
const [e, n] = L(!1), r = k(void 0);
|
|
2991
2991
|
D(() => () => window.clearTimeout(r.current), []);
|
|
2992
2992
|
const s = t.title ?? "", a = t.summary ?? "", o = () => {
|
|
@@ -3003,7 +3003,7 @@ ${a}`).catch(() => {
|
|
|
3003
3003
|
/* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", gap: 8, minHeight: 24 }, children: [
|
|
3004
3004
|
/* @__PURE__ */ i(Lr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "SUMMARY" }),
|
|
3005
3005
|
t.state === "ready" && /* @__PURE__ */ g("button", { type: "button", className: "sumcopy", title: "Copy title and summary", style: { color: e ? "var(--brand)" : "var(--ink-70)" }, onClick: o, children: [
|
|
3006
|
-
/* @__PURE__ */ i(oe, { d: e ? X.check :
|
|
3006
|
+
/* @__PURE__ */ i(oe, { d: e ? X.check : pc, size: 13, sw: 1.6 }),
|
|
3007
3007
|
e ? "Copied" : "Copy"
|
|
3008
3008
|
] })
|
|
3009
3009
|
] }),
|
|
@@ -3016,15 +3016,15 @@ ${a}`).catch(() => {
|
|
|
3016
3016
|
] })
|
|
3017
3017
|
] });
|
|
3018
3018
|
}
|
|
3019
|
-
function
|
|
3019
|
+
function gc({ ytId: t, title: e, timeLabel: n, radius: r, style: s, large: a, children: o, picture: l }) {
|
|
3020
3020
|
return /* @__PURE__ */ g("div", { className: "livevid", style: { ...r != null ? { borderRadius: r } : null, ...s }, children: [
|
|
3021
3021
|
/* @__PURE__ */ i(oe, { d: "m15.75 10.5 4.72-4.72a.75.75 0 0 1 1.28.53v11.38a.75.75 0 0 1-1.28.53l-4.72-4.72M4.5 18.75h9a2.25 2.25 0 0 0 2.25-2.25v-9a2.25 2.25 0 0 0-2.25-2.25h-9A2.25 2.25 0 0 0 2.25 7.5v9a2.25 2.25 0 0 0 2.25 2.25Z", size: a ? 34 : 30, sw: 1.2 }),
|
|
3022
|
-
l ?? /* @__PURE__ */ i("iframe", { src:
|
|
3022
|
+
l ?? /* @__PURE__ */ i("iframe", { src: Rl(t), title: e, referrerPolicy: "strict-origin-when-cross-origin", allow: "autoplay; encrypted-media; picture-in-picture" }),
|
|
3023
3023
|
n && /* @__PURE__ */ i("span", { className: "livevid__t", style: a ? { bottom: 10, right: 10 } : void 0, children: n }),
|
|
3024
3024
|
o
|
|
3025
3025
|
] });
|
|
3026
3026
|
}
|
|
3027
|
-
function
|
|
3027
|
+
function fc(t = !0, e) {
|
|
3028
3028
|
const n = k(null), r = e ?? n;
|
|
3029
3029
|
return D(() => {
|
|
3030
3030
|
const s = r.current;
|
|
@@ -3045,9 +3045,9 @@ function gc(t = !0, e) {
|
|
|
3045
3045
|
};
|
|
3046
3046
|
}, [t]), r;
|
|
3047
3047
|
}
|
|
3048
|
-
const
|
|
3049
|
-
function
|
|
3050
|
-
const [n, r] =
|
|
3048
|
+
const pc = "M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75";
|
|
3049
|
+
function mc(t, e) {
|
|
3050
|
+
const [n, r] = No(t), s = e.tabs.map((p) => p.key), a = e.tabbed !== !1, o = e.pinnable ?? s;
|
|
3051
3051
|
let l = n;
|
|
3052
3052
|
[...e.autoPin ?? []].reverse().forEach((p) => {
|
|
3053
3053
|
s.includes(p) && !l.includes(p) && !l.includes(`!${p}`) && (l = [p, ...l]);
|
|
@@ -3085,8 +3085,8 @@ function pc(t, e) {
|
|
|
3085
3085
|
};
|
|
3086
3086
|
return { id: t, tabbed: a && M.length > 1, cur: h, seq: d, pinnable: o, tabKeys: M, stripTabs: e.tabs.filter((p) => M.includes(p.key)), panel: N, pin: m, unpin: y };
|
|
3087
3087
|
}
|
|
3088
|
-
function
|
|
3089
|
-
return
|
|
3088
|
+
function Nc({ col: t, order: e, render: n, grip: r, onPick: s, wrapClass: a }) {
|
|
3089
|
+
return yc(t), /* @__PURE__ */ g(xe, { children: [
|
|
3090
3090
|
e.map((o) => {
|
|
3091
3091
|
const l = t.panel(o);
|
|
3092
3092
|
if (!l.show) return null;
|
|
@@ -3102,7 +3102,7 @@ function mc({ col: t, order: e, render: n, grip: r, onPick: s, wrapClass: a }) {
|
|
|
3102
3102
|
}, fold: !1 }) })
|
|
3103
3103
|
] });
|
|
3104
3104
|
}
|
|
3105
|
-
function
|
|
3105
|
+
function yc(t) {
|
|
3106
3106
|
const e = k(t);
|
|
3107
3107
|
e.current = t;
|
|
3108
3108
|
const n = t.id;
|
|
@@ -3203,9 +3203,9 @@ function Nc(t) {
|
|
|
3203
3203
|
};
|
|
3204
3204
|
}, [n]);
|
|
3205
3205
|
}
|
|
3206
|
-
function
|
|
3207
|
-
const [o, l] =
|
|
3208
|
-
|
|
3206
|
+
function Tc({ id: t, className: e, gap: n, hidden: r, plain: s, children: a }) {
|
|
3207
|
+
const [o, l] = To(t), c = k(null), u = k(null);
|
|
3208
|
+
wc(u), D(() => {
|
|
3209
3209
|
document.documentElement.style.setProperty("--colw", `${o}px`);
|
|
3210
3210
|
}, [o]);
|
|
3211
3211
|
const d = (h) => {
|
|
@@ -3229,7 +3229,7 @@ function yc({ id: t, className: e, gap: n, hidden: r, plain: s, children: a }) {
|
|
|
3229
3229
|
/* @__PURE__ */ i("div", { ref: c, "data-tab-col": t, className: `${e} sidecol`, style: { flex: `0 0 ${o}px`, ...M }, children: s ? a : /* @__PURE__ */ i("div", { ref: u, "data-panel-grid": "", className: "panelgrid", children: a }) })
|
|
3230
3230
|
] });
|
|
3231
3231
|
}
|
|
3232
|
-
function
|
|
3232
|
+
function wc(t) {
|
|
3233
3233
|
D(() => {
|
|
3234
3234
|
const e = t.current;
|
|
3235
3235
|
if (!e) return;
|
|
@@ -3257,12 +3257,12 @@ function Tc(t) {
|
|
|
3257
3257
|
};
|
|
3258
3258
|
}, [t]);
|
|
3259
3259
|
}
|
|
3260
|
-
function
|
|
3260
|
+
function vc(t) {
|
|
3261
3261
|
return /\bwas not captured\b/i.test(t ?? "");
|
|
3262
3262
|
}
|
|
3263
|
-
const
|
|
3264
|
-
function
|
|
3265
|
-
const e =
|
|
3263
|
+
const Lc = 1500, kc = 3e5;
|
|
3264
|
+
function jc(t) {
|
|
3265
|
+
const e = Bt(), [n, r] = L(null), [s, a] = L(null), [o, l] = L(null), [c, u] = L(null), d = k(null), M = k(null), h = k(null), f = k(0), m = Je(() => {
|
|
3266
3266
|
h.current && (clearTimeout(h.current), h.current = null), d.current && (d.current.pause(), d.current.removeAttribute("src"), d.current.load(), d.current = null), M.current && (URL.revokeObjectURL(M.current), M.current = null);
|
|
3267
3267
|
}, []), y = Je(() => {
|
|
3268
3268
|
f.current += 1, m(), a(null), l(null);
|
|
@@ -3293,13 +3293,13 @@ function kc(t) {
|
|
|
3293
3293
|
}
|
|
3294
3294
|
if (f.current !== I) return;
|
|
3295
3295
|
if (Y.status === 202 || Y.status === 503) {
|
|
3296
|
-
if (Date.now() - S >
|
|
3296
|
+
if (Date.now() - S > kc) {
|
|
3297
3297
|
l(null), u({ message: "This voice is still being fetched. Try it again in a moment." });
|
|
3298
3298
|
return;
|
|
3299
3299
|
}
|
|
3300
3300
|
l(p.id), h.current = setTimeout(() => {
|
|
3301
3301
|
B();
|
|
3302
|
-
},
|
|
3302
|
+
}, Lc);
|
|
3303
3303
|
return;
|
|
3304
3304
|
}
|
|
3305
3305
|
if (!Y.ok) {
|
|
@@ -3329,11 +3329,11 @@ const xr = 0.05, ta = (t, e) => {
|
|
|
3329
3329
|
for (let r = 0; r < t.length; r++) t[r].start <= e + 1e-6 && (n = r);
|
|
3330
3330
|
return n;
|
|
3331
3331
|
};
|
|
3332
|
-
function
|
|
3332
|
+
function zc(t, e, n, r) {
|
|
3333
3333
|
const s = Math.max(0, e), a = r > 0 && s >= r - xr, o = t.length && t[0].start <= s + 1e-6 ? ta(t, s) : -1;
|
|
3334
3334
|
return o < 0 ? { t: s, playing: n && !a, sentenceId: null, offset: 0, ended: a } : { t: s, playing: n && !a, sentenceId: t[o].sentenceId ?? null, offset: Math.max(0, s - t[o].start), ended: a };
|
|
3335
3335
|
}
|
|
3336
|
-
function
|
|
3336
|
+
function Dn(t, e, n) {
|
|
3337
3337
|
var l;
|
|
3338
3338
|
const r = Math.max(0, n);
|
|
3339
3339
|
if (t.ended) return { t: r, playing: !1, index: Math.max(0, e.length - 1) };
|
|
@@ -3347,11 +3347,11 @@ function Sn(t, e, n) {
|
|
|
3347
3347
|
const o = r > 0 && a >= r - xr && s < 0;
|
|
3348
3348
|
return { t: a, playing: t.playing && !o, index: s >= 0 ? s : ta(e, a) };
|
|
3349
3349
|
}
|
|
3350
|
-
function
|
|
3350
|
+
function Ic(t) {
|
|
3351
3351
|
return t.on ? t.want || t.relang ? "asked" : t.playing && (t.preparing || t.starting != null) ? "line" : null : null;
|
|
3352
3352
|
}
|
|
3353
3353
|
const pi = "Preparing the voice…";
|
|
3354
|
-
function
|
|
3354
|
+
function Oc(t) {
|
|
3355
3355
|
if (!t.lang) return null;
|
|
3356
3356
|
const e = t.langName;
|
|
3357
3357
|
return t.translateFailed === t.lang ? { kind: "translateFailed", lang: e } : t.voiceFailed ? { kind: "voiceFailed", lang: e } : t.translating ? { kind: "translating", lang: e } : t.starting != null ? { kind: "starting", lang: e, since: t.starting } : t.relang || t.slowLine ? { kind: "voice", lang: e, since: t.lineSince } : null;
|
|
@@ -3369,8 +3369,8 @@ function na(t, e) {
|
|
|
3369
3369
|
return () => clearTimeout(l);
|
|
3370
3370
|
}, [t, e]), [s, n];
|
|
3371
3371
|
}
|
|
3372
|
-
const
|
|
3373
|
-
function
|
|
3372
|
+
const bc = (t) => `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
3373
|
+
function Cc({ state: t, line: e, onRetry: n, onOriginal: r }) {
|
|
3374
3374
|
const [s, a] = L(() => Date.now());
|
|
3375
3375
|
D(() => {
|
|
3376
3376
|
if (t.since == null) return;
|
|
@@ -3403,7 +3403,7 @@ function bc({ state: t, line: e, onRetry: n, onOriginal: r }) {
|
|
|
3403
3403
|
/* @__PURE__ */ g("div", { className: "pwait__head", children: [
|
|
3404
3404
|
l ? /* @__PURE__ */ i("div", { className: "pwait__mark", "aria-hidden": "true", children: /* @__PURE__ */ i(oe, { d: X.warnCircle, size: 18, sw: 1.8 }) }) : /* @__PURE__ */ i("div", { className: "pwait__spin", "aria-hidden": "true" }),
|
|
3405
3405
|
/* @__PURE__ */ i("div", { className: "pwait__t", children: c }),
|
|
3406
|
-
!l && o != null && o >= 3 && /* @__PURE__ */ i("div", { className: "pwait__clock", "aria-label": `${o} seconds`, children:
|
|
3406
|
+
!l && o != null && o >= 3 && /* @__PURE__ */ i("div", { className: "pwait__clock", "aria-label": `${o} seconds`, children: bc(o) })
|
|
3407
3407
|
] }),
|
|
3408
3408
|
/* @__PURE__ */ i("div", { className: "pwait__note", children: u }),
|
|
3409
3409
|
!l && /* @__PURE__ */ i("div", { className: "pwait__bar", "aria-hidden": "true", children: /* @__PURE__ */ i("div", {}) }),
|
|
@@ -3421,7 +3421,7 @@ function ra(t, e, n) {
|
|
|
3421
3421
|
const r = t[e], s = n && r.translations[n] && r.language !== n ? r.translations[n] : null;
|
|
3422
3422
|
if (!s && r.words.length) return r.words;
|
|
3423
3423
|
const a = (s ?? r.text).split(/\s+/).filter(Boolean), o = ((c = r.words[0]) == null ? void 0 : c.start) ?? r.start, l = Ji(r, t[e + 1], r.start + Math.max(2, a.length * 0.4));
|
|
3424
|
-
return
|
|
3424
|
+
return Ql(a, o, l).map((u, d) => ({ ...u, seq: r.seqs[0] ?? 0, idx: d }));
|
|
3425
3425
|
}
|
|
3426
3426
|
function mi(t, e, n) {
|
|
3427
3427
|
if (!t.engaged || e !== t.idx || !n.length) return null;
|
|
@@ -3435,15 +3435,15 @@ function Gt(t, e) {
|
|
|
3435
3435
|
var l;
|
|
3436
3436
|
const n = t.clipPos;
|
|
3437
3437
|
if (t.wordSync || t.timed || !n || !(n.dur > 0)) return t.t;
|
|
3438
|
-
const r = e[t.idx], s = (r == null ? void 0 : r.start) ?? t.t, a = ((l = e[t.idx + 1]) == null ? void 0 : l.start) ??
|
|
3438
|
+
const r = e[t.idx], s = (r == null ? void 0 : r.start) ?? t.t, a = ((l = e[t.idx + 1]) == null ? void 0 : l.start) ?? Qt(r, s, t.dur), o = Math.max(0, a - s);
|
|
3439
3439
|
return s + Math.min(o, n.t / n.dur * o);
|
|
3440
3440
|
}
|
|
3441
|
-
function
|
|
3441
|
+
function Qt(t, e, n) {
|
|
3442
3442
|
var s;
|
|
3443
3443
|
const r = (s = t == null ? void 0 : t.words[t.words.length - 1]) == null ? void 0 : s.end;
|
|
3444
3444
|
return r != null && r > e ? r : (t == null ? void 0 : t.end) != null && t.end > e ? t.end : n > e ? n : e + 4;
|
|
3445
3445
|
}
|
|
3446
|
-
function
|
|
3446
|
+
function xc({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: u, lead: d, onTime: M, waiting: h = !1 }) {
|
|
3447
3447
|
const f = k(null), [m, y] = L(!1);
|
|
3448
3448
|
D(() => {
|
|
3449
3449
|
if (!h) {
|
|
@@ -3563,7 +3563,7 @@ function Cc({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3563
3563
|
}, [Z]), /* @__PURE__ */ g("div", { className: `txyt${p ? " txyt--ad" : ""}`, children: [
|
|
3564
3564
|
/* @__PURE__ */ i("iframe", { ref: f, onLoad: je, referrerPolicy: "strict-origin-when-cross-origin", src: `https://www.youtube-nocookie.com/embed/${t}?enablejsapi=1&mute=1&controls=0&rel=0&modestbranding=1&playsinline=1&iv_load_policy=3`, title: e, allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" }),
|
|
3565
3565
|
!p && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
|
|
3566
|
-
/* @__PURE__ */ i("div", { className: `txyt__paused${ie && !p && !H ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(
|
|
3566
|
+
/* @__PURE__ */ i("div", { className: `txyt__paused${ie && !p && !H ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Mn, { size: 44 }) }) }),
|
|
3567
3567
|
p && /* @__PURE__ */ i("div", { className: "txyt__ad", "aria-live": "polite", children: "Ad on YouTube · the transcript carries on after it" }),
|
|
3568
3568
|
H && /* @__PURE__ */ g("div", { className: "txyt__gone", children: [
|
|
3569
3569
|
/* @__PURE__ */ i("span", { children: "YouTube no longer has this part of the broadcast" }),
|
|
@@ -3571,22 +3571,22 @@ function Cc({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3571
3571
|
] })
|
|
3572
3572
|
] });
|
|
3573
3573
|
}
|
|
3574
|
-
const
|
|
3574
|
+
const Sc = /* @__PURE__ */ g(xe, { children: [
|
|
3575
3575
|
/* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
|
|
3576
3576
|
/* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
|
|
3577
|
-
] }),
|
|
3578
|
-
function
|
|
3577
|
+
] }), Dc = /* @__PURE__ */ i("path", { d: "M7.5 5.6a1 1 0 0 1 1.52-.85l9.1 5.55a1 1 0 0 1 0 1.7l-9.1 5.55a1 1 0 0 1-1.52-.85V5.6Z" });
|
|
3578
|
+
function Ac({ player: t, size: e }) {
|
|
3579
3579
|
const n = t.muted ? "Unmute" : "Mute";
|
|
3580
3580
|
return /* @__PURE__ */ i("button", { type: "button", className: `mutebtn${e < 36 ? " mutebtn--sm" : e > 36 ? " mutebtn--lg" : ""}`, "aria-label": n, title: n, "aria-pressed": t.muted, onClick: t.toggleMute, children: /* @__PURE__ */ i(oe, { d: t.muted ? X.volumeOff : X.volume, size: 17, sw: 1.6, style: { color: t.muted ? "var(--ink-38)" : "var(--ink-70)" } }) });
|
|
3581
3581
|
}
|
|
3582
|
-
function
|
|
3582
|
+
function Ec() {
|
|
3583
3583
|
const [t, e] = L(""), n = k(null), r = Je((s) => {
|
|
3584
3584
|
clearTimeout(n.current), e(s), n.current = setTimeout(() => e(""), 3e3);
|
|
3585
3585
|
}, []);
|
|
3586
3586
|
return D(() => () => clearTimeout(n.current), []), [t, r];
|
|
3587
3587
|
}
|
|
3588
|
-
const
|
|
3589
|
-
function
|
|
3588
|
+
const _c = 0.2, Yc = 140, Uc = 320;
|
|
3589
|
+
function Rc(t, e) {
|
|
3590
3590
|
const n = k(t);
|
|
3591
3591
|
n.current = t;
|
|
3592
3592
|
const r = k(0), s = k(1), a = Je((o, l) => {
|
|
@@ -3600,13 +3600,13 @@ function Uc(t, e) {
|
|
|
3600
3600
|
d();
|
|
3601
3601
|
}, []);
|
|
3602
3602
|
D(() => {
|
|
3603
|
-
a(e ?
|
|
3603
|
+
a(e ? _c : 1, e ? Yc : Uc);
|
|
3604
3604
|
}, [e, a]), D(() => () => {
|
|
3605
3605
|
cancelAnimationFrame(r.current), s.current = 1;
|
|
3606
3606
|
for (const o of n.current) o.setVolume(1);
|
|
3607
3607
|
}, []);
|
|
3608
3608
|
}
|
|
3609
|
-
function
|
|
3609
|
+
function Pc(t, e, n, r) {
|
|
3610
3610
|
var De;
|
|
3611
3611
|
const s = k(null), a = k(!1), o = k(!1), [l, c] = L(null), [u, d] = L(!0), M = k(!0), h = k(!1), [f, m] = L(0), y = k(0);
|
|
3612
3612
|
y.current = f;
|
|
@@ -3749,7 +3749,7 @@ function Rc(t, e, n, r) {
|
|
|
3749
3749
|
setVolume: (Q) => Y("setVolume", [Math.round(Q * 100)])
|
|
3750
3750
|
}, lead: A, setVideoSound: we };
|
|
3751
3751
|
}
|
|
3752
|
-
function
|
|
3752
|
+
function $c(t, e, n, r, s = 0, a = null) {
|
|
3753
3753
|
var E;
|
|
3754
3754
|
const o = k(null), [l, c] = L(!1), [u, d] = L(0), [M, h] = L(!1), f = k(M);
|
|
3755
3755
|
f.current = M;
|
|
@@ -3770,9 +3770,9 @@ function Pc(t, e, n, r, s = 0, a = null) {
|
|
|
3770
3770
|
});
|
|
3771
3771
|
}, V.onerror = () => {
|
|
3772
3772
|
c(!1);
|
|
3773
|
-
const W = V.error, ye =
|
|
3774
|
-
|
|
3775
|
-
|
|
3773
|
+
const W = V.error, ye = ho(W, !1);
|
|
3774
|
+
ao(t).then((G) => {
|
|
3775
|
+
vc(G == null ? void 0 : G.message) || bi(W), o.current === V && (j({ message: (G == null ? void 0 : G.message) ?? ye }), G != null && G.permanent || (o.current = null));
|
|
3776
3776
|
});
|
|
3777
3777
|
}, o.current = V, () => {
|
|
3778
3778
|
C.current = { t: Math.max(0, V.currentTime - ce), playing: !V.paused && !V.ended }, V.pause(), V.onplay = V.onpause = V.onended = V.onloadedmetadata = V.onerror = null, o.current = null;
|
|
@@ -3852,7 +3852,7 @@ function Pc(t, e, n, r, s = 0, a = null) {
|
|
|
3852
3852
|
const V = n[Math.max(0, Math.min(n.length - 1, x))];
|
|
3853
3853
|
V && Z(V.start);
|
|
3854
3854
|
}, Te = (x) => Z(Math.max(0, Math.min(1, x)) * z), je = (x) => {
|
|
3855
|
-
const V =
|
|
3855
|
+
const V = Dn(x, n, z);
|
|
3856
3856
|
Z(V.t);
|
|
3857
3857
|
const ce = o.current;
|
|
3858
3858
|
if (ce) {
|
|
@@ -3941,7 +3941,7 @@ function Pc(t, e, n, r, s = 0, a = null) {
|
|
|
3941
3941
|
}
|
|
3942
3942
|
};
|
|
3943
3943
|
}
|
|
3944
|
-
function
|
|
3944
|
+
function Qc(t, e, n, r, s, a, o = !1, l) {
|
|
3945
3945
|
const c = k(/* @__PURE__ */ new Set());
|
|
3946
3946
|
c.current = l ?? c.current;
|
|
3947
3947
|
const u = k(null), [d, M] = L(!1), [h, f] = L(0), [m, y] = L(0), [j, N] = L(!1), p = k(j);
|
|
@@ -3970,12 +3970,12 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
3970
3970
|
const Ne = A.current;
|
|
3971
3971
|
if (R == null) return Ne && Ne.sid === q ? Math.max(0, Oe.start - Ne.t) : 0;
|
|
3972
3972
|
const Le = le.current;
|
|
3973
|
-
return Le && Date.now() - Le.at < 2e3 ? Math.max(0, Oe.start - (Le.t + (Date.now() - Le.at) / 1e3 * U.rate)) : !de || Oe.start <= de.start ? 0 : Math.max(0, Oe.start -
|
|
3973
|
+
return Le && Date.now() - Le.at < 2e3 ? Math.max(0, Oe.start - (Le.t + (Date.now() - Le.at) / 1e3 * U.rate)) : !de || Oe.start <= de.start ? 0 : Math.max(0, Oe.start - Qt(de, de.start, de.start + 4));
|
|
3974
3974
|
}, U.flow = J.current, U.silentSpan = (R) => {
|
|
3975
3975
|
var $e;
|
|
3976
3976
|
const q = Z.current, se = q.findIndex((at) => at.sentenceId === R), de = q[se];
|
|
3977
3977
|
if (!de) return null;
|
|
3978
|
-
const Oe = (($e = q[se + 1]) == null ? void 0 : $e.start) ??
|
|
3978
|
+
const Oe = (($e = q[se + 1]) == null ? void 0 : $e.start) ?? Qt(de, de.start, de.start + 4), Ne = Math.max(0, Oe - de.start), Le = le.current, be = Le && Date.now() - Le.at < 2e3 ? Le.t + (Date.now() - Le.at) / 1e3 * (U.rate || 1) : de.start, He = Math.max(0, Math.min(Ne, be - de.start));
|
|
3979
3979
|
return { fromS: He, ms: (Ne - He) * 1e3 / (U.rate || 1) };
|
|
3980
3980
|
}, U.speakable = (R) => {
|
|
3981
3981
|
const q = Te.current;
|
|
@@ -3986,7 +3986,7 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
3986
3986
|
}, []), ve = k(null), we = k(null), Ee = k(null), [Re, De] = L(!1), Q = k(() => {
|
|
3987
3987
|
}), H = (U) => {
|
|
3988
3988
|
if (Ee.current = U, De(!!(U != null && U.playing)), !U) return;
|
|
3989
|
-
const R =
|
|
3989
|
+
const R = Dn(U, Z.current, Ie).index;
|
|
3990
3990
|
f(R), Ae.current = R;
|
|
3991
3991
|
}, E = () => {
|
|
3992
3992
|
Ee.current && H(null);
|
|
@@ -4051,11 +4051,11 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
4051
4051
|
E(), F(null), (R = u.current) == null || R.startWithin(-1, 0), _e(U);
|
|
4052
4052
|
}, $ = (U) => {
|
|
4053
4053
|
var de;
|
|
4054
|
-
const R = e[U], q = (R == null ? void 0 : R.start) ?? 0, se = ((de = e[U + 1]) == null ? void 0 : de.start) ??
|
|
4054
|
+
const R = e[U], q = (R == null ? void 0 : R.start) ?? 0, se = ((de = e[U + 1]) == null ? void 0 : de.start) ?? Qt(R, q, Ie);
|
|
4055
4055
|
return { from: q, span: Math.max(0, se - q) };
|
|
4056
|
-
}, Me = $(G), ue = Math.max(0, Math.min(Me.span,
|
|
4056
|
+
}, Me = $(G), ue = Math.max(0, Math.min(Me.span, Qt(e[G], Me.from, Me.from + 4) - Me.from)), ae = z ? z.t : o ? b != null && ie ? Me.from + Math.min(Me.span, b) : b != null ? K != null ? Math.min(Me.from, K + b) : Me.from + Math.min(Me.span, ue + b) : T && T.dur > 0 ? Me.from + Math.min(ue, T.t / T.dur * ue) : Me.from : T && T.dur > 0 ? Me.from + Math.min(Me.span, T.t / T.dur * Me.span) : Me.from;
|
|
4057
4057
|
D(() => {
|
|
4058
|
-
we.current = Ee.current ??
|
|
4058
|
+
we.current = Ee.current ?? zc(e, ae, d, Ie);
|
|
4059
4059
|
});
|
|
4060
4060
|
const fe = {
|
|
4061
4061
|
playing: d || Re,
|
|
@@ -4118,7 +4118,7 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
4118
4118
|
let q = 0;
|
|
4119
4119
|
for (let Ge = 0; Ge < e.length; Ge++) e[Ge].start <= R && (q = Ge);
|
|
4120
4120
|
const se = e[q], de = o && se && R < se.start - 0.05;
|
|
4121
|
-
if (o && se && (de || e[q + 1] && R >=
|
|
4121
|
+
if (o && se && (de || e[q + 1] && R >= Qt(se, se.start, se.start + 4))) {
|
|
4122
4122
|
const Ge = de ? q : q + 1, rt = e[Ge];
|
|
4123
4123
|
(at = u.current) == null || at.startWithin(-1, 0);
|
|
4124
4124
|
const ct = { t: R, sid: rt.sentenceId ?? null };
|
|
@@ -4179,10 +4179,10 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
4179
4179
|
te((q == null ? void 0 : q.s) ?? null), ne(!!(q != null && q.silent)), M(!!((Ne = u.current) != null && Ne.playing));
|
|
4180
4180
|
}
|
|
4181
4181
|
return fe.joinAt = o ? (U) => {
|
|
4182
|
-
E(), Ye(
|
|
4182
|
+
E(), Ye(Dn({ t: U, playing: !0, sentenceId: null, offset: 0, ended: !1 }, e, Ie).index);
|
|
4183
4183
|
} : void 0, Q.current = (U) => {
|
|
4184
4184
|
var q;
|
|
4185
|
-
const R =
|
|
4185
|
+
const R = Dn(U, e, Ie);
|
|
4186
4186
|
if (J.current) {
|
|
4187
4187
|
f(R.index), Ae.current = R.index, R.playing && Ye(R.index);
|
|
4188
4188
|
return;
|
|
@@ -4190,22 +4190,22 @@ function $c(t, e, n, r, s, a, o = !1, l) {
|
|
|
4190
4190
|
(q = fe.seekFrac) == null || q.call(fe, R.t / Ie), R.playing && he(Ae.current);
|
|
4191
4191
|
}, fe;
|
|
4192
4192
|
}
|
|
4193
|
-
const
|
|
4194
|
-
},
|
|
4195
|
-
function
|
|
4196
|
-
var
|
|
4197
|
-
const { onAddVoice: I, onPickVoice: C, onSelectSpeaker: S, noCloneFor: B, castNoClone: Y, castShort: ee, castBuilding: z, castWarn: F, badge: A, titleNode: T } = N ?? {}, _ = !!N, b = !!(N != null && N.pendingClones), [te, K] = _i(), [v, ie] = L(null), [ne, Z] = L(!1), [J, pe] = L(!1), [le, Te] = L(!1), [je, Se] = L(!1), ve = u ?? l, we = u === null, Ee = u != null || v != null, De = ((P) => !!P && !!(o != null && o.voice.includes(P)))(we ? l : ve) ? we ? l : ve : "en", Q =
|
|
4193
|
+
const Bc = () => {
|
|
4194
|
+
}, Vc = "The language this recording is read aloud in.", Hc = { title: "READ IN", note: "The transcript and its voice switch to this language." };
|
|
4195
|
+
function Wc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: u, setPickedLang: d, side: M, hearOriginal: h = !1, timed: f = !1, stockVoices: m = !1, stickyPicker: y = !1, pickerBusy: j = null, voiceSheet: N, forcedVoice: p = null }) {
|
|
4196
|
+
var Rt, fn, sn, an;
|
|
4197
|
+
const { onAddVoice: I, onPickVoice: C, onSelectSpeaker: S, noCloneFor: B, castNoClone: Y, castShort: ee, castBuilding: z, castWarn: F, badge: A, titleNode: T } = N ?? {}, _ = !!N, b = !!(N != null && N.pendingClones), [te, K] = _i(), [v, ie] = L(null), [ne, Z] = L(!1), [J, pe] = L(!1), [le, Te] = L(!1), [je, Se] = L(!1), ve = u ?? l, we = u === null, Ee = u != null || v != null, De = ((P) => !!P && !!(o != null && o.voice.includes(P)))(we ? l : ve) ? we ? l : ve : "en", Q = jc(De), H = (N == null ? void 0 : N.cloneOn) ?? !0, [E, x] = L(0), V = k(H);
|
|
4198
4198
|
D(() => {
|
|
4199
4199
|
V.current !== H && (V.current = H, x((P) => P + 1));
|
|
4200
4200
|
}, [H]);
|
|
4201
|
-
const ce =
|
|
4201
|
+
const ce = sc(De, Ee || s || J, ic(e) * 1e3 + E, { id: t ?? null, shareCode: a.shareCode ?? null }), W = ze(() => ((ce == null ? void 0 : ce.voices) ?? []).filter((P) => _ || !P.cloned || P.speaker != null), [ce, _]), ye = W.length > 1, G = Cr(o, ve), ke = Gi(), Ie = ze(() => Yi(o, "translation"), [o]), [Fe, Ae] = L(null), [he] = L(() => /* @__PURE__ */ new Set()), [_e, Be] = L({}), $ = ze(() => Xl(n, e, ke.vcUnknownSpk), [n, e, ke]), Me = ye && $.filter((P) => P.key >= 0).length > 1, ue = Fe != null && $.some((P) => P.key === Fe) ? Fe : ((Rt = $[0]) == null ? void 0 : Rt.key) ?? null, ae = ze(() => {
|
|
4202
4202
|
const P = fi($, W, H);
|
|
4203
4203
|
for (const [Ce, Ve] of Object.entries(_e[De ?? ""] ?? {})) P.set(Number(Ce), Ve);
|
|
4204
4204
|
return P;
|
|
4205
4205
|
}, [$, W, _e, De, H]), fe = Me && Object.keys(_e[De ?? ""] ?? {}).length > 0, Ye = ze(() => m && !fe ? fi($, W, !1) : null, [m, fe, $, W]), U = ze(() => fe ? Mi(ae) || null : Ye && Mi(Ye) || null, [fe, ae, Ye]), R = fe ? ae : Ye, q = W.some((P) => P.cloned && P.consent !== "pending"), se = !!ve && !!(o != null && o.voice.includes(ve)), de = se && !h, Oe = ze(
|
|
4206
4206
|
() => n.filter((P) => !P.suppressed && !P.unclear).map((P) => P.sentenceId).filter((P) => P != null),
|
|
4207
4207
|
[n]
|
|
4208
|
-
), Ne =
|
|
4208
|
+
), Ne = ac({ recordingId: t, lang: ve, ended: s, cred: a, pickedVoice: p || (U ?? v), sentenceIds: s && de ? Oe : void 0 }), Le = W.find((P) => P.id === v) ?? W.find((P) => {
|
|
4209
4209
|
var Ce;
|
|
4210
4210
|
return P.id === ((Ce = Ne.track) == null ? void 0 : Ce.voice);
|
|
4211
4211
|
}) ?? W.find((P) => P.default) ?? W[0] ?? null, be = (Le == null ? void 0 : Le.id) ?? null;
|
|
@@ -4214,7 +4214,7 @@ function Hc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4214
4214
|
const P = setInterval(Ne.reload, 4e3);
|
|
4215
4215
|
return () => clearInterval(P);
|
|
4216
4216
|
}, [Ne.rendering, Ne.reload]);
|
|
4217
|
-
const He = `${t ?? ""}|${ve ?? ""}|${p || (U ?? v ?? ((
|
|
4217
|
+
const He = `${t ?? ""}|${ve ?? ""}|${p || (U ?? v ?? ((fn = Ne.track) == null ? void 0 : fn.voiceKey) ?? "default")}`, $e = Qc(Ne.clips, n, r, He, he, (sn = Ne.track) == null ? void 0 : sn.wordTimes, f, Ne.coming);
|
|
4218
4218
|
D(() => {
|
|
4219
4219
|
var Ce;
|
|
4220
4220
|
const P = (Ce = n[$e.idx]) == null ? void 0 : Ce.sentenceId;
|
|
@@ -4268,29 +4268,29 @@ function Hc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4268
4268
|
return;
|
|
4269
4269
|
}
|
|
4270
4270
|
ie(P);
|
|
4271
|
-
}, dt = we ? { ...Cr(o, null), flag: /* @__PURE__ */ i(oe, { d: X.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : G, Et = c ? M ? /* @__PURE__ */ i("span", { className: "barchip", style: ot ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(
|
|
4271
|
+
}, dt = we ? { ...Cr(o, null), flag: /* @__PURE__ */ i(oe, { d: X.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : G, Et = c ? M ? /* @__PURE__ */ i("span", { className: "barchip", style: ot ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(Yn, { flag: dt.flag, code: dt.code, bordered: !1, onClick: re, flagOnly: !0, label: dt.label }) }) : /* @__PURE__ */ i(Yn, { flag: dt.flag, code: dt.code, bordered: !1, onClick: Qe, flagOnly: !0, label: dt.label }) : null, Vt = X.voiceClone, bt = Ee && (!!Ne.track || at), Vn = st ? "var(--conf-low)" : bt || M && wt ? "var(--brand)" : "var(--ink-55)", _t = Ic({ on: Ee, want: je, relang: rt, playing: $e.playing, preparing: !!$e.preparing, starting: $e.starting }), [qe] = na(_t === "line", 400), ht = _t === "asked" || _t === "line" && qe, vt = at || ht, Lt = _t === "asked" ? pi : $e.preparing ? `Speaking this line in ${(Le == null ? void 0 : Le.name) ?? "this voice"}…` : at ? `Preparing this recording in ${(Le == null ? void 0 : Le.name) ?? "this voice"} — it will play as soon as it is ready` : st ? `This voice could not be prepared: ${st}` : se ? ye ? "Choose a voice" : Le ? Le.name : ke.vcNoVoice + G.label : `${ke.vcNoVoice}${G.label}`, kt = /* @__PURE__ */ i(wo, { open: ne, onClose: Xt, keepOpen: (!!M || y) && !le, value: we ? null : ve, onSelect: At, languages: Ie, title: (M == null ? void 0 : M.title) ?? "SPOKEN LANGUAGE", note: (M == null ? void 0 : M.note) ?? Vc, searchPlaceholder: ke.search, none: "Original", pinned: (we ? l : ve) ? [we ? l : ve] : [], recent: te, requireVoice: le, sticky: y, busy: j }), Ht = ze(() => W.filter((P) => P.cloned && !P.auto), [W]), Yt = (P) => P.voiceId ? Ht.find((Ce) => Ce.id === `clone:${P.voiceId}`) ?? null : null, Mt = ze(() => $.filter((P) => P.key >= 0), [$]), tn = ze(() => {
|
|
4272
4272
|
const P = W.filter((Ve) => !Ve.cloned);
|
|
4273
|
-
if (!Me) return [...P, ...s && Mt.length === 1 ?
|
|
4273
|
+
if (!Me) return [...P, ...s && Mt.length === 1 ? Ht.filter((Ve) => Ve.id === `clone:${Mt[0].voiceId}`) : []];
|
|
4274
4274
|
const Ce = [];
|
|
4275
4275
|
for (const Ve of Mt) {
|
|
4276
4276
|
if (Yt(Ve)) continue;
|
|
4277
4277
|
const mt = W.find((on) => on.cloned && on.auto && on.speaker === Ve.key);
|
|
4278
4278
|
!mt || mt.ready === !1 || mt.consent === "pending" && !b || Ce.push({ id: mt.id, name: Ve.name, cloned: !0, default: !1, live: !0, auto: !0, gender: Ve.sex ?? mt.gender ?? null, speaker: Ve.key, consent: mt.consent ?? null });
|
|
4279
4279
|
}
|
|
4280
|
-
return [...P, ...
|
|
4281
|
-
}, [W,
|
|
4280
|
+
return [...P, ...Ht, ...Ce];
|
|
4281
|
+
}, [W, Ht, Me, Mt, b, s]), it = Me ? Mt.find((P) => P.key === ue) ?? null : null, Ct = (P) => {
|
|
4282
4282
|
var Ce;
|
|
4283
4283
|
return P ? ((Ce = W.find((Ve) => Ve.id === P)) == null ? void 0 : Ce.gender) ?? null : null;
|
|
4284
|
-
}, Ze = it ? it.sex ?? Ct(ae.get(it.key)) : null,
|
|
4285
|
-
/* @__PURE__ */ i(oe, { d:
|
|
4284
|
+
}, Ze = it ? it.sex ?? Ct(ae.get(it.key)) : null, Wt = ze(() => it ? tn.filter((P) => P.cloned ? P.live ? P.speaker === it.key : P.id === `clone:${it.voiceId}` : !0) : tn, [tn, it, Ze, Mt]), nn = (P) => W.find((Ce) => Ce.cloned && Ce.auto && Ce.speaker === P) ?? null, pt = { people: Mt, gvList: W, autoOf: nn, savedFor: Yt }, Ke = (A == null ? void 0 : A(pt)) ?? 0, rn = F ? Mt.map((P) => F(P, pt)).filter((P) => !!P) : [], Ut = /* @__PURE__ */ g("button", { type: "button", className: "txvoice", "aria-label": "Voice", "aria-pressed": M ? wt : void 0, "aria-busy": vt || void 0, title: vt || st ? Lt : void 0, style: { cursor: "pointer", background: bt || vt || M && wt ? "var(--brand-tint)" : "var(--fill-06)", boxShadow: M && wt ? "inset 0 0 0 1.5px var(--brand)" : void 0 }, onClick: M ? en : Xe, children: [
|
|
4285
|
+
/* @__PURE__ */ i(oe, { d: Vt, size: 17, sw: 1.6, style: { color: Vn } }),
|
|
4286
4286
|
vt && /* @__PURE__ */ i("span", { "aria-hidden": "true", style: { position: "absolute", inset: 0, boxSizing: "border-box", borderRadius: "50%", border: "2px solid var(--fill-12)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite", pointerEvents: "none" } }),
|
|
4287
4287
|
rn.length > 0 ? /* @__PURE__ */ i("span", { className: "txvoice__warn", title: rn.join(" · "), children: "!" }) : !!Ke && /* @__PURE__ */ i("span", { className: "txvoice__n", title: `${Ke} speaker${Ke === 1 ? "" : "s"} can get a cloned voice`, children: Ke })
|
|
4288
|
-
] }),
|
|
4289
|
-
|
|
4288
|
+
] }), gn = /* @__PURE__ */ i(Jt, { open: J, onClose: ut, title: ke.vcSheet, titleNode: T, doneLabel: ke.done, children: /* @__PURE__ */ i(
|
|
4289
|
+
tc,
|
|
4290
4290
|
{
|
|
4291
4291
|
t: ke,
|
|
4292
4292
|
cast: Me && /* @__PURE__ */ i(
|
|
4293
|
-
|
|
4293
|
+
ec,
|
|
4294
4294
|
{
|
|
4295
4295
|
t: ke,
|
|
4296
4296
|
roster: $,
|
|
@@ -4305,11 +4305,11 @@ function Hc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4305
4305
|
sexOf: (P) => P.sex ?? Ct(ae.get(P.key))
|
|
4306
4306
|
}
|
|
4307
4307
|
),
|
|
4308
|
-
voices:
|
|
4308
|
+
voices: Wt,
|
|
4309
4309
|
onAdd: (P) => {
|
|
4310
4310
|
Q.reset(), I == null || I(P);
|
|
4311
4311
|
},
|
|
4312
|
-
noClone: it && !
|
|
4312
|
+
noClone: it && !Wt.some((P) => P.cloned) ? (B == null ? void 0 : B(it, nn(it.key), pt)) ?? null : null,
|
|
4313
4313
|
usedBy: Me && ue != null ? (P) => {
|
|
4314
4314
|
const Ce = $.filter((Ve) => Ve.key !== ue && ae.get(Ve.key) === P.id);
|
|
4315
4315
|
return Ce.length ? Ce.map((Ve) => Ve.name).join(", ") : null;
|
|
@@ -4335,8 +4335,8 @@ function Hc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4335
4335
|
}
|
|
4336
4336
|
) }), Hn = M ? null : /* @__PURE__ */ g(xe, { children: [
|
|
4337
4337
|
kt,
|
|
4338
|
-
|
|
4339
|
-
] }), xt = M && (ne || J) ? /* @__PURE__ */ i("div", { className: "vs-side", children: ne ? kt :
|
|
4338
|
+
gn
|
|
4339
|
+
] }), xt = M && (ne || J) ? /* @__PURE__ */ i("div", { className: "vs-side", children: ne ? kt : gn }) : null, Wn = Ge ? st ? `This voice could not be prepared: ${st}` : ht && (je || $e.playing) ? pi : null : null, Fn = ft;
|
|
4340
4340
|
return {
|
|
4341
4341
|
barChip: { flag: dt.flag, code: dt.code, label: dt.label, onClick: M || y ? re : Qe, active: !!((M || y) && ot), can: c },
|
|
4342
4342
|
sheetsOpen: ne || J,
|
|
@@ -4388,11 +4388,11 @@ function Hc({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4388
4388
|
langList: { value: we ? null : ve, onSelect: At, languages: Ie, searchPlaceholder: ke.search, none: "Original", pinned: (we ? l : ve) ? [we ? l : ve] : [], recent: te }
|
|
4389
4389
|
};
|
|
4390
4390
|
}
|
|
4391
|
-
function
|
|
4391
|
+
function Fc({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: u, marks: d = !0, fixBadges: M = !0, tail: h, tailFg: f, running: m, desk: y, feedRef: j, listener: N, showLabels: p, find: I, findOpen: C, lang: S, warm: B, onVisible: Y, wordHl: ee = !0 }) {
|
|
4392
4392
|
const { playing: z, engaged: F, t: A, idx: T, seekN: _, wordSync: b, clipPos: te } = n;
|
|
4393
|
-
|
|
4393
|
+
fc(!0, j);
|
|
4394
4394
|
const K = k(null);
|
|
4395
|
-
|
|
4395
|
+
Bl(j, K);
|
|
4396
4396
|
const [v, ie] = L(null), ne = (I ?? "").trim().toLowerCase(), [Z, J] = L(0), pe = k(0), le = k(null), Te = k(T), je = (H) => {
|
|
4397
4397
|
var E;
|
|
4398
4398
|
return ((E = j.current) == null ? void 0 : E.querySelector(`[data-tx-row="${H}"]`)) ?? null;
|
|
@@ -4470,13 +4470,13 @@ function Wc({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4470
4470
|
"Now playing"
|
|
4471
4471
|
] }) });
|
|
4472
4472
|
return /* @__PURE__ */ g("div", { ref: j, "data-tx-feed": "1", className: `txfeed${y ? " txfeed--desk" : ""}${C && !m ? " is-find" : ""}`, children: [
|
|
4473
|
-
/* @__PURE__ */ i(
|
|
4473
|
+
/* @__PURE__ */ i(Vl, { thumbRef: K }),
|
|
4474
4474
|
z && Z === -1 && Q("up"),
|
|
4475
4475
|
e.map((H, E) => {
|
|
4476
4476
|
var Me;
|
|
4477
4477
|
const x = z && E === T, V = F && E === T, ce = !!u && u === H.id, W = ne && !H.text.toLowerCase().includes(ne) && !(S && ((Me = H.translations[S]) != null && Me.toLowerCase().includes(ne))) ? 0.22 : !F || E <= T || ce ? 1 : 0.38, ye = N ? () => n.playRow(E) : c && l ? () => {
|
|
4478
4478
|
z && !x && n.seekRow(E), l(H);
|
|
4479
|
-
} : z && x ? void 0 : () => n.playRow(E), G = N ? null :
|
|
4479
|
+
} : z && x ? void 0 : () => n.playRow(E), G = N ? null : Fl(H, s, r), ke = !!G && (G.script > 0 || G.manual), Ie = y && !!a && v === H.id && !!G && !ke, Fe = Ur(t, H.speaker), Ae = Rr(t, H.speaker), he = Ae.lane, _e = S && H.translations[S] && H.language !== S ? H.translations[S] : null, Be = ra(e, E, S), $ = V && !b && te ? Ai(Be.map((ue) => ({ t: ue.text, sp: " " })), te) : null;
|
|
4480
4480
|
return /* @__PURE__ */ g("div", { "data-tx-row": E, "data-sentence": H.sentenceId, className: `txline${B ? " txline--warm" : ""}${ce ? " txline--fixing" : ""}`, "aria-current": ce || void 0, style: { opacity: W }, onClick: ye, onMouseEnter: y && a ? () => ie(H.id) : void 0, onMouseLeave: y && a ? () => ie(null) : void 0, children: [
|
|
4481
4481
|
/* @__PURE__ */ g("div", { className: "txline__meta", children: [
|
|
4482
4482
|
/* @__PURE__ */ i("span", { className: "txline__at", children: It(H.start) }),
|
|
@@ -4486,11 +4486,11 @@ function Wc({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4486
4486
|
Ae.hasVoice && /* @__PURE__ */ i(Xi, { color: Ae.fg ?? `var(--lane-${he})` })
|
|
4487
4487
|
] }),
|
|
4488
4488
|
x && /* @__PURE__ */ i("span", { title: "Playing", style: { flex: "none", display: "inline-flex", alignItems: "center" }, children: /* @__PURE__ */ i(oe, { d: X.headphones, size: y ? 15 : 14, sw: 1.6, stroke: p && H.speaker >= 0 ? Ae.fg ?? `var(--lane-${he})` : "var(--ink-45)" }) }),
|
|
4489
|
-
G && M && /* @__PURE__ */ i(
|
|
4490
|
-
Ie && /* @__PURE__ */ i(
|
|
4489
|
+
G && M && /* @__PURE__ */ i(Zl, { f: G, desk: y, onOpen: a ? () => a(H, !0) : void 0 }),
|
|
4490
|
+
Ie && /* @__PURE__ */ i(Gl, { alone: !0, onOpen: () => a == null ? void 0 : a(H, !1) })
|
|
4491
4491
|
] }),
|
|
4492
4492
|
/* @__PURE__ */ i("div", { className: "txline__text", children: Be.map((ue, ae) => {
|
|
4493
|
-
const fe = `${ue.seq}:${ue.idx}`, Ye =
|
|
4493
|
+
const fe = `${ue.seq}:${ue.idx}`, Ye = gl(ue.prob), U = V && ee, R = U && (b ? A >= ue.start && (A < ue.end || ae === Be.length - 1 || A < Be[ae + 1].start) : ae === $), q = U && !R && (b ? ue.start > A : $ != null && ae > $), se = !_e && !N && (!!(r != null && r.has(fe)) || !!ue.script), de = !_e && !N && d && !!Ye && !se, Oe = de ? Ye === "low" ? "var(--conf-low-half)" : "var(--conf-mid-half)" : null, Ne = se ? "var(--brand)" : q ? "var(--ink-40)" : Oe ?? "var(--ink-96)";
|
|
4494
4494
|
return /* @__PURE__ */ g("span", { children: [
|
|
4495
4495
|
/* @__PURE__ */ i(
|
|
4496
4496
|
"span",
|
|
@@ -4526,7 +4526,7 @@ function Wc({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4526
4526
|
z && Z === 1 && Q("down")
|
|
4527
4527
|
] });
|
|
4528
4528
|
}
|
|
4529
|
-
function
|
|
4529
|
+
function Zc({ open: t, q: e, onQ: n, onClose: r, hits: s, desk: a, inline: o, flash: l }) {
|
|
4530
4530
|
return /* @__PURE__ */ i("div", { className: o ? "searchbar searchbar--inline" : `searchbar searchbar--float${a ? " searchbar--desk" : ""}${t ? "" : " is-hidden"}`, children: /* @__PURE__ */ g("div", { children: [
|
|
4531
4531
|
/* @__PURE__ */ i(oe, { d: X.search, size: 16, sw: 1.7, style: { color: "var(--ink-45)", flex: "none" } }),
|
|
4532
4532
|
/* @__PURE__ */ i("input", { value: e, onChange: (c) => n(c.target.value), onKeyDown: (c) => {
|
|
@@ -4540,7 +4540,7 @@ function Fc({ open: t, q: e, onQ: n, onClose: r, hits: s, desk: a, inline: o, fl
|
|
|
4540
4540
|
e.trim() && /* @__PURE__ */ i("button", { type: "button", className: "searchbar__x", onClick: () => n(""), "aria-label": "Clear", title: "Clear", children: /* @__PURE__ */ i(oe, { d: X.close, size: 15, sw: 1.7 }) })
|
|
4541
4541
|
] }) });
|
|
4542
4542
|
}
|
|
4543
|
-
function
|
|
4543
|
+
function Gc(t, e, n, r, s) {
|
|
4544
4544
|
const a = k(n);
|
|
4545
4545
|
a.current = n;
|
|
4546
4546
|
const o = k(r);
|
|
@@ -4585,7 +4585,7 @@ function Sr(t, e) {
|
|
|
4585
4585
|
n = n << 1 ^ (n >>> 7) * 285, n ^= (e >>> r & 1) * t;
|
|
4586
4586
|
return n;
|
|
4587
4587
|
}
|
|
4588
|
-
function
|
|
4588
|
+
function qc(t) {
|
|
4589
4589
|
const e = new Array(t).fill(0);
|
|
4590
4590
|
e[t - 1] = 1;
|
|
4591
4591
|
let n = 1;
|
|
@@ -4595,7 +4595,7 @@ function Gc(t) {
|
|
|
4595
4595
|
}
|
|
4596
4596
|
return e;
|
|
4597
4597
|
}
|
|
4598
|
-
function
|
|
4598
|
+
function Kc(t, e) {
|
|
4599
4599
|
const n = new Array(e.length).fill(0);
|
|
4600
4600
|
for (const r of t) {
|
|
4601
4601
|
const s = r ^ n.shift();
|
|
@@ -4605,13 +4605,13 @@ function qc(t, e) {
|
|
|
4605
4605
|
}
|
|
4606
4606
|
return n;
|
|
4607
4607
|
}
|
|
4608
|
-
function
|
|
4608
|
+
function Jc(t) {
|
|
4609
4609
|
if (t === 1) return [];
|
|
4610
4610
|
const e = Math.floor(t / 7) + 2, n = t * 4 + 17, r = t === 32 ? 26 : Math.ceil((t * 4 + 4) / (e * 2 - 2)) * 2, s = [6];
|
|
4611
4611
|
for (let a = n - 7; s.length < e; a -= r) s.splice(1, 0, a);
|
|
4612
4612
|
return s;
|
|
4613
4613
|
}
|
|
4614
|
-
function
|
|
4614
|
+
function Xc(t) {
|
|
4615
4615
|
const e = Array.from(new TextEncoder().encode(t));
|
|
4616
4616
|
let n = 1;
|
|
4617
4617
|
for (; n <= 40 && !(4 + (n <= 9 ? 8 : 16) + e.length * 8 <= Ni(n) * 8); n++)
|
|
@@ -4626,11 +4626,11 @@ function Jc(t) {
|
|
|
4626
4626
|
for (let T = 236; a.length < s; T ^= 253) o(T, 8);
|
|
4627
4627
|
const l = [];
|
|
4628
4628
|
for (let T = 0; T < a.length; T += 8) l.push(a.slice(T, T + 8).reduce((_, b) => _ << 1 | b, 0));
|
|
4629
|
-
const c = hn.blocks[n], u = hn.perBlock[n], d = Math.floor(sa(n) / 8), M = c - d % c, h = Math.floor(d / c), f = [], m =
|
|
4629
|
+
const c = hn.blocks[n], u = hn.perBlock[n], d = Math.floor(sa(n) / 8), M = c - d % c, h = Math.floor(d / c), f = [], m = qc(u);
|
|
4630
4630
|
for (let T = 0, _ = 0; T < c; T++) {
|
|
4631
4631
|
const b = l.slice(_, _ + h - u + (T < M ? 0 : 1));
|
|
4632
4632
|
_ += b.length;
|
|
4633
|
-
const te =
|
|
4633
|
+
const te = Kc(b, m);
|
|
4634
4634
|
T < M && b.push(0), f.push(b.concat(te));
|
|
4635
4635
|
}
|
|
4636
4636
|
const y = [];
|
|
@@ -4649,7 +4649,7 @@ function Jc(t) {
|
|
|
4649
4649
|
}
|
|
4650
4650
|
};
|
|
4651
4651
|
I(3, 3), I(r - 4, 3), I(3, r - 4);
|
|
4652
|
-
const C =
|
|
4652
|
+
const C = Jc(n);
|
|
4653
4653
|
for (let T = 0; T < C.length; T++) for (let _ = 0; _ < C.length; _++)
|
|
4654
4654
|
if (!(T === 0 && _ === 0 || T === 0 && _ === C.length - 1 || T === C.length - 1 && _ === 0))
|
|
4655
4655
|
for (let b = -2; b <= 2; b++) for (let te = -2; te <= 2; te++) p(C[T] + te, C[_] + b, Math.max(Math.abs(te), Math.abs(b)) !== 1);
|
|
@@ -4736,14 +4736,14 @@ function Jc(t) {
|
|
|
4736
4736
|
}
|
|
4737
4737
|
return ee(F), S(F), j;
|
|
4738
4738
|
}
|
|
4739
|
-
function
|
|
4740
|
-
const e =
|
|
4739
|
+
function eu(t) {
|
|
4740
|
+
const e = Xc(t), n = e.length, r = 2;
|
|
4741
4741
|
let s = "";
|
|
4742
4742
|
for (let o = 0; o < n; o++) for (let l = 0; l < n; l++) e[o][l] && (s += `M${l} ${o}h1v1h-1z`);
|
|
4743
4743
|
const a = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="${-r} ${-r} ${n + r * 2} ${n + r * 2}" shape-rendering="crispEdges"><rect x="${-r}" y="${-r}" width="${n + r * 2}" height="${n + r * 2}" fill="#fff"/><path fill="#111" d="${s}"/></svg>`;
|
|
4744
4744
|
return `data:image/svg+xml,${encodeURIComponent(a)}`;
|
|
4745
4745
|
}
|
|
4746
|
-
const ia = "M3.75 3.75v4.5m0-4.5h4.5m-4.5 0L9 9M3.75 20.25v-4.5m0 4.5h4.5m-4.5 0L9 15M20.25 3.75h-4.5m4.5 0v4.5m0-4.5L15 9m5.25 11.25h-4.5m4.5 0v-4.5m0 4.5L15 15",
|
|
4746
|
+
const ia = "M3.75 3.75v4.5m0-4.5h4.5m-4.5 0L9 9M3.75 20.25v-4.5m0 4.5h4.5m-4.5 0L9 15M20.25 3.75h-4.5m4.5 0v4.5m0-4.5L15 9m5.25 11.25h-4.5m4.5 0v-4.5m0 4.5L15 15", tu = "M9 9V4.5M9 9H4.5M9 9 3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5 5.25 5.25";
|
|
4747
4747
|
function yr() {
|
|
4748
4748
|
const t = document;
|
|
4749
4749
|
return t.fullscreenElement ?? t.webkitFullscreenElement ?? null;
|
|
@@ -4756,7 +4756,7 @@ function Ti() {
|
|
|
4756
4756
|
const t = document;
|
|
4757
4757
|
return !!(t.fullscreenEnabled || t.webkitFullscreenEnabled);
|
|
4758
4758
|
}
|
|
4759
|
-
function
|
|
4759
|
+
function nu() {
|
|
4760
4760
|
var e;
|
|
4761
4761
|
if (typeof document > "u" || !((e = window.matchMedia) != null && e.call(window, "(pointer: coarse)").matches)) return !1;
|
|
4762
4762
|
const t = Br ?? document.documentElement;
|
|
@@ -4764,9 +4764,9 @@ function tu() {
|
|
|
4764
4764
|
}
|
|
4765
4765
|
function un(t) {
|
|
4766
4766
|
var e;
|
|
4767
|
-
typeof document > "u" || !((e = window.matchMedia) != null && e.call(window, "(pointer: coarse)").matches) ||
|
|
4767
|
+
typeof document > "u" || !((e = window.matchMedia) != null && e.call(window, "(pointer: coarse)").matches) || An(t);
|
|
4768
4768
|
}
|
|
4769
|
-
function
|
|
4769
|
+
function An(t) {
|
|
4770
4770
|
var s, a, o, l;
|
|
4771
4771
|
if (typeof document > "u") return;
|
|
4772
4772
|
const e = document, n = Br ?? document.documentElement, r = e.fullscreenElement ?? e.webkitFullscreenElement;
|
|
@@ -4777,7 +4777,7 @@ function Dn(t) {
|
|
|
4777
4777
|
} catch {
|
|
4778
4778
|
}
|
|
4779
4779
|
}
|
|
4780
|
-
function
|
|
4780
|
+
function ru(t) {
|
|
4781
4781
|
const [e, n] = L(() => {
|
|
4782
4782
|
var r;
|
|
4783
4783
|
return typeof window < "u" && !!((r = window.matchMedia) != null && r.call(window, t).matches);
|
|
@@ -4790,7 +4790,7 @@ function nu(t) {
|
|
|
4790
4790
|
return s(), r.addEventListener("change", s), () => r.removeEventListener("change", s);
|
|
4791
4791
|
}, [t]), e;
|
|
4792
4792
|
}
|
|
4793
|
-
function
|
|
4793
|
+
function En({ pos: t, interactive: e, axis: n = "x" }) {
|
|
4794
4794
|
const [r, s] = L(null), a = (c) => {
|
|
4795
4795
|
const u = c.currentTarget.getBoundingClientRect(), d = n === "y" ? (c.clientY - u.top) / Math.max(1, u.height) : (c.clientX - u.left) / Math.max(1, u.width);
|
|
4796
4796
|
return Math.min(1, Math.max(0, d));
|
|
@@ -4829,7 +4829,7 @@ function An({ pos: t, interactive: e, axis: n = "x" }) {
|
|
|
4829
4829
|
/* @__PURE__ */ i("span", { className: "gfull__t gfull__end", style: { color: t.live ? "#ec634d" : "rgba(234,236,250,.6)" }, children: t.endLabel })
|
|
4830
4830
|
] });
|
|
4831
4831
|
}
|
|
4832
|
-
function
|
|
4832
|
+
function Hu({ pos: t }) {
|
|
4833
4833
|
const [e, n] = L(null), r = (l) => {
|
|
4834
4834
|
const c = l.currentTarget.getBoundingClientRect();
|
|
4835
4835
|
return Math.min(1, Math.max(0, (l.clientX - c.left) / Math.max(1, c.width)));
|
|
@@ -4870,7 +4870,7 @@ function Vu({ pos: t }) {
|
|
|
4870
4870
|
] })
|
|
4871
4871
|
] });
|
|
4872
4872
|
}
|
|
4873
|
-
function
|
|
4873
|
+
function _n({ t, mini: e }) {
|
|
4874
4874
|
return /* @__PURE__ */ g("div", { className: "gfull__transport", children: [
|
|
4875
4875
|
/* @__PURE__ */ i("button", { type: "button", className: "gfull__step", "aria-label": "Previous line", title: "Previous line", style: { opacity: t.prevOn ? 1 : 0.3 }, onClick: t.onPrev, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: e ? 13 : 16, sw: e ? 1.8 : 1.9 }) }),
|
|
4876
4876
|
/* @__PURE__ */ i(
|
|
@@ -4883,7 +4883,7 @@ function En({ t, mini: e }) {
|
|
|
4883
4883
|
disabled: !t.playable,
|
|
4884
4884
|
style: { background: t.playable ? t.playing ? "rgba(238,240,248,.92)" : "var(--brand)" : "rgba(5,6,21,.42)", color: t.playable ? t.playing ? "#131326" : "var(--brand-ink)" : "rgba(234,236,250,.5)", cursor: t.playable ? "pointer" : "default" },
|
|
4885
4885
|
onClick: t.onPlay,
|
|
4886
|
-
children: t.busy ? /* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }) : t.playing ? /* @__PURE__ */ i(
|
|
4886
|
+
children: t.busy ? /* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }) : t.playing ? /* @__PURE__ */ i(eo, { size: e ? 14 : 18 }) : /* @__PURE__ */ i(Mn, { size: e ? 15 : 19 })
|
|
4887
4887
|
}
|
|
4888
4888
|
),
|
|
4889
4889
|
/* @__PURE__ */ i("button", { type: "button", className: "gfull__step", "aria-label": "Next line", title: "Next line", style: { opacity: t.nextOn ? 1 : 0.3 }, onClick: t.onNext, children: /* @__PURE__ */ i(oe, { d: X.chevronRight, size: e ? 13 : 16, sw: e ? 1.8 : 1.9 }) })
|
|
@@ -4905,14 +4905,14 @@ function aa({ v: t, size: e }) {
|
|
|
4905
4905
|
t.busy && /* @__PURE__ */ i("span", { "aria-hidden": "true", style: { position: "absolute", inset: 0, boxSizing: "border-box", borderRadius: "50%", border: "2px solid var(--fill-12)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite", pointerEvents: "none" } })
|
|
4906
4906
|
] });
|
|
4907
4907
|
}
|
|
4908
|
-
function
|
|
4908
|
+
function su({ pos: t, transport: e, chip: n, voices: r, onShare: s, onFull: a, copied: o }) {
|
|
4909
4909
|
return /* @__PURE__ */ g("div", { className: "gmini", "data-theme": "dark", children: [
|
|
4910
4910
|
/* @__PURE__ */ i("div", { className: "gmini__shade", "aria-hidden": "true" }),
|
|
4911
4911
|
/* @__PURE__ */ i("div", { className: "gmini__top", children: /* @__PURE__ */ i(Dr, { live: t.live, mini: !0 }) }),
|
|
4912
4912
|
/* @__PURE__ */ g("div", { className: "gmini__foot", children: [
|
|
4913
|
-
/* @__PURE__ */ i("div", { className: "gmini__row", children: /* @__PURE__ */ i(
|
|
4913
|
+
/* @__PURE__ */ i("div", { className: "gmini__row", children: /* @__PURE__ */ i(En, { pos: t, interactive: !0 }) }),
|
|
4914
4914
|
/* @__PURE__ */ g("div", { className: "gmini__row gmini__row--ctl", children: [
|
|
4915
|
-
/* @__PURE__ */ i(
|
|
4915
|
+
/* @__PURE__ */ i(_n, { t: e, mini: !0 }),
|
|
4916
4916
|
/* @__PURE__ */ i("span", { style: { flex: 1 } }),
|
|
4917
4917
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: n }),
|
|
4918
4918
|
/* @__PURE__ */ i(aa, { v: r, size: 14 }),
|
|
@@ -4925,7 +4925,7 @@ function ru({ pos: t, transport: e, chip: n, voices: r, onShare: s, onFull: a, c
|
|
|
4925
4925
|
o
|
|
4926
4926
|
] });
|
|
4927
4927
|
}
|
|
4928
|
-
const
|
|
4928
|
+
const iu = { color: "rgba(255,255,255,.4)" };
|
|
4929
4929
|
function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title: s, desk: a, pos: o, sub: l, wait: c, pct: u, mute: d, cc: M, ad: h, chip: f, transport: m, picker: y, sheet: j, voices: N, voicesBtn: p, sheetOpen: I, onShare: C, onSettings: S, paused: B, copied: Y, onTouch: ee, onClose: z }) {
|
|
4930
4930
|
const [F, A] = L(() => !!yr());
|
|
4931
4931
|
D(() => {
|
|
@@ -4939,7 +4939,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
4939
4939
|
const _ = k(m.playable ? m.onPlay : void 0);
|
|
4940
4940
|
_.current = m.playable ? m.onPlay : void 0;
|
|
4941
4941
|
const [b, te] = L(!1), [K, v] = L(0), ie = k(!1);
|
|
4942
|
-
D(() => () =>
|
|
4942
|
+
D(() => () => An(!1), []), D(() => {
|
|
4943
4943
|
if (!n) return;
|
|
4944
4944
|
const $ = [document.documentElement, document.body], Me = $.map((fe) => fe.style.background);
|
|
4945
4945
|
$.forEach((fe) => {
|
|
@@ -4952,7 +4952,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
4952
4952
|
}), ue && ae && (ue.content = ae);
|
|
4953
4953
|
};
|
|
4954
4954
|
}, []);
|
|
4955
|
-
const ne = ze(() => n &&
|
|
4955
|
+
const ne = ze(() => n && nu(), [n]), [Z, J] = L(ne);
|
|
4956
4956
|
D(() => {
|
|
4957
4957
|
if (!n) return;
|
|
4958
4958
|
const $ = [document.documentElement, document.body], Me = $.map((fe) => [fe.style.overflow, fe.style.overscrollBehavior]);
|
|
@@ -4975,7 +4975,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
4975
4975
|
pe.current = I, D(() => {
|
|
4976
4976
|
const $ = (ae) => ae instanceof HTMLElement && (ae.isContentEditable || /^(INPUT|TEXTAREA|SELECT)$/.test(ae.tagName)), Me = (ae) => {
|
|
4977
4977
|
var fe;
|
|
4978
|
-
ae.key === "Escape" && !pe.current && T.current && (ae.stopPropagation(), T.current()), ae.key === " " && !pe.current && !$(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (fe = _.current) == null || fe.call(_)), (ae.key === "f" || ae.key === "F") && !ae.metaKey && !ae.ctrlKey && !ae.altKey && !pe.current && !$(ae.target) && Ti() && (ae.preventDefault(), ae.repeat ||
|
|
4978
|
+
ae.key === "Escape" && !pe.current && T.current && (ae.stopPropagation(), T.current()), ae.key === " " && !pe.current && !$(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (fe = _.current) == null || fe.call(_)), (ae.key === "f" || ae.key === "F") && !ae.metaKey && !ae.ctrlKey && !ae.altKey && !pe.current && !$(ae.target) && Ti() && (ae.preventDefault(), ae.repeat || An(!yr()));
|
|
4979
4979
|
}, ue = (ae) => {
|
|
4980
4980
|
ae.key === " " && !pe.current && !$(ae.target) && ae.preventDefault();
|
|
4981
4981
|
};
|
|
@@ -4983,7 +4983,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
4983
4983
|
window.removeEventListener("keydown", Me, !0), window.removeEventListener("keyup", ue, !0);
|
|
4984
4984
|
};
|
|
4985
4985
|
}, []);
|
|
4986
|
-
const le =
|
|
4986
|
+
const le = ru("(orientation: landscape) and (max-height: 540px)"), Te = k(null), [je, Se] = L(null);
|
|
4987
4987
|
Kt(() => {
|
|
4988
4988
|
const $ = Te.current;
|
|
4989
4989
|
if (!$ || (Se($.getBoundingClientRect().width), typeof ResizeObserver > "u")) return;
|
|
@@ -5016,7 +5016,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5016
5016
|
}, [x, H]);
|
|
5017
5017
|
const [V, ce] = L(!0), [W, ye] = L(!1), G = k(void 0);
|
|
5018
5018
|
D(() => () => window.clearTimeout(G.current), []);
|
|
5019
|
-
const ke = B != null && B.share ? B.share.url(V && B.share.at >= 1 ? Math.floor(B.share.at) : null) : "", Ie = ze(() => we && ke && !m.playing ?
|
|
5019
|
+
const ke = B != null && B.share ? B.share.url(V && B.share.at >= 1 ? Math.floor(B.share.at) : null) : "", Ie = ze(() => we && ke && !m.playing ? eu(ke) : "", [we, ke, m.playing]), Fe = () => {
|
|
5020
5020
|
var $;
|
|
5021
5021
|
($ = navigator.clipboard) == null || $.writeText(ke).then(() => {
|
|
5022
5022
|
ye(!0), window.clearTimeout(G.current), G.current = window.setTimeout(() => ye(!1), 1800);
|
|
@@ -5046,7 +5046,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5046
5046
|
] }), he = ($, Me, ue, ae, fe, Ye = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: $, "aria-label": $, onClick: ae, children: /* @__PURE__ */ i(oe, { d: Me, size: (we ? 20 : Ee ? 15 : 18) + Ye, sw: ue, style: fe }) }), _e = /* @__PURE__ */ g("div", { className: "gfull__acts", children: [
|
|
5047
5047
|
p && /* @__PURE__ */ i(aa, { v: p, size: we ? 20 : Ee ? 15 : 18 }),
|
|
5048
5048
|
C && he("Share", X.share, 1.6, C),
|
|
5049
|
-
Ti() && !e && he(F ? "Exit full screen" : "Full screen", F ?
|
|
5049
|
+
Ti() && !e && he(F ? "Exit full screen" : "Full screen", F ? tu : ia, 1.7, () => An(!F)),
|
|
5050
5050
|
z && he("Close player", X.close, 1.7, z)
|
|
5051
5051
|
] }), Be = (d || M || S) && /* @__PURE__ */ g("div", { className: "gfull__top", children: [
|
|
5052
5052
|
d && he(d.muted ? "Unmute" : "Mute", d.muted ? X.volumeOff : X.volume, 1.6, d.onToggle),
|
|
@@ -5111,7 +5111,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5111
5111
|
] }),
|
|
5112
5112
|
" "
|
|
5113
5113
|
] }),
|
|
5114
|
-
l.words.map(($, Me) => /* @__PURE__ */ g("span", { "data-said": $.dim ? void 0 : "", "data-at": l.cursor != null && Me <= l.cursor ? "" : void 0, style: $.dim ?
|
|
5114
|
+
l.words.map(($, Me) => /* @__PURE__ */ g("span", { "data-said": $.dim ? void 0 : "", "data-at": l.cursor != null && Me <= l.cursor ? "" : void 0, style: $.dim ? iu : void 0, children: [
|
|
5115
5115
|
$.t,
|
|
5116
5116
|
$.sp
|
|
5117
5117
|
] }, Me))
|
|
@@ -5119,22 +5119,22 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5119
5119
|
] }) }),
|
|
5120
5120
|
/* @__PURE__ */ i("div", { className: `gfull__prog${we ? "" : " gfull__prog--two"}`, children: we ? /* @__PURE__ */ g(xe, { children: [
|
|
5121
5121
|
/* @__PURE__ */ i(Dr, { live: o.live, desk: !0, pct: u }),
|
|
5122
|
-
/* @__PURE__ */ i(
|
|
5123
|
-
/* @__PURE__ */ i(
|
|
5122
|
+
/* @__PURE__ */ i(_n, { t: m }),
|
|
5123
|
+
/* @__PURE__ */ i(En, { pos: o, interactive: !0 }),
|
|
5124
5124
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: f }),
|
|
5125
5125
|
_e
|
|
5126
5126
|
] }) : Ee ? /* @__PURE__ */ g("div", { className: "gfull__row", children: [
|
|
5127
|
-
/* @__PURE__ */ i(
|
|
5128
|
-
/* @__PURE__ */ i(
|
|
5127
|
+
/* @__PURE__ */ i(_n, { t: m, mini: !0 }),
|
|
5128
|
+
/* @__PURE__ */ i(En, { pos: o, interactive: !0 }),
|
|
5129
5129
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: f }),
|
|
5130
5130
|
_e
|
|
5131
5131
|
] }) : /* @__PURE__ */ g(xe, { children: [
|
|
5132
5132
|
/* @__PURE__ */ g("div", { className: "gfull__row", children: [
|
|
5133
5133
|
/* @__PURE__ */ i(Dr, { live: o.live, pct: u, mark: !0 }),
|
|
5134
|
-
/* @__PURE__ */ i(
|
|
5134
|
+
/* @__PURE__ */ i(En, { pos: o, interactive: !0 })
|
|
5135
5135
|
] }),
|
|
5136
5136
|
/* @__PURE__ */ g("div", { className: "gfull__row", children: [
|
|
5137
|
-
/* @__PURE__ */ i(
|
|
5137
|
+
/* @__PURE__ */ i(_n, { t: m }),
|
|
5138
5138
|
/* @__PURE__ */ i("span", { style: { flex: 1 } }),
|
|
5139
5139
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: f }),
|
|
5140
5140
|
_e
|
|
@@ -5148,7 +5148,7 @@ function oa({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5148
5148
|
}
|
|
5149
5149
|
);
|
|
5150
5150
|
}
|
|
5151
|
-
function
|
|
5151
|
+
function au({ dark: t, back: e, home: n, live: r, title: s, badge: a, subline: o, onOptions: l, optionsActive: c }) {
|
|
5152
5152
|
return /* @__PURE__ */ g("div", { className: "ghead", children: [
|
|
5153
5153
|
e && /* @__PURE__ */ i("button", { type: "button", className: "ghead__back", "aria-label": "Back", title: "Back", onClick: e, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 19, sw: 1.7 }) }),
|
|
5154
5154
|
r && /* @__PURE__ */ i("span", { className: "mark", children: /* @__PURE__ */ i(Ar, { dark: t, size: 30 }) }),
|
|
@@ -5159,20 +5159,20 @@ function iu({ dark: t, back: e, home: n, live: r, title: s, badge: a, subline: o
|
|
|
5159
5159
|
] }),
|
|
5160
5160
|
o && /* @__PURE__ */ i("div", { className: "ghead__sub", children: o })
|
|
5161
5161
|
] }) }),
|
|
5162
|
-
/* @__PURE__ */ i(
|
|
5162
|
+
/* @__PURE__ */ i(to, { size: "sm", bordered: !1, variant: c ? "primary" : void 0, onClick: l, label: "Options", children: /* @__PURE__ */ g("svg", { viewBox: "0 0 24 24", width: "19", height: "19", fill: "currentColor", "aria-hidden": "true", children: [
|
|
5163
5163
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "5.5", r: "1.85" }),
|
|
5164
5164
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "1.85" }),
|
|
5165
5165
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "18.5", r: "1.85" })
|
|
5166
5166
|
] }) })
|
|
5167
5167
|
] });
|
|
5168
5168
|
}
|
|
5169
|
-
const
|
|
5170
|
-
function
|
|
5169
|
+
const ou = "m15.75 10.5 4.72-4.72a.75.75 0 0 1 1.28.53v11.38a.75.75 0 0 1-1.28.53l-4.72-4.72M4.5 18.75h9a2.25 2.25 0 0 0 2.25-2.25v-9a2.25 2.25 0 0 0-2.25-2.25h-9A2.25 2.25 0 0 0 2.25 7.5v9a2.25 2.25 0 0 0 2.25 2.25Z", lu = (t, e = !1) => [{ value: "read", label: t.read, icon: /* @__PURE__ */ i(oe, { d: X.book, size: 17 }) }, { value: "listen", label: /* @__PURE__ */ i("span", { style: { display: "inline-block", minWidth: 52, textAlign: "center" }, children: e ? t.watch : t.listen }), icon: /* @__PURE__ */ i(oe, { d: e ? ou : X.headphones, size: 19, sw: 1.5 }) }], Vr = "https://app.vocalstack.com", cu = "/connect/transcribe";
|
|
5170
|
+
function uu() {
|
|
5171
5171
|
const t = new Uint8Array(24);
|
|
5172
5172
|
return crypto.getRandomValues(t), btoa(String.fromCharCode(...t)).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
5173
5173
|
}
|
|
5174
5174
|
function la(t, e, n) {
|
|
5175
|
-
const r = new URL(t ?? Vr), s =
|
|
5175
|
+
const r = new URL(t ?? Vr), s = uu(), a = new URL(cu, r);
|
|
5176
5176
|
e.url && a.searchParams.set("url", e.url), e.transcription && a.searchParams.set("transcription", e.transcription), e.ask && a.searchParams.set("ask", "1"), e.connect && a.searchParams.set("connect", "1"), a.searchParams.set("origin", window.location.origin), a.searchParams.set("nonce", s);
|
|
5177
5177
|
const o = 480, l = 640, c = Math.max(0, (window.screenX ?? 0) + ((window.outerWidth ?? o) - o) / 2), u = Math.max(0, (window.screenY ?? 0) + ((window.outerHeight ?? l) - l) / 2), d = window.open(a.toString(), "vocalstack-connect", `popup=yes,width=${o},height=${l},left=${Math.round(c)},top=${Math.round(u)}`);
|
|
5178
5178
|
return d ? new Promise((M, h) => {
|
|
@@ -5212,33 +5212,33 @@ function la(t, e, n) {
|
|
|
5212
5212
|
}, 500);
|
|
5213
5213
|
}) : Promise.reject(new Error("Your browser blocked the VocalStack window. Allow pop-ups for this site and try again."));
|
|
5214
5214
|
}
|
|
5215
|
-
async function
|
|
5215
|
+
async function du(t, e, n) {
|
|
5216
5216
|
const r = await la(t, { url: e }, n);
|
|
5217
5217
|
return r === "connected" ? null : r;
|
|
5218
5218
|
}
|
|
5219
5219
|
const ca = "vsp.connected";
|
|
5220
|
-
function
|
|
5220
|
+
function hu(t) {
|
|
5221
5221
|
try {
|
|
5222
5222
|
return localStorage.getItem(ca) === new URL(t ?? Vr).origin;
|
|
5223
5223
|
} catch {
|
|
5224
5224
|
return !1;
|
|
5225
5225
|
}
|
|
5226
5226
|
}
|
|
5227
|
-
function
|
|
5227
|
+
function Mu(t) {
|
|
5228
5228
|
try {
|
|
5229
5229
|
localStorage.setItem(ca, new URL(t ?? Vr).origin);
|
|
5230
5230
|
} catch {
|
|
5231
5231
|
}
|
|
5232
5232
|
}
|
|
5233
|
-
const
|
|
5233
|
+
const gu = {
|
|
5234
5234
|
"signing-in": "Sign in to VocalStack in the window that opened…",
|
|
5235
5235
|
consent: "Confirm in the VocalStack window…",
|
|
5236
5236
|
looking: "Looking for your transcription of this video…",
|
|
5237
5237
|
confirm: "Confirm in the VocalStack window…",
|
|
5238
5238
|
checking: "Checking the link…",
|
|
5239
5239
|
starting: "Starting the transcription…"
|
|
5240
|
-
},
|
|
5241
|
-
function
|
|
5240
|
+
}, fu = /^(https?:\/\/)?([\w-]+\.)+[a-z]{2,}(\/\S*)?$/i;
|
|
5241
|
+
function pu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
|
|
5242
5242
|
const [s, a] = L(""), [o, l] = L(!1), [c, u] = L(null), [d, M] = L(null);
|
|
5243
5243
|
D(() => {
|
|
5244
5244
|
const y = (j) => {
|
|
@@ -5246,11 +5246,11 @@ function fu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
|
|
|
5246
5246
|
};
|
|
5247
5247
|
return window.addEventListener("keydown", y), () => window.removeEventListener("keydown", y);
|
|
5248
5248
|
}, [r]);
|
|
5249
|
-
const h = s.trim(), f =
|
|
5249
|
+
const h = s.trim(), f = fu.test(h), m = async () => {
|
|
5250
5250
|
if (!(!f || o)) {
|
|
5251
5251
|
l(!0), u(null);
|
|
5252
5252
|
try {
|
|
5253
|
-
const y = await
|
|
5253
|
+
const y = await du(t.appUrl, /^https?:\/\//i.test(h) ? h : `https://${h}`, M);
|
|
5254
5254
|
y && e(y);
|
|
5255
5255
|
} catch (y) {
|
|
5256
5256
|
u(y instanceof Error ? y.message : "Something went wrong. Please try again.");
|
|
@@ -5274,7 +5274,7 @@ function fu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
|
|
|
5274
5274
|
}, "aria-label": "Video link" }),
|
|
5275
5275
|
/* @__PURE__ */ i("button", { type: "submit", className: "vsp-end__go", disabled: !f || o, children: o ? /* @__PURE__ */ i(lt, { size: 15, color: "#050507", track: "rgba(5,5,7,.2)" }) : "Transcribe" })
|
|
5276
5276
|
] }),
|
|
5277
|
-
o && /* @__PURE__ */ i("div", { className: "vsp-end__note", role: "status", children:
|
|
5277
|
+
o && /* @__PURE__ */ i("div", { className: "vsp-end__note", role: "status", children: gu[d ?? "checking"] }),
|
|
5278
5278
|
c && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: c }),
|
|
5279
5279
|
/* @__PURE__ */ g("div", { className: "vsp-end__foot", children: [
|
|
5280
5280
|
/* @__PURE__ */ i("span", { children: "Uses your VocalStack account. You'll be asked to sign in if you're not." }),
|
|
@@ -5293,8 +5293,8 @@ function ua(t) {
|
|
|
5293
5293
|
return window.addEventListener("resize", r), () => window.removeEventListener("resize", r);
|
|
5294
5294
|
}, [t]), t ?? e;
|
|
5295
5295
|
}
|
|
5296
|
-
const
|
|
5297
|
-
function
|
|
5296
|
+
const mu = { lang: null, subtitles: !0, speakerLabels: !1, wordHighlight: !0, translateAudio: !0, voices: "cloned", removeBackground: !1, muted: !1 };
|
|
5297
|
+
function Nu(t, e) {
|
|
5298
5298
|
const n = Fi(), [r, s] = _i(), [a, o] = L(null), [l, c] = L("main"), u = Cr(n, t.lang), d = ze(() => Yi(n, "translation"), [n]), M = (Y) => {
|
|
5299
5299
|
e({ lang: Y }), s(Y);
|
|
5300
5300
|
}, h = _r({ open: a === "lang" || a === "settings" && l === "lang", onClose: () => a === "lang" ? o(null) : c("main"), value: t.lang, onSelect: M, languages: d, none: "As spoken", pinned: t.lang ? [t.lang] : [], recent: r, keepOpen: !0 }), f = () => {
|
|
@@ -5323,7 +5323,7 @@ function mu(t, e) {
|
|
|
5323
5323
|
] }) : l === "audio" ? /* @__PURE__ */ g("div", { style: p, children: [
|
|
5324
5324
|
I("Translate audio", t.lang ? "Hear the translation read aloud instead of the original speech" : "Pick a language to hear the translation read aloud", /* @__PURE__ */ i(Tt, { checked: t.translateAudio && !!t.lang, onChange: (Y) => e({ translateAudio: Y }), label: "Translate audio", disabled: !t.lang })),
|
|
5325
5325
|
I("Voices", t.voices === "cloned" ? "Each speaker in their own cloned voice, where they agreed to it" : "Synthetic voices matched to each speaker", /* @__PURE__ */ i(wr, { value: t.voices, onChange: (Y) => e({ voices: Y }), size: "sm", options: [{ value: "synthetic", label: "Synthetic" }, { value: "cloned", label: "Cloned" }] })),
|
|
5326
|
-
I(
|
|
5326
|
+
I(Un, "Takes out everything that isn't speech: music, ambience and noise.", /* @__PURE__ */ i(Tt, { checked: t.removeBackground, onChange: (Y) => e({ removeBackground: Y }), label: Un }))
|
|
5327
5327
|
] }) : /* @__PURE__ */ g("div", { style: p, children: [
|
|
5328
5328
|
/* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", onClick: () => c("lang"), children: [
|
|
5329
5329
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
@@ -5362,20 +5362,20 @@ function mu(t, e) {
|
|
|
5362
5362
|
}
|
|
5363
5363
|
};
|
|
5364
5364
|
}
|
|
5365
|
-
const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "currentColor", fillRule: e }),
|
|
5365
|
+
const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "currentColor", fillRule: e }), $t = (t) => /* @__PURE__ */ g(xe, { children: [
|
|
5366
5366
|
/* @__PURE__ */ i("path", { d: "M6.5 2.75h7.25l4.75 4.75v12.25a1.5 1.5 0 0 1-1.5 1.5H6.5a1.5 1.5 0 0 1-1.5-1.5V4.25a1.5 1.5 0 0 1 1.5-1.5Z", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinejoin: "round" }),
|
|
5367
5367
|
/* @__PURE__ */ i("path", { d: "M13.75 2.75V7.5h4.75", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinejoin: "round" }),
|
|
5368
5368
|
/* @__PURE__ */ i("text", { x: "11.75", y: "17.4", textAnchor: "middle", fontSize: t.length > 3 ? 4.4 : 5.2, fontWeight: "800", fill: "currentColor", fontFamily: "inherit", letterSpacing: ".2", children: t })
|
|
5369
5369
|
] }), wi = [
|
|
5370
5370
|
{ name: "YouTube", tint: "#ff3b30", glyph: yt("M21.6 7.2a2.7 2.7 0 0 0-1.9-1.9C18 4.8 12 4.8 12 4.8s-6 0-7.7.5a2.7 2.7 0 0 0-1.9 1.9C2 8.9 2 12 2 12s0 3.1.4 4.8a2.7 2.7 0 0 0 1.9 1.9c1.7.5 7.7.5 7.7.5s6 0 7.7-.5a2.7 2.7 0 0 0 1.9-1.9c.4-1.7.4-4.8.4-4.8s0-3.1-.4-4.8ZM10 15.1V8.9l5.3 3.1L10 15.1Z", "evenodd") },
|
|
5371
|
-
{ name: "MP3", tint: "#f78472", glyph:
|
|
5371
|
+
{ name: "MP3", tint: "#f78472", glyph: $t("MP3") },
|
|
5372
5372
|
{ name: "Vimeo", tint: "#1ab7ea", glyph: yt("M22 7.4c-.1 2-1.5 4.7-4.2 8.1-2.8 3.6-5.1 5.4-7 5.4-1.2 0-2.2-1.1-3-3.3L6.2 11.6C5.6 9.4 5 8.3 4.3 8.3c-.1 0-.6.3-1.4.9L2 8l2.7-2.4C5.9 4.6 6.8 4 7.4 4c1.4-.1 2.3.9 2.6 2.9.4 2.2.6 3.6.8 4.1.4 1.8.9 2.7 1.4 2.7.4 0 1-.6 1.8-1.9.8-1.2 1.2-2.2 1.3-2.8.1-1.1-.3-1.6-1.3-1.6-.5 0-.9.1-1.4.3.9-3 2.7-4.5 5.3-4.4 1.9.1 2.8 1.3 2.7 3.7Z") },
|
|
5373
5373
|
{ name: "Video", tint: "#55abe5", glyph: /* @__PURE__ */ g(xe, { children: [
|
|
5374
5374
|
/* @__PURE__ */ i("rect", { x: "3", y: "5.5", width: "13", height: "13", rx: "2.5", fill: "none", stroke: "currentColor", strokeWidth: "1.5" }),
|
|
5375
5375
|
yt("M16 10.2 21 7v10l-5-3.2v-3.6Z")
|
|
5376
5376
|
] }) },
|
|
5377
5377
|
{ name: "Twitch", tint: "#a970ff", glyph: yt("M5 2.5 3 6.5v13h4.5V22H10l2.5-2.5h3.8L21 14.8V2.5H5Zm14 11.4-2.9 2.9h-4.3L9.4 19.2v-2.4H6V4.5h13v9.4ZM15.2 7.4h1.9v5.2h-1.9V7.4Zm-5 0h1.9v5.2h-1.9V7.4Z", "evenodd") },
|
|
5378
|
-
{ name: "WAV", tint: "#7ee0b4", glyph:
|
|
5378
|
+
{ name: "WAV", tint: "#7ee0b4", glyph: $t("WAV") },
|
|
5379
5379
|
{ name: "SoundCloud", tint: "#ff7a1a", glyph: /* @__PURE__ */ g(xe, { children: [
|
|
5380
5380
|
yt("M11 8.6a5 5 0 0 1 7.8 3.1 3 3 0 0 1-.3 6H11V8.6Z"),
|
|
5381
5381
|
/* @__PURE__ */ i("rect", { x: "8.6", y: "9.4", width: "1.3", height: "8.3", rx: ".65", fill: "currentColor" }),
|
|
@@ -5383,11 +5383,11 @@ const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "curren
|
|
|
5383
5383
|
/* @__PURE__ */ i("rect", { x: "3.8", y: "12.2", width: "1.3", height: "5.5", rx: ".65", fill: "currentColor" }),
|
|
5384
5384
|
/* @__PURE__ */ i("rect", { x: "1.4", y: "13.8", width: "1.3", height: "3.9", rx: ".65", fill: "currentColor" })
|
|
5385
5385
|
] }) },
|
|
5386
|
-
{ name: "MP4", tint: "#5b63d7", glyph:
|
|
5386
|
+
{ name: "MP4", tint: "#5b63d7", glyph: $t("MP4") },
|
|
5387
5387
|
{ name: "TikTok", tint: "#25f4ee", glyph: yt("M16.6 2.5c.3 2.3 1.7 3.8 3.9 4v2.7a6.8 6.8 0 0 1-3.9-1.3v6.5a5.7 5.7 0 1 1-5.7-5.7l.9.1v2.8a2.9 2.9 0 1 0 2 2.8V2.5h2.8Z") },
|
|
5388
5388
|
{ name: "Audio", tint: "#f7c948", glyph: /* @__PURE__ */ i("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.8", strokeLinecap: "round", children: /* @__PURE__ */ i("path", { d: "M3 10.5v3M6.5 7.5v9M10 4.5v15M13.5 8v8M17 6v12M20.5 10v4" }) }) },
|
|
5389
5389
|
{ name: "X", tint: "#e8eaf2", glyph: yt("M17.8 3h3.1l-6.7 7.7L22 21h-6.2l-4.8-6.3L5.5 21H2.4l7.2-8.2L2.1 3h6.3l4.4 5.8L17.8 3Zm-1.1 16.2h1.7L7.4 4.7H5.6l11.1 14.5Z") },
|
|
5390
|
-
{ name: "MOV", tint: "#55abe5", glyph:
|
|
5390
|
+
{ name: "MOV", tint: "#55abe5", glyph: $t("MOV") },
|
|
5391
5391
|
{ name: "Facebook", tint: "#3b82f6", glyph: yt("M13.9 21.5v-8h2.7l.4-3.1h-3.1V8.4c0-.9.3-1.5 1.6-1.5H17V4.1c-.3 0-1.3-.1-2.4-.1-2.4 0-4 1.4-4 4.1v2.3H7.9v3.1h2.7v8h3.3Z") },
|
|
5392
5392
|
{ name: "Podcast", tint: "#c46bff", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
|
|
5393
5393
|
/* @__PURE__ */ i("rect", { x: "9", y: "3", width: "6", height: "10.5", rx: "3" }),
|
|
@@ -5398,33 +5398,33 @@ const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "curren
|
|
|
5398
5398
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "4" }),
|
|
5399
5399
|
/* @__PURE__ */ i("circle", { cx: "17.2", cy: "6.8", r: ".9", fill: "currentColor", stroke: "none" })
|
|
5400
5400
|
] }) },
|
|
5401
|
-
{ name: "M4A", tint: "#f78472", glyph:
|
|
5401
|
+
{ name: "M4A", tint: "#f78472", glyph: $t("M4A") },
|
|
5402
5402
|
{ name: "Dailymotion", tint: "#4aa3ff", glyph: yt("M14.6 3.5h3.2V20h-3v-1.2a5.4 5.4 0 0 1-3.6 1.4c-3.3 0-5.9-2.7-5.9-6.1S7.9 8 11.2 8c1.3 0 2.5.4 3.4 1.2V3.5Zm-3.1 7.4a3.2 3.2 0 1 0 0 6.4 3.2 3.2 0 0 0 0-6.4Z", "evenodd") },
|
|
5403
5403
|
{ name: "Radio", tint: "#7ee0b4", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
|
|
5404
5404
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "1.8", fill: "currentColor", stroke: "none" }),
|
|
5405
5405
|
/* @__PURE__ */ i("path", { d: "M8.5 15.5a5 5 0 0 1 0-7M15.5 8.5a5 5 0 0 1 0 7M5.6 18.4a9 9 0 0 1 0-12.8M18.4 5.6a9 9 0 0 1 0 12.8" })
|
|
5406
5406
|
] }) },
|
|
5407
|
-
{ name: "WEBM", tint: "#5b63d7", glyph:
|
|
5407
|
+
{ name: "WEBM", tint: "#5b63d7", glyph: $t("WEBM") },
|
|
5408
5408
|
{ name: "Loom", tint: "#8f7bff", glyph: yt("M21 11h-5.2l4.5-2.6-1-1.7-4.5 2.6 2.6-4.5-1.7-1-2.6 4.5V3h-2v5.3L8.5 3.8l-1.7 1 2.6 4.5-4.5-2.6-1 1.7L8.2 11H3v2h5.2l-4.5 2.6 1 1.7 4.5-2.6-2.6 4.5 1.7 1 2.6-4.5V21h2v-5.2l2.6 4.5 1.7-1-2.6-4.5 4.5 2.6 1-1.7-4.5-2.6H21v-2Zm-9 3.4a2.4 2.4 0 1 1 0-4.8 2.4 2.4 0 0 1 0 4.8Z", "evenodd") },
|
|
5409
|
-
{ name: "FLAC", tint: "#f7c948", glyph:
|
|
5409
|
+
{ name: "FLAC", tint: "#f7c948", glyph: $t("FLAC") },
|
|
5410
5410
|
{ name: "Live", tint: "#ff5a5a", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
|
|
5411
5411
|
/* @__PURE__ */ i("rect", { x: "3", y: "6", width: "18", height: "12", rx: "3" }),
|
|
5412
5412
|
/* @__PURE__ */ i("circle", { cx: "8", cy: "12", r: "1.6", fill: "currentColor", stroke: "none" }),
|
|
5413
5413
|
/* @__PURE__ */ i("path", { d: "M11.5 10h6M11.5 14h4" })
|
|
5414
5414
|
] }) }
|
|
5415
|
-
],
|
|
5416
|
-
function
|
|
5415
|
+
], yu = 14, Tu = 4;
|
|
5416
|
+
function wu(t) {
|
|
5417
5417
|
const e = wi.length, n = [];
|
|
5418
5418
|
for (let r = 0; r < 11; r++) n.push(wi[(r + t * 7) % e]);
|
|
5419
5419
|
return n;
|
|
5420
5420
|
}
|
|
5421
|
-
function
|
|
5421
|
+
function vu({ t }) {
|
|
5422
5422
|
return /* @__PURE__ */ g("span", { className: "vsp-prov__tile", style: { "--tint": t.tint }, children: [
|
|
5423
5423
|
/* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: "100%", height: "100%", "aria-hidden": "true", children: t.glyph }),
|
|
5424
5424
|
/* @__PURE__ */ i("span", { className: "vsp-prov__name", children: t.name })
|
|
5425
5425
|
] });
|
|
5426
5426
|
}
|
|
5427
|
-
function
|
|
5427
|
+
function Lu() {
|
|
5428
5428
|
const t = k(null), [e, n] = L(!0), [r, s] = L(() => typeof document > "u" || !document.hidden);
|
|
5429
5429
|
return D(() => {
|
|
5430
5430
|
const a = () => s(!document.hidden);
|
|
@@ -5434,9 +5434,9 @@ function vu() {
|
|
|
5434
5434
|
return o && typeof IntersectionObserver < "u" && (l = new IntersectionObserver(([c]) => n(c.isIntersecting)), l.observe(o)), () => {
|
|
5435
5435
|
document.removeEventListener("visibilitychange", a), l == null || l.disconnect();
|
|
5436
5436
|
};
|
|
5437
|
-
}, []), /* @__PURE__ */ i("div", { ref: t, className: `vsp-prov${e && r ? "" : " vsp-prov--still"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("div", { className: "vsp-prov__plane", children: Array.from({ length:
|
|
5438
|
-
const l =
|
|
5439
|
-
return /* @__PURE__ */ i("div", { className: `vsp-prov__row${o % 2 ? " vsp-prov__row--rev" : ""}`, style: { animationDuration: `${80 + o * 11}s`, animationDelay: `-${o * 17}s` }, children: Array.from({ length:
|
|
5437
|
+
}, []), /* @__PURE__ */ i("div", { ref: t, className: `vsp-prov${e && r ? "" : " vsp-prov--still"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("div", { className: "vsp-prov__plane", children: Array.from({ length: yu }, (a, o) => {
|
|
5438
|
+
const l = wu(o);
|
|
5439
|
+
return /* @__PURE__ */ i("div", { className: `vsp-prov__row${o % 2 ? " vsp-prov__row--rev" : ""}`, style: { animationDuration: `${80 + o * 11}s`, animationDelay: `-${o * 17}s` }, children: Array.from({ length: Tu }, (c, u) => l.map((d, M) => /* @__PURE__ */ i(vu, { t: d }, `${u}-${M}`))) }, o);
|
|
5440
5440
|
}) }) });
|
|
5441
5441
|
}
|
|
5442
5442
|
const da = {
|
|
@@ -5454,8 +5454,8 @@ function Tr(t) {
|
|
|
5454
5454
|
return t;
|
|
5455
5455
|
}
|
|
5456
5456
|
}
|
|
5457
|
-
function
|
|
5458
|
-
const [n, r] = L(!1), [s, a] = L(null), [o, l] = L(null), [c, u] = L(() =>
|
|
5457
|
+
function ku(t, e) {
|
|
5458
|
+
const [n, r] = L(!1), [s, a] = L(null), [o, l] = L(null), [c, u] = L(() => hu(t)), d = Je((f) => {
|
|
5459
5459
|
if (n) return;
|
|
5460
5460
|
r(!0), l(null);
|
|
5461
5461
|
let m;
|
|
@@ -5465,27 +5465,27 @@ function Lu(t, e) {
|
|
|
5465
5465
|
m = Promise.reject(y);
|
|
5466
5466
|
}
|
|
5467
5467
|
m.then((y) => {
|
|
5468
|
-
y && (
|
|
5468
|
+
y && (Mu(t), u(!0), y !== "connected" && e(y));
|
|
5469
5469
|
}).catch((y) => l(y instanceof Error ? y.message : "Something went wrong. Please try again.")).finally(() => {
|
|
5470
5470
|
r(!1), a(null);
|
|
5471
5471
|
});
|
|
5472
5472
|
}, [t, n, e]), M = Je(() => d({ connect: !0 }), [d]), h = Je((f, m) => d({ url: f, ask: m }), [d]);
|
|
5473
5473
|
return { busy: n, status: s, err: o, connected: c, connect: M, start: h };
|
|
5474
5474
|
}
|
|
5475
|
-
function
|
|
5475
|
+
function ju(t) {
|
|
5476
5476
|
return /\.(mp4|webm|mov|m4v|ogv|mkv)(\?|#|$)/i.test(t);
|
|
5477
5477
|
}
|
|
5478
|
-
function
|
|
5478
|
+
function zu({ poster: t, src: e }) {
|
|
5479
5479
|
const n = e ? Ki(e) : null, r = t ?? (n ? `https://i.ytimg.com/vi/${n}/hqdefault.jpg` : null);
|
|
5480
|
-
return r ? /* @__PURE__ */ i("div", { className: "vsp-idle__pic", style: { backgroundImage: `url(${r})` } }) : e &&
|
|
5480
|
+
return r ? /* @__PURE__ */ i("div", { className: "vsp-idle__pic", style: { backgroundImage: `url(${r})` } }) : e && ju(e) ? /* @__PURE__ */ i("video", { className: "vsp-idle__pic vsp-idle__frame", src: `${e}#t=1`, muted: !0, playsInline: !0, preload: "metadata", "aria-hidden": "true" }) : /* @__PURE__ */ g(xe, { children: [
|
|
5481
5481
|
/* @__PURE__ */ i("div", { className: "vsp-idle__pic vsp-idle__pic--brand" }),
|
|
5482
|
-
/* @__PURE__ */ i(
|
|
5482
|
+
/* @__PURE__ */ i(Lu, {})
|
|
5483
5483
|
] });
|
|
5484
5484
|
}
|
|
5485
|
-
const
|
|
5485
|
+
const Iu = { live: !1, atEdge: !1, edgeFrac: null, pct: 0, atLabel: "0:00", labelAt: () => "0:00", endLabel: "0:00", onSeek: () => {
|
|
5486
5486
|
} };
|
|
5487
|
-
function
|
|
5488
|
-
const l =
|
|
5487
|
+
function Pn({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children: o }) {
|
|
5488
|
+
const l = Nu(t.prefs, t.set), c = ua(), u = k(null), [d, M] = L(!1);
|
|
5489
5489
|
Kt(() => {
|
|
5490
5490
|
var j;
|
|
5491
5491
|
const f = (j = u.current) == null ? void 0 : j.parentElement;
|
|
@@ -5499,7 +5499,7 @@ function Rn({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children:
|
|
|
5499
5499
|
}, onNext: () => {
|
|
5500
5500
|
}, playing: !1, playable: !0, playTitle: "Connect to play", onPlay: a };
|
|
5501
5501
|
return /* @__PURE__ */ g("div", { ref: u, className: `vsp-idleroot${d ? " vsp-idleroot--small" : ""}`, children: [
|
|
5502
|
-
/* @__PURE__ */ i(oa, { page: s, picture: /* @__PURE__ */ i(
|
|
5502
|
+
/* @__PURE__ */ i(oa, { page: s, picture: /* @__PURE__ */ i(zu, { poster: e, src: n }), title: r, desk: c, pos: Iu, sub: null, mute: { muted: t.prefs.muted, onToggle: () => t.set({ muted: !t.prefs.muted }) }, cc: { on: t.prefs.subtitles, onToggle: () => t.set({ subtitles: !t.prefs.subtitles }) }, chip: l.chip, transport: h, picker: l.sheets, sheet: null, voices: null, voicesBtn: null, sheetOpen: l.sheetOpen, onSettings: l.openSettings, onShare: () => Qr(t.shareUrl ?? window.location.href, r), copied: null, onTouch: () => {
|
|
5503
5503
|
} }),
|
|
5504
5504
|
!l.sheetOpen && /* @__PURE__ */ i("div", { className: "vsp-idle", "data-theme": "dark", children: /* @__PURE__ */ i("div", { className: "vsp-idle__box", children: o }) })
|
|
5505
5505
|
] });
|
|
@@ -5514,22 +5514,22 @@ function ha({ connect: t, onClick: e, label: n }) {
|
|
|
5514
5514
|
t.err && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: t.err })
|
|
5515
5515
|
] });
|
|
5516
5516
|
}
|
|
5517
|
-
function
|
|
5517
|
+
function Ou({ idle: t, src: e, ask: n, connect: r, page: s, poster: a = null, onClear: o }) {
|
|
5518
5518
|
const l = () => r.start(e, n);
|
|
5519
|
-
return /* @__PURE__ */ g(
|
|
5519
|
+
return /* @__PURE__ */ g(Pn, { idle: t, poster: a, src: e, title: Tr(e), page: s, onAct: l, children: [
|
|
5520
5520
|
/* @__PURE__ */ i(ha, { connect: r, onClick: l, label: r.connected ? "Play with VocalStack" : "Connect to VocalStack" }),
|
|
5521
5521
|
!r.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: r.connected ? `Plays ${Tr(e)} with subtitles and spoken translations.` : `Connect to play ${Tr(e)} with subtitles and spoken translations.` }),
|
|
5522
5522
|
o && !r.busy && /* @__PURE__ */ i("button", { type: "button", className: "vsp-idle__other", onClick: o, children: "Choose another video" })
|
|
5523
5523
|
] });
|
|
5524
5524
|
}
|
|
5525
|
-
function
|
|
5525
|
+
function bu({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
|
|
5526
5526
|
const [a, o] = L(""), l = k(null), c = k(null), u = a.trim(), d = vi.test(u), M = () => {
|
|
5527
5527
|
if (!d || e.busy) return;
|
|
5528
5528
|
const m = /^https?:\/\//i.test(u) ? u : `https://${u}`;
|
|
5529
5529
|
s(m), e.start(m, !1);
|
|
5530
5530
|
};
|
|
5531
5531
|
if (!e.connected)
|
|
5532
|
-
return /* @__PURE__ */ g(
|
|
5532
|
+
return /* @__PURE__ */ g(Pn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: e.connect, children: [
|
|
5533
5533
|
/* @__PURE__ */ i(ha, { connect: e, onClick: e.connect, label: "Connect to VocalStack" }),
|
|
5534
5534
|
!e.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: "Connect your VocalStack account to watch any video with subtitles and spoken translations." })
|
|
5535
5535
|
] });
|
|
@@ -5543,7 +5543,7 @@ function Ou({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
|
|
|
5543
5543
|
const j = /^https?:\/\//i.test(y) ? y : `https://${y}`;
|
|
5544
5544
|
s(j), e.start(j, !1);
|
|
5545
5545
|
};
|
|
5546
|
-
return /* @__PURE__ */ g(
|
|
5546
|
+
return /* @__PURE__ */ g(Pn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: h, children: [
|
|
5547
5547
|
/* @__PURE__ */ i("form", { className: "vsp-idle__form", onSubmit: (m) => {
|
|
5548
5548
|
m.preventDefault(), M();
|
|
5549
5549
|
}, children: /* @__PURE__ */ g("span", { className: "vsp-idle__field", children: [
|
|
@@ -5558,8 +5558,8 @@ function Ou({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
|
|
|
5558
5558
|
e.err && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: e.err })
|
|
5559
5559
|
] });
|
|
5560
5560
|
}
|
|
5561
|
-
function
|
|
5562
|
-
return /* @__PURE__ */ g(
|
|
5561
|
+
function Cu({ idle: t, message: e, onRetry: n, page: r }) {
|
|
5562
|
+
return /* @__PURE__ */ g(Pn, { idle: t, poster: null, src: null, title: "VocalStack", page: r, onAct: n, children: [
|
|
5563
5563
|
/* @__PURE__ */ g("div", { className: "vsp-idle__err", role: "alert", children: [
|
|
5564
5564
|
/* @__PURE__ */ i(oe, { d: X.warn, size: 16, sw: 1.8 }),
|
|
5565
5565
|
e
|
|
@@ -5570,7 +5570,7 @@ function bu({ idle: t, message: e, onRetry: n, page: r }) {
|
|
|
5570
5570
|
] })
|
|
5571
5571
|
] });
|
|
5572
5572
|
}
|
|
5573
|
-
function
|
|
5573
|
+
function xu(t, e, n) {
|
|
5574
5574
|
const [r, s] = L(t && e ? void 0 : null);
|
|
5575
5575
|
return D(() => {
|
|
5576
5576
|
if (!t) {
|
|
@@ -5597,8 +5597,8 @@ function Cu(t, e, n) {
|
|
|
5597
5597
|
};
|
|
5598
5598
|
}, [t, e, n]), r;
|
|
5599
5599
|
}
|
|
5600
|
-
const
|
|
5601
|
-
function
|
|
5600
|
+
const Su = 100, Li = (t) => t == null ? null : t ? "on" : "off";
|
|
5601
|
+
function Du(t) {
|
|
5602
5602
|
const e = t.syncUrl && typeof window < "u" ? new URLSearchParams(window.location.search) : null, n = { ...t.initial ?? {}, ...t.settings ?? {} }, r = (a) => a === "on" || a === "off" ? a : null, s = Number(e == null ? void 0 : e.get("t"));
|
|
5603
5603
|
return {
|
|
5604
5604
|
lang: (e == null ? void 0 : e.get("lang")) || n.lang || null,
|
|
@@ -5607,14 +5607,14 @@ function Su(t) {
|
|
|
5607
5607
|
cc: e != null && e.get("cc") ? e.get("cc") !== "off" : n.subtitles ?? !0,
|
|
5608
5608
|
translateAudio: e != null && e.get("audio") ? e.get("audio") !== "original" : n.translateAudio ?? !0,
|
|
5609
5609
|
clonedVoices: e != null && e.get("voices") ? e.get("voices") !== "stock" : (n.voices ?? "cloned") === "cloned",
|
|
5610
|
-
removeBackground: e && e.get("bg") ?
|
|
5610
|
+
removeBackground: e && e.get("bg") ? Qo(e) : n.removeBackground ?? !1,
|
|
5611
5611
|
startAt: Number.isFinite(s) && s > 0 ? s : t.startAt ?? null
|
|
5612
5612
|
};
|
|
5613
5613
|
}
|
|
5614
|
-
const
|
|
5614
|
+
const Wu = Ha(function(e, n) {
|
|
5615
5615
|
var K;
|
|
5616
5616
|
const r = k(null);
|
|
5617
|
-
|
|
5617
|
+
Wa(n, () => ({
|
|
5618
5618
|
seek: (v) => {
|
|
5619
5619
|
var ie;
|
|
5620
5620
|
return (ie = r.current) == null ? void 0 : ie.seek(v);
|
|
@@ -5640,17 +5640,17 @@ const Hu = Va(function(e, n) {
|
|
|
5640
5640
|
D(() => {
|
|
5641
5641
|
a({ id: e.id ?? "", token: e.token });
|
|
5642
5642
|
}, [e.id, e.token, e.src]);
|
|
5643
|
-
const o =
|
|
5643
|
+
const o = xu(e.src ?? null, e.token ?? null, e.baseUrl ?? null);
|
|
5644
5644
|
D(() => {
|
|
5645
5645
|
o != null && o.id && a({ id: o.id, token: e.token });
|
|
5646
5646
|
}, [o == null ? void 0 : o.id]);
|
|
5647
|
-
const [l, c] = L(null), [u, d] = L(() => ({ ...
|
|
5647
|
+
const [l, c] = L(null), [u, d] = L(() => ({ ...mu, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, v]) => v !== void 0)) })), [M, h] = L({}), f = { prefs: u, set: (v) => {
|
|
5648
5648
|
d((ie) => ({ ...ie, ...v })), h((ie) => ({ ...ie, ...v }));
|
|
5649
5649
|
}, shareUrl: (K = e.shareUrl) == null ? void 0 : K.call(e, null) }, { muted: m, ...y } = M;
|
|
5650
5650
|
D(() => {
|
|
5651
5651
|
c(null);
|
|
5652
5652
|
}, [e.id, e.src]);
|
|
5653
|
-
const j = e.src ?? l, N = !s.id && !!j && (l != null || o !== void 0), p = !s.id && !e.src && !l, I = Wi({ id: s.id, token: s.token, baseUrl: e.baseUrl, listen: s.listen }), { source: C, gone: S, error: B, reload: Y } =
|
|
5653
|
+
const j = e.src ?? l, N = !s.id && !!j && (l != null || o !== void 0), p = !s.id && !e.src && !l, I = Wi({ id: s.id, token: s.token, baseUrl: e.baseUrl, listen: s.listen }), { source: C, gone: S, error: B, reload: Y } = Il(I, s.id), ee = Ol(I, (C == null ? void 0 : C.recording.id) ?? null), z = ze(() => jl(I, ee), [I, ee]);
|
|
5654
5654
|
D(() => {
|
|
5655
5655
|
var v;
|
|
5656
5656
|
C && ((v = e.onSource) == null || v.call(e, C));
|
|
@@ -5658,16 +5658,16 @@ const Hu = Va(function(e, n) {
|
|
|
5658
5658
|
var v;
|
|
5659
5659
|
B && ((v = e.onError) == null || v.call(e, B));
|
|
5660
5660
|
}, [B]);
|
|
5661
|
-
const F = ua(e.desk), A = (e.layout ?? "embed") === "embed", T = e.appUrl ?? (e.endCard ? e.endCard.appUrl : void 0), _ = Je((v) => a({ id: v.transcriptionId, token: null, listen: { transcriptionId: v.transcriptionId, recordingId: v.recordingId, token: v.token } }), []), b =
|
|
5662
|
-
return D(() => (yi(A ? te.current : null), () => yi(null)), [A]), /* @__PURE__ */ i(
|
|
5661
|
+
const F = ua(e.desk), A = (e.layout ?? "embed") === "embed", T = e.appUrl ?? (e.endCard ? e.endCard.appUrl : void 0), _ = Je((v) => a({ id: v.transcriptionId, token: null, listen: { transcriptionId: v.transcriptionId, recordingId: v.recordingId, token: v.token } }), []), b = ku(T, _), te = k(null);
|
|
5662
|
+
return D(() => (yi(A ? te.current : null), () => yi(null)), [A]), /* @__PURE__ */ i(wl, { value: z, children: /* @__PURE__ */ i("div", { ref: te, className: `vsp${A ? " vsp--embed" : ""}${e.className ? ` ${e.className}` : ""}`, "data-theme": (e.mode ?? "video") === "video" || e.dark ? "dark" : "light", "data-mode": (e.mode ?? "video") === "video" ? "video" : "transcript", children: p ? /* @__PURE__ */ i(bu, { idle: f, connect: b, page: !A, poster: e.poster ?? null, onPick: c }) : N ? /* @__PURE__ */ i(Ou, { idle: f, src: j, ask: !l, connect: b, page: !A, poster: e.poster ?? null, onClear: l ? () => c(null) : void 0 }) : s.id ? B && !C ? /* @__PURE__ */ i(Cu, { idle: f, message: B.message, onRetry: Y, page: !A }) : /* @__PURE__ */ i(Au, { ...e, initial: { ...e.initial ?? {}, ...y }, startMuted: m === !0, handle: r, id: s.id, api: z, shared: C, gone: S, loadError: B, reread: Y, desk: F, dark: (e.mode ?? "video") === "video" || !!e.dark, onStarted: (v) => a({ id: v.transcriptionId, token: null, listen: { transcriptionId: v.transcriptionId, recordingId: v.recordingId, token: v.token } }) }, s.id) : /* @__PURE__ */ i("div", { className: "vsp-gate", "data-theme": "dark", children: /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) }) }) });
|
|
5663
5663
|
});
|
|
5664
|
-
function
|
|
5664
|
+
function Au(t) {
|
|
5665
5665
|
var vs, Ls, ks, js, zs, Is, Os, bs, Cs, xs, Ss, Ds, As, Es, _s, Ys, Us, Rs, Ps, $s, Qs, Bs, Vs, Hs, Ws, Fs, Zs, Gs, qs, Ks, Js, Xs;
|
|
5666
|
-
const { api: e, shared: n, gone: r, desk: s, dark: a } = t, o = t.id ?? "", l = ze(() =>
|
|
5666
|
+
const { api: e, shared: n, gone: r, desk: s, dark: a } = t, o = t.id ?? "", l = ze(() => Du(t), []), u = (t.mode ?? "video") === "video", [d, M] = L(t.loadError);
|
|
5667
5667
|
D(() => {
|
|
5668
5668
|
t.loadError && M(t.loadError);
|
|
5669
5669
|
}, [t.loadError]);
|
|
5670
|
-
const [h, f] = L("none"), [m, y] = L(!1), [j, N] = L(""), [p, I] =
|
|
5670
|
+
const [h, f] = L("none"), [m, y] = L(!1), [j, N] = L(""), [p, I] = Ec(), [C, S] = L(null), [B, Y] = L(u ? "listen" : "read"), [ee, z] = L(!1), F = k(null), A = k(/* @__PURE__ */ new Map()), [T, _] = L("main"), b = (w) => {
|
|
5671
5671
|
const me = document.querySelector(".vs-sheet--settings"), Pe = me == null ? void 0 : me.parentElement;
|
|
5672
5672
|
me && Pe && T === "main" && w !== "main" && Pe.style.setProperty("--vs-sheet-top", `${Math.round(me.getBoundingClientRect().top - Pe.getBoundingClientRect().top)}px`), _(w);
|
|
5673
5673
|
};
|
|
@@ -5694,20 +5694,20 @@ function Du(t) {
|
|
|
5694
5694
|
D(() => {
|
|
5695
5695
|
if (!t.syncUrl) return;
|
|
5696
5696
|
const w = new URL(window.location.href);
|
|
5697
|
-
J ? w.searchParams.set("lang", J) : w.searchParams.delete("lang"), pe ? w.searchParams.set("labels", pe) : w.searchParams.delete("labels"), Te ? w.searchParams.set("words", Te) : w.searchParams.delete("words"), Se ? w.searchParams.delete("cc") : w.searchParams.set("cc", "off"), we ? w.searchParams.delete("audio") : w.searchParams.set("audio", "original"), Re ? w.searchParams.delete("voices") : w.searchParams.set("voices", "stock"),
|
|
5697
|
+
J ? w.searchParams.set("lang", J) : w.searchParams.delete("lang"), pe ? w.searchParams.set("labels", pe) : w.searchParams.delete("labels"), Te ? w.searchParams.set("words", Te) : w.searchParams.delete("words"), Se ? w.searchParams.delete("cc") : w.searchParams.set("cc", "off"), we ? w.searchParams.delete("audio") : w.searchParams.set("audio", "original"), Re ? w.searchParams.delete("voices") : w.searchParams.set("voices", "stock"), Bo(w, Q), w.href !== window.location.href && window.history.replaceState(window.history.state, "", w);
|
|
5698
5698
|
}, [J, pe, Te, Se, we, Re, Q]), D(() => {
|
|
5699
5699
|
n && !n.allowTranslate && J && Z(null);
|
|
5700
5700
|
}, [n, J]);
|
|
5701
|
-
const { model: ce, error: W, clearError: ye, setLanguage: G, mergeTranslations: ke, translating: Ie, translateFailed: Fe, shownLang: Ae } =
|
|
5701
|
+
const { model: ce, error: W, clearError: ye, setLanguage: G, mergeTranslations: ke, translating: Ie, translateFailed: Fe, shownLang: Ae } = Sl(ie, {
|
|
5702
5702
|
lang: null,
|
|
5703
5703
|
onFrame: (w) => {
|
|
5704
5704
|
w.type === "job.progress" && S({ state: w.state, processedS: w.processedS ?? 0, totalS: w.totalS ?? null, segmentsDone: w.segmentsDone ?? 0, segmentsTotal: w.segmentsTotal ?? null, pct: w.pct ?? 0, error: w.error ?? null });
|
|
5705
5705
|
}
|
|
5706
|
-
}), he = ze(() =>
|
|
5706
|
+
}), he = ze(() => cl(ce).filter((w) => !w.suppressed), [ce]), _e = Dl((n == null ? void 0 : n.job) ?? null), Be = ["done", "failed", "stopped"].includes(mr((_e == null ? void 0 : _e.state) ?? ((vs = n == null ? void 0 : n.job) == null ? void 0 : vs.state))), $ = Be ? _e : C ?? _e, Me = !!C && !["done", "failed", "stopped"].includes(mr(C.state)), ue = k(0);
|
|
5707
5707
|
D(() => {
|
|
5708
5708
|
!Be || !Me || Date.now() - ue.current < 1e4 || (ue.current = Date.now(), t.reread());
|
|
5709
5709
|
}, [Be, Me, C == null ? void 0 : C.state, C == null ? void 0 : C.processedS, o]);
|
|
5710
|
-
const ae = mr(($ == null ? void 0 : $.state) ?? ((Ls = n == null ? void 0 : n.job) == null ? void 0 : Ls.state) ?? (e.listen ? (v == null ? void 0 : v.state) === "finalized" ? "done" : v != null && v.state ? "transcribing" : void 0 : void 0)), fe = !!ie && (ae === "transcribing" || ae === "queued"), Ye = u && !r && (!n || (fe || ae === "cropping") && he.length === 0), U = fe ? ($ == null ? void 0 : $.pct) ?? 0 : 100, R =
|
|
5710
|
+
const ae = mr(($ == null ? void 0 : $.state) ?? ((Ls = n == null ? void 0 : n.job) == null ? void 0 : Ls.state) ?? (e.listen ? (v == null ? void 0 : v.state) === "finalized" ? "done" : v != null && v.state ? "transcribing" : void 0 : void 0)), fe = !!ie && (ae === "transcribing" || ae === "queued"), Ye = u && !r && (!n || (fe || ae === "cropping") && he.length === 0), U = fe ? ($ == null ? void 0 : $.pct) ?? 0 : 100, R = El(n == null ? void 0 : n.job, $) ?? (v == null ? void 0 : v.mediaDurationS) ?? null, q = ((ks = ce.segments.values().next().value) == null ? void 0 : ks.language) ?? (v == null ? void 0 : v.spokenLanguage) ?? null, se = n != null && n.sharedBy ? `Shared by ${n.sharedBy}` : "", de = ((Is = (zs = (js = n == null ? void 0 : n.job) == null ? void 0 : js.source) == null ? void 0 : zs.name) == null ? void 0 : Is.trim()) || null, Oe = n ? ((Os = n.name) == null ? void 0 : Os.trim()) || de : null, Ne = !!((bs = n == null ? void 0 : n.job) != null && bs.hasAudio), Le = (Cs = n == null ? void 0 : n.job) == null ? void 0 : Cs.source, be = !Ne && !!Le && (Le.kind !== "url" || Le.bytes != null) && (ae === "transcribing" || ae === "queued" || ae === "done"), He = ie && (n != null && n.allowDownload) && Ne ? lo(e.origin, ie, e.cred) : null, $e = !!Le && (Le.kind !== "url" || Le.bytes != null), at = Eu(He && $e ? He : null), st = He && (!$e || at === "yes") ? He : He && at === "unknown" ? null : ie && (n != null && n.allowDownload) && (be || Ne && $e) ? bn(e.origin, ie, "source", e.cred) : null, ft = he[he.length - 1], Ge = ft ? ((xs = ft.words[ft.words.length - 1]) == null ? void 0 : xs.end) ?? ft.start : 0, rt = u && fe ? Math.max(Ge, ($ == null ? void 0 : $.processedS) ?? 0) : null, ct = $c(st, (Ne || be) && !!(n != null && n.allowDownload), he, R, be ? ((Ds = (Ss = n == null ? void 0 : n.job) == null ? void 0 : Ss.crop) == null ? void 0 : Ds.startS) ?? 0 : 0, rt), Qe = ((Es = (As = n == null ? void 0 : n.job) == null ? void 0 : As.source) == null ? void 0 : Es.kind) === "url" ? Ki(n.job.source.url) : null, Xt = Ao(Qe), At = Pc(he, R, ((Ys = (_s = n == null ? void 0 : n.job) == null ? void 0 : _s.crop) == null ? void 0 : Ys.startS) ?? 0, rt), Xe = !!Qe, ut = Xe ? At.player : ct, ot = Fi(), wt = k(null), re = Wc({ forcedVoice: t.voice ?? null, recordingId: ie, model: ce, rows: he, lenS: R, ended: !!ie && !fe, cred: e.cred, langs: ot, srcLang: q, canTranslate: !!(n != null && n.allowTranslate), pickedLang: ne, setPickedLang: Z, side: s && !te ? Hc : void 0, hearOriginal: V, timed: !!Qe, stockVoices: u && !Re, stickyPicker: u, pickerBusy: wt.current }), en = k(null);
|
|
5711
5711
|
D(() => {
|
|
5712
5712
|
!ie || en.current === J || (en.current = J, G(J));
|
|
5713
5713
|
}, [J, ie]);
|
|
@@ -5721,42 +5721,42 @@ function Du(t) {
|
|
|
5721
5721
|
}, [re.on, Xe]);
|
|
5722
5722
|
const dt = ze(() => he.filter((w) => w.sentenceId != null).map((w, me, Pe) => {
|
|
5723
5723
|
var We;
|
|
5724
|
-
return { sid: w.sentenceId, start: w.start, end: ((We = Pe[me + 1]) == null ? void 0 : We.start) ??
|
|
5725
|
-
}), [he]), Et =
|
|
5726
|
-
wt.current =
|
|
5724
|
+
return { sid: w.sentenceId, start: w.start, end: ((We = Pe[me + 1]) == null ? void 0 : We.start) ?? Qt(w, w.start, w.start + 4) };
|
|
5725
|
+
}), [he]), Et = nl({ on: Xe && re.on, lines: dt, clips: re.clips, t: O.t, playing: O.playing, muted: O.muted }), Vt = !!J && (Ie || re.relang || re.on && Et.missing != null);
|
|
5726
|
+
wt.current = Vt ? J : null, D(() => {
|
|
5727
5727
|
Xe && re.on && Et.sid != null && re.setNear(Et.sid);
|
|
5728
|
-
}, [Et.sid, Xe, re.on]),
|
|
5728
|
+
}, [Et.sid, Xe, re.on]), Rc([ut, re.player], re.sampling);
|
|
5729
5729
|
const bt = k(null);
|
|
5730
5730
|
D(() => {
|
|
5731
5731
|
fe && !O.playing && bt.current && (bt.current.scrollTop = bt.current.scrollHeight);
|
|
5732
5732
|
}, [fe, he.length]);
|
|
5733
|
-
const Vn =
|
|
5733
|
+
const Vn = Gc(bt, he, m, j, y), _t = /* @__PURE__ */ i(Zc, { open: m, q: j, onQ: N, onClose: () => y(!1), hits: Vn, desk: s, inline: s }), qe = _o({ name: n == null ? void 0 : n.name, sourceName: (Rs = (Us = n == null ? void 0 : n.job) == null ? void 0 : Us.source) == null ? void 0 : Rs.name, ytTitle: Xt, url: (($s = (Ps = n == null ? void 0 : n.job) == null ? void 0 : Ps.source) == null ? void 0 : $s.kind) === "url" ? n.job.source.url : t.src ?? null, id: o }), ht = !!(n != null && n.allowDownload), vt = !!(n != null && n.allowExport), Lt = re.readLang, kt = Lt ? ((Qs = ot == null ? void 0 : ot.languages.find((w) => w.code === Lt)) == null ? void 0 : Qs.name) ?? Lt.toUpperCase() : null, Ht = async () => {
|
|
5734
5734
|
if (ie)
|
|
5735
5735
|
try {
|
|
5736
5736
|
if (Lt && re.canSpeak) {
|
|
5737
|
-
I(`Preparing ${qe} in ${kt}${re.readVoiceName ? `, read by ${re.readVoiceName}` : ""} — the download starts when it is ready.`), await
|
|
5737
|
+
I(`Preparing ${qe} in ${kt}${re.readVoiceName ? `, read by ${re.readVoiceName}` : ""} — the download starts when it is ready.`), await Ul(e, { recordingId: ie, lang: Lt, voiceKey: re.readVoiceKey, cred: e.cred, request: re.requestTrack }), I(`Downloading ${qe} in ${kt}.`);
|
|
5738
5738
|
return;
|
|
5739
5739
|
}
|
|
5740
5740
|
if (Ne) {
|
|
5741
|
-
I(`Preparing ${qe} as MP3 — the download starts when it is ready.`), await
|
|
5741
|
+
I(`Preparing ${qe} as MP3 — the download starts when it is ready.`), await _l(bn(e.origin, ie, "delivery", e.cred)), I(`Downloading ${qe}.`);
|
|
5742
5742
|
return;
|
|
5743
5743
|
}
|
|
5744
|
-
$r(
|
|
5744
|
+
$r(bn(e.origin, ie, "source", e.cred)), I(`Downloading ${qe} — the full audio, since the transcript is still being written.`);
|
|
5745
5745
|
} catch (w) {
|
|
5746
5746
|
throw M(Ot(w)), w;
|
|
5747
5747
|
}
|
|
5748
5748
|
}, Yt = (w) => {
|
|
5749
5749
|
if (!ie) return;
|
|
5750
5750
|
const me = br.find((We) => We.key === w).name, Pe = kt ? ` in ${kt}` : "";
|
|
5751
|
-
return
|
|
5751
|
+
return Yl(e, ie, w, { lang: Lt }).then(() => I(fe ? `${me} exported${Pe} for the first ${he.length} segments — the rest is still transcribing.` : `${me} exported${Pe}.`)).catch((We) => {
|
|
5752
5752
|
throw M(Ot(We)), We;
|
|
5753
5753
|
});
|
|
5754
|
-
}, Mt = fe ? "MORE TO COME…" : "END OF TRANSCRIPT", tn = fe ? "var(--brand)" : "var(--ink-28)", it =
|
|
5754
|
+
}, Mt = fe ? "MORE TO COME…" : "END OF TRANSCRIPT", tn = fe ? "var(--brand)" : "var(--ink-28)", it = Al($, he.length), Ct = O.has && (!re.relang || !!Qe), Ze = k(O);
|
|
5755
5755
|
Ze.current = O;
|
|
5756
|
-
const
|
|
5756
|
+
const Wt = `${J ?? ""}|${re.on ? "voice" : "source"}`, nn = k({ key: Wt, idx: 0, t: 0, playing: !1, until: 0 });
|
|
5757
5757
|
D(() => {
|
|
5758
5758
|
const w = nn.current;
|
|
5759
|
-
if (w.key !==
|
|
5759
|
+
if (w.key !== Wt && (w.key = Wt, w.until = Date.now() + 15e3), !Xe) {
|
|
5760
5760
|
if (!w.until) {
|
|
5761
5761
|
w.idx = O.idx, w.t = O.t, w.playing = O.playing;
|
|
5762
5762
|
return;
|
|
@@ -5770,7 +5770,7 @@ function Du(t) {
|
|
|
5770
5770
|
});
|
|
5771
5771
|
const pt = k(!1), Ke = k(!1);
|
|
5772
5772
|
u && (Ci.video = !0);
|
|
5773
|
-
const [rn, Ut] = L(!1), [
|
|
5773
|
+
const [rn, Ut] = L(!1), [gn, Hn] = L(!1);
|
|
5774
5774
|
D(() => {
|
|
5775
5775
|
if (!u || pt.current || !Ct || !te || Ye || t.autoplay === !1) return;
|
|
5776
5776
|
pt.current = !0;
|
|
@@ -5797,13 +5797,13 @@ function Du(t) {
|
|
|
5797
5797
|
return;
|
|
5798
5798
|
}
|
|
5799
5799
|
Ut(!1), Ze.current.toggleMute();
|
|
5800
|
-
},
|
|
5800
|
+
}, Rt = () => {
|
|
5801
5801
|
if (xt.current) {
|
|
5802
5802
|
xt.current = !1;
|
|
5803
5803
|
return;
|
|
5804
5804
|
}
|
|
5805
5805
|
Ke.current = !0, Ze.current.toggle();
|
|
5806
|
-
},
|
|
5806
|
+
}, fn = (w) => /* @__PURE__ */ i(Ac, { player: O, size: w }), sn = !!ie && !fe, [an, P] = L(!1);
|
|
5807
5807
|
D(() => {
|
|
5808
5808
|
if (!Ie) {
|
|
5809
5809
|
P(!1);
|
|
@@ -5812,16 +5812,16 @@ function Du(t) {
|
|
|
5812
5812
|
const w = setTimeout(() => P(!0), 180);
|
|
5813
5813
|
return () => clearTimeout(w);
|
|
5814
5814
|
}, [Ie]);
|
|
5815
|
-
const Ce = an ? Ae : J, Ve =
|
|
5815
|
+
const Ce = an ? Ae : J, Ve = ql(ie, J, he, ke), mt = dc(hc(v), ie, re.readLang), on = ht || vt, Ma = (((Vs = (Bs = n == null ? void 0 : n.job) == null ? void 0 : Bs.crop) == null ? void 0 : Vs.startS) ?? 0) + Gt(O, he), jt = B === "listen", Pt = jt && (!!Qe || u), ga = (w) => {
|
|
5816
5816
|
ut.pause(), re.player.pause(), Y(w), w === "read" && te && (un(!1), K(!1));
|
|
5817
5817
|
};
|
|
5818
5818
|
D(() => {
|
|
5819
5819
|
jt || (ut.playing && ut.pause(), re.player.playing && re.player.pause());
|
|
5820
5820
|
}, [jt, ut.playing, re.player.playing]);
|
|
5821
|
-
const Ue = re.barChip, Ft = Gi(Ue.label), Hr = /* @__PURE__ */ i(wr, { value: B, onChange: ga, bordered: !1, options:
|
|
5822
|
-
w === "summary" && sn && /* @__PURE__ */ i(
|
|
5823
|
-
w === "export" && /* @__PURE__ */ i(
|
|
5824
|
-
] }), fa = (w) => /* @__PURE__ */ i(
|
|
5821
|
+
const Ue = re.barChip, Ft = Gi(Ue.label), Hr = /* @__PURE__ */ i(wr, { value: B, onChange: ga, bordered: !1, options: lu(Ft, !!Qe) }), Zt = [...sn ? [{ key: "summary", label: "Summary" }] : [], ...on ? [{ key: "export", label: "Export" }] : []], Wr = (w) => /* @__PURE__ */ g(xe, { children: [
|
|
5822
|
+
w === "summary" && sn && /* @__PURE__ */ i(Mc, { s: mt }),
|
|
5823
|
+
w === "export" && /* @__PURE__ */ i(uc, { audio: ht ? { name: qe, meta: Lt && re.canSpeak || Ne ? `MP3${R ? ` · ${It(R)}` : ""}` : "ORIGINAL AUDIO", onClick: Ht } : null, formats: vt, onExport: Yt })
|
|
5824
|
+
] }), fa = (w) => /* @__PURE__ */ i(Wl, { index: O.idx, total: Math.max(1, he.length), frac: O.dur > 0 ? Math.min(1, O.t / O.dur) : 0, glideMs: O.wordSync ? 0 : 220, atLabel: It(O.t), durLabel: It(O.dur), stepLabel: w ? `${O.idx + 1} / ${he.length}` : "", onSeek: re.relang ? Bc : O.seekRow, onSeekFrac: re.relang ? void 0 : O.seekFrac, onScrubStart: O.hold, onScrubEnd: O.release }), Fr = {
|
|
5825
5825
|
live: !1,
|
|
5826
5826
|
atEdge: !1,
|
|
5827
5827
|
edgeFrac: null,
|
|
@@ -5834,7 +5834,7 @@ function Du(t) {
|
|
|
5834
5834
|
var me;
|
|
5835
5835
|
re.relang || (me = O.seekFrac) == null || me.call(O, w);
|
|
5836
5836
|
}
|
|
5837
|
-
}, [pa, ma] = na(re.on && !!O.preparing && O.playing, 1500), Zn = re.on && ((Hs = O.error) == null ? void 0 : Hs.code) === "voice_not_started", Gn = re.canSpeak && !re.error && !Zn,
|
|
5837
|
+
}, [pa, ma] = na(re.on && !!O.preparing && O.playing, 1500), Zn = re.on && ((Hs = O.error) == null ? void 0 : Hs.code) === "voice_not_started", Gn = re.canSpeak && !re.error && !Zn, pn = J ? ((Ws = ot == null ? void 0 : ot.languages.find((w) => w.code === J)) == null ? void 0 : Ws.name) ?? Ue.label : "", tt = te ? Oc({ lang: J, langName: pn, translating: Ie && !!J, translateFailed: Fe, voiceFailed: Zn, relang: re.relang, starting: re.on ? O.starting : null, slowLine: pa, lineSince: ma }) : null, qn = !!Qe && !!tt && (tt.kind === "translating" || tt.kind === "voice" && re.relang), Zr = !qn || !tt ? null : tt.kind === "translating" ? `Translating into ${pn || "the new language"}…` : `Preparing the ${pn || "translated"} voice…`, St = !qn && ((tt == null ? void 0 : tt.kind) === "voice" || (tt == null ? void 0 : tt.kind) === "starting"), Gr = _r({ ...re.langList, keepOpen: !0, open: T === "lang", onClose: () => b("main") }), qr = $o(Q, re.on), Na = u && qr.bed && ht && ie && (!fe || st) ? ti(e.origin, ie, e.cred) : null, Kr = qo(Na, { t: Gt(O, he), playing: O.playing && !St && !(O.timed && O.preparing), muted: O.muted }), ya = u && qr.speech && ht && ie && (!fe || st) ? ti(e.origin, ie, e.cred, "speech") : null, Kn = $i(ya, { t: Gt(O, he), playing: !re.on && O.playing, muted: O.muted }), Jn = !re.on && Kn.on;
|
|
5838
5838
|
D(() => {
|
|
5839
5839
|
var w;
|
|
5840
5840
|
At.setVideoSound(!(Xe && (re.on || Jn))), (w = ct.silence) == null || w.call(ct, !Xe && Jn);
|
|
@@ -5851,44 +5851,48 @@ function Du(t) {
|
|
|
5851
5851
|
}, Jr = { prevOn: O.idx > 0, nextOn: O.idx < he.length - 1, onPrev: O.prev, onNext: O.next, playing: O.playing, playable: Ct, playTitle: re.playTitle ?? (O.playing ? "Pause" : "Play"), onPlay: () => {
|
|
5852
5852
|
Ke.current = !0, O.toggle();
|
|
5853
5853
|
}, busy: re.relang && !Qe || St };
|
|
5854
|
-
|
|
5854
|
+
il(Ct && jt ? { playing: O.playing, toggle: () => {
|
|
5855
5855
|
Ke.current = !0, O.toggle();
|
|
5856
5856
|
}, next: O.next, prev: O.prev } : null, Oe);
|
|
5857
|
-
const tr = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, nr = (w, me) => !Ue.can || !x.language ? null : u ? /* @__PURE__ */ g("button", { type: "button", className: "gfull__btn", title:
|
|
5857
|
+
const tr = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, nr = (w, me) => !Ue.can || !x.language ? null : u ? /* @__PURE__ */ g("button", { type: "button", className: "gfull__btn", title: Vt ? `${Ue.label ?? Ue.code}: still being prepared` : Ue.label ?? Ue.code, "aria-label": `Language: ${Ue.label ?? Ue.code}`, "aria-busy": Vt || void 0, onClick: () => {
|
|
5858
5858
|
z(!1), Ue.onClick();
|
|
5859
5859
|
}, style: { position: "relative" }, children: [
|
|
5860
5860
|
/* @__PURE__ */ i("span", { style: { fontSize: me === "sm" ? 17 : 21, lineHeight: 1 }, children: Ue.flag }),
|
|
5861
|
-
|
|
5862
|
-
] }) : /* @__PURE__ */ i(
|
|
5861
|
+
Vt && /* @__PURE__ */ i("span", { style: { position: "absolute", right: 2, bottom: 2, display: "flex", borderRadius: 999, background: "rgba(5,6,21,.7)", padding: 1 }, children: /* @__PURE__ */ i(lt, { size: 11, color: "#eef0f8", track: "rgba(255,255,255,.25)" }) })
|
|
5862
|
+
] }) : /* @__PURE__ */ i(Yn, { flag: Ue.flag, code: Ue.code, label: Ue.label, bordered: !1, size: me, onClick: Ue.onClick, style: w }), Xr = { on: !1, title: "Voices", onClick: () => {
|
|
5863
5863
|
}, busy: re.voiceWaiting || St }, [La, ka] = L(!1);
|
|
5864
5864
|
D(() => {
|
|
5865
5865
|
O.t > 0.3 && ka(!0);
|
|
5866
5866
|
}, [O.t]);
|
|
5867
|
-
const ja = !Qe && u && ie && (n != null && n.allowDownload) && !fe ? /* @__PURE__ */ i(ri, { src:
|
|
5868
|
-
/* @__PURE__ */ i(
|
|
5867
|
+
const ja = !Qe && u && ie && (n != null && n.allowDownload) && !fe ? /* @__PURE__ */ i(ri, { src: bn(e.origin, ie, "video", e.cred), t: Gt(O, he), playing: O.playing && !St, seekN: O.seekN, onToggle: O.has ? Rt : void 0 }, ie) : null, mn = !Qe && u && ((Zs = (Fs = n == null ? void 0 : n.job) == null ? void 0 : Fs.source) == null ? void 0 : Zs.kind) === "url" && bo(n.job.source.url) ? n.job.source.url : null, Nn = mn ? Ri(mn) : null, es = ze(() => Nn ? Do(Nn) : void 0, [Nn]), za = es ? /* @__PURE__ */ i(ri, { setup: es, seekOver: 1, t: Gt(O, he) + (((qs = (Gs = n == null ? void 0 : n.job) == null ? void 0 : Gs.crop) == null ? void 0 : qs.startS) ?? 0), playing: O.playing && !St, seekN: O.seekN, onToggle: O.has ? Rt : void 0 }, Nn) : mn ? /* @__PURE__ */ i(Co, { url: mn, t: Gt(O, he) + (((Js = (Ks = n == null ? void 0 : n.job) == null ? void 0 : Ks.crop) == null ? void 0 : Js.startS) ?? 0), playing: O.playing && !St, seekN: O.seekN, title: qe }) : null, Ia = O.has ? /* @__PURE__ */ g("div", { className: "txyt vsp-follow", children: [
|
|
5868
|
+
/* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: Rt, style: { cursor: "pointer" } }),
|
|
5869
|
+
/* @__PURE__ */ i("div", { className: `txyt__paused${O.playing ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Mn, { size: 44 }) }) })
|
|
5870
|
+
] }) : null, ts = Qe ? /* @__PURE__ */ g(xe, { children: [
|
|
5871
|
+
/* @__PURE__ */ i(xc, { ytId: Qe, title: qe, t: Ma, playing: O.playing && !St, waiting: re.on && !!O.timed && !!O.preparing, seekN: O.seekN, onTime: (w) => {
|
|
5869
5872
|
var me, Pe, We;
|
|
5870
5873
|
return (We = O.videoAt) == null ? void 0 : We.call(O, w - (((Pe = (me = n == null ? void 0 : n.job) == null ? void 0 : me.crop) == null ? void 0 : Pe.startS) ?? 0));
|
|
5871
|
-
}, onToggle: O.has ?
|
|
5874
|
+
}, onToggle: O.has ? Rt : void 0, onAd: Hn, lead: Xe ? At.lead : void 0 }),
|
|
5872
5875
|
/* @__PURE__ */ g("div", { className: "vsp-poster", "aria-hidden": "true", style: { opacity: La ? 0 : 1 }, children: [
|
|
5873
5876
|
/* @__PURE__ */ i("div", { className: "vsp-poster__img", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Qe}/hqdefault.jpg)` } }),
|
|
5874
|
-
/* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(
|
|
5877
|
+
/* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Mn, { size: 44 }) })
|
|
5875
5878
|
] })
|
|
5876
5879
|
] }) : u ? /* @__PURE__ */ g(xe, { children: [
|
|
5877
5880
|
/* @__PURE__ */ i("div", { className: "vsp-idle__pic vsp-idle__pic--brand" }),
|
|
5881
|
+
Ia,
|
|
5878
5882
|
za,
|
|
5879
5883
|
ja
|
|
5880
|
-
] }) : null, ns =
|
|
5884
|
+
] }) : null, ns = Pt && Qe && !te ? /* @__PURE__ */ i(gc, { ytId: Qe, title: qe, radius: 14, large: !0, style: s ? void 0 : { margin: "8px 20px 2px" }, picture: ts, children: /* @__PURE__ */ i(su, { pos: Fr, transport: Jr, chip: nr({ ...tr, width: 64, height: 28, minHeight: 28, padding: "0 8px" }, "sm"), voices: Xr, onFull: () => {
|
|
5881
5885
|
un(!0), K(!0);
|
|
5882
|
-
}, copied: null }) }) : null, et = O.wordSync ?
|
|
5886
|
+
}, copied: null }) }) : null, et = O.wordSync ? $l(he, O.idx, O.t) ? he[O.idx] : void 0 : he[O.idx];
|
|
5883
5887
|
for (const w of he) for (const [me, Pe] of Object.entries(w.translations)) Pe && A.current.set(`${w.sentenceId ?? w.start}|${me}`, Pe);
|
|
5884
5888
|
const rs = (w, me) => w.translations[me] || A.current.get(`${w.sentenceId ?? w.start}|${me}`) || null, rr = (w, me) => !w || !me || w.language === me || !!rs(w, me), zt = rr(et, J) ? J : rr(et, F.current) ? F.current : J;
|
|
5885
5889
|
et && rr(et, zt) && (F.current = zt);
|
|
5886
|
-
const ss = et && zt && et.language !== zt ? rs(et, zt) : null,
|
|
5887
|
-
|
|
5890
|
+
const ss = et && zt && et.language !== zt ? rs(et, zt) : null, Oa = et && ss && zt && !et.translations[zt] ? Object.assign([...he], { [O.idx]: { ...et, translations: { ...et.translations, [zt]: ss } } }) : he, yn = et ? ra(Oa, O.idx, zt) : [], Tn = Te ? Te === "on" : !u || re.on || !Ce || Ce === q, is = Tn ? mi(O, O.idx, yn) : null, as = yn.map((w, me) => ({ t: w.text, sp: me < yn.length - 1 ? " " : "", dim: is != null && me > is })), wn = pe ? pe === "on" : u ? !1 : yl(ce, he, v == null ? void 0 : v.settings), os = { lang: J, subtitles: Se, speakerLabels: wn, wordHighlight: Tn, translateAudio: we, voices: Re ? "cloned" : "synthetic", removeBackground: Q }, ba = JSON.stringify(os), vn = k(t.onSettingsChange);
|
|
5891
|
+
vn.current = t.onSettingsChange, D(() => {
|
|
5888
5892
|
var w;
|
|
5889
|
-
(w =
|
|
5890
|
-
}, [
|
|
5891
|
-
const
|
|
5893
|
+
(w = vn.current) == null || w.call(vn, os);
|
|
5894
|
+
}, [ba]);
|
|
5895
|
+
const Ln = et && et.speaker >= 0 && wn ? Rr(ce, et.speaker) : null, [Ca, ls] = L(!1), [sr, cs] = L(null), [xa, us] = L(null), ir = k(void 0);
|
|
5892
5896
|
D(() => () => window.clearTimeout(ir.current), []);
|
|
5893
5897
|
const ar = k(void 0);
|
|
5894
5898
|
D(() => () => window.clearTimeout(ar.current), []);
|
|
@@ -5896,7 +5900,7 @@ function Du(t) {
|
|
|
5896
5900
|
if (t.shareUrl) return t.shareUrl(w);
|
|
5897
5901
|
const me = new URL(window.location.href);
|
|
5898
5902
|
return w != null && w > 0 ? me.searchParams.set("t", String(w)) : me.searchParams.delete("t"), me.href;
|
|
5899
|
-
},
|
|
5903
|
+
}, kn = k(l.startAt), or = (w) => {
|
|
5900
5904
|
if (O.seekFrac && O.dur > 0) {
|
|
5901
5905
|
O.seekFrac(Math.min(1, w / O.dur));
|
|
5902
5906
|
return;
|
|
@@ -5906,17 +5910,17 @@ function Du(t) {
|
|
|
5906
5910
|
O.seekRow(me);
|
|
5907
5911
|
}, hs = k(!1);
|
|
5908
5912
|
D(() => {
|
|
5909
|
-
const w =
|
|
5913
|
+
const w = kn.current;
|
|
5910
5914
|
w == null || hs.current || !O.has || he.length === 0 || (hs.current = !0, or(w));
|
|
5911
5915
|
}, [O.has, he.length]), D(() => {
|
|
5912
|
-
const w =
|
|
5913
|
-
w == null || !O.playing || (
|
|
5916
|
+
const w = kn.current;
|
|
5917
|
+
w == null || !O.playing || (kn.current = null, Math.abs(O.t - w) > 2 && or(w));
|
|
5914
5918
|
}, [O.playing]);
|
|
5915
|
-
const
|
|
5916
|
-
Ke.current = !0,
|
|
5919
|
+
const Sa = (w) => {
|
|
5920
|
+
Ke.current = !0, kn.current = null, or(Math.max(0, w));
|
|
5917
5921
|
};
|
|
5918
5922
|
t.handle.current = {
|
|
5919
|
-
seek: (w) =>
|
|
5923
|
+
seek: (w) => Sa(w),
|
|
5920
5924
|
play: () => {
|
|
5921
5925
|
Ke.current = !0, jt && !Ze.current.playing && Ze.current.toggle();
|
|
5922
5926
|
},
|
|
@@ -5940,17 +5944,17 @@ function Du(t) {
|
|
|
5940
5944
|
const me = () => {
|
|
5941
5945
|
const We = Ms.current;
|
|
5942
5946
|
if (!We) return;
|
|
5943
|
-
const Nt = Ze.current, gt = { t: Nt.t, dur: Nt.dur, playing: Nt.playing, idx: Nt.idx, seekN: Nt.seekN, lang: gs.current, muted: Nt.muted },
|
|
5944
|
-
|
|
5947
|
+
const Nt = Ze.current, gt = { t: Nt.t, dur: Nt.dur, playing: Nt.playing, idx: Nt.idx, seekN: Nt.seekN, lang: gs.current, muted: Nt.muted }, On = `${gt.t.toFixed(2)}|${gt.dur}|${gt.playing}|${gt.idx}|${gt.seekN}|${gt.lang}|${gt.muted}`;
|
|
5948
|
+
On !== w && (w = On, We(gt));
|
|
5945
5949
|
};
|
|
5946
5950
|
me();
|
|
5947
|
-
const Pe = window.setInterval(me,
|
|
5951
|
+
const Pe = window.setInterval(me, Su);
|
|
5948
5952
|
return () => window.clearInterval(Pe);
|
|
5949
5953
|
}, []);
|
|
5950
|
-
const
|
|
5954
|
+
const Da = () => t.onShare ? t.onShare() : Qr(ds(null), qe, () => {
|
|
5951
5955
|
window.clearTimeout(ar.current), ls(!0), ar.current = window.setTimeout(() => ls(!1), 2200);
|
|
5952
5956
|
}), fs = (w, me, Pe) => {
|
|
5953
|
-
const We = br.find((
|
|
5957
|
+
const We = br.find((On) => On.key === w), Nt = sr === w, gt = xa === w;
|
|
5954
5958
|
return /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", "aria-busy": Nt || void 0, style: sr && !Nt ? { opacity: 0.45, pointerEvents: "none" } : void 0, onClick: () => {
|
|
5955
5959
|
sr || (cs(w), Promise.resolve().then(() => Yt(w)).then(() => {
|
|
5956
5960
|
us(w), window.clearTimeout(ir.current), ir.current = window.setTimeout(() => us(null), 1600);
|
|
@@ -5964,16 +5968,16 @@ function Du(t) {
|
|
|
5964
5968
|
] }),
|
|
5965
5969
|
/* @__PURE__ */ i(oe, { d: gt ? X.check : X.downloaded, size: 17, sw: 1.6, style: { flex: "none", color: gt ? "var(--brand)" : "var(--ink-62)" } })
|
|
5966
5970
|
] });
|
|
5967
|
-
},
|
|
5971
|
+
}, Aa = /* @__PURE__ */ g("span", { className: "vs-sheet__title", style: { position: "relative" }, children: [
|
|
5968
5972
|
" ",
|
|
5969
5973
|
/* @__PURE__ */ g("button", { type: "button", onClick: () => b("main"), "aria-label": "Back", style: { position: "absolute", left: -6, top: "50%", transform: "translateY(-50%)", display: "inline-flex", alignItems: "center", gap: 2, padding: "4px 6px 4px 0", border: 0, background: "none", color: "var(--ink-96)", fontFamily: "var(--vs-font-sans)", fontSize: 15, fontWeight: 600, letterSpacing: 0, lineHeight: 1, whiteSpace: "nowrap", cursor: "pointer" }, children: [
|
|
5970
5974
|
/* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 18, sw: 1.8 }),
|
|
5971
5975
|
"Back"
|
|
5972
5976
|
] })
|
|
5973
|
-
] }),
|
|
5977
|
+
] }), jn = /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), Ea = { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO", export: "EXPORT" }[T], zn = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, lr = u ? /* @__PURE__ */ i(Jt, { open: ee, onClose: () => z(!1), title: Ea, titleNode: T === "main" ? void 0 : Aa, doneLabel: Ft.done, kind: T === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(vr, { children: T === "lang" ? /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
5974
5978
|
/* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children: Gr.search }),
|
|
5975
5979
|
Gr.list
|
|
5976
|
-
] }) : T === "subs" ? /* @__PURE__ */ g("div", { style:
|
|
5980
|
+
] }) : T === "subs" ? /* @__PURE__ */ g("div", { style: zn, children: [
|
|
5977
5981
|
/* @__PURE__ */ g("div", { className: "srow", children: [
|
|
5978
5982
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5979
5983
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Show subtitles" }),
|
|
@@ -5986,16 +5990,16 @@ function Du(t) {
|
|
|
5986
5990
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Show speaker labels" }),
|
|
5987
5991
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Who is speaking, before each line" })
|
|
5988
5992
|
] }),
|
|
5989
|
-
/* @__PURE__ */ i(Tt, { checked:
|
|
5993
|
+
/* @__PURE__ */ i(Tt, { checked: wn, onChange: (w) => le(w ? "on" : "off"), label: "Show speaker labels" })
|
|
5990
5994
|
] }),
|
|
5991
5995
|
/* @__PURE__ */ g("div", { className: "srow", children: [
|
|
5992
5996
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5993
5997
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Highlight words" }),
|
|
5994
5998
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Follow each word as it is spoken" })
|
|
5995
5999
|
] }),
|
|
5996
|
-
/* @__PURE__ */ i(Tt, { checked:
|
|
6000
|
+
/* @__PURE__ */ i(Tt, { checked: Tn, onChange: (w) => je(w ? "on" : "off"), label: "Highlight words" })
|
|
5997
6001
|
] })
|
|
5998
|
-
] }) : T === "audio" ? /* @__PURE__ */ g("div", { style:
|
|
6002
|
+
] }) : T === "audio" ? /* @__PURE__ */ g("div", { style: zn, children: [
|
|
5999
6003
|
/* @__PURE__ */ g("div", { className: "srow", children: [
|
|
6000
6004
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6001
6005
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Translate audio" }),
|
|
@@ -6012,36 +6016,36 @@ function Du(t) {
|
|
|
6012
6016
|
] }),
|
|
6013
6017
|
/* @__PURE__ */ g("div", { className: "srow", children: [
|
|
6014
6018
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6015
|
-
/* @__PURE__ */ i("div", { className: "srow__t", children:
|
|
6016
|
-
/* @__PURE__ */ i("div", { className: "srow__s", children:
|
|
6019
|
+
/* @__PURE__ */ i("div", { className: "srow__t", children: Un }),
|
|
6020
|
+
/* @__PURE__ */ i("div", { className: "srow__s", children: Po(Q, Xn, "video", re.on ? 0 : Kn.untilS) })
|
|
6017
6021
|
] }),
|
|
6018
|
-
/* @__PURE__ */ i(Tt, { checked: Q && ht, onChange: H, label:
|
|
6022
|
+
/* @__PURE__ */ i(Tt, { checked: Q && ht, onChange: H, label: Un, disabled: !ht || Xn === "unavailable" && !Q })
|
|
6019
6023
|
] })
|
|
6020
|
-
] }) : T === "export" ? /* @__PURE__ */ g("div", { style:
|
|
6024
|
+
] }) : T === "export" ? /* @__PURE__ */ g("div", { style: zn, children: [
|
|
6021
6025
|
fs("srt", "Subtitles", "SRT / VTT caption cues, ready for a video editor or a player"),
|
|
6022
6026
|
fs("pdf", "PDF", "Formatted transcript in paragraphs, with timestamps and speaker labels")
|
|
6023
|
-
] }) : /* @__PURE__ */ i("div", { style:
|
|
6027
|
+
] }) : /* @__PURE__ */ i("div", { style: zn, children: [
|
|
6024
6028
|
Ue.can && x.language && /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", onClick: () => b("lang"), children: [
|
|
6025
6029
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6026
6030
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Language" }),
|
|
6027
6031
|
/* @__PURE__ */ i("div", { className: "srow__s", children: J ? `Translated to ${Ue.label ?? J.toUpperCase()}` : "Original language" })
|
|
6028
6032
|
] }),
|
|
6029
6033
|
/* @__PURE__ */ i("span", { style: { fontSize: 18, lineHeight: 1 }, children: Ue.flag }),
|
|
6030
|
-
|
|
6034
|
+
jn
|
|
6031
6035
|
] }, "lang"),
|
|
6032
6036
|
x.subtitles && /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", onClick: () => b("subs"), children: [
|
|
6033
6037
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6034
6038
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Subtitles" }),
|
|
6035
6039
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Se ? "On · speaker labels and word highlighting" : "Off" })
|
|
6036
6040
|
] }),
|
|
6037
|
-
|
|
6041
|
+
jn
|
|
6038
6042
|
] }, "subs"),
|
|
6039
6043
|
x.audio && /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", onClick: () => b("audio"), children: [
|
|
6040
6044
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6041
6045
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Audio" }),
|
|
6042
6046
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Ta })
|
|
6043
6047
|
] }),
|
|
6044
|
-
|
|
6048
|
+
jn
|
|
6045
6049
|
] }, "audio"),
|
|
6046
6050
|
x.export && vt && !!ie && /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", onClick: () => b("export"), children: [
|
|
6047
6051
|
/* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
@@ -6051,7 +6055,7 @@ function Du(t) {
|
|
|
6051
6055
|
] }),
|
|
6052
6056
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Subtitles (SRT / VTT) or a PDF of the transcript" })
|
|
6053
6057
|
] }),
|
|
6054
|
-
|
|
6058
|
+
jn
|
|
6055
6059
|
] }, "export")
|
|
6056
6060
|
].filter(Boolean).flatMap((w, me) => me ? [/* @__PURE__ */ i("div", { className: "sdiv" }, `d${me}`), w] : [w]) }) }) }) : /* @__PURE__ */ i(Jt, { open: ee, onClose: () => z(!1), title: Ft.settings, doneLabel: Ft.done, drawer: s, children: /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: 2 }, children: [
|
|
6057
6061
|
Ue.can && /* @__PURE__ */ g(xe, { children: [
|
|
@@ -6069,7 +6073,7 @@ function Du(t) {
|
|
|
6069
6073
|
/* @__PURE__ */ i("div", { className: "sdiv" })
|
|
6070
6074
|
] }),
|
|
6071
6075
|
t.settingsExtra
|
|
6072
|
-
] }) }), Dt = te &&
|
|
6076
|
+
] }) }), Dt = te && Pt && (!!Qe || u) && /* @__PURE__ */ i(
|
|
6073
6077
|
oa,
|
|
6074
6078
|
{
|
|
6075
6079
|
page: (t.layout ?? "embed") === "page",
|
|
@@ -6080,10 +6084,10 @@ function Du(t) {
|
|
|
6080
6084
|
mute: { muted: O.muted, onToggle: Fn },
|
|
6081
6085
|
cc: x.subtitles ? { on: Se, onToggle: () => ve((w) => !w) } : void 0,
|
|
6082
6086
|
noFull: !x.fullscreen,
|
|
6083
|
-
ad:
|
|
6084
|
-
wait: tt && !qn ? /* @__PURE__ */ i(
|
|
6087
|
+
ad: gn,
|
|
6088
|
+
wait: tt && !qn ? /* @__PURE__ */ i(Cc, { state: tt, line: St ? as.map((w) => w.t + w.sp).join("") : null, onRetry: wa, onOriginal: va }) : O.edgeWait ? `Transcribing ${Math.round(U)}% — it plays on as more is written` : null,
|
|
6085
6089
|
pct: fe ? Math.round(U) : null,
|
|
6086
|
-
sub: Se && et ? { who:
|
|
6090
|
+
sub: Se && et ? { who: Ln ? Ur(ce, et.speaker) : null, color: Ln ? Ln.fg ?? `var(--lane-${Ln.lane})` : "#fff", words: as, cursor: mi(O, O.idx, yn) } : null,
|
|
6087
6091
|
chip: nr(s ? tr : { ...tr, width: 64, padding: "0 6px" }, s ? void 0 : "sm"),
|
|
6088
6092
|
transport: Jr,
|
|
6089
6093
|
picker: re.sheets,
|
|
@@ -6091,13 +6095,13 @@ function Du(t) {
|
|
|
6091
6095
|
voices: null,
|
|
6092
6096
|
voicesBtn: u ? null : Xr,
|
|
6093
6097
|
sheetOpen: re.sheetsOpen || ee,
|
|
6094
|
-
onShare: u && x.share ?
|
|
6098
|
+
onShare: u && x.share ? Da : void 0,
|
|
6095
6099
|
onSettings: u && x.settings ? () => {
|
|
6096
6100
|
re.closePicker(), z((w) => !w);
|
|
6097
6101
|
} : void 0,
|
|
6098
6102
|
compact: !!t.compact,
|
|
6099
6103
|
paused: { title: qe, summary: mt.state === "ready" ? mt.summary ?? null : null, share: x.share && (t.shareUrl || !t.onShare) ? { url: ds, at: O.t } : null },
|
|
6100
|
-
copied:
|
|
6104
|
+
copied: Ca ? /* @__PURE__ */ g("div", { className: "gfull__toast", "aria-live": "polite", children: [
|
|
6101
6105
|
/* @__PURE__ */ i(oe, { d: X.check, size: 13, sw: 2 }),
|
|
6102
6106
|
"Link copied"
|
|
6103
6107
|
] }) : rn ? /* @__PURE__ */ g("div", { className: "gfull__toast gfull__soundtip", "aria-live": "polite", children: [
|
|
@@ -6108,7 +6112,7 @@ function Du(t) {
|
|
|
6108
6112
|
Zr
|
|
6109
6113
|
] }) : re.on && (Xe ? Et.missing != null : O.silent) ? /* @__PURE__ */ g("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
|
|
6110
6114
|
/* @__PURE__ */ i(lt, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
|
|
6111
|
-
`${
|
|
6115
|
+
`${pn || "Translated"} voice is still being prepared · playing with subtitles`
|
|
6112
6116
|
] }) : null,
|
|
6113
6117
|
onTouch: () => {
|
|
6114
6118
|
un(!0), Wn();
|
|
@@ -6119,8 +6123,8 @@ function Du(t) {
|
|
|
6119
6123
|
}
|
|
6120
6124
|
);
|
|
6121
6125
|
D(() => {
|
|
6122
|
-
!u && te && !
|
|
6123
|
-
}, [u, te,
|
|
6126
|
+
!u && te && !Pt && (un(!1), K(!1));
|
|
6127
|
+
}, [u, te, Pt]);
|
|
6124
6128
|
const ps = fe && /* @__PURE__ */ g("div", { className: `pubprog${s ? " pubprog--desk" : ""}${m ? " pubprog--find" : ""}`, children: [
|
|
6125
6129
|
/* @__PURE__ */ g("div", { className: "pubprog__row", children: [
|
|
6126
6130
|
/* @__PURE__ */ i("span", { className: "l", children: `TRANSCRIBING ${U}%` }),
|
|
@@ -6129,20 +6133,20 @@ function Du(t) {
|
|
|
6129
6133
|
/* @__PURE__ */ i("span", { className: "s", children: it })
|
|
6130
6134
|
] }),
|
|
6131
6135
|
!s && /* @__PURE__ */ i("div", { className: "pubprog__bar", style: { marginTop: 8 }, children: /* @__PURE__ */ i("div", { style: { width: `${U}%` } }) })
|
|
6132
|
-
] }), cr = r && /* @__PURE__ */ i("div", { className: "hint", style: { padding: "30px 20px", textAlign: "center", fontSize: 13 }, children: "This link is no longer shared. Ask the person who sent it for a new one." }), ms = /* @__PURE__ */ i(
|
|
6136
|
+
] }), cr = r && /* @__PURE__ */ i("div", { className: "hint", style: { padding: "30px 20px", textAlign: "center", fontSize: 13 }, children: "This link is no longer shared. Ask the person who sent it for a new one." }), ms = /* @__PURE__ */ i(Fc, { model: ce, rows: he, player: jt ? O : { ...O, playRow: O.seekRow }, tail: Mt, tailFg: tn, running: fe, desk: s, feedRef: bt, listener: !0, showLabels: wn, find: j, findOpen: !s && m, lang: Ce, warm: an, onVisible: Ve, wordHl: Tn }), ur = /* @__PURE__ */ i(Hl, { error: d ?? W ?? (Zn && te ? null : O.error) ?? re.error, onClose: () => {
|
|
6133
6137
|
M(null), ye(), O.clearError(), re.clearError();
|
|
6134
6138
|
} }), Ns = [R ? It(R) : null, q ? q.toUpperCase() : null, se || "Read-only copy"].filter(Boolean).join(" · "), ys = (w) => /* @__PURE__ */ i("div", { className: "ctrans", children: re.noVoice ? re.noVoiceNote : /* @__PURE__ */ g(xe, { children: [
|
|
6135
6139
|
/* @__PURE__ */ g("div", { className: "ctrans__row", children: [
|
|
6136
6140
|
/* @__PURE__ */ i("span", { className: "ctrans__sp", "aria-hidden": "true" }),
|
|
6137
6141
|
/* @__PURE__ */ g("div", { className: "ctrans__mid", children: [
|
|
6138
6142
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Previous segment", title: "Previous segment", style: { opacity: O.idx <= 0 ? 0.3 : 1 }, onClick: O.prev, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 16, sw: 1.8 }) }),
|
|
6139
|
-
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : O.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (O.playing ? "Pause" : "Play"), disabled: !Ct, onClick: O.toggle, children: re.relang ? /* @__PURE__ */ i("span", { className: "ctrans__spin" }) : /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: 16, height: 16, fill: "currentColor", "aria-hidden": "true", style: O.playing ? void 0 : { marginLeft: 2 }, children: O.playing ?
|
|
6143
|
+
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : O.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (O.playing ? "Pause" : "Play"), disabled: !Ct, onClick: O.toggle, children: re.relang ? /* @__PURE__ */ i("span", { className: "ctrans__spin" }) : /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: 16, height: 16, fill: "currentColor", "aria-hidden": "true", style: O.playing ? void 0 : { marginLeft: 2 }, children: O.playing ? Sc : Dc }) }),
|
|
6140
6144
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: O.idx >= he.length - 1 ? 0.3 : 1 }, onClick: O.next, children: /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 16, sw: 1.8 }) })
|
|
6141
6145
|
] }),
|
|
6142
|
-
/* @__PURE__ */ i("span", { className: "ctrans__mute", children:
|
|
6146
|
+
/* @__PURE__ */ i("span", { className: "ctrans__mute", children: fn(36) })
|
|
6143
6147
|
] }),
|
|
6144
6148
|
/* @__PURE__ */ i("div", { className: "ctrans__scrub", children: fa(w) })
|
|
6145
|
-
] }) }),
|
|
6149
|
+
] }) }), _a = mc("ga", { tabs: Zt, cur: h, pref: (Xs = Zt[0]) == null ? void 0 : Xs.key, onPick: f }), Ts = Math.max(0, Math.min(100, Math.round(U))), Ya = Ye && /* @__PURE__ */ g("div", { className: "gfull gfull--hold", "data-theme": "dark", role: "status", "aria-live": "polite", children: [
|
|
6146
6150
|
Qe && /* @__PURE__ */ i("div", { className: "gfull__holdbg", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Qe}/hqdefault.jpg)` } }),
|
|
6147
6151
|
/* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */ g(xe, { children: [
|
|
6148
6152
|
qe && /* @__PURE__ */ i("div", { className: "gfull__holdt", children: qe }),
|
|
@@ -6154,25 +6158,25 @@ function Du(t) {
|
|
|
6154
6158
|
] }),
|
|
6155
6159
|
/* @__PURE__ */ i("div", { className: "gfull__holdn", children: "The video starts as soon as the first lines are transcribed." })
|
|
6156
6160
|
] }) : /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) })
|
|
6157
|
-
] }), ws = u && n && (fe || ae === "cropping") ? Math.max(0, Math.min(100, Math.round(U))) : null,
|
|
6158
|
-
|
|
6161
|
+
] }), ws = u && n && (fe || ae === "cropping") ? Math.max(0, Math.min(100, Math.round(U))) : null, In = k(t.onProgress);
|
|
6162
|
+
In.current = t.onProgress, D(() => {
|
|
6159
6163
|
var w;
|
|
6160
|
-
(w =
|
|
6164
|
+
(w = In.current) == null || w.call(In, ws);
|
|
6161
6165
|
}, [ws]);
|
|
6162
|
-
const [
|
|
6166
|
+
const [Ua, dr] = L(!1), hr = !!Dt && !Ye && (Xe ? !!O.ended : !O.playing && O.dur > 0 && O.t >= O.dur - 0.5);
|
|
6163
6167
|
D(() => {
|
|
6164
6168
|
hr || dr(!1);
|
|
6165
6169
|
}, [hr]);
|
|
6166
|
-
const
|
|
6170
|
+
const Ra = t.endCard !== !1 && hr && !Ua && /* @__PURE__ */ i(pu, { options: { appUrl: t.appUrl, ...t.endCard || {} }, onStarted: t.onStarted, onClose: () => dr(!0), onReplay: () => {
|
|
6167
6171
|
dr(!0), Ke.current = !0, O.seekFrac ? O.seekFrac(0) : O.seekRow(0), O.playing || O.toggle();
|
|
6168
6172
|
} });
|
|
6169
6173
|
if (u) return /* @__PURE__ */ g(xe, { children: [
|
|
6170
|
-
r ? /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark", children: cr }) :
|
|
6171
|
-
|
|
6174
|
+
r ? /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark", children: cr }) : Ya || Dt || /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark" }),
|
|
6175
|
+
Ra,
|
|
6172
6176
|
ur
|
|
6173
6177
|
] });
|
|
6174
6178
|
if (s) {
|
|
6175
|
-
const w = jt && !
|
|
6179
|
+
const w = jt && !Pt && !r && /* @__PURE__ */ i("div", { className: "pubdeskctl", children: ys(!0) }), me = !r && (Zt.length > 0 || Pt || !!re.sidePanel || !!w);
|
|
6176
6180
|
return /* @__PURE__ */ g(xe, { children: [
|
|
6177
6181
|
/* @__PURE__ */ i("div", { className: "dhead dhead--listener dhead--cols", children: /* @__PURE__ */ g("div", { className: "gcolhead", children: [
|
|
6178
6182
|
/* @__PURE__ */ i("div", { className: "gcolhead__main", children: /* @__PURE__ */ g("div", { className: "gcolhead__col", children: [
|
|
@@ -6192,14 +6196,14 @@ function Du(t) {
|
|
|
6192
6196
|
p && /* @__PURE__ */ i("div", { className: "pubflash", children: p }),
|
|
6193
6197
|
!r && /* @__PURE__ */ i("div", { className: "listenerlive__inner", style: { flex: 1, minHeight: 0, display: "flex", flexDirection: "column", marginTop: 6 }, children: ms }),
|
|
6194
6198
|
!r && /* @__PURE__ */ g("div", { className: "listenerlive__inner gdeskbar", "data-transport": "1", children: [
|
|
6195
|
-
Ue.can && /* @__PURE__ */ i("span", { className: "barchip", style: Ue.active ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)", borderRadius: 12 } : void 0, children: /* @__PURE__ */ i(
|
|
6199
|
+
Ue.can && /* @__PURE__ */ i("span", { className: "barchip", style: Ue.active ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)", borderRadius: 12 } : void 0, children: /* @__PURE__ */ i(Yn, { flag: Ue.flag, code: Ue.code, label: Ue.label, bordered: !1, onClick: Ue.onClick }) }),
|
|
6196
6200
|
Hr
|
|
6197
6201
|
] })
|
|
6198
6202
|
] }),
|
|
6199
|
-
me && /* @__PURE__ */ g(
|
|
6203
|
+
me && /* @__PURE__ */ g(Tc, { id: "ga", className: "listenerside", gap: 20, plain: !0, children: [
|
|
6200
6204
|
!re.sidePanel && w,
|
|
6201
6205
|
!re.sidePanel && ns,
|
|
6202
|
-
!re.sidePanel && Zt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(
|
|
6206
|
+
!re.sidePanel && Zt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(Nc, { col: _a, order: ["summary", "export"], onPick: f, grip: { summary: 40, export: 28 }, render: (Pe) => /* @__PURE__ */ i(ei, { panel: !0, children: Wr(Pe) }) }) }),
|
|
6203
6207
|
re.sidePanel
|
|
6204
6208
|
] })
|
|
6205
6209
|
] }),
|
|
@@ -6209,15 +6213,15 @@ function Du(t) {
|
|
|
6209
6213
|
ur
|
|
6210
6214
|
] });
|
|
6211
6215
|
}
|
|
6212
|
-
const
|
|
6216
|
+
const Pa = Zt.length > 0 && !m && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */ g(ei, { panel: !0, children: [
|
|
6213
6217
|
/* @__PURE__ */ i(ea, { tabs: Zt, current: h, onPick: f, gap: h !== "none" }),
|
|
6214
6218
|
h !== "none" && Wr(h)
|
|
6215
6219
|
] }) });
|
|
6216
6220
|
return /* @__PURE__ */ g(xe, { children: [
|
|
6217
|
-
/* @__PURE__ */ i(
|
|
6221
|
+
/* @__PURE__ */ i(au, { dark: a, title: n ? qe : "", subline: n ? Ns : "", onOptions: () => z(!0), optionsActive: ee }),
|
|
6218
6222
|
cr,
|
|
6219
6223
|
ps,
|
|
6220
|
-
!r &&
|
|
6224
|
+
!r && Pa,
|
|
6221
6225
|
!r && ns,
|
|
6222
6226
|
!r && /* @__PURE__ */ g("div", { style: { position: "relative", flex: 1, minHeight: 0, display: "flex", flexDirection: "column" }, children: [
|
|
6223
6227
|
_t,
|
|
@@ -6225,7 +6229,7 @@ function Du(t) {
|
|
|
6225
6229
|
p && /* @__PURE__ */ i("div", { className: "txflash", children: p })
|
|
6226
6230
|
] }),
|
|
6227
6231
|
!r && /* @__PURE__ */ g("div", { className: "gbottom", "data-transport": "1", children: [
|
|
6228
|
-
jt && !
|
|
6232
|
+
jt && !Pt && /* @__PURE__ */ i("div", { className: "pubctl", children: ys(!1) }),
|
|
6229
6233
|
/* @__PURE__ */ g("div", { className: "gbottom__bar", children: [
|
|
6230
6234
|
Ue.can && /* @__PURE__ */ i("div", { style: { flex: "none" }, children: nr({ width: 87 }, void 0) }),
|
|
6231
6235
|
/* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0 }, children: Hr })
|
|
@@ -6237,13 +6241,13 @@ function Du(t) {
|
|
|
6237
6241
|
ur
|
|
6238
6242
|
] });
|
|
6239
6243
|
}
|
|
6240
|
-
function
|
|
6244
|
+
function Eu(t) {
|
|
6241
6245
|
const [e, n] = L(null);
|
|
6242
6246
|
return D(() => {
|
|
6243
6247
|
if (!t || (e == null ? void 0 : e.url) === t && e.ok) return;
|
|
6244
6248
|
let r = !0, s;
|
|
6245
6249
|
const a = () => {
|
|
6246
|
-
|
|
6250
|
+
oo(t).then((o) => {
|
|
6247
6251
|
r && (n({ url: t, ok: o }), o || (s = setTimeout(a, 3e3)));
|
|
6248
6252
|
});
|
|
6249
6253
|
};
|
|
@@ -6252,62 +6256,62 @@ function Au(t) {
|
|
|
6252
6256
|
};
|
|
6253
6257
|
}, [t, (e == null ? void 0 : e.url) === t && (e == null ? void 0 : e.ok)]), !t || (e == null ? void 0 : e.url) !== t ? "unknown" : e.ok ? "yes" : "no";
|
|
6254
6258
|
}
|
|
6255
|
-
function
|
|
6259
|
+
function Fu({ site: t, size: e = 16, tinted: n = !1, style: r, className: s }) {
|
|
6256
6260
|
return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: e, height: e, "aria-hidden": "true", className: s, style: { flex: "none", display: "block", color: n ? t.color : void 0, ...r }, children: /* @__PURE__ */ i("path", { d: t.glyph, fill: "currentColor", fillRule: "evenodd" }) });
|
|
6257
6261
|
}
|
|
6258
6262
|
export {
|
|
6259
|
-
|
|
6263
|
+
uc as ExportPanel,
|
|
6260
6264
|
oa as FullVideo,
|
|
6261
|
-
|
|
6262
|
-
|
|
6263
|
-
|
|
6264
|
-
|
|
6265
|
-
|
|
6266
|
-
|
|
6267
|
-
|
|
6268
|
-
|
|
6269
|
-
|
|
6270
|
-
|
|
6271
|
-
|
|
6265
|
+
su as MiniPlayer,
|
|
6266
|
+
Ac as MuteButton,
|
|
6267
|
+
Bc as NO_SEEK,
|
|
6268
|
+
Sc as PAUSE_D,
|
|
6269
|
+
Dc as PLAY_D,
|
|
6270
|
+
Hc as PUB_SIDE,
|
|
6271
|
+
Hu as PanelSeek,
|
|
6272
|
+
wl as PlayerApiProvider,
|
|
6273
|
+
Un as REMOVE_BG_LABEL,
|
|
6274
|
+
Uo as REMOVE_BG_NOTE,
|
|
6275
|
+
Wl as ReplayScrub,
|
|
6272
6276
|
Ui as SITES,
|
|
6273
|
-
|
|
6274
|
-
|
|
6275
|
-
|
|
6276
|
-
|
|
6277
|
-
|
|
6278
|
-
|
|
6279
|
-
|
|
6280
|
-
|
|
6281
|
-
|
|
6282
|
-
|
|
6277
|
+
Fu as SiteIcon,
|
|
6278
|
+
ec as SpeakerCast,
|
|
6279
|
+
Mc as SummaryPanel,
|
|
6280
|
+
Vu as Transport,
|
|
6281
|
+
Zc as TxFind,
|
|
6282
|
+
Fc as TxLines,
|
|
6283
|
+
Wu as VocalStackPlayer,
|
|
6284
|
+
tc as VoiceSheetBody,
|
|
6285
|
+
xc as YtFollow,
|
|
6286
|
+
Po as bedNote,
|
|
6283
6287
|
un as browserFull,
|
|
6284
|
-
|
|
6285
|
-
|
|
6288
|
+
Lo as hostOfUrl,
|
|
6289
|
+
Qt as lineEnd,
|
|
6286
6290
|
ra as lineWords,
|
|
6287
6291
|
Gt as pictureT,
|
|
6288
|
-
|
|
6289
|
-
|
|
6290
|
-
|
|
6292
|
+
Dn as placePosition,
|
|
6293
|
+
An as realFull,
|
|
6294
|
+
Qu as setErrorReporter,
|
|
6291
6295
|
yi as setFullTarget,
|
|
6292
|
-
|
|
6293
|
-
|
|
6294
|
-
|
|
6296
|
+
Bu as siteById,
|
|
6297
|
+
ko as siteOf,
|
|
6298
|
+
zc as snapPosition,
|
|
6295
6299
|
mi as spokenWordOf,
|
|
6296
|
-
|
|
6300
|
+
$o as trackPlan,
|
|
6297
6301
|
Wi as useApi,
|
|
6298
|
-
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6302
|
+
ac as useArchiveVoice,
|
|
6303
|
+
qo as useBackgroundBed,
|
|
6304
|
+
Rc as useDuck,
|
|
6305
|
+
Gc as useFindPull,
|
|
6306
|
+
Ec as useFlash,
|
|
6307
|
+
Bt as usePlayerApi,
|
|
6304
6308
|
$i as useSeparatedTrack,
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6309
|
+
dc as useSummaryIn,
|
|
6310
|
+
Sl as useTranscript,
|
|
6311
|
+
$c as useTxPlayer,
|
|
6312
|
+
Wc as useTxVoice,
|
|
6313
|
+
ql as useViewportTranslation,
|
|
6314
|
+
sc as useVoiceCatalogue,
|
|
6315
|
+
Pc as useYtLead
|
|
6312
6316
|
};
|
|
6313
6317
|
//# sourceMappingURL=index.js.map
|