@vocalstack/player 0.1.0-alpha.17 → 0.1.0-alpha.19
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 +511 -511
- 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 da = Object.defineProperty;
|
|
2
2
|
var Ma = (t, e, n) => e in t ? da(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
|
-
var
|
|
4
|
-
import { jsx as i, jsxs as
|
|
5
|
-
import { useState as I, useRef as v, useEffect as _, useLayoutEffect as Qt, createContext as ti, useMemo as Ie, useContext as
|
|
3
|
+
var ge = (t, e, n) => Ma(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
|
+
import { jsx as i, jsxs as h, Fragment as _e } from "react/jsx-runtime";
|
|
5
|
+
import { useState as I, useRef as v, useEffect as _, useLayoutEffect as Qt, createContext as ti, useMemo as Ie, useContext as ga, useCallback as Xe, Fragment as ha, forwardRef as fa, useImperativeHandle as Na } from "react";
|
|
6
6
|
import { createPortal as pa } from "react-dom";
|
|
7
7
|
import { VocalStackError as ni, VocalStack as si } from "@vocalstack/js-sdk";
|
|
8
8
|
const ri = "https://vocalstack.com", ma = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzU1YWJlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", ya = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDVCOEY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzI0NUI4RjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZWM2MzRkIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", Ta = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojNTVhYmU1O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2Y3ODQ3MiIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==", wa = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojMjQ1YjhmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDViOGY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==";
|
|
@@ -81,7 +81,7 @@ function at({ size: t = 15, color: e = "currentColor", track: n = "rgba(127,127,
|
|
|
81
81
|
);
|
|
82
82
|
}
|
|
83
83
|
function va({ size: t = 12 }) {
|
|
84
|
-
return /* @__PURE__ */
|
|
84
|
+
return /* @__PURE__ */ h("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", "aria-hidden": "true", children: [
|
|
85
85
|
/* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
|
|
86
86
|
/* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
|
|
87
87
|
] });
|
|
@@ -104,19 +104,19 @@ function cs({ value: t, onChange: e, options: n, size: s, bordered: r = !0, fill
|
|
|
104
104
|
return Qt(() => {
|
|
105
105
|
const u = o.current;
|
|
106
106
|
if (!u) return;
|
|
107
|
-
const
|
|
108
|
-
|
|
107
|
+
const g = u.querySelectorAll(".vs-switch__opt")[d];
|
|
108
|
+
g && c({ left: g.offsetLeft, width: g.offsetWidth });
|
|
109
109
|
}, [d, n.length]), _(() => {
|
|
110
110
|
const u = o.current;
|
|
111
111
|
if (!u || typeof ResizeObserver > "u") return;
|
|
112
|
-
const
|
|
112
|
+
const g = new ResizeObserver(() => {
|
|
113
113
|
const M = u.querySelectorAll(".vs-switch__opt")[d];
|
|
114
114
|
M && c({ left: M.offsetLeft, width: M.offsetWidth });
|
|
115
115
|
});
|
|
116
|
-
return
|
|
117
|
-
}, [d]), /* @__PURE__ */
|
|
116
|
+
return g.observe(u), () => g.disconnect();
|
|
117
|
+
}, [d]), /* @__PURE__ */ h("div", { ref: o, role: "tablist", className: `vs-switch${s === "sm" ? " vs-switch--sm" : ""}${r ? "" : " vs-switch--borderless"}${a ? " vs-switch--fill" : ""}`, children: [
|
|
118
118
|
l && /* @__PURE__ */ i("span", { className: "vs-switch__thumb", style: { left: l.left, width: l.width }, "aria-hidden": "true" }),
|
|
119
|
-
n.map((u) => /* @__PURE__ */
|
|
119
|
+
n.map((u) => /* @__PURE__ */ h("button", { type: "button", role: "tab", "aria-selected": u.value === t, className: "vs-switch__opt", onClick: () => e(u.value), children: [
|
|
120
120
|
u.icon,
|
|
121
121
|
u.label
|
|
122
122
|
] }, u.value))
|
|
@@ -127,7 +127,7 @@ function ja({ children: t, onClick: e, label: n, size: s, variant: r, bordered:
|
|
|
127
127
|
}
|
|
128
128
|
function vn({ flag: t, code: e, label: n, onClick: s, variant: r, block: a, bordered: o = !0, size: l, style: c }) {
|
|
129
129
|
const d = a && !!e;
|
|
130
|
-
return /* @__PURE__ */
|
|
130
|
+
return /* @__PURE__ */ h("button", { type: "button", className: `vs-lang-chip${r ? ` vs-lang-chip--${r}` : ""}${a ? " vs-lang-chip--block" : ""}${a && !d ? " vs-lang-chip--bare" : ""}${o ? "" : " vs-lang-chip--borderless"}${l === "sm" ? " vs-lang-chip--sm" : ""}`, onClick: s, "aria-label": n ? e ? `${n} (${e})` : n : e, style: c, children: [
|
|
131
131
|
t ? /* @__PURE__ */ i("span", { className: "vs-lang-chip__flag", children: t }) : null,
|
|
132
132
|
d ? /* @__PURE__ */ i("span", { className: "vs-lang-chip__name", children: n ?? e }) : a ? null : /* @__PURE__ */ i("span", { className: "vs-lang-chip__code", children: e }),
|
|
133
133
|
/* @__PURE__ */ i(oe, { d: J.chevronDown, size: 13, className: "vs-lang-chip__chevron", style: { color: r === "primary" ? "currentColor" : "var(--vs-text-muted)" } })
|
|
@@ -140,7 +140,7 @@ function za({ value: t, label: e = "Copy", onCopied: n }) {
|
|
|
140
140
|
} catch {
|
|
141
141
|
}
|
|
142
142
|
};
|
|
143
|
-
return /* @__PURE__ */
|
|
143
|
+
return /* @__PURE__ */ h(
|
|
144
144
|
"button",
|
|
145
145
|
{
|
|
146
146
|
type: "button",
|
|
@@ -189,23 +189,23 @@ function us({ children: t, ms: e = 220 }) {
|
|
|
189
189
|
clearTimeout(c), a(Math.min(M, d())), M > d() && (c = setTimeout(() => a(M), e));
|
|
190
190
|
};
|
|
191
191
|
if (u(), typeof ResizeObserver > "u") return () => clearTimeout(c);
|
|
192
|
-
const
|
|
193
|
-
return
|
|
194
|
-
|
|
192
|
+
const g = new ResizeObserver(u);
|
|
193
|
+
return g.observe(o), () => {
|
|
194
|
+
g.disconnect(), clearTimeout(c);
|
|
195
195
|
};
|
|
196
196
|
}, [e]), /* @__PURE__ */ i("div", { ref: n, style: { height: r ?? void 0, overflow: "clip", transition: r == null ? void 0 : `height ${e}ms cubic-bezier(.32,.72,0,1)` }, children: /* @__PURE__ */ i("div", { ref: s, children: t }) });
|
|
197
197
|
}
|
|
198
198
|
function $t({ open: t, onClose: e, title: n, titleNode: s, note: r, doneLabel: a = "Done", children: o, drawer: l = !1, header: c, kind: d, sticky: u = !1 }) {
|
|
199
|
-
const
|
|
200
|
-
return Ia(
|
|
199
|
+
const g = v(null);
|
|
200
|
+
return Ia(g, t), _(() => {
|
|
201
201
|
if (!t) return;
|
|
202
202
|
const M = (p) => {
|
|
203
203
|
p.key === "Escape" && e();
|
|
204
204
|
};
|
|
205
205
|
return window.addEventListener("keydown", M), () => window.removeEventListener("keydown", M);
|
|
206
|
-
}, [t, e]), t ? /* @__PURE__ */ i("div", { ref:
|
|
206
|
+
}, [t, e]), t ? /* @__PURE__ */ i("div", { ref: g, className: `vs-sheet-scrim${l ? " drawer" : ""}${u ? " vs-sheet-scrim--sticky" : ""}`, onClick: u ? void 0 : e, children: /* @__PURE__ */ h("div", { className: `vs-sheet${d ? ` vs-sheet--${d}` : ""}`, role: "dialog", "aria-modal": "true", "aria-label": n, onClick: (M) => M.stopPropagation(), children: [
|
|
207
207
|
/* @__PURE__ */ i("div", { className: "vs-sheet__grip" }),
|
|
208
|
-
/* @__PURE__ */
|
|
208
|
+
/* @__PURE__ */ h("div", { className: "vs-sheet__head", children: [
|
|
209
209
|
s ?? /* @__PURE__ */ i("span", { className: "vs-sheet__title", children: n }),
|
|
210
210
|
/* @__PURE__ */ i("button", { type: "button", className: "vs-sheet__done", onClick: e, children: a })
|
|
211
211
|
] }),
|
|
@@ -288,17 +288,17 @@ function Ea(t, e, n) {
|
|
|
288
288
|
}
|
|
289
289
|
class Ya {
|
|
290
290
|
constructor(e = {}) {
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
291
|
+
ge(this, "entries", /* @__PURE__ */ new Map());
|
|
292
|
+
ge(this, "wanted", []);
|
|
293
|
+
ge(this, "used", []);
|
|
294
|
+
ge(this, "fetcher");
|
|
295
|
+
ge(this, "concurrency");
|
|
296
|
+
ge(this, "keep");
|
|
297
|
+
ge(this, "retryMs");
|
|
298
|
+
ge(this, "now");
|
|
299
|
+
ge(this, "toUrl");
|
|
300
|
+
ge(this, "revoke");
|
|
301
|
+
ge(this, "onReady", () => {
|
|
302
302
|
});
|
|
303
303
|
this.fetcher = e.fetcher ?? (typeof fetch == "function" ? (n, s) => fetch(n, { signal: s }) : 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) => {
|
|
304
304
|
try {
|
|
@@ -392,50 +392,50 @@ class ui extends Error {
|
|
|
392
392
|
}
|
|
393
393
|
const nt = class nt {
|
|
394
394
|
constructor() {
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
395
|
+
ge(this, "el", null);
|
|
396
|
+
ge(this, "clips", /* @__PURE__ */ new Map());
|
|
397
|
+
ge(this, "order", []);
|
|
398
|
+
ge(this, "current", null);
|
|
399
|
+
ge(this, "currentPart", 0);
|
|
400
|
+
ge(this, "partBase", 0);
|
|
401
|
+
ge(this, "within", null);
|
|
402
|
+
ge(this, "playing", !1);
|
|
403
|
+
ge(this, "muted", !1);
|
|
404
|
+
ge(this, "rate", 1);
|
|
405
|
+
ge(this, "volume", 1);
|
|
406
|
+
ge(this, "finite", !1);
|
|
407
|
+
ge(this, "onSentence", () => {
|
|
408
408
|
});
|
|
409
|
-
|
|
409
|
+
ge(this, "onWaiting", () => {
|
|
410
410
|
});
|
|
411
|
-
|
|
411
|
+
ge(this, "onStarting", () => {
|
|
412
412
|
});
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
413
|
+
ge(this, "speakable", () => !0);
|
|
414
|
+
ge(this, "coming", () => !1);
|
|
415
|
+
ge(this, "gapBefore", () => 0);
|
|
416
|
+
ge(this, "flow", !1);
|
|
417
|
+
ge(this, "silentSpan", () => null);
|
|
418
|
+
ge(this, "lastDone", null);
|
|
419
|
+
ge(this, "rested", !1);
|
|
420
|
+
ge(this, "rest", null);
|
|
421
|
+
ge(this, "sequence", []);
|
|
422
|
+
ge(this, "seqAt", /* @__PURE__ */ new Map());
|
|
423
|
+
ge(this, "spoken", /* @__PURE__ */ new Set());
|
|
424
|
+
ge(this, "lastRead", null);
|
|
425
|
+
ge(this, "started", !1);
|
|
426
|
+
ge(this, "awaiting", null);
|
|
427
|
+
ge(this, "waitTimer", null);
|
|
428
|
+
ge(this, "onError", () => {
|
|
429
429
|
});
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
430
|
+
ge(this, "floor", 0);
|
|
431
|
+
ge(this, "loading", null);
|
|
432
|
+
ge(this, "readAhead", 0);
|
|
433
|
+
ge(this, "readAheadS", 0);
|
|
434
|
+
ge(this, "prefetch", new Ya());
|
|
435
|
+
ge(this, "warmed", /* @__PURE__ */ new Set());
|
|
436
|
+
ge(this, "startingSince", /* @__PURE__ */ new Map());
|
|
437
|
+
ge(this, "retries", /* @__PURE__ */ new Map());
|
|
438
|
+
ge(this, "retryTimer", null);
|
|
439
439
|
}
|
|
440
440
|
setSequence(e) {
|
|
441
441
|
e.length === this.sequence.length && e.every((n, s) => this.sequence[s] === n) || (this.sequence = e, this.seqAt = new Map(e.map((n, s) => [n, s])), this.order.sort((n, s) => this.rank(n) - this.rank(s)));
|
|
@@ -695,16 +695,16 @@ const nt = class nt {
|
|
|
695
695
|
let o = 0;
|
|
696
696
|
if (a)
|
|
697
697
|
if (this.within = null, s.total > 1) {
|
|
698
|
-
const c = Array.from({ length: s.total }, (u,
|
|
698
|
+
const c = Array.from({ length: s.total }, (u, g) => {
|
|
699
699
|
var M;
|
|
700
|
-
return ((M = s.got.get(
|
|
701
|
-
}), d = c.reduce((u,
|
|
700
|
+
return ((M = s.got.get(g)) == null ? void 0 : M.durationS) ?? 0;
|
|
701
|
+
}), d = c.reduce((u, g) => u + g, 0);
|
|
702
702
|
if (d > 0 && c.every((u) => u > 0)) {
|
|
703
703
|
const u = a.frac * d;
|
|
704
|
-
let
|
|
705
|
-
for (;
|
|
706
|
-
if (o = -(u - M),
|
|
707
|
-
this.partBase = M, this.startPartAt(e,
|
|
704
|
+
let g = 0, M = 0;
|
|
705
|
+
for (; g < c.length - 1 && M + c[g] <= u; ) M += c[g++];
|
|
706
|
+
if (o = -(u - M), g !== n) {
|
|
707
|
+
this.partBase = M, this.startPartAt(e, g, u - M);
|
|
708
708
|
return;
|
|
709
709
|
}
|
|
710
710
|
}
|
|
@@ -737,9 +737,9 @@ const nt = class nt {
|
|
|
737
737
|
if (this.rank(c) <= l || !this.speakable(c)) continue;
|
|
738
738
|
const d = this.clips.get(c);
|
|
739
739
|
if (d)
|
|
740
|
-
for (const u of [...d.got.keys()].sort((
|
|
741
|
-
const
|
|
742
|
-
s.push(
|
|
740
|
+
for (const u of [...d.got.keys()].sort((g, M) => g - M)) {
|
|
741
|
+
const g = d.got.get(u);
|
|
742
|
+
s.push(g), r += g.durationS || 0;
|
|
743
743
|
}
|
|
744
744
|
}
|
|
745
745
|
return s;
|
|
@@ -868,7 +868,7 @@ const nt = class nt {
|
|
|
868
868
|
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;
|
|
869
869
|
}
|
|
870
870
|
};
|
|
871
|
-
|
|
871
|
+
ge(nt, "WAIT_MS", 15e3), ge(nt, "START_WAIT_MS", 4e3), ge(nt, "COMING_MS", 12e4), ge(nt, "SKEW_LINES", 3), ge(nt, "RETRIES", 4), ge(nt, "RETRY_MS", 1200), ge(nt, "STARTING_MS", 3e5);
|
|
872
872
|
let Ms = nt;
|
|
873
873
|
function di(t, e) {
|
|
874
874
|
return e == null ? t.find((n) => !n.voiceKey) ?? null : t.find((n) => n.voiceKey === e) ?? t.find((n) => !n.voiceKey && n.voice === e) ?? null;
|
|
@@ -880,18 +880,18 @@ function _a(t, e, n, s = {}, r) {
|
|
|
880
880
|
const o = Oa(s), l = o ? `&${o}` : "", c = t.voiceKey ? `&voice=${encodeURIComponent(t.voiceKey)}` : "";
|
|
881
881
|
return a.flatMap((d) => {
|
|
882
882
|
var M, p;
|
|
883
|
-
const u = (M = t.clipRev) == null ? void 0 : M[String(d)],
|
|
884
|
-
return Array.from({ length:
|
|
883
|
+
const u = (M = t.clipRev) == null ? void 0 : M[String(d)], g = Math.max(1, ((p = t.clipParts) == null ? void 0 : p[String(d)]) ?? 1);
|
|
884
|
+
return Array.from({ length: g }, (N, w) => {
|
|
885
885
|
var k;
|
|
886
886
|
return {
|
|
887
887
|
sentenceId: d,
|
|
888
888
|
lang: t.lang,
|
|
889
889
|
src: `${n}/v1/recordings/${e}/voice/${d}?lang=${encodeURIComponent(t.lang)}${c}&format=${On()}${w > 0 ? `&part=${w}` : ""}${u ? `&v=${encodeURIComponent(u)}` : ""}${l}`,
|
|
890
|
-
durationS:
|
|
890
|
+
durationS: g === 1 ? ((k = t.clipDur) == null ? void 0 : k[String(d)]) ?? 0 : 0,
|
|
891
891
|
voice: t.voice ?? null,
|
|
892
892
|
cloned: !1,
|
|
893
893
|
part: w,
|
|
894
|
-
parts:
|
|
894
|
+
parts: g
|
|
895
895
|
};
|
|
896
896
|
});
|
|
897
897
|
});
|
|
@@ -914,7 +914,7 @@ function Ua(t, e, n) {
|
|
|
914
914
|
if (a += s[l], o < a) return l;
|
|
915
915
|
return t.length - 1;
|
|
916
916
|
}
|
|
917
|
-
const
|
|
917
|
+
const gs = "vs.recentLangs", hs = /* @__PURE__ */ new Set();
|
|
918
918
|
function fs(t, e) {
|
|
919
919
|
try {
|
|
920
920
|
const n = localStorage.getItem(t);
|
|
@@ -923,30 +923,30 @@ function fs(t, e) {
|
|
|
923
923
|
return e;
|
|
924
924
|
}
|
|
925
925
|
}
|
|
926
|
-
function
|
|
926
|
+
function gi(t, e) {
|
|
927
927
|
try {
|
|
928
928
|
e == null ? localStorage.removeItem(t) : localStorage.setItem(t, JSON.stringify(e));
|
|
929
929
|
} catch {
|
|
930
930
|
}
|
|
931
|
-
for (const n of
|
|
931
|
+
for (const n of hs) n();
|
|
932
932
|
}
|
|
933
933
|
function js(t, e) {
|
|
934
934
|
const [n, s] = I(() => fs(t, e));
|
|
935
935
|
return _(() => {
|
|
936
936
|
const r = () => s(fs(t, e));
|
|
937
|
-
return
|
|
938
|
-
|
|
937
|
+
return hs.add(r), window.addEventListener("storage", r), () => {
|
|
938
|
+
hs.delete(r), window.removeEventListener("storage", r);
|
|
939
939
|
};
|
|
940
940
|
}, [t]), [n, (r) => {
|
|
941
|
-
s(r),
|
|
941
|
+
s(r), gi(t, r);
|
|
942
942
|
}];
|
|
943
943
|
}
|
|
944
944
|
function _r(t) {
|
|
945
|
-
const e = fs(
|
|
946
|
-
|
|
945
|
+
const e = fs(gs, []);
|
|
946
|
+
gi(gs, Array.isArray(e) ? e.filter((n) => n !== t) : []);
|
|
947
947
|
}
|
|
948
|
-
function
|
|
949
|
-
const [t, e] = js(
|
|
948
|
+
function hi() {
|
|
949
|
+
const [t, e] = js(gs, []), n = Array.isArray(t) ? t : [];
|
|
950
950
|
return [n, (s) => {
|
|
951
951
|
s && e([s, ...n.filter((r) => r !== s)].slice(0, 3));
|
|
952
952
|
}];
|
|
@@ -965,7 +965,7 @@ function Qa(t) {
|
|
|
965
965
|
const [e, n] = js(t === "ga" ? "vs.colW.ga" : "vs.colW", null);
|
|
966
966
|
return [typeof e == "number" && e > 0 ? e : t === "ga" ? 560 : Pa, n];
|
|
967
967
|
}
|
|
968
|
-
function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPlaceholder: a = "Search languages", none: o, pinned: l = [], recent: c = [], requireVoice: d, keepOpen: u, busy:
|
|
968
|
+
function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPlaceholder: a = "Search languages", none: o, pinned: l = [], recent: c = [], requireVoice: d, keepOpen: u, busy: g }) {
|
|
969
969
|
const [M, p] = I(""), [N, w] = I(!1), [k, m] = I(null);
|
|
970
970
|
_(() => {
|
|
971
971
|
t && (p(""), w(!1), m(null));
|
|
@@ -981,7 +981,7 @@ function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPl
|
|
|
981
981
|
[c, f, M]
|
|
982
982
|
), D = Ie(() => O.length ? f.filter((S) => !O.some(($) => $.code === S.code)) : f, [f, O]), b = N || M ? D : D.slice(0, 12), W = D.length - b.length, A = (S, $ = !1) => {
|
|
983
983
|
const L = !!d && !S.voice;
|
|
984
|
-
return /* @__PURE__ */
|
|
984
|
+
return /* @__PURE__ */ h(
|
|
985
985
|
"button",
|
|
986
986
|
{
|
|
987
987
|
type: "button",
|
|
@@ -996,7 +996,7 @@ function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPl
|
|
|
996
996
|
},
|
|
997
997
|
children: [
|
|
998
998
|
/* @__PURE__ */ i("span", { className: "vs-picker__flag", children: S.flag }),
|
|
999
|
-
/* @__PURE__ */
|
|
999
|
+
/* @__PURE__ */ h("span", { style: { flex: 1, minWidth: 0 }, children: [
|
|
1000
1000
|
/* @__PURE__ */ i("div", { className: "vs-picker__label", children: S.label }),
|
|
1001
1001
|
/* @__PURE__ */ i("div", { className: "vs-picker__native", children: S.native })
|
|
1002
1002
|
] }),
|
|
@@ -1006,20 +1006,20 @@ function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPl
|
|
|
1006
1006
|
(z.key === "Enter" || z.key === " ") && (z.preventDefault(), z.stopPropagation(), _r(S.code));
|
|
1007
1007
|
}, children: /* @__PURE__ */ i(oe, { d: J.close, size: 16 }) }) }),
|
|
1008
1008
|
/* @__PURE__ */ i("span", { className: `vs-picker__slot${L ? " vs-picker__slot--wide" : ""}`, title: S.voice ? "Voice available" : L ? "No voice speaks this language yet" : void 0, children: L ? k === S.code && /* @__PURE__ */ i("span", { className: "vs-picker__off", children: "UNAVAILABLE" }) : S.voice && /* @__PURE__ */ i(oe, { d: J.headphones, size: 16 }) }),
|
|
1009
|
-
/* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === S.code && (
|
|
1009
|
+
/* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === S.code && (g === S.code ? /* @__PURE__ */ i(at, { size: 15, color: "var(--vs-link-hover)", track: "var(--vs-border)" }) : /* @__PURE__ */ i(oe, { d: J.check, size: 16, sw: 2.2 })) })
|
|
1010
1010
|
]
|
|
1011
1011
|
},
|
|
1012
1012
|
S.code
|
|
1013
1013
|
);
|
|
1014
|
-
}, te = /* @__PURE__ */
|
|
1014
|
+
}, te = /* @__PURE__ */ h("div", { className: "vs-picker__search", children: [
|
|
1015
1015
|
/* @__PURE__ */ i(oe, { d: J.search, size: 16, sw: 1.7, style: { color: "var(--vs-text-muted)" } }),
|
|
1016
1016
|
/* @__PURE__ */ i("input", { value: M, onChange: (S) => p(S.target.value), placeholder: a, "aria-label": a })
|
|
1017
|
-
] }), j = /* @__PURE__ */
|
|
1018
|
-
o && !M && /* @__PURE__ */
|
|
1017
|
+
] }), j = /* @__PURE__ */ h("div", { className: "vs-picker__list", children: [
|
|
1018
|
+
o && !M && /* @__PURE__ */ h("button", { type: "button", className: "vs-picker__row", "data-vs-original": "", "aria-selected": n === null, onClick: () => {
|
|
1019
1019
|
s(null), u || e();
|
|
1020
1020
|
}, children: [
|
|
1021
1021
|
/* @__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)" } }) }),
|
|
1022
|
-
/* @__PURE__ */
|
|
1022
|
+
/* @__PURE__ */ h("span", { style: { flex: 1, minWidth: 0 }, children: [
|
|
1023
1023
|
/* @__PURE__ */ i("div", { className: "vs-picker__label", children: o }),
|
|
1024
1024
|
/* @__PURE__ */ i("div", { className: "vs-picker__native", children: "As spoken · no translation" })
|
|
1025
1025
|
] }),
|
|
@@ -1027,18 +1027,18 @@ function zs({ open: t, onClose: e, value: n, onSelect: s, languages: r, searchPl
|
|
|
1027
1027
|
/* @__PURE__ */ i("span", { className: "vs-picker__slot" }),
|
|
1028
1028
|
/* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === null && /* @__PURE__ */ i(oe, { d: J.check, size: 16, sw: 2.2 }) })
|
|
1029
1029
|
] }),
|
|
1030
|
-
O.length > 0 && /* @__PURE__ */
|
|
1030
|
+
O.length > 0 && /* @__PURE__ */ h(_e, { children: [
|
|
1031
1031
|
/* @__PURE__ */ i("div", { className: "vs-picker__head", children: "RECENT" }),
|
|
1032
1032
|
O.map((S) => A(S, !0)),
|
|
1033
1033
|
/* @__PURE__ */ i("div", { className: "vs-picker__rule" })
|
|
1034
1034
|
] }),
|
|
1035
1035
|
b.map((S) => A(S)),
|
|
1036
|
-
W > 0 && /* @__PURE__ */
|
|
1036
|
+
W > 0 && /* @__PURE__ */ h("button", { type: "button", className: "vs-picker__more", style: { background: "none", border: 0, cursor: "pointer", width: "100%", textAlign: "left" }, onClick: () => w(!0), children: [
|
|
1037
1037
|
"+ ",
|
|
1038
1038
|
W,
|
|
1039
1039
|
" MORE LANGUAGES"
|
|
1040
1040
|
] }),
|
|
1041
|
-
f.length === 0 && /* @__PURE__ */
|
|
1041
|
+
f.length === 0 && /* @__PURE__ */ h("div", { className: "vs-picker__more", children: [
|
|
1042
1042
|
"No match for “",
|
|
1043
1043
|
M,
|
|
1044
1044
|
"”"
|
|
@@ -1117,7 +1117,7 @@ function es(t) {
|
|
|
1117
1117
|
t && (t.pause(), t.removeAttribute("src"), t.load());
|
|
1118
1118
|
}
|
|
1119
1119
|
function Ni(t, e) {
|
|
1120
|
-
const [n, s] = I("off"), [r, a] = I([]), [o, l] = I(!1), c = v(null), d = v([null, null]), u = v([NaN, NaN]),
|
|
1120
|
+
const [n, s] = I("off"), [r, a] = I([]), [o, l] = I(!1), c = v(null), d = v([null, null]), u = v([NaN, NaN]), g = v(0);
|
|
1121
1121
|
return _(() => {
|
|
1122
1122
|
if (a([]), l(!1), !t) {
|
|
1123
1123
|
s("off");
|
|
@@ -1163,12 +1163,12 @@ function Ni(t, e) {
|
|
|
1163
1163
|
M(), l(!1);
|
|
1164
1164
|
return;
|
|
1165
1165
|
}
|
|
1166
|
-
const N = eo(r, p, u.current,
|
|
1166
|
+
const N = eo(r, p, u.current, g.current);
|
|
1167
1167
|
for (const [m, f] of N.load) {
|
|
1168
1168
|
let O = d.current[m];
|
|
1169
1169
|
O || (O = new Audio(), O.preload = "auto", d.current[m] = O), O.pause(), O.src = r[f].url, u.current[m] = r[f].startS;
|
|
1170
1170
|
}
|
|
1171
|
-
|
|
1171
|
+
g.current = N.play;
|
|
1172
1172
|
const w = d.current[N.play], k = d.current[1 - N.play];
|
|
1173
1173
|
k && !k.paused && k.pause(), Ur(w, { ...e, t: e.t - r[p].startS }), l(!e.playing || w.readyState >= 3);
|
|
1174
1174
|
}, [n, r, e.t, e.playing, e.muted]), { state: n, on: o, untilS: n === "ready" ? 1 / 0 : r.length ? r[r.length - 1].endS : 0 };
|
|
@@ -1192,7 +1192,7 @@ function io(t, e, n) {
|
|
|
1192
1192
|
const o = Math.max(1, ...a.map((c) => c.parts));
|
|
1193
1193
|
let l = Math.max(0, n - r.start);
|
|
1194
1194
|
for (let c = 0; c < o; c++) {
|
|
1195
|
-
const d = a.find((
|
|
1195
|
+
const d = a.find((g) => g.part === c);
|
|
1196
1196
|
if (!d) return { kind: "missing", sid: r.sid };
|
|
1197
1197
|
const u = d.durationS && d.durationS > 0 ? d.durationS : 1 / 0;
|
|
1198
1198
|
if (l < u) return { kind: "play", sid: r.sid, src: d.src, offset: l };
|
|
@@ -1238,11 +1238,11 @@ function lo(t) {
|
|
|
1238
1238
|
}
|
|
1239
1239
|
const c = io(t.lines, e, t.t), d = c.kind === "missing" ? c.sid : null, u = c.kind === "none" ? null : c.sid;
|
|
1240
1240
|
a((N) => N.missing === d && N.sid === u ? N : { missing: d, sid: u });
|
|
1241
|
-
const
|
|
1242
|
-
for (const N of
|
|
1241
|
+
const g = new Set(oo(t.lines, e, t.t));
|
|
1242
|
+
for (const N of g) o(N);
|
|
1243
1243
|
const M = s.current;
|
|
1244
|
-
M &&
|
|
1245
|
-
for (const [N, w] of n.current) !
|
|
1244
|
+
M && g.add(M.src);
|
|
1245
|
+
for (const [N, w] of n.current) !g.has(N) && (!M || M.el !== w) && (w.pause(), n.current.delete(N));
|
|
1246
1246
|
if (!t.playing) {
|
|
1247
1247
|
M == null || M.el.pause();
|
|
1248
1248
|
return;
|
|
@@ -1346,7 +1346,7 @@ function Pt() {
|
|
|
1346
1346
|
spans: []
|
|
1347
1347
|
};
|
|
1348
1348
|
}
|
|
1349
|
-
function
|
|
1349
|
+
function go(t, e) {
|
|
1350
1350
|
for (const s of t.spans) {
|
|
1351
1351
|
const r = s.mediaEnd ?? 1 / 0;
|
|
1352
1352
|
if (e < r || s.mediaEnd == null) return s.wallStart + Math.max(0, e - s.mediaStart);
|
|
@@ -1423,7 +1423,7 @@ function Pr(t, e) {
|
|
|
1423
1423
|
const n = e ?? {};
|
|
1424
1424
|
return !t || !Object.keys(t).length ? n : Object.keys(n).length ? { ...t, ...n } : t;
|
|
1425
1425
|
}
|
|
1426
|
-
function
|
|
1426
|
+
function ho(t, e) {
|
|
1427
1427
|
const n = e.tail;
|
|
1428
1428
|
if (!n || !Array.isArray(n.words) || n.replaced !== t.length || n.words.length !== t.length) return !1;
|
|
1429
1429
|
let s = !1;
|
|
@@ -1481,7 +1481,7 @@ function fo(t, e) {
|
|
|
1481
1481
|
}
|
|
1482
1482
|
case "transcript.amended": {
|
|
1483
1483
|
const s = t.segments.get(e.seq);
|
|
1484
|
-
if (s && s.corrected &&
|
|
1484
|
+
if (s && s.corrected && ho(s.words, e)) {
|
|
1485
1485
|
s.text = e.text, s.words = Jt(e.seq, e.tail.words);
|
|
1486
1486
|
break;
|
|
1487
1487
|
}
|
|
@@ -1495,7 +1495,7 @@ function fo(t, e) {
|
|
|
1495
1495
|
if ((n = e.scriptWords) != null && n.length) {
|
|
1496
1496
|
const a = (c) => c.toLowerCase().replace(/[^\p{L}\p{N}]/gu, ""), o = (e.fixes ?? []).filter((c) => String(c.kind ?? "").endsWith("script") && String(c.orig ?? "").trim()), l = (c) => {
|
|
1497
1497
|
var d, u;
|
|
1498
|
-
return c.recognized ?? ((u = (d = o.find((
|
|
1498
|
+
return c.recognized ?? ((u = (d = o.find((g) => String(g.repl ?? "").split(/\s+/).map(a).includes(a(c.text)))) == null ? void 0 : d.orig) == null ? void 0 : u.trim());
|
|
1499
1499
|
};
|
|
1500
1500
|
s.words = s.words.map((c, d) => {
|
|
1501
1501
|
if (!e.scriptWords.includes(d)) return c;
|
|
@@ -1529,7 +1529,7 @@ function fo(t, e) {
|
|
|
1529
1529
|
seqs: s.seqs,
|
|
1530
1530
|
speaker: s.speaker,
|
|
1531
1531
|
start: s.start,
|
|
1532
|
-
wallStart:
|
|
1532
|
+
wallStart: go(t, s.start),
|
|
1533
1533
|
text: a ? r.text : s.text,
|
|
1534
1534
|
status: s.status === "open" ? "open" : "closed",
|
|
1535
1535
|
settled: !!s.settled,
|
|
@@ -1726,7 +1726,7 @@ function kt(t) {
|
|
|
1726
1726
|
}
|
|
1727
1727
|
const Ti = "https://api.vocalstack.com", bs = ti(null);
|
|
1728
1728
|
function At() {
|
|
1729
|
-
const t =
|
|
1729
|
+
const t = ga(bs);
|
|
1730
1730
|
if (!t) throw new Error("VocalStack player hooks must be used inside <VocalStackPlayer> or <PlayerApiProvider>");
|
|
1731
1731
|
return t;
|
|
1732
1732
|
}
|
|
@@ -1787,11 +1787,11 @@ function Ao(t, e) {
|
|
|
1787
1787
|
const [n, s] = I(null), [r, a] = I(!1), [o, l] = I(null), [c, d] = I(0);
|
|
1788
1788
|
return _(() => {
|
|
1789
1789
|
let u = !0;
|
|
1790
|
-
return So(t, e).then((
|
|
1791
|
-
u && (s(
|
|
1792
|
-
}).catch((
|
|
1790
|
+
return So(t, e).then((g) => {
|
|
1791
|
+
u && (s(g), a(!1), l(null));
|
|
1792
|
+
}).catch((g) => {
|
|
1793
1793
|
if (!u) return;
|
|
1794
|
-
const M = kt(
|
|
1794
|
+
const M = kt(g);
|
|
1795
1795
|
M.code === "not_found" || M.status === 404 ? a(!0) : l(M);
|
|
1796
1796
|
}), () => {
|
|
1797
1797
|
u = !1;
|
|
@@ -1854,7 +1854,7 @@ const Yo = (t) => new Promise((e) => setTimeout(e, t)), _o = 2500, Uo = 72;
|
|
|
1854
1854
|
function Ro(t, e) {
|
|
1855
1855
|
const n = At(), s = v(n);
|
|
1856
1856
|
s.current = n;
|
|
1857
|
-
const [r, a] = I(Pt), o = v(Pt()), l = v(null), c = v(e.lang ?? null), [d, u] = I(!1), [
|
|
1857
|
+
const [r, a] = I(Pt), o = v(Pt()), l = v(null), c = v(e.lang ?? null), [d, u] = I(!1), [g, M] = I(null), [p, N] = I(!1), w = Xe(() => {
|
|
1858
1858
|
const $ = o.current;
|
|
1859
1859
|
a({ ...$ });
|
|
1860
1860
|
}, []), k = v(e);
|
|
@@ -1952,7 +1952,7 @@ function Ro(t, e) {
|
|
|
1952
1952
|
}
|
|
1953
1953
|
E && w();
|
|
1954
1954
|
}, [w]), S = Xe(() => M(null), []);
|
|
1955
|
-
return { model: r, connected: d, error:
|
|
1955
|
+
return { model: r, connected: d, error: g, notFound: p, clearError: S, setLanguage: te, mergeTranslations: j, translating: m, translateFailed: O, shownLang: W };
|
|
1956
1956
|
}
|
|
1957
1957
|
const Hr = {
|
|
1958
1958
|
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" },
|
|
@@ -2021,11 +2021,11 @@ async function Ho(t, e, n, s = {}) {
|
|
|
2021
2021
|
var M, p;
|
|
2022
2022
|
const r = await t.client.recordings.export(e, n, { lang: s.lang ?? void 0, ...t.readAs });
|
|
2023
2023
|
if (!r.ok) throw await ji(r);
|
|
2024
|
-
const a = await r.blob(), o = r.headers.get("content-disposition") ?? "", l = (M = /filename\*=UTF-8''([^;]+)/i.exec(o)) == null ? void 0 : M[1], c = (p = /filename="([^"]+)"/i.exec(o)) == null ? void 0 : p[1], d = l ? decodeURIComponent(l) : c ?? `transcript.${n}`, u = URL.createObjectURL(a),
|
|
2025
|
-
|
|
2024
|
+
const a = await r.blob(), o = r.headers.get("content-disposition") ?? "", l = (M = /filename\*=UTF-8''([^;]+)/i.exec(o)) == null ? void 0 : M[1], c = (p = /filename="([^"]+)"/i.exec(o)) == null ? void 0 : p[1], d = l ? decodeURIComponent(l) : c ?? `transcript.${n}`, u = URL.createObjectURL(a), g = document.createElement("a");
|
|
2025
|
+
g.href = u, g.download = d, g.style.display = "none", document.body.appendChild(g), g.click(), g.remove(), window.setTimeout(() => URL.revokeObjectURL(u), 6e4);
|
|
2026
2026
|
}
|
|
2027
2027
|
async function Vo(t, e) {
|
|
2028
|
-
const { recordingId: n, lang: s, voiceKey: r, cred: a } = e, o = async () => (await t.client.recordings.voice(n, s, t.readAs)).filter((
|
|
2028
|
+
const { recordingId: n, lang: s, voiceKey: r, cred: a } = e, o = async () => (await t.client.recordings.voice(n, s, t.readAs)).filter((g) => g.lang === s), l = (u) => di(u, r);
|
|
2029
2029
|
let c = l(await o());
|
|
2030
2030
|
(!c || c.state === "clips" || c.state === "failed") && await e.request();
|
|
2031
2031
|
const d = Date.now() + (e.timeoutMs ?? 10 * 6e4);
|
|
@@ -2087,7 +2087,7 @@ function qo(t, e, n = 0) {
|
|
|
2087
2087
|
const A = o(), te = A ? A.offsetHeight : 0, j = r.clientHeight - te - 36, S = r.scrollHeight - r.clientHeight, $ = j > 0 ? Math.max(30, Math.round(j * (r.clientHeight - te) / r.scrollHeight)) : 0;
|
|
2088
2088
|
return { vis: j, max: S, size: $ };
|
|
2089
2089
|
};
|
|
2090
|
-
let c = -1, d = null, u = !1,
|
|
2090
|
+
let c = -1, d = null, u = !1, g = 0, M = 0;
|
|
2091
2091
|
const p = () => {
|
|
2092
2092
|
const A = o();
|
|
2093
2093
|
if (!A) return;
|
|
@@ -2116,11 +2116,11 @@ function qo(t, e, n = 0) {
|
|
|
2116
2116
|
a.style.right = (f >= 12 ? -(f - 6) : 2) + "px";
|
|
2117
2117
|
const O = () => m(!0), D = (A) => {
|
|
2118
2118
|
const te = l();
|
|
2119
|
-
te.vis - te.size <= 0 || (A.preventDefault(), A.stopPropagation(), a.setPointerCapture(A.pointerId), u = !0,
|
|
2119
|
+
te.vis - te.size <= 0 || (A.preventDefault(), A.stopPropagation(), a.setPointerCapture(A.pointerId), u = !0, g = A.clientY, M = r.scrollTop, a.style.cursor = "grabbing", N());
|
|
2120
2120
|
}, b = (A) => {
|
|
2121
2121
|
if (!u) return;
|
|
2122
2122
|
const te = l();
|
|
2123
|
-
r.scrollTop = M + (A.clientY -
|
|
2123
|
+
r.scrollTop = M + (A.clientY - g) / (te.vis - te.size) * te.max, N();
|
|
2124
2124
|
}, W = () => {
|
|
2125
2125
|
u && (u = !1, a.style.cursor = "grab", N());
|
|
2126
2126
|
};
|
|
@@ -2141,11 +2141,11 @@ function Jo({ error: t, onClose: e }) {
|
|
|
2141
2141
|
return () => clearTimeout(r);
|
|
2142
2142
|
}, [t]), !t) return null;
|
|
2143
2143
|
const s = t.code === "insufficient_credit" || t.code === "quota_exceeded" || t.status === 402;
|
|
2144
|
-
return /* @__PURE__ */
|
|
2144
|
+
return /* @__PURE__ */ h("div", { className: "toast", role: "alert", children: [
|
|
2145
2145
|
/* @__PURE__ */ i(oe, { d: J.warn, size: 16, style: { color: "var(--conf-low)", flex: "none" } }),
|
|
2146
|
-
/* @__PURE__ */
|
|
2146
|
+
/* @__PURE__ */ h("span", { style: { flex: 1 }, children: [
|
|
2147
2147
|
t.message,
|
|
2148
|
-
s && /* @__PURE__ */
|
|
2148
|
+
s && /* @__PURE__ */ h(_e, { children: [
|
|
2149
2149
|
" ",
|
|
2150
2150
|
/* @__PURE__ */ i("a", { href: "https://app.vocalstack.com/billing", target: "_blank", rel: "noopener", className: "dev-link", style: { fontSize: "inherit", fontWeight: 600, whiteSpace: "nowrap" }, children: "Add credit" })
|
|
2151
2151
|
] })
|
|
@@ -2157,16 +2157,16 @@ function Ii({ color: t }) {
|
|
|
2157
2157
|
return /* @__PURE__ */ i("span", { title: "Cloned voice", style: { flex: "none", display: "inline-flex" }, children: /* @__PURE__ */ i(oe, { d: J.voiceClone, size: 13, sw: 1.7, stroke: t }) });
|
|
2158
2158
|
}
|
|
2159
2159
|
function Hc({ chip: t, note: e, scrub: n, mute: s, voice: r, prev: a, play: o, next: l }) {
|
|
2160
|
-
return /* @__PURE__ */
|
|
2161
|
-
/* @__PURE__ */
|
|
2160
|
+
return /* @__PURE__ */ h("div", { className: "vs-tt", children: [
|
|
2161
|
+
/* @__PURE__ */ h("div", { className: "vs-tt__r1", children: [
|
|
2162
2162
|
/* @__PURE__ */ i("div", { className: "vs-tt__chip", children: t }),
|
|
2163
|
-
e ? /* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: e }) : /* @__PURE__ */
|
|
2163
|
+
e ? /* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: e }) : /* @__PURE__ */ h(_e, { children: [
|
|
2164
2164
|
/* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: n }),
|
|
2165
2165
|
/* @__PURE__ */ i("div", { className: "vs-tt__spk", children: s }),
|
|
2166
2166
|
/* @__PURE__ */ i("div", { className: "vs-tt__voice", children: r })
|
|
2167
2167
|
] })
|
|
2168
2168
|
] }),
|
|
2169
|
-
!e && /* @__PURE__ */
|
|
2169
|
+
!e && /* @__PURE__ */ h("div", { className: "vs-tt__r2", children: [
|
|
2170
2170
|
/* @__PURE__ */ i("div", { className: "vs-tt__side", style: { justifyContent: "flex-end" }, children: /* @__PURE__ */ i("div", { className: "vs-tt__prev", children: a }) }),
|
|
2171
2171
|
/* @__PURE__ */ i("div", { className: "vs-tt__play", children: o }),
|
|
2172
2172
|
/* @__PURE__ */ i("div", { className: "vs-tt__side", style: { justifyContent: "flex-start" }, children: /* @__PURE__ */ i("div", { className: "vs-tt__next", children: l }) })
|
|
@@ -2174,9 +2174,9 @@ function Hc({ chip: t, note: e, scrub: n, mute: s, voice: r, prev: a, play: o, n
|
|
|
2174
2174
|
] });
|
|
2175
2175
|
}
|
|
2176
2176
|
function Xo({ index: t, total: e, atLabel: n, durLabel: s, stepLabel: r, onSeek: a, onSeekFrac: o, onScrubStart: l, onScrubEnd: c, frac: d, glideMs: u = 260 }) {
|
|
2177
|
-
const
|
|
2177
|
+
const g = v(null), M = v(!1), [p, N] = I(null), w = Math.max(1, e), k = p ?? d, m = k != null ? Math.min(100, Math.max(0, k * 100)) : t / Math.max(1, w - 1) * 100, f = d != null && u > 0 && p == null ? `width ${u}ms linear, left ${u}ms linear` : "none", O = (b) => {
|
|
2178
2178
|
var j;
|
|
2179
|
-
const W = (j =
|
|
2179
|
+
const W = (j = g.current) == null ? void 0 : j.getBoundingClientRect();
|
|
2180
2180
|
if (!W) return;
|
|
2181
2181
|
const A = Math.min(1, Math.max(0, (b.clientX - W.left) / Math.max(1, W.width)));
|
|
2182
2182
|
if (o) {
|
|
@@ -2188,15 +2188,15 @@ function Xo({ index: t, total: e, atLabel: n, durLabel: s, stepLabel: r, onSeek:
|
|
|
2188
2188
|
}, D = () => {
|
|
2189
2189
|
M.current && (M.current = !1, N(null), c == null || c());
|
|
2190
2190
|
};
|
|
2191
|
-
return /* @__PURE__ */
|
|
2192
|
-
/* @__PURE__ */
|
|
2191
|
+
return /* @__PURE__ */ h("div", { className: "rscrub", children: [
|
|
2192
|
+
/* @__PURE__ */ h(
|
|
2193
2193
|
"div",
|
|
2194
2194
|
{
|
|
2195
|
-
ref:
|
|
2195
|
+
ref: g,
|
|
2196
2196
|
className: "rscrub__track",
|
|
2197
2197
|
onPointerDown: (b) => {
|
|
2198
2198
|
var W;
|
|
2199
|
-
M.current = !0, (W =
|
|
2199
|
+
M.current = !0, (W = g.current) == null || W.setPointerCapture(b.pointerId), l == null || l(), O(b), b.preventDefault();
|
|
2200
2200
|
},
|
|
2201
2201
|
onPointerMove: (b) => {
|
|
2202
2202
|
M.current && O(b);
|
|
@@ -2210,7 +2210,7 @@ function Xo({ index: t, total: e, atLabel: n, durLabel: s, stepLabel: r, onSeek:
|
|
|
2210
2210
|
]
|
|
2211
2211
|
}
|
|
2212
2212
|
),
|
|
2213
|
-
/* @__PURE__ */
|
|
2213
|
+
/* @__PURE__ */ h("div", { className: "rscrub__labels", children: [
|
|
2214
2214
|
/* @__PURE__ */ i("span", { className: "at", children: n }),
|
|
2215
2215
|
/* @__PURE__ */ i("span", { className: "step", children: r }),
|
|
2216
2216
|
/* @__PURE__ */ i("span", { className: "dur", children: s })
|
|
@@ -2226,21 +2226,21 @@ function el(t, e, n) {
|
|
|
2226
2226
|
};
|
|
2227
2227
|
}
|
|
2228
2228
|
function tl({ f: t, desk: e, onOpen: n }) {
|
|
2229
|
-
const s = (r, a, o) => /* @__PURE__ */
|
|
2229
|
+
const s = (r, a, o) => /* @__PURE__ */ h("span", { role: "button", title: "Open this line in Fix", className: "badge badge--fix", style: { marginLeft: o ? "auto" : 0 }, onClick: (l) => {
|
|
2230
2230
|
l.stopPropagation(), n == null || n();
|
|
2231
2231
|
}, children: [
|
|
2232
2232
|
/* @__PURE__ */ i(oe, { d: J.pencilFix, size: e ? 10 : 9, sw: 2 }),
|
|
2233
2233
|
r,
|
|
2234
2234
|
a > 0 && /* @__PURE__ */ i("span", { className: "badge__n", children: a })
|
|
2235
2235
|
] }, r);
|
|
2236
|
-
return /* @__PURE__ */
|
|
2236
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
2237
2237
|
t.script > 0 && s(e ? "SCRIPT FIX" : "SCRIPT", t.script, !0),
|
|
2238
2238
|
t.manual && s(e ? "MANUAL FIX" : "MANUAL", t.manualCount, t.script === 0)
|
|
2239
2239
|
] });
|
|
2240
2240
|
}
|
|
2241
2241
|
function nl({ onOpen: t, alone: e }) {
|
|
2242
2242
|
const [n, s] = I(!1);
|
|
2243
|
-
return /* @__PURE__ */
|
|
2243
|
+
return /* @__PURE__ */ h("span", { role: "button", title: "Fix this line", className: `badge badge--pen${n ? " is-over" : ""}`, style: { marginLeft: e ? "auto" : 0 }, onMouseEnter: () => s(!0), onMouseLeave: () => s(!1), onClick: (r) => {
|
|
2244
2244
|
r.stopPropagation(), t();
|
|
2245
2245
|
}, children: [
|
|
2246
2246
|
/* @__PURE__ */ i(oe, { d: J.pencilFix, size: 11, sw: 2 }),
|
|
@@ -2248,7 +2248,7 @@ function nl({ onOpen: t, alone: e }) {
|
|
|
2248
2248
|
] });
|
|
2249
2249
|
}
|
|
2250
2250
|
function sl(t, e, n, s) {
|
|
2251
|
-
const r = At(), [a, o] = I([]), [l, c] = I(0), d = v(/* @__PURE__ */ new Set()), u = v(!1),
|
|
2251
|
+
const r = At(), [a, o] = I([]), [l, c] = I(0), d = v(/* @__PURE__ */ new Set()), u = v(!1), g = Ie(() => new Map(n.filter((p) => p.sentenceId != null).map((p) => [p.sentenceId, p])), [n]);
|
|
2252
2252
|
_(() => {
|
|
2253
2253
|
d.current = /* @__PURE__ */ new Set();
|
|
2254
2254
|
}, [t, e]);
|
|
@@ -2256,7 +2256,7 @@ function sl(t, e, n, s) {
|
|
|
2256
2256
|
return _(() => {
|
|
2257
2257
|
if (!t || !e || !a.length || u.current) return;
|
|
2258
2258
|
const p = a.filter((N) => {
|
|
2259
|
-
const w =
|
|
2259
|
+
const w = g.get(N);
|
|
2260
2260
|
return !w || !w.text.trim() || !w.settled || w.translations[e] || w.language && w.language.slice(0, 2).toLowerCase() === e.slice(0, 2).toLowerCase() ? !1 : !d.current.has(`${e}:${N}`);
|
|
2261
2261
|
}).slice(0, 40);
|
|
2262
2262
|
if (p.length) {
|
|
@@ -2272,7 +2272,7 @@ function sl(t, e, n, s) {
|
|
|
2272
2272
|
u.current = !1, c((N) => N + 1);
|
|
2273
2273
|
});
|
|
2274
2274
|
}
|
|
2275
|
-
}, [t, e, a, l,
|
|
2275
|
+
}, [t, e, a, l, g, s]), M;
|
|
2276
2276
|
}
|
|
2277
2277
|
function rl(t) {
|
|
2278
2278
|
return t.live || t.auto ? "From this session" : t.cloned ? t.library === !1 ? "This transcription only" : "Saved in Voices" : "";
|
|
@@ -2336,23 +2336,23 @@ function Gr(t, e, n = !0) {
|
|
|
2336
2336
|
a.set(o.key, c.id), r.add(c.id);
|
|
2337
2337
|
continue;
|
|
2338
2338
|
}
|
|
2339
|
-
const d = s.filter((M) => !r.has(M.id)),
|
|
2340
|
-
|
|
2339
|
+
const d = s.filter((M) => !r.has(M.id)), g = (o.sex ? d.filter((M) => M.gender === o.sex) : [])[0] ?? d[0] ?? s[0];
|
|
2340
|
+
g && (a.set(o.key, g.id), r.add(g.id));
|
|
2341
2341
|
}
|
|
2342
2342
|
return a;
|
|
2343
2343
|
}
|
|
2344
2344
|
function ol({ roster: t, selected: e, onSelect: n, noClone: s, building: r, short: a, warn: o, sexOf: l, t: c }) {
|
|
2345
2345
|
const d = t.find((u) => u.key === e) ?? t[0] ?? null;
|
|
2346
2346
|
return d ? /* @__PURE__ */ i("div", { style: { display: "flex", flexWrap: "wrap", gap: 6, padding: "0 2px 9px", margin: "0 -2px" }, children: t.map((u) => {
|
|
2347
|
-
const
|
|
2348
|
-
return /* @__PURE__ */
|
|
2347
|
+
const g = u.key === d.key, M = u.key >= 0 ? (o == null ? void 0 : o(u)) ?? null : null, p = u.key >= 0 && !M && !!(r != null && r(u)), N = u.key >= 0 && !M && !p && s(u), w = u.key >= 0 && !M && !p && !N && !u.hasVoice && !!(a != null && a(u));
|
|
2348
|
+
return /* @__PURE__ */ h(
|
|
2349
2349
|
"button",
|
|
2350
2350
|
{
|
|
2351
2351
|
type: "button",
|
|
2352
|
-
"aria-selected":
|
|
2352
|
+
"aria-selected": g,
|
|
2353
2353
|
onClick: () => n(u.key),
|
|
2354
2354
|
title: u.name,
|
|
2355
|
-
style: { flex: "none", boxSizing: "border-box", display: "flex", alignItems: "center", gap: 7, minHeight: 34, padding: "5px 11px", borderRadius: 9, font: "inherit", background:
|
|
2355
|
+
style: { flex: "none", boxSizing: "border-box", display: "flex", alignItems: "center", gap: 7, minHeight: 34, padding: "5px 11px", borderRadius: 9, font: "inherit", background: g ? "var(--brand-tint)" : "var(--fill-05)", border: `1px solid ${g ? "var(--brand-line)" : "transparent"}`, cursor: "pointer" },
|
|
2356
2356
|
children: [
|
|
2357
2357
|
/* @__PURE__ */ i(
|
|
2358
2358
|
"span",
|
|
@@ -2362,10 +2362,10 @@ function ol({ roster: t, selected: e, onSelect: n, noClone: s, building: r, shor
|
|
|
2362
2362
|
children: u.initial
|
|
2363
2363
|
}
|
|
2364
2364
|
),
|
|
2365
|
-
/* @__PURE__ */ i("span", { style: { fontSize: 12.5, fontWeight: 500, color:
|
|
2366
|
-
u.hasVoice && !M && /* @__PURE__ */ i(Ii, { color: u.fg ?? (
|
|
2365
|
+
/* @__PURE__ */ i("span", { style: { fontSize: 12.5, fontWeight: 500, color: g ? "var(--ink-96)" : "var(--ink-62)", whiteSpace: "nowrap" }, children: u.name }),
|
|
2366
|
+
u.hasVoice && !M && /* @__PURE__ */ i(Ii, { color: u.fg ?? (g ? "var(--ink-62)" : "var(--ink-45)") }),
|
|
2367
2367
|
M && /* @__PURE__ */ i("span", { title: M, "aria-label": M, 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: "!" }),
|
|
2368
|
-
w && /* @__PURE__ */ i("span", { title: "Not enough audio to clone", "aria-label": "Not enough audio to clone", style: { flex: "none", display: "flex", marginRight: -2, color:
|
|
2368
|
+
w && /* @__PURE__ */ i("span", { title: "Not enough audio to clone", "aria-label": "Not enough audio to clone", style: { flex: "none", display: "flex", marginRight: -2, color: g ? "var(--ink-45)" : "var(--ink-35)" }, children: /* @__PURE__ */ i(oe, { d: J.micOff, size: 13, sw: 1.7 }) }),
|
|
2369
2369
|
(N || p) && /* @__PURE__ */ i("span", { title: p ? "Cloning this voice…" : "No voice clone yet", "aria-label": p ? "Cloning this voice" : "No voice clone yet", style: { flex: "none", width: 10, height: 10, marginRight: -2, display: "flex", alignItems: "center", justifyContent: "center" }, children: p ? /* @__PURE__ */ i(at, { 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)" } }) })
|
|
2370
2370
|
]
|
|
2371
2371
|
},
|
|
@@ -2373,30 +2373,30 @@ function ol({ roster: t, selected: e, onSelect: n, noClone: s, building: r, shor
|
|
|
2373
2373
|
);
|
|
2374
2374
|
}) }) : null;
|
|
2375
2375
|
}
|
|
2376
|
-
function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r = null, dlId: a = null, onPick: o, onAdd: l, onUse: c, usedBy: d, foldKey: u, foldFor:
|
|
2376
|
+
function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r = null, dlId: a = null, onPick: o, onAdd: l, onUse: c, usedBy: d, foldKey: u, foldFor: g = null, problem: M, noClone: p = null, t: N }) {
|
|
2377
2377
|
const w = Ie(() => il(e, N), [e, N]), [k, m] = I({});
|
|
2378
2378
|
_(() => {
|
|
2379
2379
|
m({});
|
|
2380
|
-
}, [u,
|
|
2380
|
+
}, [u, g]);
|
|
2381
2381
|
const f = (b) => b === N.vcMale.toUpperCase() || b === N.vcFemale.toUpperCase(), O = (b) => {
|
|
2382
2382
|
if (b === N.vcSheet) return !0;
|
|
2383
2383
|
const W = k[b];
|
|
2384
|
-
return W != null ? !W : !
|
|
2384
|
+
return W != null ? !W : !g || !f(b) ? !0 : b === (g === "female" ? N.vcFemale : N.vcMale).toUpperCase();
|
|
2385
2385
|
}, D = !!s && s !== n;
|
|
2386
|
-
return /* @__PURE__ */
|
|
2387
|
-
M && /* @__PURE__ */
|
|
2386
|
+
return /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
2387
|
+
M && /* @__PURE__ */ h("div", { style: { display: "flex", alignItems: "flex-start", gap: 9, padding: "10px 11px", marginBottom: 10, borderRadius: 11, background: "var(--conf-low-soft)" }, children: [
|
|
2388
2388
|
/* @__PURE__ */ i(oe, { d: J.warnTri, size: 15, sw: 1.7, style: { flex: "none", marginTop: 1, color: "var(--conf-low)" } }),
|
|
2389
2389
|
/* @__PURE__ */ i("span", { style: { flex: 1, minWidth: 0, fontSize: 12.5, fontWeight: 300, lineHeight: 1.45, color: "var(--ink-80)", textWrap: "pretty" }, children: M }),
|
|
2390
2390
|
/* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(za, { value: M, label: "Copy this error" }) })
|
|
2391
2391
|
] }),
|
|
2392
2392
|
t,
|
|
2393
|
-
p && /* @__PURE__ */
|
|
2393
|
+
p && /* @__PURE__ */ h(_e, { children: [
|
|
2394
2394
|
/* @__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: N.vcSheet }) }),
|
|
2395
|
-
/* @__PURE__ */
|
|
2395
|
+
/* @__PURE__ */ h("div", { role: p.action ? "button" : "status", tabIndex: p.action ? 0 : void 0, title: p.tip, onClick: p.action, onKeyDown: p.action ? (b) => {
|
|
2396
2396
|
(b.key === "Enter" || b.key === " ") && (b.preventDefault(), p.action());
|
|
2397
2397
|
} : void 0, style: { display: "flex", alignItems: "center", gap: 11, padding: "11px 8px", margin: "0 -6px", borderRadius: 10, cursor: p.action ? "pointer" : "default" }, children: [
|
|
2398
2398
|
/* @__PURE__ */ i("span", { style: { flex: "none", width: 32, height: 32, boxSizing: "border-box", borderRadius: "50%", border: p.busy ? 0 : p.action ? "1.5px solid var(--brand)" : "1.5px dashed var(--fill-20)", display: "flex", alignItems: "center", justifyContent: "center" }, children: p.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: p.action ? J.plus : J.mic, size: 15, sw: p.action ? 2 : 1.6, style: { color: p.action ? "var(--brand)" : "var(--ink-45)" } }) }),
|
|
2399
|
-
/* @__PURE__ */
|
|
2399
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
2400
2400
|
/* @__PURE__ */ i("div", { style: { fontSize: 14.5, fontWeight: p.action ? 500 : 400, color: p.action ? "var(--brand)" : "var(--ink-62)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: p.title }),
|
|
2401
2401
|
/* @__PURE__ */ i("div", { style: { fontSize: 12, fontWeight: 300, color: "var(--ink-62)", marginTop: 2, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: p.sub })
|
|
2402
2402
|
] })
|
|
@@ -2404,9 +2404,9 @@ function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r =
|
|
|
2404
2404
|
] }),
|
|
2405
2405
|
w.map(({ v: b, headOn: W, head: A, headCount: te, rule: j }, S) => {
|
|
2406
2406
|
const $ = rl(b), L = a === b.id, z = O(A), E = (d == null ? void 0 : d(b)) ?? null;
|
|
2407
|
-
return /* @__PURE__ */
|
|
2407
|
+
return /* @__PURE__ */ h(ha, { children: [
|
|
2408
2408
|
W && A === N.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: S === 0 && !p ? "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: A }) }),
|
|
2409
|
-
W && A !== N.vcSheet && /* @__PURE__ */
|
|
2409
|
+
W && A !== N.vcSheet && /* @__PURE__ */ h(
|
|
2410
2410
|
"button",
|
|
2411
2411
|
{
|
|
2412
2412
|
type: "button",
|
|
@@ -2423,7 +2423,7 @@ function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r =
|
|
|
2423
2423
|
]
|
|
2424
2424
|
}
|
|
2425
2425
|
),
|
|
2426
|
-
/* @__PURE__ */
|
|
2426
|
+
/* @__PURE__ */ h(
|
|
2427
2427
|
"button",
|
|
2428
2428
|
{
|
|
2429
2429
|
type: "button",
|
|
@@ -2433,23 +2433,23 @@ function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r =
|
|
|
2433
2433
|
onClick: () => o(b),
|
|
2434
2434
|
style: { width: "100%", textAlign: "left", font: "inherit", border: 0, borderTop: z ? j : "0", display: "flex", alignItems: "center", gap: 11, padding: z ? "11px 8px" : "0px 8px", margin: "0 -6px", borderRadius: 10, background: s === b.id ? "var(--brand-tint)" : "transparent", cursor: "pointer", opacity: z ? 1 : 0, maxHeight: z ? 120 : 0, overflow: "hidden", transition: "max-height 280ms cubic-bezier(.32,.72,0,1),padding 280ms cubic-bezier(.32,.72,0,1),opacity 200ms ease" },
|
|
2435
2435
|
children: [
|
|
2436
|
-
/* @__PURE__ */ i("span", { title: L ? "Downloading this voice" : void 0, style: { flex: "none", width: 32, height: 32, borderRadius: "50%", background: L ? "transparent" : b.cloned ? "var(--brand-soft)" : "var(--fill-06)", display: "flex", alignItems: "center", justifyContent: "center" }, children: L ? /* @__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" } }) : r === b.id ? /* @__PURE__ */
|
|
2436
|
+
/* @__PURE__ */ i("span", { title: L ? "Downloading this voice" : void 0, style: { flex: "none", width: 32, height: 32, borderRadius: "50%", background: L ? "transparent" : b.cloned ? "var(--brand-soft)" : "var(--fill-06)", display: "flex", alignItems: "center", justifyContent: "center" }, children: L ? /* @__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" } }) : r === b.id ? /* @__PURE__ */ h("span", { className: "vcplay", children: [
|
|
2437
2437
|
/* @__PURE__ */ i("span", { className: "vcplay__eq", children: /* @__PURE__ */ i(cl, { height: 13, width: 2.5 }) }),
|
|
2438
2438
|
/* @__PURE__ */ i("span", { className: "vcplay__stop", children: /* @__PURE__ */ i(ka, { size: 11 }) })
|
|
2439
2439
|
] }) : /* @__PURE__ */ i(oe, { d: b.cloned ? J.voiceClone : b.gender === "female" ? J.venus : b.gender === "male" ? J.mars : J.mic, size: 15, sw: 1.6, style: { color: b.cloned ? "var(--brand)" : "var(--ink-55)" } }) }),
|
|
2440
|
-
/* @__PURE__ */
|
|
2440
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
2441
2441
|
/* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", gap: 7, minWidth: 0 }, children: /* @__PURE__ */ i("span", { style: { minWidth: 0, fontSize: 14.5, fontWeight: b.id === n ? 600 : 400, color: "var(--ink-96)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: b.name }) }),
|
|
2442
2442
|
$ && /* @__PURE__ */ i("div", { style: { fontSize: 12, fontWeight: 300, color: "var(--ink-62)", marginTop: 2, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: $ }),
|
|
2443
|
-
E && (b.id === n ? /* @__PURE__ */
|
|
2443
|
+
E && (b.id === n ? /* @__PURE__ */ h("div", { style: { display: "flex", alignItems: "center", gap: 5, marginTop: 3, minWidth: 0 }, children: [
|
|
2444
2444
|
/* @__PURE__ */ i(oe, { d: J.notice, size: 12, sw: 1.7, style: { flex: "none", color: "var(--conf-mid)" } }),
|
|
2445
2445
|
/* @__PURE__ */ i("span", { style: { minWidth: 0, fontSize: 11, fontWeight: 300, color: "var(--conf-mid)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: `${N.vcShared} ${E}` })
|
|
2446
2446
|
] }) : /* @__PURE__ */ i("div", { style: { marginTop: 2, minWidth: 0, fontSize: 12, fontWeight: 300, color: "var(--ink-50)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: `${N.vcUsedBy} ${E}` }))
|
|
2447
2447
|
] }),
|
|
2448
|
-
/* @__PURE__ */
|
|
2448
|
+
/* @__PURE__ */ h("div", { style: { flex: "none", width: b.live ? b.id === n ? 18 : 0 : 42, overflow: "hidden", display: "flex", alignItems: "center", justifyContent: "flex-end", gap: 6 }, children: [
|
|
2449
2449
|
/* @__PURE__ */ i("span", { style: { flex: "none", width: 18, height: 18 } }),
|
|
2450
2450
|
/* @__PURE__ */ i("span", { style: { flex: "none", width: 18, height: 18, display: "flex", alignItems: "center", justifyContent: "center" }, children: b.id === n && /* @__PURE__ */ i(oe, { d: J.check, size: 17, sw: 2.2, style: { flex: "none", color: "var(--brand)" } }) })
|
|
2451
2451
|
] }),
|
|
2452
|
-
(b.live || b.cloned && b.library === !1 && !b.auto && !!l) && /* @__PURE__ */
|
|
2452
|
+
(b.live || b.cloned && b.library === !1 && !b.auto && !!l) && /* @__PURE__ */ h("span", { className: "gvadd", role: "button", title: b.live ? `Save ${b.name}’s voice from this session` : `Add ${b.name} to My voices`, onClick: l ? (re) => {
|
|
2453
2453
|
re.stopPropagation(), l(b);
|
|
2454
2454
|
} : void 0, children: [
|
|
2455
2455
|
/* @__PURE__ */ i(oe, { d: J.plus, size: 14, sw: 2 }),
|
|
@@ -2465,13 +2465,13 @@ function ll({ cast: t, voices: e, currentId: n, armedId: s = null, sampleId: r =
|
|
|
2465
2465
|
}
|
|
2466
2466
|
function cl({ height: t, width: e = 2 }) {
|
|
2467
2467
|
const n = { width: e, height: "100%", borderRadius: 1, background: "var(--brand)" };
|
|
2468
|
-
return /* @__PURE__ */
|
|
2468
|
+
return /* @__PURE__ */ h("span", { style: { flex: "none", display: "flex", alignItems: "flex-end", gap: 2, height: t }, children: [
|
|
2469
2469
|
/* @__PURE__ */ i("span", { style: { ...n, animation: "vs-eq .62s ease-in-out infinite" } }),
|
|
2470
2470
|
/* @__PURE__ */ i("span", { style: { ...n, animation: "vs-eq .62s ease-in-out .2s infinite" } }),
|
|
2471
2471
|
/* @__PURE__ */ i("span", { style: { ...n, animation: "vs-eq .62s ease-in-out .38s infinite" } })
|
|
2472
2472
|
] });
|
|
2473
2473
|
}
|
|
2474
|
-
const ul = /* @__PURE__ */
|
|
2474
|
+
const ul = /* @__PURE__ */ h("span", { style: { display: "inline-flex", alignItems: "center", gap: 3 }, children: [
|
|
2475
2475
|
/* @__PURE__ */ i(oe, { d: J.langAuto, size: 19, sw: 1.7, style: { color: "var(--ink-62)", display: "block" } }),
|
|
2476
2476
|
/* @__PURE__ */ i(oe, { d: J.globe, size: 18, sw: 1.6, style: { color: "var(--ink-62)", display: "block" } })
|
|
2477
2477
|
] });
|
|
@@ -2494,7 +2494,7 @@ function dl(t, e, n = 0, s) {
|
|
|
2494
2494
|
function Ml(t) {
|
|
2495
2495
|
return (/* @__PURE__ */ new Set([...Object.keys(t.speakers), ...Object.keys(t.speakerIds)])).size;
|
|
2496
2496
|
}
|
|
2497
|
-
function
|
|
2497
|
+
function gl({ recordingId: t, lang: e, ended: n, cred: s, pickedVoice: r, sentenceIds: a }) {
|
|
2498
2498
|
const o = At(), { data: l, reload: c } = ki(async () => {
|
|
2499
2499
|
if (!t || !e) return null;
|
|
2500
2500
|
const V = await o.client.recordings.voice(t, e, o.readAs).catch(() => []);
|
|
@@ -2502,7 +2502,7 @@ function hl({ recordingId: t, lang: e, ended: n, cred: s, pickedVoice: r, senten
|
|
|
2502
2502
|
}, [t, e, o, n]), d = Ie(
|
|
2503
2503
|
() => l && l.lang === e && l.recordingId === t ? l.rows : [],
|
|
2504
2504
|
[l, e, t]
|
|
2505
|
-
), u = Ie(() => di(d, r), [d, r]),
|
|
2505
|
+
), u = Ie(() => di(d, r), [d, r]), g = u ? u.voiceKey || null : r, [M, p] = I(null), [N, w] = I(null), k = v(/* @__PURE__ */ new Set()), m = `${t ?? ""}|${e ?? ""}|${g ?? ""}`, f = Xe(async (V, C) => {
|
|
2506
2506
|
if (!t || !e || !n) return;
|
|
2507
2507
|
const ue = C != null && C.size ? null : Fr(V), P = C != null && C.size ? C : ue, Z = P && P.size ? Object.fromEntries([...P].map(([we, ke]) => [String(we), ke])) : null, le = `${t}|${e}|${Z ? JSON.stringify(Z) : V ?? ""}`;
|
|
2508
2508
|
if (k.current.has(le)) return;
|
|
@@ -2524,16 +2524,16 @@ function hl({ recordingId: t, lang: e, ended: n, cred: s, pickedVoice: r, senten
|
|
|
2524
2524
|
}, [t, e]), D = !!u && (u.state === "queued" || u.state === "running") || M === m, b = (u == null ? void 0 : u.state) === "failed" ? u.error || "the render failed" : N, W = (a == null ? void 0 : a.join(",")) ?? "", [A, te] = I(null), j = Ie(() => new Set((u == null ? void 0 : u.clips) ?? []), [u]), S = Ie(() => n && W ? W.split(",").map(Number).filter((V) => !j.has(V)) : [], [n, W, j]), $ = v(null);
|
|
2525
2525
|
_(() => {
|
|
2526
2526
|
if (!n || !t || !e || !S.length) return;
|
|
2527
|
-
const V = A ?? S[0], C = S.find((ne) => ne >= V) ?? S[0], ue = `${t}|${e}|${
|
|
2527
|
+
const V = A ?? S[0], C = S.find((ne) => ne >= V) ?? S[0], ue = `${t}|${e}|${g ?? ""}`, P = $.current;
|
|
2528
2528
|
if (P && P.key === ue && Math.abs(P.near - C) < 12 && Date.now() - P.at < 6e4) return;
|
|
2529
2529
|
$.current = { key: ue, near: C, at: Date.now() };
|
|
2530
|
-
const Z = Fr(
|
|
2531
|
-
Z && Z.size ? le.voiceBySpeaker = Object.fromEntries([...Z].map(([ne, ae]) => [String(ne), ae])) :
|
|
2530
|
+
const Z = Fr(g), le = { langs: [e], near: C };
|
|
2531
|
+
Z && Z.size ? le.voiceBySpeaker = Object.fromEntries([...Z].map(([ne, ae]) => [String(ne), ae])) : g && (le.voice = g), Br(o, `/v1/recordings/${t}/voice`, { method: "POST", body: le }).then((ne) => {
|
|
2532
2532
|
ne.ok || ($.current = null);
|
|
2533
2533
|
}).catch(() => {
|
|
2534
2534
|
$.current = null;
|
|
2535
2535
|
});
|
|
2536
|
-
}, [n, t, e,
|
|
2536
|
+
}, [n, t, e, g, A, S, o]);
|
|
2537
2537
|
const L = S.length > 0, z = v({ n: -1, at: 0 });
|
|
2538
2538
|
_(() => {
|
|
2539
2539
|
if (!L) return;
|
|
@@ -2548,11 +2548,11 @@ function hl({ recordingId: t, lang: e, ended: n, cred: s, pickedVoice: r, senten
|
|
|
2548
2548
|
const V = W ? W.split(",").map(Number).filter((ue) => !n || j.has(ue)) : void 0, C = u ?? (V != null && V.length && e ? { lang: e, voiceKey: r ?? "", clips: [], voice: null } : null);
|
|
2549
2549
|
return _a(C, t, o.origin, s, V);
|
|
2550
2550
|
}, [u, t, o, s, W, e, r, n, j]), re = Ie(() => new Set(S), [S]);
|
|
2551
|
-
return { listed: l, rows: d, track: u, renderVoiceId:
|
|
2551
|
+
return { listed: l, rows: d, track: u, renderVoiceId: g, rendering: D, failed: b, clips: E, requestRender: f, forget: O, reload: c, setNear: te, missing: S.length, coming: re };
|
|
2552
2552
|
}
|
|
2553
|
-
const
|
|
2553
|
+
const hl = { 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 };
|
|
2554
2554
|
function Oi({ tabs: t, current: e, onPick: n, gap: s, fold: r = !0, side: a = !r }) {
|
|
2555
|
-
const o = r && t.length <= 3, l = t.some((k) => k.key === e), [c, d] = I(null), u = v(null), [
|
|
2555
|
+
const o = r && t.length <= 3, l = t.some((k) => k.key === e), [c, d] = I(null), u = v(null), [g, M] = I(0);
|
|
2556
2556
|
_(() => {
|
|
2557
2557
|
u.current && M(u.current.offsetWidth);
|
|
2558
2558
|
}, [c == null ? void 0 : c.k]);
|
|
@@ -2568,24 +2568,24 @@ function Oi({ tabs: t, current: e, onPick: n, gap: s, fold: r = !0, side: a = !r
|
|
|
2568
2568
|
}, N = () => d(null);
|
|
2569
2569
|
let w = null;
|
|
2570
2570
|
if (c) {
|
|
2571
|
-
const k = { l: 0, r: typeof window < "u" ? window.innerWidth : 0 }, m =
|
|
2571
|
+
const k = { l: 0, r: typeof window < "u" ? window.innerWidth : 0 }, m = g || 80, f = Math.max(k.l + 8, Math.min(k.r - m - 8, c.x - m / 2));
|
|
2572
2572
|
w = pa(
|
|
2573
|
-
/* @__PURE__ */ i("div", { className: "vsp vsp-portal", "data-theme": "dark", children: /* @__PURE__ */
|
|
2573
|
+
/* @__PURE__ */ i("div", { className: "vsp vsp-portal", "data-theme": "dark", children: /* @__PURE__ */ h("div", { ref: u, "data-theme": "dark", className: "vs-tip__bubble vs-tip__bubble--top tabtip", style: { position: "fixed", left: f, top: c.y - 8, bottom: "auto", width: "auto", whiteSpace: "nowrap", transform: "translateY(-100%)", zIndex: 2147483e3, pointerEvents: "none" }, children: [
|
|
2574
2574
|
/* @__PURE__ */ i("span", { className: "vs-tip__row", children: /* @__PURE__ */ i("span", { className: "vs-tip__copy", children: c.label }) }),
|
|
2575
2575
|
/* @__PURE__ */ i("span", { className: "vs-tip__arrow", style: { left: Math.round(Math.max(8, Math.min(m - 19, c.x - f - 5.5))) } })
|
|
2576
2576
|
] }) }),
|
|
2577
2577
|
document.body
|
|
2578
2578
|
);
|
|
2579
2579
|
}
|
|
2580
|
-
return /* @__PURE__ */
|
|
2580
|
+
return /* @__PURE__ */ h("div", { role: "tablist", className: `tabbar tabbar--icons${r ? "" : " tabbar--desk"}`, "data-desk-tabs": a ? "" : void 0, "data-tab-n": a ? t.length : void 0, style: { marginBottom: s ? 12 : 0 }, onMouseLeave: N, children: [
|
|
2581
2581
|
t.map((k) => {
|
|
2582
|
-
const m = e === k.key, f = o || m, O = o ? "1 1 0" : m ? "1 1 auto" : r && !l ? "1 1 0" : "0 0 auto", D = k.icon ??
|
|
2582
|
+
const m = e === k.key, f = o || m, O = o ? "1 1 0" : m ? "1 1 auto" : r && !l ? "1 1 0" : "0 0 auto", D = k.icon ?? hl[k.key], b = () => {
|
|
2583
2583
|
N(), n(r && m ? "none" : k.key);
|
|
2584
2584
|
};
|
|
2585
|
-
return r ? /* @__PURE__ */
|
|
2585
|
+
return r ? /* @__PURE__ */ h("button", { type: "button", role: "tab", "aria-selected": m, title: k.label, className: `tabbar__tab${m ? " is-on" : ""}`, style: { flex: O }, onClick: b, children: [
|
|
2586
2586
|
D && /* @__PURE__ */ i(oe, { d: D, size: 15, sw: k.sw ?? 2, style: { flex: "none" } }),
|
|
2587
2587
|
f && /* @__PURE__ */ i("span", { className: "tabbar__label", children: k.label })
|
|
2588
|
-
] }, k.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: O }, onMouseEnter: (W) => p(W, k), onMouseMove: (W) => p(W, k), onClick: b, children: /* @__PURE__ */
|
|
2588
|
+
] }, k.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: O }, onMouseEnter: (W) => p(W, k), onMouseMove: (W) => p(W, k), onClick: b, children: /* @__PURE__ */ h("button", { type: "button", role: "tab", "aria-selected": m, "aria-label": k.label, className: `tabbar__tab${m ? " is-on" : ""}${(c == null ? void 0 : c.k) === k.key ? " is-tip" : ""}`, children: [
|
|
2589
2589
|
D && /* @__PURE__ */ i(oe, { d: D, size: 15, sw: k.sw ?? 2, className: "tabbar__icon", style: { flex: "none", transform: m && !o ? "scale(1.12)" : "none" } }),
|
|
2590
2590
|
/* @__PURE__ */ i("span", { className: "tabbar__grow", "data-tab-lw": "", style: { gridTemplateColumns: f ? "1fr" : "0fr", marginLeft: f && D ? 6 : 0 }, children: /* @__PURE__ */ i("span", { className: "tabbar__label", "data-tab-l": "", style: { opacity: f ? 1 : 0, transform: f ? "none" : "translateX(-6px)" }, children: k.label }) })
|
|
2591
2591
|
] }) }, k.key);
|
|
@@ -2601,7 +2601,7 @@ function pl({ audio: t, video: e, formats: n, onExport: s }) {
|
|
|
2601
2601
|
}), []);
|
|
2602
2602
|
const u = (N) => {
|
|
2603
2603
|
window.clearTimeout(c.current), a(N), c.current = window.setTimeout(() => a(null), 1600);
|
|
2604
|
-
},
|
|
2604
|
+
}, g = (N) => {
|
|
2605
2605
|
o || (l(N), Promise.resolve().then(() => s(N)).then(() => {
|
|
2606
2606
|
d.current && u(N);
|
|
2607
2607
|
}).catch(() => {
|
|
@@ -2615,23 +2615,23 @@ function pl({ audio: t, video: e, formats: n, onExport: s }) {
|
|
|
2615
2615
|
}).finally(() => {
|
|
2616
2616
|
d.current && l(null);
|
|
2617
2617
|
}));
|
|
2618
|
-
}, p = (N, w, k, m) => /* @__PURE__ */
|
|
2618
|
+
}, p = (N, w, k, m) => /* @__PURE__ */ h(_e, { children: [
|
|
2619
2619
|
/* @__PURE__ */ i(ds, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: m }),
|
|
2620
|
-
/* @__PURE__ */
|
|
2620
|
+
/* @__PURE__ */ h("button", { type: "button", className: "dlrow", disabled: o != null, "aria-busy": o === N || void 0, onClick: () => M(N, w), style: o && o !== N ? { opacity: 0.45 } : void 0, children: [
|
|
2621
2621
|
o === N ? /* @__PURE__ */ i(at, { size: 17, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: k, size: 17, sw: 1.5, style: { flex: "none", color: "var(--ink-70)" } }),
|
|
2622
|
-
/* @__PURE__ */
|
|
2622
|
+
/* @__PURE__ */ h("span", { style: { flex: 1, minWidth: 0, display: "flex", flexDirection: "column", gap: 1, textAlign: "left" }, children: [
|
|
2623
2623
|
/* @__PURE__ */ i("span", { style: { fontSize: 13, fontWeight: 500, color: "var(--ink-96)", whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: w.name }),
|
|
2624
2624
|
/* @__PURE__ */ i("span", { style: { font: "500 9.5px var(--vs-font-mono)", color: "var(--ink-40)", letterSpacing: ".04em" }, children: w.meta })
|
|
2625
2625
|
] }),
|
|
2626
2626
|
/* @__PURE__ */ i(oe, { d: r === N ? J.check : fl, size: 17, sw: 1.6, style: { flex: "none", color: r === N ? "var(--brand)" : "var(--ink-62)" } })
|
|
2627
2627
|
] })
|
|
2628
2628
|
] });
|
|
2629
|
-
return /* @__PURE__ */
|
|
2629
|
+
return /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
|
|
2630
2630
|
t && p("audio", t, Nl, "DOWNLOAD AUDIO"),
|
|
2631
2631
|
e && p("video", e, J.video, "DOWNLOAD VIDEO"),
|
|
2632
|
-
n !== !1 && /* @__PURE__ */
|
|
2632
|
+
n !== !1 && /* @__PURE__ */ h(_e, { children: [
|
|
2633
2633
|
/* @__PURE__ */ i(ds, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "EXPORT AS" }),
|
|
2634
|
-
/* @__PURE__ */ i("div", { className: "fmtgrid", children: ps.map((N) => /* @__PURE__ */
|
|
2634
|
+
/* @__PURE__ */ i("div", { className: "fmtgrid", children: ps.map((N) => /* @__PURE__ */ h("button", { type: "button", className: "fmtgrid__cell", title: o === N.key ? `Building the ${N.name}…` : N.note, disabled: o != null, "aria-busy": o === N.key || void 0, onClick: () => g(N.key), style: o && o !== N.key ? { opacity: 0.45 } : void 0, children: [
|
|
2635
2635
|
o === N.key ? /* @__PURE__ */ i(at, { size: 16, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: r === N.key ? J.check : N.icon, size: 16, sw: 1.6, style: { color: r === N.key ? "var(--brand)" : "var(--ink-62)" } }),
|
|
2636
2636
|
/* @__PURE__ */ i("span", { children: N.name })
|
|
2637
2637
|
] }, N.key)) })
|
|
@@ -2683,29 +2683,29 @@ function Tl({ s: t }) {
|
|
|
2683
2683
|
|
|
2684
2684
|
${a}`).catch(() => {
|
|
2685
2685
|
}), window.clearTimeout(s.current), n(!0), s.current = window.setTimeout(() => n(!1), 1600);
|
|
2686
|
-
}, l = (c, d) => /* @__PURE__ */
|
|
2686
|
+
}, l = (c, d) => /* @__PURE__ */ h("div", { style: { display: "flex", alignItems: "center", gap: 10, fontSize: 13, fontWeight: 300, lineHeight: 1.45, color: "var(--ink-45)" }, children: [
|
|
2687
2687
|
/* @__PURE__ */ i("span", { style: { flex: 1 }, children: c }),
|
|
2688
2688
|
d && /* @__PURE__ */ i("button", { type: "button", className: "txlinks__manage", onClick: d.onClick, children: d.label })
|
|
2689
2689
|
] });
|
|
2690
|
-
return /* @__PURE__ */
|
|
2691
|
-
/* @__PURE__ */
|
|
2690
|
+
return /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column", gap: 8 }, children: [
|
|
2691
|
+
/* @__PURE__ */ h("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", gap: 8, minHeight: 24 }, children: [
|
|
2692
2692
|
/* @__PURE__ */ i(ds, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "SUMMARY" }),
|
|
2693
|
-
t.state === "ready" && /* @__PURE__ */
|
|
2693
|
+
t.state === "ready" && /* @__PURE__ */ h("button", { type: "button", className: "sumcopy", title: "Copy title and summary", style: { color: e ? "var(--brand)" : "var(--ink-70)" }, onClick: o, children: [
|
|
2694
2694
|
/* @__PURE__ */ i(oe, { d: e ? J.check : kl, size: 13, sw: 1.6 }),
|
|
2695
2695
|
e ? "Copied" : "Copy"
|
|
2696
2696
|
] })
|
|
2697
2697
|
] }),
|
|
2698
|
-
t.state === "ready" ? /* @__PURE__ */
|
|
2698
|
+
t.state === "ready" ? /* @__PURE__ */ h(_e, { children: [
|
|
2699
2699
|
/* @__PURE__ */ i("div", { style: { fontSize: 15, fontWeight: 600, lineHeight: 1.3, letterSpacing: "-.15px", color: "var(--ink-96)", textWrap: "pretty" }, children: r }),
|
|
2700
2700
|
/* @__PURE__ */ i("div", { style: { fontSize: 13, fontWeight: 300, lineHeight: 1.55, color: "var(--ink-80)", textWrap: "pretty", whiteSpace: "pre-line" }, children: a })
|
|
2701
|
-
] }) : 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__ */
|
|
2701
|
+
] }) : 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__ */ h("div", { style: { display: "flex", alignItems: "center", gap: 10, fontSize: 13, fontWeight: 300, color: "var(--ink-45)" }, children: [
|
|
2702
2702
|
/* @__PURE__ */ i(at, { size: 14, color: "var(--brand)", track: "var(--fill-12)" }),
|
|
2703
2703
|
t.slow ? "Still writing the summary…" : "Writing the summary…"
|
|
2704
2704
|
] })
|
|
2705
2705
|
] });
|
|
2706
2706
|
}
|
|
2707
2707
|
function wl({ ytId: t, title: e, timeLabel: n, radius: s, style: r, large: a, children: o, picture: l }) {
|
|
2708
|
-
return /* @__PURE__ */
|
|
2708
|
+
return /* @__PURE__ */ h("div", { className: "livevid", style: { ...s != null ? { borderRadius: s } : null, ...r }, children: [
|
|
2709
2709
|
/* @__PURE__ */ i(oe, { d: "m15.75 10.5 4.72-4.72a.75.75 0 0 1 1.28.53v11.38a.75.75 0 0 1-1.28.53l-4.72-4.72M4.5 18.75h9a2.25 2.25 0 0 0 2.25-2.25v-9a2.25 2.25 0 0 0-2.25-2.25h-9A2.25 2.25 0 0 0 2.25 7.5v9a2.25 2.25 0 0 0 2.25 2.25Z", size: a ? 34 : 30, sw: 1.2 }),
|
|
2710
2710
|
l ?? /* @__PURE__ */ i("iframe", { src: Wo(t), title: e, referrerPolicy: "strict-origin-when-cross-origin", allow: "autoplay; encrypted-media; picture-in-picture" }),
|
|
2711
2711
|
n && /* @__PURE__ */ i("span", { className: "livevid__t", style: a ? { bottom: 10, right: 10 } : void 0, children: n }),
|
|
@@ -2718,13 +2718,13 @@ function Ll(t = !0, e) {
|
|
|
2718
2718
|
const r = s.current;
|
|
2719
2719
|
if (!r || !t) return;
|
|
2720
2720
|
let a = 0, o = 0, l = !1;
|
|
2721
|
-
const c = (
|
|
2722
|
-
|
|
2723
|
-
}, d = (
|
|
2721
|
+
const c = (g) => {
|
|
2722
|
+
g.button !== 0 || g.target.closest("button,a,input,textarea,select") || (l = !0, a = g.clientY, o = r.scrollTop, r.classList.add("is-dragging"));
|
|
2723
|
+
}, d = (g) => {
|
|
2724
2724
|
var p;
|
|
2725
2725
|
if (!l) return;
|
|
2726
|
-
const M =
|
|
2727
|
-
Math.abs(M) > 2 && ((p = r.setPointerCapture) == null || p.call(r,
|
|
2726
|
+
const M = g.clientY - a;
|
|
2727
|
+
Math.abs(M) > 2 && ((p = r.setPointerCapture) == null || p.call(r, g.pointerId)), r.scrollTop = o - M;
|
|
2728
2728
|
}, u = () => {
|
|
2729
2729
|
l = !1, r.classList.remove("is-dragging");
|
|
2730
2730
|
};
|
|
@@ -2744,9 +2744,9 @@ function vl(t, e) {
|
|
|
2744
2744
|
(e.forcePin ?? []).forEach((f) => {
|
|
2745
2745
|
l = l.filter((O) => O !== `!${f}`), r.includes(f) && !l.includes(f) && (l = [f, ...l]);
|
|
2746
2746
|
});
|
|
2747
|
-
const d = (f) => (e.forcePin ?? []).includes(f) && !c.includes(f), u = a ? l.filter((f) => r.includes(f) && o.includes(f)) : [],
|
|
2748
|
-
const O =
|
|
2749
|
-
return O[
|
|
2747
|
+
const d = (f) => (e.forcePin ?? []).includes(f) && !c.includes(f), u = a ? l.filter((f) => r.includes(f) && o.includes(f)) : [], g = r.filter((f) => !u.includes(f)), M = e.cur && e.cur !== "none" && g.includes(e.cur) ? e.cur : e.pref && g.includes(e.pref) ? e.pref : g[0] ?? null, p = (f) => {
|
|
2748
|
+
const O = g.filter((D) => D !== f);
|
|
2749
|
+
return O[g.indexOf(f)] ?? O[O.length - 1] ?? null;
|
|
2750
2750
|
}, N = (f, O) => {
|
|
2751
2751
|
if (!o.includes(f)) return;
|
|
2752
2752
|
const D = u.filter((b) => b !== f);
|
|
@@ -2766,20 +2766,20 @@ function vl(t, e) {
|
|
|
2766
2766
|
show: D && (!a || O || M === f),
|
|
2767
2767
|
pinned: O,
|
|
2768
2768
|
order: O ? u.indexOf(f) + 1 : 1e3,
|
|
2769
|
-
pill: a && D && o.includes(f) &&
|
|
2769
|
+
pill: a && D && o.includes(f) && g.length > 0 && (O || g.length > 1),
|
|
2770
2770
|
title: O ? `Unpin — return ${k(f)} to the tabs` : `Pin ${k(f)} open above the tabs`,
|
|
2771
2771
|
toggle: () => O ? w(f) : N(f)
|
|
2772
2772
|
};
|
|
2773
2773
|
};
|
|
2774
|
-
return { id: t, tabbed: a &&
|
|
2774
|
+
return { id: t, tabbed: a && g.length > 1, cur: M, seq: u, pinnable: o, tabKeys: g, stripTabs: e.tabs.filter((f) => g.includes(f.key)), panel: m, pin: N, unpin: w };
|
|
2775
2775
|
}
|
|
2776
2776
|
function jl({ col: t, order: e, render: n, grip: s, onPick: r, wrapClass: a }) {
|
|
2777
|
-
return zl(t), /* @__PURE__ */
|
|
2777
|
+
return zl(t), /* @__PURE__ */ h(_e, { children: [
|
|
2778
2778
|
e.map((o) => {
|
|
2779
2779
|
const l = t.panel(o);
|
|
2780
2780
|
if (!l.show) return null;
|
|
2781
2781
|
const c = n(o);
|
|
2782
|
-
return c ? /* @__PURE__ */
|
|
2782
|
+
return c ? /* @__PURE__ */ h("div", { "data-panel-key": o, "data-pinned": l.pinned ? "true" : "false", className: `pinwrap sidepanel ${(a == null ? void 0 : a(o, l.pinned)) ?? ""}`, style: { order: l.order, "--grip-h": `${(s == null ? void 0 : s[o]) ?? 30}px` }, children: [
|
|
2783
2783
|
c,
|
|
2784
2784
|
l.pill && /* @__PURE__ */ i("button", { type: "button", "data-pin-pill": "", className: `pinpill${l.pinned ? " is-on" : ""}`, title: l.title, "aria-label": l.title, "aria-pressed": l.pinned, onClick: l.toggle, children: /* @__PURE__ */ i(oe, { d: J.pin, size: 12, sw: 2 }) })
|
|
2785
2785
|
] }, o) : null;
|
|
@@ -2858,7 +2858,7 @@ function zl(t) {
|
|
|
2858
2858
|
}, u = (m) => {
|
|
2859
2859
|
const f = m instanceof Element ? m.closest("[data-tab-col]") : null;
|
|
2860
2860
|
return f && f.getAttribute("data-tab-col") === n ? f : null;
|
|
2861
|
-
},
|
|
2861
|
+
}, g = (m) => {
|
|
2862
2862
|
var A;
|
|
2863
2863
|
if (r) {
|
|
2864
2864
|
if (!r.on) {
|
|
@@ -2886,8 +2886,8 @@ function zl(t) {
|
|
|
2886
2886
|
}, k = () => {
|
|
2887
2887
|
r || a(null);
|
|
2888
2888
|
};
|
|
2889
|
-
return document.addEventListener("pointermove",
|
|
2890
|
-
d(!1), a(null), document.removeEventListener("pointermove",
|
|
2889
|
+
return document.addEventListener("pointermove", g, !0), document.addEventListener("pointerdown", M, !0), window.addEventListener("pointerup", p), window.addEventListener("pointercancel", N), window.addEventListener("keydown", w, !0), document.addEventListener("pointerleave", k), () => {
|
|
2890
|
+
d(!1), a(null), document.removeEventListener("pointermove", g, !0), document.removeEventListener("pointerdown", M, !0), window.removeEventListener("pointerup", p), window.removeEventListener("pointercancel", N), window.removeEventListener("keydown", w, !0), document.removeEventListener("pointerleave", k);
|
|
2891
2891
|
};
|
|
2892
2892
|
}, [n]);
|
|
2893
2893
|
}
|
|
@@ -2911,10 +2911,10 @@ function Il({ id: t, className: e, gap: n, hidden: s, plain: r, children: a }) {
|
|
|
2911
2911
|
window.removeEventListener("pointermove", j), window.removeEventListener("pointerup", S), window.removeEventListener("pointercancel", S), document.body.style.cursor = te.cur, document.body.style.userSelect = te.sel, w.classList.remove("is-on"), l(A);
|
|
2912
2912
|
};
|
|
2913
2913
|
window.addEventListener("pointermove", j), window.addEventListener("pointerup", S), window.addEventListener("pointercancel", S);
|
|
2914
|
-
},
|
|
2915
|
-
return /* @__PURE__ */
|
|
2916
|
-
/* @__PURE__ */ i("div", { "aria-hidden": "true", className: "colgrip", style: { marginRight: -n, ...
|
|
2917
|
-
/* @__PURE__ */ i("div", { ref: c, "data-tab-col": t, className: `${e} sidecol`, style: { flex: `0 0 ${o}px`, ...
|
|
2914
|
+
}, g = s ? { display: "none" } : void 0;
|
|
2915
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
2916
|
+
/* @__PURE__ */ i("div", { "aria-hidden": "true", className: "colgrip", style: { marginRight: -n, ...g }, children: /* @__PURE__ */ i("div", { className: "colgrip__bar", style: { left: -(n / 2 + 6) }, title: "Drag to resize · double-click to reset", onPointerDown: u, onDoubleClick: () => l(null) }) }),
|
|
2917
|
+
/* @__PURE__ */ i("div", { ref: c, "data-tab-col": t, className: `${e} sidecol`, style: { flex: `0 0 ${o}px`, ...g }, children: r ? a : /* @__PURE__ */ i("div", { ref: d, "data-panel-grid": "", className: "panelgrid", children: a }) })
|
|
2918
2918
|
] });
|
|
2919
2919
|
}
|
|
2920
2920
|
function Ol(t) {
|
|
@@ -2927,13 +2927,13 @@ function Ol(t) {
|
|
|
2927
2927
|
s = 0;
|
|
2928
2928
|
const d = getComputedStyle(e).display === "grid";
|
|
2929
2929
|
[...e.children].forEach((u) => {
|
|
2930
|
-
const
|
|
2930
|
+
const g = u;
|
|
2931
2931
|
if (!d) {
|
|
2932
|
-
|
|
2932
|
+
g.style.gridRowEnd && (g.style.gridRowEnd = "");
|
|
2933
2933
|
return;
|
|
2934
2934
|
}
|
|
2935
|
-
const M =
|
|
2936
|
-
|
|
2935
|
+
const M = g.getBoundingClientRect().height, p = M > 0 ? `span ${Math.ceil(M + n)}` : "span 1";
|
|
2936
|
+
g.style.gridRowEnd !== p && (g.style.gridRowEnd = p);
|
|
2937
2937
|
});
|
|
2938
2938
|
}, a = () => {
|
|
2939
2939
|
s || (s = requestAnimationFrame(r));
|
|
@@ -2950,8 +2950,8 @@ function Cl(t) {
|
|
|
2950
2950
|
}
|
|
2951
2951
|
const bl = 1500, xl = 3e5;
|
|
2952
2952
|
function Dl(t) {
|
|
2953
|
-
const e = At(), [n, s] = I(null), [r, a] = I(null), [o, l] = I(null), [c, d] = I(null), u = v(null),
|
|
2954
|
-
M.current && (clearTimeout(M.current), M.current = null), u.current && (u.current.pause(), u.current.removeAttribute("src"), u.current.load(), u.current = null),
|
|
2953
|
+
const e = At(), [n, s] = I(null), [r, a] = I(null), [o, l] = I(null), [c, d] = I(null), u = v(null), g = v(null), M = v(null), p = v(0), N = Xe(() => {
|
|
2954
|
+
M.current && (clearTimeout(M.current), M.current = null), u.current && (u.current.pause(), u.current.removeAttribute("src"), u.current.load(), u.current = null), g.current && (URL.revokeObjectURL(g.current), g.current = null);
|
|
2955
2955
|
}, []), w = Xe(() => {
|
|
2956
2956
|
p.current += 1, N(), a(null), l(null);
|
|
2957
2957
|
}, [N]), k = Xe(() => {
|
|
@@ -2998,8 +2998,8 @@ function Dl(t) {
|
|
|
2998
2998
|
}
|
|
2999
2999
|
const te = await A.blob();
|
|
3000
3000
|
if (p.current !== O) return;
|
|
3001
|
-
l(null),
|
|
3002
|
-
const j = new Audio(
|
|
3001
|
+
l(null), g.current = URL.createObjectURL(te);
|
|
3002
|
+
const j = new Audio(g.current);
|
|
3003
3003
|
j.playsInline = !0;
|
|
3004
3004
|
const S = () => {
|
|
3005
3005
|
p.current === O && (N(), a(null));
|
|
@@ -3062,7 +3062,7 @@ function St(t, e, n) {
|
|
|
3062
3062
|
const s = (r = t == null ? void 0 : t.words[t.words.length - 1]) == null ? void 0 : r.end;
|
|
3063
3063
|
return s != null && s > e ? s : (t == null ? void 0 : t.end) != null && t.end > e ? t.end : n > e ? n : e + 4;
|
|
3064
3064
|
}
|
|
3065
|
-
function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: d, lead: u, onTime:
|
|
3065
|
+
function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: d, lead: u, onTime: g, waiting: M = !1 }) {
|
|
3066
3066
|
const p = v(null), [N, w] = I(!1);
|
|
3067
3067
|
_(() => {
|
|
3068
3068
|
if (!M) {
|
|
@@ -3095,8 +3095,8 @@ function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd:
|
|
|
3095
3095
|
} else L.current && !S.current && (L.current = !1, Le.current || (q = j.current) == null || q.call(j));
|
|
3096
3096
|
}, E = v(n);
|
|
3097
3097
|
E.current = n;
|
|
3098
|
-
const re = v(
|
|
3099
|
-
re.current =
|
|
3098
|
+
const re = v(g);
|
|
3099
|
+
re.current = g;
|
|
3100
3100
|
const V = v(null), C = v(null), [ue, P] = I(!0), [Z, le] = I(!1), ne = () => {
|
|
3101
3101
|
D("unloadModule", ["captions"]), D("unloadModule", ["cc"]);
|
|
3102
3102
|
}, ae = v([]), we = () => {
|
|
@@ -3130,7 +3130,7 @@ function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd:
|
|
|
3130
3130
|
}, fe = () => V.current;
|
|
3131
3131
|
return _(() => {
|
|
3132
3132
|
const H = (me) => {
|
|
3133
|
-
var He, Ae, Ue,
|
|
3133
|
+
var He, Ae, Ue, he, Re, K, ie, de, ce, Ne, je, Y, U, F, ee, Me;
|
|
3134
3134
|
if (me.source !== ((He = p.current) == null ? void 0 : He.contentWindow) || typeof me.data != "string") return;
|
|
3135
3135
|
let q = null;
|
|
3136
3136
|
try {
|
|
@@ -3139,7 +3139,7 @@ function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd:
|
|
|
3139
3139
|
return;
|
|
3140
3140
|
}
|
|
3141
3141
|
(Ue = (Ae = q == null ? void 0 : q.info) == null ? void 0 : Ae.videoData) != null && Ue.isLive && (W.current = !0);
|
|
3142
|
-
const ve = (
|
|
3142
|
+
const ve = (he = q == null ? void 0 : q.info) == null ? void 0 : he.duration;
|
|
3143
3143
|
typeof ve == "number" && ve > 0 && !W.current && (b.current == null ? b.current = ve : (A.current = Math.abs(ve - b.current) > 1.5, z())), (q == null ? void 0 : q.event) === "onReady" && ((!S.current || S.current.muted) && D("mute"), we(), (Re = S.current) == null || Re.onInfo({ ready: !0 })), typeof ((K = q == null ? void 0 : q.info) == null ? void 0 : K.playerState) == "number" && (q.info.playerState !== C.current && (q.info.playerState === 1 || q.info.playerState === 2) && we(), C.current = q.info.playerState, P(q.info.playerState !== 1 && q.info.playerState !== 3), (ie = S.current) == null || ie.onInfo({ state: q.info.playerState }));
|
|
3144
3144
|
const Ce = (de = q == null ? void 0 : q.info) == null ? void 0 : de.progressState;
|
|
3145
3145
|
if (Ce && typeof Ce.seekableStart == "number" && typeof Ce.seekableEnd == "number" && Ce.seekableEnd > Ce.seekableStart) {
|
|
@@ -3179,18 +3179,18 @@ function Al({ ytId: t, title: e, t: n, playing: s, seekN: r, onToggle: a, onAd:
|
|
|
3179
3179
|
Ce !== te.current && (te.current = Ce, z());
|
|
3180
3180
|
}, 1e3);
|
|
3181
3181
|
return () => clearInterval(q);
|
|
3182
|
-
}, [Z]), /* @__PURE__ */
|
|
3182
|
+
}, [Z]), /* @__PURE__ */ h("div", { className: `txyt${f ? " txyt--ad" : ""}`, children: [
|
|
3183
3183
|
/* @__PURE__ */ i("iframe", { ref: p, onLoad: ke, 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" }),
|
|
3184
3184
|
!f && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
|
|
3185
3185
|
/* @__PURE__ */ i("div", { className: `txyt__paused${ue && !f && !B ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(vs, { size: 44 }) }) }),
|
|
3186
3186
|
f && /* @__PURE__ */ i("div", { className: "txyt__ad", "aria-live": "polite", children: "Ad on YouTube · the transcript carries on after it" }),
|
|
3187
|
-
B && /* @__PURE__ */
|
|
3187
|
+
B && /* @__PURE__ */ h("div", { className: "txyt__gone", children: [
|
|
3188
3188
|
/* @__PURE__ */ i("span", { children: "YouTube no longer has this part of the broadcast" }),
|
|
3189
3189
|
/* @__PURE__ */ i("small", { children: "A live stream can be rewound only 12 hours" })
|
|
3190
3190
|
] })
|
|
3191
3191
|
] });
|
|
3192
3192
|
}
|
|
3193
|
-
const El = /* @__PURE__ */
|
|
3193
|
+
const El = /* @__PURE__ */ h(_e, { children: [
|
|
3194
3194
|
/* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
|
|
3195
3195
|
/* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
|
|
3196
3196
|
] }), Yl = /* @__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" });
|
|
@@ -3211,10 +3211,10 @@ function $l(t, e) {
|
|
|
3211
3211
|
const s = v(0), r = v(1), a = Xe((o, l) => {
|
|
3212
3212
|
cancelAnimationFrame(s.current);
|
|
3213
3213
|
const c = r.current, d = performance.now(), u = () => {
|
|
3214
|
-
const
|
|
3215
|
-
r.current = c + (o - c) *
|
|
3214
|
+
const g = l > 0 ? Math.min(1, (performance.now() - d) / l) : 1;
|
|
3215
|
+
r.current = c + (o - c) * g;
|
|
3216
3216
|
for (const M of n.current) M.setVolume(r.current);
|
|
3217
|
-
|
|
3217
|
+
g < 1 && (s.current = requestAnimationFrame(u));
|
|
3218
3218
|
};
|
|
3219
3219
|
u();
|
|
3220
3220
|
}, []);
|
|
@@ -3227,7 +3227,7 @@ function $l(t, e) {
|
|
|
3227
3227
|
}
|
|
3228
3228
|
function Bl(t, e, n, s) {
|
|
3229
3229
|
var Oe;
|
|
3230
|
-
const r = v(null), a = v(!1), o = v(!1), [l, c] = I(null), [d, u] = I(!0),
|
|
3230
|
+
const r = v(null), a = v(!1), o = v(!1), [l, c] = I(null), [d, u] = I(!0), g = v(!0), M = v(!1), [p, N] = I(0), w = v(0);
|
|
3231
3231
|
w.current = p;
|
|
3232
3232
|
const k = v({ t: 0, at: 0 }), m = v(n);
|
|
3233
3233
|
m.current = n;
|
|
@@ -3250,7 +3250,7 @@ function Bl(t, e, n, s) {
|
|
|
3250
3250
|
}
|
|
3251
3251
|
}
|
|
3252
3252
|
}), []);
|
|
3253
|
-
$.muted =
|
|
3253
|
+
$.muted = g.current || M.current, _(() => {
|
|
3254
3254
|
if (l !== 1) return;
|
|
3255
3255
|
let G = 0;
|
|
3256
3256
|
const B = () => {
|
|
@@ -3307,10 +3307,10 @@ function Bl(t, e, n, s) {
|
|
|
3307
3307
|
const B = t[Math.max(0, Math.min(t.length - 1, G))];
|
|
3308
3308
|
B && C(B.start);
|
|
3309
3309
|
}, ke = v(!1), Qe = () => {
|
|
3310
|
-
const G =
|
|
3310
|
+
const G = g.current || M.current;
|
|
3311
3311
|
$.muted = G, A(G ? "mute" : "unMute");
|
|
3312
3312
|
}, ye = (G) => {
|
|
3313
|
-
|
|
3313
|
+
g.current = G, u(G), Qe();
|
|
3314
3314
|
}, Le = (G) => {
|
|
3315
3315
|
M.current !== !G && (M.current = !G, Qe());
|
|
3316
3316
|
};
|
|
@@ -3336,9 +3336,9 @@ function Bl(t, e, n, s) {
|
|
|
3336
3336
|
toggle: ae,
|
|
3337
3337
|
seekRow: we,
|
|
3338
3338
|
toggleMute: () => {
|
|
3339
|
-
const G = !
|
|
3339
|
+
const G = !g.current;
|
|
3340
3340
|
ye(G), !G && !M.current && j.current === 1 && setTimeout(() => {
|
|
3341
|
-
j.current === 2 && !
|
|
3341
|
+
j.current === 2 && !g.current && (ye(!0), A("playVideo"));
|
|
3342
3342
|
}, 900);
|
|
3343
3343
|
},
|
|
3344
3344
|
seekFrac: (G) => C(Math.max(0, Math.min(1, G)) * z),
|
|
@@ -3370,8 +3370,8 @@ function Bl(t, e, n, s) {
|
|
|
3370
3370
|
}
|
|
3371
3371
|
function Hl(t, e, n, s, r = 0, a = null) {
|
|
3372
3372
|
var X;
|
|
3373
|
-
const o = v(null), [l, c] = I(!1), [d, u] = I(0), [
|
|
3374
|
-
p.current =
|
|
3373
|
+
const o = v(null), [l, c] = I(!1), [d, u] = I(0), [g, M] = I(!1), p = v(g);
|
|
3374
|
+
p.current = g;
|
|
3375
3375
|
const N = v(!1), [w, k] = I(null), [m, f] = I(!1), O = v(r);
|
|
3376
3376
|
O.current = r;
|
|
3377
3377
|
const D = v(null), [b, W] = I(0);
|
|
@@ -3516,7 +3516,7 @@ function Hl(t, e, n, s, r = 0, a = null) {
|
|
|
3516
3516
|
t: d,
|
|
3517
3517
|
idx: C,
|
|
3518
3518
|
dur: j,
|
|
3519
|
-
muted:
|
|
3519
|
+
muted: g,
|
|
3520
3520
|
toggleMute: () => {
|
|
3521
3521
|
const y = !p.current;
|
|
3522
3522
|
p.current = y, o.current && (o.current.muted = y || N.current), M(y);
|
|
@@ -3563,7 +3563,7 @@ function Hl(t, e, n, s, r = 0, a = null) {
|
|
|
3563
3563
|
function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
3564
3564
|
const c = v(/* @__PURE__ */ new Set());
|
|
3565
3565
|
c.current = l ?? c.current;
|
|
3566
|
-
const d = v(null), [u,
|
|
3566
|
+
const d = v(null), [u, g] = I(!1), [M, p] = I(0), [N, w] = I(0), [k, m] = I(!1), f = v(k);
|
|
3567
3567
|
f.current = k;
|
|
3568
3568
|
const [O, D] = I(null), [b, W] = I(null), [A, te] = I(null), [j, S] = I(null), $ = v(j);
|
|
3569
3569
|
$.current = j;
|
|
@@ -3577,11 +3577,11 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3577
3577
|
ke.current = a;
|
|
3578
3578
|
const Qe = Xe((Y) => {
|
|
3579
3579
|
Y.finite = !0, Y.coming = (U) => c.current.has(U), Y.readAhead = 6, Y.readAheadS = 45, Y.onWaiting = (U) => W(U), Y.onStarting = (U) => te(U), Y.onSentence = (U) => {
|
|
3580
|
-
if (
|
|
3580
|
+
if (g(Y.playing), U == null) return;
|
|
3581
3581
|
const F = Z.current.findIndex((ee) => ee.sentenceId === U);
|
|
3582
3582
|
F >= 0 && p(F);
|
|
3583
3583
|
}, Y.onError = (U) => {
|
|
3584
|
-
|
|
3584
|
+
g(Y.playing), D(U instanceof ui ? { 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." });
|
|
3585
3585
|
}, Y.gapBefore = (U, F) => {
|
|
3586
3586
|
if (!le.current) return 0;
|
|
3587
3587
|
const ee = Z.current, Me = ee.find((xe) => xe.sentenceId === U), be = ee.find((xe) => xe.sentenceId === F);
|
|
@@ -3614,7 +3614,7 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3614
3614
|
var F;
|
|
3615
3615
|
if (ye.current !== s) {
|
|
3616
3616
|
const ee = ye.current != null ? Le.current : null;
|
|
3617
|
-
ye.current = s, (F = d.current) == null || F.stop(), d.current = new Ms(), Qe(d.current), d.current.setSequence(ne.current),
|
|
3617
|
+
ye.current = s, (F = d.current) == null || F.stop(), d.current = new Ms(), Qe(d.current), d.current.setSequence(ne.current), g(!1), p(0), D(null), te(null), S(null), B(ee && (ee.playing || ee.t > 0) ? ee : null);
|
|
3618
3618
|
}
|
|
3619
3619
|
const Y = d.current;
|
|
3620
3620
|
Y.setMuted(f.current);
|
|
@@ -3660,14 +3660,14 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3660
3660
|
Ae.current = M;
|
|
3661
3661
|
const Ue = (Y) => {
|
|
3662
3662
|
var U, F, ee;
|
|
3663
|
-
(F = d.current) == null || F.play(((U = e[Y]) == null ? void 0 : U.sentenceId) ?? null),
|
|
3664
|
-
},
|
|
3663
|
+
(F = d.current) == null || F.play(((U = e[Y]) == null ? void 0 : U.sentenceId) ?? null), g(!!((ee = d.current) != null && ee.playing));
|
|
3664
|
+
}, he = (Y) => {
|
|
3665
3665
|
var F, ee, Me;
|
|
3666
3666
|
const U = Math.max(0, Math.min(Math.max(0, e.length - 1), Y));
|
|
3667
|
-
p(U), Ae.current = U, w((be) => be + 1), (ee = d.current) == null || ee.seek(((F = e[U]) == null ? void 0 : F.sentenceId) ?? null),
|
|
3667
|
+
p(U), Ae.current = U, w((be) => be + 1), (ee = d.current) == null || ee.seek(((F = e[U]) == null ? void 0 : F.sentenceId) ?? null), g(!!((Me = d.current) != null && Me.playing));
|
|
3668
3668
|
}, Re = (Y) => {
|
|
3669
3669
|
var U;
|
|
3670
|
-
X(), S(null), (U = d.current) == null || U.startWithin(-1, 0),
|
|
3670
|
+
X(), S(null), (U = d.current) == null || U.startWithin(-1, 0), he(Y);
|
|
3671
3671
|
}, K = (Y) => {
|
|
3672
3672
|
var Me;
|
|
3673
3673
|
const U = e[Y], F = (U == null ? void 0 : U.start) ?? 0, ee = ((Me = e[Y + 1]) == null ? void 0 : Me.start) ?? St(U, F, Ce);
|
|
@@ -3707,24 +3707,24 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3707
3707
|
return;
|
|
3708
3708
|
}
|
|
3709
3709
|
if (X(), u) {
|
|
3710
|
-
(U = d.current) == null || U.pause(),
|
|
3710
|
+
(U = d.current) == null || U.pause(), g(!1);
|
|
3711
3711
|
return;
|
|
3712
3712
|
}
|
|
3713
3713
|
D(null);
|
|
3714
3714
|
const Y = Ae.current;
|
|
3715
3715
|
if (!$.current && ((ee = d.current) != null && ee.resume(((F = e[Y]) == null ? void 0 : F.sentenceId) ?? null))) {
|
|
3716
|
-
|
|
3716
|
+
g(!0);
|
|
3717
3717
|
return;
|
|
3718
3718
|
}
|
|
3719
3719
|
Ue(Y);
|
|
3720
3720
|
},
|
|
3721
3721
|
pause: () => {
|
|
3722
3722
|
var Y;
|
|
3723
|
-
X(), (Y = d.current) == null || Y.pause(),
|
|
3723
|
+
X(), (Y = d.current) == null || Y.pause(), g(!1);
|
|
3724
3724
|
},
|
|
3725
3725
|
stop: () => {
|
|
3726
3726
|
var Y, U, F;
|
|
3727
|
-
X(), (Y = d.current) == null || Y.pause(),
|
|
3727
|
+
X(), (Y = d.current) == null || Y.pause(), g(!1), p(0), z(null), (F = d.current) == null || F.seek(((U = e[0]) == null ? void 0 : U.sentenceId) ?? null);
|
|
3728
3728
|
},
|
|
3729
3729
|
seekRow: Re,
|
|
3730
3730
|
resumeAt: (Y) => {
|
|
@@ -3741,7 +3741,7 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3741
3741
|
const We = Me ? F : F + 1, Pe = e[We];
|
|
3742
3742
|
(st = d.current) == null || st.startWithin(-1, 0);
|
|
3743
3743
|
const lt = { t: U, sid: Pe.sentenceId ?? null };
|
|
3744
|
-
$.current = lt, S(lt),
|
|
3744
|
+
$.current = lt, S(lt), he(We);
|
|
3745
3745
|
return;
|
|
3746
3746
|
}
|
|
3747
3747
|
const be = (ee == null ? void 0 : ee.sentenceId) ?? null, { from: Te, span: ze } = K(F);
|
|
@@ -3753,7 +3753,7 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3753
3753
|
const Pe = ee.words[We], lt = Pe.end > Pe.start ? Math.max(0, Math.min(1, (U - Pe.start) / (Pe.end - Pe.start))) : 0;
|
|
3754
3754
|
xe = Math.min(1, (Ze[We][0] + lt * (Ze[We][1] - Ze[We][0])) / $e);
|
|
3755
3755
|
}
|
|
3756
|
-
be != null && ((dt = d.current) == null || dt.startWithin(be, xe)), S(xe > 0.01 ? { t: U, sid: be } : null),
|
|
3756
|
+
be != null && ((dt = d.current) == null || dt.startWithin(be, xe)), S(xe > 0.01 ? { t: U, sid: be } : null), he(F);
|
|
3757
3757
|
},
|
|
3758
3758
|
seekWord: a ? (Y) => {
|
|
3759
3759
|
var Me, be, Te, ze;
|
|
@@ -3795,7 +3795,7 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3795
3795
|
if (U == null) return;
|
|
3796
3796
|
p(Y), Ae.current = Y, S(null), $.current = null, (Me = d.current) == null || Me.joinSilently(U);
|
|
3797
3797
|
const F = ((be = d.current) == null ? void 0 : be.resting()) ?? null;
|
|
3798
|
-
re((F == null ? void 0 : F.s) ?? null), P(!!(F != null && F.silent)),
|
|
3798
|
+
re((F == null ? void 0 : F.s) ?? null), P(!!(F != null && F.silent)), g(!!((Te = d.current) != null && Te.playing));
|
|
3799
3799
|
}
|
|
3800
3800
|
return Ne.joinAt = o ? (Y) => {
|
|
3801
3801
|
X(), je(Tn({ t: Y, playing: !0, sentenceId: null, offset: 0, ended: !1 }, e, Ce).index);
|
|
@@ -3811,20 +3811,20 @@ function Vl(t, e, n, s, r, a, o = !1, l) {
|
|
|
3811
3811
|
}
|
|
3812
3812
|
const Wl = () => {
|
|
3813
3813
|
}, Fl = "The language this recording is read aloud in.", Gl = { title: "READ IN", note: "The transcript and its voice switch to this language." };
|
|
3814
|
-
function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: d, setPickedLang: u, side:
|
|
3814
|
+
function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: d, setPickedLang: u, side: g, hearOriginal: M = !1, timed: p = !1, stockVoices: N = !1, stickyPicker: w = !1, pickerBusy: k = null, voiceSheet: m, forcedVoice: f = null }) {
|
|
3815
3815
|
var sn, rn, Ft, Gt;
|
|
3816
|
-
const { onAddVoice: O, onPickVoice: D, onSelectSpeaker: b, noCloneFor: W, castNoClone: A, castShort: te, castBuilding: j, castWarn: S, badge: $, titleNode: L } = m ?? {}, z = !!m, E = !!(m != null && m.pendingClones), [re, V] =
|
|
3816
|
+
const { onAddVoice: O, onPickVoice: D, onSelectSpeaker: b, noCloneFor: W, castNoClone: A, castShort: te, castBuilding: j, castWarn: S, badge: $, titleNode: L } = m ?? {}, z = !!m, E = !!(m != null && m.pendingClones), [re, V] = hi(), [C, ue] = I(null), [P, Z] = I(!1), [le, ne] = I(!1), [ae, we] = I(!1), [ke, Qe] = I(!1), ye = d ?? l, Le = d === null, Se = d != null || C != null, Oe = ((Q) => !!Q && !!(o != null && o.voice.includes(Q)))(Le ? l : ye) ? Le ? l : ye : "en", G = Dl(Oe), B = (m == null ? void 0 : m.cloneOn) ?? !0, [X, y] = I(0), R = v(B);
|
|
3817
3817
|
_(() => {
|
|
3818
3818
|
R.current !== B && (R.current = B, y((Q) => Q + 1));
|
|
3819
3819
|
}, [B]);
|
|
3820
|
-
const fe = dl(Oe, Se || r || le, Ml(e) * 1e3 + X, { id: t ?? null, shareCode: a.shareCode ?? null }), H = Ie(() => ((fe == null ? void 0 : fe.voices) ?? []).filter((Q) => z || !Q.cloned || Q.speaker != null), [fe, z]), me = H.length > 1, q = ys(o, ye), ve = vi(), Ce = Ie(() => fi(o, "translation"), [o]), [He, Ae] = I(null), [Ue] = I(() => /* @__PURE__ */ new Set()), [
|
|
3820
|
+
const fe = dl(Oe, Se || r || le, Ml(e) * 1e3 + X, { id: t ?? null, shareCode: a.shareCode ?? null }), H = Ie(() => ((fe == null ? void 0 : fe.voices) ?? []).filter((Q) => z || !Q.cloned || Q.speaker != null), [fe, z]), me = H.length > 1, q = ys(o, ye), ve = vi(), Ce = Ie(() => fi(o, "translation"), [o]), [He, Ae] = I(null), [Ue] = I(() => /* @__PURE__ */ new Set()), [he, Re] = I({}), K = Ie(() => al(n, e, ve.vcUnknownSpk), [n, e, ve]), ie = me && K.filter((Q) => Q.key >= 0).length > 1, de = He != null && K.some((Q) => Q.key === He) ? He : ((sn = K[0]) == null ? void 0 : sn.key) ?? null, ce = Ie(() => {
|
|
3821
3821
|
const Q = Gr(K, H, B);
|
|
3822
|
-
for (const [De, Fe] of Object.entries(
|
|
3822
|
+
for (const [De, Fe] of Object.entries(he[Oe ?? ""] ?? {})) Q.set(Number(De), Fe);
|
|
3823
3823
|
return Q;
|
|
3824
|
-
}, [K, H,
|
|
3824
|
+
}, [K, H, he, Oe, B]), Ne = ie && Object.keys(he[Oe ?? ""] ?? {}).length > 0, je = Ie(() => N && !Ne ? Gr(K, H, !1) : null, [N, Ne, K, H]), Y = Ie(() => Ne ? Wr(ce) || null : je && Wr(je) || null, [Ne, ce, je]), U = Ne ? ce : je, F = H.some((Q) => Q.cloned && Q.consent !== "pending"), ee = !!ye && !!(o != null && o.voice.includes(ye)), Me = ee && !M, be = Ie(
|
|
3825
3825
|
() => n.filter((Q) => !Q.suppressed && !Q.unclear).map((Q) => Q.sentenceId).filter((Q) => Q != null),
|
|
3826
3826
|
[n]
|
|
3827
|
-
), Te =
|
|
3827
|
+
), Te = gl({ recordingId: t, lang: ye, ended: r, cred: a, pickedVoice: f || (Y ?? C), sentenceIds: r && Me ? be : void 0 }), ze = H.find((Q) => Q.id === C) ?? H.find((Q) => {
|
|
3828
3828
|
var De;
|
|
3829
3829
|
return Q.id === ((De = Te.track) == null ? void 0 : De.voice);
|
|
3830
3830
|
}) ?? H.find((Q) => Q.default) ?? H[0] ?? null, xe = (ze == null ? void 0 : ze.id) ?? null;
|
|
@@ -3854,7 +3854,7 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3854
3854
|
}, Ve = () => Z(!0), mt = () => {
|
|
3855
3855
|
Z(!1), ne(ae), we(!1);
|
|
3856
3856
|
}, Mt = (Q) => {
|
|
3857
|
-
if (u(Q), V(Q), !((
|
|
3857
|
+
if (u(Q), V(Q), !((g || w) && !ae)) {
|
|
3858
3858
|
if (Q != null) {
|
|
3859
3859
|
mt();
|
|
3860
3860
|
return;
|
|
@@ -3884,7 +3884,7 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3884
3884
|
return;
|
|
3885
3885
|
}
|
|
3886
3886
|
ue(Q);
|
|
3887
|
-
}, it = Le ? { ...ys(o, null), flag: /* @__PURE__ */ i(oe, { d: J.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : q, Cn = c ?
|
|
3887
|
+
}, it = Le ? { ...ys(o, null), flag: /* @__PURE__ */ i(oe, { d: J.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : q, Cn = c ? g ? /* @__PURE__ */ i("span", { className: "barchip", style: Ot ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(vn, { flag: it.flag, code: it.code, bordered: !1, onClick: en, style: Zr }) }) : /* @__PURE__ */ i(vn, { flag: it.flag, code: it.code, bordered: !1, onClick: Ve, style: Zr }) : null, tn = J.voiceClone, Ke = Se && (!!Te.track || st), gt = ot ? "var(--conf-low)" : Ke || g && x ? "var(--brand)" : "var(--ink-55)", Ct = st || !!$e.preparing && Se, yt = $e.preparing ? `Speaking this line in ${(ze == null ? void 0 : ze.name) ?? "this voice"}…` : st ? `Preparing this recording in ${(ze == null ? void 0 : ze.name) ?? "this voice"} — it will play as soon as it is ready` : ot ? `This voice could not be prepared: ${ot}` : ee ? me ? "Choose a voice" : ze ? ze.name : ve.vcNoVoice + q.label : `${ve.vcNoVoice}${q.label}`, Tt = /* @__PURE__ */ i($a, { open: P, onClose: mt, keepOpen: (!!g || w) && !ae, value: Le ? null : ye, onSelect: Mt, languages: Ce, title: (g == null ? void 0 : g.title) ?? "SPOKEN LANGUAGE", note: (g == null ? void 0 : g.note) ?? Fl, searchPlaceholder: ve.search, none: "Original", pinned: (Le ? l : ye) ? [Le ? l : ye] : [], recent: re, requireVoice: ae, sticky: w, busy: k }), Yt = Ie(() => H.filter((Q) => Q.cloned && !Q.auto), [H]), bt = (Q) => Q.voiceId ? Yt.find((De) => De.id === `clone:${Q.voiceId}`) ?? null : null, ct = Ie(() => K.filter((Q) => Q.key >= 0), [K]), Ht = Ie(() => {
|
|
3888
3888
|
const Q = H.filter((Fe) => !Fe.cloned);
|
|
3889
3889
|
if (!ie) return [...Q, ...r && ct.length === 1 ? Yt.filter((Fe) => Fe.id === `clone:${ct[0].voiceId}`) : []];
|
|
3890
3890
|
const De = [];
|
|
@@ -3897,8 +3897,8 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3897
3897
|
}, [H, Yt, ie, ct, E, r]), rt = ie ? ct.find((Q) => Q.key === de) ?? null : null, jt = (Q) => {
|
|
3898
3898
|
var De;
|
|
3899
3899
|
return Q ? ((De = H.find((Fe) => Fe.id === Q)) == null ? void 0 : De.gender) ?? null : null;
|
|
3900
|
-
}, qe = rt ? rt.sex ?? jt(ce.get(rt.key)) : null, _t = Ie(() => rt ? Ht.filter((Q) => Q.cloned ? Q.live ? Q.speaker === rt.key : Q.id === `clone:${rt.voiceId}` : !0) : Ht, [Ht, rt, qe, ct]), Vt = (Q) => H.find((De) => De.cloned && De.auto && De.speaker === Q) ?? null,
|
|
3901
|
-
Ct ? /* @__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: tn, size: 17, sw: 1.6, style: { color:
|
|
3900
|
+
}, qe = rt ? rt.sex ?? jt(ce.get(rt.key)) : null, _t = Ie(() => rt ? Ht.filter((Q) => Q.cloned ? Q.live ? Q.speaker === rt.key : Q.id === `clone:${rt.voiceId}` : !0) : Ht, [Ht, rt, qe, ct]), Vt = (Q) => H.find((De) => De.cloned && De.auto && De.speaker === Q) ?? null, ht = { people: ct, gvList: H, autoOf: Vt, savedFor: bt }, Je = ($ == null ? void 0 : $(ht)) ?? 0, Wt = S ? ct.map((Q) => S(Q, ht)).filter((Q) => !!Q) : [], xt = /* @__PURE__ */ h("button", { type: "button", className: "txvoice", "aria-label": "Voice", "aria-pressed": g ? x : void 0, title: Ct || ot ? yt : void 0, style: { cursor: "pointer", background: Ke || Ct || g && x ? "var(--brand-tint)" : "var(--fill-06)", boxShadow: g && x ? "inset 0 0 0 1.5px var(--brand)" : void 0 }, onClick: g ? vt : Bt, children: [
|
|
3901
|
+
Ct ? /* @__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: tn, size: 17, sw: 1.6, style: { color: gt } }),
|
|
3902
3902
|
Wt.length > 0 ? /* @__PURE__ */ i("span", { className: "txvoice__warn", title: Wt.join(" · "), children: "!" }) : !!Je && /* @__PURE__ */ i("span", { className: "txvoice__n", title: `${Je} speaker${Je === 1 ? "" : "s"} can get a cloned voice`, children: Je })
|
|
3903
3903
|
] }), nn = /* @__PURE__ */ i($t, { open: le, onClose: se, title: ve.vcSheet, titleNode: L, doneLabel: ve.done, children: /* @__PURE__ */ i(
|
|
3904
3904
|
ll,
|
|
@@ -3913,10 +3913,10 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3913
3913
|
onSelect: (Q) => {
|
|
3914
3914
|
G.reset(), Ae(Q), b == null || b(Q);
|
|
3915
3915
|
},
|
|
3916
|
-
noClone: (Q) => !!(A != null && A(Q,
|
|
3917
|
-
short: (Q) => !!(te != null && te(Q,
|
|
3918
|
-
warn: (Q) => (S == null ? void 0 : S(Q,
|
|
3919
|
-
building: (Q) => !bt(Q) && (H.some((De) => De.cloned && De.speaker === Q.key && De.ready === !1) || !!(j != null && j(Q,
|
|
3916
|
+
noClone: (Q) => !!(A != null && A(Q, ht)),
|
|
3917
|
+
short: (Q) => !!(te != null && te(Q, ht)),
|
|
3918
|
+
warn: (Q) => (S == null ? void 0 : S(Q, ht)) ?? null,
|
|
3919
|
+
building: (Q) => !bt(Q) && (H.some((De) => De.cloned && De.speaker === Q.key && De.ready === !1) || !!(j != null && j(Q, ht))),
|
|
3920
3920
|
sexOf: (Q) => Q.sex ?? jt(ce.get(Q.key))
|
|
3921
3921
|
}
|
|
3922
3922
|
),
|
|
@@ -3924,7 +3924,7 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3924
3924
|
onAdd: (Q) => {
|
|
3925
3925
|
G.reset(), O == null || O(Q);
|
|
3926
3926
|
},
|
|
3927
|
-
noClone: rt && !_t.some((Q) => Q.cloned) ? (W == null ? void 0 : W(rt, Vt(rt.key),
|
|
3927
|
+
noClone: rt && !_t.some((Q) => Q.cloned) ? (W == null ? void 0 : W(rt, Vt(rt.key), ht)) ?? null : null,
|
|
3928
3928
|
usedBy: ie && de != null ? (Q) => {
|
|
3929
3929
|
const De = K.filter((Fe) => Fe.key !== de && ce.get(Fe.key) === Q.id);
|
|
3930
3930
|
return De.length ? De.map((Fe) => Fe.name).join(", ") : null;
|
|
@@ -3948,12 +3948,12 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
3948
3948
|
},
|
|
3949
3949
|
onUse: Et
|
|
3950
3950
|
}
|
|
3951
|
-
) }), bn =
|
|
3951
|
+
) }), bn = g ? null : /* @__PURE__ */ h(_e, { children: [
|
|
3952
3952
|
Tt,
|
|
3953
3953
|
nn
|
|
3954
|
-
] }), zt =
|
|
3954
|
+
] }), zt = g && (P || le) ? /* @__PURE__ */ i("div", { className: "vs-side", children: P ? Tt : nn }) : null, xn = We && ot ? `This voice could not be prepared: ${ot}` : null, Dn = dt;
|
|
3955
3955
|
return {
|
|
3956
|
-
barChip: { flag: it.flag, code: it.code, label: it.label, onClick:
|
|
3956
|
+
barChip: { flag: it.flag, code: it.code, label: it.label, onClick: g || w ? en : Ve, active: !!((g || w) && Ot), can: c },
|
|
3957
3957
|
sheetsOpen: P || le,
|
|
3958
3958
|
on: We,
|
|
3959
3959
|
player: lt,
|
|
@@ -4002,7 +4002,7 @@ function Zl({ recordingId: t, model: e, rows: n, lenS: s, ended: r, cred: a, lan
|
|
|
4002
4002
|
langList: { value: Le ? null : ye, onSelect: Mt, languages: Ce, searchPlaceholder: ve.search, none: "Original", pinned: (Le ? l : ye) ? [Le ? l : ye] : [], recent: re }
|
|
4003
4003
|
};
|
|
4004
4004
|
}
|
|
4005
|
-
function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: d, marks: u = !0, fixBadges:
|
|
4005
|
+
function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: d, marks: u = !0, fixBadges: g = !0, tail: M, tailFg: p, running: N, desk: w, feedRef: k, listener: m, showLabels: f, find: O, findOpen: D, lang: b, warm: W, onVisible: A, wordHl: te = !0 }) {
|
|
4006
4006
|
const { playing: j, engaged: S, t: $, idx: L, seekN: z, wordSync: E, clipPos: re } = n;
|
|
4007
4007
|
Ll(!0, k);
|
|
4008
4008
|
const V = v(null);
|
|
@@ -4050,11 +4050,11 @@ function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a,
|
|
|
4050
4050
|
X.scrollTop = He, ae.current = null;
|
|
4051
4051
|
return;
|
|
4052
4052
|
}
|
|
4053
|
-
const Ae = performance.now(), Ue = 360,
|
|
4053
|
+
const Ae = performance.now(), Ue = 360, he = () => {
|
|
4054
4054
|
const Re = Math.min(1, (performance.now() - Ae) / Ue);
|
|
4055
|
-
X.scrollTop = me + (He - me) * (1 - Math.pow(1 - Re, 3)), ae.current = Re < 1 ? requestAnimationFrame(
|
|
4055
|
+
X.scrollTop = me + (He - me) * (1 - Math.pow(1 - Re, 3)), ae.current = Re < 1 ? requestAnimationFrame(he) : null;
|
|
4056
4056
|
};
|
|
4057
|
-
ae.current = requestAnimationFrame(
|
|
4057
|
+
ae.current = requestAnimationFrame(he);
|
|
4058
4058
|
};
|
|
4059
4059
|
_(() => () => {
|
|
4060
4060
|
ae.current && cancelAnimationFrame(ae.current);
|
|
@@ -4079,39 +4079,39 @@ function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a,
|
|
|
4079
4079
|
}, [z]);
|
|
4080
4080
|
const Oe = () => {
|
|
4081
4081
|
Se(L), Be.current = 0, le(0);
|
|
4082
|
-
}, G = (B) => /* @__PURE__ */ i("div", { className: `txfollow txfollow--${B}`, children: /* @__PURE__ */
|
|
4082
|
+
}, G = (B) => /* @__PURE__ */ i("div", { className: `txfollow txfollow--${B}`, children: /* @__PURE__ */ h("button", { type: "button", className: "txfollow__pill", title: "Jump to the line playing now", onClick: Oe, children: [
|
|
4083
4083
|
/* @__PURE__ */ i(oe, { d: B === "up" ? "m4.5 15.75 7.5-7.5 7.5 7.5" : "m19.5 8.25-7.5 7.5-7.5-7.5", size: 15, sw: 2 }),
|
|
4084
4084
|
"Now playing"
|
|
4085
4085
|
] }) });
|
|
4086
|
-
return /* @__PURE__ */
|
|
4086
|
+
return /* @__PURE__ */ h("div", { ref: k, "data-tx-feed": "1", className: `txfeed${w ? " txfeed--desk" : ""}${D && !N ? " is-find" : ""}`, children: [
|
|
4087
4087
|
/* @__PURE__ */ i(Ko, { thumbRef: V }),
|
|
4088
4088
|
j && Z === -1 && G("up"),
|
|
4089
4089
|
e.map((B, X) => {
|
|
4090
4090
|
var ie;
|
|
4091
4091
|
const y = j && X === L, R = S && X === L, fe = !!d && d === B.id, H = P && !B.text.toLowerCase().includes(P) && !(b && ((ie = B.translations[b]) != null && ie.toLowerCase().includes(P))) ? 0.22 : !S || X <= L || fe ? 1 : 0.38, me = m ? () => n.playRow(X) : c && l ? () => {
|
|
4092
4092
|
j && !y && n.seekRow(X), l(B);
|
|
4093
|
-
} : j && y ? void 0 : () => n.playRow(X), q = m ? null : el(B, r, s), ve = !!q && (q.script > 0 || q.manual), Ce = w && !!a && C === B.id && !!q && !ve, He = Os(t, B.speaker), Ae = Cs(t, B.speaker), Ue = Ae.lane,
|
|
4094
|
-
return /* @__PURE__ */
|
|
4095
|
-
/* @__PURE__ */
|
|
4093
|
+
} : j && y ? void 0 : () => n.playRow(X), q = m ? null : el(B, r, s), ve = !!q && (q.script > 0 || q.manual), Ce = w && !!a && C === B.id && !!q && !ve, He = Os(t, B.speaker), Ae = Cs(t, B.speaker), Ue = Ae.lane, he = b && B.translations[b] && B.language !== b ? B.translations[b] : null, Re = bi(e, X, b), K = R && !E && re ? Mi(Re.map((de) => ({ t: de.text, sp: " " })), re) : null;
|
|
4094
|
+
return /* @__PURE__ */ h("div", { "data-tx-row": X, "data-sentence": B.sentenceId, className: `txline${W ? " txline--warm" : ""}${fe ? " txline--fixing" : ""}`, "aria-current": fe || void 0, style: { opacity: H }, onClick: me, onMouseEnter: w && a ? () => ue(B.id) : void 0, onMouseLeave: w && a ? () => ue(null) : void 0, children: [
|
|
4095
|
+
/* @__PURE__ */ h("div", { className: "txline__meta", children: [
|
|
4096
4096
|
/* @__PURE__ */ i("span", { className: "txline__at", children: Lt(B.start) }),
|
|
4097
|
-
f && B.speaker >= 0 && /* @__PURE__ */
|
|
4097
|
+
f && B.speaker >= 0 && /* @__PURE__ */ h(_e, { children: [
|
|
4098
4098
|
/* @__PURE__ */ i("div", { className: `lanechip bg-lane-${Ue}`, style: Ae.soft ? { background: Ae.soft, color: Ae.fg } : void 0, children: mi(t, B.speaker) }),
|
|
4099
4099
|
/* @__PURE__ */ i("span", { className: `txline__who lane-${Ue}`, style: Ae.fg ? { color: Ae.fg } : void 0, children: He }),
|
|
4100
4100
|
Ae.hasVoice && /* @__PURE__ */ i(Ii, { color: Ae.fg ?? `var(--lane-${Ue})` })
|
|
4101
4101
|
] }),
|
|
4102
4102
|
y && /* @__PURE__ */ i("span", { title: "Playing", style: { flex: "none", display: "inline-flex", alignItems: "center" }, children: /* @__PURE__ */ i(oe, { d: J.headphones, size: w ? 15 : 14, sw: 1.6, stroke: f && B.speaker >= 0 ? Ae.fg ?? `var(--lane-${Ue})` : "var(--ink-45)" }) }),
|
|
4103
|
-
q &&
|
|
4103
|
+
q && g && /* @__PURE__ */ i(tl, { f: q, desk: w, onOpen: a ? () => a(B, !0) : void 0 }),
|
|
4104
4104
|
Ce && /* @__PURE__ */ i(nl, { alone: !0, onOpen: () => a == null ? void 0 : a(B, !1) })
|
|
4105
4105
|
] }),
|
|
4106
4106
|
/* @__PURE__ */ i("div", { className: "txline__text", children: Re.map((de, ce) => {
|
|
4107
|
-
const Ne = `${de.seq}:${de.idx}`, je = wo(de.prob), Y = R && te, U = Y && (E ? $ >= de.start && ($ < de.end || ce === Re.length - 1 || $ < Re[ce + 1].start) : ce === K), F = Y && !U && (E ? de.start > $ : K != null && ce > K), ee = !
|
|
4108
|
-
return /* @__PURE__ */
|
|
4107
|
+
const Ne = `${de.seq}:${de.idx}`, je = wo(de.prob), Y = R && te, U = Y && (E ? $ >= de.start && ($ < de.end || ce === Re.length - 1 || $ < Re[ce + 1].start) : ce === K), F = Y && !U && (E ? de.start > $ : K != null && ce > K), ee = !he && !m && (!!(s != null && s.has(Ne)) || !!de.script), Me = !he && !m && u && !!je && !ee, be = Me ? je === "low" ? "var(--conf-low-half)" : "var(--conf-mid-half)" : null, Te = ee ? "var(--brand)" : F ? "var(--ink-40)" : be ?? "var(--ink-96)";
|
|
4108
|
+
return /* @__PURE__ */ h("span", { children: [
|
|
4109
4109
|
/* @__PURE__ */ i(
|
|
4110
4110
|
"span",
|
|
4111
4111
|
{
|
|
4112
4112
|
className: "txw",
|
|
4113
|
-
title: o && !
|
|
4114
|
-
onClick: o && !
|
|
4113
|
+
title: o && !he ? c ? "Correct this word" : y && j && n.seekWord ? "Play from this word" : "Play from this line" : y ? "" : "Play from this line",
|
|
4114
|
+
onClick: o && !he ? (ze) => {
|
|
4115
4115
|
var xe;
|
|
4116
4116
|
if (ze.stopPropagation(), c) {
|
|
4117
4117
|
o(B, de);
|
|
@@ -4123,7 +4123,7 @@ function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a,
|
|
|
4123
4123
|
}
|
|
4124
4124
|
n.playRow(X);
|
|
4125
4125
|
} : void 0,
|
|
4126
|
-
style: { color: Te, opacity: F ? 0.45 : 1, fontWeight: 300, cursor: o && !
|
|
4126
|
+
style: { color: Te, opacity: F ? 0.45 : 1, fontWeight: 300, cursor: o && !he ? c || !y || !j || n.seekWord ? "pointer" : "default" : y ? "default" : "pointer", textShadow: U ? "0 0 2px currentColor, 0 0 4px currentColor" : "none", textDecorationLine: Me || ee ? "underline" : "none", textDecorationStyle: ee ? "solid" : "dotted", textDecorationColor: ee ? "var(--brand)" : be ?? "currentColor", textDecorationThickness: Me || ee ? "1.5px" : void 0, textUnderlineOffset: Me || ee ? "3px" : void 0 },
|
|
4127
4127
|
children: de.text
|
|
4128
4128
|
}
|
|
4129
4129
|
),
|
|
@@ -4132,7 +4132,7 @@ function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a,
|
|
|
4132
4132
|
}) })
|
|
4133
4133
|
] }, B.id);
|
|
4134
4134
|
}),
|
|
4135
|
-
N ? /* @__PURE__ */ i("div", { className: "txtail txtail--wave", title: "Still transcribing", children: /* @__PURE__ */
|
|
4135
|
+
N ? /* @__PURE__ */ i("div", { className: "txtail txtail--wave", title: "Still transcribing", children: /* @__PURE__ */ h("span", { className: "eq3", "aria-hidden": "true", children: [
|
|
4136
4136
|
/* @__PURE__ */ i("span", {}),
|
|
4137
4137
|
/* @__PURE__ */ i("span", {}),
|
|
4138
4138
|
/* @__PURE__ */ i("span", {})
|
|
@@ -4141,13 +4141,13 @@ function ql({ model: t, rows: e, player: n, fixed: s, applied: r, onFixOpen: a,
|
|
|
4141
4141
|
] });
|
|
4142
4142
|
}
|
|
4143
4143
|
function Kl({ open: t, q: e, onQ: n, onClose: s, hits: r, desk: a, inline: o, flash: l }) {
|
|
4144
|
-
return /* @__PURE__ */ i("div", { className: o ? "searchbar searchbar--inline" : `searchbar searchbar--float${a ? " searchbar--desk" : ""}${t ? "" : " is-hidden"}`, children: /* @__PURE__ */
|
|
4144
|
+
return /* @__PURE__ */ i("div", { className: o ? "searchbar searchbar--inline" : `searchbar searchbar--float${a ? " searchbar--desk" : ""}${t ? "" : " is-hidden"}`, children: /* @__PURE__ */ h("div", { children: [
|
|
4145
4145
|
/* @__PURE__ */ i(oe, { d: J.search, size: 16, sw: 1.7, style: { color: "var(--ink-45)", flex: "none" } }),
|
|
4146
4146
|
/* @__PURE__ */ i("input", { value: e, onChange: (c) => n(c.target.value), onKeyDown: (c) => {
|
|
4147
4147
|
c.key === "Escape" && (c.stopPropagation(), e ? n("") : s());
|
|
4148
4148
|
}, placeholder: "Search this transcript" }),
|
|
4149
4149
|
o && l && /* @__PURE__ */ i("span", { className: "searchbar__flash", children: l }),
|
|
4150
|
-
e.trim() && /* @__PURE__ */
|
|
4150
|
+
e.trim() && /* @__PURE__ */ h("span", { className: "count", children: [
|
|
4151
4151
|
r,
|
|
4152
4152
|
" found"
|
|
4153
4153
|
] }),
|
|
@@ -4165,14 +4165,14 @@ function Jl(t, e, n, s, r) {
|
|
|
4165
4165
|
}, [e, d]), _(() => {
|
|
4166
4166
|
const u = t.current;
|
|
4167
4167
|
if (!u) return;
|
|
4168
|
-
let
|
|
4168
|
+
let g = u.scrollTop, M = 0, p = 0;
|
|
4169
4169
|
const N = () => {
|
|
4170
4170
|
p = Date.now() + 1500;
|
|
4171
4171
|
}, w = (m) => {
|
|
4172
4172
|
m.buttons && N();
|
|
4173
4173
|
}, k = () => {
|
|
4174
|
-
const m = u.scrollTop, f = m -
|
|
4175
|
-
if (
|
|
4174
|
+
const m = u.scrollTop, f = m - g;
|
|
4175
|
+
if (g = m, Date.now() > p) {
|
|
4176
4176
|
M = 0;
|
|
4177
4177
|
return;
|
|
4178
4178
|
}
|
|
@@ -4240,16 +4240,16 @@ function nc(t) {
|
|
|
4240
4240
|
for (let L = 236; a.length < r; L ^= 253) o(L, 8);
|
|
4241
4241
|
const l = [];
|
|
4242
4242
|
for (let L = 0; L < a.length; L += 8) l.push(a.slice(L, L + 8).reduce((z, E) => z << 1 | E, 0));
|
|
4243
|
-
const c = Xt.blocks[n], d = Xt.perBlock[n], u = Math.floor(xi(n) / 8),
|
|
4243
|
+
const c = Xt.blocks[n], d = Xt.perBlock[n], u = Math.floor(xi(n) / 8), g = c - u % c, M = Math.floor(u / c), p = [], N = Xl(d);
|
|
4244
4244
|
for (let L = 0, z = 0; L < c; L++) {
|
|
4245
|
-
const E = l.slice(z, z + M - d + (L <
|
|
4245
|
+
const E = l.slice(z, z + M - d + (L < g ? 0 : 1));
|
|
4246
4246
|
z += E.length;
|
|
4247
4247
|
const re = ec(E, N);
|
|
4248
|
-
L <
|
|
4248
|
+
L < g && E.push(0), p.push(E.concat(re));
|
|
4249
4249
|
}
|
|
4250
4250
|
const w = [];
|
|
4251
4251
|
for (let L = 0; L < p[0].length; L++) p.forEach((z, E) => {
|
|
4252
|
-
(L !== M - d || E >=
|
|
4252
|
+
(L !== M - d || E >= g) && w.push(z[L]);
|
|
4253
4253
|
});
|
|
4254
4254
|
const k = Array.from({ length: s }, () => new Array(s).fill(!1)), m = Array.from({ length: s }, () => new Array(s).fill(!1)), f = (L, z, E) => {
|
|
4255
4255
|
k[z][L] = E, m[z][L] = !0;
|
|
@@ -4413,7 +4413,7 @@ function Ln({ pos: t, interactive: e, axis: n = "x" }) {
|
|
|
4413
4413
|
const d = a(c);
|
|
4414
4414
|
r(null), t.onSeek(d);
|
|
4415
4415
|
}, l = s != null ? s * 100 : t.pct;
|
|
4416
|
-
return /* @__PURE__ */
|
|
4416
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
4417
4417
|
/* @__PURE__ */ i("span", { className: `gfull__t${e ? " gfull__t--at" : ""}`, children: s != null ? t.labelAt(s) : t.atLabel }),
|
|
4418
4418
|
/* @__PURE__ */ i(
|
|
4419
4419
|
"div",
|
|
@@ -4433,7 +4433,7 @@ function Ln({ pos: t, interactive: e, axis: n = "x" }) {
|
|
|
4433
4433
|
} : void 0,
|
|
4434
4434
|
onPointerUp: e ? o : void 0,
|
|
4435
4435
|
onPointerCancel: e ? () => r(null) : void 0,
|
|
4436
|
-
children: /* @__PURE__ */
|
|
4436
|
+
children: /* @__PURE__ */ h("div", { className: `gfull__track${t.readyFrac != null ? " gfull__track--part" : ""}`, children: [
|
|
4437
4437
|
t.readyFrac != null && /* @__PURE__ */ i("div", { className: "gfull__ready", style: { width: `${Math.min(100, t.readyFrac * 100)}%` } }),
|
|
4438
4438
|
/* @__PURE__ */ i("div", { style: { width: `${l}%`, background: (s == null ? t.atEdge : t.edgeFrac != null && s >= t.edgeFrac) ? "#ec634d" : "#55abe5", transition: s != null ? "none" : void 0 } }),
|
|
4439
4439
|
/* @__PURE__ */ i("i", { style: { left: `${l}%`, transition: s != null ? "none" : void 0 } })
|
|
@@ -4452,8 +4452,8 @@ function Vc({ pos: t }) {
|
|
|
4452
4452
|
const c = s(l);
|
|
4453
4453
|
n(null), t.onSeek(c);
|
|
4454
4454
|
}, a = e != null ? e * 100 : t.pct, o = e != null ? "none" : void 0;
|
|
4455
|
-
return /* @__PURE__ */
|
|
4456
|
-
/* @__PURE__ */
|
|
4455
|
+
return /* @__PURE__ */ h("div", { className: "gaseek", children: [
|
|
4456
|
+
/* @__PURE__ */ h(
|
|
4457
4457
|
"div",
|
|
4458
4458
|
{
|
|
4459
4459
|
className: "gaseek__bar",
|
|
@@ -4478,14 +4478,14 @@ function Vc({ pos: t }) {
|
|
|
4478
4478
|
]
|
|
4479
4479
|
}
|
|
4480
4480
|
),
|
|
4481
|
-
/* @__PURE__ */
|
|
4481
|
+
/* @__PURE__ */ h("div", { className: "gaseek__labels", children: [
|
|
4482
4482
|
/* @__PURE__ */ i("span", { className: "gaseek__t", children: e != null ? t.labelAt(e) : t.atLabel }),
|
|
4483
4483
|
/* @__PURE__ */ i("span", { className: "gaseek__t gaseek__end", children: t.endLabel })
|
|
4484
4484
|
] })
|
|
4485
4485
|
] });
|
|
4486
4486
|
}
|
|
4487
4487
|
function kn({ t, mini: e }) {
|
|
4488
|
-
return /* @__PURE__ */
|
|
4488
|
+
return /* @__PURE__ */ h("div", { className: "gfull__transport", children: [
|
|
4489
4489
|
/* @__PURE__ */ i("button", { type: "button", className: "gfull__step", "aria-label": "Previous line", title: "Previous line", style: { opacity: t.prevOn ? 1 : 0.3 }, onClick: t.onPrev, children: /* @__PURE__ */ i(oe, { d: J.chevronLeft, size: e ? 13 : 16, sw: e ? 1.8 : 1.9 }) }),
|
|
4490
4490
|
/* @__PURE__ */ i(
|
|
4491
4491
|
"button",
|
|
@@ -4504,9 +4504,9 @@ function kn({ t, mini: e }) {
|
|
|
4504
4504
|
] });
|
|
4505
4505
|
}
|
|
4506
4506
|
function Ls({ live: t, mini: e, desk: n, pct: s, mark: r }) {
|
|
4507
|
-
return /* @__PURE__ */
|
|
4507
|
+
return /* @__PURE__ */ h("div", { className: `gfull__brand${r ? " gfull__brand--mark" : ""}`, children: [
|
|
4508
4508
|
/* @__PURE__ */ i("a", { href: ri, target: "_blank", rel: "noopener", style: { display: "block", lineHeight: 0 }, "aria-label": "VocalStack", title: "VocalStack", children: r ? /* @__PURE__ */ i(ii, { dark: !0, size: 22 }) : /* @__PURE__ */ i(In, { dark: !0, link: !1, height: e ? 11 : n ? 18 : 15 }) }),
|
|
4509
|
-
t && /* @__PURE__ */
|
|
4509
|
+
t && /* @__PURE__ */ h("span", { className: "gfull__live", children: [
|
|
4510
4510
|
/* @__PURE__ */ i("i", {}),
|
|
4511
4511
|
"LIVE"
|
|
4512
4512
|
] }),
|
|
@@ -4517,12 +4517,12 @@ function Si({ v: t, size: e }) {
|
|
|
4517
4517
|
return /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", "aria-label": "Voices", title: t.title, disabled: !t.on, style: { opacity: t.on ? 1 : 0.45, cursor: t.on ? "pointer" : "default" }, onClick: t.on ? t.onClick : void 0, children: /* @__PURE__ */ i(oe, { d: J.headphones, size: e, sw: 1.6 }) });
|
|
4518
4518
|
}
|
|
4519
4519
|
function oc({ pos: t, transport: e, chip: n, voices: s, onShare: r, onFull: a, copied: o }) {
|
|
4520
|
-
return /* @__PURE__ */
|
|
4520
|
+
return /* @__PURE__ */ h("div", { className: "gmini", "data-theme": "dark", children: [
|
|
4521
4521
|
/* @__PURE__ */ i("div", { className: "gmini__shade", "aria-hidden": "true" }),
|
|
4522
4522
|
/* @__PURE__ */ i("div", { className: "gmini__top", children: /* @__PURE__ */ i(Ls, { live: t.live, mini: !0 }) }),
|
|
4523
|
-
/* @__PURE__ */
|
|
4523
|
+
/* @__PURE__ */ h("div", { className: "gmini__foot", children: [
|
|
4524
4524
|
/* @__PURE__ */ i("div", { className: "gmini__row", children: /* @__PURE__ */ i(Ln, { pos: t, interactive: !0 }) }),
|
|
4525
|
-
/* @__PURE__ */
|
|
4525
|
+
/* @__PURE__ */ h("div", { className: "gmini__row gmini__row--ctl", children: [
|
|
4526
4526
|
/* @__PURE__ */ i(kn, { t: e, mini: !0 }),
|
|
4527
4527
|
/* @__PURE__ */ i("span", { style: { flex: 1 } }),
|
|
4528
4528
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: n }),
|
|
@@ -4537,7 +4537,7 @@ function oc({ pos: t, transport: e, chip: n, voices: s, onShare: r, onFull: a, c
|
|
|
4537
4537
|
] });
|
|
4538
4538
|
}
|
|
4539
4539
|
const lc = { color: "rgba(255,255,255,.4)" };
|
|
4540
|
-
function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title: r, desk: a, pos: o, sub: l, wait: c, pct: d, mute: u, cc:
|
|
4540
|
+
function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title: r, desk: a, pos: o, sub: l, wait: c, pct: d, mute: u, cc: g, ad: M, chip: p, transport: N, picker: w, sheet: k, voices: m, voicesBtn: f, sheetOpen: O, onShare: D, onSettings: b, paused: W, copied: A, onTouch: te, onClose: j }) {
|
|
4541
4541
|
const [S, $] = I(() => !!os());
|
|
4542
4542
|
_(() => {
|
|
4543
4543
|
const K = () => $(!!os());
|
|
@@ -4633,42 +4633,42 @@ function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title:
|
|
|
4633
4633
|
me(!0), window.clearTimeout(q.current), q.current = window.setTimeout(() => me(!1), 1800);
|
|
4634
4634
|
}, () => {
|
|
4635
4635
|
});
|
|
4636
|
-
}, Ae = Le && (W == null ? void 0 : W.share) && /* @__PURE__ */
|
|
4636
|
+
}, Ae = Le && (W == null ? void 0 : W.share) && /* @__PURE__ */ h("div", { className: "gfull__sharecard", onPointerDown: (K) => K.stopPropagation(), onClick: (K) => K.stopPropagation(), children: [
|
|
4637
4637
|
Ce && /* @__PURE__ */ i("div", { className: "gfull__shareqr", role: "img", "aria-label": "QR code for this link", style: { backgroundImage: `url("${Ce}")` } }),
|
|
4638
|
-
/* @__PURE__ */
|
|
4638
|
+
/* @__PURE__ */ h("div", { className: "gfull__sharebody", children: [
|
|
4639
4639
|
/* @__PURE__ */ i("div", { className: "gfull__shareeyebrow", children: "SHARE THIS MOMENT" }),
|
|
4640
|
-
/* @__PURE__ */
|
|
4640
|
+
/* @__PURE__ */ h("label", { className: "gfull__shareat", children: [
|
|
4641
4641
|
/* @__PURE__ */ i("input", { type: "checkbox", checked: R, onChange: (K) => fe(K.target.checked), disabled: W.share.at < 1 }),
|
|
4642
4642
|
"Start at ",
|
|
4643
4643
|
Lt(Math.floor(W.share.at))
|
|
4644
4644
|
] }),
|
|
4645
4645
|
/* @__PURE__ */ i("div", { className: "gfull__shareurl", children: /* @__PURE__ */ i("span", { children: ve.replace(/^https?:\/\//, "") }) }),
|
|
4646
|
-
/* @__PURE__ */
|
|
4647
|
-
/* @__PURE__ */
|
|
4646
|
+
/* @__PURE__ */ h("div", { className: "gfull__shareacts", children: [
|
|
4647
|
+
/* @__PURE__ */ h("button", { type: "button", className: "gfull__sharebtn gfull__sharebtn--main", onClick: He, children: [
|
|
4648
4648
|
/* @__PURE__ */ i(oe, { d: H ? J.check : J.copy, size: 14, sw: 1.8 }),
|
|
4649
4649
|
H ? "Copied" : "Copy link"
|
|
4650
4650
|
] }),
|
|
4651
|
-
/* @__PURE__ */
|
|
4651
|
+
/* @__PURE__ */ h("button", { type: "button", className: "gfull__sharebtn", onClick: () => Ds(ve, r), children: [
|
|
4652
4652
|
/* @__PURE__ */ i(oe, { d: J.share, size: 14, sw: 1.6 }),
|
|
4653
4653
|
"Share"
|
|
4654
4654
|
] })
|
|
4655
4655
|
] })
|
|
4656
4656
|
] })
|
|
4657
|
-
] }), Ue = (K, ie, de, ce, Ne, je = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: K, "aria-label": K, onClick: ce, children: /* @__PURE__ */ i(oe, { d: ie, size: (Le ? 20 : Se ? 15 : 18) + je, sw: de, style: Ne }) }),
|
|
4657
|
+
] }), Ue = (K, ie, de, ce, Ne, je = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: K, "aria-label": K, onClick: ce, children: /* @__PURE__ */ i(oe, { d: ie, size: (Le ? 20 : Se ? 15 : 18) + je, sw: de, style: Ne }) }), he = /* @__PURE__ */ h("div", { className: "gfull__acts", children: [
|
|
4658
4658
|
f && /* @__PURE__ */ i(Si, { v: f, size: Le ? 20 : Se ? 15 : 18 }),
|
|
4659
4659
|
D && Ue("Share", J.share, 1.6, D),
|
|
4660
4660
|
Xr() && !e && Ue(S ? "Exit full screen" : "Full screen", S ? rc : Di, 1.7, () => wn(!S)),
|
|
4661
4661
|
j && Ue("Close player", J.close, 1.7, j)
|
|
4662
|
-
] }), Re = (u ||
|
|
4662
|
+
] }), Re = (u || g || b) && /* @__PURE__ */ h("div", { className: "gfull__top", children: [
|
|
4663
4663
|
u && Ue(u.muted ? "Unmute" : "Mute", u.muted ? J.volumeOff : J.volume, 1.6, u.onToggle),
|
|
4664
|
-
|
|
4664
|
+
g && Ue(g.on ? "Hide subtitles" : "Show subtitles", g.on ? J.cc : J.ccOff, 1.7, g.onToggle, void 0, 4),
|
|
4665
4665
|
b && Ue("Settings", J.cog, 1.6, b)
|
|
4666
4666
|
] });
|
|
4667
|
-
return /* @__PURE__ */
|
|
4667
|
+
return /* @__PURE__ */ h(
|
|
4668
4668
|
"div",
|
|
4669
4669
|
{
|
|
4670
4670
|
ref: we,
|
|
4671
|
-
className: `gfull${Le ? " gfull--desk" : ""}${Se ? " gfull--mini" : ""}${P ? " gfull--swipe" : ""}${M ? " gfull--ad" : ""}${E ? " gfull--calm" : ""}`,
|
|
4671
|
+
className: `gfull${Le ? " gfull--desk" : ""}${Se ? " gfull--mini" : ""}${ye ? " gfull--small" : ""}${P ? " gfull--swipe" : ""}${M ? " gfull--ad" : ""}${E ? " gfull--calm" : ""}`,
|
|
4672
4672
|
"data-theme": "dark",
|
|
4673
4673
|
role: "dialog",
|
|
4674
4674
|
"aria-label": r,
|
|
@@ -4681,15 +4681,15 @@ function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title:
|
|
|
4681
4681
|
ue.current && (ue.current = !1, K.stopPropagation(), K.preventDefault());
|
|
4682
4682
|
},
|
|
4683
4683
|
children: [
|
|
4684
|
-
P && Z && /* @__PURE__ */
|
|
4684
|
+
P && Z && /* @__PURE__ */ h("div", { className: "gfull__swipe", "aria-live": "polite", children: [
|
|
4685
4685
|
/* @__PURE__ */ i(oe, { d: "m4.5 15.75 7.5-7.5 7.5 7.5", size: 14, sw: 2 }),
|
|
4686
4686
|
"Swipe up for full screen"
|
|
4687
4687
|
] }),
|
|
4688
|
-
/* @__PURE__ */
|
|
4688
|
+
/* @__PURE__ */ h("div", { className: `gfull__frame${B ? " gfull__frame--land" : ""}`, children: [
|
|
4689
4689
|
s,
|
|
4690
4690
|
/* @__PURE__ */ i("div", { className: "gfull__shade", "aria-hidden": "true" }),
|
|
4691
|
-
W && !M &&
|
|
4692
|
-
/* @__PURE__ */
|
|
4691
|
+
W && !M && /* @__PURE__ */ h("div", { className: `gfull__pausedinfo${N.playing ? "" : " gfull__pausedinfo--on"}`, "aria-hidden": N.playing, children: [
|
|
4692
|
+
/* @__PURE__ */ h("div", { className: "gfull__pausedtext", children: [
|
|
4693
4693
|
/* @__PURE__ */ i("div", { className: "gfull__pausedtitle", children: W.title }),
|
|
4694
4694
|
W.summary && /* @__PURE__ */ i("div", { className: "gfull__pausedsum", children: W.summary })
|
|
4695
4695
|
] }),
|
|
@@ -4697,13 +4697,13 @@ function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title:
|
|
|
4697
4697
|
] }),
|
|
4698
4698
|
Re,
|
|
4699
4699
|
A,
|
|
4700
|
-
c ? typeof c == "string" ? /* @__PURE__ */ i("div", { className: "gfull__sub", "aria-live": "polite", children: /* @__PURE__ */
|
|
4700
|
+
c ? typeof c == "string" ? /* @__PURE__ */ i("div", { className: "gfull__sub", "aria-live": "polite", children: /* @__PURE__ */ h("div", { className: "gfull__wait", children: [
|
|
4701
4701
|
/* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }),
|
|
4702
4702
|
c
|
|
4703
|
-
] }) }) : /* @__PURE__ */ i("div", { className: "gfull__sub", children: c }) : l && /* @__PURE__ */ i("div", { className: "gfull__sub", children: /* @__PURE__ */
|
|
4704
|
-
/* @__PURE__ */ i("div", { className: "gfull__subback", "aria-hidden": "true", children: /* @__PURE__ */
|
|
4705
|
-
l.who && /* @__PURE__ */
|
|
4706
|
-
/* @__PURE__ */
|
|
4703
|
+
] }) }) : /* @__PURE__ */ i("div", { className: "gfull__sub", children: c }) : l && /* @__PURE__ */ i("div", { className: "gfull__sub", children: /* @__PURE__ */ h("div", { ref: X, children: [
|
|
4704
|
+
/* @__PURE__ */ i("div", { className: "gfull__subback", "aria-hidden": "true", children: /* @__PURE__ */ h("span", { children: [
|
|
4705
|
+
l.who && /* @__PURE__ */ h(_e, { children: [
|
|
4706
|
+
/* @__PURE__ */ h("b", { children: [
|
|
4707
4707
|
l.who,
|
|
4708
4708
|
":"
|
|
4709
4709
|
] }),
|
|
@@ -4711,41 +4711,41 @@ function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title:
|
|
|
4711
4711
|
] }),
|
|
4712
4712
|
l.words.map((K) => K.t + K.sp).join("")
|
|
4713
4713
|
] }) }),
|
|
4714
|
-
/* @__PURE__ */
|
|
4715
|
-
l.who && /* @__PURE__ */
|
|
4716
|
-
/* @__PURE__ */
|
|
4714
|
+
/* @__PURE__ */ h("span", { children: [
|
|
4715
|
+
l.who && /* @__PURE__ */ h(_e, { children: [
|
|
4716
|
+
/* @__PURE__ */ h("b", { style: { color: l.color }, children: [
|
|
4717
4717
|
l.who,
|
|
4718
4718
|
":"
|
|
4719
4719
|
] }),
|
|
4720
4720
|
" "
|
|
4721
4721
|
] }),
|
|
4722
|
-
l.words.map((K, ie) => /* @__PURE__ */
|
|
4722
|
+
l.words.map((K, ie) => /* @__PURE__ */ h("span", { "data-said": K.dim ? void 0 : "", "data-at": l.cursor != null && ie <= l.cursor ? "" : void 0, style: K.dim ? lc : void 0, children: [
|
|
4723
4723
|
K.t,
|
|
4724
4724
|
K.sp
|
|
4725
4725
|
] }, ie))
|
|
4726
4726
|
] })
|
|
4727
4727
|
] }) }),
|
|
4728
|
-
/* @__PURE__ */ i("div", { className: `gfull__prog${Le ? "" : " gfull__prog--two"}`, children: Le ? /* @__PURE__ */
|
|
4728
|
+
/* @__PURE__ */ i("div", { className: `gfull__prog${Le ? "" : " gfull__prog--two"}`, children: Le ? /* @__PURE__ */ h(_e, { children: [
|
|
4729
4729
|
/* @__PURE__ */ i(Ls, { live: o.live, desk: !0, pct: d }),
|
|
4730
4730
|
/* @__PURE__ */ i(kn, { t: N }),
|
|
4731
4731
|
/* @__PURE__ */ i(Ln, { pos: o, interactive: !0 }),
|
|
4732
4732
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: p }),
|
|
4733
|
-
|
|
4734
|
-
] }) : Se ? /* @__PURE__ */
|
|
4733
|
+
he
|
|
4734
|
+
] }) : Se ? /* @__PURE__ */ h("div", { className: "gfull__row", children: [
|
|
4735
4735
|
/* @__PURE__ */ i(kn, { t: N, mini: !0 }),
|
|
4736
4736
|
/* @__PURE__ */ i(Ln, { pos: o, interactive: !0 }),
|
|
4737
4737
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: p }),
|
|
4738
|
-
|
|
4739
|
-
] }) : /* @__PURE__ */
|
|
4740
|
-
/* @__PURE__ */
|
|
4738
|
+
he
|
|
4739
|
+
] }) : /* @__PURE__ */ h(_e, { children: [
|
|
4740
|
+
/* @__PURE__ */ h("div", { className: "gfull__row", children: [
|
|
4741
4741
|
/* @__PURE__ */ i(Ls, { live: o.live, pct: d, mark: !0 }),
|
|
4742
4742
|
/* @__PURE__ */ i(Ln, { pos: o, interactive: !0 })
|
|
4743
4743
|
] }),
|
|
4744
|
-
/* @__PURE__ */
|
|
4744
|
+
/* @__PURE__ */ h("div", { className: "gfull__row", children: [
|
|
4745
4745
|
/* @__PURE__ */ i(kn, { t: N }),
|
|
4746
4746
|
/* @__PURE__ */ i("span", { style: { flex: 1 } }),
|
|
4747
4747
|
/* @__PURE__ */ i("div", { className: "gfull__chip", children: p }),
|
|
4748
|
-
|
|
4748
|
+
he
|
|
4749
4749
|
] })
|
|
4750
4750
|
] }) }),
|
|
4751
4751
|
w,
|
|
@@ -4757,17 +4757,17 @@ function Ai({ compact: t = !1, noFull: e = !1, page: n = !0, picture: s, title:
|
|
|
4757
4757
|
);
|
|
4758
4758
|
}
|
|
4759
4759
|
function cc({ dark: t, back: e, home: n, live: s, title: r, badge: a, subline: o, onOptions: l, optionsActive: c }) {
|
|
4760
|
-
return /* @__PURE__ */
|
|
4760
|
+
return /* @__PURE__ */ h("div", { className: "ghead", children: [
|
|
4761
4761
|
e && /* @__PURE__ */ i("button", { type: "button", className: "ghead__back", "aria-label": "Back", title: "Back", onClick: e, children: /* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 19, sw: 1.7 }) }),
|
|
4762
4762
|
s && /* @__PURE__ */ i("span", { className: "mark", children: /* @__PURE__ */ i(ii, { dark: t, size: 30 }) }),
|
|
4763
|
-
/* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0, display: "flex" }, children: n ? /* @__PURE__ */ i("div", { className: "ghead__logo", children: /* @__PURE__ */ i(In, { dark: t, height: 22 }) }) : /* @__PURE__ */
|
|
4764
|
-
/* @__PURE__ */
|
|
4763
|
+
/* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0, display: "flex" }, children: n ? /* @__PURE__ */ i("div", { className: "ghead__logo", children: /* @__PURE__ */ i(In, { dark: t, height: 22 }) }) : /* @__PURE__ */ h("div", { className: "ghead__title", onClick: e, title: e ? "Back" : void 0, style: { cursor: e ? "pointer" : "default" }, children: [
|
|
4764
|
+
/* @__PURE__ */ h("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
|
|
4765
4765
|
/* @__PURE__ */ i("span", { className: "ghead__name", children: r }),
|
|
4766
4766
|
a
|
|
4767
4767
|
] }),
|
|
4768
4768
|
o && /* @__PURE__ */ i("div", { className: "ghead__sub", children: o })
|
|
4769
4769
|
] }) }),
|
|
4770
|
-
/* @__PURE__ */ i(ja, { size: "sm", bordered: !1, variant: c ? "primary" : void 0, onClick: l, label: "Options", children: /* @__PURE__ */
|
|
4770
|
+
/* @__PURE__ */ i(ja, { size: "sm", bordered: !1, variant: c ? "primary" : void 0, onClick: l, label: "Options", children: /* @__PURE__ */ h("svg", { viewBox: "0 0 24 24", width: "19", height: "19", fill: "currentColor", "aria-hidden": "true", children: [
|
|
4771
4771
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "5.5", r: "1.85" }),
|
|
4772
4772
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "1.85" }),
|
|
4773
4773
|
/* @__PURE__ */ i("circle", { cx: "12", cy: "18.5", r: "1.85" })
|
|
@@ -4780,7 +4780,7 @@ function Mc(t) {
|
|
|
4780
4780
|
const e = t.langName;
|
|
4781
4781
|
return t.translateFailed === t.lang ? { kind: "translateFailed", lang: e } : t.voiceFailed ? { kind: "voiceFailed", lang: e } : t.translating ? { kind: "translating", lang: e } : t.starting != null ? { kind: "starting", lang: e, since: t.starting } : t.relang || t.slowLine ? { kind: "voice", lang: e, since: t.lineSince } : null;
|
|
4782
4782
|
}
|
|
4783
|
-
function
|
|
4783
|
+
function gc(t, e) {
|
|
4784
4784
|
const [n, s] = I(null), [r, a] = I(!1);
|
|
4785
4785
|
return _(() => {
|
|
4786
4786
|
if (!t) {
|
|
@@ -4793,7 +4793,7 @@ function hc(t, e) {
|
|
|
4793
4793
|
return () => clearTimeout(l);
|
|
4794
4794
|
}, [t, e]), [r, n];
|
|
4795
4795
|
}
|
|
4796
|
-
const
|
|
4796
|
+
const hc = (t) => `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
4797
4797
|
function fc({ state: t, line: e, onRetry: n, onOriginal: s }) {
|
|
4798
4798
|
const [r, a] = I(() => Date.now());
|
|
4799
4799
|
_(() => {
|
|
@@ -4814,7 +4814,7 @@ function fc({ state: t, line: e, onRetry: n, onOriginal: s }) {
|
|
|
4814
4814
|
translateFailed: "Something went wrong on our side. Try again, or watch with the original sound.",
|
|
4815
4815
|
voiceFailed: "It took too long to start. Try again, or watch with the original sound."
|
|
4816
4816
|
}[t.kind];
|
|
4817
|
-
return /* @__PURE__ */
|
|
4817
|
+
return /* @__PURE__ */ h(
|
|
4818
4818
|
"div",
|
|
4819
4819
|
{
|
|
4820
4820
|
className: `pwait${l ? " pwait--failed" : ""}`,
|
|
@@ -4824,14 +4824,14 @@ function fc({ state: t, line: e, onRetry: n, onOriginal: s }) {
|
|
|
4824
4824
|
onClick: (u) => u.stopPropagation(),
|
|
4825
4825
|
onPointerDown: (u) => u.stopPropagation(),
|
|
4826
4826
|
children: [
|
|
4827
|
-
/* @__PURE__ */
|
|
4827
|
+
/* @__PURE__ */ h("div", { className: "pwait__head", children: [
|
|
4828
4828
|
l ? /* @__PURE__ */ i("div", { className: "pwait__mark", "aria-hidden": "true", children: /* @__PURE__ */ i(oe, { d: J.warnCircle, size: 18, sw: 1.8 }) }) : /* @__PURE__ */ i("div", { className: "pwait__spin", "aria-hidden": "true" }),
|
|
4829
4829
|
/* @__PURE__ */ i("div", { className: "pwait__t", children: c }),
|
|
4830
|
-
!l && o != null && o >= 3 && /* @__PURE__ */ i("div", { className: "pwait__clock", "aria-label": `${o} seconds`, children:
|
|
4830
|
+
!l && o != null && o >= 3 && /* @__PURE__ */ i("div", { className: "pwait__clock", "aria-label": `${o} seconds`, children: hc(o) })
|
|
4831
4831
|
] }),
|
|
4832
4832
|
/* @__PURE__ */ i("div", { className: "pwait__note", children: d }),
|
|
4833
4833
|
!l && /* @__PURE__ */ i("div", { className: "pwait__bar", "aria-hidden": "true", children: /* @__PURE__ */ i("div", {}) }),
|
|
4834
|
-
l && /* @__PURE__ */
|
|
4834
|
+
l && /* @__PURE__ */ h("div", { className: "pwait__acts", children: [
|
|
4835
4835
|
/* @__PURE__ */ i("button", { type: "button", className: "vs-btn vs-btn--primary vs-btn--sm", onClick: n, children: "Try again" }),
|
|
4836
4836
|
/* @__PURE__ */ i("button", { type: "button", className: "vs-btn vs-btn--ghost vs-btn--sm", onClick: s, children: "Watch in the original" })
|
|
4837
4837
|
] }),
|
|
@@ -4849,7 +4849,7 @@ function Ei(t, e, n) {
|
|
|
4849
4849
|
const s = new URL(t ?? As), r = pc(), a = new URL(Nc, s);
|
|
4850
4850
|
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", r);
|
|
4851
4851
|
const o = 480, l = 640, c = Math.max(0, (window.screenX ?? 0) + ((window.outerWidth ?? o) - o) / 2), d = Math.max(0, (window.screenY ?? 0) + ((window.outerHeight ?? l) - l) / 2), u = window.open(a.toString(), "vocalstack-connect", `popup=yes,width=${o},height=${l},left=${Math.round(c)},top=${Math.round(d)}`);
|
|
4852
|
-
return u ? new Promise((
|
|
4852
|
+
return u ? new Promise((g, M) => {
|
|
4853
4853
|
let p = !1;
|
|
4854
4854
|
const N = (m) => {
|
|
4855
4855
|
p || (p = !0, window.removeEventListener("message", w), clearInterval(k), m());
|
|
@@ -4866,15 +4866,15 @@ function Ei(t, e, n) {
|
|
|
4866
4866
|
return;
|
|
4867
4867
|
}
|
|
4868
4868
|
if (f.type === "vocalstack:started" || f.type === "vocalstack:token" || f.type === "vocalstack:found") {
|
|
4869
|
-
N(() =>
|
|
4869
|
+
N(() => g({ transcriptionId: String(f.transcriptionId), recordingId: String(f.recordingId), token: String(f.token), expiresAt: f.expiresAt ?? null }));
|
|
4870
4870
|
return;
|
|
4871
4871
|
}
|
|
4872
4872
|
if (f.type === "vocalstack:connected") {
|
|
4873
|
-
N(() =>
|
|
4873
|
+
N(() => g("connected"));
|
|
4874
4874
|
return;
|
|
4875
4875
|
}
|
|
4876
4876
|
if (f.type === "vocalstack:declined") {
|
|
4877
|
-
N(() =>
|
|
4877
|
+
N(() => g(null));
|
|
4878
4878
|
return;
|
|
4879
4879
|
}
|
|
4880
4880
|
f.type === "vocalstack:error" && N(() => M(new Error(typeof f.message == "string" && f.message ? f.message : "VocalStack could not start this transcription.")));
|
|
@@ -4882,7 +4882,7 @@ function Ei(t, e, n) {
|
|
|
4882
4882
|
};
|
|
4883
4883
|
window.addEventListener("message", w);
|
|
4884
4884
|
const k = setInterval(() => {
|
|
4885
|
-
u.closed && N(() =>
|
|
4885
|
+
u.closed && N(() => g(null));
|
|
4886
4886
|
}, 500);
|
|
4887
4887
|
}) : Promise.reject(new Error("Your browser blocked the VocalStack window. Allow pop-ups for this site and try again."));
|
|
4888
4888
|
}
|
|
@@ -4913,7 +4913,7 @@ const wc = {
|
|
|
4913
4913
|
starting: "Starting the transcription…"
|
|
4914
4914
|
}, Lc = /^(https?:\/\/)?([\w-]+\.)+[a-z]{2,}(\/\S*)?$/i;
|
|
4915
4915
|
function kc({ options: t, onStarted: e, onReplay: n, onClose: s }) {
|
|
4916
|
-
const [r, a] = I(""), [o, l] = I(!1), [c, d] = I(null), [u,
|
|
4916
|
+
const [r, a] = I(""), [o, l] = I(!1), [c, d] = I(null), [u, g] = I(null);
|
|
4917
4917
|
_(() => {
|
|
4918
4918
|
const w = (k) => {
|
|
4919
4919
|
k.key === "Escape" && s();
|
|
@@ -4924,23 +4924,23 @@ function kc({ options: t, onStarted: e, onReplay: n, onClose: s }) {
|
|
|
4924
4924
|
if (!(!p || o)) {
|
|
4925
4925
|
l(!0), d(null);
|
|
4926
4926
|
try {
|
|
4927
|
-
const w = await mc(t.appUrl, /^https?:\/\//i.test(M) ? M : `https://${M}`,
|
|
4927
|
+
const w = await mc(t.appUrl, /^https?:\/\//i.test(M) ? M : `https://${M}`, g);
|
|
4928
4928
|
w && e(w);
|
|
4929
4929
|
} catch (w) {
|
|
4930
4930
|
d(w instanceof Error ? w.message : "Something went wrong. Please try again.");
|
|
4931
4931
|
} finally {
|
|
4932
|
-
l(!1),
|
|
4932
|
+
l(!1), g(null);
|
|
4933
4933
|
}
|
|
4934
4934
|
}
|
|
4935
4935
|
};
|
|
4936
4936
|
return /* @__PURE__ */ i("div", { className: "vsp-end", role: "dialog", "aria-label": "Transcribe another video", onPointerDown: (w) => w.stopPropagation(), onClick: (w) => {
|
|
4937
4937
|
w.stopPropagation(), w.target === w.currentTarget && s();
|
|
4938
|
-
}, children: /* @__PURE__ */
|
|
4938
|
+
}, children: /* @__PURE__ */ h("div", { className: "vsp-end__card", children: [
|
|
4939
4939
|
/* @__PURE__ */ i("button", { type: "button", className: "vsp-end__close", "aria-label": "Close", title: "Close", onClick: s, children: /* @__PURE__ */ i(oe, { d: J.close, size: 16, sw: 1.8 }) }),
|
|
4940
4940
|
/* @__PURE__ */ i("div", { className: "vsp-end__brand", children: /* @__PURE__ */ i(In, { dark: !0, link: !1, height: 16 }) }),
|
|
4941
4941
|
/* @__PURE__ */ i("div", { className: "vsp-end__title", children: t.title ?? "Transcribe and translate any video" }),
|
|
4942
4942
|
/* @__PURE__ */ i("div", { className: "vsp-end__note", children: t.note ?? "Paste a link from YouTube, Vimeo or any page with a video. It plays right here with subtitles and spoken translations." }),
|
|
4943
|
-
/* @__PURE__ */
|
|
4943
|
+
/* @__PURE__ */ h("form", { className: "vsp-end__row", onSubmit: (w) => {
|
|
4944
4944
|
w.preventDefault(), N();
|
|
4945
4945
|
}, children: [
|
|
4946
4946
|
/* @__PURE__ */ i("input", { className: "vsp-end__input", type: "url", inputMode: "url", autoComplete: "off", spellCheck: !1, placeholder: "https://youtube.com/watch?v=…", value: r, onChange: (w) => {
|
|
@@ -4950,9 +4950,9 @@ function kc({ options: t, onStarted: e, onReplay: n, onClose: s }) {
|
|
|
4950
4950
|
] }),
|
|
4951
4951
|
o && /* @__PURE__ */ i("div", { className: "vsp-end__note", role: "status", children: wc[u ?? "checking"] }),
|
|
4952
4952
|
c && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: c }),
|
|
4953
|
-
/* @__PURE__ */
|
|
4953
|
+
/* @__PURE__ */ h("div", { className: "vsp-end__foot", children: [
|
|
4954
4954
|
/* @__PURE__ */ i("span", { children: "Uses your VocalStack account. You'll be asked to sign in if you're not." }),
|
|
4955
|
-
/* @__PURE__ */
|
|
4955
|
+
/* @__PURE__ */ h("button", { type: "button", className: "vsp-end__replay", onClick: n, children: [
|
|
4956
4956
|
/* @__PURE__ */ i(oe, { d: J.uturn, size: 14, sw: 1.8 }),
|
|
4957
4957
|
"Replay"
|
|
4958
4958
|
] })
|
|
@@ -4969,38 +4969,38 @@ function _i(t) {
|
|
|
4969
4969
|
}
|
|
4970
4970
|
const vc = { lang: null, subtitles: !0, speakerLabels: !1, wordHighlight: !0, translateAudio: !0, voices: "cloned", removeBackground: !1, muted: !1 };
|
|
4971
4971
|
function jc(t, e) {
|
|
4972
|
-
const n = Li(), [s, r] =
|
|
4972
|
+
const n = Li(), [s, r] = hi(), [a, o] = I(null), [l, c] = I("main"), d = ys(n, t.lang), u = Ie(() => fi(n, "translation"), [n]), g = (A) => {
|
|
4973
4973
|
e({ lang: A }), r(A);
|
|
4974
|
-
}, M = zs({ open: a === "lang" || a === "settings" && l === "lang", onClose: () => a === "lang" ? o(null) : c("main"), value: t.lang, onSelect:
|
|
4974
|
+
}, M = zs({ open: a === "lang" || a === "settings" && l === "lang", onClose: () => a === "lang" ? o(null) : c("main"), value: t.lang, onSelect: g, languages: u, none: "As spoken", pinned: t.lang ? [t.lang] : [], recent: s, keepOpen: !0 }), p = () => {
|
|
4975
4975
|
o(null), c("main");
|
|
4976
4976
|
}, N = t.lang ? /* @__PURE__ */ i("span", { style: { fontSize: 19, lineHeight: 1 }, children: d.flag }) : /* @__PURE__ */ i(oe, { d: J.langAuto, size: 19, sw: 1.7 }), w = /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", "aria-label": `Language: ${t.lang ? d.label : "As spoken"}`, title: t.lang ? d.label : "As spoken", onClick: (A) => {
|
|
4977
4977
|
A.stopPropagation(), c("main"), o((te) => te === "lang" ? null : "lang");
|
|
4978
|
-
}, children: N }), k = /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), m = /* @__PURE__ */
|
|
4978
|
+
}, children: N }), k = /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), m = /* @__PURE__ */ h("span", { className: "vs-sheet__title", style: { position: "relative" }, children: [
|
|
4979
4979
|
" ",
|
|
4980
|
-
/* @__PURE__ */
|
|
4980
|
+
/* @__PURE__ */ h("button", { type: "button", onClick: () => c("main"), "aria-label": "Back", className: "vsp-idlesheet__back", children: [
|
|
4981
4981
|
/* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 18, sw: 1.8 }),
|
|
4982
4982
|
"Back"
|
|
4983
4983
|
] })
|
|
4984
|
-
] }), f = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, O = (A, te, j) => /* @__PURE__ */
|
|
4985
|
-
/* @__PURE__ */
|
|
4984
|
+
] }), f = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, O = (A, te, j) => /* @__PURE__ */ h("div", { className: "srow", children: [
|
|
4985
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
4986
4986
|
/* @__PURE__ */ i("div", { className: "srow__t", children: A }),
|
|
4987
4987
|
/* @__PURE__ */ i("div", { className: "srow__s", children: te })
|
|
4988
4988
|
] }),
|
|
4989
4989
|
j
|
|
4990
|
-
] }), D = /* @__PURE__ */
|
|
4990
|
+
] }), D = /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
4991
4991
|
/* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children: M.search }),
|
|
4992
4992
|
M.list
|
|
4993
|
-
] }), b = l === "lang" ? D : l === "subs" ? /* @__PURE__ */
|
|
4993
|
+
] }), b = l === "lang" ? D : l === "subs" ? /* @__PURE__ */ h("div", { style: f, children: [
|
|
4994
4994
|
O("Show subtitles", "Captions over the video", /* @__PURE__ */ i(pt, { checked: t.subtitles, onChange: (A) => e({ subtitles: A }), label: "Show subtitles" })),
|
|
4995
4995
|
O("Show speaker labels", "Who is speaking, before each line", /* @__PURE__ */ i(pt, { checked: t.speakerLabels, onChange: (A) => e({ speakerLabels: A }), label: "Show speaker labels" })),
|
|
4996
4996
|
O("Highlight words", "Follow each word as it is spoken", /* @__PURE__ */ i(pt, { checked: t.wordHighlight, onChange: (A) => e({ wordHighlight: A }), label: "Highlight words" }))
|
|
4997
|
-
] }) : l === "audio" ? /* @__PURE__ */
|
|
4997
|
+
] }) : l === "audio" ? /* @__PURE__ */ h("div", { style: f, children: [
|
|
4998
4998
|
O("Translate audio", t.lang ? "Hear the translation read aloud instead of the original speech" : "Pick a language to hear the translation read aloud", /* @__PURE__ */ i(pt, { checked: t.translateAudio && !!t.lang, onChange: (A) => e({ translateAudio: A }), label: "Translate audio", disabled: !t.lang })),
|
|
4999
4999
|
O("Voices", t.voices === "cloned" ? "Each speaker in their own cloned voice, where they agreed to it" : "Synthetic voices matched to each speaker", /* @__PURE__ */ i(cs, { value: t.voices, onChange: (A) => e({ voices: A }), size: "sm", options: [{ value: "synthetic", label: "Synthetic" }, { value: "cloned", label: "Cloned" }] })),
|
|
5000
5000
|
O(jn, "Takes out everything that isn't speech: music, ambience and noise.", /* @__PURE__ */ i(pt, { checked: t.removeBackground, onChange: (A) => e({ removeBackground: A }), label: jn }))
|
|
5001
|
-
] }) : /* @__PURE__ */
|
|
5002
|
-
/* @__PURE__ */
|
|
5003
|
-
/* @__PURE__ */
|
|
5001
|
+
] }) : /* @__PURE__ */ h("div", { style: f, children: [
|
|
5002
|
+
/* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => c("lang"), children: [
|
|
5003
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5004
5004
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Language" }),
|
|
5005
5005
|
/* @__PURE__ */ i("div", { className: "srow__s", children: t.lang ? `Translated to ${d.label}` : "Original language" })
|
|
5006
5006
|
] }),
|
|
@@ -5008,22 +5008,22 @@ function jc(t, e) {
|
|
|
5008
5008
|
k
|
|
5009
5009
|
] }),
|
|
5010
5010
|
/* @__PURE__ */ i("div", { className: "sdiv" }),
|
|
5011
|
-
/* @__PURE__ */
|
|
5012
|
-
/* @__PURE__ */
|
|
5011
|
+
/* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => c("subs"), children: [
|
|
5012
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5013
5013
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Subtitles" }),
|
|
5014
5014
|
/* @__PURE__ */ i("div", { className: "srow__s", children: t.subtitles ? "On · speaker labels and word highlighting" : "Off" })
|
|
5015
5015
|
] }),
|
|
5016
5016
|
k
|
|
5017
5017
|
] }),
|
|
5018
5018
|
/* @__PURE__ */ i("div", { className: "sdiv" }),
|
|
5019
|
-
/* @__PURE__ */
|
|
5020
|
-
/* @__PURE__ */
|
|
5019
|
+
/* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => c("audio"), children: [
|
|
5020
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5021
5021
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Audio" }),
|
|
5022
5022
|
/* @__PURE__ */ i("div", { className: "srow__s", children: t.lang && t.translateAudio ? `Translated, ${t.voices === "cloned" ? "cloned voices" : "synthetic voices"}` : t.removeBackground ? "Original speech, background removed" : "Original sound" })
|
|
5023
5023
|
] }),
|
|
5024
5024
|
k
|
|
5025
5025
|
] })
|
|
5026
|
-
] }), W = /* @__PURE__ */
|
|
5026
|
+
] }), W = /* @__PURE__ */ h(_e, { children: [
|
|
5027
5027
|
/* @__PURE__ */ i($t, { open: a === "lang", onClose: p, title: "LANGUAGE", kind: "picker", sticky: !0, children: /* @__PURE__ */ i(us, { children: D }) }),
|
|
5028
5028
|
/* @__PURE__ */ i($t, { open: a === "settings", onClose: p, title: { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO" }[l], titleNode: l === "main" ? void 0 : m, kind: l === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(us, { children: b }) })
|
|
5029
5029
|
] });
|
|
@@ -5066,8 +5066,8 @@ function Ic(t, e) {
|
|
|
5066
5066
|
}).catch((w) => l(w instanceof Error ? w.message : "Something went wrong. Please try again.")).finally(() => {
|
|
5067
5067
|
s(!1), a(null);
|
|
5068
5068
|
});
|
|
5069
|
-
}, [t, n, e]),
|
|
5070
|
-
return { busy: n, status: r, err: o, connected: c, connect:
|
|
5069
|
+
}, [t, n, e]), g = Xe(() => u({ connect: !0 }), [u]), M = Xe((p, N) => u({ url: p, ask: N }), [u]);
|
|
5070
|
+
return { busy: n, status: r, err: o, connected: c, connect: g, start: M };
|
|
5071
5071
|
}
|
|
5072
5072
|
function Oc(t) {
|
|
5073
5073
|
return /\.(mp4|webm|mov|m4v|ogv|mkv)(\?|#|$)/i.test(t);
|
|
@@ -5079,12 +5079,12 @@ function Cc({ poster: t, src: e }) {
|
|
|
5079
5079
|
const bc = { live: !1, atEdge: !1, edgeFrac: null, pct: 0, atLabel: "0:00", labelAt: () => "0:00", endLabel: "0:00", onSeek: () => {
|
|
5080
5080
|
} };
|
|
5081
5081
|
function ks({ idle: t, poster: e, src: n, title: s, page: r, onAct: a, children: o }) {
|
|
5082
|
-
const l = jc(t.prefs, t.set), c = _i(), d = v(null), [u,
|
|
5082
|
+
const l = jc(t.prefs, t.set), c = _i(), d = v(null), [u, g] = I(!1);
|
|
5083
5083
|
Qt(() => {
|
|
5084
5084
|
var k;
|
|
5085
5085
|
const p = (k = d.current) == null ? void 0 : k.parentElement;
|
|
5086
5086
|
if (!p) return;
|
|
5087
|
-
const N = () =>
|
|
5087
|
+
const N = () => g(p.getBoundingClientRect().width < 560);
|
|
5088
5088
|
if (N(), typeof ResizeObserver > "u") return;
|
|
5089
5089
|
const w = new ResizeObserver(N);
|
|
5090
5090
|
return w.observe(p), () => w.disconnect();
|
|
@@ -5092,15 +5092,15 @@ function ks({ idle: t, poster: e, src: n, title: s, page: r, onAct: a, children:
|
|
|
5092
5092
|
const M = { prevOn: !1, nextOn: !1, onPrev: () => {
|
|
5093
5093
|
}, onNext: () => {
|
|
5094
5094
|
}, playing: !1, playable: !0, playTitle: "Connect to play", onPlay: a };
|
|
5095
|
-
return /* @__PURE__ */
|
|
5095
|
+
return /* @__PURE__ */ h("div", { ref: d, className: `vsp-idleroot${u ? " vsp-idleroot--small" : ""}`, children: [
|
|
5096
5096
|
/* @__PURE__ */ i(Ai, { page: r, picture: /* @__PURE__ */ i(Cc, { poster: e, src: n }), title: s, desk: c, pos: bc, 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: M, picker: l.sheets, sheet: null, voices: null, voicesBtn: null, sheetOpen: l.sheetOpen, onSettings: l.openSettings, onShare: () => Ds(t.shareUrl ?? window.location.href, s), copied: null, onTouch: () => {
|
|
5097
5097
|
} }),
|
|
5098
5098
|
!l.sheetOpen && /* @__PURE__ */ i("div", { className: "vsp-idle", "data-theme": "dark", children: /* @__PURE__ */ i("div", { className: "vsp-idle__box", children: o }) })
|
|
5099
5099
|
] });
|
|
5100
5100
|
}
|
|
5101
5101
|
function Ri({ connect: t, onClick: e, label: n }) {
|
|
5102
|
-
return /* @__PURE__ */
|
|
5103
|
-
/* @__PURE__ */
|
|
5102
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
5103
|
+
/* @__PURE__ */ h("button", { type: "button", className: "vsp-idle__connect", onClick: e, disabled: t.busy, children: [
|
|
5104
5104
|
t.busy ? /* @__PURE__ */ i(at, { size: 18, color: "#050507", track: "rgba(5,5,7,.2)" }) : /* @__PURE__ */ i(oe, { d: J.link, size: 18, sw: 1.8 }),
|
|
5105
5105
|
/* @__PURE__ */ i("span", { children: t.busy ? "Waiting for VocalStack…" : n })
|
|
5106
5106
|
] }),
|
|
@@ -5110,7 +5110,7 @@ function Ri({ connect: t, onClick: e, label: n }) {
|
|
|
5110
5110
|
}
|
|
5111
5111
|
function xc({ idle: t, src: e, ask: n, connect: s, page: r, poster: a = null, onClear: o }) {
|
|
5112
5112
|
const l = () => s.start(e, n);
|
|
5113
|
-
return /* @__PURE__ */
|
|
5113
|
+
return /* @__PURE__ */ h(ks, { idle: t, poster: a, src: e, title: ls(e), page: r, onAct: l, children: [
|
|
5114
5114
|
/* @__PURE__ */ i(Ri, { connect: s, onClick: l, label: s.connected ? "Play with VocalStack" : "Connect to VocalStack" }),
|
|
5115
5115
|
!s.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: s.connected ? `Plays ${ls(e)} with subtitles and spoken translations.` : `Connect to play ${ls(e)} with subtitles and spoken translations.` }),
|
|
5116
5116
|
o && !s.busy && /* @__PURE__ */ i("button", { type: "button", className: "vsp-idle__other", onClick: o, children: "Choose another video" })
|
|
@@ -5122,20 +5122,20 @@ function Dc({ idle: t, connect: e, page: n, poster: s = null, onPick: r }) {
|
|
|
5122
5122
|
const M = /^https?:\/\//i.test(c) ? c : `https://${c}`;
|
|
5123
5123
|
r(M), e.start(M, !1);
|
|
5124
5124
|
};
|
|
5125
|
-
return e.connected ? /* @__PURE__ */
|
|
5125
|
+
return e.connected ? /* @__PURE__ */ h(ks, { idle: t, poster: s, src: null, title: "VocalStack", page: n, onAct: () => {
|
|
5126
5126
|
var M;
|
|
5127
5127
|
d ? u() : (M = l.current) == null || M.focus();
|
|
5128
5128
|
}, children: [
|
|
5129
5129
|
/* @__PURE__ */ i("form", { className: "vsp-idle__form", onSubmit: (M) => {
|
|
5130
5130
|
M.preventDefault(), u();
|
|
5131
|
-
}, children: /* @__PURE__ */
|
|
5131
|
+
}, children: /* @__PURE__ */ h("span", { className: "vsp-idle__field", children: [
|
|
5132
5132
|
/* @__PURE__ */ i(oe, { d: J.link, size: 16, sw: 1.8 }),
|
|
5133
5133
|
/* @__PURE__ */ i("input", { ref: l, className: "vsp-idle__input", type: "url", inputMode: "url", enterKeyHint: "go", autoComplete: "off", spellCheck: !1, placeholder: "Paste a video link", value: a, onChange: (M) => o(M.target.value), "aria-label": "Video link", autoFocus: !0 }),
|
|
5134
5134
|
e.busy && /* @__PURE__ */ i(at, { size: 15, color: "#eef0f8", track: "rgba(255,255,255,.2)" })
|
|
5135
5135
|
] }) }),
|
|
5136
5136
|
e.busy ? /* @__PURE__ */ i("div", { className: "vsp-idle__note", role: "status", children: Ui[e.status ?? "checking"] }) : /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: "YouTube, Vimeo, an mp3 or any video link. Press Enter or ▶ to play it here with subtitles and spoken translations." }),
|
|
5137
5137
|
e.err && /* @__PURE__ */ i("div", { className: "vsp-end__err", role: "alert", children: e.err })
|
|
5138
|
-
] }) : /* @__PURE__ */
|
|
5138
|
+
] }) : /* @__PURE__ */ h(ks, { idle: t, poster: s, src: null, title: "VocalStack", page: n, onAct: e.connect, children: [
|
|
5139
5139
|
/* @__PURE__ */ i(Ri, { connect: e, onClick: e.connect, label: "Connect to VocalStack" }),
|
|
5140
5140
|
!e.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: "Connect your VocalStack account to watch any video with subtitles and spoken translations." })
|
|
5141
5141
|
] });
|
|
@@ -5214,9 +5214,9 @@ const Wc = fa(function(e, n) {
|
|
|
5214
5214
|
_(() => {
|
|
5215
5215
|
o != null && o.id && a({ id: o.id, token: e.token });
|
|
5216
5216
|
}, [o == null ? void 0 : o.id]);
|
|
5217
|
-
const [l, c] = I(null), [d, u] = I(() => ({ ...vc, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, C]) => C !== void 0)) })), [
|
|
5217
|
+
const [l, c] = I(null), [d, u] = I(() => ({ ...vc, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, C]) => C !== void 0)) })), [g, M] = I({}), p = { prefs: d, set: (C) => {
|
|
5218
5218
|
u((ue) => ({ ...ue, ...C })), M((ue) => ({ ...ue, ...C }));
|
|
5219
|
-
}, shareUrl: (V = e.shareUrl) == null ? void 0 : V.call(e, null) }, { muted: N, ...w } =
|
|
5219
|
+
}, shareUrl: (V = e.shareUrl) == null ? void 0 : V.call(e, null) }, { muted: N, ...w } = g;
|
|
5220
5220
|
_(() => {
|
|
5221
5221
|
c(null);
|
|
5222
5222
|
}, [e.id, e.src]);
|
|
@@ -5232,8 +5232,8 @@ const Wc = fa(function(e, n) {
|
|
|
5232
5232
|
return _(() => (Jr($ ? re.current : null), () => Jr(null)), [$]), /* @__PURE__ */ i(Oo, { value: j, children: /* @__PURE__ */ i("div", { ref: re, className: `vsp${$ ? " 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: f ? /* @__PURE__ */ i(Dc, { idle: p, connect: E, page: !$, poster: e.poster ?? null, onPick: c }) : m ? /* @__PURE__ */ i(xc, { idle: p, src: k, ask: !l, connect: E, page: !$, poster: e.poster ?? null, onClear: l ? () => c(null) : void 0 }) : r.id ? /* @__PURE__ */ i(Yc, { ...e, initial: { ...e.initial ?? {}, ...w }, startMuted: N === !0, handle: s, id: r.id, api: j, shared: D, gone: b, loadError: W, reread: A, desk: S, dark: (e.mode ?? "video") === "video" || !!e.dark, onStarted: (C) => a({ id: C.transcriptionId, token: null, listen: { transcriptionId: C.transcriptionId, recordingId: C.recordingId, token: C.token } }) }, r.id) : /* @__PURE__ */ i("div", { className: "vsp-gate", "data-theme": "dark", children: /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) }) }) });
|
|
5233
5233
|
});
|
|
5234
5234
|
function Yc(t) {
|
|
5235
|
-
var dr, Mr,
|
|
5236
|
-
const { api: e, shared: n, gone: s, desk: r, dark: a } = t, o = t.id ?? "", l = Ie(() => Ec(t), []), c = (t.mode ?? "video") === "video", d = ((Mr = (dr = n == null ? void 0 : n.job) == null ? void 0 : dr.source) == null ? void 0 : Mr.kind) === "url" ? ms(n.job.source.url) : null, u = c && !(n && !d), [
|
|
5235
|
+
var dr, Mr, gr, hr, fr, Nr, pr, mr, yr, Tr, wr, Lr, kr, vr, jr, zr, Ir, Or, Cr, br, xr, Dr, Sr, Ar;
|
|
5236
|
+
const { api: e, shared: n, gone: s, desk: r, dark: a } = t, o = t.id ?? "", l = Ie(() => Ec(t), []), c = (t.mode ?? "video") === "video", d = ((Mr = (dr = n == null ? void 0 : n.job) == null ? void 0 : dr.source) == null ? void 0 : Mr.kind) === "url" ? ms(n.job.source.url) : null, u = c && !(n && !d), [g, M] = I(t.loadError);
|
|
5237
5237
|
_(() => {
|
|
5238
5238
|
t.loadError && M(t.loadError);
|
|
5239
5239
|
}, [t.loadError]);
|
|
@@ -5273,11 +5273,11 @@ function Yc(t) {
|
|
|
5273
5273
|
onFrame: (T) => {
|
|
5274
5274
|
T.type === "job.progress" && W({ state: T.state, processedS: T.processedS ?? 0, totalS: T.totalS ?? null, segmentsDone: T.segmentsDone ?? 0, segmentsTotal: T.segmentsTotal ?? null, pct: T.pct ?? 0, error: T.error ?? null });
|
|
5275
5275
|
}
|
|
5276
|
-
}),
|
|
5276
|
+
}), he = Ie(() => No(H).filter((T) => !T.suppressed), [H]), Re = Po((n == null ? void 0 : n.job) ?? null), K = ["done", "failed", "stopped"].includes(rs((Re == null ? void 0 : Re.state) ?? ((gr = n == null ? void 0 : n.job) == null ? void 0 : gr.state))), ie = K ? Re : b ?? Re, de = !!b && !["done", "failed", "stopped"].includes(rs(b.state)), ce = v(0);
|
|
5277
5277
|
_(() => {
|
|
5278
5278
|
!K || !de || Date.now() - ce.current < 1e4 || (ce.current = Date.now(), t.reread());
|
|
5279
5279
|
}, [K, de, b == null ? void 0 : b.state, b == null ? void 0 : b.processedS, o]);
|
|
5280
|
-
const Ne = rs((ie == null ? void 0 : ie.state) ?? ((
|
|
5280
|
+
const Ne = rs((ie == null ? void 0 : ie.state) ?? ((hr = n == null ? void 0 : n.job) == null ? void 0 : hr.state)), je = !!P && (Ne === "transcribing" || Ne === "queued"), Y = u && !s && (!n || (je || Ne === "cropping") && he.length === 0), U = je ? (ie == null ? void 0 : ie.pct) ?? 0 : 100, F = $o(n == null ? void 0 : n.job, ie) ?? (ue == null ? void 0 : ue.mediaDurationS) ?? null, ee = ((fr = H.segments.values().next().value) == null ? void 0 : fr.language) ?? (ue == null ? void 0 : ue.spokenLanguage) ?? null, Me = n != null && n.sharedBy ? `Shared by ${n.sharedBy}` : "", be = ((mr = (pr = (Nr = n == null ? void 0 : n.job) == null ? void 0 : Nr.source) == null ? void 0 : pr.name) == null ? void 0 : mr.trim()) || null, Te = n ? ((yr = n.name) == null ? void 0 : yr.trim()) || be : null, ze = !!((Tr = n == null ? void 0 : n.job) != null && Tr.hasAudio), xe = (wr = n == null ? void 0 : n.job) == null ? void 0 : wr.source, Ze = !ze && !!xe && (xe.kind !== "url" || xe.bytes != null) && (Ne === "transcribing" || Ne === "queued" || Ne === "done"), $e = P && (n != null && n.allowDownload) && ze ? ba(e.origin, P, e.cred) : P && (n != null && n.allowDownload) && Ze ? Xn(e.origin, P, "source", e.cred) : null, st = he[he.length - 1], ot = st ? ((Lr = st.words[st.words.length - 1]) == null ? void 0 : Lr.end) ?? st.start : 0, dt = u && je ? Math.max(ot, (ie == null ? void 0 : ie.processedS) ?? 0) : null, We = Hl($e, (ze || Ze) && !!(n != null && n.allowDownload), he, F, Ze ? ((vr = (kr = n == null ? void 0 : n.job) == null ? void 0 : kr.crop) == null ? void 0 : vr.startS) ?? 0 : 0, dt), Pe = ((zr = (jr = n == null ? void 0 : n.job) == null ? void 0 : jr.source) == null ? void 0 : zr.kind) === "url" ? ms(n.job.source.url) : null, lt = Bl(he, F, ((Or = (Ir = n == null ? void 0 : n.job) == null ? void 0 : Ir.crop) == null ? void 0 : Or.startS) ?? 0, dt), Ve = !!Pe, mt = Ve ? lt.player : We, Mt = Li(), Bt = v(null), se = Zl({ forcedVoice: t.voice ?? null, recordingId: P, model: H, rows: he, lenS: F, ended: !!P && !je, cred: e.cred, langs: Mt, srcLang: ee, canTranslate: !!(n != null && n.allowTranslate), pickedLang: Z, setPickedLang: le, side: r && !V ? Gl : void 0, hearOriginal: fe, timed: !!Pe, stockVoices: u && !Oe, stickyPicker: u, pickerBusy: Bt.current }), Ot = v(null);
|
|
5281
5281
|
_(() => {
|
|
5282
5282
|
!P || Ot.current === ne || (Ot.current = ne, ve(ne));
|
|
5283
5283
|
}, [ne, P]);
|
|
@@ -5289,18 +5289,18 @@ function Yc(t) {
|
|
|
5289
5289
|
}
|
|
5290
5290
|
(se.on ? mt : se.player).pause();
|
|
5291
5291
|
}, [se.on, Ve]);
|
|
5292
|
-
const en = Ie(() =>
|
|
5292
|
+
const en = Ie(() => he.filter((T) => T.sentenceId != null).map((T, pe, Ye) => {
|
|
5293
5293
|
var Ge;
|
|
5294
5294
|
return { sid: T.sentenceId, start: T.start, end: ((Ge = Ye[pe + 1]) == null ? void 0 : Ge.start) ?? St(T, T.start, T.start + 4) };
|
|
5295
|
-
}), [
|
|
5295
|
+
}), [he]), vt = lo({ on: Ve && se.on, lines: en, clips: se.clips, t: x.t, playing: x.playing, muted: x.muted }), Et = !!ne && (He || se.relang || se.on && vt.missing != null);
|
|
5296
5296
|
Bt.current = Et ? ne : null, _(() => {
|
|
5297
5297
|
Ve && se.on && vt.sid != null && se.setNear(vt.sid);
|
|
5298
5298
|
}, [vt.sid, Ve, se.on]), $l([mt, se.player], se.sampling);
|
|
5299
5299
|
const it = v(null);
|
|
5300
5300
|
_(() => {
|
|
5301
5301
|
je && !x.playing && it.current && (it.current.scrollTop = it.current.scrollHeight);
|
|
5302
|
-
}, [je,
|
|
5303
|
-
const Cn = Jl(it,
|
|
5302
|
+
}, [je, he.length]);
|
|
5303
|
+
const Cn = Jl(it, he, w, m, k), tn = /* @__PURE__ */ i(Kl, { open: w, q: m, onQ: f, onClose: () => k(!1), hits: Cn, desk: r, inline: r }), Ke = (n == null ? void 0 : n.name) || t.src || o, gt = !!(n != null && n.allowDownload), Ct = !!(n != null && n.allowExport), yt = se.readLang, Tt = yt ? ((Cr = Mt == null ? void 0 : Mt.languages.find((T) => T.code === yt)) == null ? void 0 : Cr.name) ?? yt.toUpperCase() : null, Yt = async () => {
|
|
5304
5304
|
if (P)
|
|
5305
5305
|
try {
|
|
5306
5306
|
if (yt && se.canSpeak) {
|
|
@@ -5318,10 +5318,10 @@ function Yc(t) {
|
|
|
5318
5318
|
}, bt = (T) => {
|
|
5319
5319
|
if (!P) return;
|
|
5320
5320
|
const pe = ps.find((Ge) => Ge.key === T).name, Ye = Tt ? ` in ${Tt}` : "";
|
|
5321
|
-
return Ho(e, P, T, { lang: yt }).then(() => D(je ? `${pe} exported${Ye} for the first ${
|
|
5321
|
+
return Ho(e, P, T, { lang: yt }).then(() => D(je ? `${pe} exported${Ye} for the first ${he.length} segments — the rest is still transcribing.` : `${pe} exported${Ye}.`)).catch((Ge) => {
|
|
5322
5322
|
throw M(kt(Ge)), Ge;
|
|
5323
5323
|
});
|
|
5324
|
-
}, ct = je ? "MORE TO COME…" : "END OF TRANSCRIPT", Ht = je ? "var(--brand)" : "var(--ink-28)", rt = Qo(ie,
|
|
5324
|
+
}, ct = je ? "MORE TO COME…" : "END OF TRANSCRIPT", Ht = je ? "var(--brand)" : "var(--ink-28)", rt = Qo(ie, he.length), jt = x.has && (!se.relang || !!Pe), qe = v(x);
|
|
5325
5325
|
qe.current = x;
|
|
5326
5326
|
const _t = `${ne ?? ""}|${se.on ? "voice" : "source"}`, Vt = v({ key: _t, idx: 0, t: 0, playing: !1, until: 0 });
|
|
5327
5327
|
_(() => {
|
|
@@ -5338,12 +5338,12 @@ function Yc(t) {
|
|
|
5338
5338
|
!x.has || se.relang || (T.until = 0, Math.abs(x.t - T.t) > 0.5 && (x.seekFrac && x.dur > 0 ? x.seekFrac(T.t / x.dur) : x.seekRow(T.idx)), T.playing && !x.playing && (Je.current = !0, x.toggle()));
|
|
5339
5339
|
}
|
|
5340
5340
|
});
|
|
5341
|
-
const
|
|
5341
|
+
const ht = v(!1), Je = v(!1);
|
|
5342
5342
|
u && (li.video = !0);
|
|
5343
5343
|
const [Wt, xt] = I(!1), [nn, bn] = I(!1);
|
|
5344
5344
|
_(() => {
|
|
5345
|
-
if (!u ||
|
|
5346
|
-
|
|
5345
|
+
if (!u || ht.current || !jt || !V || Y || t.autoplay === !1) return;
|
|
5346
|
+
ht.current = !0;
|
|
5347
5347
|
const T = (Ge) => {
|
|
5348
5348
|
qe.current.playing || Je.current || (qe.current.toggle(), Ge > 0 && setTimeout(() => T(Ge - 1), 1500));
|
|
5349
5349
|
}, pe = () => {
|
|
@@ -5382,12 +5382,12 @@ function Yc(t) {
|
|
|
5382
5382
|
const T = setTimeout(() => Q(!0), 180);
|
|
5383
5383
|
return () => clearTimeout(T);
|
|
5384
5384
|
}, [He]);
|
|
5385
|
-
const De = Gt ? Ue : ne, Fe = sl(P, ne,
|
|
5385
|
+
const De = Gt ? Ue : ne, Fe = sl(P, ne, he, Ce), ft = ml(yl(ue), P, se.readLang), Zt = gt || Ct, Pi = (((xr = (br = n == null ? void 0 : n.job) == null ? void 0 : br.crop) == null ? void 0 : xr.startS) ?? 0) + as(x, he), Sn = A === "listen", Dt = Sn && !!Pe, Qi = (T) => {
|
|
5386
5386
|
mt.pause(), se.player.pause(), te(T), T === "read" && V && (Kt(!1), C(!1));
|
|
5387
|
-
}, Ee = se.barChip, Ut = vi(Ee.label), Es = /* @__PURE__ */ i(cs, { value: A, onChange: Qi, bordered: !1, options: dc(Ut, !!Pe) }), Rt = [...Ft ? [{ key: "summary", label: "Summary" }] : [], ...Zt ? [{ key: "export", label: "Export" }] : []], Ys = (T) => /* @__PURE__ */
|
|
5387
|
+
}, Ee = se.barChip, Ut = vi(Ee.label), Es = /* @__PURE__ */ i(cs, { value: A, onChange: Qi, bordered: !1, options: dc(Ut, !!Pe) }), Rt = [...Ft ? [{ key: "summary", label: "Summary" }] : [], ...Zt ? [{ key: "export", label: "Export" }] : []], Ys = (T) => /* @__PURE__ */ h(_e, { children: [
|
|
5388
5388
|
T === "summary" && Ft && /* @__PURE__ */ i(Tl, { s: ft }),
|
|
5389
|
-
T === "export" && /* @__PURE__ */ i(pl, { audio:
|
|
5390
|
-
] }), $i = (T) => /* @__PURE__ */ i(Xo, { index: x.idx, total: Math.max(1,
|
|
5389
|
+
T === "export" && /* @__PURE__ */ i(pl, { audio: gt ? { name: Ke, meta: yt && se.canSpeak || ze ? `MP3${F ? ` · ${Lt(F)}` : ""}` : "ORIGINAL AUDIO", onClick: Yt } : null, formats: Ct, onExport: bt })
|
|
5390
|
+
] }), $i = (T) => /* @__PURE__ */ i(Xo, { index: x.idx, total: Math.max(1, he.length), frac: x.dur > 0 ? Math.min(1, x.t / x.dur) : 0, glideMs: x.wordSync ? 0 : 220, atLabel: Lt(x.t), durLabel: Lt(x.dur), stepLabel: T ? `${x.idx + 1} / ${he.length}` : "", onSeek: se.relang ? Wl : x.seekRow, onSeekFrac: se.relang ? void 0 : x.seekFrac, onScrubStart: x.hold, onScrubEnd: x.release }), _s = {
|
|
5391
5391
|
live: !1,
|
|
5392
5392
|
atEdge: !1,
|
|
5393
5393
|
edgeFrac: null,
|
|
@@ -5400,12 +5400,12 @@ function Yc(t) {
|
|
|
5400
5400
|
var pe;
|
|
5401
5401
|
se.relang || (pe = x.seekFrac) == null || pe.call(x, T);
|
|
5402
5402
|
}
|
|
5403
|
-
}, [Bi, Hi] =
|
|
5403
|
+
}, [Bi, Hi] = gc(se.on && !!x.preparing && x.playing, 1500), An = se.on && ((Dr = x.error) == null ? void 0 : Dr.code) === "voice_not_started", En = se.canSpeak && !se.error && !An, an = ne ? ((Sr = Mt == null ? void 0 : Mt.languages.find((T) => T.code === ne)) == null ? void 0 : Sr.name) ?? Ee.label : "", tt = V ? Mc({ lang: ne, langName: an, translating: He && !!ne, translateFailed: Ae, voiceFailed: An, relang: se.relang, starting: se.on ? x.starting : null, slowLine: Bi, lineSince: Hi }) : null, Yn = !!Pe && !!tt && (tt.kind === "translating" || tt.kind === "voice" && se.relang), Us = !Yn || !tt ? null : tt.kind === "translating" ? `Translating into ${an || "the new language"}…` : `Preparing the ${an || "translated"} voice…`, on = !Yn && ((tt == null ? void 0 : tt.kind) === "voice" || (tt == null ? void 0 : tt.kind) === "starting"), Rs = zs({ ...se.langList, keepOpen: !0, open: z === "lang", onClose: () => re("main") }), Ps = Fa(B, se.on), Vi = u && Ps.bed && gt && P && (!je || $e) ? Yr(e.origin, P, e.cred) : null, Qs = no(Vi, { t: as(x, he), playing: x.playing && !on && !(x.timed && x.preparing), muted: x.muted }), Wi = u && Ps.speech && gt && P && (!je || $e) ? Yr(e.origin, P, e.cred, "speech") : null, _n = Ni(Wi, { t: as(x, he), playing: !se.on && x.playing, muted: x.muted }), Un = !se.on && _n.on;
|
|
5404
5404
|
_(() => {
|
|
5405
5405
|
var T;
|
|
5406
5406
|
lt.setVideoSound(!(Ve && (se.on || Un))), (T = We.silence) == null || T.call(We, !Ve && Un);
|
|
5407
5407
|
}, [Ve, se.on, Un, $e]);
|
|
5408
|
-
const Rn =
|
|
5408
|
+
const Rn = gt ? se.on ? Qs : _n.state : "unavailable", Pn = Se && En && !!ne, Fi = Pn ? [`Translated${se.hasClone ? Oe ? ", cloned voices" : ", synthetic voices" : ""}`, !B && gt && Qs !== "unavailable" ? "with background sound" : null].filter(Boolean).join(" ") : B && Rn !== "unavailable" ? "Original speech, background removed" : "Original sound", Gi = () => {
|
|
5409
5409
|
if ((tt == null ? void 0 : tt.kind) === "translateFailed") {
|
|
5410
5410
|
ve(ne);
|
|
5411
5411
|
return;
|
|
@@ -5414,13 +5414,13 @@ function Yc(t) {
|
|
|
5414
5414
|
}, Zi = () => {
|
|
5415
5415
|
const T = x.idx;
|
|
5416
5416
|
x.pause(), le(null), Je.current = !0, mt.playRow(T);
|
|
5417
|
-
}, $s = { prevOn: x.idx > 0, nextOn: x.idx <
|
|
5417
|
+
}, $s = { prevOn: x.idx > 0, nextOn: x.idx < he.length - 1, onPrev: x.prev, onNext: x.next, playing: x.playing, playable: jt, playTitle: se.playTitle ?? (x.playing ? "Pause" : "Play"), onPlay: () => {
|
|
5418
5418
|
Je.current = !0, x.toggle();
|
|
5419
5419
|
}, busy: se.relang && !Pe || on };
|
|
5420
5420
|
Mo(jt ? { playing: x.playing, toggle: () => {
|
|
5421
5421
|
Je.current = !0, x.toggle();
|
|
5422
5422
|
}, next: x.next, prev: x.prev } : null, Te);
|
|
5423
|
-
const Qn = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, $n = (T, pe) => !Ee.can || !R.language ? null : u ? /* @__PURE__ */
|
|
5423
|
+
const Qn = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, $n = (T, pe) => !Ee.can || !R.language ? null : u ? /* @__PURE__ */ h("button", { type: "button", className: "gfull__btn", title: Et ? `${Ee.label ?? Ee.code}: still being prepared` : Ee.label ?? Ee.code, "aria-label": `Language: ${Ee.label ?? Ee.code}`, "aria-busy": Et || void 0, onClick: () => {
|
|
5424
5424
|
S(!1), Ee.onClick();
|
|
5425
5425
|
}, style: { position: "relative" }, children: [
|
|
5426
5426
|
/* @__PURE__ */ i("span", { style: { fontSize: pe === "sm" ? 17 : 21, lineHeight: 1 }, children: Ee.flag }),
|
|
@@ -5430,22 +5430,22 @@ function Yc(t) {
|
|
|
5430
5430
|
_(() => {
|
|
5431
5431
|
x.t > 0.3 && Ki(!0);
|
|
5432
5432
|
}, [x.t]);
|
|
5433
|
-
const Hs = Pe && /* @__PURE__ */
|
|
5433
|
+
const Hs = Pe && /* @__PURE__ */ h(_e, { children: [
|
|
5434
5434
|
/* @__PURE__ */ i(Al, { ytId: Pe, title: Ke, t: Pi, playing: x.playing && !on, waiting: se.on && !!x.timed && !!x.preparing, seekN: x.seekN, onTime: (T) => {
|
|
5435
5435
|
var pe, Ye, Ge;
|
|
5436
5436
|
return (Ge = x.videoAt) == null ? void 0 : Ge.call(x, T - (((Ye = (pe = n == null ? void 0 : n.job) == null ? void 0 : pe.crop) == null ? void 0 : Ye.startS) ?? 0));
|
|
5437
5437
|
}, onToggle: x.has ? sn : void 0, onAd: bn, lead: Ve ? lt.lead : void 0 }),
|
|
5438
|
-
/* @__PURE__ */
|
|
5438
|
+
/* @__PURE__ */ h("div", { className: "vsp-poster", "aria-hidden": "true", style: { opacity: qi ? 0 : 1 }, children: [
|
|
5439
5439
|
/* @__PURE__ */ i("div", { className: "vsp-poster__img", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Pe}/hqdefault.jpg)` } }),
|
|
5440
5440
|
/* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(vs, { size: 44 }) })
|
|
5441
5441
|
] })
|
|
5442
5442
|
] }), Vs = Dt && Pe && !V ? /* @__PURE__ */ i(wl, { ytId: Pe, title: Ke, radius: 14, large: !0, style: r ? void 0 : { margin: "8px 20px 2px" }, picture: Hs, children: /* @__PURE__ */ i(oc, { pos: _s, transport: $s, chip: $n({ ...Qn, width: 64, height: 28, minHeight: 28, padding: "0 8px" }, "sm"), voices: Bs, onFull: () => {
|
|
5443
5443
|
Kt(!0), C(!0);
|
|
5444
|
-
}, copied: null }) }) : null, et = x.wordSync ? Go(
|
|
5445
|
-
for (const T of
|
|
5444
|
+
}, copied: null }) }) : null, et = x.wordSync ? Go(he, x.idx, x.t) ? he[x.idx] : void 0 : he[x.idx];
|
|
5445
|
+
for (const T of he) for (const [pe, Ye] of Object.entries(T.translations)) Ye && L.current.set(`${T.sentenceId ?? T.start}|${pe}`, Ye);
|
|
5446
5446
|
const Ws = (T, pe) => T.translations[pe] || L.current.get(`${T.sentenceId ?? T.start}|${pe}`) || null, Bn = (T, pe) => !T || !pe || T.language === pe || !!Ws(T, pe), wt = Bn(et, ne) ? ne : Bn(et, $.current) ? $.current : ne;
|
|
5447
5447
|
et && Bn(et, wt) && ($.current = wt);
|
|
5448
|
-
const Fs = et && wt && et.language !== wt ? Ws(et, wt) : null, Ji = et && Fs && wt && !et.translations[wt] ? Object.assign([...
|
|
5448
|
+
const Fs = et && wt && et.language !== wt ? Ws(et, wt) : null, Ji = et && Fs && wt && !et.translations[wt] ? Object.assign([...he], { [x.idx]: { ...et, translations: { ...et.translations, [wt]: Fs } } }) : he, ln = et ? bi(Ji, x.idx, wt) : [], cn = ke ? ke === "on" : !u || se.on || !De || De === ee, Gs = cn ? qr(x, x.idx, ln) : null, Zs = ln.map((T, pe) => ({ t: T.text, sp: pe < ln.length - 1 ? " " : "", dim: Gs != null && pe > Gs })), un = ae ? ae === "on" : u ? !1 : zo(H, he, ue == null ? void 0 : ue.settings), qs = { lang: ne, subtitles: ye, speakerLabels: un, wordHighlight: cn, translateAudio: Se, voices: Oe ? "cloned" : "synthetic", removeBackground: B }, Xi = JSON.stringify(qs), dn = v(t.onSettingsChange);
|
|
5449
5449
|
dn.current = t.onSettingsChange, _(() => {
|
|
5450
5450
|
var T;
|
|
5451
5451
|
(T = dn.current) == null || T.call(dn, qs);
|
|
@@ -5458,24 +5458,24 @@ function Yc(t) {
|
|
|
5458
5458
|
if (t.shareUrl) return t.shareUrl(T);
|
|
5459
5459
|
const pe = new URL(window.location.href);
|
|
5460
5460
|
return T != null && T > 0 ? pe.searchParams.set("t", String(T)) : pe.searchParams.delete("t"), pe.href;
|
|
5461
|
-
},
|
|
5461
|
+
}, gn = v(l.startAt), Fn = (T) => {
|
|
5462
5462
|
if (x.seekFrac && x.dur > 0) {
|
|
5463
5463
|
x.seekFrac(Math.min(1, T / x.dur));
|
|
5464
5464
|
return;
|
|
5465
5465
|
}
|
|
5466
5466
|
let pe = 0;
|
|
5467
|
-
for (let Ye = 0; Ye <
|
|
5467
|
+
for (let Ye = 0; Ye < he.length; Ye++) he[Ye].start <= T && (pe = Ye);
|
|
5468
5468
|
x.seekRow(pe);
|
|
5469
5469
|
}, tr = v(!1);
|
|
5470
5470
|
_(() => {
|
|
5471
|
-
const T =
|
|
5472
|
-
T == null || tr.current || !x.has ||
|
|
5473
|
-
}, [x.has,
|
|
5474
|
-
const T =
|
|
5475
|
-
T == null || !x.playing || (
|
|
5471
|
+
const T = gn.current;
|
|
5472
|
+
T == null || tr.current || !x.has || he.length === 0 || (tr.current = !0, Fn(T));
|
|
5473
|
+
}, [x.has, he.length]), _(() => {
|
|
5474
|
+
const T = gn.current;
|
|
5475
|
+
T == null || !x.playing || (gn.current = null, Math.abs(x.t - T) > 2 && Fn(T));
|
|
5476
5476
|
}, [x.playing]);
|
|
5477
5477
|
const na = (T) => {
|
|
5478
|
-
Je.current = !0,
|
|
5478
|
+
Je.current = !0, gn.current = null, Fn(Math.max(0, T));
|
|
5479
5479
|
};
|
|
5480
5480
|
t.handle.current = {
|
|
5481
5481
|
seek: (T) => na(T),
|
|
@@ -5513,114 +5513,114 @@ function Yc(t) {
|
|
|
5513
5513
|
window.clearTimeout(Wn.current), Ks(!0), Wn.current = window.setTimeout(() => Ks(!1), 2200);
|
|
5514
5514
|
}), rr = (T, pe, Ye) => {
|
|
5515
5515
|
const Ge = ps.find((pn) => pn.key === T), Nt = Hn === T, ut = ta === T;
|
|
5516
|
-
return /* @__PURE__ */
|
|
5516
|
+
return /* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", "aria-busy": Nt || void 0, style: Hn && !Nt ? { opacity: 0.45, pointerEvents: "none" } : void 0, onClick: () => {
|
|
5517
5517
|
Hn || (Js(T), Promise.resolve().then(() => bt(T)).then(() => {
|
|
5518
5518
|
Xs(T), window.clearTimeout(Vn.current), Vn.current = window.setTimeout(() => Xs(null), 1600);
|
|
5519
5519
|
}).catch(() => {
|
|
5520
5520
|
}).finally(() => Js(null)));
|
|
5521
5521
|
}, children: [
|
|
5522
5522
|
Nt ? /* @__PURE__ */ i(at, { size: 17, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: Ge.icon, size: 17, sw: 1.5, style: { flex: "none", color: "var(--ink-70)" } }),
|
|
5523
|
-
/* @__PURE__ */
|
|
5523
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5524
5524
|
/* @__PURE__ */ i("div", { className: "srow__t", children: pe }),
|
|
5525
5525
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Ye })
|
|
5526
5526
|
] }),
|
|
5527
5527
|
/* @__PURE__ */ i(oe, { d: ut ? J.check : J.downloaded, size: 17, sw: 1.6, style: { flex: "none", color: ut ? "var(--brand)" : "var(--ink-62)" } })
|
|
5528
5528
|
] });
|
|
5529
|
-
}, ra = /* @__PURE__ */
|
|
5529
|
+
}, ra = /* @__PURE__ */ h("span", { className: "vs-sheet__title", style: { position: "relative" }, children: [
|
|
5530
5530
|
" ",
|
|
5531
|
-
/* @__PURE__ */
|
|
5531
|
+
/* @__PURE__ */ h("button", { type: "button", onClick: () => re("main"), "aria-label": "Back", style: { position: "absolute", left: -6, top: "50%", transform: "translateY(-50%)", display: "inline-flex", alignItems: "center", gap: 2, padding: "4px 6px 4px 0", border: 0, background: "none", color: "var(--ink-96)", fontFamily: "var(--vs-font-sans)", fontSize: 15, fontWeight: 600, letterSpacing: 0, lineHeight: 1, whiteSpace: "nowrap", cursor: "pointer" }, children: [
|
|
5532
5532
|
/* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 18, sw: 1.8 }),
|
|
5533
5533
|
"Back"
|
|
5534
5534
|
] })
|
|
5535
|
-
] }),
|
|
5535
|
+
] }), hn = /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), ia = { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO", export: "EXPORT" }[z], fn = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, Gn = u ? /* @__PURE__ */ i($t, { open: j, onClose: () => S(!1), title: ia, titleNode: z === "main" ? void 0 : ra, doneLabel: Ut.done, kind: z === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(us, { children: z === "lang" ? /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column" }, children: [
|
|
5536
5536
|
/* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children: Rs.search }),
|
|
5537
5537
|
Rs.list
|
|
5538
|
-
] }) : z === "subs" ? /* @__PURE__ */
|
|
5539
|
-
/* @__PURE__ */
|
|
5540
|
-
/* @__PURE__ */
|
|
5538
|
+
] }) : z === "subs" ? /* @__PURE__ */ h("div", { style: fn, children: [
|
|
5539
|
+
/* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5540
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5541
5541
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Show subtitles" }),
|
|
5542
5542
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Captions over the video" })
|
|
5543
5543
|
] }),
|
|
5544
5544
|
/* @__PURE__ */ i(pt, { checked: ye, onChange: Le, label: "Show subtitles" })
|
|
5545
5545
|
] }),
|
|
5546
|
-
/* @__PURE__ */
|
|
5547
|
-
/* @__PURE__ */
|
|
5546
|
+
/* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5547
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5548
5548
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Show speaker labels" }),
|
|
5549
5549
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Who is speaking, before each line" })
|
|
5550
5550
|
] }),
|
|
5551
5551
|
/* @__PURE__ */ i(pt, { checked: un, onChange: (T) => we(T ? "on" : "off"), label: "Show speaker labels" })
|
|
5552
5552
|
] }),
|
|
5553
|
-
/* @__PURE__ */
|
|
5554
|
-
/* @__PURE__ */
|
|
5553
|
+
/* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5554
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5555
5555
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Highlight words" }),
|
|
5556
5556
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Follow each word as it is spoken" })
|
|
5557
5557
|
] }),
|
|
5558
5558
|
/* @__PURE__ */ i(pt, { checked: cn, onChange: (T) => Qe(T ? "on" : "off"), label: "Highlight words" })
|
|
5559
5559
|
] })
|
|
5560
|
-
] }) : z === "audio" ? /* @__PURE__ */
|
|
5561
|
-
/* @__PURE__ */
|
|
5562
|
-
/* @__PURE__ */
|
|
5560
|
+
] }) : z === "audio" ? /* @__PURE__ */ h("div", { style: fn, children: [
|
|
5561
|
+
/* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5562
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5563
5563
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Translate audio" }),
|
|
5564
5564
|
/* @__PURE__ */ i("div", { className: "srow__s", children: ne ? En ? "Hear the translation read aloud instead of the original speech" : se.canSpeak ? "Not available right now" : "Not available in this language" : "Pick a language to hear the translation read aloud" })
|
|
5565
5565
|
] }),
|
|
5566
5566
|
/* @__PURE__ */ i(pt, { checked: Pn, onChange: Be, label: "Translate audio", disabled: !En || !ne })
|
|
5567
5567
|
] }),
|
|
5568
|
-
Pn && se.hasClone && /* @__PURE__ */
|
|
5569
|
-
/* @__PURE__ */
|
|
5568
|
+
Pn && se.hasClone && /* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5569
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5570
5570
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Voices" }),
|
|
5571
5571
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Oe ? "Each speaker in their own cloned voice" : "Synthetic voices matched to each speaker" })
|
|
5572
5572
|
] }),
|
|
5573
5573
|
/* @__PURE__ */ i(cs, { value: Oe ? "clone" : "stock", onChange: (T) => G(T === "clone"), size: "sm", options: [{ value: "stock", label: "Synthetic" }, { value: "clone", label: "Cloned" }] })
|
|
5574
5574
|
] }),
|
|
5575
|
-
/* @__PURE__ */
|
|
5576
|
-
/* @__PURE__ */
|
|
5575
|
+
/* @__PURE__ */ h("div", { className: "srow", children: [
|
|
5576
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5577
5577
|
/* @__PURE__ */ i("div", { className: "srow__t", children: jn }),
|
|
5578
5578
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Wa(B, Rn, "video", se.on ? 0 : _n.untilS) })
|
|
5579
5579
|
] }),
|
|
5580
|
-
/* @__PURE__ */ i(pt, { checked: B &&
|
|
5580
|
+
/* @__PURE__ */ i(pt, { checked: B && gt, onChange: X, label: jn, disabled: !gt || Rn === "unavailable" && !B })
|
|
5581
5581
|
] })
|
|
5582
|
-
] }) : z === "export" ? /* @__PURE__ */
|
|
5582
|
+
] }) : z === "export" ? /* @__PURE__ */ h("div", { style: fn, children: [
|
|
5583
5583
|
rr("srt", "Subtitles", "SRT / VTT caption cues, ready for a video editor or a player"),
|
|
5584
5584
|
rr("pdf", "PDF", "Formatted transcript in paragraphs, with timestamps and speaker labels")
|
|
5585
5585
|
] }) : /* @__PURE__ */ i("div", { style: fn, children: [
|
|
5586
|
-
Ee.can && R.language && /* @__PURE__ */
|
|
5587
|
-
/* @__PURE__ */
|
|
5586
|
+
Ee.can && R.language && /* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => re("lang"), children: [
|
|
5587
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5588
5588
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Language" }),
|
|
5589
5589
|
/* @__PURE__ */ i("div", { className: "srow__s", children: ne ? `Translated to ${Ee.label ?? ne.toUpperCase()}` : "Original language" })
|
|
5590
5590
|
] }),
|
|
5591
5591
|
/* @__PURE__ */ i("span", { style: { fontSize: 18, lineHeight: 1 }, children: Ee.flag }),
|
|
5592
|
-
|
|
5592
|
+
hn
|
|
5593
5593
|
] }, "lang"),
|
|
5594
|
-
R.subtitles && /* @__PURE__ */
|
|
5595
|
-
/* @__PURE__ */
|
|
5594
|
+
R.subtitles && /* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => re("subs"), children: [
|
|
5595
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5596
5596
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Subtitles" }),
|
|
5597
5597
|
/* @__PURE__ */ i("div", { className: "srow__s", children: ye ? "On · speaker labels and word highlighting" : "Off" })
|
|
5598
5598
|
] }),
|
|
5599
|
-
|
|
5599
|
+
hn
|
|
5600
5600
|
] }, "subs"),
|
|
5601
|
-
R.audio && /* @__PURE__ */
|
|
5602
|
-
/* @__PURE__ */
|
|
5601
|
+
R.audio && /* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => re("audio"), children: [
|
|
5602
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5603
5603
|
/* @__PURE__ */ i("div", { className: "srow__t", children: "Audio" }),
|
|
5604
5604
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Fi })
|
|
5605
5605
|
] }),
|
|
5606
|
-
|
|
5606
|
+
hn
|
|
5607
5607
|
] }, "audio"),
|
|
5608
|
-
R.export && Ct && !!P && /* @__PURE__ */
|
|
5609
|
-
/* @__PURE__ */
|
|
5610
|
-
/* @__PURE__ */
|
|
5608
|
+
R.export && Ct && !!P && /* @__PURE__ */ h("div", { className: "srow srow--tap", role: "button", onClick: () => re("export"), children: [
|
|
5609
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5610
|
+
/* @__PURE__ */ h("div", { className: "srow__t", children: [
|
|
5611
5611
|
"Export",
|
|
5612
5612
|
Tt ? ` in ${Tt}` : ""
|
|
5613
5613
|
] }),
|
|
5614
5614
|
/* @__PURE__ */ i("div", { className: "srow__s", children: "Subtitles (SRT / VTT) or a PDF of the transcript" })
|
|
5615
5615
|
] }),
|
|
5616
|
-
|
|
5616
|
+
hn
|
|
5617
5617
|
] }, "export")
|
|
5618
|
-
].filter(Boolean).flatMap((T, pe) => pe ? [/* @__PURE__ */ i("div", { className: "sdiv" }, `d${pe}`), T] : [T]) }) }) }) : /* @__PURE__ */ i($t, { open: j, onClose: () => S(!1), title: Ut.settings, doneLabel: Ut.done, drawer: r, children: /* @__PURE__ */
|
|
5619
|
-
Ee.can && /* @__PURE__ */
|
|
5620
|
-
/* @__PURE__ */
|
|
5618
|
+
].filter(Boolean).flatMap((T, pe) => pe ? [/* @__PURE__ */ i("div", { className: "sdiv" }, `d${pe}`), T] : [T]) }) }) }) : /* @__PURE__ */ i($t, { open: j, onClose: () => S(!1), title: Ut.settings, doneLabel: Ut.done, drawer: r, children: /* @__PURE__ */ h("div", { style: { display: "flex", flexDirection: "column", gap: 2 }, children: [
|
|
5619
|
+
Ee.can && /* @__PURE__ */ h(_e, { children: [
|
|
5620
|
+
/* @__PURE__ */ h("div", { className: "srow srow--tap", onClick: () => {
|
|
5621
5621
|
S(!1), Ee.onClick();
|
|
5622
5622
|
}, children: [
|
|
5623
|
-
/* @__PURE__ */
|
|
5623
|
+
/* @__PURE__ */ h("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
5624
5624
|
/* @__PURE__ */ i("div", { className: "srow__t", children: Ut.langLabel }),
|
|
5625
5625
|
/* @__PURE__ */ i("div", { className: "srow__s", children: Ut.langCount })
|
|
5626
5626
|
] }),
|
|
@@ -5659,16 +5659,16 @@ function Yc(t) {
|
|
|
5659
5659
|
} : void 0,
|
|
5660
5660
|
compact: !!t.compact,
|
|
5661
5661
|
paused: { title: Ke, summary: ft.state === "ready" ? ft.summary ?? null : null, share: R.share && (t.shareUrl || !t.onShare) ? { url: er, at: x.t } : null },
|
|
5662
|
-
copied: ea ? /* @__PURE__ */
|
|
5662
|
+
copied: ea ? /* @__PURE__ */ h("div", { className: "gfull__toast", "aria-live": "polite", children: [
|
|
5663
5663
|
/* @__PURE__ */ i(oe, { d: J.check, size: 13, sw: 2 }),
|
|
5664
5664
|
"Link copied"
|
|
5665
|
-
] }) : Wt ? /* @__PURE__ */
|
|
5665
|
+
] }) : Wt ? /* @__PURE__ */ h("div", { className: "gfull__toast gfull__soundtip", "aria-live": "polite", children: [
|
|
5666
5666
|
/* @__PURE__ */ i(oe, { d: J.volumeOff, size: 14, sw: 1.8 }),
|
|
5667
5667
|
"Tap for sound"
|
|
5668
|
-
] }) : Us ? /* @__PURE__ */
|
|
5668
|
+
] }) : Us ? /* @__PURE__ */ h("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
|
|
5669
5669
|
/* @__PURE__ */ i(at, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
|
|
5670
5670
|
Us
|
|
5671
|
-
] }) : se.on && (Ve ? vt.missing != null : x.silent) ? /* @__PURE__ */
|
|
5671
|
+
] }) : se.on && (Ve ? vt.missing != null : x.silent) ? /* @__PURE__ */ h("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
|
|
5672
5672
|
/* @__PURE__ */ i(at, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
|
|
5673
5673
|
`${an || "Translated"} voice is still being prepared · playing with subtitles`
|
|
5674
5674
|
] }) : null,
|
|
@@ -5683,34 +5683,34 @@ function Yc(t) {
|
|
|
5683
5683
|
_(() => {
|
|
5684
5684
|
!u && V && !Dt && (Kt(!1), C(!1));
|
|
5685
5685
|
}, [u, V, Dt]);
|
|
5686
|
-
const ir = je && /* @__PURE__ */
|
|
5687
|
-
/* @__PURE__ */
|
|
5686
|
+
const ir = je && /* @__PURE__ */ h("div", { className: `pubprog${r ? " pubprog--desk" : ""}${w ? " pubprog--find" : ""}`, children: [
|
|
5687
|
+
/* @__PURE__ */ h("div", { className: "pubprog__row", children: [
|
|
5688
5688
|
/* @__PURE__ */ i("span", { className: "l", children: `TRANSCRIBING ${U}%` }),
|
|
5689
5689
|
!r && /* @__PURE__ */ i("div", { style: { flex: 1 } }),
|
|
5690
5690
|
r && /* @__PURE__ */ i("div", { className: "pubprog__bar", style: { flex: 1 }, children: /* @__PURE__ */ i("div", { style: { width: `${U}%` } }) }),
|
|
5691
5691
|
/* @__PURE__ */ i("span", { className: "s", children: rt })
|
|
5692
5692
|
] }),
|
|
5693
5693
|
!r && /* @__PURE__ */ i("div", { className: "pubprog__bar", style: { marginTop: 8 }, children: /* @__PURE__ */ i("div", { style: { width: `${U}%` } }) })
|
|
5694
|
-
] }), Zn = s && /* @__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." }), ar = /* @__PURE__ */ i(ql, { model: H, rows:
|
|
5694
|
+
] }), Zn = s && /* @__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." }), ar = /* @__PURE__ */ i(ql, { model: H, rows: he, player: x, tail: ct, tailFg: Ht, running: je, desk: r, feedRef: it, listener: !0, showLabels: un, find: m, findOpen: !r && w, lang: De, warm: Gt, onVisible: Fe, wordHl: cn }), qn = /* @__PURE__ */ i(Jo, { error: g ?? me ?? (An && V ? null : x.error) ?? se.error, onClose: () => {
|
|
5695
5695
|
M(null), q(), x.clearError(), se.clearError();
|
|
5696
|
-
} }), or = [F ? Lt(F) : null, ee ? ee.toUpperCase() : null, Me || "Read-only copy"].filter(Boolean).join(" · "), lr = (T) => /* @__PURE__ */ i("div", { className: "ctrans", children: se.noVoice ? se.noVoiceNote : /* @__PURE__ */
|
|
5697
|
-
/* @__PURE__ */
|
|
5696
|
+
} }), or = [F ? Lt(F) : null, ee ? ee.toUpperCase() : null, Me || "Read-only copy"].filter(Boolean).join(" · "), lr = (T) => /* @__PURE__ */ i("div", { className: "ctrans", children: se.noVoice ? se.noVoiceNote : /* @__PURE__ */ h(_e, { children: [
|
|
5697
|
+
/* @__PURE__ */ h("div", { className: "ctrans__row", children: [
|
|
5698
5698
|
/* @__PURE__ */ i("span", { className: "ctrans__sp", "aria-hidden": "true" }),
|
|
5699
|
-
/* @__PURE__ */
|
|
5699
|
+
/* @__PURE__ */ h("div", { className: "ctrans__mid", children: [
|
|
5700
5700
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Previous segment", title: "Previous segment", style: { opacity: x.idx <= 0 ? 0.3 : 1 }, onClick: x.prev, children: /* @__PURE__ */ i(oe, { d: J.chevronLeft, size: 16, sw: 1.8 }) }),
|
|
5701
5701
|
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": se.relang ? "Preparing audio" : x.playing ? "Pause" : "Play", title: se.relang ? "Preparing audio…" : se.playTitle ?? (x.playing ? "Pause" : "Play"), disabled: !jt, onClick: x.toggle, children: se.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: x.playing ? void 0 : { marginLeft: 2 }, children: x.playing ? El : Yl }) }),
|
|
5702
|
-
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: x.idx >=
|
|
5702
|
+
/* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: x.idx >= he.length - 1 ? 0.3 : 1 }, onClick: x.next, children: /* @__PURE__ */ i(oe, { d: J.chevronRight, size: 16, sw: 1.8 }) })
|
|
5703
5703
|
] }),
|
|
5704
5704
|
/* @__PURE__ */ i("span", { className: "ctrans__mute", children: rn(36) })
|
|
5705
5705
|
] }),
|
|
5706
5706
|
/* @__PURE__ */ i("div", { className: "ctrans__scrub", children: $i(T) })
|
|
5707
|
-
] }) }), aa = vl("ga", { tabs: Rt, cur: p, pref: (Ar = Rt[0]) == null ? void 0 : Ar.key, onPick: N }), cr = Math.max(0, Math.min(100, Math.round(U))), oa = Y && /* @__PURE__ */
|
|
5707
|
+
] }) }), aa = vl("ga", { tabs: Rt, cur: p, pref: (Ar = Rt[0]) == null ? void 0 : Ar.key, onPick: N }), cr = Math.max(0, Math.min(100, Math.round(U))), oa = Y && /* @__PURE__ */ h("div", { className: "gfull gfull--hold", "data-theme": "dark", role: "status", "aria-live": "polite", children: [
|
|
5708
5708
|
Pe && /* @__PURE__ */ i("div", { className: "gfull__holdbg", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Pe}/hqdefault.jpg)` } }),
|
|
5709
|
-
/* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */
|
|
5709
|
+
/* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */ h(_e, { children: [
|
|
5710
5710
|
Ke && /* @__PURE__ */ i("div", { className: "gfull__holdt", children: Ke }),
|
|
5711
5711
|
/* @__PURE__ */ i("div", { className: "gfull__holdpct", children: Ne === "transcribing" ? `${cr}%` : /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin" }) }),
|
|
5712
5712
|
/* @__PURE__ */ i("div", { className: "gfull__holdbar", children: /* @__PURE__ */ i("div", { style: { width: `${Ne === "transcribing" ? cr : 0}%` } }) }),
|
|
5713
|
-
/* @__PURE__ */
|
|
5713
|
+
/* @__PURE__ */ h("div", { className: "gfull__holds", children: [
|
|
5714
5714
|
Ne === "transcribing" ? "Transcribing" : Ne === "cropping" ? "Preparing the video" : "Waiting to start",
|
|
5715
5715
|
Ne === "transcribing" && (ie != null && ie.segmentsDone) ? ` · ${rt.toLowerCase()}` : ""
|
|
5716
5716
|
] }),
|
|
@@ -5728,37 +5728,37 @@ function Yc(t) {
|
|
|
5728
5728
|
const ca = t.endCard !== !1 && Jn && !la && /* @__PURE__ */ i(kc, { options: { appUrl: t.appUrl, ...t.endCard || {} }, onStarted: t.onStarted, onClose: () => Kn(!0), onReplay: () => {
|
|
5729
5729
|
Kn(!0), Je.current = !0, x.seekFrac ? x.seekFrac(0) : x.seekRow(0), x.playing || x.toggle();
|
|
5730
5730
|
} });
|
|
5731
|
-
if (u) return /* @__PURE__ */
|
|
5731
|
+
if (u) return /* @__PURE__ */ h(_e, { children: [
|
|
5732
5732
|
s ? /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark", children: Zn }) : oa || It || /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark" }),
|
|
5733
5733
|
ca,
|
|
5734
5734
|
qn
|
|
5735
5735
|
] });
|
|
5736
5736
|
if (r) {
|
|
5737
5737
|
const T = Sn && !Dt && !s && /* @__PURE__ */ i("div", { className: "pubdeskctl", children: lr(!0) }), pe = !s && (Rt.length > 0 || Dt || !!se.sidePanel || !!T);
|
|
5738
|
-
return /* @__PURE__ */
|
|
5739
|
-
/* @__PURE__ */ i("div", { className: "dhead dhead--listener dhead--cols", children: /* @__PURE__ */
|
|
5740
|
-
/* @__PURE__ */ i("div", { className: "gcolhead__main", children: /* @__PURE__ */
|
|
5738
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
5739
|
+
/* @__PURE__ */ i("div", { className: "dhead dhead--listener dhead--cols", children: /* @__PURE__ */ h("div", { className: "gcolhead", children: [
|
|
5740
|
+
/* @__PURE__ */ i("div", { className: "gcolhead__main", children: /* @__PURE__ */ h("div", { className: "gcolhead__col", children: [
|
|
5741
5741
|
/* @__PURE__ */ i("div", { style: { flex: "none" }, children: /* @__PURE__ */ i(In, { dark: a, height: 20.38 }) }),
|
|
5742
|
-
!s && /* @__PURE__ */
|
|
5742
|
+
!s && /* @__PURE__ */ h("div", { className: "dhead__session", children: [
|
|
5743
5743
|
/* @__PURE__ */ i("span", { className: "t", children: n ? Ke : "" }),
|
|
5744
5744
|
/* @__PURE__ */ i("span", { className: "s", children: n ? or : "" })
|
|
5745
5745
|
] })
|
|
5746
5746
|
] }) }),
|
|
5747
5747
|
pe && /* @__PURE__ */ i("div", { className: "gcolhead__side" })
|
|
5748
5748
|
] }) }),
|
|
5749
|
-
/* @__PURE__ */
|
|
5750
|
-
/* @__PURE__ */
|
|
5749
|
+
/* @__PURE__ */ h("div", { className: "listenerlive listenerlive--cols listenerlive--pub", children: [
|
|
5750
|
+
/* @__PURE__ */ h("div", { className: "listenerlive__main", children: [
|
|
5751
5751
|
Zn,
|
|
5752
5752
|
!s && tn,
|
|
5753
5753
|
ir,
|
|
5754
5754
|
O && /* @__PURE__ */ i("div", { className: "pubflash", children: O }),
|
|
5755
5755
|
!s && /* @__PURE__ */ i("div", { className: "listenerlive__inner", style: { flex: 1, minHeight: 0, display: "flex", flexDirection: "column", marginTop: 6 }, children: ar }),
|
|
5756
|
-
!s && /* @__PURE__ */
|
|
5756
|
+
!s && /* @__PURE__ */ h("div", { className: "listenerlive__inner gdeskbar", "data-transport": "1", children: [
|
|
5757
5757
|
Ee.can && /* @__PURE__ */ i("span", { className: "barchip", style: Ee.active ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)", borderRadius: 12 } : void 0, children: /* @__PURE__ */ i(vn, { flag: Ee.flag, code: Ee.code, label: Ee.label, bordered: !1, onClick: Ee.onClick }) }),
|
|
5758
5758
|
Es
|
|
5759
5759
|
] })
|
|
5760
5760
|
] }),
|
|
5761
|
-
pe && /* @__PURE__ */
|
|
5761
|
+
pe && /* @__PURE__ */ h(Il, { id: "ga", className: "listenerside", gap: 20, plain: !0, children: [
|
|
5762
5762
|
!se.sidePanel && T,
|
|
5763
5763
|
!se.sidePanel && Vs,
|
|
5764
5764
|
!se.sidePanel && Rt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(jl, { col: aa, order: ["summary", "export"], onPick: N, grip: { summary: 40, export: 28 }, render: (Ye) => /* @__PURE__ */ i(Er, { panel: !0, children: Ys(Ye) }) }) }),
|
|
@@ -5771,24 +5771,24 @@ function Yc(t) {
|
|
|
5771
5771
|
qn
|
|
5772
5772
|
] });
|
|
5773
5773
|
}
|
|
5774
|
-
const ua = Rt.length > 0 && !w && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */
|
|
5774
|
+
const ua = Rt.length > 0 && !w && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */ h(Er, { panel: !0, children: [
|
|
5775
5775
|
/* @__PURE__ */ i(Oi, { tabs: Rt, current: p, onPick: N, gap: p !== "none" }),
|
|
5776
5776
|
p !== "none" && Ys(p)
|
|
5777
5777
|
] }) });
|
|
5778
|
-
return /* @__PURE__ */
|
|
5778
|
+
return /* @__PURE__ */ h(_e, { children: [
|
|
5779
5779
|
/* @__PURE__ */ i(cc, { dark: a, title: n ? Ke : "", subline: n ? or : "", onOptions: () => S(!0), optionsActive: j }),
|
|
5780
5780
|
Zn,
|
|
5781
5781
|
ir,
|
|
5782
5782
|
!s && ua,
|
|
5783
5783
|
!s && Vs,
|
|
5784
|
-
!s && /* @__PURE__ */
|
|
5784
|
+
!s && /* @__PURE__ */ h("div", { style: { position: "relative", flex: 1, minHeight: 0, display: "flex", flexDirection: "column" }, children: [
|
|
5785
5785
|
tn,
|
|
5786
5786
|
ar,
|
|
5787
5787
|
O && /* @__PURE__ */ i("div", { className: "txflash", children: O })
|
|
5788
5788
|
] }),
|
|
5789
|
-
!s && /* @__PURE__ */
|
|
5789
|
+
!s && /* @__PURE__ */ h("div", { className: "gbottom", "data-transport": "1", children: [
|
|
5790
5790
|
Sn && !Dt && /* @__PURE__ */ i("div", { className: "pubctl", children: lr(!1) }),
|
|
5791
|
-
/* @__PURE__ */
|
|
5791
|
+
/* @__PURE__ */ h("div", { className: "gbottom__bar", children: [
|
|
5792
5792
|
Ee.can && /* @__PURE__ */ i("div", { style: { flex: "none" }, children: $n({ width: 87 }, void 0) }),
|
|
5793
5793
|
/* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0 }, children: Es })
|
|
5794
5794
|
] })
|
|
@@ -5834,7 +5834,7 @@ export {
|
|
|
5834
5834
|
qr as spokenWordOf,
|
|
5835
5835
|
Fa as trackPlan,
|
|
5836
5836
|
wi as useApi,
|
|
5837
|
-
|
|
5837
|
+
gl as useArchiveVoice,
|
|
5838
5838
|
no as useBackgroundBed,
|
|
5839
5839
|
$l as useDuck,
|
|
5840
5840
|
Jl as useFindPull,
|