@vocalstack/player 0.1.0-alpha.57 → 0.1.0-alpha.58
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 +460 -460
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var uo = Object.defineProperty;
|
|
2
2
|
var ho = (t, e, n) => e in t ? uo(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
|
-
var
|
|
3
|
+
var ge = (t, e, n) => ho(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
4
|
import { jsx as i, jsxs as m, Fragment as xe } from "react/jsx-runtime";
|
|
5
|
-
import { useState as z, useRef as w, useEffect as x, useLayoutEffect as tn, createContext as Hi, useMemo as ze, useContext as fo, useCallback as Je, Fragment as
|
|
5
|
+
import { useState as z, useRef as w, useEffect as x, useLayoutEffect as tn, createContext as Hi, useMemo as ze, useContext as fo, useCallback as Je, Fragment as go, forwardRef as Mo, useImperativeHandle as mo } from "react";
|
|
6
6
|
import { createPortal as po } from "react-dom";
|
|
7
7
|
import { VocalStackError as Wi, VocalStack as Fi } from "@vocalstack/js-sdk";
|
|
8
8
|
const Zi = "https://vocalstack.com", yo = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzU1YWJlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", No = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDVCOEY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzI0NUI4RjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZWM2MzRkIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", To = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojNTVhYmU1O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2Y3ODQ3MiIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==", vo = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojMjQ1YjhmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDViOGY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==";
|
|
@@ -62,7 +62,7 @@ function ko({ size: t = 15 }) {
|
|
|
62
62
|
function xt({ size: t = 13 }) {
|
|
63
63
|
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" }) });
|
|
64
64
|
}
|
|
65
|
-
function
|
|
65
|
+
function gt({ size: t = 15, color: e = "currentColor", track: n = "rgba(127,127,127,.35)", sw: r }) {
|
|
66
66
|
return /* @__PURE__ */ i(
|
|
67
67
|
"span",
|
|
68
68
|
{
|
|
@@ -111,8 +111,8 @@ function br({ value: t, onChange: e, options: n, size: r, bordered: s = !0, fill
|
|
|
111
111
|
const d = o.current;
|
|
112
112
|
if (!d || typeof ResizeObserver > "u") return;
|
|
113
113
|
const h = new ResizeObserver(() => {
|
|
114
|
-
const
|
|
115
|
-
|
|
114
|
+
const g = d.querySelectorAll(".vs-switch__opt")[u];
|
|
115
|
+
g && c({ left: g.offsetLeft, width: g.offsetWidth });
|
|
116
116
|
});
|
|
117
117
|
return h.observe(d), () => h.disconnect();
|
|
118
118
|
}, [u]), /* @__PURE__ */ m("div", { ref: o, role: "tablist", className: `vs-switch${r === "sm" ? " vs-switch--sm" : ""}${s ? "" : " vs-switch--borderless"}${a ? " vs-switch--fill" : ""}`, children: [
|
|
@@ -192,16 +192,16 @@ function bo({ children: t, ms: e }) {
|
|
|
192
192
|
if (!o || !l) return;
|
|
193
193
|
let c;
|
|
194
194
|
const u = () => {
|
|
195
|
-
const
|
|
196
|
-
return !
|
|
195
|
+
const g = l.closest(".vs-sheet"), M = g ? parseFloat(getComputedStyle(g).maxHeight) : NaN;
|
|
196
|
+
return !g || !Number.isFinite(M) ? 1 / 0 : Math.max(0, M - (g.offsetHeight - l.offsetHeight));
|
|
197
197
|
}, d = () => {
|
|
198
|
-
const
|
|
199
|
-
if (
|
|
198
|
+
const g = l.closest(".vs-sheet-scrim");
|
|
199
|
+
if (g && g.clientHeight <= 460) {
|
|
200
200
|
clearTimeout(c), a(null);
|
|
201
201
|
return;
|
|
202
202
|
}
|
|
203
|
-
const
|
|
204
|
-
clearTimeout(c), a(Math.min(
|
|
203
|
+
const M = o.offsetHeight;
|
|
204
|
+
clearTimeout(c), a(Math.min(M, u())), M > u() && (c = setTimeout(() => a(M), e));
|
|
205
205
|
};
|
|
206
206
|
if (d(), typeof ResizeObserver > "u") return () => clearTimeout(c);
|
|
207
207
|
const h = new ResizeObserver(d);
|
|
@@ -214,11 +214,11 @@ function nn({ open: t, onClose: e, title: n, titleNode: r, note: s, doneLabel: a
|
|
|
214
214
|
const h = w(null);
|
|
215
215
|
return Io(h, t), x(() => {
|
|
216
216
|
if (!t) return;
|
|
217
|
-
const
|
|
218
|
-
|
|
217
|
+
const g = (M) => {
|
|
218
|
+
M.key === "Escape" && e();
|
|
219
219
|
};
|
|
220
|
-
return window.addEventListener("keydown",
|
|
221
|
-
}, [t, e]), t ? /* @__PURE__ */ i("div", { ref: h, className: `vs-sheet-scrim${l ? " drawer" : ""}${d ? " vs-sheet-scrim--sticky" : ""}`, onClick: d ? void 0 : e, children: /* @__PURE__ */ m("div", { className: `vs-sheet${u ? ` vs-sheet--${u}` : ""}`, role: "dialog", "aria-modal": "true", "aria-label": n, onClick: (
|
|
220
|
+
return window.addEventListener("keydown", g), () => window.removeEventListener("keydown", g);
|
|
221
|
+
}, [t, e]), t ? /* @__PURE__ */ i("div", { ref: h, className: `vs-sheet-scrim${l ? " drawer" : ""}${d ? " vs-sheet-scrim--sticky" : ""}`, onClick: d ? void 0 : e, children: /* @__PURE__ */ m("div", { className: `vs-sheet${u ? ` vs-sheet--${u}` : ""}`, role: "dialog", "aria-modal": "true", "aria-label": n, onClick: (g) => g.stopPropagation(), children: [
|
|
222
222
|
/* @__PURE__ */ i("div", { className: "vs-sheet__grip" }),
|
|
223
223
|
/* @__PURE__ */ m("div", { className: "vs-sheet__head", children: [
|
|
224
224
|
r ?? /* @__PURE__ */ i("span", { className: "vs-sheet__title", children: n }),
|
|
@@ -311,17 +311,17 @@ function Yo(t, e, n) {
|
|
|
311
311
|
}
|
|
312
312
|
class Uo {
|
|
313
313
|
constructor(e = {}) {
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
314
|
+
ge(this, "entries", /* @__PURE__ */ new Map());
|
|
315
|
+
ge(this, "wanted", []);
|
|
316
|
+
ge(this, "used", []);
|
|
317
|
+
ge(this, "fetcher");
|
|
318
|
+
ge(this, "concurrency");
|
|
319
|
+
ge(this, "keep");
|
|
320
|
+
ge(this, "retryMs");
|
|
321
|
+
ge(this, "now");
|
|
322
|
+
ge(this, "toUrl");
|
|
323
|
+
ge(this, "revoke");
|
|
324
|
+
ge(this, "onReady", () => {
|
|
325
325
|
});
|
|
326
326
|
this.fetcher = e.fetcher ?? (typeof fetch == "function" ? (n, r) => fetch(n, { signal: r }) : null), this.concurrency = Math.max(1, e.concurrency ?? 2), this.keep = Math.max(2, e.keep ?? 24), this.retryMs = e.retryMs ?? 4e3, this.now = e.now ?? (() => Date.now()), this.toUrl = e.toUrl ?? ((n) => URL.createObjectURL(n)), this.revoke = e.revoke ?? ((n) => {
|
|
327
327
|
try {
|
|
@@ -415,50 +415,50 @@ class Xi extends Error {
|
|
|
415
415
|
}
|
|
416
416
|
const rt = class rt {
|
|
417
417
|
constructor() {
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
418
|
+
ge(this, "el", null);
|
|
419
|
+
ge(this, "clips", /* @__PURE__ */ new Map());
|
|
420
|
+
ge(this, "order", []);
|
|
421
|
+
ge(this, "current", null);
|
|
422
|
+
ge(this, "currentPart", 0);
|
|
423
|
+
ge(this, "partBase", 0);
|
|
424
|
+
ge(this, "within", null);
|
|
425
|
+
ge(this, "playing", !1);
|
|
426
|
+
ge(this, "muted", !1);
|
|
427
|
+
ge(this, "rate", 1);
|
|
428
|
+
ge(this, "volume", 1);
|
|
429
|
+
ge(this, "finite", !1);
|
|
430
|
+
ge(this, "onSentence", () => {
|
|
431
431
|
});
|
|
432
|
-
|
|
432
|
+
ge(this, "onWaiting", () => {
|
|
433
433
|
});
|
|
434
|
-
|
|
434
|
+
ge(this, "onStarting", () => {
|
|
435
435
|
});
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
436
|
+
ge(this, "speakable", () => !0);
|
|
437
|
+
ge(this, "coming", () => !1);
|
|
438
|
+
ge(this, "gapBefore", () => 0);
|
|
439
|
+
ge(this, "flow", !1);
|
|
440
|
+
ge(this, "silentSpan", () => null);
|
|
441
|
+
ge(this, "lastDone", null);
|
|
442
|
+
ge(this, "rested", !1);
|
|
443
|
+
ge(this, "rest", null);
|
|
444
|
+
ge(this, "sequence", []);
|
|
445
|
+
ge(this, "seqAt", /* @__PURE__ */ new Map());
|
|
446
|
+
ge(this, "spoken", /* @__PURE__ */ new Set());
|
|
447
|
+
ge(this, "lastRead", null);
|
|
448
|
+
ge(this, "started", !1);
|
|
449
|
+
ge(this, "awaiting", null);
|
|
450
|
+
ge(this, "waitTimer", null);
|
|
451
|
+
ge(this, "onError", () => {
|
|
452
452
|
});
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
453
|
+
ge(this, "floor", 0);
|
|
454
|
+
ge(this, "loading", null);
|
|
455
|
+
ge(this, "readAhead", 0);
|
|
456
|
+
ge(this, "readAheadS", 0);
|
|
457
|
+
ge(this, "prefetch", new Uo());
|
|
458
|
+
ge(this, "warmed", /* @__PURE__ */ new Set());
|
|
459
|
+
ge(this, "startingSince", /* @__PURE__ */ new Map());
|
|
460
|
+
ge(this, "retries", /* @__PURE__ */ new Map());
|
|
461
|
+
ge(this, "retryTimer", null);
|
|
462
462
|
}
|
|
463
463
|
setSequence(e) {
|
|
464
464
|
e.length === this.sequence.length && e.every((n, r) => this.sequence[r] === n) || (this.sequence = e, this.seqAt = new Map(e.map((n, r) => [n, r])), this.order.sort((n, r) => this.rank(n) - this.rank(r)));
|
|
@@ -719,15 +719,15 @@ const rt = class rt {
|
|
|
719
719
|
if (a)
|
|
720
720
|
if (this.within = null, r.total > 1) {
|
|
721
721
|
const c = Array.from({ length: r.total }, (d, h) => {
|
|
722
|
-
var
|
|
723
|
-
return ((
|
|
722
|
+
var g;
|
|
723
|
+
return ((g = r.got.get(h)) == null ? void 0 : g.durationS) ?? 0;
|
|
724
724
|
}), u = c.reduce((d, h) => d + h, 0);
|
|
725
725
|
if (u > 0 && c.every((d) => d > 0)) {
|
|
726
726
|
const d = a.frac * u;
|
|
727
|
-
let h = 0,
|
|
728
|
-
for (; h < c.length - 1 &&
|
|
729
|
-
if (o = -(d -
|
|
730
|
-
this.partBase =
|
|
727
|
+
let h = 0, g = 0;
|
|
728
|
+
for (; h < c.length - 1 && g + c[h] <= d; ) g += c[h++];
|
|
729
|
+
if (o = -(d - g), h !== n) {
|
|
730
|
+
this.partBase = g, this.startPartAt(e, h, d - g);
|
|
731
731
|
return;
|
|
732
732
|
}
|
|
733
733
|
}
|
|
@@ -760,7 +760,7 @@ const rt = class rt {
|
|
|
760
760
|
if (this.rank(c) <= l || !this.speakable(c)) continue;
|
|
761
761
|
const u = this.clips.get(c);
|
|
762
762
|
if (u)
|
|
763
|
-
for (const d of [...u.got.keys()].sort((h,
|
|
763
|
+
for (const d of [...u.got.keys()].sort((h, g) => h - g)) {
|
|
764
764
|
const h = u.got.get(d);
|
|
765
765
|
r.push(h), s += h.durationS || 0;
|
|
766
766
|
}
|
|
@@ -891,7 +891,7 @@ const rt = class rt {
|
|
|
891
891
|
this.onWaiting(null), this.onStarting(null), this.playing = !1, this.current = null, this.currentPart = 0, this.partBase = 0, this.loading = null, this.floor = 0, this.lastRead = null, this.started = !1, this.stopWaiting(), this.spoken.clear(), this.retryTimer && (clearTimeout(this.retryTimer), this.retryTimer = null), this.retries.clear(), this.prefetch.clear(), e && (e.pause(), e.removeAttribute("src"), e.load()), this.el = null;
|
|
892
892
|
}
|
|
893
893
|
};
|
|
894
|
-
|
|
894
|
+
ge(rt, "WAIT_MS", 15e3), ge(rt, "START_WAIT_MS", 4e3), ge(rt, "COMING_MS", 12e4), ge(rt, "SKEW_LINES", 3), ge(rt, "RETRIES", 4), ge(rt, "RETRY_MS", 1200), ge(rt, "STARTING_MS", 3e5);
|
|
895
895
|
let Cr = rt;
|
|
896
896
|
function ea(t, e) {
|
|
897
897
|
return e == null ? t.find((n) => !n.voiceKey) ?? null : t.find((n) => n.voiceKey === e) ?? t.find((n) => !n.voiceKey && n.voice === e) ?? null;
|
|
@@ -902,8 +902,8 @@ function $o(t, e, n, r = {}, s) {
|
|
|
902
902
|
if (!(a != null && a.length)) return [];
|
|
903
903
|
const o = Oo(r), l = o ? `&${o}` : "", c = t.voiceKey ? `&voice=${encodeURIComponent(t.voiceKey)}` : "";
|
|
904
904
|
return a.flatMap((u) => {
|
|
905
|
-
var
|
|
906
|
-
const d = (
|
|
905
|
+
var g, M;
|
|
906
|
+
const d = (g = t.clipRev) == null ? void 0 : g[String(u)], h = Math.max(1, ((M = t.clipParts) == null ? void 0 : M[String(u)]) ?? 1);
|
|
907
907
|
return Array.from({ length: h }, (f, y) => {
|
|
908
908
|
var T;
|
|
909
909
|
return {
|
|
@@ -989,20 +989,20 @@ function Vo(t) {
|
|
|
989
989
|
return [typeof e == "number" && e > 0 ? e : t === "ga" ? 560 : Qo, n];
|
|
990
990
|
}
|
|
991
991
|
function Vr({ 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: h }) {
|
|
992
|
-
const [
|
|
992
|
+
const [g, M] = z(""), [f, y] = z(!1), [T, N] = z(null);
|
|
993
993
|
x(() => {
|
|
994
|
-
t && (
|
|
994
|
+
t && (M(""), y(!1), N(null));
|
|
995
995
|
}, [t]);
|
|
996
996
|
const p = ze(() => {
|
|
997
|
-
const E =
|
|
997
|
+
const E = g.trim().toLowerCase();
|
|
998
998
|
return [...E ? s.filter((C) => C.label.toLowerCase().includes(E) || C.native.toLowerCase().includes(E) || C.code.toLowerCase().includes(E)) : s].sort((C, te) => {
|
|
999
999
|
const X = l.indexOf(C.code), L = l.indexOf(te.code);
|
|
1000
1000
|
return X !== -1 || L !== -1 ? (X === -1 ? 999 : X) - (L === -1 ? 999 : L) : C.label.localeCompare(te.label);
|
|
1001
1001
|
});
|
|
1002
|
-
}, [s,
|
|
1003
|
-
() =>
|
|
1004
|
-
[c, p,
|
|
1005
|
-
), S = ze(() => b.length ? p.filter((E) => !b.some((k) => k.code === E.code)) : p, [p, b]), A = f ||
|
|
1002
|
+
}, [s, g, l]), b = ze(
|
|
1003
|
+
() => g ? [] : c.map((E) => p.find((k) => k.code === E)).filter((E) => !!E).sort((E, k) => E.label.localeCompare(k.label)),
|
|
1004
|
+
[c, p, g]
|
|
1005
|
+
), S = ze(() => b.length ? p.filter((E) => !b.some((k) => k.code === E.code)) : p, [p, b]), A = f || g ? S.length : 12, P = S, O = S.length - Math.min(A, S.length), V = (E, k = !1, Y = !1) => {
|
|
1006
1006
|
const C = !!u && !E.voice;
|
|
1007
1007
|
return /* @__PURE__ */ m(
|
|
1008
1008
|
"button",
|
|
@@ -1029,16 +1029,16 @@ function Vr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
|
|
|
1029
1029
|
(te.key === "Enter" || te.key === " ") && (te.preventDefault(), te.stopPropagation(), ki(E.code));
|
|
1030
1030
|
}, children: /* @__PURE__ */ i(oe, { d: J.close, size: 16 }) }) }),
|
|
1031
1031
|
/* @__PURE__ */ i("span", { className: `vs-picker__slot${C ? " vs-picker__slot--wide" : ""}`, title: E.voice ? "Voice available" : C ? "No voice speaks this language yet" : void 0, children: C ? T === E.code && /* @__PURE__ */ i("span", { className: "vs-picker__off", children: "UNAVAILABLE" }) : E.voice && /* @__PURE__ */ i(oe, { d: J.headphones, size: 16 }) }),
|
|
1032
|
-
/* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === E.code && (h === E.code ? /* @__PURE__ */ i(
|
|
1032
|
+
/* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === E.code && (h === E.code ? /* @__PURE__ */ i(gt, { size: 15, color: "var(--vs-link-hover)", track: "var(--vs-border)" }) : /* @__PURE__ */ i(oe, { d: J.check, size: 16, sw: 2.2 })) })
|
|
1033
1033
|
]
|
|
1034
1034
|
},
|
|
1035
1035
|
E.code
|
|
1036
1036
|
);
|
|
1037
1037
|
}, I = /* @__PURE__ */ m("div", { className: "vs-picker__search", children: [
|
|
1038
1038
|
/* @__PURE__ */ i(oe, { d: J.search, size: 16, sw: 1.7, style: { color: "var(--vs-text-muted)" } }),
|
|
1039
|
-
/* @__PURE__ */ i("input", { value:
|
|
1039
|
+
/* @__PURE__ */ i("input", { value: g, onChange: (E) => M(E.target.value), placeholder: a, "aria-label": a })
|
|
1040
1040
|
] }), W = /* @__PURE__ */ m("div", { className: "vs-picker__list", children: [
|
|
1041
|
-
o && !
|
|
1041
|
+
o && !g && /* @__PURE__ */ m("button", { type: "button", className: "vs-picker__row", "data-vs-original": "", "aria-selected": n === null, onClick: () => {
|
|
1042
1042
|
r(null), d || e();
|
|
1043
1043
|
}, children: [
|
|
1044
1044
|
/* @__PURE__ */ i("span", { className: "vs-picker__flag", children: /* @__PURE__ */ i(oe, { d: J.mic, size: 19, sw: 1.6, style: { color: "var(--vs-text-muted)" } }) }),
|
|
@@ -1063,7 +1063,7 @@ function Vr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
|
|
|
1063
1063
|
] }),
|
|
1064
1064
|
p.length === 0 && /* @__PURE__ */ m("div", { className: "vs-picker__more", children: [
|
|
1065
1065
|
"No match for “",
|
|
1066
|
-
|
|
1066
|
+
g,
|
|
1067
1067
|
"”"
|
|
1068
1068
|
] })
|
|
1069
1069
|
] });
|
|
@@ -1074,32 +1074,32 @@ function Bo({ open: t, onClose: e, title: n, note: r, sticky: s, ...a }) {
|
|
|
1074
1074
|
return /* @__PURE__ */ i(nn, { open: t, onClose: e, title: n, note: r, drawer: !1, sticky: s, kind: "picker", header: o, children: l });
|
|
1075
1075
|
}
|
|
1076
1076
|
function Li({ src: t, setup: e, t: n, playing: r, seekN: s, onToggle: a, seekOver: o = 0.4 }) {
|
|
1077
|
-
const l = w(null), [c, u] = z(!1), [d, h] = z(!1),
|
|
1078
|
-
return
|
|
1077
|
+
const l = w(null), [c, u] = z(!1), [d, h] = z(!1), g = w(n);
|
|
1078
|
+
return g.current = n, x(() => {
|
|
1079
1079
|
u(!1), h(!1);
|
|
1080
1080
|
}, [t, e]), x(() => {
|
|
1081
|
-
const
|
|
1082
|
-
if (!(!
|
|
1083
|
-
return e(
|
|
1081
|
+
const M = l.current;
|
|
1082
|
+
if (!(!M || !e))
|
|
1083
|
+
return e(M, () => h(!0)) ?? void 0;
|
|
1084
1084
|
}, [e]), x(() => {
|
|
1085
|
-
const
|
|
1086
|
-
!
|
|
1087
|
-
}) :
|
|
1085
|
+
const M = l.current;
|
|
1086
|
+
!M || !c || (r ? M.play().catch(() => {
|
|
1087
|
+
}) : M.pause());
|
|
1088
1088
|
}, [r, c]), x(() => {
|
|
1089
|
-
const
|
|
1090
|
-
if (!
|
|
1091
|
-
const f = Math.max(0,
|
|
1092
|
-
Math.abs(
|
|
1089
|
+
const M = l.current;
|
|
1090
|
+
if (!M || !c) return;
|
|
1091
|
+
const f = Math.max(0, g.current);
|
|
1092
|
+
Math.abs(M.currentTime - f) > (r ? o : 0.08) && (M.currentTime = f);
|
|
1093
1093
|
}, [n, s, c, r]), x(() => {
|
|
1094
|
-
const
|
|
1095
|
-
if (!
|
|
1094
|
+
const M = l.current;
|
|
1095
|
+
if (!M || !c || !r) return;
|
|
1096
1096
|
const f = setInterval(() => {
|
|
1097
|
-
if (
|
|
1098
|
-
const y =
|
|
1099
|
-
Math.abs(y) > o ?
|
|
1097
|
+
if (M.seeking) return;
|
|
1098
|
+
const y = M.currentTime - g.current;
|
|
1099
|
+
Math.abs(y) > o ? M.currentTime = Math.max(0, g.current) : M.playbackRate = Math.abs(y) < 0.03 ? 1 : Math.min(1.1, Math.max(0.9, 1 - 0.5 * y));
|
|
1100
1100
|
}, 250);
|
|
1101
1101
|
return () => {
|
|
1102
|
-
clearInterval(f),
|
|
1102
|
+
clearInterval(f), M.playbackRate = 1;
|
|
1103
1103
|
};
|
|
1104
1104
|
}, [c, r, o]), d ? null : /* @__PURE__ */ m("div", { className: "txyt vsp-follow", style: c ? { background: "#000" } : void 0, children: [
|
|
1105
1105
|
/* @__PURE__ */ i(
|
|
@@ -1217,7 +1217,7 @@ const qo = (t) => {
|
|
|
1217
1217
|
return `${Math.floor(e / 3600)}h${Math.floor(e % 3600 / 60)}m${e % 60}s`;
|
|
1218
1218
|
};
|
|
1219
1219
|
function oa(t, e) {
|
|
1220
|
-
var s, a, o, l, c, u, d, h,
|
|
1220
|
+
var s, a, o, l, c, u, d, h, g, M;
|
|
1221
1221
|
const n = Yt(t);
|
|
1222
1222
|
if (!n) return null;
|
|
1223
1223
|
const r = e.play ? 1 : 0;
|
|
@@ -1290,11 +1290,11 @@ function oa(t, e) {
|
|
|
1290
1290
|
return f ? `https://embed.bsky.app/embed/${f[1]}/app.bsky.feed.post/${f[2]}` : null;
|
|
1291
1291
|
}
|
|
1292
1292
|
case "gdrive": {
|
|
1293
|
-
const f = Ke(t), y = ((
|
|
1293
|
+
const f = Ke(t), y = ((g = /\/file\/d\/([\w-]+)/.exec((f == null ? void 0 : f.pathname) ?? "")) == null ? void 0 : g[1]) ?? (f == null ? void 0 : f.searchParams.get("id"));
|
|
1294
1294
|
return y ? `https://drive.google.com/file/d/${y}/preview` : null;
|
|
1295
1295
|
}
|
|
1296
1296
|
case "streamable": {
|
|
1297
|
-
const f = (
|
|
1297
|
+
const f = (M = Ke(t)) == null ? void 0 : M.pathname.split("/").filter(Boolean).pop();
|
|
1298
1298
|
return f ? `https://streamable.com/e/${f}?${new URLSearchParams({ autoplay: String(r), muted: "1", nocontrols: "1" })}${e.t ? `#t=${Ft(e.t)}` : ""}` : null;
|
|
1299
1299
|
}
|
|
1300
1300
|
default:
|
|
@@ -1372,20 +1372,20 @@ function sl(t) {
|
|
|
1372
1372
|
function il({ url: t, t: e, playing: n, seekN: r, title: s, onToggle: a }) {
|
|
1373
1373
|
const o = w(e);
|
|
1374
1374
|
o.current = e;
|
|
1375
|
-
const [l, c] = z(!1), u = typeof window < "u" ? window.location.hostname : "localhost", d = ze(() => oa(t, { t: o.current, play: n, host: u }), [t, n, r, u]), [h,
|
|
1375
|
+
const [l, c] = z(!1), u = typeof window < "u" ? window.location.hostname : "localhost", d = ze(() => oa(t, { t: o.current, play: n, host: u }), [t, n, r, u]), [h, g] = z(!1), M = w(!1);
|
|
1376
1376
|
return x(() => {
|
|
1377
1377
|
const f = sl(t);
|
|
1378
1378
|
if (!f) return;
|
|
1379
|
-
|
|
1379
|
+
M.current = !1, g(!1);
|
|
1380
1380
|
const y = (N) => {
|
|
1381
1381
|
try {
|
|
1382
|
-
f.test(new URL(N.origin).hostname) && (
|
|
1382
|
+
f.test(new URL(N.origin).hostname) && (M.current = !0);
|
|
1383
1383
|
} catch {
|
|
1384
1384
|
}
|
|
1385
1385
|
};
|
|
1386
1386
|
window.addEventListener("message", y);
|
|
1387
1387
|
const T = window.setTimeout(() => {
|
|
1388
|
-
|
|
1388
|
+
M.current || g(!0);
|
|
1389
1389
|
}, 8e3);
|
|
1390
1390
|
return () => {
|
|
1391
1391
|
window.removeEventListener("message", y), window.clearTimeout(T);
|
|
@@ -1434,11 +1434,11 @@ function ll({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1434
1434
|
const [c, u] = z(!1), [d] = z(() => `vsp-fb-${++ol}`);
|
|
1435
1435
|
return x(() => {
|
|
1436
1436
|
let h = !0;
|
|
1437
|
-
const
|
|
1438
|
-
if (!
|
|
1439
|
-
|
|
1440
|
-
const
|
|
1441
|
-
|
|
1437
|
+
const g = a.current;
|
|
1438
|
+
if (!g) return;
|
|
1439
|
+
g.innerHTML = "";
|
|
1440
|
+
const M = document.createElement("div");
|
|
1441
|
+
M.className = "fb-video", M.id = d, M.setAttribute("data-href", t), M.setAttribute("data-width", String(Math.max(320, Math.round(g.clientWidth)))), M.setAttribute("data-allowfullscreen", "false"), M.setAttribute("data-show-text", "false"), M.setAttribute("data-show-captions", "false"), g.appendChild(M);
|
|
1442
1442
|
let f = null;
|
|
1443
1443
|
const y = (T) => {
|
|
1444
1444
|
if (!(!h || T.type !== "video" || T.id !== d)) {
|
|
@@ -1451,14 +1451,14 @@ function ll({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1451
1451
|
}
|
|
1452
1452
|
};
|
|
1453
1453
|
return al().then((T) => {
|
|
1454
|
-
!h || !T || (f = T, T.Event.subscribe("xfbml.ready", y), T.XFBML.parse(
|
|
1454
|
+
!h || !T || (f = T, T.Event.subscribe("xfbml.ready", y), T.XFBML.parse(g));
|
|
1455
1455
|
}), () => {
|
|
1456
1456
|
h = !1, o.current = null, u(!1);
|
|
1457
1457
|
try {
|
|
1458
1458
|
f == null || f.Event.unsubscribe("xfbml.ready", y);
|
|
1459
1459
|
} catch {
|
|
1460
1460
|
}
|
|
1461
|
-
|
|
1461
|
+
g.innerHTML = "";
|
|
1462
1462
|
};
|
|
1463
1463
|
}, [t, d]), x(() => {
|
|
1464
1464
|
const h = o.current;
|
|
@@ -1477,13 +1477,13 @@ function ll({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1477
1477
|
}, [r, c]), x(() => {
|
|
1478
1478
|
const h = o.current;
|
|
1479
1479
|
if (!h || !c || !n) return;
|
|
1480
|
-
const
|
|
1480
|
+
const g = setInterval(() => {
|
|
1481
1481
|
try {
|
|
1482
1482
|
Math.abs(h.getCurrentPosition() - l.current) > 1 && h.seek(Math.max(0, l.current));
|
|
1483
1483
|
} catch {
|
|
1484
1484
|
}
|
|
1485
1485
|
}, 1e3);
|
|
1486
|
-
return () => clearInterval(
|
|
1486
|
+
return () => clearInterval(g);
|
|
1487
1487
|
}, [c, n]), /* @__PURE__ */ m("div", { className: "txyt vsp-follow vsp-fb", style: c ? { background: "#000" } : void 0, children: [
|
|
1488
1488
|
/* @__PURE__ */ i("div", { ref: a, className: `vsp-fb__box${n ? " vsp-fb__box--live" : ""}`, style: { opacity: c ? 1 : 0 } }),
|
|
1489
1489
|
c && !n && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: s, style: { cursor: s ? "pointer" : "default" } }),
|
|
@@ -1505,14 +1505,14 @@ function ul({ id: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1505
1505
|
const [c, u] = z(!1);
|
|
1506
1506
|
x(() => {
|
|
1507
1507
|
let h = !0;
|
|
1508
|
-
const
|
|
1509
|
-
return
|
|
1508
|
+
const g = window;
|
|
1509
|
+
return g._wq = g._wq || [], g._wq.push({
|
|
1510
1510
|
id: t,
|
|
1511
|
-
onReady: (
|
|
1511
|
+
onReady: (M) => {
|
|
1512
1512
|
if (h) {
|
|
1513
|
-
a.current =
|
|
1513
|
+
a.current = M;
|
|
1514
1514
|
try {
|
|
1515
|
-
|
|
1515
|
+
M.mute(), M.time(Math.max(0, o.current)), l.current && M.play();
|
|
1516
1516
|
} catch {
|
|
1517
1517
|
}
|
|
1518
1518
|
u(!0);
|
|
@@ -1538,13 +1538,13 @@ function ul({ id: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1538
1538
|
}, [r, c]), x(() => {
|
|
1539
1539
|
const h = a.current;
|
|
1540
1540
|
if (!h || !c || !n) return;
|
|
1541
|
-
const
|
|
1541
|
+
const g = setInterval(() => {
|
|
1542
1542
|
try {
|
|
1543
1543
|
Math.abs(h.time() - o.current) > 0.5 && h.time(Math.max(0, o.current));
|
|
1544
1544
|
} catch {
|
|
1545
1545
|
}
|
|
1546
1546
|
}, 500);
|
|
1547
|
-
return () => clearInterval(
|
|
1547
|
+
return () => clearInterval(g);
|
|
1548
1548
|
}, [c, n]);
|
|
1549
1549
|
const d = `https://fast.wistia.net/embed/iframe/${encodeURIComponent(t)}?${new URLSearchParams({ muted: "true", playbar: "false", controlsVisibleOnLoad: "false", playButton: "false", smallPlayButton: "false", volumeControl: "false", fullscreenButton: "false", settingsControl: "false", endVideoBehavior: "reset" })}`;
|
|
1550
1550
|
return /* @__PURE__ */ m("div", { className: "txyt vsp-follow", style: c ? { background: "#000" } : void 0, children: [
|
|
@@ -1578,11 +1578,11 @@ function hl({ uuid: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1578
1578
|
const [u, d] = z(!1);
|
|
1579
1579
|
return x(() => {
|
|
1580
1580
|
let h = !0;
|
|
1581
|
-
const
|
|
1582
|
-
if (
|
|
1583
|
-
return
|
|
1584
|
-
if (!(!h || !
|
|
1585
|
-
return
|
|
1581
|
+
const g = a.current;
|
|
1582
|
+
if (g)
|
|
1583
|
+
return g.innerHTML = "", dl().then((M) => {
|
|
1584
|
+
if (!(!h || !M))
|
|
1585
|
+
return M.renderPlayer({ uuid: t, container: g, type: "inline", autoplay: 0, muted: 1, controls: 0 }).then((f) => {
|
|
1586
1586
|
if (h) {
|
|
1587
1587
|
o.current = f;
|
|
1588
1588
|
try {
|
|
@@ -1594,7 +1594,7 @@ function hl({ uuid: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1594
1594
|
});
|
|
1595
1595
|
}).catch(() => {
|
|
1596
1596
|
}), () => {
|
|
1597
|
-
h = !1, o.current = null, d(!1),
|
|
1597
|
+
h = !1, o.current = null, d(!1), g.innerHTML = "";
|
|
1598
1598
|
};
|
|
1599
1599
|
}, [t]), x(() => {
|
|
1600
1600
|
const h = o.current;
|
|
@@ -1613,13 +1613,13 @@ function hl({ uuid: t, t: e, playing: n, seekN: r, onToggle: s }) {
|
|
|
1613
1613
|
}, [r, u]), x(() => {
|
|
1614
1614
|
const h = o.current;
|
|
1615
1615
|
if (!h || !u || !n) return;
|
|
1616
|
-
const
|
|
1616
|
+
const g = setInterval(() => {
|
|
1617
1617
|
try {
|
|
1618
1618
|
Math.abs(h.currentTime() - l.current) > 0.5 && h.seek(Math.max(0, l.current));
|
|
1619
1619
|
} catch {
|
|
1620
1620
|
}
|
|
1621
1621
|
}, 500);
|
|
1622
|
-
return () => clearInterval(
|
|
1622
|
+
return () => clearInterval(g);
|
|
1623
1623
|
}, [u, n]), /* @__PURE__ */ m("div", { className: "txyt vsp-follow", style: u ? { background: "#000" } : void 0, children: [
|
|
1624
1624
|
/* @__PURE__ */ i("div", { ref: a, className: `vsp-fb__box${n ? " vsp-fb__box--live" : ""}`, style: { opacity: u ? 1 : 0 } }),
|
|
1625
1625
|
!n && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: s, style: { cursor: s ? "pointer" : "default" } }),
|
|
@@ -1636,13 +1636,13 @@ async function fl(t) {
|
|
|
1636
1636
|
return null;
|
|
1637
1637
|
}
|
|
1638
1638
|
}
|
|
1639
|
-
function
|
|
1639
|
+
function gl(t) {
|
|
1640
1640
|
const e = t.includes("?") ? t.slice(t.indexOf("?") + 1) : "";
|
|
1641
1641
|
return (n, r) => {
|
|
1642
1642
|
e && !r.includes("Signature=") && n.open("GET", r + (r.includes("?") ? "&" : "?") + e, !0);
|
|
1643
1643
|
};
|
|
1644
1644
|
}
|
|
1645
|
-
function
|
|
1645
|
+
function Ml(t) {
|
|
1646
1646
|
return (e, n) => {
|
|
1647
1647
|
let r = !0, s = null;
|
|
1648
1648
|
return (async () => {
|
|
@@ -1659,7 +1659,7 @@ function gl(t) {
|
|
|
1659
1659
|
n();
|
|
1660
1660
|
return;
|
|
1661
1661
|
}
|
|
1662
|
-
const c = new l({ xhrSetup:
|
|
1662
|
+
const c = new l({ xhrSetup: gl(a), capLevelToPlayerSize: !0, startLevel: 0, maxBufferLength: 20 });
|
|
1663
1663
|
c.on(l.Events.ERROR, (u, d) => {
|
|
1664
1664
|
d.fatal && (c.destroy(), n());
|
|
1665
1665
|
}), c.loadSource(a), c.attachMedia(e), s = () => c.destroy();
|
|
@@ -1779,16 +1779,16 @@ function la(t, e) {
|
|
|
1779
1779
|
r("off");
|
|
1780
1780
|
return;
|
|
1781
1781
|
}
|
|
1782
|
-
let
|
|
1782
|
+
let g = !1, M;
|
|
1783
1783
|
r("making");
|
|
1784
1784
|
const f = () => {
|
|
1785
1785
|
Cl(t).then((y) => {
|
|
1786
|
-
if (!
|
|
1786
|
+
if (!g) {
|
|
1787
1787
|
if (y.ready) {
|
|
1788
1788
|
const T = new Audio();
|
|
1789
1789
|
T.preload = "auto";
|
|
1790
1790
|
const N = () => {
|
|
1791
|
-
!
|
|
1791
|
+
!g && c.current === T && r("ready");
|
|
1792
1792
|
};
|
|
1793
1793
|
T.addEventListener("canplay", N, { once: !0 }), T.addEventListener("error", N, { once: !0 }), T.src = t, c.current = T;
|
|
1794
1794
|
return;
|
|
@@ -1797,36 +1797,36 @@ function la(t, e) {
|
|
|
1797
1797
|
r("unavailable"), a([]);
|
|
1798
1798
|
return;
|
|
1799
1799
|
}
|
|
1800
|
-
a((T) => T.length === y.parts.length && T.every((N, p) => N.startS === y.parts[p].startS) ? T : y.parts),
|
|
1800
|
+
a((T) => T.length === y.parts.length && T.every((N, p) => N.startS === y.parts[p].startS) ? T : y.parts), M = setTimeout(f, y.retryS * 1e3);
|
|
1801
1801
|
}
|
|
1802
1802
|
}).catch(() => {
|
|
1803
|
-
|
|
1803
|
+
g || (M = setTimeout(f, 5e3));
|
|
1804
1804
|
});
|
|
1805
1805
|
};
|
|
1806
1806
|
return f(), () => {
|
|
1807
|
-
|
|
1807
|
+
g = !0, M && clearTimeout(M), Tr(c.current), c.current = null, Tr(u.current[0]), Tr(u.current[1]), u.current = [null, null], d.current = [NaN, NaN];
|
|
1808
1808
|
};
|
|
1809
1809
|
}, [t]), x(() => {
|
|
1810
|
-
const
|
|
1810
|
+
const g = () => {
|
|
1811
1811
|
for (const N of u.current) N && !N.paused && N.pause();
|
|
1812
1812
|
};
|
|
1813
1813
|
if (n === "ready" && c.current) {
|
|
1814
|
-
|
|
1814
|
+
g(), zi(c.current, e), l(!0);
|
|
1815
1815
|
return;
|
|
1816
1816
|
}
|
|
1817
|
-
const
|
|
1818
|
-
if (
|
|
1819
|
-
|
|
1817
|
+
const M = n === "making" ? Ol(s, e.t) : -1;
|
|
1818
|
+
if (M < 0) {
|
|
1819
|
+
g(), l(!1);
|
|
1820
1820
|
return;
|
|
1821
1821
|
}
|
|
1822
|
-
const f = xl(s,
|
|
1822
|
+
const f = xl(s, M, d.current, h.current);
|
|
1823
1823
|
for (const [N, p] of f.load) {
|
|
1824
1824
|
let b = u.current[N];
|
|
1825
1825
|
b || (b = new Audio(), b.preload = "auto", u.current[N] = b), b.pause(), b.src = s[p].url, d.current[N] = s[p].startS;
|
|
1826
1826
|
}
|
|
1827
1827
|
h.current = f.play;
|
|
1828
1828
|
const y = u.current[f.play], T = u.current[1 - f.play];
|
|
1829
|
-
T && !T.paused && T.pause(), zi(y, { ...e, t: e.t - s[
|
|
1829
|
+
T && !T.paused && T.pause(), zi(y, { ...e, t: e.t - s[M].startS }), l(!e.playing || y.readyState >= 3);
|
|
1830
1830
|
}, [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 };
|
|
1831
1831
|
}
|
|
1832
1832
|
function Sl(t, e) {
|
|
@@ -1896,36 +1896,36 @@ function Ul(t) {
|
|
|
1896
1896
|
a((f) => f.missing === u && f.sid === d ? f : { missing: u, sid: d });
|
|
1897
1897
|
const h = new Set(Yl(t.lines, e, t.t));
|
|
1898
1898
|
for (const f of h) o(f);
|
|
1899
|
-
const
|
|
1900
|
-
|
|
1901
|
-
for (const [f, y] of n.current) !h.has(f) && (!
|
|
1899
|
+
const g = r.current;
|
|
1900
|
+
g && h.add(g.src);
|
|
1901
|
+
for (const [f, y] of n.current) !h.has(f) && (!g || g.el !== y) && (y.pause(), n.current.delete(f));
|
|
1902
1902
|
if (!t.playing) {
|
|
1903
|
-
|
|
1903
|
+
g == null || g.el.pause();
|
|
1904
1904
|
return;
|
|
1905
1905
|
}
|
|
1906
1906
|
if (c.kind !== "play") {
|
|
1907
|
-
if (
|
|
1908
|
-
|
|
1907
|
+
if (g && !g.el.paused && !g.el.ended && _l(t.lines, t.t, g.sid)) return;
|
|
1908
|
+
g && g.el.pause(), r.current = null;
|
|
1909
1909
|
return;
|
|
1910
1910
|
}
|
|
1911
|
-
if (
|
|
1912
|
-
if (
|
|
1911
|
+
if (g && g.src === c.src) {
|
|
1912
|
+
if (g.el.muted = t.muted, !g.el.ended && Math.abs(g.el.currentTime - c.offset) > Dl)
|
|
1913
1913
|
try {
|
|
1914
|
-
|
|
1914
|
+
g.el.currentTime = c.offset;
|
|
1915
1915
|
} catch {
|
|
1916
1916
|
}
|
|
1917
|
-
|
|
1917
|
+
g.el.paused && !g.el.ended && g.el.play().catch(() => {
|
|
1918
1918
|
});
|
|
1919
1919
|
return;
|
|
1920
1920
|
}
|
|
1921
|
-
|
|
1922
|
-
const
|
|
1923
|
-
|
|
1921
|
+
g == null || g.el.pause();
|
|
1922
|
+
const M = o(c.src);
|
|
1923
|
+
M.muted = t.muted;
|
|
1924
1924
|
try {
|
|
1925
|
-
|
|
1925
|
+
M.currentTime = c.offset;
|
|
1926
1926
|
} catch {
|
|
1927
1927
|
}
|
|
1928
|
-
r.current = { src: c.src, sid: c.sid, el:
|
|
1928
|
+
r.current = { src: c.src, sid: c.sid, el: M }, M.play().catch(() => {
|
|
1929
1929
|
});
|
|
1930
1930
|
}, [t.on, t.t, t.playing, t.muted, t.lines, e]), s;
|
|
1931
1931
|
}
|
|
@@ -2403,27 +2403,27 @@ function fa(t) {
|
|
|
2403
2403
|
const e = t.listen ?? null, n = e ? null : t.listenerToken ?? null, r = !e && !n && !!t.token && (!t.id || ac(t.id)), s = (t.baseUrl ?? ha).replace(/\/$/, ""), a = w(t.token);
|
|
2404
2404
|
a.current = t.token;
|
|
2405
2405
|
const o = !!t.token, l = ze(() => async () => {
|
|
2406
|
-
const
|
|
2407
|
-
return (typeof
|
|
2406
|
+
const g = a.current;
|
|
2407
|
+
return (typeof g == "function" ? await g() : g) || void 0;
|
|
2408
2408
|
}, []), [c, u] = z(() => {
|
|
2409
|
-
const
|
|
2410
|
-
return typeof
|
|
2409
|
+
const g = t.token, M = typeof g == "function" ? g() : g;
|
|
2410
|
+
return typeof M == "string" && M ? M : null;
|
|
2411
2411
|
});
|
|
2412
2412
|
x(() => {
|
|
2413
2413
|
if (!r) return;
|
|
2414
|
-
let
|
|
2415
|
-
return l().then((
|
|
2416
|
-
|
|
2414
|
+
let g = !0;
|
|
2415
|
+
return l().then((M) => {
|
|
2416
|
+
g && M && u((f) => f ?? M);
|
|
2417
2417
|
}), () => {
|
|
2418
|
-
|
|
2418
|
+
g = !1;
|
|
2419
2419
|
};
|
|
2420
2420
|
}, [r, l]);
|
|
2421
2421
|
const d = t.client ?? null, h = ze(() => d ?? new Fi({ baseUrl: s, token: o && !e ? l : void 0 }), [d, s, o, l, e]);
|
|
2422
2422
|
return ze(() => {
|
|
2423
2423
|
if (e) return { client: h, origin: s, owner: !1, shareCode: null, listen: e, bearer: l, cred: { listenerToken: e.token }, readAs: { listenerToken: e.token } };
|
|
2424
2424
|
if (n) return { client: h, origin: s, owner: !1, shareCode: null, listen: null, bearer: l, cred: { listenerToken: n }, readAs: { listenerToken: n } };
|
|
2425
|
-
const
|
|
2426
|
-
return { client: h, origin: s, owner: r, shareCode:
|
|
2425
|
+
const g = r ? null : t.id || null;
|
|
2426
|
+
return { client: h, origin: s, owner: r, shareCode: g, listen: null, bearer: l, cred: r ? { accessToken: c ?? void 0 } : { shareCode: g }, readAs: g ? { shareCode: g } : {} };
|
|
2427
2427
|
}, [h, s, r, t.id, l, e, n, c]);
|
|
2428
2428
|
}
|
|
2429
2429
|
function oc(t, e) {
|
|
@@ -2462,8 +2462,8 @@ function cc(t, e) {
|
|
|
2462
2462
|
d && (r(h), a(!1), l(null));
|
|
2463
2463
|
}).catch((h) => {
|
|
2464
2464
|
if (!d) return;
|
|
2465
|
-
const
|
|
2466
|
-
|
|
2465
|
+
const g = Ct(h);
|
|
2466
|
+
g.code === "not_found" || g.status === 404 ? a(!0) : l(g);
|
|
2467
2467
|
}), () => {
|
|
2468
2468
|
d = !1;
|
|
2469
2469
|
};
|
|
@@ -2503,7 +2503,7 @@ async function Ci(t, e, n = {}) {
|
|
|
2503
2503
|
return fetch(`${t.origin}${e}${a ? `${e.includes("?") ? "&" : "?"}${a}` : ""}`, { method: n.method ?? "GET", headers: s, body: n.body === void 0 ? void 0 : JSON.stringify(n.body) });
|
|
2504
2504
|
}
|
|
2505
2505
|
const kr = /* @__PURE__ */ new Map();
|
|
2506
|
-
function
|
|
2506
|
+
function ga() {
|
|
2507
2507
|
const t = Gt(), [e, n] = z(kr.get(t.origin) ?? null);
|
|
2508
2508
|
return x(() => {
|
|
2509
2509
|
kr.has(t.origin) || t.client.languages.list().then((r) => {
|
|
@@ -2512,7 +2512,7 @@ function Ma() {
|
|
|
2512
2512
|
});
|
|
2513
2513
|
}, [t]), e;
|
|
2514
2514
|
}
|
|
2515
|
-
function
|
|
2515
|
+
function Ma(t, e) {
|
|
2516
2516
|
const [n, r] = z(null), [s, a] = z(null), [o, l] = z(0);
|
|
2517
2517
|
return x(() => {
|
|
2518
2518
|
let c = !0;
|
|
@@ -2522,10 +2522,10 @@ function ga(t, e) {
|
|
|
2522
2522
|
}, [...e, o]), { data: n, error: s, reload: () => l((c) => c + 1) };
|
|
2523
2523
|
}
|
|
2524
2524
|
const dc = (t) => new Promise((e) => setTimeout(e, t)), hc = 2500, fc = 72;
|
|
2525
|
-
function
|
|
2525
|
+
function gc(t, e) {
|
|
2526
2526
|
const n = Gt(), r = w(n);
|
|
2527
2527
|
r.current = n;
|
|
2528
|
-
const [s, a] = z(en), o = w(en()), l = w(null), c = w(e.lang ?? null), [u, d] = z(!1), [h,
|
|
2528
|
+
const [s, a] = z(en), o = w(en()), l = w(null), c = w(e.lang ?? null), [u, d] = z(!1), [h, g] = z(null), [M, f] = z(!1), y = Je(() => {
|
|
2529
2529
|
const E = o.current;
|
|
2530
2530
|
a({ ...E });
|
|
2531
2531
|
}, []), T = w(e);
|
|
@@ -2550,7 +2550,7 @@ function Mc(t, e) {
|
|
|
2550
2550
|
G.close();
|
|
2551
2551
|
return;
|
|
2552
2552
|
}
|
|
2553
|
-
k = 0, l.current = G, c.current !== me && G.setLanguage(c.current), d(!0),
|
|
2553
|
+
k = 0, l.current = G, c.current !== me && G.setLanguage(c.current), d(!0), g(null), o.current = vr(G.snapshot, o.current), y(), te();
|
|
2554
2554
|
for await (const le of G) {
|
|
2555
2555
|
if (!E) break;
|
|
2556
2556
|
if (le.type === "snapshot")
|
|
@@ -2565,7 +2565,7 @@ function Mc(t, e) {
|
|
|
2565
2565
|
if (!E) return;
|
|
2566
2566
|
const le = Ct(me);
|
|
2567
2567
|
if (le.code === "not_found" || le.status === 404) {
|
|
2568
|
-
f(!0),
|
|
2568
|
+
f(!0), g(le);
|
|
2569
2569
|
return;
|
|
2570
2570
|
}
|
|
2571
2571
|
try {
|
|
@@ -2573,19 +2573,19 @@ function Mc(t, e) {
|
|
|
2573
2573
|
} catch (Te) {
|
|
2574
2574
|
const je = Ct(Te);
|
|
2575
2575
|
if (je.code === "not_found" || je.status === 404) {
|
|
2576
|
-
f(!0),
|
|
2576
|
+
f(!0), g(je);
|
|
2577
2577
|
return;
|
|
2578
2578
|
}
|
|
2579
2579
|
if (je.code === "forbidden" || je.code === "invalid_token" || je.code === "password_required" || je.status === 401 || je.status === 403) {
|
|
2580
|
-
|
|
2580
|
+
g(je);
|
|
2581
2581
|
return;
|
|
2582
2582
|
}
|
|
2583
2583
|
}
|
|
2584
2584
|
if (le.code === "forbidden" || le.code === "invalid_token" || le.code === "password_required" || le.status === 401 || le.status === 403) {
|
|
2585
|
-
|
|
2585
|
+
g(le);
|
|
2586
2586
|
return;
|
|
2587
2587
|
}
|
|
2588
|
-
|
|
2588
|
+
g(le);
|
|
2589
2589
|
} finally {
|
|
2590
2590
|
l.current === G && (l.current = null), d(!1);
|
|
2591
2591
|
}
|
|
@@ -2622,8 +2622,8 @@ function Mc(t, e) {
|
|
|
2622
2622
|
L && (L.translations = { ...L.translations, [E]: X }, C = !0);
|
|
2623
2623
|
}
|
|
2624
2624
|
C && y();
|
|
2625
|
-
}, [y]), W = Je(() =>
|
|
2626
|
-
return { model: s, connected: u, error: h, notFound:
|
|
2625
|
+
}, [y]), W = Je(() => g(null), []);
|
|
2626
|
+
return { model: s, connected: u, error: h, notFound: M, clearError: W, setLanguage: V, mergeTranslations: I, translating: N, translateFailed: b, shownLang: P };
|
|
2627
2627
|
}
|
|
2628
2628
|
const Si = {
|
|
2629
2629
|
English: { vcFor: "Voice for", vcMute: "Mute", vcUnmute: "Unmute", vcMuted: "MUTED", vcShared: "Also used by", vcUsedBy: "Used by", vcUnknownSpk: "Unknown", vcUse: "Use this voice", vcGetting: "Downloading…", vcSample: "Here’s how it sounds.", vcPreview: "PREVIEW", vcMale: "Male", vcFemale: "Female", vcSynth: "SYNTHETIC", origAudio: "ORIGINAL AUDIO", vcCloned: "VOICES", vcBadge: "CLONED", vcNone: "TEXT ONLY", vcNoVoice: "No voice for ", vcSheet: "VOICE", vcNeutral: "SYNTHETIC VOICE", vcWarm: "SYNTHETIC VOICE", searchPlaceholder: "Search this broadcast", noise: "Audio unclear", newLines: "new", live: "LIVE", ended: "ENDED", waiting: "WAITING", corrected: "CORRECTED", hostLine: "Hosted by Marcus Reed · 4 speakers", langLabel: "LANGUAGE", langCount: "100+ languages", read: "Read", listen: "Listen", watch: "Watch", waitTitle: "The broadcast hasn’t started yet", waitBody: "The transcript appears here as soon as the host starts speaking.", english: "ENGLISH", playing: "Playing the live audio", ready: "Tap to start audio", readyNote: "Set your volume first", voiceMeta: "ORIGINAL AUDIO", voice: "Voice", sheetTitle: "APP LANGUAGE", done: "Done", search: "Search 100+ languages", sheetNote: "Follow along in your language.", moreLangs: "more", confTitle: "Some words weren't heard clearly", confBody: "The transcript marks words the model is unsure about with a dashed underline. The words keep their colour, so only the underline tells you where to look.", confMid: "Slightly unsure — probably right", confHigh: "Low confidence — may be wrong", settings: "BROADCAST", setOrig: "Show original language", setTheme: "Appearance", light: "Light", dark: "Dark", setConf: "Show uncertain words", setConfHint1: "Colours words the model is unsure about — ", setConfMid: "amber", setConfSep: " or ", setConfLow: "red", setConfHint2: "", behindLive: "TRANSLATION LATENCY", behindNote: "How far the translation trails the speaker right now.", shareLabel: "LIVE TRANSLATION LINK", copy: "Copy", copied: "Copied" },
|
|
@@ -2657,7 +2657,7 @@ function Lr(t) {
|
|
|
2657
2657
|
return "queued";
|
|
2658
2658
|
}
|
|
2659
2659
|
}
|
|
2660
|
-
function
|
|
2660
|
+
function Mc(t) {
|
|
2661
2661
|
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;
|
|
2662
2662
|
}
|
|
2663
2663
|
const mc = (t, e) => {
|
|
@@ -2689,10 +2689,10 @@ async function yc(t) {
|
|
|
2689
2689
|
Zr(t);
|
|
2690
2690
|
}
|
|
2691
2691
|
async function Nc(t, e, n, r = {}) {
|
|
2692
|
-
var
|
|
2692
|
+
var g, M;
|
|
2693
2693
|
const s = await t.client.recordings.export(e, n, { lang: r.lang ?? void 0, ...t.readAs });
|
|
2694
2694
|
if (!s.ok) throw await pa(s);
|
|
2695
|
-
const a = await s.blob(), o = s.headers.get("content-disposition") ?? "", l = (
|
|
2695
|
+
const a = await s.blob(), o = s.headers.get("content-disposition") ?? "", l = (g = /filename\*=UTF-8''([^;]+)/i.exec(o)) == null ? void 0 : g[1], c = (M = /filename="([^"]+)"/i.exec(o)) == null ? void 0 : M[1], u = l ? decodeURIComponent(l) : c ?? `transcript.${n}`, d = URL.createObjectURL(a), h = document.createElement("a");
|
|
2696
2696
|
h.href = d, h.download = u, h.style.display = "none", document.body.appendChild(h), h.click(), h.remove(), window.setTimeout(() => URL.revokeObjectURL(d), 6e4);
|
|
2697
2697
|
}
|
|
2698
2698
|
async function Tc(t, e) {
|
|
@@ -2758,8 +2758,8 @@ function jc(t, e, n = 0) {
|
|
|
2758
2758
|
const O = o(), V = O ? O.offsetHeight : 0, I = s.clientHeight - V - 36, W = s.scrollHeight - s.clientHeight, E = I > 0 ? Math.max(30, Math.round(I * (s.clientHeight - V) / s.scrollHeight)) : 0;
|
|
2759
2759
|
return { vis: I, max: W, size: E };
|
|
2760
2760
|
};
|
|
2761
|
-
let c = -1, u = null, d = !1, h = 0,
|
|
2762
|
-
const
|
|
2761
|
+
let c = -1, u = null, d = !1, h = 0, g = 0;
|
|
2762
|
+
const M = () => {
|
|
2763
2763
|
const O = o();
|
|
2764
2764
|
if (!O) return;
|
|
2765
2765
|
const V = parseFloat(s.dataset.glassExtra || "0") || 0, I = O.offsetHeight + 14 + V;
|
|
@@ -2774,7 +2774,7 @@ function jc(t, e, n = 0) {
|
|
|
2774
2774
|
};
|
|
2775
2775
|
let y = null, T = null;
|
|
2776
2776
|
const N = (O) => {
|
|
2777
|
-
|
|
2777
|
+
M();
|
|
2778
2778
|
const V = o();
|
|
2779
2779
|
V && V !== T && y && (T = V, y.observe(V));
|
|
2780
2780
|
const I = l();
|
|
@@ -2787,11 +2787,11 @@ function jc(t, e, n = 0) {
|
|
|
2787
2787
|
a.style.right = (p >= 12 ? -(p - 6) : 2) + "px";
|
|
2788
2788
|
const b = () => N(!0), S = (O) => {
|
|
2789
2789
|
const V = l();
|
|
2790
|
-
V.vis - V.size <= 0 || (O.preventDefault(), O.stopPropagation(), a.setPointerCapture(O.pointerId), d = !0, h = O.clientY,
|
|
2790
|
+
V.vis - V.size <= 0 || (O.preventDefault(), O.stopPropagation(), a.setPointerCapture(O.pointerId), d = !0, h = O.clientY, g = s.scrollTop, a.style.cursor = "grabbing", f());
|
|
2791
2791
|
}, A = (O) => {
|
|
2792
2792
|
if (!d) return;
|
|
2793
2793
|
const V = l();
|
|
2794
|
-
s.scrollTop =
|
|
2794
|
+
s.scrollTop = g + (O.clientY - h) / (V.vis - V.size) * V.max, f();
|
|
2795
2795
|
}, P = () => {
|
|
2796
2796
|
d && (d = !1, a.style.cursor = "grab", f());
|
|
2797
2797
|
};
|
|
@@ -2858,7 +2858,7 @@ function Id({ chip: t, note: e, scrub: n, mute: r, voice: s, prev: a, play: o, n
|
|
|
2858
2858
|
] });
|
|
2859
2859
|
}
|
|
2860
2860
|
function bc({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek: a, onSeekFrac: o, onScrubStart: l, onScrubEnd: c, frac: u, glideMs: d = 260 }) {
|
|
2861
|
-
const h = w(null),
|
|
2861
|
+
const h = w(null), g = w(!1), [M, f] = z(null), y = Math.max(1, e), T = M ?? u, N = T != null ? Math.min(100, Math.max(0, T * 100)) : t / Math.max(1, y - 1) * 100, p = u != null && d > 0 && M == null ? `width ${d}ms linear, left ${d}ms linear` : "none", b = (A) => {
|
|
2862
2862
|
var I;
|
|
2863
2863
|
const P = (I = h.current) == null ? void 0 : I.getBoundingClientRect();
|
|
2864
2864
|
if (!P) return;
|
|
@@ -2870,7 +2870,7 @@ function bc({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek:
|
|
|
2870
2870
|
const V = Math.round(O * (y - 1));
|
|
2871
2871
|
V !== t && a(V);
|
|
2872
2872
|
}, S = () => {
|
|
2873
|
-
|
|
2873
|
+
g.current && (g.current = !1, f(null), c == null || c());
|
|
2874
2874
|
};
|
|
2875
2875
|
return /* @__PURE__ */ m("div", { className: "rscrub", children: [
|
|
2876
2876
|
/* @__PURE__ */ m(
|
|
@@ -2880,10 +2880,10 @@ function bc({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek:
|
|
|
2880
2880
|
className: "rscrub__track",
|
|
2881
2881
|
onPointerDown: (A) => {
|
|
2882
2882
|
var P;
|
|
2883
|
-
|
|
2883
|
+
g.current = !0, (P = h.current) == null || P.setPointerCapture(A.pointerId), l == null || l(), b(A), A.preventDefault();
|
|
2884
2884
|
},
|
|
2885
2885
|
onPointerMove: (A) => {
|
|
2886
|
-
|
|
2886
|
+
g.current && b(A);
|
|
2887
2887
|
},
|
|
2888
2888
|
onPointerUp: S,
|
|
2889
2889
|
onPointerCancel: S,
|
|
@@ -2932,31 +2932,31 @@ function Cc({ onOpen: t, alone: e }) {
|
|
|
2932
2932
|
] });
|
|
2933
2933
|
}
|
|
2934
2934
|
function Sc(t, e, n, r) {
|
|
2935
|
-
const s = Gt(), [a, o] = z([]), [l, c] = z(0), u = w(/* @__PURE__ */ new Set()), d = w(!1), h = ze(() => new Map(n.filter((
|
|
2935
|
+
const s = Gt(), [a, o] = z([]), [l, c] = z(0), u = w(/* @__PURE__ */ new Set()), d = w(!1), h = ze(() => new Map(n.filter((M) => M.sentenceId != null).map((M) => [M.sentenceId, M])), [n]);
|
|
2936
2936
|
x(() => {
|
|
2937
2937
|
u.current = /* @__PURE__ */ new Set();
|
|
2938
2938
|
}, [t, e]);
|
|
2939
|
-
const
|
|
2939
|
+
const g = Je((M) => o(M), []);
|
|
2940
2940
|
return x(() => {
|
|
2941
2941
|
if (!t || !e || !a.length || d.current) return;
|
|
2942
|
-
const
|
|
2942
|
+
const M = a.filter((f) => {
|
|
2943
2943
|
const y = h.get(f);
|
|
2944
2944
|
return !y || !y.text.trim() || !y.settled || y.translations[e] || y.language && y.language.slice(0, 2).toLowerCase() === e.slice(0, 2).toLowerCase() ? !1 : !u.current.has(`${e}:${f}`);
|
|
2945
2945
|
}).slice(0, 40);
|
|
2946
|
-
if (
|
|
2946
|
+
if (M.length) {
|
|
2947
2947
|
d.current = !0;
|
|
2948
|
-
for (const f of
|
|
2949
|
-
s.client.recordings.translation(t, e,
|
|
2948
|
+
for (const f of M) u.current.add(`${e}:${f}`);
|
|
2949
|
+
s.client.recordings.translation(t, e, M, s.readAs).then((f) => {
|
|
2950
2950
|
f.translations && Object.keys(f.translations).length && r(e, f.translations);
|
|
2951
2951
|
}).catch((f) => {
|
|
2952
2952
|
const y = f == null ? void 0 : f.status;
|
|
2953
2953
|
if (!(y && y >= 400 && y < 500))
|
|
2954
|
-
for (const T of
|
|
2954
|
+
for (const T of M) u.current.delete(`${e}:${T}`);
|
|
2955
2955
|
}).finally(() => {
|
|
2956
2956
|
d.current = !1, c((f) => f + 1);
|
|
2957
2957
|
});
|
|
2958
2958
|
}
|
|
2959
|
-
}, [t, e, a, l, h, r]),
|
|
2959
|
+
}, [t, e, a, l, h, r]), g;
|
|
2960
2960
|
}
|
|
2961
2961
|
function Dc(t) {
|
|
2962
2962
|
return t.live || t.auto ? "From this session" : t.cloned ? t.library === !1 ? "This transcription only" : "Saved in Voices" : "";
|
|
@@ -3015,12 +3015,12 @@ function Ei(t) {
|
|
|
3015
3015
|
function _i(t, e, n = !0) {
|
|
3016
3016
|
const r = e.filter((o) => !o.cloned), s = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Map();
|
|
3017
3017
|
for (const o of t) {
|
|
3018
|
-
const c = (o.voiceId ? e.find((
|
|
3018
|
+
const c = (o.voiceId ? e.find((g) => g.cloned && !g.auto && g.consent !== "pending" && g.id === `clone:${o.voiceId}`) : void 0) ?? (n ? (o.voiceId ? e.find((g) => g.cloned && g.consent !== "pending" && g.id === `clone:${o.voiceId}`) : void 0) ?? (o.key >= 0 ? e.find((g) => g.cloned && g.auto && g.consent !== "pending" && g.speaker === o.key) : void 0) : void 0);
|
|
3019
3019
|
if (c) {
|
|
3020
3020
|
a.set(o.key, c.id), s.add(c.id);
|
|
3021
3021
|
continue;
|
|
3022
3022
|
}
|
|
3023
|
-
const u = r.filter((
|
|
3023
|
+
const u = r.filter((g) => !s.has(g.id)), h = (o.sex ? u.filter((g) => g.gender === o.sex) : [])[0] ?? u[0] ?? r[0];
|
|
3024
3024
|
h && (a.set(o.key, h.id), s.add(h.id));
|
|
3025
3025
|
}
|
|
3026
3026
|
return a;
|
|
@@ -3028,7 +3028,7 @@ function _i(t, e, n = !0) {
|
|
|
3028
3028
|
function _c({ roster: t, selected: e, onSelect: n, noClone: r, building: s, short: a, warn: o, sexOf: l, t: c }) {
|
|
3029
3029
|
const u = t.find((d) => d.key === e) ?? t[0] ?? null;
|
|
3030
3030
|
return u ? /* @__PURE__ */ i("div", { style: { display: "flex", flexWrap: "wrap", gap: 6, padding: "0 2px 9px", margin: "0 -2px" }, children: t.map((d) => {
|
|
3031
|
-
const h = d.key === u.key,
|
|
3031
|
+
const h = d.key === u.key, g = d.key >= 0 ? (o == null ? void 0 : o(d)) ?? null : null, M = d.key >= 0 && !g && !!(s != null && s(d)), f = d.key >= 0 && !g && !M && r(d), y = d.key >= 0 && !g && !M && !f && !d.hasVoice && !!(a != null && a(d));
|
|
3032
3032
|
return /* @__PURE__ */ m(
|
|
3033
3033
|
"button",
|
|
3034
3034
|
{
|
|
@@ -3047,17 +3047,17 @@ function _c({ roster: t, selected: e, onSelect: n, noClone: r, building: s, shor
|
|
|
3047
3047
|
}
|
|
3048
3048
|
),
|
|
3049
3049
|
/* @__PURE__ */ i("span", { style: { fontSize: 12.5, fontWeight: 500, color: h ? "var(--ink-96)" : "var(--ink-62)", whiteSpace: "nowrap" }, children: d.name }),
|
|
3050
|
-
d.hasVoice && !
|
|
3051
|
-
|
|
3050
|
+
d.hasVoice && !g && /* @__PURE__ */ i(Ta, { color: d.fg ?? (h ? "var(--ink-62)" : "var(--ink-45)") }),
|
|
3051
|
+
g && /* @__PURE__ */ i("span", { title: g, "aria-label": g, style: { flex: "none", width: 15, height: 15, marginRight: -2, borderRadius: "50%", background: "#c27c00", color: "#fff", font: "900 10.5px/1 system-ui, sans-serif", display: "flex", alignItems: "center", justifyContent: "center" }, children: "!" }),
|
|
3052
3052
|
y && /* @__PURE__ */ i("span", { title: "Not enough audio to clone", "aria-label": "Not enough audio to clone", style: { flex: "none", display: "flex", marginRight: -2, color: h ? "var(--ink-45)" : "var(--ink-35)" }, children: /* @__PURE__ */ i(oe, { d: J.micOff, size: 13, sw: 1.7 }) }),
|
|
3053
|
-
(f ||
|
|
3053
|
+
(f || M) && /* @__PURE__ */ i("span", { title: M ? "Cloning this voice…" : "No voice clone yet", "aria-label": M ? "Cloning this voice" : "No voice clone yet", style: { flex: "none", width: 10, height: 10, marginRight: -2, display: "flex", alignItems: "center", justifyContent: "center" }, children: M ? /* @__PURE__ */ i(gt, { size: 10, color: "var(--brand)", track: "var(--fill-10)", sw: 1.6 }) : /* @__PURE__ */ i("span", { style: { width: 7, height: 7, borderRadius: "50%", background: "var(--brand)" } }) })
|
|
3054
3054
|
]
|
|
3055
3055
|
},
|
|
3056
3056
|
d.key
|
|
3057
3057
|
);
|
|
3058
3058
|
}) }) : null;
|
|
3059
3059
|
}
|
|
3060
|
-
function Yc({ 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: h = null, problem:
|
|
3060
|
+
function Yc({ 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: h = null, problem: g, noClone: M = null, t: f }) {
|
|
3061
3061
|
const y = ze(() => Ac(e, f), [e, f]), [T, N] = z({});
|
|
3062
3062
|
x(() => {
|
|
3063
3063
|
N({});
|
|
@@ -3068,28 +3068,28 @@ function Yc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
3068
3068
|
return P != null ? !P : !h || !p(A) ? !0 : A === (h === "female" ? f.vcFemale : f.vcMale).toUpperCase();
|
|
3069
3069
|
}, S = !!r && r !== n;
|
|
3070
3070
|
return /* @__PURE__ */ m("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
3071
|
-
|
|
3071
|
+
g && /* @__PURE__ */ m("div", { style: { display: "flex", alignItems: "flex-start", gap: 9, padding: "10px 11px", marginBottom: 10, borderRadius: 11, background: "var(--conf-low-soft)" }, children: [
|
|
3072
3072
|
/* @__PURE__ */ i(oe, { d: J.warnTri, size: 15, sw: 1.7, style: { flex: "none", marginTop: 1, color: "var(--conf-low)" } }),
|
|
3073
|
-
/* @__PURE__ */ i("span", { style: { flex: 1, minWidth: 0, fontSize: 12.5, fontWeight: 300, lineHeight: 1.45, color: "var(--ink-80)", textWrap: "pretty" }, children:
|
|
3074
|
-
/* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(zo, { value:
|
|
3073
|
+
/* @__PURE__ */ i("span", { style: { flex: 1, minWidth: 0, fontSize: 12.5, fontWeight: 300, lineHeight: 1.45, color: "var(--ink-80)", textWrap: "pretty" }, children: g }),
|
|
3074
|
+
/* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(zo, { value: g, label: "Copy this error" }) })
|
|
3075
3075
|
] }),
|
|
3076
3076
|
t,
|
|
3077
|
-
|
|
3077
|
+
M && /* @__PURE__ */ m(xe, { children: [
|
|
3078
3078
|
/* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", gap: 7, padding: "14px 2px 6px", userSelect: "none" }, children: /* @__PURE__ */ i("span", { style: { font: "600 9px var(--vs-font-mono)", letterSpacing: ".13em", color: "var(--ink-62)" }, children: f.vcSheet }) }),
|
|
3079
|
-
/* @__PURE__ */ m("div", { role:
|
|
3080
|
-
(A.key === "Enter" || A.key === " ") && (A.preventDefault(),
|
|
3081
|
-
} : void 0, style: { display: "flex", alignItems: "center", gap: 11, padding: "11px 8px", margin: "0 -6px", borderRadius: 10, cursor:
|
|
3082
|
-
/* @__PURE__ */ i("span", { style: { flex: "none", width: 32, height: 32, boxSizing: "border-box", borderRadius: "50%", border:
|
|
3079
|
+
/* @__PURE__ */ m("div", { role: M.action ? "button" : "status", tabIndex: M.action ? 0 : void 0, title: M.tip, onClick: M.action, onKeyDown: M.action ? (A) => {
|
|
3080
|
+
(A.key === "Enter" || A.key === " ") && (A.preventDefault(), M.action());
|
|
3081
|
+
} : void 0, style: { display: "flex", alignItems: "center", gap: 11, padding: "11px 8px", margin: "0 -6px", borderRadius: 10, cursor: M.action ? "pointer" : "default" }, children: [
|
|
3082
|
+
/* @__PURE__ */ i("span", { style: { flex: "none", width: 32, height: 32, boxSizing: "border-box", borderRadius: "50%", border: M.busy ? 0 : M.action ? "1.5px solid var(--brand)" : "1.5px dashed var(--fill-20)", display: "flex", alignItems: "center", justifyContent: "center" }, children: M.busy ? /* @__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" } }) : /* @__PURE__ */ i(oe, { d: M.action ? J.plus : J.mic, size: 15, sw: M.action ? 2 : 1.6, style: { color: M.action ? "var(--brand)" : "var(--ink-45)" } }) }),
|
|
3083
3083
|
/* @__PURE__ */ m("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
3084
|
-
/* @__PURE__ */ i("div", { style: { fontSize: 14.5, fontWeight:
|
|
3085
|
-
/* @__PURE__ */ i("div", { style: { fontSize: 12, fontWeight: 300, color: "var(--ink-62)", marginTop: 2, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children:
|
|
3084
|
+
/* @__PURE__ */ i("div", { style: { fontSize: 14.5, fontWeight: M.action ? 500 : 400, color: M.action ? "var(--brand)" : "var(--ink-62)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: M.title }),
|
|
3085
|
+
/* @__PURE__ */ i("div", { style: { fontSize: 12, fontWeight: 300, color: "var(--ink-62)", marginTop: 2, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: M.sub })
|
|
3086
3086
|
] })
|
|
3087
3087
|
] })
|
|
3088
3088
|
] }),
|
|
3089
3089
|
y.map(({ v: A, headOn: P, head: O, headCount: V, rule: I }, W) => {
|
|
3090
3090
|
const E = Dc(A), k = a === A.id, Y = b(O), C = (u == null ? void 0 : u(A)) ?? null;
|
|
3091
|
-
return /* @__PURE__ */ m(
|
|
3092
|
-
P && O === f.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: W === 0 && !
|
|
3091
|
+
return /* @__PURE__ */ m(go, { children: [
|
|
3092
|
+
P && O === f.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: W === 0 && !M ? "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: O }) }),
|
|
3093
3093
|
P && O !== f.vcSheet && /* @__PURE__ */ m(
|
|
3094
3094
|
"button",
|
|
3095
3095
|
{
|
|
@@ -3099,7 +3099,7 @@ function Yc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
|
|
|
3099
3099
|
},
|
|
3100
3100
|
title: `${Y ? "Hide " : "Show "}${O.toLowerCase()} voices`,
|
|
3101
3101
|
"aria-expanded": Y,
|
|
3102
|
-
style: { width: "100%", textAlign: "left", font: "inherit", display: "flex", alignItems: "center", gap: 7, padding: Y ? "14px 2px 6px" : "14px 2px 14px", border: 0, borderTop: W === 0 && !
|
|
3102
|
+
style: { width: "100%", textAlign: "left", font: "inherit", display: "flex", alignItems: "center", gap: 7, padding: Y ? "14px 2px 6px" : "14px 2px 14px", border: 0, borderTop: W === 0 && !M ? "0" : "1px solid var(--hair)", background: "transparent", cursor: "pointer", userSelect: "none" },
|
|
3103
3103
|
children: [
|
|
3104
3104
|
/* @__PURE__ */ i(oe, { d: J.chevronDown, size: 12, sw: 2.4, style: { flex: "none", color: "var(--ink-45)", transform: `rotate(${Y ? "0deg" : "-90deg"})`, transition: "transform .18s ease" } }),
|
|
3105
3105
|
/* @__PURE__ */ i("span", { style: { font: "600 9px var(--vs-font-mono)", letterSpacing: ".13em", color: "var(--ink-62)" }, children: O }),
|
|
@@ -3164,7 +3164,7 @@ function Yr(t, e) {
|
|
|
3164
3164
|
return { flag: e ? (n == null ? void 0 : n.flag) ?? "🌐" : $c, code: e ? e.toUpperCase() : "", label: (n == null ? void 0 : n.native) ?? "As spoken", name: (n == null ? void 0 : n.name) ?? "Original" };
|
|
3165
3165
|
}
|
|
3166
3166
|
function Rc(t, e, n = 0, r) {
|
|
3167
|
-
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 = Gt(), { data: c } =
|
|
3167
|
+
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 = Gt(), { data: c } = Ma(async () => {
|
|
3168
3168
|
if (!t || !e) return null;
|
|
3169
3169
|
try {
|
|
3170
3170
|
return await l.client.voices.available(t, { recording: s ?? void 0, shareCode: s ? o ?? void 0 : void 0, asOwner: l.owner });
|
|
@@ -3178,22 +3178,22 @@ function Pc(t) {
|
|
|
3178
3178
|
return (/* @__PURE__ */ new Set([...Object.keys(t.speakers), ...Object.keys(t.speakerIds)])).size;
|
|
3179
3179
|
}
|
|
3180
3180
|
function Qc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, sentenceIds: a }) {
|
|
3181
|
-
const o = Gt(), { data: l, reload: c } =
|
|
3181
|
+
const o = Gt(), { data: l, reload: c } = Ma(async () => {
|
|
3182
3182
|
if (!t || !e) return null;
|
|
3183
3183
|
const X = await o.client.recordings.voice(t, e, o.readAs).catch(() => []);
|
|
3184
3184
|
return { recordingId: t, lang: e, rows: X.filter((L) => L.lang === e) };
|
|
3185
3185
|
}, [t, e, o, n]), u = ze(
|
|
3186
3186
|
() => l && l.lang === e && l.recordingId === t ? l.rows : [],
|
|
3187
3187
|
[l, e, t]
|
|
3188
|
-
), d = ze(() => ea(u, s), [u, s]), h = d ? d.voiceKey || null : s, [
|
|
3188
|
+
), d = ze(() => ea(u, s), [u, s]), h = d ? d.voiceKey || null : s, [g, M] = z(null), [f, y] = z(null), T = w(/* @__PURE__ */ new Set()), N = `${t ?? ""}|${e ?? ""}|${h ?? ""}`, p = Je(async (X, L) => {
|
|
3189
3189
|
if (!t || !e || !n) return;
|
|
3190
3190
|
const ie = L != null && L.size ? null : Ei(X), ne = L != null && L.size ? L : ie, G = ne && ne.size ? Object.fromEntries([...ne].map(([Te, je]) => [String(Te), je])) : null, ee = `${t}|${e}|${G ? JSON.stringify(G) : X ?? ""}`;
|
|
3191
3191
|
if (T.current.has(ee)) return;
|
|
3192
|
-
T.current.add(ee),
|
|
3192
|
+
T.current.add(ee), M(ee), y(null);
|
|
3193
3193
|
const me = { langs: [e] };
|
|
3194
3194
|
G ? me.voiceBySpeaker = G : X && (me.voice = X);
|
|
3195
3195
|
const le = await Ci(o, `/v1/recordings/${t}/voice`, { method: "POST", body: me }).catch(() => null);
|
|
3196
|
-
if (
|
|
3196
|
+
if (M((Te) => Te === ee ? null : Te), !(le != null && le.ok)) {
|
|
3197
3197
|
T.current.delete(ee);
|
|
3198
3198
|
const Te = le ? await le.json().catch(() => null) : null;
|
|
3199
3199
|
y((Te == null ? void 0 : Te.message) || "This voice could not be prepared.");
|
|
@@ -3204,7 +3204,7 @@ function Qc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, senten
|
|
|
3204
3204
|
const X = `${t ?? ""}|${e ?? ""}|`;
|
|
3205
3205
|
for (const L of [...T.current]) L.startsWith(X) && T.current.delete(L);
|
|
3206
3206
|
y(null);
|
|
3207
|
-
}, [t, e]), S = !!d && (d.state === "queued" || d.state === "running") ||
|
|
3207
|
+
}, [t, e]), S = !!d && (d.state === "queued" || d.state === "running") || g === N, A = (d == null ? void 0 : d.state) === "failed" ? d.error || "the render failed" : f, P = (a == null ? void 0 : a.join(",")) ?? "", [O, V] = z(null), I = ze(() => new Set((d == null ? void 0 : d.clips) ?? []), [d]), W = ze(() => n && P ? P.split(",").map(Number).filter((X) => !I.has(X)) : [], [n, P, I]), E = w(null);
|
|
3208
3208
|
x(() => {
|
|
3209
3209
|
if (!n || !t || !e || !W.length) return;
|
|
3210
3210
|
const X = O ?? W[0], L = W.find((me) => me >= X) ?? W[0], ie = `${t}|${e}|${h ?? ""}`, ne = E.current;
|
|
@@ -3235,11 +3235,11 @@ function Qc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, senten
|
|
|
3235
3235
|
}
|
|
3236
3236
|
const Vc = { share: J.share, delay: J.tabGauge, video: J.video, source: J.tabSources, script: J.tabScript, fix: J.tabFix, ending: J.tabEnding, summary: J.tabSummary, export: J.tabExport, settings: J.tabSettings, sources: J.tabSources, recs: J.mic };
|
|
3237
3237
|
function va({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s }) {
|
|
3238
|
-
const o = s && t.length <= 3, l = t.some((T) => T.key === e), [c, u] = z(null), d = w(null), [h,
|
|
3238
|
+
const o = s && t.length <= 3, l = t.some((T) => T.key === e), [c, u] = z(null), d = w(null), [h, g] = z(0);
|
|
3239
3239
|
x(() => {
|
|
3240
|
-
d.current &&
|
|
3240
|
+
d.current && g(d.current.offsetWidth);
|
|
3241
3241
|
}, [c == null ? void 0 : c.k]);
|
|
3242
|
-
const
|
|
3242
|
+
const M = (T, N) => {
|
|
3243
3243
|
const p = T.currentTarget.querySelector(".tabbar__label");
|
|
3244
3244
|
if (o || s || N.key === e || p && getComputedStyle(p).opacity === "1") {
|
|
3245
3245
|
c && u(null);
|
|
@@ -3268,7 +3268,7 @@ function va({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
|
|
|
3268
3268
|
return s ? /* @__PURE__ */ m("button", { type: "button", role: "tab", "aria-selected": N, title: T.label, className: `tabbar__tab${N ? " is-on" : ""}`, style: { flex: b }, onClick: A, children: [
|
|
3269
3269
|
S && /* @__PURE__ */ i(oe, { d: S, size: 15, sw: T.sw ?? 2, style: { flex: "none" } }),
|
|
3270
3270
|
p && /* @__PURE__ */ i("span", { className: "tabbar__label", children: T.label })
|
|
3271
|
-
] }, T.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: b }, onMouseEnter: (P) =>
|
|
3271
|
+
] }, T.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: b }, onMouseEnter: (P) => M(P, T), onMouseMove: (P) => M(P, T), onClick: A, children: /* @__PURE__ */ m("button", { type: "button", role: "tab", "aria-selected": N, "aria-label": T.label, className: `tabbar__tab${N ? " is-on" : ""}${(c == null ? void 0 : c.k) === T.key ? " is-tip" : ""}`, children: [
|
|
3272
3272
|
S && /* @__PURE__ */ i(oe, { d: S, size: 15, sw: T.sw ?? 2, className: "tabbar__icon", style: { flex: "none", transform: N && !o ? "scale(1.12)" : "none" } }),
|
|
3273
3273
|
/* @__PURE__ */ i("span", { className: "tabbar__grow", "data-tab-lw": "", style: { gridTemplateColumns: p ? "1fr" : "0fr", marginLeft: p && S ? 6 : 0 }, children: /* @__PURE__ */ i("span", { className: "tabbar__label", "data-tab-l": "", style: { opacity: p ? 1 : 0, transform: p ? "none" : "translateX(-6px)" }, children: T.label }) })
|
|
3274
3274
|
] }) }, T.key);
|
|
@@ -3291,17 +3291,17 @@ function Wc({ audio: t, video: e, formats: n, onExport: r }) {
|
|
|
3291
3291
|
}).finally(() => {
|
|
3292
3292
|
u.current && l(null);
|
|
3293
3293
|
}));
|
|
3294
|
-
},
|
|
3294
|
+
}, g = (f, y) => {
|
|
3295
3295
|
o || (l(f), Promise.resolve().then(() => y.onClick()).then(() => {
|
|
3296
3296
|
u.current && d(f);
|
|
3297
3297
|
}).catch(() => {
|
|
3298
3298
|
}).finally(() => {
|
|
3299
3299
|
u.current && l(null);
|
|
3300
3300
|
}));
|
|
3301
|
-
},
|
|
3301
|
+
}, M = (f, y, T, N) => /* @__PURE__ */ m(xe, { children: [
|
|
3302
3302
|
/* @__PURE__ */ i(xr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: N }),
|
|
3303
|
-
/* @__PURE__ */ m("button", { type: "button", className: "dlrow", disabled: o != null, "aria-busy": o === f || void 0, onClick: () =>
|
|
3304
|
-
o === f ? /* @__PURE__ */ i(
|
|
3303
|
+
/* @__PURE__ */ m("button", { type: "button", className: "dlrow", disabled: o != null, "aria-busy": o === f || void 0, onClick: () => g(f, y), style: o && o !== f ? { opacity: 0.45 } : void 0, children: [
|
|
3304
|
+
o === f ? /* @__PURE__ */ i(gt, { size: 17, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: T, size: 17, sw: 1.5, style: { flex: "none", color: "var(--ink-70)" } }),
|
|
3305
3305
|
/* @__PURE__ */ m("span", { style: { flex: 1, minWidth: 0, display: "flex", flexDirection: "column", gap: 1, textAlign: "left" }, children: [
|
|
3306
3306
|
/* @__PURE__ */ i("span", { style: { fontSize: 13, fontWeight: 500, color: "var(--ink-96)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: y.name }),
|
|
3307
3307
|
/* @__PURE__ */ i("span", { style: { font: "500 9.5px var(--vs-font-mono)", color: "var(--ink-40)", letterSpacing: ".04em" }, children: y.meta })
|
|
@@ -3310,12 +3310,12 @@ function Wc({ audio: t, video: e, formats: n, onExport: r }) {
|
|
|
3310
3310
|
] })
|
|
3311
3311
|
] });
|
|
3312
3312
|
return /* @__PURE__ */ m("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
|
|
3313
|
-
t &&
|
|
3314
|
-
e &&
|
|
3313
|
+
t && M("audio", t, Hc, "DOWNLOAD AUDIO"),
|
|
3314
|
+
e && M("video", e, J.video, "DOWNLOAD VIDEO"),
|
|
3315
3315
|
n !== !1 && /* @__PURE__ */ m(xe, { children: [
|
|
3316
3316
|
/* @__PURE__ */ i(xr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "EXPORT AS" }),
|
|
3317
3317
|
/* @__PURE__ */ i("div", { className: "fmtgrid", children: _r.map((f) => /* @__PURE__ */ m("button", { type: "button", className: "fmtgrid__cell", title: o === f.key ? `Building the ${f.name}…` : f.note, disabled: o != null, "aria-busy": o === f.key || void 0, onClick: () => h(f.key), style: o && o !== f.key ? { opacity: 0.45 } : void 0, children: [
|
|
3318
|
-
o === f.key ? /* @__PURE__ */ i(
|
|
3318
|
+
o === f.key ? /* @__PURE__ */ i(gt, { size: 16, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: s === f.key ? J.check : f.icon, size: 16, sw: 1.6, style: { color: s === f.key ? "var(--brand)" : "var(--ink-62)" } }),
|
|
3319
3319
|
/* @__PURE__ */ i("span", { children: f.name })
|
|
3320
3320
|
] }, f.key)) })
|
|
3321
3321
|
] })
|
|
@@ -3382,7 +3382,7 @@ ${a}`).catch(() => {
|
|
|
3382
3382
|
/* @__PURE__ */ i("div", { style: { fontSize: 15, fontWeight: 600, lineHeight: 1.3, letterSpacing: "-.15px", color: "var(--ink-96)", textWrap: "pretty" }, children: s }),
|
|
3383
3383
|
/* @__PURE__ */ i("div", { style: { fontSize: 13, fontWeight: 300, lineHeight: 1.55, color: "var(--ink-80)", textWrap: "pretty", whiteSpace: "pre-line" }, children: a })
|
|
3384
3384
|
] }) : t.state === "unavailable" ? l("No summary for this recording.") : t.state === "not_requested" ? t.request ? l("This recording was made without a summary.", { label: "Summarize", onClick: t.request }) : l("Recordings under a minute and files of a batch are not summarised.") : /* @__PURE__ */ m("div", { style: { display: "flex", alignItems: "center", gap: 10, fontSize: 13, fontWeight: 300, color: "var(--ink-45)" }, children: [
|
|
3385
|
-
/* @__PURE__ */ i(
|
|
3385
|
+
/* @__PURE__ */ i(gt, { size: 14, color: "var(--brand)", track: "var(--fill-12)" }),
|
|
3386
3386
|
t.slow ? "Still writing the summary…" : "Writing the summary…"
|
|
3387
3387
|
] })
|
|
3388
3388
|
] });
|
|
@@ -3404,10 +3404,10 @@ function Kc(t = !0, e) {
|
|
|
3404
3404
|
const c = (h) => {
|
|
3405
3405
|
h.button !== 0 || h.target.closest("button,a,input,textarea,select") || (l = !0, a = h.clientY, o = s.scrollTop, s.classList.add("is-dragging"));
|
|
3406
3406
|
}, u = (h) => {
|
|
3407
|
-
var
|
|
3407
|
+
var M;
|
|
3408
3408
|
if (!l) return;
|
|
3409
|
-
const
|
|
3410
|
-
Math.abs(
|
|
3409
|
+
const g = h.clientY - a;
|
|
3410
|
+
Math.abs(g) > 2 && ((M = s.setPointerCapture) == null || M.call(s, h.pointerId)), s.scrollTop = o - g;
|
|
3411
3411
|
}, d = () => {
|
|
3412
3412
|
l = !1, s.classList.remove("is-dragging");
|
|
3413
3413
|
};
|
|
@@ -3427,14 +3427,14 @@ function Xc(t, e) {
|
|
|
3427
3427
|
(e.forcePin ?? []).forEach((p) => {
|
|
3428
3428
|
l = l.filter((b) => b !== `!${p}`), s.includes(p) && !l.includes(p) && (l = [p, ...l]);
|
|
3429
3429
|
});
|
|
3430
|
-
const u = (p) => (e.forcePin ?? []).includes(p) && !c.includes(p), d = a ? l.filter((p) => s.includes(p) && o.includes(p)) : [], h = s.filter((p) => !d.includes(p)),
|
|
3430
|
+
const u = (p) => (e.forcePin ?? []).includes(p) && !c.includes(p), d = a ? l.filter((p) => s.includes(p) && o.includes(p)) : [], h = s.filter((p) => !d.includes(p)), g = e.cur && e.cur !== "none" && h.includes(e.cur) ? e.cur : e.pref && h.includes(e.pref) ? e.pref : h[0] ?? null, M = (p) => {
|
|
3431
3431
|
const b = h.filter((S) => S !== p);
|
|
3432
3432
|
return b[h.indexOf(p)] ?? b[b.length - 1] ?? null;
|
|
3433
3433
|
}, f = (p, b) => {
|
|
3434
3434
|
if (!o.includes(p)) return;
|
|
3435
3435
|
const S = d.filter((A) => A !== p);
|
|
3436
|
-
if (S.splice(b ?? S.length, 0, p),
|
|
3437
|
-
const A =
|
|
3436
|
+
if (S.splice(b ?? S.length, 0, p), g === p) {
|
|
3437
|
+
const A = M(p);
|
|
3438
3438
|
A && e.onPick(A);
|
|
3439
3439
|
}
|
|
3440
3440
|
r([...S.filter((A) => !u(A) || A === p), ...c.filter((A) => !S.includes(A) && A !== `!${p}`)]);
|
|
@@ -3446,7 +3446,7 @@ function Xc(t, e) {
|
|
|
3446
3446
|
}, N = (p) => {
|
|
3447
3447
|
const b = d.includes(p), S = s.includes(p);
|
|
3448
3448
|
return {
|
|
3449
|
-
show: S && (!a || b ||
|
|
3449
|
+
show: S && (!a || b || g === p),
|
|
3450
3450
|
pinned: b,
|
|
3451
3451
|
order: b ? d.indexOf(p) + 1 : 1e3,
|
|
3452
3452
|
pill: a && S && o.includes(p) && h.length > 0 && (b || h.length > 1),
|
|
@@ -3454,7 +3454,7 @@ function Xc(t, e) {
|
|
|
3454
3454
|
toggle: () => b ? y(p) : f(p)
|
|
3455
3455
|
};
|
|
3456
3456
|
};
|
|
3457
|
-
return { id: t, tabbed: a && h.length > 1, cur:
|
|
3457
|
+
return { id: t, tabbed: a && h.length > 1, cur: g, seq: d, pinnable: o, tabKeys: h, stripTabs: e.tabs.filter((p) => h.includes(p.key)), panel: N, pin: f, unpin: y };
|
|
3458
3458
|
}
|
|
3459
3459
|
function eu({ col: t, order: e, render: n, grip: r, onPick: s, wrapClass: a }) {
|
|
3460
3460
|
return tu(t), /* @__PURE__ */ m(xe, { children: [
|
|
@@ -3560,17 +3560,17 @@ function tu(t) {
|
|
|
3560
3560
|
if (!b || !S || !e.current.tabbed || !e.current.pinnable.includes(b.getAttribute("data-panel-key")) || p.closest("[role=button],[role=tab],button,a,input,textarea,select,iframe,[data-pin-pill],[contenteditable=true]")) return a(null);
|
|
3561
3561
|
const A = S.getBoundingClientRect(), P = parseFloat(getComputedStyle(b).getPropertyValue("--grip-h")) || 30;
|
|
3562
3562
|
a(N.clientY >= A.top && N.clientY <= A.top + P ? b : null);
|
|
3563
|
-
},
|
|
3563
|
+
}, g = (N) => {
|
|
3564
3564
|
if (!r || N.button !== 0) return;
|
|
3565
3565
|
const p = d(r);
|
|
3566
3566
|
p && (N.preventDefault(), N.stopImmediatePropagation(), s = { el: r, col: p, key: r.getAttribute("data-panel-key"), x0: N.clientX, y0: N.clientY, on: !1 });
|
|
3567
|
-
},
|
|
3567
|
+
}, M = () => u(!0), f = () => u(!1), y = (N) => {
|
|
3568
3568
|
N.key === "Escape" && s && (N.preventDefault(), N.stopImmediatePropagation(), u(!1));
|
|
3569
3569
|
}, T = () => {
|
|
3570
3570
|
s || a(null);
|
|
3571
3571
|
};
|
|
3572
|
-
return document.addEventListener("pointermove", h, !0), document.addEventListener("pointerdown",
|
|
3573
|
-
u(!1), a(null), document.removeEventListener("pointermove", h, !0), document.removeEventListener("pointerdown",
|
|
3572
|
+
return document.addEventListener("pointermove", h, !0), document.addEventListener("pointerdown", g, !0), window.addEventListener("pointerup", M), window.addEventListener("pointercancel", f), window.addEventListener("keydown", y, !0), document.addEventListener("pointerleave", T), () => {
|
|
3573
|
+
u(!1), a(null), document.removeEventListener("pointermove", h, !0), document.removeEventListener("pointerdown", g, !0), window.removeEventListener("pointerup", M), window.removeEventListener("pointercancel", f), window.removeEventListener("keydown", y, !0), document.removeEventListener("pointerleave", T);
|
|
3574
3574
|
};
|
|
3575
3575
|
}, [n]);
|
|
3576
3576
|
}
|
|
@@ -3579,17 +3579,17 @@ function nu({ id: t, className: e, gap: n, hidden: r, plain: s, children: a }) {
|
|
|
3579
3579
|
ru(u), x(() => {
|
|
3580
3580
|
document.documentElement.style.setProperty("--colw", `${o}px`);
|
|
3581
3581
|
}, [o]);
|
|
3582
|
-
const d = (
|
|
3583
|
-
const
|
|
3584
|
-
if (
|
|
3585
|
-
|
|
3586
|
-
const y =
|
|
3582
|
+
const d = (g) => {
|
|
3583
|
+
const M = c.current, f = M == null ? void 0 : M.parentElement;
|
|
3584
|
+
if (g.button !== 0 || !M || !f) return;
|
|
3585
|
+
g.preventDefault();
|
|
3586
|
+
const y = g.currentTarget, T = getComputedStyle(f), N = f.clientWidth - parseFloat(T.paddingLeft) - parseFloat(T.paddingRight) - (parseFloat(T.columnGap) || 0), p = 320, b = 320, S = Math.max(p, N - b), A = g.clientX, P = M.getBoundingClientRect().width;
|
|
3587
3587
|
let O = P;
|
|
3588
3588
|
y.classList.add("is-on");
|
|
3589
3589
|
const V = { cur: document.body.style.cursor, sel: document.body.style.userSelect };
|
|
3590
3590
|
document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
|
|
3591
3591
|
const I = (E) => {
|
|
3592
|
-
O = Math.round(Math.min(S, Math.max(p, P + (A - E.clientX)))),
|
|
3592
|
+
O = Math.round(Math.min(S, Math.max(p, P + (A - E.clientX)))), M.style.flexBasis = `${O}px`, document.documentElement.style.setProperty("--colw", `${O}px`);
|
|
3593
3593
|
}, W = () => {
|
|
3594
3594
|
window.removeEventListener("pointermove", I), window.removeEventListener("pointerup", W), window.removeEventListener("pointercancel", W), document.body.style.cursor = V.cur, document.body.style.userSelect = V.sel, y.classList.remove("is-on"), l(O);
|
|
3595
3595
|
};
|
|
@@ -3615,8 +3615,8 @@ function ru(t) {
|
|
|
3615
3615
|
h.style.gridRowEnd && (h.style.gridRowEnd = "");
|
|
3616
3616
|
return;
|
|
3617
3617
|
}
|
|
3618
|
-
const
|
|
3619
|
-
h.style.gridRowEnd !==
|
|
3618
|
+
const g = h.getBoundingClientRect().height, M = g > 0 ? `span ${Math.ceil(g + n)}` : "span 1";
|
|
3619
|
+
h.style.gridRowEnd !== M && (h.style.gridRowEnd = M);
|
|
3620
3620
|
});
|
|
3621
3621
|
}, a = () => {
|
|
3622
3622
|
r || (r = requestAnimationFrame(s));
|
|
@@ -3633,42 +3633,42 @@ function su(t) {
|
|
|
3633
3633
|
}
|
|
3634
3634
|
const iu = 1500, au = 3e5;
|
|
3635
3635
|
function ou(t) {
|
|
3636
|
-
const e = Gt(), [n, r] = z(null), [s, a] = z(null), [o, l] = z(null), [c, u] = z(null), d = w(null), h = w(null),
|
|
3637
|
-
|
|
3636
|
+
const e = Gt(), [n, r] = z(null), [s, a] = z(null), [o, l] = z(null), [c, u] = z(null), d = w(null), h = w(null), g = w(null), M = w(0), f = Je(() => {
|
|
3637
|
+
g.current && (clearTimeout(g.current), g.current = null), d.current && (d.current.pause(), d.current.removeAttribute("src"), d.current.load(), d.current = null), h.current && (URL.revokeObjectURL(h.current), h.current = null);
|
|
3638
3638
|
}, []), y = Je(() => {
|
|
3639
|
-
|
|
3639
|
+
M.current += 1, f(), a(null), l(null);
|
|
3640
3640
|
}, [f]), T = Je(() => {
|
|
3641
3641
|
y(), r(null);
|
|
3642
3642
|
}, [y]);
|
|
3643
3643
|
x(() => () => {
|
|
3644
|
-
|
|
3644
|
+
M.current += 1, f();
|
|
3645
3645
|
}, [f]);
|
|
3646
3646
|
const N = Je((p) => {
|
|
3647
|
-
|
|
3648
|
-
const b =
|
|
3647
|
+
M.current += 1;
|
|
3648
|
+
const b = M.current;
|
|
3649
3649
|
if (f(), r(p.id), a(null), l(null), u(null), !t) return;
|
|
3650
3650
|
let S = p.previewUrl ? `${e.origin}${p.previewUrl}` : `${e.origin}/v1/voices/preview?voice=${encodeURIComponent(p.id)}&lang=${encodeURIComponent(t)}`;
|
|
3651
3651
|
Zn() === "caf" && (S += `${S.includes("?") ? "&" : "?"}format=caf`);
|
|
3652
3652
|
const A = Date.now();
|
|
3653
3653
|
e.shareCode && S.includes("recording=") && (S += `&shareCode=${encodeURIComponent(e.shareCode)}`);
|
|
3654
3654
|
const P = async () => {
|
|
3655
|
-
if (
|
|
3655
|
+
if (M.current !== b) return;
|
|
3656
3656
|
let O;
|
|
3657
3657
|
try {
|
|
3658
3658
|
const E = e.owner ? await e.bearer() : void 0;
|
|
3659
3659
|
O = await fetch(S, { headers: E ? { Authorization: `Bearer ${E}` } : {} });
|
|
3660
3660
|
} catch (E) {
|
|
3661
|
-
if (
|
|
3661
|
+
if (M.current !== b) return;
|
|
3662
3662
|
l(null), u(Ct(E));
|
|
3663
3663
|
return;
|
|
3664
3664
|
}
|
|
3665
|
-
if (
|
|
3665
|
+
if (M.current !== b) return;
|
|
3666
3666
|
if (O.status === 202 || O.status === 503) {
|
|
3667
3667
|
if (Date.now() - A > au) {
|
|
3668
3668
|
l(null), u({ message: "This voice is still being fetched. Try it again in a moment." });
|
|
3669
3669
|
return;
|
|
3670
3670
|
}
|
|
3671
|
-
l(p.id),
|
|
3671
|
+
l(p.id), g.current = setTimeout(() => {
|
|
3672
3672
|
P();
|
|
3673
3673
|
}, iu);
|
|
3674
3674
|
return;
|
|
@@ -3680,15 +3680,15 @@ function ou(t) {
|
|
|
3680
3680
|
return;
|
|
3681
3681
|
}
|
|
3682
3682
|
const V = await O.blob();
|
|
3683
|
-
if (
|
|
3683
|
+
if (M.current !== b) return;
|
|
3684
3684
|
l(null), h.current = URL.createObjectURL(V);
|
|
3685
3685
|
const I = new Audio(h.current);
|
|
3686
3686
|
I.playsInline = !0;
|
|
3687
3687
|
const W = () => {
|
|
3688
|
-
|
|
3688
|
+
M.current === b && (f(), a(null));
|
|
3689
3689
|
};
|
|
3690
3690
|
I.onended = W, I.onerror = W, d.current = I, I.play().then(() => {
|
|
3691
|
-
|
|
3691
|
+
M.current === b && a(p.id);
|
|
3692
3692
|
}).catch(W);
|
|
3693
3693
|
};
|
|
3694
3694
|
P();
|
|
@@ -3814,21 +3814,21 @@ function Zt(t, e, n) {
|
|
|
3814
3814
|
const r = (s = t == null ? void 0 : t.words[t.words.length - 1]) == null ? void 0 : s.end;
|
|
3815
3815
|
return r != null && r > e ? r : (t == null ? void 0 : t.end) != null && t.end > e ? t.end : n > e ? n : e + 4;
|
|
3816
3816
|
}
|
|
3817
|
-
function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: u, lead: d, onTime: h, waiting:
|
|
3818
|
-
const
|
|
3817
|
+
function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: u, lead: d, onTime: h, waiting: g = !1 }) {
|
|
3818
|
+
const M = w(null), [f, y] = z(!1);
|
|
3819
3819
|
x(() => {
|
|
3820
|
-
if (!
|
|
3820
|
+
if (!g) {
|
|
3821
3821
|
y(!1);
|
|
3822
3822
|
return;
|
|
3823
3823
|
}
|
|
3824
3824
|
const Z = setTimeout(() => y(!0), 300);
|
|
3825
3825
|
return () => clearTimeout(Z);
|
|
3826
|
-
}, [
|
|
3826
|
+
}, [g]);
|
|
3827
3827
|
const T = r && !f, N = w(!1), [p, b] = z(!1), S = (Z, Ne = []) => {
|
|
3828
3828
|
var q, Le;
|
|
3829
3829
|
if (!(N.current && (Z === "pauseVideo" || Z === "seekTo" || Z === "setPlaybackRate")))
|
|
3830
3830
|
try {
|
|
3831
|
-
(Le = (q =
|
|
3831
|
+
(Le = (q = M.current) == null ? void 0 : q.contentWindow) == null || Le.postMessage(JSON.stringify({ event: "command", func: Z, args: Ne }), "*");
|
|
3832
3832
|
} catch {
|
|
3833
3833
|
}
|
|
3834
3834
|
}, A = w(null), P = w(!1), O = w(!1), V = w(!1), I = w(a);
|
|
@@ -3858,7 +3858,7 @@ function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3858
3858
|
const je = () => {
|
|
3859
3859
|
var Z, Ne;
|
|
3860
3860
|
try {
|
|
3861
|
-
(Ne = (Z =
|
|
3861
|
+
(Ne = (Z = M.current) == null ? void 0 : Z.contentWindow) == null || Ne.postMessage(JSON.stringify({ event: "listening", id: "reader" }), "*");
|
|
3862
3862
|
} catch {
|
|
3863
3863
|
}
|
|
3864
3864
|
(!W.current || W.current.muted) && S("mute"), ee(!0);
|
|
@@ -3882,8 +3882,8 @@ function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3882
3882
|
}, ce = () => X.current;
|
|
3883
3883
|
return x(() => {
|
|
3884
3884
|
const Z = (Ne) => {
|
|
3885
|
-
var Fe, Ae, ue, _e, Ve, Q, fe, de, ae,
|
|
3886
|
-
if (Ne.source !== ((Fe =
|
|
3885
|
+
var Fe, Ae, ue, _e, Ve, Q, fe, de, ae, Me, Ye, U, $, K, se, he;
|
|
3886
|
+
if (Ne.source !== ((Fe = M.current) == null ? void 0 : Fe.contentWindow) || typeof Ne.data != "string") return;
|
|
3887
3887
|
let q = null;
|
|
3888
3888
|
try {
|
|
3889
3889
|
q = JSON.parse(Ne.data);
|
|
@@ -3899,7 +3899,7 @@ function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3899
3899
|
if (Se.current = { start: Ie.seekableStart, end: Ie.seekableEnd }, be && !ve.current && (S("pauseVideo"), D(C.current) || S("seekTo", [C.current, !0])), !B.current && we.current != null) {
|
|
3900
3900
|
B.current = !0;
|
|
3901
3901
|
const ye = we.current < Ie.seekableStart - 1;
|
|
3902
|
-
(ae = De.current) == null || ae.call(De, ye), ye && ((
|
|
3902
|
+
(ae = De.current) == null || ae.call(De, ye), ye && ((Me = $e.current) == null || Me.call($e));
|
|
3903
3903
|
}
|
|
3904
3904
|
}
|
|
3905
3905
|
typeof ((Ye = q == null ? void 0 : q.info) == null ? void 0 : Ye.currentTime) == "number" && (X.current = q.info.currentTime, (U = W.current) == null || U.onInfo({ t: q.info.currentTime }), !N.current && L.current === 1 && (($ = te.current) == null || $.call(te, q.info.currentTime))), ((K = q == null ? void 0 : q.info) == null ? void 0 : K.muted) === !1 && !W.current && S("mute"), typeof ((se = q == null ? void 0 : q.info) == null ? void 0 : se.muted) == "boolean" && ((he = W.current) == null || he.onInfo({ muted: q.info.muted }));
|
|
@@ -3932,7 +3932,7 @@ function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3932
3932
|
}, 1e3);
|
|
3933
3933
|
return () => clearInterval(q);
|
|
3934
3934
|
}, [G]), /* @__PURE__ */ m("div", { className: `txyt${p ? " txyt--ad" : ""}`, children: [
|
|
3935
|
-
/* @__PURE__ */ i("iframe", { ref:
|
|
3935
|
+
/* @__PURE__ */ i("iframe", { ref: M, 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" }),
|
|
3936
3936
|
!p && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
|
|
3937
3937
|
/* @__PURE__ */ i("div", { className: `txyt__paused${ie && !p && !F ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(xt, { size: 44 }) }) }),
|
|
3938
3938
|
p && /* @__PURE__ */ i("div", { className: "txyt__ad", "aria-live": "polite", children: "Ad on YouTube · the transcript carries on after it" }),
|
|
@@ -3942,10 +3942,10 @@ function fu({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
|
|
|
3942
3942
|
] })
|
|
3943
3943
|
] });
|
|
3944
3944
|
}
|
|
3945
|
-
const
|
|
3945
|
+
const gu = /* @__PURE__ */ m(xe, { children: [
|
|
3946
3946
|
/* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
|
|
3947
3947
|
/* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
|
|
3948
|
-
] }),
|
|
3948
|
+
] }), Mu = /* @__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" });
|
|
3949
3949
|
function mu({ player: t, size: e }) {
|
|
3950
3950
|
const n = t.muted ? "Unmute" : "Mute";
|
|
3951
3951
|
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 ? J.volumeOff : J.volume, size: 17, sw: 1.6, style: { color: t.muted ? "var(--ink-38)" : "var(--ink-70)" } }) });
|
|
@@ -3965,7 +3965,7 @@ function vu(t, e) {
|
|
|
3965
3965
|
const c = s.current, u = performance.now(), d = () => {
|
|
3966
3966
|
const h = l > 0 ? Math.min(1, (performance.now() - u) / l) : 1;
|
|
3967
3967
|
s.current = c + (o - c) * h;
|
|
3968
|
-
for (const
|
|
3968
|
+
for (const g of n.current) g.setVolume(s.current);
|
|
3969
3969
|
h < 1 && (r.current = requestAnimationFrame(d));
|
|
3970
3970
|
};
|
|
3971
3971
|
d();
|
|
@@ -3979,8 +3979,8 @@ function vu(t, e) {
|
|
|
3979
3979
|
}
|
|
3980
3980
|
function wu(t, e, n, r) {
|
|
3981
3981
|
var De;
|
|
3982
|
-
const s = w(null), a = w(!1), o = w(!1), [l, c] = z(null), [u, d] = z(!0), h = w(!0),
|
|
3983
|
-
y.current =
|
|
3982
|
+
const s = w(null), a = w(!1), o = w(!1), [l, c] = z(null), [u, d] = z(!0), h = w(!0), g = w(!1), [M, f] = z(0), y = w(0);
|
|
3983
|
+
y.current = M;
|
|
3984
3984
|
const T = w({ t: 0, at: 0 }), N = w(n);
|
|
3985
3985
|
N.current = n;
|
|
3986
3986
|
const p = w(r);
|
|
@@ -4002,7 +4002,7 @@ function wu(t, e, n, r) {
|
|
|
4002
4002
|
}
|
|
4003
4003
|
}
|
|
4004
4004
|
}), []);
|
|
4005
|
-
E.muted = h.current ||
|
|
4005
|
+
E.muted = h.current || g.current, x(() => {
|
|
4006
4006
|
if (l !== 1) return;
|
|
4007
4007
|
let B = 0;
|
|
4008
4008
|
const F = () => {
|
|
@@ -4015,16 +4015,16 @@ function wu(t, e, n, r) {
|
|
|
4015
4015
|
};
|
|
4016
4016
|
return B = requestAnimationFrame(F), () => cancelAnimationFrame(B);
|
|
4017
4017
|
}, [l]), x(() => {
|
|
4018
|
-
!b || r == null || r <
|
|
4019
|
-
}, [b, r,
|
|
4018
|
+
!b || r == null || r < M + 1.5 || (P(!1), O("playVideo"));
|
|
4019
|
+
}, [b, r, M]), x(() => {
|
|
4020
4020
|
r == null && A.current && (P(!1), O("playVideo"));
|
|
4021
4021
|
}, [r]);
|
|
4022
4022
|
const k = t.length ? ((De = t[t.length - 1].words[t[t.length - 1].words.length - 1]) == null ? void 0 : De.end) ?? t[t.length - 1].start + 4 : 0, Y = e || k || 1, C = ze(() => {
|
|
4023
4023
|
if (!t.length) return 0;
|
|
4024
4024
|
let B = 0;
|
|
4025
|
-
for (let F = 0; F < t.length; F++) t[F].start <=
|
|
4025
|
+
for (let F = 0; F < t.length; F++) t[F].start <= M + 0.05 && (B = F);
|
|
4026
4026
|
return B;
|
|
4027
|
-
}, [t,
|
|
4027
|
+
}, [t, M]), [te, X] = z(0), L = (B) => {
|
|
4028
4028
|
const F = Math.max(0, p.current != null ? Math.min(B, Math.max(0, p.current - 0.5)) : B);
|
|
4029
4029
|
O("seekTo", [F + N.current, !0]), T.current = { t: F, at: performance.now() }, f(F), X((_) => _ + 1);
|
|
4030
4030
|
}, ie = w(!1), ne = w(void 0), G = (B) => {
|
|
@@ -4054,17 +4054,17 @@ function wu(t, e, n, r) {
|
|
|
4054
4054
|
P(!1);
|
|
4055
4055
|
return;
|
|
4056
4056
|
}
|
|
4057
|
-
|
|
4057
|
+
M >= Y - 0.25 && L(0), ee();
|
|
4058
4058
|
}, Te = (B) => {
|
|
4059
4059
|
const F = t[Math.max(0, Math.min(t.length - 1, B))];
|
|
4060
4060
|
F && L(F.start);
|
|
4061
4061
|
}, je = w(!1), Se = () => {
|
|
4062
|
-
const B = h.current ||
|
|
4062
|
+
const B = h.current || g.current;
|
|
4063
4063
|
E.muted = B, O(B ? "mute" : "unMute");
|
|
4064
4064
|
}, we = (B) => {
|
|
4065
4065
|
h.current = B, d(B), Se();
|
|
4066
4066
|
}, ve = (B) => {
|
|
4067
|
-
|
|
4067
|
+
g.current !== !B && (g.current = !B, Se());
|
|
4068
4068
|
};
|
|
4069
4069
|
return { player: {
|
|
4070
4070
|
autoplay: async () => {
|
|
@@ -4076,11 +4076,11 @@ function wu(t, e, n, r) {
|
|
|
4076
4076
|
we(!0);
|
|
4077
4077
|
for (let _ = 0; _ < 5 && I.current !== 1; _++)
|
|
4078
4078
|
O("playVideo"), await F(() => I.current === 1, 1500);
|
|
4079
|
-
return I.current !== 1 ? null :
|
|
4079
|
+
return I.current !== 1 ? null : g.current ? (we(!0), !1) : (we(!1), await B(1200), I.current === 1 && W.current === !1 ? !0 : (we(!0), O("playVideo"), !1));
|
|
4080
4080
|
},
|
|
4081
4081
|
playing: V,
|
|
4082
4082
|
ended: l === 0,
|
|
4083
|
-
t:
|
|
4083
|
+
t: M,
|
|
4084
4084
|
idx: C,
|
|
4085
4085
|
dur: Y,
|
|
4086
4086
|
muted: u,
|
|
@@ -4089,7 +4089,7 @@ function wu(t, e, n, r) {
|
|
|
4089
4089
|
seekRow: Te,
|
|
4090
4090
|
toggleMute: () => {
|
|
4091
4091
|
const B = !h.current;
|
|
4092
|
-
we(B), !B && !
|
|
4092
|
+
we(B), !B && !g.current && I.current === 1 && setTimeout(() => {
|
|
4093
4093
|
I.current === 2 && !h.current && (we(!0), O("playVideo"));
|
|
4094
4094
|
}, 900);
|
|
4095
4095
|
},
|
|
@@ -4101,7 +4101,7 @@ function wu(t, e, n, r) {
|
|
|
4101
4101
|
stop: () => {
|
|
4102
4102
|
me(), L(0);
|
|
4103
4103
|
},
|
|
4104
|
-
engaged: V ||
|
|
4104
|
+
engaged: V || M > 0,
|
|
4105
4105
|
prev: () => Te(C - 1),
|
|
4106
4106
|
next: () => Te(C + 1),
|
|
4107
4107
|
hold: () => {
|
|
@@ -4122,8 +4122,8 @@ function wu(t, e, n, r) {
|
|
|
4122
4122
|
}
|
|
4123
4123
|
function ku(t, e, n, r, s = 0, a = null) {
|
|
4124
4124
|
var _;
|
|
4125
|
-
const o = w(null), [l, c] = z(!1), [u, d] = z(0), [h,
|
|
4126
|
-
|
|
4125
|
+
const o = w(null), [l, c] = z(!1), [u, d] = z(0), [h, g] = z(!1), M = w(h);
|
|
4126
|
+
M.current = h;
|
|
4127
4127
|
const f = w(!1), [y, T] = z(null), [N, p] = z(!1), b = w(s);
|
|
4128
4128
|
b.current = s;
|
|
4129
4129
|
const S = w(null), [A, P] = z(0);
|
|
@@ -4135,7 +4135,7 @@ function ku(t, e, n, r, s = 0, a = null) {
|
|
|
4135
4135
|
return;
|
|
4136
4136
|
}
|
|
4137
4137
|
const H = Ji(t), ce = b.current;
|
|
4138
|
-
return H.preload = "metadata", H.muted =
|
|
4138
|
+
return H.preload = "metadata", H.muted = M.current || f.current, H.onplay = () => c(!0), H.onpause = () => c(!1), H.onended = () => c(!1), H.onloadedmetadata = () => {
|
|
4139
4139
|
p(!0), H.currentTime = ((D == null ? void 0 : D.t) ?? 0) + ce, D != null && D.playing && H.play().catch((Z) => {
|
|
4140
4140
|
D.asked && (Z == null ? void 0 : Z.name) === "NotAllowedError" || T(Ct(Z));
|
|
4141
4141
|
});
|
|
@@ -4250,7 +4250,7 @@ function ku(t, e, n, r, s = 0, a = null) {
|
|
|
4250
4250
|
if (!D) return null;
|
|
4251
4251
|
D.currentTime < b.current && (D.currentTime = b.current);
|
|
4252
4252
|
const H = (ce) => {
|
|
4253
|
-
|
|
4253
|
+
M.current = ce, D.muted = ce || f.current, g(ce);
|
|
4254
4254
|
};
|
|
4255
4255
|
try {
|
|
4256
4256
|
return H(!1), await D.play(), !0;
|
|
@@ -4270,8 +4270,8 @@ function ku(t, e, n, r, s = 0, a = null) {
|
|
|
4270
4270
|
dur: I,
|
|
4271
4271
|
muted: h,
|
|
4272
4272
|
toggleMute: () => {
|
|
4273
|
-
const D = !
|
|
4274
|
-
|
|
4273
|
+
const D = !M.current;
|
|
4274
|
+
M.current = D, o.current && (o.current.muted = D || f.current), g(D);
|
|
4275
4275
|
},
|
|
4276
4276
|
toggle: me,
|
|
4277
4277
|
seekRow: le,
|
|
@@ -4308,14 +4308,14 @@ function ku(t, e, n, r, s = 0, a = null) {
|
|
|
4308
4308
|
o.current && (o.current.volume = D);
|
|
4309
4309
|
},
|
|
4310
4310
|
silence: (D) => {
|
|
4311
|
-
f.current = D, o.current && (o.current.muted =
|
|
4311
|
+
f.current = D, o.current && (o.current.muted = M.current || D);
|
|
4312
4312
|
}
|
|
4313
4313
|
};
|
|
4314
4314
|
}
|
|
4315
4315
|
function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
4316
4316
|
const c = w(/* @__PURE__ */ new Set());
|
|
4317
4317
|
c.current = l ?? c.current;
|
|
4318
|
-
const u = w(null), [d, h] = z(!1), [
|
|
4318
|
+
const u = w(null), [d, h] = z(!1), [g, M] = z(0), [f, y] = z(0), [T, N] = z(!1), p = w(T);
|
|
4319
4319
|
p.current = T;
|
|
4320
4320
|
const [b, S] = z(null), [A, P] = z(null), [O, V] = z(null), [I, W] = z(null), E = w(I);
|
|
4321
4321
|
E.current = I;
|
|
@@ -4331,7 +4331,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4331
4331
|
U.finite = !0, U.coming = ($) => c.current.has($), U.readAhead = 6, U.readAheadS = 45, U.onWaiting = ($) => P($), U.onStarting = ($) => V($), U.onSentence = ($) => {
|
|
4332
4332
|
if (h(U.playing), $ == null) return;
|
|
4333
4333
|
const K = G.current.findIndex((se) => se.sentenceId === $);
|
|
4334
|
-
K >= 0 &&
|
|
4334
|
+
K >= 0 && M(K);
|
|
4335
4335
|
}, U.onError = ($) => {
|
|
4336
4336
|
h(U.playing), S($ instanceof Xi ? { message: "The voice could not be started. Press Play to try again.", code: "voice_not_started" } : { message: "A line of this reading could not be played." });
|
|
4337
4337
|
}, U.gapBefore = ($, K) => {
|
|
@@ -4358,7 +4358,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4358
4358
|
}), F = (U) => {
|
|
4359
4359
|
if (Ee.current = U, De(!!(U != null && U.playing)), !U) return;
|
|
4360
4360
|
const $ = Rn(U, G.current, Ie).index;
|
|
4361
|
-
|
|
4361
|
+
M($), Ae.current = $;
|
|
4362
4362
|
}, _ = () => {
|
|
4363
4363
|
Ee.current && F(null);
|
|
4364
4364
|
};
|
|
@@ -4366,7 +4366,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4366
4366
|
var K;
|
|
4367
4367
|
if (we.current !== r) {
|
|
4368
4368
|
const se = we.current != null ? ve.current : null;
|
|
4369
|
-
we.current = r, (K = u.current) == null || K.stop(), u.current = new Cr(), Se(u.current), u.current.setSequence(me.current), h(!1),
|
|
4369
|
+
we.current = r, (K = u.current) == null || K.stop(), u.current = new Cr(), Se(u.current), u.current.setSequence(me.current), h(!1), M(0), S(null), V(null), W(null), F(se && (se.playing || se.t > 0) ? se : null);
|
|
4370
4370
|
}
|
|
4371
4371
|
const U = u.current;
|
|
4372
4372
|
U.setMuted(p.current);
|
|
@@ -4408,15 +4408,15 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4408
4408
|
}, Ne = (U, $) => {
|
|
4409
4409
|
for (let K = U; K >= 0 && K < e.length; K += $) if (Z(K)) return K;
|
|
4410
4410
|
return null;
|
|
4411
|
-
}, q = Math.max(0, Math.min(
|
|
4412
|
-
Ae.current =
|
|
4411
|
+
}, q = Math.max(0, Math.min(g, Math.max(0, e.length - 1))), Le = e.length ? e[e.length - 1].start + 4 : 0, Ie = n || Le || 1, Fe = w(!1), Ae = w(g);
|
|
4412
|
+
Ae.current = g;
|
|
4413
4413
|
const ue = (U) => {
|
|
4414
4414
|
var $, K, se;
|
|
4415
4415
|
(K = u.current) == null || K.play((($ = e[U]) == null ? void 0 : $.sentenceId) ?? null), h(!!((se = u.current) != null && se.playing));
|
|
4416
4416
|
}, _e = (U) => {
|
|
4417
4417
|
var K, se, he;
|
|
4418
4418
|
const $ = Math.max(0, Math.min(Math.max(0, e.length - 1), U));
|
|
4419
|
-
|
|
4419
|
+
M($), Ae.current = $, y((be) => be + 1), (se = u.current) == null || se.seek(((K = e[$]) == null ? void 0 : K.sentenceId) ?? null), h(!!((he = u.current) != null && he.playing));
|
|
4420
4420
|
}, Ve = (U) => {
|
|
4421
4421
|
var $;
|
|
4422
4422
|
_(), W(null), ($ = u.current) == null || $.startWithin(-1, 0), _e(U);
|
|
@@ -4428,7 +4428,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4428
4428
|
x(() => {
|
|
4429
4429
|
ve.current = Ee.current ?? lu(e, ae, d, Ie);
|
|
4430
4430
|
});
|
|
4431
|
-
const
|
|
4431
|
+
const Me = {
|
|
4432
4432
|
playing: d || $e,
|
|
4433
4433
|
t: ae,
|
|
4434
4434
|
idx: q,
|
|
@@ -4476,7 +4476,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4476
4476
|
},
|
|
4477
4477
|
stop: () => {
|
|
4478
4478
|
var U, $, K;
|
|
4479
|
-
_(), (U = u.current) == null || U.pause(), h(!1),
|
|
4479
|
+
_(), (U = u.current) == null || U.pause(), h(!1), M(0), Y(null), (K = u.current) == null || K.seek((($ = e[0]) == null ? void 0 : $.sentenceId) ?? null);
|
|
4480
4480
|
},
|
|
4481
4481
|
seekRow: Ve,
|
|
4482
4482
|
resumeAt: (U) => {
|
|
@@ -4492,8 +4492,8 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4492
4492
|
if (o && se && (he || e[K + 1] && $ >= Zt(se, se.start, se.start + 4))) {
|
|
4493
4493
|
const Ge = he ? K : K + 1, st = e[Ge];
|
|
4494
4494
|
(ht = u.current) == null || ht.startWithin(-1, 0);
|
|
4495
|
-
const
|
|
4496
|
-
E.current =
|
|
4495
|
+
const Mt = { t: $, sid: st.sentenceId ?? null };
|
|
4496
|
+
E.current = Mt, W(Mt), _e(Ge);
|
|
4497
4497
|
return;
|
|
4498
4498
|
}
|
|
4499
4499
|
const be = (se == null ? void 0 : se.sentenceId) ?? null, { from: ye, span: ke } = Q(K);
|
|
@@ -4502,8 +4502,8 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4502
4502
|
if (se && He && He.length === se.words.length && Pe > 0) {
|
|
4503
4503
|
let Ge = 0;
|
|
4504
4504
|
for (let it = 0; it < se.words.length; it++) se.words[it].start <= $ && (Ge = it);
|
|
4505
|
-
const st = se.words[Ge],
|
|
4506
|
-
Oe = Math.min(1, (He[Ge][0] +
|
|
4505
|
+
const st = se.words[Ge], Mt = st.end > st.start ? Math.max(0, Math.min(1, ($ - st.start) / (st.end - st.start))) : 0;
|
|
4506
|
+
Oe = Math.min(1, (He[Ge][0] + Mt * (He[Ge][1] - He[Ge][0])) / Pe);
|
|
4507
4507
|
}
|
|
4508
4508
|
be != null && ((Tt = u.current) == null || Tt.startWithin(be, Oe)), W(Oe > 0.01 ? { t: $, sid: be } : null), _e(K);
|
|
4509
4509
|
},
|
|
@@ -4518,7 +4518,7 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4518
4518
|
var K;
|
|
4519
4519
|
_();
|
|
4520
4520
|
const $ = Math.max(0, Math.min(Math.max(0, e.length - 1), U));
|
|
4521
|
-
W(null), (K = u.current) == null || K.startWithin(-1, 0),
|
|
4521
|
+
W(null), (K = u.current) == null || K.startWithin(-1, 0), M($), Ae.current = $, y((se) => se + 1), ue($);
|
|
4522
4522
|
},
|
|
4523
4523
|
prev: () => {
|
|
4524
4524
|
const U = Ne(q - 1, -1);
|
|
@@ -4545,25 +4545,25 @@ function Lu(t, e, n, r, s, a, o = !1, l) {
|
|
|
4545
4545
|
var se, he, be, ye;
|
|
4546
4546
|
const $ = (se = e[U]) == null ? void 0 : se.sentenceId;
|
|
4547
4547
|
if ($ == null) return;
|
|
4548
|
-
|
|
4548
|
+
M(U), Ae.current = U, W(null), E.current = null, (he = u.current) == null || he.joinSilently($);
|
|
4549
4549
|
const K = ((be = u.current) == null ? void 0 : be.resting()) ?? null;
|
|
4550
4550
|
te((K == null ? void 0 : K.s) ?? null), ne(!!(K != null && K.silent)), h(!!((ye = u.current) != null && ye.playing));
|
|
4551
4551
|
}
|
|
4552
|
-
return
|
|
4552
|
+
return Me.joinAt = o ? (U) => {
|
|
4553
4553
|
_(), Ye(Rn({ t: U, playing: !0, sentenceId: null, offset: 0, ended: !1 }, e, Ie).index);
|
|
4554
4554
|
} : void 0, B.current = (U) => {
|
|
4555
4555
|
var K;
|
|
4556
4556
|
const $ = Rn(U, e, Ie);
|
|
4557
4557
|
if (ee.current) {
|
|
4558
|
-
|
|
4558
|
+
M($.index), Ae.current = $.index, $.playing && Ye($.index);
|
|
4559
4559
|
return;
|
|
4560
4560
|
}
|
|
4561
|
-
(K =
|
|
4562
|
-
},
|
|
4561
|
+
(K = Me.seekFrac) == null || K.call(Me, $.t / Ie), $.playing && ue(Ae.current);
|
|
4562
|
+
}, Me;
|
|
4563
4563
|
}
|
|
4564
4564
|
const ju = () => {
|
|
4565
4565
|
}, zu = "The language this recording is read aloud in.", Iu = { title: "READ IN", note: "The transcript and its voice switch to this language." };
|
|
4566
|
-
function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: u, setPickedLang: d, side: h, hearOriginal:
|
|
4566
|
+
function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: u, setPickedLang: d, side: h, hearOriginal: g = !1, timed: M = !1, stockVoices: f = !1, stickyPicker: y = !1, pickerBusy: T = null, voiceSheet: N, forcedVoice: p = null }) {
|
|
4567
4567
|
var yn, pt, Nn, ln;
|
|
4568
4568
|
const { onAddVoice: b, onPickVoice: S, onSelectSpeaker: A, noCloneFor: P, castNoClone: O, castShort: V, castBuilding: I, castWarn: W, badge: E, titleNode: k } = N ?? {}, Y = !!N, C = !!(N != null && N.pendingClones), [te, X] = ra(), [L, ie] = z(null), [ne, G] = z(!1), [ee, me] = z(!1), [le, Te] = z(!1), [je, Se] = z(!1), we = u ?? l, ve = u === null, Ee = u != null || L != null, De = ((R) => !!R && !!(o != null && o.voice.includes(R)))(ve ? l : we) ? ve ? l : we : "en", B = ou(De), F = (N == null ? void 0 : N.cloneOn) ?? !0, [_, D] = z(0), H = w(F);
|
|
4569
4569
|
x(() => {
|
|
@@ -4573,7 +4573,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4573
4573
|
const R = _i(Q, Z, F);
|
|
4574
4574
|
for (const [Ce, Qe] of Object.entries(_e[De ?? ""] ?? {})) R.set(Number(Ce), Qe);
|
|
4575
4575
|
return R;
|
|
4576
|
-
}, [Q, Z, _e, De, F]),
|
|
4576
|
+
}, [Q, Z, _e, De, F]), Me = fe && Object.keys(_e[De ?? ""] ?? {}).length > 0, Ye = ze(() => f && !Me ? _i(Q, Z, !1) : null, [f, Me, Q, Z]), U = ze(() => Me ? Ai(ae) || null : Ye && Ai(Ye) || null, [Me, ae, Ye]), $ = Me ? ae : Ye, K = Z.some((R) => R.cloned && R.consent !== "pending"), se = !!we && !!(o != null && o.voice.includes(we)), he = se && !g, be = ze(
|
|
4577
4577
|
() => n.filter((R) => !R.suppressed && !R.unclear).map((R) => R.sentenceId).filter((R) => R != null),
|
|
4578
4578
|
[n]
|
|
4579
4579
|
), ye = Qc({ recordingId: t, lang: we, ended: s, cred: a, pickedVoice: p || (U ?? L), sentenceIds: s && he ? be : void 0 }), ke = Z.find((R) => R.id === L) ?? Z.find((R) => {
|
|
@@ -4585,7 +4585,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4585
4585
|
const R = setInterval(ye.reload, 4e3);
|
|
4586
4586
|
return () => clearInterval(R);
|
|
4587
4587
|
}, [ye.rendering, ye.reload]);
|
|
4588
|
-
const He = `${t ?? ""}|${we ?? ""}|${p || (U ?? L ?? ((pt = ye.track) == null ? void 0 : pt.voiceKey) ?? "default")}`, Pe = Lu(ye.clips, n, r, He, ue, (Nn = ye.track) == null ? void 0 : Nn.wordTimes,
|
|
4588
|
+
const He = `${t ?? ""}|${we ?? ""}|${p || (U ?? L ?? ((pt = ye.track) == null ? void 0 : pt.voiceKey) ?? "default")}`, Pe = Lu(ye.clips, n, r, He, ue, (Nn = ye.track) == null ? void 0 : Nn.wordTimes, M, ye.coming);
|
|
4589
4589
|
x(() => {
|
|
4590
4590
|
var Ce;
|
|
4591
4591
|
const R = (Ce = n[Pe.idx]) == null ? void 0 : Ce.sentenceId;
|
|
@@ -4593,7 +4593,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4593
4593
|
}, [Pe.idx]), x(() => {
|
|
4594
4594
|
!je || !Pe.has || (Se(!1), Pe.playing || Pe.toggle());
|
|
4595
4595
|
}, [je, Pe.has]);
|
|
4596
|
-
const ht = ye.rendering, at = ht ? null : ye.failed ?? null, Tt = !1, Ge = Ee && he, st = Ee && !ve && he && !(ye.listed && ye.listed.lang === we && ye.listed.recordingId === t),
|
|
4596
|
+
const ht = ye.rendering, at = ht ? null : ye.failed ?? null, Tt = !1, Ge = Ee && he, st = Ee && !ve && he && !(ye.listed && ye.listed.lang === we && ye.listed.recordingId === t), Mt = {
|
|
4597
4597
|
...Pe,
|
|
4598
4598
|
has: Pe.has || Ge && s,
|
|
4599
4599
|
toggle: () => {
|
|
@@ -4608,7 +4608,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4608
4608
|
}
|
|
4609
4609
|
}, it = () => G(!0), Be = () => {
|
|
4610
4610
|
G(!1), me(le), Te(!1);
|
|
4611
|
-
},
|
|
4611
|
+
}, gn = (R) => {
|
|
4612
4612
|
if (d(R), X(R), !((h || y) && !le)) {
|
|
4613
4613
|
if (R != null) {
|
|
4614
4614
|
Be();
|
|
@@ -4632,14 +4632,14 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4632
4632
|
return;
|
|
4633
4633
|
}
|
|
4634
4634
|
G(!1), Te(!1), me(!0);
|
|
4635
|
-
},
|
|
4635
|
+
}, Mn = (R) => {
|
|
4636
4636
|
if (B.reset(), me(fe), (we !== De || ve) && d(De), ye.forget(), Se(!0), fe && de != null && De) {
|
|
4637
4637
|
const Ce = new Map(ae);
|
|
4638
4638
|
Ce.set(de, R), Ve((Qe) => ({ ...Qe, [De]: Object.fromEntries(Ce) })), ie(null);
|
|
4639
4639
|
return;
|
|
4640
4640
|
}
|
|
4641
4641
|
ie(R);
|
|
4642
|
-
}, v = ve ? { ...Yr(o, null), flag: /* @__PURE__ */ i(oe, { d: J.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : q, Gn = c ? h ? /* @__PURE__ */ i("span", { className: "barchip", style: ct ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(Bn, { flag: v.flag, code: v.code, bordered: !1, onClick: rn, flagOnly: !0, label: v.label }) }) : /* @__PURE__ */ i(Bn, { flag: v.flag, code: v.code, bordered: !1, onClick: it, flagOnly: !0, label: v.label }) : null, $t = J.voiceClone, Rt = Ee && (!!ye.track || ht), Pt = at ? "var(--conf-low)" : Rt || h && ot ? "var(--brand)" : "var(--ink-55)", qt = cu({ on: Ee, want: je, relang: st, playing: Pe.playing, preparing: !!Pe.preparing, starting: Pe.starting }), [mn] = ka(qt === "line", 400), qe = qt === "asked" || qt === "line" && mn, lt = ht || qe, sn = qt === "asked" ? Yi : Pe.preparing ? `Speaking this line in ${(ke == null ? void 0 : ke.name) ?? "this voice"}…` : ht ? `Preparing this recording in ${(ke == null ? void 0 : ke.name) ?? "this voice"} — it will play as soon as it is ready` : at ? `This voice could not be prepared: ${at}` : se ? Ne ? "Choose a voice" : ke ? ke.name : Le.vcNoVoice + q.label : `${Le.vcNoVoice}${q.label}`, vt = /* @__PURE__ */ i(Bo, { open: ne, onClose: Be, keepOpen: (!!h || y) && !le, value: ve ? null : we, onSelect:
|
|
4642
|
+
}, v = ve ? { ...Yr(o, null), flag: /* @__PURE__ */ i(oe, { d: J.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : q, Gn = c ? h ? /* @__PURE__ */ i("span", { className: "barchip", style: ct ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(Bn, { flag: v.flag, code: v.code, bordered: !1, onClick: rn, flagOnly: !0, label: v.label }) }) : /* @__PURE__ */ i(Bn, { flag: v.flag, code: v.code, bordered: !1, onClick: it, flagOnly: !0, label: v.label }) : null, $t = J.voiceClone, Rt = Ee && (!!ye.track || ht), Pt = at ? "var(--conf-low)" : Rt || h && ot ? "var(--brand)" : "var(--ink-55)", qt = cu({ on: Ee, want: je, relang: st, playing: Pe.playing, preparing: !!Pe.preparing, starting: Pe.starting }), [mn] = ka(qt === "line", 400), qe = qt === "asked" || qt === "line" && mn, lt = ht || qe, sn = qt === "asked" ? Yi : Pe.preparing ? `Speaking this line in ${(ke == null ? void 0 : ke.name) ?? "this voice"}…` : ht ? `Preparing this recording in ${(ke == null ? void 0 : ke.name) ?? "this voice"} — it will play as soon as it is ready` : at ? `This voice could not be prepared: ${at}` : se ? Ne ? "Choose a voice" : ke ? ke.name : Le.vcNoVoice + q.label : `${Le.vcNoVoice}${q.label}`, vt = /* @__PURE__ */ i(Bo, { open: ne, onClose: Be, keepOpen: (!!h || y) && !le, value: ve ? null : we, onSelect: gn, languages: Ie, title: (h == null ? void 0 : h.title) ?? "SPOKEN LANGUAGE", note: (h == null ? void 0 : h.note) ?? zu, searchPlaceholder: Le.search, none: "Original", pinned: (ve ? l : we) ? [ve ? l : we] : [], recent: te, requireVoice: le, sticky: y, busy: T }), mt = ze(() => Z.filter((R) => R.cloned && !R.auto), [Z]), Kt = (R) => R.voiceId ? mt.find((Ce) => Ce.id === `clone:${R.voiceId}`) ?? null : null, ft = ze(() => Q.filter((R) => R.key >= 0), [Q]), an = ze(() => {
|
|
4643
4643
|
const R = Z.filter((Qe) => !Qe.cloned);
|
|
4644
4644
|
if (!fe) return [...R, ...s && ft.length === 1 ? mt.filter((Qe) => Qe.id === `clone:${ft[0].voiceId}`) : []];
|
|
4645
4645
|
const Ce = [];
|
|
@@ -4702,7 +4702,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4702
4702
|
}
|
|
4703
4703
|
B.arm(R);
|
|
4704
4704
|
},
|
|
4705
|
-
onUse:
|
|
4705
|
+
onUse: Mn
|
|
4706
4706
|
}
|
|
4707
4707
|
) }), qn = h ? null : /* @__PURE__ */ m(xe, { children: [
|
|
4708
4708
|
vt,
|
|
@@ -4712,7 +4712,7 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4712
4712
|
barChip: { flag: v.flag, code: v.code, label: v.label, onClick: h || y ? rn : it, active: !!((h || y) && ct), can: c },
|
|
4713
4713
|
sheetsOpen: ne || ee,
|
|
4714
4714
|
on: Ge,
|
|
4715
|
-
player:
|
|
4715
|
+
player: Mt,
|
|
4716
4716
|
chip: Gn,
|
|
4717
4717
|
voiceBtn: pn,
|
|
4718
4718
|
voiceWaiting: lt,
|
|
@@ -4756,10 +4756,10 @@ function bu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
|
|
|
4756
4756
|
closePicker: () => {
|
|
4757
4757
|
ct && Be();
|
|
4758
4758
|
},
|
|
4759
|
-
langList: { value: ve ? null : we, onSelect:
|
|
4759
|
+
langList: { value: ve ? null : we, onSelect: gn, languages: Ie, searchPlaceholder: Le.search, none: "Original", pinned: (ve ? l : we) ? [ve ? l : we] : [], recent: te }
|
|
4760
4760
|
};
|
|
4761
4761
|
}
|
|
4762
|
-
function Ou({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: u, marks: d = !0, fixBadges: h = !0, tail:
|
|
4762
|
+
function Ou({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: u, marks: d = !0, fixBadges: h = !0, tail: g, tailFg: M, running: f, desk: y, feedRef: T, listener: N, showLabels: p, find: b, findOpen: S, lang: A, warm: P, onVisible: O, wordHl: V = !0 }) {
|
|
4763
4763
|
const { playing: I, engaged: W, t: E, idx: k, seekN: Y, wordSync: C, clipPos: te } = n;
|
|
4764
4764
|
Kc(!0, T);
|
|
4765
4765
|
const X = w(null);
|
|
@@ -4861,7 +4861,7 @@ function Ou({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4861
4861
|
Ie && /* @__PURE__ */ i(Cc, { alone: !0, onOpen: () => a == null ? void 0 : a(F, !1) })
|
|
4862
4862
|
] }),
|
|
4863
4863
|
/* @__PURE__ */ i("div", { className: "txline__text", children: Ve.map((de, ae) => {
|
|
4864
|
-
const
|
|
4864
|
+
const Me = `${de.seq}:${de.idx}`, Ye = ql(de.prob), U = H && V, $ = U && (C ? E >= de.start && (E < de.end || ae === Ve.length - 1 || E < Ve[ae + 1].start) : ae === Q), K = U && !$ && (C ? de.start > E : Q != null && ae > Q), se = !_e && !N && (!!(r != null && r.has(Me)) || !!de.script), he = !_e && !N && d && !!Ye && !se, be = he ? Ye === "low" ? "var(--conf-low-half)" : "var(--conf-mid-half)" : null, ye = se ? "var(--brand)" : K ? "var(--ink-40)" : be ?? "var(--ink-96)";
|
|
4865
4865
|
return /* @__PURE__ */ m("span", { children: [
|
|
4866
4866
|
/* @__PURE__ */ i(
|
|
4867
4867
|
"span",
|
|
@@ -4885,7 +4885,7 @@ function Ou({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4885
4885
|
}
|
|
4886
4886
|
),
|
|
4887
4887
|
/* @__PURE__ */ i("span", { style: { whiteSpace: "pre-wrap" }, children: " " })
|
|
4888
|
-
] },
|
|
4888
|
+
] }, Me + ae);
|
|
4889
4889
|
}) })
|
|
4890
4890
|
] }, F.id);
|
|
4891
4891
|
}),
|
|
@@ -4893,7 +4893,7 @@ function Ou({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
|
|
|
4893
4893
|
/* @__PURE__ */ i("span", {}),
|
|
4894
4894
|
/* @__PURE__ */ i("span", {}),
|
|
4895
4895
|
/* @__PURE__ */ i("span", {})
|
|
4896
|
-
] }) }) : /* @__PURE__ */ i("div", { className: "txtail", style: { color:
|
|
4896
|
+
] }) }) : /* @__PURE__ */ i("div", { className: "txtail", style: { color: M }, children: g }),
|
|
4897
4897
|
I && G === 1 && B("down")
|
|
4898
4898
|
] });
|
|
4899
4899
|
}
|
|
@@ -4922,18 +4922,18 @@ function Cu(t, e, n, r, s) {
|
|
|
4922
4922
|
}, [e, u]), x(() => {
|
|
4923
4923
|
const d = t.current;
|
|
4924
4924
|
if (!d) return;
|
|
4925
|
-
let h = d.scrollTop,
|
|
4925
|
+
let h = d.scrollTop, g = 0, M = 0;
|
|
4926
4926
|
const f = () => {
|
|
4927
|
-
|
|
4927
|
+
M = Date.now() + 1500;
|
|
4928
4928
|
}, y = (N) => {
|
|
4929
4929
|
N.buttons && f();
|
|
4930
4930
|
}, T = () => {
|
|
4931
4931
|
const N = d.scrollTop, p = N - h;
|
|
4932
|
-
if (h = N, Date.now() >
|
|
4933
|
-
|
|
4932
|
+
if (h = N, Date.now() > M) {
|
|
4933
|
+
g = 0;
|
|
4934
4934
|
return;
|
|
4935
4935
|
}
|
|
4936
|
-
|
|
4936
|
+
g = p < 0 == g < 0 ? g + p : p, g < -14 && !a.current ? (g = 0, s(!0)) : g > 56 && a.current && !o.current.trim() && (g = 0, s(!1));
|
|
4937
4937
|
};
|
|
4938
4938
|
return d.addEventListener("wheel", f, { passive: !0 }), d.addEventListener("touchmove", f, { passive: !0 }), d.addEventListener("pointermove", y), d.addEventListener("scroll", T, { passive: !0 }), () => {
|
|
4939
4939
|
d.removeEventListener("wheel", f), d.removeEventListener("touchmove", f), d.removeEventListener("pointermove", y), d.removeEventListener("scroll", T);
|
|
@@ -4997,16 +4997,16 @@ function Eu(t) {
|
|
|
4997
4997
|
for (let k = 236; a.length < s; k ^= 253) o(k, 8);
|
|
4998
4998
|
const l = [];
|
|
4999
4999
|
for (let k = 0; k < a.length; k += 8) l.push(a.slice(k, k + 8).reduce((Y, C) => Y << 1 | C, 0));
|
|
5000
|
-
const c = fn.blocks[n], u = fn.perBlock[n], d = Math.floor(ja(n) / 8), h = c - d % c,
|
|
5000
|
+
const c = fn.blocks[n], u = fn.perBlock[n], d = Math.floor(ja(n) / 8), h = c - d % c, g = Math.floor(d / c), M = [], f = Su(u);
|
|
5001
5001
|
for (let k = 0, Y = 0; k < c; k++) {
|
|
5002
|
-
const C = l.slice(Y, Y +
|
|
5002
|
+
const C = l.slice(Y, Y + g - u + (k < h ? 0 : 1));
|
|
5003
5003
|
Y += C.length;
|
|
5004
5004
|
const te = Du(C, f);
|
|
5005
|
-
k < h && C.push(0),
|
|
5005
|
+
k < h && C.push(0), M.push(C.concat(te));
|
|
5006
5006
|
}
|
|
5007
5007
|
const y = [];
|
|
5008
|
-
for (let k = 0; k <
|
|
5009
|
-
(k !==
|
|
5008
|
+
for (let k = 0; k < M[0].length; k++) M.forEach((Y, C) => {
|
|
5009
|
+
(k !== g - u || C >= h) && y.push(Y[k]);
|
|
5010
5010
|
});
|
|
5011
5011
|
const T = Array.from({ length: r }, () => new Array(r).fill(!1)), N = Array.from({ length: r }, () => new Array(r).fill(!1)), p = (k, Y, C) => {
|
|
5012
5012
|
T[Y][k] = C, N[Y][k] = !0;
|
|
@@ -5297,7 +5297,7 @@ function Ru({ pos: t, transport: e, chip: n, voices: r, onShare: s, onFull: a, c
|
|
|
5297
5297
|
] });
|
|
5298
5298
|
}
|
|
5299
5299
|
const Pu = { color: "rgba(255,255,255,.4)" };
|
|
5300
|
-
function ba({ 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: h, ad:
|
|
5300
|
+
function ba({ 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: h, ad: g, chip: M, transport: f, picker: y, sheet: T, voices: N, voicesBtn: p, sheetOpen: b, onShare: S, onSettings: A, paused: P, copied: O, onTouch: V, onClose: I }) {
|
|
5301
5301
|
const [W, E] = z(() => !!zr());
|
|
5302
5302
|
x(() => {
|
|
5303
5303
|
const Q = () => E(!!zr());
|
|
@@ -5312,26 +5312,26 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5312
5312
|
const [C, te] = z(!1), [X, L] = z(0), ie = w(!1);
|
|
5313
5313
|
x(() => () => Pn(!1), []), x(() => {
|
|
5314
5314
|
if (!n) return;
|
|
5315
|
-
const Q = [document.documentElement, document.body], fe = Q.map((
|
|
5316
|
-
Q.forEach((
|
|
5317
|
-
|
|
5315
|
+
const Q = [document.documentElement, document.body], fe = Q.map((Me) => Me.style.background);
|
|
5316
|
+
Q.forEach((Me) => {
|
|
5317
|
+
Me.style.background = "#050507";
|
|
5318
5318
|
});
|
|
5319
5319
|
const de = document.querySelector('meta[name="theme-color"]'), ae = de == null ? void 0 : de.content;
|
|
5320
5320
|
return de && (de.content = "#050507"), () => {
|
|
5321
|
-
Q.forEach((
|
|
5322
|
-
|
|
5321
|
+
Q.forEach((Me, Ye) => {
|
|
5322
|
+
Me.style.background = fe[Ye];
|
|
5323
5323
|
}), de && ae && (de.content = ae);
|
|
5324
5324
|
};
|
|
5325
5325
|
}, []);
|
|
5326
5326
|
const ne = ze(() => n && Uu(), [n]), [G, ee] = z(ne);
|
|
5327
5327
|
x(() => {
|
|
5328
5328
|
if (!n) return;
|
|
5329
|
-
const Q = [document.documentElement, document.body], fe = Q.map((
|
|
5329
|
+
const Q = [document.documentElement, document.body], fe = Q.map((Me) => [Me.style.overflow, Me.style.overscrollBehavior]);
|
|
5330
5330
|
if (!ne)
|
|
5331
|
-
return Q.forEach((
|
|
5332
|
-
|
|
5333
|
-
}), () => Q.forEach((
|
|
5334
|
-
|
|
5331
|
+
return Q.forEach((Me) => {
|
|
5332
|
+
Me.style.overflow = "hidden", Me.style.overscrollBehavior = "none";
|
|
5333
|
+
}), () => Q.forEach((Me, Ye) => {
|
|
5334
|
+
Me.style.overflow = fe[Ye][0], Me.style.overscrollBehavior = fe[Ye][1];
|
|
5335
5335
|
});
|
|
5336
5336
|
const de = document.createElement("div");
|
|
5337
5337
|
de.setAttribute("aria-hidden", "true"), de.style.cssText = "position:absolute;top:0;left:0;width:1px;height:calc(100lvh + 160px);pointer-events:none", document.body.appendChild(de), document.documentElement.style.overscrollBehavior = "none";
|
|
@@ -5345,8 +5345,8 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5345
5345
|
const me = w(b);
|
|
5346
5346
|
me.current = b, x(() => {
|
|
5347
5347
|
const Q = (ae) => ae instanceof HTMLElement && (ae.isContentEditable || /^(INPUT|TEXTAREA|SELECT)$/.test(ae.tagName)), fe = (ae) => {
|
|
5348
|
-
var
|
|
5349
|
-
ae.key === "Escape" && !me.current && k.current && (ae.stopPropagation(), k.current()), ae.key === " " && !me.current && !Q(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (
|
|
5348
|
+
var Me;
|
|
5349
|
+
ae.key === "Escape" && !me.current && k.current && (ae.stopPropagation(), k.current()), ae.key === " " && !me.current && !Q(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (Me = Y.current) == null || Me.call(Y)), (ae.key === "f" || ae.key === "F") && !ae.metaKey && !ae.ctrlKey && !ae.altKey && !me.current && !Q(ae.target) && Pi() && (ae.preventDefault(), ae.repeat || Pn(!zr()));
|
|
5350
5350
|
}, de = (ae) => {
|
|
5351
5351
|
ae.key === " " && !me.current && !Q(ae.target) && ae.preventDefault();
|
|
5352
5352
|
};
|
|
@@ -5377,7 +5377,7 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5377
5377
|
tn(() => {
|
|
5378
5378
|
const Q = _.current;
|
|
5379
5379
|
if (!Q) return;
|
|
5380
|
-
const fe = !!(l != null && l.words.some((he) => he.dim)) || (l == null ? void 0 : l.cursor) != null, de = Q.querySelectorAll((l == null ? void 0 : l.cursor) != null && !l.words.some((he) => he.dim) ? "[data-at]" : "[data-said]"), ae = parseFloat(getComputedStyle(Q).lineHeight) || 24,
|
|
5380
|
+
const fe = !!(l != null && l.words.some((he) => he.dim)) || (l == null ? void 0 : l.cursor) != null, de = Q.querySelectorAll((l == null ? void 0 : l.cursor) != null && !l.words.some((he) => he.dim) ? "[data-at]" : "[data-said]"), ae = parseFloat(getComputedStyle(Q).lineHeight) || 24, Me = Math.round(Q.scrollHeight / ae) - Math.round(Q.clientHeight / ae), Ye = Math.max(0, Me) * ae;
|
|
5381
5381
|
if (Ye <= 0) {
|
|
5382
5382
|
Q.scrollTop && Q.scrollTo({ top: 0 });
|
|
5383
5383
|
return;
|
|
@@ -5414,7 +5414,7 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5414
5414
|
] })
|
|
5415
5415
|
] })
|
|
5416
5416
|
] })
|
|
5417
|
-
] }), ue = (Q, fe, de, ae,
|
|
5417
|
+
] }), ue = (Q, fe, de, ae, Me, Ye = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: Q, "aria-label": Q, onClick: ae, children: /* @__PURE__ */ i(oe, { d: fe, size: (ve ? 20 : Ee ? 15 : 18) + Ye, sw: de, style: Me }) }), _e = /* @__PURE__ */ m("div", { className: "gfull__acts", children: [
|
|
5418
5418
|
p && /* @__PURE__ */ i(Ia, { v: p, size: ve ? 20 : Ee ? 15 : 18 }),
|
|
5419
5419
|
S && ue("Share", J.share, 1.6, S),
|
|
5420
5420
|
Pi() && !e && ue(W ? "Exit full screen" : "Full screen", W ? Yu : za, 1.7, () => Pn(!W)),
|
|
@@ -5428,7 +5428,7 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5428
5428
|
"div",
|
|
5429
5429
|
{
|
|
5430
5430
|
ref: Te,
|
|
5431
|
-
className: `gfull${ve ? " gfull--desk" : ""}${Ee ? " gfull--mini" : ""}${we ? " gfull--small" : ""}${ne ? " gfull--swipe" : ""}${
|
|
5431
|
+
className: `gfull${ve ? " gfull--desk" : ""}${Ee ? " gfull--mini" : ""}${we ? " gfull--small" : ""}${ne ? " gfull--swipe" : ""}${g ? " gfull--ad" : ""}${C ? " gfull--calm" : ""}`,
|
|
5432
5432
|
"data-theme": "dark",
|
|
5433
5433
|
role: "dialog",
|
|
5434
5434
|
"aria-label": s,
|
|
@@ -5448,7 +5448,7 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5448
5448
|
/* @__PURE__ */ m("div", { className: `gfull__frame${F ? " gfull__frame--land" : ""}`, children: [
|
|
5449
5449
|
r,
|
|
5450
5450
|
/* @__PURE__ */ i("div", { className: "gfull__shade", "aria-hidden": "true" }),
|
|
5451
|
-
P && !
|
|
5451
|
+
P && !g && /* @__PURE__ */ m("div", { className: `gfull__pausedinfo${f.playing ? "" : " gfull__pausedinfo--on"}`, "aria-hidden": f.playing, children: [
|
|
5452
5452
|
/* @__PURE__ */ m("div", { className: "gfull__pausedtext", children: [
|
|
5453
5453
|
/* @__PURE__ */ m("div", { className: "gfull__pausedhead", children: [
|
|
5454
5454
|
(Ee || we) && /* @__PURE__ */ i("span", { className: "gfull__pausedmark", "aria-hidden": "true", children: /* @__PURE__ */ i(Fn, { dark: !0, size: 20 }) }),
|
|
@@ -5492,12 +5492,12 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5492
5492
|
/* @__PURE__ */ i(Rr, { live: o.live, desk: !0, pct: u }),
|
|
5493
5493
|
/* @__PURE__ */ i(Vn, { t: f }),
|
|
5494
5494
|
/* @__PURE__ */ i(Qn, { pos: o, interactive: !0 }),
|
|
5495
|
-
/* @__PURE__ */ i("div", { className: "gfull__chip", children:
|
|
5495
|
+
/* @__PURE__ */ i("div", { className: "gfull__chip", children: M }),
|
|
5496
5496
|
_e
|
|
5497
5497
|
] }) : Ee ? /* @__PURE__ */ m("div", { className: "gfull__row", children: [
|
|
5498
5498
|
/* @__PURE__ */ i(Vn, { t: f, mini: !0 }),
|
|
5499
5499
|
/* @__PURE__ */ i(Qn, { pos: o, interactive: !0 }),
|
|
5500
|
-
/* @__PURE__ */ i("div", { className: "gfull__chip", children:
|
|
5500
|
+
/* @__PURE__ */ i("div", { className: "gfull__chip", children: M }),
|
|
5501
5501
|
_e
|
|
5502
5502
|
] }) : /* @__PURE__ */ m(xe, { children: [
|
|
5503
5503
|
/* @__PURE__ */ m("div", { className: "gfull__row", children: [
|
|
@@ -5507,7 +5507,7 @@ function ba({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
|
|
|
5507
5507
|
/* @__PURE__ */ m("div", { className: "gfull__row", children: [
|
|
5508
5508
|
/* @__PURE__ */ i(Vn, { t: f }),
|
|
5509
5509
|
/* @__PURE__ */ i("span", { style: { flex: 1 } }),
|
|
5510
|
-
/* @__PURE__ */ i("div", { className: "gfull__chip", children:
|
|
5510
|
+
/* @__PURE__ */ i("div", { className: "gfull__chip", children: M }),
|
|
5511
5511
|
_e
|
|
5512
5512
|
] })
|
|
5513
5513
|
] }) }),
|
|
@@ -5546,10 +5546,10 @@ function Oa(t, e, n) {
|
|
|
5546
5546
|
const r = new URL(t ?? Kr), s = Wu(), a = new URL(Hu, r);
|
|
5547
5547
|
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);
|
|
5548
5548
|
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)}`);
|
|
5549
|
-
return d ? new Promise((h,
|
|
5550
|
-
let
|
|
5549
|
+
return d ? new Promise((h, g) => {
|
|
5550
|
+
let M = !1;
|
|
5551
5551
|
const f = (N) => {
|
|
5552
|
-
|
|
5552
|
+
M || (M = !0, window.removeEventListener("message", y), clearInterval(T), N());
|
|
5553
5553
|
}, y = (N) => {
|
|
5554
5554
|
if (N.origin !== r.origin || N.source !== d) return;
|
|
5555
5555
|
const p = N.data;
|
|
@@ -5574,7 +5574,7 @@ function Oa(t, e, n) {
|
|
|
5574
5574
|
f(() => h(null));
|
|
5575
5575
|
return;
|
|
5576
5576
|
}
|
|
5577
|
-
p.type === "vocalstack:error" && f(() =>
|
|
5577
|
+
p.type === "vocalstack:error" && f(() => g(new Error(typeof p.message == "string" && p.message ? p.message : "VocalStack could not start this transcription.")));
|
|
5578
5578
|
}
|
|
5579
5579
|
};
|
|
5580
5580
|
window.addEventListener("message", y);
|
|
@@ -5617,11 +5617,11 @@ function Ju({ options: t, onStarted: e, onReplay: n, onClose: r }) {
|
|
|
5617
5617
|
};
|
|
5618
5618
|
return window.addEventListener("keydown", y), () => window.removeEventListener("keydown", y);
|
|
5619
5619
|
}, [r]);
|
|
5620
|
-
const
|
|
5621
|
-
if (!(!
|
|
5620
|
+
const g = s.trim(), M = Ku.test(g), f = async () => {
|
|
5621
|
+
if (!(!M || o)) {
|
|
5622
5622
|
l(!0), u(null);
|
|
5623
5623
|
try {
|
|
5624
|
-
const y = await Fu(t.appUrl, /^https?:\/\//i.test(
|
|
5624
|
+
const y = await Fu(t.appUrl, /^https?:\/\//i.test(g) ? g : `https://${g}`, h);
|
|
5625
5625
|
y && e(y);
|
|
5626
5626
|
} catch (y) {
|
|
5627
5627
|
u(y instanceof Error ? y.message : "Something went wrong. Please try again.");
|
|
@@ -5644,7 +5644,7 @@ function Ju({ options: t, onStarted: e, onReplay: n, onClose: r }) {
|
|
|
5644
5644
|
/* @__PURE__ */ i("input", { className: "vsp-end2__input", type: "url", inputMode: "url", autoComplete: "off", spellCheck: !1, placeholder: "Paste a video link", value: s, onChange: (y) => {
|
|
5645
5645
|
a(y.target.value), u(null);
|
|
5646
5646
|
}, "aria-label": "Video link" }),
|
|
5647
|
-
/* @__PURE__ */ i("button", { type: "submit", className: "vsp-end2__go", disabled: !
|
|
5647
|
+
/* @__PURE__ */ i("button", { type: "submit", className: "vsp-end2__go", disabled: !M || o, "aria-label": "Transcribe", title: "Transcribe", children: o ? /* @__PURE__ */ i(gt, { size: 15, color: "#06101c", track: "rgba(6,16,28,.25)" }) : /* @__PURE__ */ i(oe, { d: J.arrowRight, size: 17, sw: 2 }) })
|
|
5648
5648
|
] }),
|
|
5649
5649
|
/* @__PURE__ */ i("div", { className: "vsp-end2__note", role: o ? "status" : void 0, children: o ? qu[d ?? "checking"] : t.note ?? "YouTube, Vimeo, TikTok and more, with subtitles and spoken translations." }),
|
|
5650
5650
|
c && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: c }),
|
|
@@ -5665,13 +5665,13 @@ function Ca(t) {
|
|
|
5665
5665
|
}
|
|
5666
5666
|
const Xu = { lang: null, subtitles: !0, speakerLabels: !1, wordHighlight: !0, translateAudio: !0, voices: "cloned", removeBackground: !1, muted: !1 };
|
|
5667
5667
|
function ed(t, e) {
|
|
5668
|
-
const n =
|
|
5668
|
+
const n = ga(), [r, s] = ra(), [a, o] = z(null), [l, c] = z("main"), u = Yr(n, t.lang), d = ze(() => sa(n, "translation"), [n]), h = (O) => {
|
|
5669
5669
|
e({ lang: O }), s(O);
|
|
5670
|
-
},
|
|
5670
|
+
}, g = Vr({ open: a === "lang" || a === "settings" && l === "lang", onClose: () => a === "lang" ? o(null) : c("main"), value: t.lang, onSelect: h, languages: d, none: "As spoken", pinned: t.lang ? [t.lang] : [], recent: r, keepOpen: !0 }), M = () => {
|
|
5671
5671
|
o(null), c("main");
|
|
5672
|
-
}, f = t.lang ? /* @__PURE__ */ i("span", { style: { fontSize: 19, lineHeight: 1 }, children: u.flag }) : /* @__PURE__ */ i(oe, { d: J.langAuto, size: 19, sw: 1.7 }), y = /* @__PURE__ */ i("
|
|
5672
|
+
}, f = t.lang ? /* @__PURE__ */ i("span", { style: { fontSize: 19, lineHeight: 1 }, children: u.flag }) : /* @__PURE__ */ i(oe, { d: J.langAuto, size: 19, sw: 1.7 }), y = /* @__PURE__ */ i("span", { className: "vsp-btip", "data-tip": `Language: ${t.lang ? u.label : "As spoken"}`, "data-open": a === "lang" ? "" : void 0, children: /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", "aria-label": `Language: ${t.lang ? u.label : "As spoken"}`, onClick: (O) => {
|
|
5673
5673
|
O.stopPropagation(), c("main"), o((V) => V === "lang" ? null : "lang");
|
|
5674
|
-
}, children: f }), T = /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), N = /* @__PURE__ */ m("span", { className: "vs-sheet__title", style: { position: "relative" }, children: [
|
|
5674
|
+
}, children: f }) }), T = /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), N = /* @__PURE__ */ m("span", { className: "vs-sheet__title", style: { position: "relative" }, children: [
|
|
5675
5675
|
" ",
|
|
5676
5676
|
/* @__PURE__ */ m("button", { type: "button", onClick: () => c("main"), "aria-label": "Back", className: "vsp-idlesheet__back", children: [
|
|
5677
5677
|
/* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 18, sw: 1.8 }),
|
|
@@ -5684,8 +5684,8 @@ function ed(t, e) {
|
|
|
5684
5684
|
] }),
|
|
5685
5685
|
I
|
|
5686
5686
|
] }), S = /* @__PURE__ */ m("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
5687
|
-
/* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children:
|
|
5688
|
-
|
|
5687
|
+
/* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children: g.search }),
|
|
5688
|
+
g.list
|
|
5689
5689
|
] }), A = l === "lang" ? S : l === "subs" ? /* @__PURE__ */ m("div", { style: p, children: [
|
|
5690
5690
|
b("Show subtitles", "Captions over the video", /* @__PURE__ */ i(Lt, { checked: t.subtitles, onChange: (O) => e({ subtitles: O }), label: "Show subtitles" })),
|
|
5691
5691
|
b("Show speaker labels", "Who is speaking, before each line", /* @__PURE__ */ i(Lt, { checked: t.speakerLabels, onChange: (O) => e({ speakerLabels: O }), label: "Show speaker labels" })),
|
|
@@ -5720,8 +5720,8 @@ function ed(t, e) {
|
|
|
5720
5720
|
T
|
|
5721
5721
|
] })
|
|
5722
5722
|
] }), P = /* @__PURE__ */ m(xe, { children: [
|
|
5723
|
-
/* @__PURE__ */ i(nn, { open: a === "lang", onClose:
|
|
5724
|
-
/* @__PURE__ */ i(nn, { open: a === "settings", onClose:
|
|
5723
|
+
/* @__PURE__ */ i(nn, { open: a === "lang", onClose: M, title: "LANGUAGE", kind: "picker", header: g.search, sticky: !0, children: /* @__PURE__ */ i(Or, { children: g.list }) }),
|
|
5724
|
+
/* @__PURE__ */ i(nn, { open: a === "settings", onClose: M, title: { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO" }[l], titleNode: l === "main" ? void 0 : N, kind: l === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(Or, { children: A }) })
|
|
5725
5725
|
] });
|
|
5726
5726
|
return {
|
|
5727
5727
|
chip: y,
|
|
@@ -5835,12 +5835,12 @@ function Ir(t) {
|
|
|
5835
5835
|
}
|
|
5836
5836
|
}
|
|
5837
5837
|
function od(t, e) {
|
|
5838
|
-
const [n, r] = z(!1), [s, a] = z(null), [o, l] = z(null), [c, u] = z(() => Zu(t)), d = Je((
|
|
5838
|
+
const [n, r] = z(!1), [s, a] = z(null), [o, l] = z(null), [c, u] = z(() => Zu(t)), d = Je((M) => {
|
|
5839
5839
|
if (n) return;
|
|
5840
5840
|
r(!0), l(null);
|
|
5841
5841
|
let f;
|
|
5842
5842
|
try {
|
|
5843
|
-
f = Oa(t,
|
|
5843
|
+
f = Oa(t, M, a);
|
|
5844
5844
|
} catch (y) {
|
|
5845
5845
|
f = Promise.reject(y);
|
|
5846
5846
|
}
|
|
@@ -5849,8 +5849,8 @@ function od(t, e) {
|
|
|
5849
5849
|
}).catch((y) => l(y instanceof Error ? y.message : "Something went wrong. Please try again.")).finally(() => {
|
|
5850
5850
|
r(!1), a(null);
|
|
5851
5851
|
});
|
|
5852
|
-
}, [t, n, e]), h = Je(() => d({ connect: !0 }), [d]),
|
|
5853
|
-
return { busy: n, status: s, err: o, connected: c, connect: h, start:
|
|
5852
|
+
}, [t, n, e]), h = Je(() => d({ connect: !0 }), [d]), g = Je((M, f) => d({ url: M, ask: f }), [d]);
|
|
5853
|
+
return { busy: n, status: s, err: o, connected: c, connect: h, start: g };
|
|
5854
5854
|
}
|
|
5855
5855
|
function ld(t) {
|
|
5856
5856
|
return /\.(mp4|webm|mov|m4v|ogv|mkv)(\?|#|$)/i.test(t);
|
|
@@ -5869,18 +5869,18 @@ function Jr({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children:
|
|
|
5869
5869
|
const l = ed(t.prefs, t.set), c = Ca(), u = w(null), [d, h] = z(!1);
|
|
5870
5870
|
tn(() => {
|
|
5871
5871
|
var T;
|
|
5872
|
-
const
|
|
5873
|
-
if (!
|
|
5874
|
-
const f = () => h(
|
|
5872
|
+
const M = (T = u.current) == null ? void 0 : T.parentElement;
|
|
5873
|
+
if (!M) return;
|
|
5874
|
+
const f = () => h(M.getBoundingClientRect().width < 560);
|
|
5875
5875
|
if (f(), typeof ResizeObserver > "u") return;
|
|
5876
5876
|
const y = new ResizeObserver(f);
|
|
5877
|
-
return y.observe(
|
|
5877
|
+
return y.observe(M), () => y.disconnect();
|
|
5878
5878
|
}, []);
|
|
5879
|
-
const
|
|
5879
|
+
const g = { prevOn: !1, nextOn: !1, onPrev: () => {
|
|
5880
5880
|
}, onNext: () => {
|
|
5881
5881
|
}, playing: !1, playable: !0, playTitle: "Connect to play", onPlay: a };
|
|
5882
5882
|
return /* @__PURE__ */ m("div", { ref: u, className: `vsp-idleroot${d ? " vsp-idleroot--small" : ""}`, children: [
|
|
5883
|
-
/* @__PURE__ */ i(ba, { page: s, picture: /* @__PURE__ */ i(cd, { poster: e, src: n }), title: r, desk: c, pos: ud, 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:
|
|
5883
|
+
/* @__PURE__ */ i(ba, { page: s, picture: /* @__PURE__ */ i(cd, { poster: e, src: n }), title: r, desk: c, pos: ud, 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: g, picker: l.sheets, sheet: null, voices: null, voicesBtn: null, sheetOpen: l.sheetOpen, onSettings: l.openSettings, onShare: () => Gr(t.shareUrl ?? window.location.href, r), copied: null, onTouch: () => {
|
|
5884
5884
|
} }),
|
|
5885
5885
|
!l.sheetOpen && /* @__PURE__ */ i("div", { className: "vsp-idle", "data-theme": "dark", children: /* @__PURE__ */ i("div", { className: "vsp-idle__box", children: o }) })
|
|
5886
5886
|
] });
|
|
@@ -5888,7 +5888,7 @@ function Jr({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children:
|
|
|
5888
5888
|
function Da({ connect: t, onClick: e, label: n }) {
|
|
5889
5889
|
return /* @__PURE__ */ m(xe, { children: [
|
|
5890
5890
|
/* @__PURE__ */ m("button", { type: "button", className: "vsp-idle__connect", onClick: e, disabled: t.busy, children: [
|
|
5891
|
-
t.busy ? /* @__PURE__ */ i(
|
|
5891
|
+
t.busy ? /* @__PURE__ */ i(gt, { size: 18, color: "#050507", track: "rgba(5,5,7,.2)" }) : /* @__PURE__ */ i(oe, { d: J.link, size: 18, sw: 1.8 }),
|
|
5892
5892
|
/* @__PURE__ */ i("span", { children: t.busy ? "Waiting for VocalStack…" : n })
|
|
5893
5893
|
] }),
|
|
5894
5894
|
t.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", role: "status", children: Sa[t.status ?? "checking"] }),
|
|
@@ -5904,7 +5904,7 @@ function dd({ idle: t, src: e, ask: n, connect: r, page: s, poster: a = null, on
|
|
|
5904
5904
|
] });
|
|
5905
5905
|
}
|
|
5906
5906
|
function hd({ idle: t, connect: e, page: n, poster: r = null, onPick: s, onShare: a }) {
|
|
5907
|
-
const [o, l] = z(""), [c, u] = z(!1), [d, h] = z(null),
|
|
5907
|
+
const [o, l] = z(""), [c, u] = z(!1), [d, h] = z(null), g = w(null), M = w(null), f = o.trim(), y = (O) => ad.test(O) || !!Qi(O), T = y(f), N = e.busy || c, p = async (O) => {
|
|
5908
5908
|
const V = /^https?:\/\//i.test(O) ? O : `https://${O}`;
|
|
5909
5909
|
h(null);
|
|
5910
5910
|
const I = Qi(V);
|
|
@@ -5922,21 +5922,21 @@ function hd({ idle: t, connect: e, page: n, poster: r = null, onPick: s, onShare
|
|
|
5922
5922
|
T && !N && p(f);
|
|
5923
5923
|
}, S = () => {
|
|
5924
5924
|
var O;
|
|
5925
|
-
T ? b() : e.connected ? (O =
|
|
5925
|
+
T ? b() : e.connected ? (O = g.current) == null || O.focus() : e.connect();
|
|
5926
5926
|
}, A = (O) => {
|
|
5927
5927
|
const V = O.trim();
|
|
5928
|
-
!y(V) || N || V ===
|
|
5928
|
+
!y(V) || N || V === M.current || (M.current = V, p(V));
|
|
5929
5929
|
}, P = e.busy ? /* @__PURE__ */ i("div", { className: "vsp-idle__note", role: "status", children: Sa[e.status ?? "checking"] }) : c ? /* @__PURE__ */ i("div", { className: "vsp-idle__note", role: "status", children: "Opening the shared transcript…" }) : /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: e.connected ? "Paste a VocalStack share link, or a YouTube, Vimeo, mp3 or any video link to play it here with subtitles and spoken translations." : "Paste a VocalStack share link to watch it here, or connect to transcribe any video link." });
|
|
5930
5930
|
return /* @__PURE__ */ m(Jr, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: S, children: [
|
|
5931
5931
|
/* @__PURE__ */ i("form", { className: "vsp-idle__form", onSubmit: (O) => {
|
|
5932
5932
|
O.preventDefault(), b();
|
|
5933
5933
|
}, children: /* @__PURE__ */ m("span", { className: "vsp-idle__field", children: [
|
|
5934
5934
|
/* @__PURE__ */ i(oe, { d: J.link, size: 16, sw: 1.8 }),
|
|
5935
|
-
/* @__PURE__ */ i("input", { ref:
|
|
5935
|
+
/* @__PURE__ */ i("input", { ref: g, className: "vsp-idle__input", type: "url", inputMode: "url", enterKeyHint: "go", autoComplete: "off", spellCheck: !1, placeholder: e.connected ? "Paste a video link" : "Paste a share link", value: o, onChange: (O) => l(O.target.value), onPaste: (O) => {
|
|
5936
5936
|
const V = O.clipboardData.getData("text");
|
|
5937
5937
|
V && (l(V.trim()), A(V), O.preventDefault());
|
|
5938
5938
|
}, "aria-label": "Video link", autoFocus: e.connected }),
|
|
5939
|
-
N && /* @__PURE__ */ i(
|
|
5939
|
+
N && /* @__PURE__ */ i(gt, { size: 15, color: "#eef0f8", track: "rgba(255,255,255,.2)" })
|
|
5940
5940
|
] }) }),
|
|
5941
5941
|
P,
|
|
5942
5942
|
!e.connected && !N && /* @__PURE__ */ i(Da, { connect: e, onClick: e.connect, label: "Connect to VocalStack" }),
|
|
@@ -5955,7 +5955,7 @@ function fd({ idle: t, message: e, onRetry: n, page: r }) {
|
|
|
5955
5955
|
] })
|
|
5956
5956
|
] });
|
|
5957
5957
|
}
|
|
5958
|
-
function
|
|
5958
|
+
function gd(t, e, n) {
|
|
5959
5959
|
const [r, s] = z(t && e ? void 0 : null);
|
|
5960
5960
|
return x(() => {
|
|
5961
5961
|
if (!t) {
|
|
@@ -5982,7 +5982,7 @@ function Md(t, e, n) {
|
|
|
5982
5982
|
};
|
|
5983
5983
|
}, [t, e, n]), r;
|
|
5984
5984
|
}
|
|
5985
|
-
const
|
|
5985
|
+
const Md = 100, Bi = (t) => t == null ? null : t ? "on" : "off";
|
|
5986
5986
|
function md(t) {
|
|
5987
5987
|
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"));
|
|
5988
5988
|
return {
|
|
@@ -5996,7 +5996,7 @@ function md(t) {
|
|
|
5996
5996
|
startAt: Number.isFinite(s) && s > 0 ? s : t.startAt ?? null
|
|
5997
5997
|
};
|
|
5998
5998
|
}
|
|
5999
|
-
const Od =
|
|
5999
|
+
const Od = Mo(function(e, n) {
|
|
6000
6000
|
var X;
|
|
6001
6001
|
const r = w(null);
|
|
6002
6002
|
mo(n, () => ({
|
|
@@ -6025,12 +6025,12 @@ const Od = go(function(e, n) {
|
|
|
6025
6025
|
x(() => {
|
|
6026
6026
|
a({ id: e.id ?? "", token: e.token });
|
|
6027
6027
|
}, [e.id, e.token, e.src]);
|
|
6028
|
-
const o =
|
|
6028
|
+
const o = gd(e.src ?? null, e.token ?? null, e.baseUrl ?? null);
|
|
6029
6029
|
x(() => {
|
|
6030
6030
|
o != null && o.id && a({ id: o.id, token: e.token });
|
|
6031
6031
|
}, [o == null ? void 0 : o.id]);
|
|
6032
|
-
const [l, c] = z(null), [u, d] = z(() => ({ ...Xu, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, L]) => L !== void 0)) })), [h,
|
|
6033
|
-
d((ie) => ({ ...ie, ...L })),
|
|
6032
|
+
const [l, c] = z(null), [u, d] = z(() => ({ ...Xu, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, L]) => L !== void 0)) })), [h, g] = z({}), M = { prefs: u, set: (L) => {
|
|
6033
|
+
d((ie) => ({ ...ie, ...L })), g((ie) => ({ ...ie, ...L }));
|
|
6034
6034
|
}, shareUrl: (X = e.shareUrl) == null ? void 0 : X.call(e, null) }, { muted: f, ...y } = h;
|
|
6035
6035
|
x(() => {
|
|
6036
6036
|
c(null);
|
|
@@ -6044,21 +6044,21 @@ const Od = go(function(e, n) {
|
|
|
6044
6044
|
P && ((L = e.onError) == null || L.call(e, P));
|
|
6045
6045
|
}, [P]);
|
|
6046
6046
|
const W = Ca(e.desk), E = (e.layout ?? "embed") === "embed", k = e.appUrl ?? (e.endCard ? e.endCard.appUrl : void 0), Y = Je((L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }), []), C = od(k, Y), te = w(null);
|
|
6047
|
-
return x(() => (Ri(E ? te.current : null), () => Ri(null)), [E]), /* @__PURE__ */ i(rc, { value: I, children: /* @__PURE__ */ i("div", { ref: te, className: `vsp${E ? " 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(hd, { idle:
|
|
6047
|
+
return x(() => (Ri(E ? te.current : null), () => Ri(null)), [E]), /* @__PURE__ */ i(rc, { value: I, children: /* @__PURE__ */ i("div", { ref: te, className: `vsp${E ? " 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(hd, { idle: M, connect: C, page: !E, poster: e.poster ?? null, onPick: c, onShare: async (L) => {
|
|
6048
6048
|
try {
|
|
6049
6049
|
return await b.client.shareLinks.open(L), a({ id: L, token: null }), !0;
|
|
6050
6050
|
} catch {
|
|
6051
6051
|
return !1;
|
|
6052
6052
|
}
|
|
6053
|
-
} }) : N ? /* @__PURE__ */ i(dd, { idle:
|
|
6053
|
+
} }) : N ? /* @__PURE__ */ i(dd, { idle: M, src: T, ask: !l, connect: C, page: !E, poster: e.poster ?? null, onClear: l ? () => c(null) : void 0 }) : s.id ? P && !S ? /* @__PURE__ */ i(fd, { idle: M, message: P.message, onRetry: O, page: !E }) : /* @__PURE__ */ i(pd, { ...e, initial: { ...e.initial ?? {}, ...y }, startMuted: f === !0, handle: r, id: s.id, api: I, shared: S, gone: A, loadError: P, reread: O, desk: W, dark: (e.mode ?? "video") === "video" || !!e.dark, onStarted: (L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }) }, s.id) : /* @__PURE__ */ i("div", { className: "vsp-gate", "data-theme": "dark", children: /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) }) }) });
|
|
6054
6054
|
});
|
|
6055
6055
|
function pd(t) {
|
|
6056
|
-
var Cs, Ss, Ds, As, Es, _s, Ys, Us, $s, Rs, Ps, Qs, Vs, Bs, Hs, Ws, Fs, Zs, Gs, qs, Ks, Js, Xs, ei, ti, ni, ri, si, ii, ai, oi, li, ci, ui, di, hi, fi,
|
|
6056
|
+
var Cs, Ss, Ds, As, Es, _s, Ys, Us, $s, Rs, Ps, Qs, Vs, Bs, Hs, Ws, Fs, Zs, Gs, qs, Ks, Js, Xs, ei, ti, ni, ri, si, ii, ai, oi, li, ci, ui, di, hi, fi, gi, Mi, mi, pi, yi, Ni, Ti;
|
|
6057
6057
|
const { api: e, shared: n, gone: r, desk: s, dark: a } = t, o = t.id ?? "", l = ze(() => md(t), []), u = (t.mode ?? "video") === "video", [d, h] = z(t.loadError);
|
|
6058
6058
|
x(() => {
|
|
6059
6059
|
t.loadError && h(t.loadError);
|
|
6060
6060
|
}, [t.loadError]);
|
|
6061
|
-
const [
|
|
6061
|
+
const [g, M] = z("none"), [f, y] = z(!1), [T, N] = z(""), [p, b] = pu(), [S, A] = z(null), [P, O] = z(u ? "listen" : "read"), [V, I] = z(!1), W = w(null), E = w(/* @__PURE__ */ new Map()), [k, Y] = z("main"), C = (j) => {
|
|
6062
6062
|
const pe = document.querySelector(".vs-sheet--settings"), Re = pe == null ? void 0 : pe.parentElement;
|
|
6063
6063
|
pe && Re && k === "main" && j !== "main" && Re.style.setProperty("--vs-sheet-top", `${Math.round(pe.getBoundingClientRect().top - Re.getBoundingClientRect().top)}px`), Y(j);
|
|
6064
6064
|
};
|
|
@@ -6089,18 +6089,18 @@ function pd(t) {
|
|
|
6089
6089
|
}, [ee, me, Te, Se, ve, $e, B]), x(() => {
|
|
6090
6090
|
n && !n.allowTranslate && ee && G(null);
|
|
6091
6091
|
}, [n, ee]);
|
|
6092
|
-
const { model: ce, error: Z, clearError: Ne, setLanguage: q, mergeTranslations: Le, translating: Ie, translateFailed: Fe, shownLang: Ae } =
|
|
6092
|
+
const { model: ce, error: Z, clearError: Ne, setLanguage: q, mergeTranslations: Le, translating: Ie, translateFailed: Fe, shownLang: Ae } = gc(ie, {
|
|
6093
6093
|
lang: null,
|
|
6094
6094
|
onFrame: (j) => {
|
|
6095
6095
|
j.type === "job.progress" && A({ state: j.state, processedS: j.processedS ?? 0, totalS: j.totalS ?? null, segmentsDone: j.segmentsDone ?? 0, segmentsTotal: j.segmentsTotal ?? null, pct: j.pct ?? 0, error: j.error ?? null });
|
|
6096
6096
|
}
|
|
6097
|
-
}), ue = ze(() => Hl(ce).filter((j) => !j.suppressed), [ce]), _e =
|
|
6097
|
+
}), ue = ze(() => Hl(ce).filter((j) => !j.suppressed), [ce]), _e = Mc((n == null ? void 0 : n.job) ?? null), Ve = ["done", "failed", "stopped"].includes(Lr((_e == null ? void 0 : _e.state) ?? ((Cs = n == null ? void 0 : n.job) == null ? void 0 : Cs.state))), Q = Ve ? _e : S ?? _e, fe = !!S && !["done", "failed", "stopped"].includes(Lr(S.state)), de = w(0);
|
|
6098
6098
|
x(() => {
|
|
6099
6099
|
!Ve || !fe || Date.now() - de.current < 1e4 || (de.current = Date.now(), t.reread());
|
|
6100
6100
|
}, [Ve, fe, S == null ? void 0 : S.state, S == null ? void 0 : S.processedS, o]);
|
|
6101
|
-
const ae = Lr((Q == null ? void 0 : Q.state) ?? ((Ss = n == null ? void 0 : n.job) == null ? void 0 : Ss.state) ?? (e.listen ? (L == null ? void 0 : L.state) === "finalized" ? "done" : L != null && L.state ? "transcribing" : void 0 : void 0)),
|
|
6101
|
+
const ae = Lr((Q == null ? void 0 : Q.state) ?? ((Ss = n == null ? void 0 : n.job) == null ? void 0 : Ss.state) ?? (e.listen ? (L == null ? void 0 : L.state) === "finalized" ? "done" : L != null && L.state ? "transcribing" : void 0 : void 0)), Me = !!ie && (ae === "transcribing" || ae === "queued"), Ye = u && !r && (!n || (Me || ae === "cropping") && ue.length === 0), U = Me ? (Q == null ? void 0 : Q.pct) ?? 0 : 100, $ = pc(n == null ? void 0 : n.job, Q) ?? (L == null ? void 0 : L.mediaDurationS) ?? null, K = ((Ds = ce.segments.values().next().value) == null ? void 0 : Ds.language) ?? (L == null ? void 0 : L.spokenLanguage) ?? null, se = n != null && n.sharedBy ? `Shared by ${n.sharedBy}` : "", he = ((_s = (Es = (As = n == null ? void 0 : n.job) == null ? void 0 : As.source) == null ? void 0 : Es.name) == null ? void 0 : _s.trim()) || null, be = n ? ((Ys = n.name) == null ? void 0 : Ys.trim()) || he : null, ye = !!((Us = n == null ? void 0 : n.job) != null && Us.hasAudio), ke = ($s = n == null ? void 0 : n.job) == null ? void 0 : $s.source, Oe = !ye && !!ke && (ke.kind !== "url" || ke.bytes != null) && (ae === "transcribing" || ae === "queued" || ae === "done"), He = ie && (n != null && n.allowDownload) && ye ? So(e.origin, ie, e.cred) : null, Pe = !!ke && (ke.kind !== "url" || ke.bytes != null), ht = yd(He && Pe ? He : null), at = He && (!Pe || ht === "yes") ? He : He && ht === "unknown" ? null : ie && (n != null && n.allowDownload) && (Oe || ye && Pe) ? An(e.origin, ie, "source", e.cred) : null, Tt = ue[ue.length - 1], Ge = Tt ? ((Rs = Tt.words[Tt.words.length - 1]) == null ? void 0 : Rs.end) ?? Tt.start : 0, st = u && Me ? Math.max(Ge, (Q == null ? void 0 : Q.processedS) ?? 0) : null, Mt = ku(at, (ye || Oe) && !!(n != null && n.allowDownload), ue, $, Oe ? ((Qs = (Ps = n == null ? void 0 : n.job) == null ? void 0 : Ps.crop) == null ? void 0 : Qs.startS) ?? 0 : 0, st), it = el((Vs = n == null ? void 0 : n.job) == null ? void 0 : Vs.source), Be = it && ((Bs = Yt(it)) == null ? void 0 : Bs.id) === "youtube" ? ya(it) : null, gn = ml(Be), Ut = wu(ue, $, ((Ws = (Hs = n == null ? void 0 : n.job) == null ? void 0 : Hs.crop) == null ? void 0 : Ws.startS) ?? 0, st), Xe = !!Be, ct = Xe ? Ut.player : Mt, ot = ga(), rn = w(null), re = bu({ forcedVoice: t.voice ?? null, recordingId: ie, model: ce, rows: ue, lenS: $, ended: !!ie && !Me, cred: e.cred, langs: ot, srcLang: K, canTranslate: !!(n != null && n.allowTranslate), pickedLang: ne, setPickedLang: G, side: s && !te ? Iu : void 0, hearOriginal: H, timed: !!Be, stockVoices: u && !$e, stickyPicker: u, pickerBusy: rn.current }), Mn = w(null);
|
|
6102
6102
|
x(() => {
|
|
6103
|
-
!ie ||
|
|
6103
|
+
!ie || Mn.current === ee || (Mn.current = ee, q(ee));
|
|
6104
6104
|
}, [ee, ie]);
|
|
6105
6105
|
const v = Xe ? Ut.player : re.on ? re.player : ct;
|
|
6106
6106
|
x(() => {
|
|
@@ -6119,9 +6119,9 @@ function pd(t) {
|
|
|
6119
6119
|
}, [$t.sid, Xe, re.on]), vu([ct, re.player], re.sampling);
|
|
6120
6120
|
const Pt = w(null);
|
|
6121
6121
|
x(() => {
|
|
6122
|
-
|
|
6123
|
-
}, [
|
|
6124
|
-
const qt = Cu(Pt, ue, f, T, y), mn = /* @__PURE__ */ i(xu, { open: f, q: T, onQ: N, onClose: () => y(!1), hits: qt, desk: s, inline: s }), qe = yl({ name: n == null ? void 0 : n.name, sourceName: (Zs = (Fs = n == null ? void 0 : n.job) == null ? void 0 : Fs.source) == null ? void 0 : Zs.name, ytTitle:
|
|
6122
|
+
Me && !v.playing && Pt.current && (Pt.current.scrollTop = Pt.current.scrollHeight);
|
|
6123
|
+
}, [Me, ue.length]);
|
|
6124
|
+
const qt = Cu(Pt, ue, f, T, y), mn = /* @__PURE__ */ i(xu, { open: f, q: T, onQ: N, onClose: () => y(!1), hits: qt, desk: s, inline: s }), qe = yl({ name: n == null ? void 0 : n.name, sourceName: (Zs = (Fs = n == null ? void 0 : n.job) == null ? void 0 : Fs.source) == null ? void 0 : Zs.name, ytTitle: gn, url: ((qs = (Gs = n == null ? void 0 : n.job) == null ? void 0 : Gs.source) == null ? void 0 : qs.kind) === "url" ? n.job.source.url : t.src ?? null, id: o }), lt = !!(n != null && n.allowDownload), sn = !!(n != null && n.allowExport), vt = re.readLang, mt = vt ? ((Ks = ot == null ? void 0 : ot.languages.find((j) => j.code === vt)) == null ? void 0 : Ks.name) ?? vt.toUpperCase() : null, Kt = async () => {
|
|
6125
6125
|
if (ie)
|
|
6126
6126
|
try {
|
|
6127
6127
|
if (vt && re.canSpeak) {
|
|
@@ -6139,10 +6139,10 @@ function pd(t) {
|
|
|
6139
6139
|
}, ft = (j) => {
|
|
6140
6140
|
if (!ie) return;
|
|
6141
6141
|
const pe = _r.find((We) => We.key === j).name, Re = mt ? ` in ${mt}` : "";
|
|
6142
|
-
return Nc(e, ie, j, { lang: vt }).then(() => b(
|
|
6142
|
+
return Nc(e, ie, j, { lang: vt }).then(() => b(Me ? `${pe} exported${Re} for the first ${ue.length} segments — the rest is still transcribing.` : `${pe} exported${Re}.`)).catch((We) => {
|
|
6143
6143
|
throw h(Ct(We)), We;
|
|
6144
6144
|
});
|
|
6145
|
-
}, an =
|
|
6145
|
+
}, an = Me ? "MORE TO COME…" : "END OF TRANSCRIPT", ut = Me ? "var(--brand)" : "var(--ink-28)", on = mc(Q, ue.length), St = v.has && (!re.relang || !!Be), Ze = w(v);
|
|
6146
6146
|
Ze.current = v;
|
|
6147
6147
|
const Qt = `${ee ?? ""}|${re.on ? "voice" : "source"}`, jt = w({ key: Qt, idx: 0, t: 0, playing: !1, until: 0 });
|
|
6148
6148
|
x(() => {
|
|
@@ -6194,7 +6194,7 @@ function pd(t) {
|
|
|
6194
6194
|
return;
|
|
6195
6195
|
}
|
|
6196
6196
|
tt.current = !0, Ze.current.toggle();
|
|
6197
|
-
}, Nn = (j) => /* @__PURE__ */ i(mu, { player: v, size: j }), ln = !!ie && !
|
|
6197
|
+
}, Nn = (j) => /* @__PURE__ */ i(mu, { player: v, size: j }), ln = !!ie && !Me, [R, Ce] = z(!1);
|
|
6198
6198
|
x(() => {
|
|
6199
6199
|
if (!Ie) {
|
|
6200
6200
|
Ce(!1);
|
|
@@ -6225,10 +6225,10 @@ function pd(t) {
|
|
|
6225
6225
|
var pe;
|
|
6226
6226
|
re.relang || (pe = v.seekFrac) == null || pe.call(v, j);
|
|
6227
6227
|
}
|
|
6228
|
-
}, [Ua, $a] = ka(re.on && !!v.preparing && v.playing, 1500), Xn = re.on && ((ei = v.error) == null ? void 0 : ei.code) === "voice_not_started", er = re.canSpeak && !re.error && !Xn, Tn = ee ? ((ti = ot == null ? void 0 : ot.languages.find((j) => j.code === ee)) == null ? void 0 : ti.name) ?? Ue.label : "", nt = te ? uu({ lang: ee, langName: Tn, translating: Ie && !!ee, translateFailed: Fe, voiceFailed: Xn, relang: re.relang, starting: re.on ? v.starting : null, slowLine: Ua, lineSince: $a }) : null, tr = !!Be && !!nt && (nt.kind === "translating" || nt.kind === "voice" && re.relang), ns = !tr || !nt ? null : nt.kind === "translating" ? `Translating into ${Tn || "the new language"}…` : `Preparing the ${Tn || "translated"} voice…`, yt = !tr && ((nt == null ? void 0 : nt.kind) === "voice" || (nt == null ? void 0 : nt.kind) === "starting"), rs = Vr({ ...re.langList, keepOpen: !0, open: k === "lang", onClose: () => C("main") }), ss = kl(B, re.on), Ra = u && ss.bed && lt && ie && (!
|
|
6228
|
+
}, [Ua, $a] = ka(re.on && !!v.preparing && v.playing, 1500), Xn = re.on && ((ei = v.error) == null ? void 0 : ei.code) === "voice_not_started", er = re.canSpeak && !re.error && !Xn, Tn = ee ? ((ti = ot == null ? void 0 : ot.languages.find((j) => j.code === ee)) == null ? void 0 : ti.name) ?? Ue.label : "", nt = te ? uu({ lang: ee, langName: Tn, translating: Ie && !!ee, translateFailed: Fe, voiceFailed: Xn, relang: re.relang, starting: re.on ? v.starting : null, slowLine: Ua, lineSince: $a }) : null, tr = !!Be && !!nt && (nt.kind === "translating" || nt.kind === "voice" && re.relang), ns = !tr || !nt ? null : nt.kind === "translating" ? `Translating into ${Tn || "the new language"}…` : `Preparing the ${Tn || "translated"} voice…`, yt = !tr && ((nt == null ? void 0 : nt.kind) === "voice" || (nt == null ? void 0 : nt.kind) === "starting"), rs = Vr({ ...re.langList, keepOpen: !0, open: k === "lang", onClose: () => C("main") }), ss = kl(B, re.on), Ra = u && ss.bed && lt && ie && (!Me || at) ? wi(e.origin, ie, e.cred) : null, is = Sl(Ra, { t: bt(v, ue), playing: v.playing && !yt && !(v.timed && v.preparing), muted: v.muted }), Pa = u && ss.speech && lt && ie && (!Me || at) ? wi(e.origin, ie, e.cred, "speech") : null, nr = la(Pa, { t: bt(v, ue), playing: !re.on && v.playing, muted: v.muted }), rr = !re.on && nr.on;
|
|
6229
6229
|
x(() => {
|
|
6230
6230
|
var j;
|
|
6231
|
-
Ut.setVideoSound(!(Xe && (re.on || rr))), (j =
|
|
6231
|
+
Ut.setVideoSound(!(Xe && (re.on || rr))), (j = Mt.silence) == null || j.call(Mt, !Xe && rr);
|
|
6232
6232
|
}, [Xe, re.on, rr, at]);
|
|
6233
6233
|
const sr = lt ? re.on ? is : nr.state : "unavailable", ir = ve && er && !!ee, Qa = ir ? [`Translated${re.hasClone ? $e ? ", cloned voices" : ", synthetic voices" : ""}`, !B && lt && is !== "unavailable" ? "with background sound" : null].filter(Boolean).join(" ") : B && sr !== "unavailable" ? "Original speech, background removed" : "Original sound", Va = () => {
|
|
6234
6234
|
if ((nt == null ? void 0 : nt.kind) === "translateFailed") {
|
|
@@ -6249,13 +6249,13 @@ function pd(t) {
|
|
|
6249
6249
|
I(!1), Ue.onClick();
|
|
6250
6250
|
}, style: { position: "relative" }, children: [
|
|
6251
6251
|
/* @__PURE__ */ i("span", { style: { fontSize: pe === "sm" ? 17 : 21, lineHeight: 1 }, children: Ue.flag }),
|
|
6252
|
-
Rt && /* @__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(
|
|
6252
|
+
Rt && /* @__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(gt, { size: 11, color: "#eef0f8", track: "rgba(255,255,255,.25)" }) })
|
|
6253
6253
|
] }) : /* @__PURE__ */ i(Bn, { flag: Ue.flag, code: Ue.code, label: Ue.label, bordered: !1, size: pe, onClick: Ue.onClick, style: j }), os = { on: !1, title: "Voices", onClick: () => {
|
|
6254
6254
|
}, busy: re.voiceWaiting || yt }, [Ha, Wa] = z(!1);
|
|
6255
6255
|
x(() => {
|
|
6256
6256
|
v.t > 0.3 && Wa(!0);
|
|
6257
6257
|
}, [v.t]);
|
|
6258
|
-
const Fa = !Be && u && ie && (n != null && n.allowDownload) && !
|
|
6258
|
+
const Fa = !Be && u && ie && (n != null && n.allowDownload) && !Me && ((ni = n == null ? void 0 : n.job) == null ? void 0 : ni.hasVideo) !== !1 && ((si = (ri = n == null ? void 0 : n.job) == null ? void 0 : ri.source) == null ? void 0 : si.kind) !== "url" ? /* @__PURE__ */ i(Li, { src: An(e.origin, ie, "video", e.cred), t: bt(v, ue), playing: v.playing && !yt, seekN: v.seekN, onToggle: v.has ? pt : void 0 }, ie) : null, dt = !Be && u && it && Jo(it) ? it : null, vn = dt ? aa(dt) : null, ls = ze(() => vn ? Ml(vn) : void 0, [vn]), lr = dt && ((ii = Yt(dt)) == null ? void 0 : ii.id) === "facebook" ? dt : null, cr = dt && ((ai = Yt(dt)) == null ? void 0 : ai.id) === "wistia" ? tl(dt) : null, ur = dt && ((oi = Yt(dt)) == null ? void 0 : oi.id) === "vidyard" ? nl(dt) : null, Za = ur ? /* @__PURE__ */ i(hl, { uuid: ur, t: bt(v, ue) + (((ci = (li = n == null ? void 0 : n.job) == null ? void 0 : li.crop) == null ? void 0 : ci.startS) ?? 0), playing: v.playing && !yt, seekN: v.seekN, onToggle: v.has ? pt : void 0 }, ur) : cr ? /* @__PURE__ */ i(ul, { id: cr, t: bt(v, ue) + (((di = (ui = n == null ? void 0 : n.job) == null ? void 0 : ui.crop) == null ? void 0 : di.startS) ?? 0), playing: v.playing && !yt, seekN: v.seekN, onToggle: v.has ? pt : void 0 }, cr) : lr ? /* @__PURE__ */ i(ll, { url: lr, t: bt(v, ue) + (((fi = (hi = n == null ? void 0 : n.job) == null ? void 0 : hi.crop) == null ? void 0 : fi.startS) ?? 0), playing: v.playing && !yt, seekN: v.seekN, onToggle: v.has ? pt : void 0 }, lr) : ls ? /* @__PURE__ */ i(Li, { setup: ls, seekOver: 1, t: bt(v, ue) + (((Mi = (gi = n == null ? void 0 : n.job) == null ? void 0 : gi.crop) == null ? void 0 : Mi.startS) ?? 0), playing: v.playing && !yt, seekN: v.seekN, onToggle: v.has ? pt : void 0 }, vn) : dt ? /* @__PURE__ */ i(il, { url: dt, t: bt(v, ue) + (((pi = (mi = n == null ? void 0 : n.job) == null ? void 0 : mi.crop) == null ? void 0 : pi.startS) ?? 0), playing: v.playing && !yt, seekN: v.seekN, title: qe, onToggle: v.has ? pt : void 0 }) : null, Ga = v.has ? /* @__PURE__ */ m("div", { className: "txyt vsp-follow", children: [
|
|
6259
6259
|
/* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: pt, style: { cursor: "pointer" } }),
|
|
6260
6260
|
/* @__PURE__ */ i("div", { className: `txyt__paused${v.playing ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(xt, { size: 44 }) }) })
|
|
6261
6261
|
] }) : null, dr = ((Ni = (yi = n == null ? void 0 : n.job) == null ? void 0 : yi.source) == null ? void 0 : Ni.thumbnailUrl) ?? null, qa = dr && /^https:\/\//.test(dr) ? /* @__PURE__ */ i("div", { className: "vsp-thumbpic", "aria-hidden": "true", style: { backgroundImage: `url(${JSON.stringify(dr)})` } }) : null, cs = Be ? /* @__PURE__ */ m(xe, { children: [
|
|
@@ -6279,15 +6279,15 @@ function pd(t) {
|
|
|
6279
6279
|
for (const j of ue) for (const [pe, Re] of Object.entries(j.translations)) Re && E.current.set(`${j.sentenceId ?? j.start}|${pe}`, Re);
|
|
6280
6280
|
const ds = (j, pe) => j.translations[pe] || E.current.get(`${j.sentenceId ?? j.start}|${pe}`) || null, hr = (j, pe) => !j || !pe || j.language === pe || !!ds(j, pe), It = hr(et, ee) ? ee : hr(et, W.current) ? W.current : ee;
|
|
6281
6281
|
et && hr(et, It) && (W.current = It);
|
|
6282
|
-
const hs = et && It && et.language !== It ? ds(et, It) : null, Ka = et && hs && It && !et.translations[It] ? Object.assign([...ue], { [v.idx]: { ...et, translations: { ...et.translations, [It]: hs } } }) : ue, wn = et ? La(Ka, v.idx, It) : [], kn = Te ? Te === "on" : !u || re.on || !Qe || Qe === K, fs = kn ? Ui(v, v.idx, wn) : null,
|
|
6282
|
+
const hs = et && It && et.language !== It ? ds(et, It) : null, Ka = et && hs && It && !et.translations[It] ? Object.assign([...ue], { [v.idx]: { ...et, translations: { ...et.translations, [It]: hs } } }) : ue, wn = et ? La(Ka, v.idx, It) : [], kn = Te ? Te === "on" : !u || re.on || !Qe || Qe === K, fs = kn ? Ui(v, v.idx, wn) : null, gs = wn.map((j, pe) => ({ t: j.text, sp: pe < wn.length - 1 ? " " : "", dim: fs != null && pe > fs })), Ln = me ? me === "on" : u ? !1 : tc(ce, ue, L == null ? void 0 : L.settings), Ms = { lang: ee, subtitles: Se, speakerLabels: Ln, wordHighlight: kn, translateAudio: ve, voices: $e ? "cloned" : "synthetic", removeBackground: B }, Ja = JSON.stringify(Ms), jn = w(t.onSettingsChange);
|
|
6283
6283
|
jn.current = t.onSettingsChange, x(() => {
|
|
6284
6284
|
var j;
|
|
6285
|
-
(j = jn.current) == null || j.call(jn,
|
|
6285
|
+
(j = jn.current) == null || j.call(jn, Ms);
|
|
6286
6286
|
}, [Ja]);
|
|
6287
|
-
const zn = et && et.speaker >= 0 && Ln ? Wr(ce, et.speaker) : null, [Xa, ms] = z(!1), [fr, ps] = z(null), [eo, ys] = z(null),
|
|
6288
|
-
x(() => () => window.clearTimeout(Mr.current), []);
|
|
6289
|
-
const gr = w(void 0);
|
|
6287
|
+
const zn = et && et.speaker >= 0 && Ln ? Wr(ce, et.speaker) : null, [Xa, ms] = z(!1), [fr, ps] = z(null), [eo, ys] = z(null), gr = w(void 0);
|
|
6290
6288
|
x(() => () => window.clearTimeout(gr.current), []);
|
|
6289
|
+
const Mr = w(void 0);
|
|
6290
|
+
x(() => () => window.clearTimeout(Mr.current), []);
|
|
6291
6291
|
const Ns = (j) => {
|
|
6292
6292
|
if (t.shareUrl) return t.shareUrl(j);
|
|
6293
6293
|
const pe = new URL(window.location.href);
|
|
@@ -6340,20 +6340,20 @@ function pd(t) {
|
|
|
6340
6340
|
Dn !== j && (j = Dn, We(Nt));
|
|
6341
6341
|
};
|
|
6342
6342
|
pe();
|
|
6343
|
-
const Re = window.setInterval(pe,
|
|
6343
|
+
const Re = window.setInterval(pe, Md);
|
|
6344
6344
|
return () => window.clearInterval(Re);
|
|
6345
6345
|
}, []);
|
|
6346
6346
|
const no = () => t.onShare ? t.onShare() : Gr(Ns(null), qe, () => {
|
|
6347
|
-
window.clearTimeout(
|
|
6347
|
+
window.clearTimeout(Mr.current), ms(!0), Mr.current = window.setTimeout(() => ms(!1), 2200);
|
|
6348
6348
|
}), ks = (j, pe, Re) => {
|
|
6349
6349
|
const We = _r.find((Dn) => Dn.key === j), wt = fr === j, Nt = eo === j;
|
|
6350
6350
|
return /* @__PURE__ */ m("div", { className: "srow srow--tap", role: "button", "aria-busy": wt || void 0, style: fr && !wt ? { opacity: 0.45, pointerEvents: "none" } : void 0, onClick: () => {
|
|
6351
6351
|
fr || (ps(j), Promise.resolve().then(() => ft(j)).then(() => {
|
|
6352
|
-
ys(j), window.clearTimeout(
|
|
6352
|
+
ys(j), window.clearTimeout(gr.current), gr.current = window.setTimeout(() => ys(null), 1600);
|
|
6353
6353
|
}).catch(() => {
|
|
6354
6354
|
}).finally(() => ps(null)));
|
|
6355
6355
|
}, children: [
|
|
6356
|
-
wt ? /* @__PURE__ */ i(
|
|
6356
|
+
wt ? /* @__PURE__ */ i(gt, { size: 17, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: We.icon, size: 17, sw: 1.5, style: { flex: "none", color: "var(--ink-70)" } }),
|
|
6357
6357
|
/* @__PURE__ */ m("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
6358
6358
|
/* @__PURE__ */ i("div", { className: "srow__t", children: pe }),
|
|
6359
6359
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Re })
|
|
@@ -6477,9 +6477,9 @@ function pd(t) {
|
|
|
6477
6477
|
cc: D.subtitles ? { on: Se, onToggle: () => we((j) => !j) } : void 0,
|
|
6478
6478
|
noFull: !D.fullscreen,
|
|
6479
6479
|
ad: qn,
|
|
6480
|
-
wait: nt && !tr ? /* @__PURE__ */ i(hu, { state: nt, line: yt ?
|
|
6481
|
-
pct:
|
|
6482
|
-
sub: Se && et ? { who: zn ? Hr(ce, et.speaker) : null, color: zn ? zn.fg ?? `var(--lane-${zn.lane})` : "#fff", words:
|
|
6480
|
+
wait: nt && !tr ? /* @__PURE__ */ i(hu, { state: nt, line: yt ? gs.map((j) => j.t + j.sp).join("") : null, onRetry: Va, onOriginal: Ba }) : v.edgeWait ? `Transcribing ${Math.round(U)}% — it plays on as more is written` : null,
|
|
6481
|
+
pct: Me ? Math.round(U) : null,
|
|
6482
|
+
sub: Se && et ? { who: zn ? Hr(ce, et.speaker) : null, color: zn ? zn.fg ?? `var(--lane-${zn.lane})` : "#fff", words: gs, cursor: Ui(v, v.idx, wn) } : null,
|
|
6483
6483
|
chip: or(s ? ar : { ...ar, width: 64, padding: "0 6px" }, s ? void 0 : "sm"),
|
|
6484
6484
|
transport: as,
|
|
6485
6485
|
picker: re.sheets,
|
|
@@ -6500,10 +6500,10 @@ function pd(t) {
|
|
|
6500
6500
|
/* @__PURE__ */ i(oe, { d: J.volumeOff, size: 14, sw: 1.8 }),
|
|
6501
6501
|
"Tap for sound"
|
|
6502
6502
|
] }) : ns ? /* @__PURE__ */ m("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
|
|
6503
|
-
/* @__PURE__ */ i(
|
|
6503
|
+
/* @__PURE__ */ i(gt, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
|
|
6504
6504
|
ns
|
|
6505
6505
|
] }) : re.on && (Xe ? $t.missing != null : v.silent) ? /* @__PURE__ */ m("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
|
|
6506
|
-
/* @__PURE__ */ i(
|
|
6506
|
+
/* @__PURE__ */ i(gt, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
|
|
6507
6507
|
`${Tn || "Translated"} voice is still being prepared · playing with subtitles`
|
|
6508
6508
|
] }) : null,
|
|
6509
6509
|
onTouch: () => {
|
|
@@ -6517,7 +6517,7 @@ function pd(t) {
|
|
|
6517
6517
|
x(() => {
|
|
6518
6518
|
!u && te && !Ht && (dn(!1), X(!1));
|
|
6519
6519
|
}, [u, te, Ht]);
|
|
6520
|
-
const Ls =
|
|
6520
|
+
const Ls = Me && /* @__PURE__ */ m("div", { className: `pubprog${s ? " pubprog--desk" : ""}${f ? " pubprog--find" : ""}`, children: [
|
|
6521
6521
|
/* @__PURE__ */ m("div", { className: "pubprog__row", children: [
|
|
6522
6522
|
/* @__PURE__ */ i("span", { className: "l", children: `TRANSCRIBING ${U}%` }),
|
|
6523
6523
|
!s && /* @__PURE__ */ i("div", { style: { flex: 1 } }),
|
|
@@ -6525,20 +6525,20 @@ function pd(t) {
|
|
|
6525
6525
|
/* @__PURE__ */ i("span", { className: "s", children: on })
|
|
6526
6526
|
] }),
|
|
6527
6527
|
!s && /* @__PURE__ */ i("div", { className: "pubprog__bar", style: { marginTop: 8 }, children: /* @__PURE__ */ i("div", { style: { width: `${U}%` } }) })
|
|
6528
|
-
] }), yr = 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." }), js = /* @__PURE__ */ i(Ou, { model: ce, rows: ue, player: zt ? v : { ...v, playRow: v.seekRow }, tail: an, tailFg: ut, running:
|
|
6528
|
+
] }), yr = 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." }), js = /* @__PURE__ */ i(Ou, { model: ce, rows: ue, player: zt ? v : { ...v, playRow: v.seekRow }, tail: an, tailFg: ut, running: Me, desk: s, feedRef: Pt, listener: !0, showLabels: Ln, find: T, findOpen: !s && f, lang: Qe, warm: R, onVisible: Et, wordHl: kn }), Nr = /* @__PURE__ */ i(Ic, { error: d ?? Z ?? (Xn && te ? null : v.error) ?? re.error, onClose: () => {
|
|
6529
6529
|
h(null), Ne(), v.clearError(), re.clearError();
|
|
6530
6530
|
} }), zs = [$ ? Ot($) : null, K ? K.toUpperCase() : null, se || "Read-only copy"].filter(Boolean).join(" · "), Is = (j) => /* @__PURE__ */ i("div", { className: "ctrans", children: re.noVoice ? re.noVoiceNote : /* @__PURE__ */ m(xe, { children: [
|
|
6531
6531
|
/* @__PURE__ */ m("div", { className: "ctrans__row", children: [
|
|
6532
6532
|
/* @__PURE__ */ i("span", { className: "ctrans__sp", "aria-hidden": "true" }),
|
|
6533
6533
|
/* @__PURE__ */ m("div", { className: "ctrans__mid", children: [
|
|
6534
6534
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Previous segment", title: "Previous segment", style: { opacity: v.idx <= 0 ? 0.3 : 1 }, onClick: v.prev, children: /* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 16, sw: 1.8 }) }),
|
|
6535
|
-
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : v.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (v.playing ? "Pause" : "Play"), disabled: !St, onClick: v.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: v.playing ? void 0 : { marginLeft: 2 }, children: v.playing ?
|
|
6535
|
+
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : v.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (v.playing ? "Pause" : "Play"), disabled: !St, onClick: v.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: v.playing ? void 0 : { marginLeft: 2 }, children: v.playing ? gu : Mu }) }),
|
|
6536
6536
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: v.idx >= ue.length - 1 ? 0.3 : 1 }, onClick: v.next, children: /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 16, sw: 1.8 }) })
|
|
6537
6537
|
] }),
|
|
6538
6538
|
/* @__PURE__ */ i("span", { className: "ctrans__mute", children: Nn(36) })
|
|
6539
6539
|
] }),
|
|
6540
6540
|
/* @__PURE__ */ i("div", { className: "ctrans__scrub", children: Ya(j) })
|
|
6541
|
-
] }) }), io = Xc("ga", { tabs: Xt, cur:
|
|
6541
|
+
] }) }), io = Xc("ga", { tabs: Xt, cur: g, pref: (Ti = Xt[0]) == null ? void 0 : Ti.key, onPick: M }), bs = Math.max(0, Math.min(100, Math.round(U))), ao = Ye && /* @__PURE__ */ m("div", { className: "gfull gfull--hold", "data-theme": "dark", role: "status", "aria-live": "polite", children: [
|
|
6542
6542
|
Be && /* @__PURE__ */ i("div", { className: "gfull__holdbg", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Be}/hqdefault.jpg)` } }),
|
|
6543
6543
|
/* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */ m(xe, { children: [
|
|
6544
6544
|
qe && /* @__PURE__ */ i("div", { className: "gfull__holdt", children: qe }),
|
|
@@ -6550,7 +6550,7 @@ function pd(t) {
|
|
|
6550
6550
|
] }),
|
|
6551
6551
|
/* @__PURE__ */ i("div", { className: "gfull__holdn", children: "The video starts as soon as the first lines are transcribed." })
|
|
6552
6552
|
] }) : /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) })
|
|
6553
|
-
] }), Os = u && n && (
|
|
6553
|
+
] }), Os = u && n && (Me || ae === "cropping") ? Math.max(0, Math.min(100, Math.round(U))) : null, xn = w(t.onProgress);
|
|
6554
6554
|
xn.current = t.onProgress, x(() => {
|
|
6555
6555
|
var j;
|
|
6556
6556
|
(j = xn.current) == null || j.call(xn, Os);
|
|
@@ -6601,7 +6601,7 @@ function pd(t) {
|
|
|
6601
6601
|
pe && /* @__PURE__ */ m(nu, { id: "ga", className: "listenerside", gap: 20, plain: !0, children: [
|
|
6602
6602
|
!re.sidePanel && j,
|
|
6603
6603
|
!re.sidePanel && us,
|
|
6604
|
-
!re.sidePanel && Xt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(eu, { col: io, order: ["summary", "export"], onPick:
|
|
6604
|
+
!re.sidePanel && Xt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(eu, { col: io, order: ["summary", "export"], onPick: M, grip: { summary: 40, export: 28 }, render: (Re) => /* @__PURE__ */ i(vi, { panel: !0, children: es(Re) }) }) }),
|
|
6605
6605
|
re.sidePanel
|
|
6606
6606
|
] })
|
|
6607
6607
|
] }),
|
|
@@ -6612,8 +6612,8 @@ function pd(t) {
|
|
|
6612
6612
|
] });
|
|
6613
6613
|
}
|
|
6614
6614
|
const co = Xt.length > 0 && !f && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */ m(vi, { panel: !0, children: [
|
|
6615
|
-
/* @__PURE__ */ i(va, { tabs: Xt, current:
|
|
6616
|
-
|
|
6615
|
+
/* @__PURE__ */ i(va, { tabs: Xt, current: g, onPick: M, gap: g !== "none" }),
|
|
6616
|
+
g !== "none" && es(g)
|
|
6617
6617
|
] }) });
|
|
6618
6618
|
return /* @__PURE__ */ m(xe, { children: [
|
|
6619
6619
|
/* @__PURE__ */ i(Qu, { dark: a, title: n ? qe : "", subline: n ? zs : "", onOptions: () => I(!0), optionsActive: V }),
|
|
@@ -6663,8 +6663,8 @@ export {
|
|
|
6663
6663
|
Ru as MiniPlayer,
|
|
6664
6664
|
mu as MuteButton,
|
|
6665
6665
|
ju as NO_SEEK,
|
|
6666
|
-
|
|
6667
|
-
|
|
6666
|
+
gu as PAUSE_D,
|
|
6667
|
+
Mu as PLAY_D,
|
|
6668
6668
|
Iu as PUB_SIDE,
|
|
6669
6669
|
bd as PanelSeek,
|
|
6670
6670
|
rc as PlayerApiProvider,
|
|
@@ -6707,7 +6707,7 @@ export {
|
|
|
6707
6707
|
Gt as usePlayerApi,
|
|
6708
6708
|
la as useSeparatedTrack,
|
|
6709
6709
|
Fc as useSummaryIn,
|
|
6710
|
-
|
|
6710
|
+
gc as useTranscript,
|
|
6711
6711
|
ku as useTxPlayer,
|
|
6712
6712
|
bu as useTxVoice,
|
|
6713
6713
|
Sc as useViewportTranslation,
|