@vocalstack/player 0.1.0-alpha.46 → 0.1.0-alpha.48

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 CHANGED
@@ -1,8 +1,8 @@
1
1
  var Fa = Object.defineProperty;
2
2
  var Za = (t, e, n) => e in t ? Fa(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
3
  var ge = (t, e, n) => Za(t, typeof e != "symbol" ? e + "" : e, n);
4
- import { jsx as i, jsxs as g, Fragment as be } from "react/jsx-runtime";
5
- import { useState as k, useRef as j, useEffect as S, useLayoutEffect as Jt, createContext as Oi, useMemo as ze, useContext as Ga, useCallback as Ke, Fragment as qa, forwardRef as Ka, useImperativeHandle as Ja } from "react";
4
+ import { jsx as i, jsxs as g, Fragment as Ce } from "react/jsx-runtime";
5
+ import { useState as j, useRef as z, useEffect as S, useLayoutEffect as Xt, createContext as Oi, useMemo as ze, useContext as Ga, useCallback as Ke, Fragment as qa, forwardRef as Ka, useImperativeHandle as Ja } from "react";
6
6
  import { createPortal as Xa } from "react-dom";
7
7
  import { VocalStackError as Ci, VocalStack as xi } from "@vocalstack/js-sdk";
8
8
  const Si = "https://vocalstack.com", eo = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzU1YWJlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", to = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDUxLjY5MDciIGhlaWdodD0iMTU1LjMwNjQxIiB2aWV3Qm94PSIwIDAgMTA1MS42OTA2IDE1NS4zMDY0MSI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44ODczNDc3MSwwLDAsMC44OTExODY4MiwtNDIuNzE2NjMsLTEyMy44NTM4OCkiPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDVCOEY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDE2NS43NDM2OSwzMTIuMzQ1MTQgYyAtMy42NTkwNCwtMC45NTg2MSAtNi44OTEzMSwtMy4zNTM0OCAtOS4yMTQ5NCwtNi44Mjc1OSAtMS45MTIyNiwtMi44NTkwOCAtMi4zOTcwNSwtNC41Njk3MSAtMi4zOTcwNSwtOC40NTgzNiAwLC0zLjk5MjU0IDAuMDgyNCwtNC4yNzU3IDQuMjMwMTIsLTE0LjU0NTUzIDQuMDA5MjMsLTkuOTI2ODEgMTEuNzQ1OTcsLTI5LjYwODA0IDE0LjE3MjU0LC0zNi4wNTMwMiAxLjA1NTUsLTIuODAzNDQgNC42MzU3OSwtMTIuMDkwMiA3Ljk1NjE5LC0yMC42MzcyNSAzLjMyMDQsLTguNTQ3MDYgOS40NzI2NSwtMjQuNDkxMiAxMy42NzE2OCwtMzUuNDMxNDMgOS40MTE2MywtMjQuNTIxMjUgMTIuMTUxMjQsLTMxLjM5NjE0IDE0LjE5MjIyLC0zNS42MTQ1NSAxLjMzMjI5LC0yLjc1MzY0IDEuODc4NjcsLTMuNTkyNTggMy4zNDU0NiwtNS4xMzY3MiAxLjk2ODIyLC0yLjA3MjAzIDQuMDk4NCwtMy41NjI1MyA2LjQ2Njg3LC00LjUyNDkzIDEuMjcxMzgsLTAuNTE2NiAyLjI1NzYzLC0wLjY5MzAyIDQuODI2NzksLTAuODYzNCA1LjIxODMsLTAuMzQ2MDcgMjQuNTc0NjIsLTAuNTU0NTggMjQuOTg1MDgsLTAuMjY5MTQgMC40Mzc5NywwLjMwNDU2IDEuMTMxMzEsLTEuNTAwMjEgLTE1LjE1NDEyLDM5LjQ0Njc4IC0yMC42ODg0Miw1Mi4wMTc1NyAtMjguOTYxODUsNzIuOTgyNjUgLTM2Ljc1MTgxLDkzLjEzMDA0IC04LjQwMzU2LDIxLjczNDM0IC05LjM5NDk1LDI0LjIwNzY0IC0xMC43NjMxNiwyNi44NTE2NSAtMi4zNTQ1LDQuNTUgLTYuMzgyNCw3Ljc4MzMxIC0xMS4yNzY2MSw5LjA1MjA3IC0yLjA3MjU5LDAuNTM3MjkgLTYuMDAwMTUsMC40ODEwOSAtOC4yODkyNiwtMC4xMTg2MiB6Ii8+PHBhdGggc3R5bGU9ImZpbGw6IzI0NUI4RjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4zNzI5NjIiIGQ9Im0gMTIyLjQ5MjIsMzEyLjU4OTE2IGMgLTQuMDc5NTYsLTAuNzMyNTggLTguNjUxMjMsLTMuOTM0MSAtMTEuMjMyNTgsLTcuODY2MTYgLTAuNzMwMDQsLTEuMTEyMDMgLTEuODU0NTksLTMuNDgzMjYgLTIuODQzMDksLTUuOTk0OTYgLTAuODk5NDMsLTIuMjg1NCAtNC43NjI4NywtMTIuMTU1MyAtOC41ODU0MDksLTIxLjkzMzEzIC0zLjgyMjU0LC05Ljc3NzgzIC04LjQ3OTA3MiwtMjEuNjM4MDMgLTEwLjM0Nzg1MiwtMjYuMzU2MDEgLTEuODY4NzgsLTQuNzE3OTcgLTcuNDA0OTY4LC0xOC44MTU5NSAtMTIuMzAyNjQ2LC0zMS4zMjg4NCAtNC44OTc2ODEsLTEyLjUxMjg4IC0xMC44NjE5MjMsLTI3LjcyOTc1IC0xMy4yNTM4NzYsLTMzLjgxNTI1IC0yLjM5MTk1MywtNi4wODU1IC01LjY2NTIxNiwtMTQuNDc3MTUgLTcuMjczOTE4LC0xOC42NDgxMSAtMS42MDg2OTgsLTQuMTcwOTcgLTQuMjM1OTUsLTEwLjg0ODI2IC01LjgzODMzNCwtMTQuODM4NDMgLTIuMDcyNzc5LC01LjE2MTUzIC0yLjgzNjUwOSwtNy4zMzE3NyAtMi42NDY4NjksLTcuNTIxNCAwLjM0NzkwMywtMC4zNDc5MSAyMC44Mjg4ODcsLTAuMzU5MTcgMjQuNzMyODc0LC0wLjAxMzYgNC42NDkyNTYsMC40MTE1NCA3LjAxMjg0OCwxLjUyODExIDEwLjUxNzU0Niw0Ljk2ODUyIDEuNDUwODE5LDEuNDI0MjEgMi4zOTgsMi42MDIxMyAyLjkwNDM3NSwzLjYxMTkgMS43OTg2OTMsMy41ODY3OCA4LjQxODEwMywyMC4wMjg2OSAxOC42NjYyNzksNDYuMzY1MDYgMy42OTgzOSw5LjUwNDMyIDExLjE2MDY3LDI4LjQxMzUxIDE2LjU4Mjg1LDQyLjAyMDQyIDE0LjYzNDMzLDM2LjcyNDY3IDE4Ljc0NzUzLDQ3LjEzNzY1IDE5LjUzOTc1LDQ5LjQ2Njg3IDIuMjI5ODEsNi41NTU4OSAxLjA1NTMzLDEyLjcwMjE0IC0zLjMwNDI2LDE3LjI5MTc2IC0zLjEwMzU5LDMuMjY3MzYgLTYuMjIwNDMsNC42MDg0NSAtMTEuMDIxNzgsNC43NDI0IC0xLjY0MzMxLDAuMDQ1OCAtMy41NzUxOCwtMC4wMjIxIC00LjI5MzA2LC0wLjE1MTAzIHoiLz48cmVjdCBzdHlsZT0iZmlsbDojZWM2MzRkIiB3aWR0aD0iMTEuMjY5NTQiIGhlaWdodD0iNDIuMDk3NjIyIiB4PSIxNjQuODgwMTQiIHk9IjE3Ni4yNTkwOSIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjYyMTU2IiBoZWlnaHQ9Ijg3LjAzODYwNSIgeD0iMTQyLjE1ODY4IiB5PSIxNTMuNzg4NiIgcnk9IjUuNjEwNDk2Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTE5Ljc4OTI0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjwvZz48cGF0aCBzdHlsZT0iZmlsbDojZWM2MzRkIiBkPSJtIDIyMi4yNTEzMiw2OC40Nzk4OTcgcSAtMTIuNzk5OTgsMCAtMjEuNzU5OTcsOC45NTk5ODYgLTguOTU5OTgsOC45NTk5ODYgLTguOTU5OTgsMjEuNzU5OTY1IDAsMTIuNTg2NjQyIDguOTU5OTgsMjEuNTQ2NjMyIDQuMjY2NjYsNC40Nzk5OSA5LjgxMzMyLDYuODI2NjYgNS43NTk5OSwyLjEzMzMzIDExLjk0NjY1LDIuMTMzMzMgNi4xODY2NiwwIDExLjczMzMxLC0yLjEzMzMzIDUuNTQ2NjYsLTIuMzQ2NjcgMTAuMDI2NjUsLTYuODI2NjYgOC45NTk5OSwtOC45NTk5OSA4Ljk1OTk5LC0yMS41NDY2MzIgMCwtMTIuNzk5OTc5IC04Ljk1OTk5LC0yMS43NTk5NjUgLTkuMzg2NjUsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgeiBtIDAsLTI1LjU5OTk1OSBxIDExLjczMzMxLDAgMjEuOTczMyw0LjQ3OTk5MyAxMC4yMzk5OCw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCA3LjY3OTk5LDcuNjc5OTg3IDExLjk0NjY1LDE3LjkxOTk3MSA0LjQ3OTk5LDEwLjIzOTk4NCA0LjQ3OTk5LDIxLjk3MzI5OCAwLDExLjUxOTk4MiAtNC40Nzk5OSwyMS43NTk5NjIgLTQuMjY2NjYsMTAuMjM5OTkgLTExLjk0NjY1LDE3LjkxOTk3IC03LjY3OTk5LDcuNjc5OTkgLTE3LjkxOTk3LDEyLjE1OTk5IC0xMC4yMzk5OSw0LjI2NjY2IC0yMS45NzMzLDQuMjY2NjYgLTExLjczMzMyLDAgLTIxLjk3MzMsLTQuMjY2NjYgLTEwLjIzOTk4LC00LjQ4IC0xNy45MTk5NywtMTIuMTU5OTkgLTcuNjc5OTksLTcuNjc5OTggLTEyLjE1OTk4LC0xNy45MTk5NyAtNC4yNjY2NiwtMTAuMjM5OTggLTQuMjY2NjYsLTIxLjc1OTk2MiAwLC0xMS43MzMzMTQgNC4yNjY2NiwtMjEuOTczMjk4IDQuNDc5OTksLTEwLjIzOTk4NCAxMi4xNTk5OCwtMTcuOTE5OTcxIDcuNjc5OTksLTcuNjc5OTg4IDE3LjkxOTk3LC0xMS45NDY2NDggMTAuMjM5OTgsLTQuNDc5OTkzIDIxLjk3MzMsLTQuNDc5OTkzIHogTSAzODMuMzE3OSwxMzguODc5NzggcSAtNy42Nzk5OSw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTksNC4yNjY2NiAtMjEuOTczMyw0LjI2NjY2IC0xMS43MzMzMiwwIC0yMS45NzMzLC00LjI2NjY2IC0xMC4yMzk5OCwtNC40OCAtMTcuOTE5OTcsLTEyLjE1OTk5IC03LjY3OTk5LC03LjY3OTk4IC0xMi4xNTk5OCwtMTcuOTE5OTcgLTQuMjY2NjYsLTEwLjIzOTk4IC00LjI2NjY2LC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMjY2NjYsLTIxLjk3MzI5OCA0LjQ3OTk5LC0xMC4yMzk5ODQgMTIuMTU5OTgsLTE3LjkxOTk3MSA3LjY3OTk5LC03LjY3OTk4OCAxNy45MTk5NywtMTEuOTQ2NjQ4IDEwLjIzOTk4LC00LjQ3OTk5MyAyMS45NzMzLC00LjQ3OTk5MyAxMS43MzMzMSwwIDIxLjk3MzMsNC40Nzk5OTMgMTAuMjM5OTgsNC4yNjY2NiAxNy45MTk5NywxMS45NDY2NDggbCAtMTguMTMzMzEsMTguMTMzMzA0IHEgLTguOTU5OTgsLTguOTU5OTg2IC0yMS43NTk5NiwtOC45NTk5ODYgLTEyLjM3MzMyLDAgLTIxLjc1OTk3LDguOTU5OTg2IC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjQ4LDQuNDc5OTkgMTAuMDI2NjUsNi44MjY2NiA1LjU0NjY2LDIuMTMzMzMgMTEuNzMzMzIsMi4xMzMzMyAxMy4wMTMzMSwwIDIxLjc1OTk2LC04Ljk1OTk5IHogTSA0OTguMDkxMTQsNDUuNjUzMjY3IFYgMTUyLjUzMzEgSCA0NzIuNDkxMTggViA5OS4xOTk4NDggcSAwLC0xMi43OTk5NzkgLTguOTU5OTgsLTIxLjc1OTk2NSAtOC45NTk5OSwtOC45NTk5ODYgLTIxLjc1OTk3LC04Ljk1OTk4NiAtNi4xODY2NiwwIC0xMS45NDY2NSwyLjM0NjY2MyAtNS41NDY2NSwyLjM0NjY2MyAtOS44MTMzMSw2LjYxMzMyMyAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC4yNjY2Niw0LjQ3OTk5IDkuODEzMzEsNi44MjY2NiA1Ljc1OTk5LDIuMTMzMzMgMTEuOTQ2NjUsMi4xMzMzMyA2LjM5OTk5LDAgMTEuNTE5OTgsLTIuMTMzMzMgbCA5LjE3MzMyLDIyLjgyNjYzIHEgLTkuODEzMzIsNC45MDY2NiAtMjIuODI2NjMsNC45MDY2NiAtMTEuNzMzMzEsMCAtMjEuNzU5OTYsLTQuMjY2NjYgLTkuODEzMzIsLTQuNDggLTE3LjA2NjY0LC0xMi4xNTk5OSAtNy4yNTMzMiwtNy42Nzk5OCAtMTEuMzA2NjUsLTE3LjkxOTk3IC00LjA1MzMzLC0xMC4yMzk5OCAtNC4wNTMzMywtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjA1MzMzLC0yMS45NzMyOTggNC4wNTMzMywtMTAuMjM5OTg0IDExLjMwNjY1LC0xNy45MTk5NzEgNy4yNTMzMiwtNy42Nzk5ODggMTcuMDY2NjQsLTExLjk0NjY0OCAxMC4wMjY2NSwtNC40Nzk5OTMgMjEuNzU5OTYsLTQuNDc5OTkzIDEwLjQ1MzMyLDAgMTguNTU5OTcsMy4xOTk5OTUgOC4xMDY2NiwzLjE5OTk5NSAxNC4yOTMzMSw4LjEwNjY1NCB2IC04LjUzMzMyIHogTSA1MzguNjI0NDYsMTUyLjUzMzEgSCA1MTMuMDI0NSBWIDMuMjAwMDAxNSBoIDI1LjU5OTk2IFYgMTUyLjUzMzEgWiBtIDEyMC4xMDY1OSwtNDIuNjY2NiBxIDAsMTAuNDUzMzEgLTMuNDEzMzMsMTguOTg2NjMgLTMuNDEzMzIsOC4zMTk5OSAtOS44MTMzMSwxNC4yOTMzMSAtNi4xODY2Niw1Ljc2IC0xNS4xNDY2NSw4Ljk1OTk5IC04Ljk1OTk4LDMuMiAtMjAuMDUzMywzLjIgLTE3LjcwNjY0LDAgLTMxLjU3MzI4LC01LjU0NjY2IC0xMy44NjY2NCwtNS43NTk5OSAtMjIuODI2NjMsLTEzLjAxMzMyIGwgMTcuNzA2NjQsLTE3LjcwNjYzIHEgNy4wMzk5OSw2LjM5OTk5IDE1Ljc4NjY0LDkuODEzMzEgNS4zMzMzMiwyLjEzMzMzIDEwLjAyNjY1LDIuNzczMzMgNC42OTMzMywwLjY0IDcuNjc5OTksMC42NCA1LjU0NjY2LDAgMTAuMDI2NjUsLTEuMjggNC42OTMzMiwtMS40OTMzMyA4LjEwNjY1LC0zLjgzOTk5IDcuMjUzMzIsLTUuMzMzMzIgNy4yNTMzMiwtMTQuMDc5OTggMCwtNS4zMzMzMiAtMy44Mzk5OSwtOS41OTk5OCAtMi45ODY2NiwtMy40MTMzMyAtNy42Nzk5OSwtNS41NDY2NiAtMy44Mzk5OSwtMi4xMzMzMyAtOC4xMDY2NSwtMy40MTMzMjggLTQuMjY2NjYsLTEuMjc5OTk4IC03LjY3OTk5LC0yLjM0NjY2MyAtMS4wNjY2NiwtMC40MjY2NjYgLTEuOTIsLTAuNDI2NjY2IC0wLjg1MzMzLC0wLjIxMzMzMyAtMS40OTMzMywtMC42Mzk5OTkgLTAuNDI2NjYsMCAtMS4yNzk5OSwtMC40MjY2NjYgLTQuNDgsLTEuMjc5OTk3IC0xMy4wMTMzMiwtNC40Nzk5OTIgLTguMzE5OTgsLTMuMTk5OTk1IC0xNi42Mzk5NywtOC43NDY2NTMgLTE5LjQxMzMsLTEzLjAxMzMxMyAtMTkuNDEzMywtMzEuOTk5OTQ5IDAsLTEyLjU4NjY0NyA0LjI2NjY2LC0yMS4xMTk5NjYgNC40Nzk5OSwtOC43NDY2NTMgMTEuNTE5OTgsLTE0LjA3OTk3OCA3LjAzOTk5LC01LjU0NjY1NzUgMTUuNTczMzEsLTcuODkzMzIwNCBRIDU5MS41MzExNiw2LjYzNzU3MzNlLTYgNTk5Ljg1MTE1LDYuNjM3NTczM2UtNiBxIDE1LjM1OTk3LDAgMjUuODEzMjksMy42MjY2NjA4NjI0MjY3IDEwLjQ1MzMyLDMuNjI2NjYwOSAxNi42Mzk5Nyw3LjI1MzMyMTUgMy4yLDEuOTE5OTk3IDUuMzMzMzMsMy44Mzk5OTQgMi4zNDY2NiwxLjcwNjY2NCA0LjA1MzMyLDMuMTk5OTk1IGwgLTE4LjEzMzMsMTguMzQ2NjM3IHEgLTUuNzU5OTksLTUuNzU5OTkgLTExLjczMzMyLC04Ljc0NjY1MiAtOC45NTk5OCwtNC4yNjY2NiAtMTguNzczMywtNC4yNjY2NiAtNC4yNjY2NiwwIC04LjUzMzMyLDEuMDY2NjY1IC00LjI2NjY2LDEuMDY2NjY1IC03LjQ2NjY1LDIuNzczMzI5IC05LjM4NjY1LDUuNzU5OTkgLTkuMzg2NjUsMTUuMTQ2NjQyIDAsNS43NTk5OTEgMy44Mzk5OSw5LjgxMzMxOCAyLjc3MzMzLDMuMTk5OTk1IDcuNjc5OTksNS43NTk5OTEgNC4wNTMzMiwyLjEzMzMzIDguNTMzMzIsMy40MTMzMjggNC40Nzk5OSwxLjI3OTk5NyA4LjMxOTk4LDIuMzQ2NjYyIGwgMi41NiwwLjYzOTk5OSBxIDEuMDY2NjYsMC40MjY2NjYgNC4wNTMzMywxLjI3OTk5OCAyLjk4NjY2LDAuODUzMzMyIDcuMDM5OTgsMi41NTk5OTYgNC4wNTMzMywxLjcwNjY2NCA4Ljc0NjY2LDQuMDUzMzI3IDQuOTA2NjYsMi4zNDY2NjMgOS41OTk5OCw1LjU0NjY1OCAyMC42OTMzLDEzLjY1MzMxMSAyMC42OTMzLDMyLjIxMzI4NCB6IG0gNjkuMTE5NzcsNDIuNjY2NiBoIC0yMy40NjY2MyBxIC03LjI1MzMyLDAgLTEzLjY1MzMxLC0yLjc3MzMzIC02LjM5OTk5LC0yLjc3MzMzIC0xMS4wOTMzMiwtNy40NjY2NiAtNC42OTMzMiwtNC45MDY2NiAtNy40NjY2NSwtMTEuMzA2NjUgLTIuNzczMzMsLTYuMzk5OTkgLTIuNzczMzMsLTEzLjY1MzMxIFYgMjQuMzE5OTY4IGwgMjUuNTk5OTYsLTYuMzk5OTkgViA1OC42NjY1OCBoIDE0LjkzMzMxIGwgNi4zOTk5OSwyNS41OTk5NTkgaCAtMjEuMzMzMyB2IDMzLjA2NjYxMSBxIDAsNC4wNTMzMyAyLjc3MzMzLDYuODI2NjYgMi43NzMzMywyLjc3MzMzIDYuNjEzMzIsMi43NzMzMyBoIDE3LjA2NjY0IHogbSAxMTEuMzYsLTEwNi44Nzk4MzMgViAxNTIuNTMzMSBIIDgxMy42MTA4NiBWIDk5LjE5OTg0OCBxIDAsLTEyLjc5OTk3OSAtOC45NTk5OSwtMjEuNzU5OTY1IC04Ljk1OTk4LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC02LjE4NjY2LDAgLTExLjk0NjY1LDIuMzQ2NjYzIC01LjU0NjY2LDIuMzQ2NjYzIC05LjgxMzMyLDYuNjEzMzIzIC04Ljk1OTk4LDguOTU5OTg2IC04Ljk1OTk4LDIxLjc1OTk2NSAwLDEyLjU4NjY0MiA4Ljk1OTk4LDIxLjU0NjYzMiA0LjI2NjY2LDQuNDc5OTkgOS44MTMzMiw2LjgyNjY2IDUuNzU5OTksMi4xMzMzMyAxMS45NDY2NSwyLjEzMzMzIDYuMzk5OTksMCAxMS41MTk5OCwtMi4xMzMzMyBsIDkuMTczMzIsMjIuODI2NjMgcSAtOS44MTMzMiw0LjkwNjY2IC0yMi44MjY2Myw0LjkwNjY2IC0xMS43MzMzMiwwIC0yMS43NTk5NywtNC4yNjY2NiAtOS44MTMzMiwtNC40OCAtMTcuMDY2NjQsLTEyLjE1OTk5IC03LjI1MzMyLC03LjY3OTk4IC0xMS4zMDY2NSwtMTcuOTE5OTcgLTQuMDUzMzIsLTEwLjIzOTk4IC00LjA1MzMyLC0yMS43NTk5NjIgMCwtMTEuNzMzMzE0IDQuMDUzMzIsLTIxLjk3MzI5OCA0LjA1MzMzLC0xMC4yMzk5ODQgMTEuMzA2NjUsLTE3LjkxOTk3MSA3LjI1MzMyLC03LjY3OTk4OCAxNy4wNjY2NCwtMTEuOTQ2NjQ4IDEwLjAyNjY1LC00LjQ3OTk5MyAyMS43NTk5NywtNC40Nzk5OTMgMTAuNDUzMzEsMCAxOC41NTk5NywzLjE5OTk5NSA4LjEwNjY1LDMuMTk5OTk1IDE0LjI5MzMxLDguMTA2NjU0IHYgLTguNTMzMzIgeiBtIDEwNy45NDY1Miw5My4yMjY1MTMgcSAtNy42Nzk5OCw3LjY3OTk5IC0xNy45MTk5NywxMi4xNTk5OSAtMTAuMjM5OTgsNC4yNjY2NiAtMjEuOTczMjksNC4yNjY2NiAtMTEuNzMzMzIsMCAtMjEuOTczMywtNC4yNjY2NiAtMTAuMjM5OTksLTQuNDggLTE3LjkxOTk3LC0xMi4xNTk5OSAtNy42Nzk5OSwtNy42Nzk5OCAtMTIuMTU5OTgsLTE3LjkxOTk3IC00LjI2NjY2LC0xMC4yMzk5OCAtNC4yNjY2NiwtMjEuNzU5OTYyIDAsLTExLjczMzMxNCA0LjI2NjY2LC0yMS45NzMyOTggNC40Nzk5OSwtMTAuMjM5OTg0IDEyLjE1OTk4LC0xNy45MTk5NzEgNy42Nzk5OCwtNy42Nzk5ODggMTcuOTE5OTcsLTExLjk0NjY0OCAxMC4yMzk5OCwtNC40Nzk5OTMgMjEuOTczMywtNC40Nzk5OTMgMTEuNzMzMzEsMCAyMS45NzMyOSw0LjQ3OTk5MyAxMC4yMzk5OSw0LjI2NjY2IDE3LjkxOTk3LDExLjk0NjY0OCBsIC0xOC4xMzMzLDE4LjEzMzMwNCBxIC04Ljk1OTk5LC04Ljk1OTk4NiAtMjEuNzU5OTYsLTguOTU5OTg2IC0xMi4zNzMzMiwwIC0yMS43NTk5Nyw4Ljk1OTk4NiAtOC45NTk5OSw4Ljk1OTk4NiAtOC45NTk5OSwyMS43NTk5NjUgMCwxMi41ODY2NDIgOC45NTk5OSwyMS41NDY2MzIgNC40Nzk5OSw0LjQ3OTk5IDEwLjAyNjY1LDYuODI2NjYgNS41NDY2NiwyLjEzMzMzIDExLjczMzMyLDIuMTMzMzMgMTMuMDEzMzEsMCAyMS43NTk5NiwtOC45NTk5OSB6IE0gMTA1MS42OTA3LDQ1Ljg2NjYgOTk4LjM1NzQsOTkuMTk5ODQ4IDEwNTEuNjkwNywxNTIuNTMzMSBoIC0zNi4wNTMzIEwgOTgwLjIyNDEsMTE3LjExOTgyIFYgMTUyLjUzMzEgSCA5NTQuNjI0MTQgViAzLjIwMDAwMTUgSCA5ODAuMjI0MSBWIDgxLjA2NjU0NCBMIDEwMTUuNDI0LDQ1Ljg2NjYgaCAzNi4yNjY3IHoiLz48L3N2Zz4=", no = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojNTVhYmU1O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiM1NWFiZTU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2Y3ODQ3MiIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNmNzg0NzIiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==", ro = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ni45NTU0ODJtbSIgaGVpZ2h0PSIzOS44NDUzMW1tIiB2aWV3Qm94PSIwIDAgNDYuOTU1NDgyIDM5Ljg0NTMxIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODAuOTYyNSwtMTI4LjU4NzUpIj48ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjIzNDc3NzQxLDAsMCwwLjIzNTc5MzE4LDY5LjY2MDM5Miw5NC42Njg4MzgpIj48cGF0aCBzdHlsZT0iZmlsbDojMjQ1YjhmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjM3Mjk2MiIgZD0ibSAxNjUuNzQzNjksMzEyLjM0NTE0IGMgLTMuNjU5MDQsLTAuOTU4NjEgLTYuODkxMzEsLTMuMzUzNDggLTkuMjE0OTQsLTYuODI3NTkgLTEuOTEyMjYsLTIuODU5MDggLTIuMzk3MDUsLTQuNTY5NzEgLTIuMzk3MDUsLTguNDU4MzYgMCwtMy45OTI1NCAwLjA4MjQsLTQuMjc1NyA0LjIzMDEyLC0xNC41NDU1MyA0LjAwOTIzLC05LjkyNjgxIDExLjc0NTk3LC0yOS42MDgwNCAxNC4xNzI1NCwtMzYuMDUzMDIgMS4wNTU1LC0yLjgwMzQ0IDQuNjM1NzksLTEyLjA5MDIgNy45NTYxOSwtMjAuNjM3MjUgMy4zMjA0LC04LjU0NzA2IDkuNDcyNjUsLTI0LjQ5MTIgMTMuNjcxNjgsLTM1LjQzMTQzIDkuNDExNjMsLTI0LjUyMTI1IDEyLjE1MTI0LC0zMS4zOTYxNCAxNC4xOTIyMiwtMzUuNjE0NTUgMS4zMzIyOSwtMi43NTM2NCAxLjg3ODY3LC0zLjU5MjU4IDMuMzQ1NDYsLTUuMTM2NzIgMS45NjgyMiwtMi4wNzIwMyA0LjA5ODQsLTMuNTYyNTMgNi40NjY4NywtNC41MjQ5MyAxLjI3MTM4LC0wLjUxNjYgMi4yNTc2MywtMC42OTMwMiA0LjgyNjc5LC0wLjg2MzQgNS4yMTgzLC0wLjM0NjA3IDI0LjU3NDYyLC0wLjU1NDU4IDI0Ljk4NTA4LC0wLjI2OTE0IDAuNDM3OTcsMC4zMDQ1NiAxLjEzMTMxLC0xLjUwMDIxIC0xNS4xNTQxMiwzOS40NDY3OCAtMjAuNjg4NDIsNTIuMDE3NTcgLTI4Ljk2MTg1LDcyLjk4MjY1IC0zNi43NTE4MSw5My4xMzAwNCAtOC40MDM1NiwyMS43MzQzNCAtOS4zOTQ5NSwyNC4yMDc2NCAtMTAuNzYzMTYsMjYuODUxNjUgLTIuMzU0NSw0LjU1IC02LjM4MjQsNy43ODMzMSAtMTEuMjc2NjEsOS4wNTIwNyAtMi4wNzI1OSwwLjUzNzI5IC02LjAwMDE1LDAuNDgxMDkgLTguMjg5MjYsLTAuMTE4NjIgeiIvPjxwYXRoIHN0eWxlPSJmaWxsOiMyNDViOGY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMzcyOTYyIiBkPSJtIDEyMi40OTIyLDMxMi41ODkxNiBjIC00LjA3OTU2LC0wLjczMjU4IC04LjY1MTIzLC0zLjkzNDEgLTExLjIzMjU4LC03Ljg2NjE2IC0wLjczMDA0LC0xLjExMjAzIC0xLjg1NDU5LC0zLjQ4MzI2IC0yLjg0MzA5LC01Ljk5NDk2IC0wLjg5OTQzLC0yLjI4NTQgLTQuNzYyODcsLTEyLjE1NTMgLTguNTg1NDA5LC0yMS45MzMxMyAtMy44MjI1NCwtOS43Nzc4MyAtOC40NzkwNzIsLTIxLjYzODAzIC0xMC4zNDc4NTIsLTI2LjM1NjAxIC0xLjg2ODc4LC00LjcxNzk3IC03LjQwNDk2OCwtMTguODE1OTUgLTEyLjMwMjY0NiwtMzEuMzI4ODQgLTQuODk3NjgxLC0xMi41MTI4OCAtMTAuODYxOTIzLC0yNy43Mjk3NSAtMTMuMjUzODc2LC0zMy44MTUyNSAtMi4zOTE5NTMsLTYuMDg1NSAtNS42NjUyMTYsLTE0LjQ3NzE1IC03LjI3MzkxOCwtMTguNjQ4MTEgLTEuNjA4Njk4LC00LjE3MDk3IC00LjIzNTk1LC0xMC44NDgyNiAtNS44MzgzMzQsLTE0LjgzODQzIC0yLjA3Mjc3OSwtNS4xNjE1MyAtMi44MzY1MDksLTcuMzMxNzcgLTIuNjQ2ODY5LC03LjUyMTQgMC4zNDc5MDMsLTAuMzQ3OTEgMjAuODI4ODg3LC0wLjM1OTE3IDI0LjczMjg3NCwtMC4wMTM2IDQuNjQ5MjU2LDAuNDExNTQgNy4wMTI4NDgsMS41MjgxMSAxMC41MTc1NDYsNC45Njg1MiAxLjQ1MDgxOSwxLjQyNDIxIDIuMzk4LDIuNjAyMTMgMi45MDQzNzUsMy42MTE5IDEuNzk4NjkzLDMuNTg2NzggOC40MTgxMDMsMjAuMDI4NjkgMTguNjY2Mjc5LDQ2LjM2NTA2IDMuNjk4MzksOS41MDQzMiAxMS4xNjA2NywyOC40MTM1MSAxNi41ODI4NSw0Mi4wMjA0MiAxNC42MzQzMywzNi43MjQ2NyAxOC43NDc1Myw0Ny4xMzc2NSAxOS41Mzk3NSw0OS40NjY4NyAyLjIyOTgxLDYuNTU1ODkgMS4wNTUzMywxMi43MDIxNCAtMy4zMDQyNiwxNy4yOTE3NiAtMy4xMDM1OSwzLjI2NzM2IC02LjIyMDQzLDQuNjA4NDUgLTExLjAyMTc4LDQuNzQyNCAtMS42NDMzMSwwLjA0NTggLTMuNTc1MTgsLTAuMDIyMSAtNC4yOTMwNiwtMC4xNTEwMyB6Ii8+PHJlY3Qgc3R5bGU9ImZpbGw6I2VjNjM0ZCIgd2lkdGg9IjExLjI2OTU0IiBoZWlnaHQ9IjQyLjA5NzYyMiIgeD0iMTY0Ljg4MDE0IiB5PSIxNzYuMjU5MDkiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS42MjE1NiIgaGVpZ2h0PSI4Ny4wMzg2MDUiIHg9IjE0Mi4xNTg2OCIgeT0iMTUzLjc4ODYiIHJ5PSI1LjYxMDQ5NiIvPjxyZWN0IHN0eWxlPSJmaWxsOiNlYzYzNGQiIHdpZHRoPSIxMS4yNjk1NCIgaGVpZ2h0PSI0Mi4wOTc2MjIiIHg9IjExOS43ODkyNCIgeT0iMTc2LjI1OTA5IiByeT0iNS42MTA0OTYiLz48L2c+PC9nPjwvc3ZnPg==";
@@ -58,7 +58,7 @@ function oe({ d: t, ...e }) {
58
58
  function io({ size: t = 15 }) {
59
59
  return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", "aria-hidden": "true", children: /* @__PURE__ */ i("rect", { x: "6", y: "6", width: "12", height: "12", rx: "2.5" }) });
60
60
  }
61
- function Xt({ size: t = 13 }) {
61
+ function Wt({ size: t = 13 }) {
62
62
  return /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: t, height: t, fill: "currentColor", style: { marginLeft: 2 }, "aria-hidden": "true", children: /* @__PURE__ */ i("path", { d: "M7.5 5.6a1 1 0 0 1 1.52-.85l9.1 5.55a1 1 0 0 1 0 1.7l-9.1 5.55a1 1 0 0 1-1.52-.85V5.6Z" }) });
63
63
  }
64
64
  function ht({ size: t = 15, color: e = "currentColor", track: n = "rgba(127,127,127,.35)", sw: r }) {
@@ -86,7 +86,7 @@ function ao({ size: t = 12 }) {
86
86
  /* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
87
87
  ] });
88
88
  }
89
- function Vn({ dark: t, height: e = 20, link: n = !0 }) {
89
+ function Bn({ dark: t, height: e = 20, link: n = !0 }) {
90
90
  const r = /* @__PURE__ */ i("img", { src: t ? eo : to, alt: "VocalStack", decoding: "sync", style: { height: e, width: "auto", display: "block" } });
91
91
  return n ? /* @__PURE__ */ i("a", { href: Si, style: { display: "block" }, children: r }) : r;
92
92
  }
@@ -100,8 +100,8 @@ function Tt({ checked: t, onChange: e, label: n, disabled: r }) {
100
100
  return /* @__PURE__ */ i("button", { type: "button", role: "switch", "aria-checked": t, "aria-label": n, className: "vs-toggle", disabled: r, onClick: () => e(!t), children: /* @__PURE__ */ i("span", { className: "vs-toggle__knob" }) });
101
101
  }
102
102
  function kr({ value: t, onChange: e, options: n, size: r, bordered: s = !0, fill: a }) {
103
- const o = j(null), [l, c] = k(null), u = Math.max(0, n.findIndex((d) => d.value === t));
104
- return Jt(() => {
103
+ const o = z(null), [l, c] = j(null), u = Math.max(0, n.findIndex((d) => d.value === t));
104
+ return Xt(() => {
105
105
  const d = o.current;
106
106
  if (!d) return;
107
107
  const M = d.querySelectorAll(".vs-switch__opt")[u];
@@ -136,7 +136,7 @@ function Rn({ flag: t, code: e, label: n, onClick: r, variant: s, block: a, bord
136
136
  ] });
137
137
  }
138
138
  function lo({ value: t, label: e = "Copy", onCopied: n }) {
139
- const [r, s] = k(!1), a = async () => {
139
+ const [r, s] = j(!1), a = async () => {
140
140
  try {
141
141
  await navigator.clipboard.writeText(t), s(!0), n == null || n(), setTimeout(() => s(!1), 1400);
142
142
  } catch {
@@ -161,7 +161,7 @@ function lo({ value: t, label: e = "Copy", onCopied: n }) {
161
161
  );
162
162
  }
163
163
  function co(t, e) {
164
- Jt(() => {
164
+ Xt(() => {
165
165
  const n = t.current, r = window.visualViewport;
166
166
  if (!e || !n || !r) return;
167
167
  let s = 0;
@@ -178,15 +178,15 @@ function co(t, e) {
178
178
  }, [t, e]);
179
179
  }
180
180
  function jr({ children: t, ms: e = 220 }) {
181
- const [n] = k(() => {
181
+ const [n] = j(() => {
182
182
  var r;
183
183
  return typeof window < "u" && !!((r = window.matchMedia) != null && r.call(window, "(hover: hover) and (pointer: fine)").matches);
184
184
  });
185
185
  return n ? /* @__PURE__ */ i(uo, { ms: e, children: t }) : /* @__PURE__ */ i("div", { children: t });
186
186
  }
187
187
  function uo({ children: t, ms: e }) {
188
- const n = j(null), r = j(null), [s, a] = k(null);
189
- return Jt(() => {
188
+ const n = z(null), r = z(null), [s, a] = j(null);
189
+ return Xt(() => {
190
190
  const o = r.current, l = n.current;
191
191
  if (!o || !l) return;
192
192
  let c;
@@ -210,7 +210,7 @@ function uo({ children: t, ms: e }) {
210
210
  }, [e]), /* @__PURE__ */ i("div", { ref: n, style: { height: s ?? void 0, overflow: "clip", transition: s == null ? void 0 : `height ${e}ms cubic-bezier(.32,.72,0,1)` }, children: /* @__PURE__ */ i("div", { ref: r, children: t }) });
211
211
  }
212
212
  function en({ open: t, onClose: e, title: n, titleNode: r, note: s, doneLabel: a = "Done", children: o, drawer: l = !1, header: c, kind: u, sticky: d = !1 }) {
213
- const M = j(null);
213
+ const M = z(null);
214
214
  return co(M, t), S(() => {
215
215
  if (!t) return;
216
216
  const h = (f) => {
@@ -308,7 +308,7 @@ function To(t, e, n) {
308
308
  const s = n;
309
309
  return s && (s.retryable === !0 || s.code === "engine_unavailable") ? yo : null;
310
310
  }
311
- class wo {
311
+ class vo {
312
312
  constructor(e = {}) {
313
313
  ge(this, "entries", /* @__PURE__ */ new Map());
314
314
  ge(this, "wanted", []);
@@ -453,7 +453,7 @@ const nt = class nt {
453
453
  ge(this, "loading", null);
454
454
  ge(this, "readAhead", 0);
455
455
  ge(this, "readAheadS", 0);
456
- ge(this, "prefetch", new wo());
456
+ ge(this, "prefetch", new vo());
457
457
  ge(this, "warmed", /* @__PURE__ */ new Set());
458
458
  ge(this, "startingSince", /* @__PURE__ */ new Map());
459
459
  ge(this, "retries", /* @__PURE__ */ new Map());
@@ -895,7 +895,7 @@ let Ir = nt;
895
895
  function Ui(t, e) {
896
896
  return e == null ? t.find((n) => !n.voiceKey) ?? null : t.find((n) => n.voiceKey === e) ?? t.find((n) => !n.voiceKey && n.voice === e) ?? null;
897
897
  }
898
- function vo(t, e, n, r = {}, s) {
898
+ function wo(t, e, n, r = {}, s) {
899
899
  if (!t) return [];
900
900
  const a = s != null && s.length ? s : t.clips;
901
901
  if (!(a != null && a.length)) return [];
@@ -953,7 +953,7 @@ function Pi(t, e) {
953
953
  for (const n of Or) n();
954
954
  }
955
955
  function Ur(t, e) {
956
- const [n, r] = k(() => Cr(t, e));
956
+ const [n, r] = j(() => Cr(t, e));
957
957
  return S(() => {
958
958
  const s = () => r(Cr(t, e));
959
959
  return Or.add(s), window.addEventListener("storage", s), () => {
@@ -988,7 +988,7 @@ function zo(t) {
988
988
  return [typeof e == "number" && e > 0 ? e : t === "ga" ? 560 : jo, n];
989
989
  }
990
990
  function Rr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPlaceholder: a = "Search languages", none: o, pinned: l = [], recent: c = [], requireVoice: u, keepOpen: d, busy: M }) {
991
- const [h, f] = k(""), [p, y] = k(!1), [T, N] = k(null);
991
+ const [h, f] = j(""), [p, y] = j(!1), [T, N] = j(null);
992
992
  S(() => {
993
993
  t && (f(""), y(!1), N(null));
994
994
  }, [t]);
@@ -999,9 +999,9 @@ function Rr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
999
999
  return K !== -1 || L !== -1 ? (K === -1 ? 999 : K) - (L === -1 ? 999 : L) : O.label.localeCompare(te.label);
1000
1000
  });
1001
1001
  }, [s, h, l]), b = ze(
1002
- () => h ? [] : c.map((A) => m.find((w) => w.code === A)).filter((A) => !!A).sort((A, w) => A.label.localeCompare(w.label)),
1002
+ () => h ? [] : c.map((A) => m.find((v) => v.code === A)).filter((A) => !!A).sort((A, v) => A.label.localeCompare(v.label)),
1003
1003
  [c, m, h]
1004
- ), C = ze(() => b.length ? m.filter((A) => !b.some((w) => w.code === A.code)) : m, [m, b]), D = p || h ? C.length : 12, B = C, Y = C.length - Math.min(D, C.length), ee = (A, w = !1, _ = !1) => {
1004
+ ), C = ze(() => b.length ? m.filter((A) => !b.some((v) => v.code === A.code)) : m, [m, b]), D = p || h ? C.length : 12, V = C, Y = C.length - Math.min(D, C.length), ee = (A, v = !1, _ = !1) => {
1005
1005
  const O = !!u && !A.voice;
1006
1006
  return /* @__PURE__ */ g(
1007
1007
  "button",
@@ -1022,7 +1022,7 @@ function Rr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
1022
1022
  /* @__PURE__ */ i("div", { className: "vs-picker__label", children: A.label }),
1023
1023
  /* @__PURE__ */ i("div", { className: "vs-picker__native", children: A.native })
1024
1024
  ] }),
1025
- /* @__PURE__ */ i("span", { className: "vs-picker__slot", children: w && /* @__PURE__ */ i("span", { className: "vs-picker__forget", role: "button", tabIndex: 0, title: `Remove ${A.label} from recent`, "aria-label": `Remove ${A.label} from recent`, onClick: (te) => {
1025
+ /* @__PURE__ */ i("span", { className: "vs-picker__slot", children: v && /* @__PURE__ */ i("span", { className: "vs-picker__forget", role: "button", tabIndex: 0, title: `Remove ${A.label} from recent`, "aria-label": `Remove ${A.label} from recent`, onClick: (te) => {
1026
1026
  te.stopPropagation(), oi(A.code);
1027
1027
  }, onKeyDown: (te) => {
1028
1028
  (te.key === "Enter" || te.key === " ") && (te.preventDefault(), te.stopPropagation(), oi(A.code));
@@ -1049,12 +1049,12 @@ function Rr({ open: t, onClose: e, value: n, onSelect: r, languages: s, searchPl
1049
1049
  /* @__PURE__ */ i("span", { className: "vs-picker__slot" }),
1050
1050
  /* @__PURE__ */ i("span", { className: "vs-picker__check", children: n === null && /* @__PURE__ */ i(oe, { d: X.check, size: 16, sw: 2.2 }) })
1051
1051
  ] }),
1052
- b.length > 0 && /* @__PURE__ */ g(be, { children: [
1052
+ b.length > 0 && /* @__PURE__ */ g(Ce, { children: [
1053
1053
  /* @__PURE__ */ i("div", { className: "vs-picker__head", children: "RECENT" }),
1054
1054
  b.map((A) => ee(A, !0)),
1055
1055
  /* @__PURE__ */ i("div", { className: "vs-picker__rule" })
1056
1056
  ] }),
1057
- B.map((A, w) => ee(A, !1, w >= D)),
1057
+ V.map((A, v) => ee(A, !1, v >= D)),
1058
1058
  Y > 0 && /* @__PURE__ */ g("button", { type: "button", className: "vs-picker__more vs-picker__more--btn", style: { background: "none", border: 0, cursor: "pointer", width: "100%", textAlign: "left" }, onClick: () => y(!0), children: [
1059
1059
  "+ ",
1060
1060
  Y,
@@ -1073,7 +1073,7 @@ function Io({ open: t, onClose: e, title: n, note: r, sticky: s, ...a }) {
1073
1073
  return /* @__PURE__ */ i(en, { open: t, onClose: e, title: n, note: r, drawer: !1, sticky: s, kind: "picker", header: o, children: l });
1074
1074
  }
1075
1075
  function li({ src: t, setup: e, t: n, playing: r, seekN: s, onToggle: a, seekOver: o = 0.4 }) {
1076
- const l = j(null), [c, u] = k(!1), [d, M] = k(!1), h = j(n);
1076
+ const l = z(null), [c, u] = j(!1), [d, M] = j(!1), h = z(n);
1077
1077
  return h.current = n, S(() => {
1078
1078
  u(!1), M(!1);
1079
1079
  }, [t, e]), S(() => {
@@ -1120,10 +1120,10 @@ function li({ src: t, setup: e, t: n, playing: r, seekN: s, onToggle: a, seekOve
1120
1120
  }
1121
1121
  ),
1122
1122
  c && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
1123
- c && /* @__PURE__ */ i("div", { className: `txyt__paused${r ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Xt, { size: 44 }) }) })
1123
+ c && /* @__PURE__ */ i("div", { className: `txyt__paused${r ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) }) })
1124
1124
  ] });
1125
1125
  }
1126
- const Bi = [
1126
+ const Vi = [
1127
1127
  { id: "youtube", name: "YouTube", color: "#ff3b30", hosts: /(^|\.)(youtube\.com|youtu\.be|youtube-nocookie\.com)$/, glyph: "M21.6 7.2a2.7 2.7 0 0 0-1.9-1.9C18 4.8 12 4.8 12 4.8s-6 0-7.7.5a2.7 2.7 0 0 0-1.9 1.9C2 8.9 2 12 2 12s0 3.1.4 4.8a2.7 2.7 0 0 0 1.9 1.9c1.7.5 7.7.5 7.7.5s6 0 7.7-.5a2.7 2.7 0 0 0 1.9-1.9c.4-1.7.4-4.8.4-4.8s0-3.1-.4-4.8ZM10 15.1V8.9l5.3 3.1L10 15.1Z" },
1128
1128
  { id: "loom", name: "Loom", color: "#8f7bff", hosts: /(^|\.)loom\.com$/, glyph: "M21 11h-5.2l4.5-2.6-1-1.7-4.5 2.6 2.6-4.5-1.7-1-2.6 4.5V3h-2v5.3L8.5 3.8l-1.7 1 2.6 4.5-4.5-2.6-1 1.7L8.2 11H3v2h5.2l-4.5 2.6 1 1.7 4.5-2.6-2.6 4.5 1.7 1 2.6-4.5V21h2v-5.2l2.6 4.5 1.7-1-2.6-4.5 4.5 2.6 1-1.7-4.5-2.6H21v-2Zm-9 3.4a2.4 2.4 0 1 1 0-4.8 2.4 2.4 0 0 1 0 4.8Z" },
1129
1129
  { id: "vimeo", name: "Vimeo", color: "#1ab7ea", hosts: /(^|\.)vimeo\.com$/, glyph: "M22 7.4c-.1 2-1.5 4.7-4.2 8.1-2.8 3.6-5.1 5.4-7 5.4-1.2 0-2.2-1.1-3-3.3L6.2 11.6C5.6 9.4 5 8.3 4.3 8.3c-.1 0-.6.3-1.4.9L2 8l2.7-2.4C5.9 4.6 6.8 4 7.4 4c1.4-.1 2.3.9 2.6 2.9.4 2.2.6 3.6.8 4.1.4 1.8.9 2.7 1.4 2.7.4 0 1-.6 1.8-1.9.8-1.2 1.2-2.2 1.3-2.8.1-1.1-.3-1.6-1.3-1.6-.5 0-.9.1-1.4.3.9-3 2.7-4.5 5.3-4.4 1.9.1 2.8 1.3 2.7 3.7Z" },
@@ -1137,8 +1137,26 @@ const Bi = [
1137
1137
  { id: "kick", name: "Kick", color: "#53fc18", hosts: /(^|\.)kick\.com$/, glyph: "M4 3h5.5v5H11V6h2V3h5.5v6.5h-2V11h-2v2h2v1.5h2V21H13v-3h-2v-2H9.5v5H4V3Z" },
1138
1138
  { id: "mixcloud", name: "Mixcloud", color: "#7f8cff", hosts: /(^|\.)mixcloud\.com$/, audioOnly: !0, glyph: "M17.5 9.5a5.5 5.5 0 0 0-10.6 1.2A3.8 3.8 0 0 0 7.3 18h10.2a4.25 4.25 0 0 0 0-8.5Z" },
1139
1139
  { id: "streamable", name: "Streamable", color: "#0f90fa", hosts: /(^|\.)streamable\.com$/, glyph: "M4 6.5A2.5 2.5 0 0 1 6.5 4h11A2.5 2.5 0 0 1 20 6.5v11a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 4 17.5v-11Zm6 2.3v6.4l5.2-3.2L10 8.8Z" },
1140
- { id: "bandcamp", name: "Bandcamp", color: "#1da0c3", hosts: /(^|\.)bandcamp\.com$/, audioOnly: !0, glyph: "M2 18 8.5 6H22l-6.5 12H2Z" }
1141
- ], bo = new Map(Bi.map((t) => [t.id, t]));
1140
+ { id: "bandcamp", name: "Bandcamp", color: "#1da0c3", hosts: /(^|\.)bandcamp\.com$/, audioOnly: !0, glyph: "M2 18 8.5 6H22l-6.5 12H2Z" },
1141
+ { id: "ted", name: "TED", color: "#e62b1e", hosts: /(^|\.)ted\.com$/, glyph: "M2 6h6.5v2.3H6.4V18H4V8.3H2V6Zm7.5 0h5.3v2.3h-2.9v2.6h2.6v2.3h-2.6v2.5h2.9V18H9.5V6Zm6.4 0h2.3A3.8 3.8 0 0 1 22 9.8v4.4a3.8 3.8 0 0 1-3.8 3.8h-2.3V6Zm2.4 2.3v7.4c.9 0 1.4-.7 1.4-1.6v-4.2c0-.9-.5-1.6-1.4-1.6Z" },
1142
+ { id: "linkedin", name: "LinkedIn", color: "#0a66c2", hosts: /(^|\.)linkedin\.com$/, glyph: "M5 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5ZM3 9.5h4V21H3V9.5Zm6.5 0h3.8v1.6h.1c.5-1 1.8-2 3.8-2 4 0 4.8 2.6 4.8 6V21h-4v-5.2c0-1.2 0-2.8-1.7-2.8s-2 1.3-2 2.7V21h-4V9.5Z" },
1143
+ { id: "archive", name: "Internet Archive", color: "#c8c8c8", hosts: /(^|\.)archive\.org$/, glyph: "M3 19h18v2H3v-2Zm1-2h16v1.2H4V17Zm1.5-9h2v8h-2V8Zm5.5 0h2v8h-2V8Zm5.5 0h2v8h-2V8ZM3 5.5 12 3l9 2.5V7H3V5.5Z" },
1144
+ { id: "odysee", name: "Odysee", color: "#ef1970", hosts: /(^|\.)(odysee\.com|lbry\.tv)$/, glyph: "M12 3a9 9 0 1 1 0 18 9 9 0 0 1 0-18Zm0 4a5 5 0 1 0 0 10 5 5 0 0 0 0-10Z" },
1145
+ { id: "niconico", name: "Niconico", color: "#e6e6e6", hosts: /(^|\.)(nicovideo\.jp|nico\.ms)$/, glyph: "M4 8h16a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2Zm3.5-5L11 7H9.3L6.5 4.2 7.5 3Zm9 0 1 1.2L14.7 7H13l3.5-4Z" },
1146
+ { id: "vk", name: "VK", color: "#0077ff", hosts: /(^|\.)(vk\.com|vkvideo\.ru)$/, glyph: "M12.8 17.5c-5.5 0-8.6-3.8-8.8-10h2.8c.1 4.6 2.1 6.5 3.7 6.9V7.5h2.6v3.9c1.6-.2 3.3-2 3.8-3.9h2.6c-.4 2.4-2.2 4.2-3.4 4.9 1.3.6 3.3 2.1 4.1 5.1h-2.9c-.6-1.9-2.2-3.4-4.2-3.6v3.6h-.3Z" },
1147
+ { id: "bitchute", name: "BitChute", color: "#ef4137", hosts: /(^|\.)bitchute\.com$/, glyph: "M12 3a9 9 0 1 1 0 18 9 9 0 0 1 0-18Zm-2 5.5v7l6-3.5-6-3.5Z" },
1148
+ { id: "wistia", name: "Wistia", color: "#54bbff", hosts: /(^|\.)(wistia\.com|wistia\.net|wi\.st)$/, glyph: "M3 7h13l-2.5 4H3V7Zm0 6h15.5L21 9v4.5L18.5 17H3v-4Z" },
1149
+ { id: "vidyard", name: "Vidyard", color: "#38c172", hosts: /(^|\.)vidyard\.com$/, glyph: "M3 5h4l5 9 5-9h4l-9 15L3 5Z" },
1150
+ { id: "kaltura", name: "Kaltura", color: "#00a8e1", hosts: /(^|\.)kaltura\.com$/, glyph: "M5 4h3v7l6-7h4l-6.5 7.3L18.5 20h-4l-5-6.4L8 15.3V20H5V4Z" },
1151
+ { id: "jwplayer", name: "JW Player", color: "#ff0046", hosts: /(^|\.)(jwplayer\.com|jwplatform\.com)$/, glyph: "M6 5h3v9.5a4 4 0 0 1-4 4H4v-2.8h1c.6 0 1-.5 1-1.2V5Zm5 0h3l1.5 7L17 5h3l-3 13h-3l-1.5-6.5L11.9 18H9.5L11 5Z" },
1152
+ { id: "pinterest", name: "Pinterest", color: "#e60023", hosts: /(^|\.)(pinterest\.[a-z.]+|pin\.it)$/, glyph: "M12 2.5a9.5 9.5 0 0 0-3.5 18.3c-.1-.8-.2-2 0-2.9l1.3-5.4s-.3-.7-.3-1.6c0-1.5.9-2.7 2-2.7.9 0 1.4.7 1.4 1.6 0 1-.6 2.4-.9 3.7-.3 1.1.6 2 1.7 2 2 0 3.5-2.1 3.5-5.2 0-2.7-2-4.6-4.8-4.6-3.3 0-5.2 2.5-5.2 5 0 1 .4 2.1.9 2.7l.1.4-.3 1.3c0 .2-.2.3-.4.2-1.4-.7-2.3-2.7-2.3-4.4 0-3.6 2.6-6.9 7.5-6.9 3.9 0 7 2.8 7 6.6 0 3.9-2.5 7.1-5.9 7.1-1.2 0-2.2-.6-2.6-1.3l-.7 2.7c-.3 1-.9 2.2-1.4 2.9A9.5 9.5 0 1 0 12 2.5Z" },
1153
+ { id: "bluesky", name: "Bluesky", color: "#1185fe", hosts: /(^|\.)bsky\.app$/, glyph: "M6.3 4.4c2.3 1.7 4.7 5.2 5.7 7 1-1.8 3.4-5.3 5.7-7 1.6-1.2 4.3-2.2 4.3.9 0 .6-.4 5.2-.6 5.9-.7 2.6-3.3 3.2-5.6 2.8 4 .7 5 2.9 2.8 5.2-4.2 4.3-6-1.1-6.5-2.5l-.1-.4-.1.4c-.5 1.4-2.3 6.8-6.5 2.5-2.2-2.3-1.2-4.5 2.8-5.2-2.3.4-4.9-.2-5.6-2.8C2.4 10.5 2 5.9 2 5.3c0-3.1 2.7-2.1 4.3-.9Z" },
1154
+ { id: "gdrive", name: "Google Drive", color: "#34a853", hosts: /^drive\.google\.com$/, glyph: "M8.2 3h7.6l6.2 10.8-3.8 6.6H5.8L2 13.8 8.2 3Zm1.2 2L5 12.6h4.4L13.8 5H9.4Zm6.4 1.2-2.2 3.8 4 6.8 2.2-3.8-4-6.8ZM4.4 14.6l2.2 3.8h8.8l2.2-3.8H4.4Z" },
1155
+ { id: "spreaker", name: "Spreaker", color: "#f5c300", hosts: /(^|\.)spreaker\.com$/, audioOnly: !0, glyph: "M12 9a3 3 0 1 1 0 6 3 3 0 0 1 0-6ZM6.3 6.3l1.4 1.4a6 6 0 0 0 0 8.6l-1.4 1.4a8 8 0 0 1 0-11.4Zm11.4 0a8 8 0 0 1 0 11.4l-1.4-1.4a6 6 0 0 0 0-8.6l1.4-1.4Z" },
1156
+ { id: "iheart", name: "iHeartRadio", color: "#c6002b", hosts: /(^|\.)iheart\.com$/, audioOnly: !0, glyph: "M12 21s-7.5-4.6-9.4-9.4C1.2 8 3.4 4 7.3 4c2 0 3.6 1.1 4.7 2.6C13.1 5.1 14.7 4 16.7 4c3.9 0 6.1 4 4.7 7.6C19.5 16.4 12 21 12 21Z" },
1157
+ { id: "audioboom", name: "Audioboom", color: "#1ea2e0", hosts: /(^|\.)audioboom\.com$/, audioOnly: !0, glyph: "M12 3a9 9 0 1 1 0 18 9 9 0 0 1 0-18Zm-4 6v6h2V9H8Zm3-2v10h2V7h-2Zm3 3v4h2v-4h-2Z" },
1158
+ { id: "cnn", name: "CNN", color: "#cc0000", hosts: /(^|\.)cnn\.com$/, glyph: "M2 7h20v10H2V7Zm3.5 2.2a2.8 2.8 0 1 0 0 5.6h1.4v-1.6H5.6a1.2 1.2 0 1 1 0-2.4h1.3V9.2H5.5Zm3 0v5.6h1.6v-3.3l2.4 3.3H14V9.2h-1.6v3.3L10 9.2H8.5Zm6.2 0v5.6h1.6v-3.3l2.4 3.3h1.5V9.2h-1.6v3.3l-2.4-3.3h-1.5Z" }
1159
+ ], bo = new Map(Vi.map((t) => [t.id, t]));
1142
1160
  function Xu(t) {
1143
1161
  return t ? bo.get(t) ?? null : null;
1144
1162
  }
@@ -1153,9 +1171,9 @@ function Oo(t) {
1153
1171
  }
1154
1172
  function Pn(t) {
1155
1173
  const e = Oo(t);
1156
- return e ? Bi.find((n) => n.hosts.test(e)) ?? null : null;
1174
+ return e ? Vi.find((n) => n.hosts.test(e)) ?? null : null;
1157
1175
  }
1158
- function zt(t) {
1176
+ function It(t) {
1159
1177
  try {
1160
1178
  return new URL(/^[a-z][a-z0-9+.-]*:\/\//i.test(t) ? t : `https://${t}`);
1161
1179
  } catch {
@@ -1163,13 +1181,13 @@ function zt(t) {
1163
1181
  }
1164
1182
  }
1165
1183
  const un = (t) => Math.max(0, Math.floor(t));
1166
- function Vi(t) {
1184
+ function Bi(t) {
1167
1185
  var n;
1168
- const e = /\/(?:share|embed)\/(?:[^/?#]*-)?([0-9a-f]{32})(?:[/?#]|$)/i.exec(((n = zt(t)) == null ? void 0 : n.pathname) ?? "");
1186
+ const e = /\/(?:share|embed)\/(?:[^/?#]*-)?([0-9a-f]{32})(?:[/?#]|$)/i.exec(((n = It(t)) == null ? void 0 : n.pathname) ?? "");
1169
1187
  return e ? e[1].toLowerCase() : null;
1170
1188
  }
1171
1189
  function Co(t) {
1172
- const e = zt(t);
1190
+ const e = It(t);
1173
1191
  if (!e) return null;
1174
1192
  const n = e.pathname.split("/").filter(Boolean), r = n.map((a, o) => /^\d+$/.test(a) ? o : -1).filter((a) => a >= 0).pop();
1175
1193
  if (r == null) return null;
@@ -1177,14 +1195,14 @@ function Co(t) {
1177
1195
  return { id: n[r], h: e.searchParams.get("h") ?? (s && /^[0-9a-f]{6,}$/i.test(s) ? s : null) };
1178
1196
  }
1179
1197
  function xo(t) {
1180
- const e = zt(t);
1198
+ const e = It(t);
1181
1199
  if (!e) return null;
1182
1200
  if (/(^|\.)dai\.ly$/i.test(e.hostname)) return e.pathname.split("/").filter(Boolean)[0] ?? null;
1183
1201
  const n = /\/video\/([a-z0-9]+)/i.exec(e.pathname);
1184
1202
  return n ? n[1] : null;
1185
1203
  }
1186
1204
  function So(t) {
1187
- const e = zt(t);
1205
+ const e = It(t);
1188
1206
  if (!e) return null;
1189
1207
  const n = e.pathname.split("/").filter(Boolean);
1190
1208
  if (/^clips\.twitch\.tv$/i.test(e.hostname)) return n[0] ? { clip: n[0] } : null;
@@ -1204,7 +1222,7 @@ function Hi(t, e) {
1204
1222
  const r = e.play ? 1 : 0;
1205
1223
  switch (n.id) {
1206
1224
  case "loom": {
1207
- const u = Vi(t);
1225
+ const u = Bi(t);
1208
1226
  if (!u) return null;
1209
1227
  const d = new URLSearchParams({ hide_owner: "true", hide_share: "true", hide_title: "true", hideEmbedTopBar: "true", hide_speed: "true", muted: "true", autoplay: e.play ? "true" : "false", t: String(un(e.t)) });
1210
1228
  return `https://www.loom.com/embed/${u}?${d}`;
@@ -1231,23 +1249,23 @@ function Hi(t, e) {
1231
1249
  case "facebook":
1232
1250
  return `https://www.facebook.com/plugins/video.php?${new URLSearchParams({ href: t, autoplay: String(!!e.play), mute: "1", show_text: "false", show_captions: "false" })}`;
1233
1251
  case "tiktok": {
1234
- const u = /\/video\/(\d+)/.exec(((s = zt(t)) == null ? void 0 : s.pathname) ?? "");
1252
+ const u = /\/video\/(\d+)/.exec(((s = It(t)) == null ? void 0 : s.pathname) ?? "");
1235
1253
  return u ? `https://www.tiktok.com/embed/v2/${u[1]}?${new URLSearchParams({ autoplay: String(r), muted: "1", controls: "0" })}` : null;
1236
1254
  }
1237
1255
  case "x": {
1238
- const u = /\/status(?:es)?\/(\d+)/.exec(((a = zt(t)) == null ? void 0 : a.pathname) ?? "");
1256
+ const u = /\/status(?:es)?\/(\d+)/.exec(((a = It(t)) == null ? void 0 : a.pathname) ?? "");
1239
1257
  return u ? `https://platform.twitter.com/embed/Tweet.html?${new URLSearchParams({ id: u[1], theme: "dark", dnt: "true" })}` : null;
1240
1258
  }
1241
1259
  case "instagram": {
1242
- const u = /\/(?:p|reel|reels|tv)\/([\w-]+)/.exec(((o = zt(t)) == null ? void 0 : o.pathname) ?? "");
1260
+ const u = /\/(?:p|reel|reels|tv)\/([\w-]+)/.exec(((o = It(t)) == null ? void 0 : o.pathname) ?? "");
1243
1261
  return u ? `https://www.instagram.com/p/${u[1]}/embed` : null;
1244
1262
  }
1245
1263
  case "kick": {
1246
- const u = (l = zt(t)) == null ? void 0 : l.pathname.split("/").filter(Boolean)[0];
1264
+ const u = (l = It(t)) == null ? void 0 : l.pathname.split("/").filter(Boolean)[0];
1247
1265
  return u ? `https://player.kick.com/${encodeURIComponent(u.toLowerCase())}?${new URLSearchParams({ autoplay: String(!!e.play), muted: "true" })}` : null;
1248
1266
  }
1249
1267
  case "streamable": {
1250
- const u = (c = zt(t)) == null ? void 0 : c.pathname.split("/").filter(Boolean).pop();
1268
+ const u = (c = It(t)) == null ? void 0 : c.pathname.split("/").filter(Boolean).pop();
1251
1269
  return u ? `https://streamable.com/e/${u}?${new URLSearchParams({ autoplay: String(r), muted: "1", nocontrols: "1" })}${e.t ? `#t=${un(e.t)}` : ""}` : null;
1252
1270
  }
1253
1271
  default:
@@ -1290,27 +1308,28 @@ function Eo(t, e) {
1290
1308
  function _o(t) {
1291
1309
  return !t || t.kind !== "url" ? null : Eo(t.site, t.embedId) ?? t.url ?? null;
1292
1310
  }
1293
- function Yo({ url: t, t: e, playing: n, seekN: r, title: s }) {
1294
- const a = j(e);
1295
- a.current = e;
1296
- const [o, l] = k(!1), c = typeof window < "u" ? window.location.hostname : "localhost", u = ze(() => Hi(t, { t: a.current, play: n, host: c }), [t, n, r, c]);
1297
- return u ? /* @__PURE__ */ g(be, { children: [
1298
- o && /* @__PURE__ */ i("div", { className: "vsp-embed__bg", "aria-hidden": "true" }),
1311
+ function Yo({ url: t, t: e, playing: n, seekN: r, title: s, onToggle: a }) {
1312
+ const o = z(e);
1313
+ o.current = e;
1314
+ const [l, c] = j(!1), u = typeof window < "u" ? window.location.hostname : "localhost", d = ze(() => Hi(t, { t: o.current, play: n, host: u }), [t, n, r, u]);
1315
+ return d ? /* @__PURE__ */ g("div", { className: "txyt vsp-follow", style: l ? { background: "#000" } : void 0, children: [
1299
1316
  /* @__PURE__ */ i(
1300
1317
  "iframe",
1301
1318
  {
1302
1319
  className: "vsp-embed",
1303
- src: u,
1320
+ src: d,
1304
1321
  title: s,
1305
- style: { opacity: o ? 1 : 0 },
1306
- onLoad: () => l(!0),
1322
+ style: { opacity: l ? 1 : 0 },
1323
+ onLoad: () => c(!0),
1307
1324
  allow: "autoplay; encrypted-media; picture-in-picture; fullscreen",
1308
1325
  referrerPolicy: "strict-origin-when-cross-origin",
1309
1326
  tabIndex: -1,
1310
1327
  "aria-hidden": "true"
1311
1328
  },
1312
- u
1313
- )
1329
+ d
1330
+ ),
1331
+ /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
1332
+ l && /* @__PURE__ */ i("div", { className: `txyt__paused${n ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) }) })
1314
1333
  ] }) : null;
1315
1334
  }
1316
1335
  let Sn = null;
@@ -1332,9 +1351,9 @@ function Uo() {
1332
1351
  }
1333
1352
  let Ro = 0;
1334
1353
  function Po({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
1335
- const a = j(null), o = j(null), l = j(e);
1354
+ const a = z(null), o = z(null), l = z(e);
1336
1355
  l.current = e;
1337
- const [c, u] = k(!1), [d] = k(() => `vsp-fb-${++Ro}`);
1356
+ const [c, u] = j(!1), [d] = j(() => `vsp-fb-${++Ro}`);
1338
1357
  return S(() => {
1339
1358
  let M = !0;
1340
1359
  const h = a.current;
@@ -1347,7 +1366,7 @@ function Po({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
1347
1366
  if (!(!M || T.type !== "video" || T.id !== d)) {
1348
1367
  o.current = T.instance;
1349
1368
  try {
1350
- T.instance.mute(), T.instance.seek(Math.max(0, l.current));
1369
+ T.instance.setVolume(0), T.instance.unmute(), T.instance.setVolume(0), T.instance.seek(Math.max(0, l.current));
1351
1370
  } catch {
1352
1371
  }
1353
1372
  u(!0);
@@ -1367,7 +1386,7 @@ function Po({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
1367
1386
  const M = o.current;
1368
1387
  if (!(!M || !c))
1369
1388
  try {
1370
- n ? M.play() : M.pause();
1389
+ n ? (M.setVolume(0), M.play()) : M.pause();
1371
1390
  } catch {
1372
1391
  }
1373
1392
  }, [n, c]), S(() => {
@@ -1390,7 +1409,7 @@ function Po({ url: t, t: e, playing: n, seekN: r, onToggle: s }) {
1390
1409
  }, [c, n]), /* @__PURE__ */ g("div", { className: "txyt vsp-follow vsp-fb", style: c ? { background: "#000" } : void 0, children: [
1391
1410
  /* @__PURE__ */ i("div", { ref: a, className: "vsp-fb__box", style: { opacity: c ? 1 : 0 } }),
1392
1411
  c && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: s, style: { cursor: s ? "pointer" : "default" } }),
1393
- c && /* @__PURE__ */ i("div", { className: `txyt__paused${n ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Xt, { size: 44 }) }) })
1412
+ c && /* @__PURE__ */ i("div", { className: `txyt__paused${n ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) }) })
1394
1413
  ] });
1395
1414
  }
1396
1415
  async function $o(t) {
@@ -1409,7 +1428,7 @@ function Qo(t) {
1409
1428
  e && !r.includes("Signature=") && n.open("GET", r + (r.includes("?") ? "&" : "?") + e, !0);
1410
1429
  };
1411
1430
  }
1412
- function Bo(t) {
1431
+ function Vo(t) {
1413
1432
  return (e, n) => {
1414
1433
  let r = !0, s = null;
1415
1434
  return (async () => {
@@ -1436,8 +1455,8 @@ function Bo(t) {
1436
1455
  };
1437
1456
  }
1438
1457
  const on = /* @__PURE__ */ new Map();
1439
- function Vo(t) {
1440
- const [e, n] = k(() => t ? on.get(t) ?? null : null);
1458
+ function Bo(t) {
1459
+ const [e, n] = j(() => t ? on.get(t) ?? null : null);
1441
1460
  return S(() => {
1442
1461
  if (!t) {
1443
1462
  n(null);
@@ -1540,7 +1559,7 @@ function pr(t) {
1540
1559
  t && (t.pause(), t.removeAttribute("src"), t.load());
1541
1560
  }
1542
1561
  function Wi(t, e) {
1543
- const [n, r] = k("off"), [s, a] = k([]), [o, l] = k(!1), c = j(null), u = j([null, null]), d = j([NaN, NaN]), M = j(0);
1562
+ const [n, r] = j("off"), [s, a] = j([]), [o, l] = j(!1), c = z(null), u = z([null, null]), d = z([NaN, NaN]), M = z(0);
1544
1563
  return S(() => {
1545
1564
  if (a([]), l(!1), !t) {
1546
1565
  r("off");
@@ -1643,7 +1662,7 @@ function hl(t) {
1643
1662
  const c = /* @__PURE__ */ new Map();
1644
1663
  for (const u of t.clips) c.set(u.sentenceId, [...c.get(u.sentenceId) ?? [], u]);
1645
1664
  return c;
1646
- }, [t.clips]), n = j(/* @__PURE__ */ new Map()), r = j(null), [s, a] = k({ missing: null, sid: null }), o = (c) => {
1665
+ }, [t.clips]), n = z(/* @__PURE__ */ new Map()), r = z(null), [s, a] = j({ missing: null, sid: null }), o = (c) => {
1647
1666
  let u = n.current.get(c);
1648
1667
  return u || (u = new Audio(), u.preload = "auto", u.src = c, n.current.set(c, u)), u;
1649
1668
  }, l = () => {
@@ -1731,7 +1750,7 @@ function gl(t, e) {
1731
1750
  };
1732
1751
  }
1733
1752
  function fl(t, e) {
1734
- const n = j(t);
1753
+ const n = z(t);
1735
1754
  n.current = t;
1736
1755
  const r = !!t;
1737
1756
  S(() => {
@@ -1752,11 +1771,11 @@ function fl(t, e) {
1752
1771
  }
1753
1772
  }, [r, e]);
1754
1773
  }
1755
- function jt(t) {
1774
+ function zt(t) {
1756
1775
  const e = Math.max(0, Math.floor(t)), n = Math.floor(e / 3600), r = Math.floor(e % 3600 / 60), s = e % 60, a = String(r).padStart(2, "0"), o = String(s).padStart(2, "0");
1757
1776
  return n > 0 ? `${n}:${a}:${o}` : `${a}:${o}`;
1758
1777
  }
1759
- function Kt() {
1778
+ function Jt() {
1760
1779
  return {
1761
1780
  segments: /* @__PURE__ */ new Map(),
1762
1781
  sentences: /* @__PURE__ */ new Map(),
@@ -1781,7 +1800,7 @@ function dn(t, e) {
1781
1800
  return (e ?? []).map((n, r) => ({ text: String(n.text ?? ""), prob: n.prob ?? null, start: n.start ?? 0, end: n.end ?? 0, alts: n.alts, ...n.script === !0 ? { script: !0 } : {}, ...n.script === !0 && typeof n.recognized == "string" ? { recognized: n.recognized } : {}, seq: t, idx: r }));
1782
1801
  }
1783
1802
  function mr(t, e) {
1784
- const n = e ?? Kt();
1803
+ const n = e ?? Jt();
1785
1804
  delete n.numbers, n.state = t.state, t.speakerLabels && (n.labels = t.speakerLabels), n.lastSeq = Math.max(n.lastSeq, t.lastSeq), n.spans = t.spans.map((r) => ({ wallStart: r.wallStart, wallEnd: r.wallEnd ?? null, mediaStart: r.mediaStart, mediaEnd: r.mediaEnd ?? null }));
1786
1805
  for (const r of t.segments) {
1787
1806
  const s = r.scriptPos;
@@ -2020,7 +2039,7 @@ function yl(t) {
2020
2039
  confidence: Tl(s),
2021
2040
  latencyS: o == null ? void 0 : o.latencyS,
2022
2041
  settled: r.settled || s.length > 0 && s.every((l) => l.settled),
2023
- translations: Object.keys(r.translations).length ? r.translations : wl(s),
2042
+ translations: Object.keys(r.translations).length ? r.translations : vl(s),
2024
2043
  speaker: r.speaker >= 0 ? r.speaker : (o == null ? void 0 : o.speaker) ?? -1
2025
2044
  });
2026
2045
  }
@@ -2035,14 +2054,14 @@ function Tl(t) {
2035
2054
  }
2036
2055
  return n ? e / n : void 0;
2037
2056
  }
2038
- function wl(t) {
2057
+ function vl(t) {
2039
2058
  const e = {};
2040
2059
  for (const n of t) for (const [r, s] of Object.entries(n.translations)) e[r] = e[r] ? `${e[r]} ${s}` : s;
2041
2060
  return e;
2042
2061
  }
2043
- const vl = 0.85, Ll = 0.75;
2062
+ const wl = 0.85, Ll = 0.75;
2044
2063
  function kl(t) {
2045
- return t == null ? "" : t < Ll ? "low" : t < vl ? "mid" : "";
2064
+ return t == null ? "" : t < Ll ? "low" : t < wl ? "mid" : "";
2046
2065
  }
2047
2066
  const Dn = ["a", "b", "c", "d", "e", "f", "g", "h"];
2048
2067
  function jl(t) {
@@ -2140,7 +2159,7 @@ const Cl = /* @__PURE__ */ new Set([
2140
2159
  NotSupportedError: "The audio couldn't be loaded. Try again in a moment.",
2141
2160
  AbortError: "It was cancelled."
2142
2161
  };
2143
- function It(t) {
2162
+ function bt(t) {
2144
2163
  const e = t, n = typeof (e == null ? void 0 : e.code) == "string" ? e.code : void 0, r = typeof (e == null ? void 0 : e.status) == "number" ? e.status : void 0, s = e == null ? void 0 : e.details;
2145
2164
  if (n || r && r >= 400) {
2146
2165
  const o = typeof (e == null ? void 0 : e.requestId) == "string" && e.requestId ? { requestId: e.requestId } : {};
@@ -2149,30 +2168,30 @@ function It(t) {
2149
2168
  const a = (e == null ? void 0 : e.name) ?? "";
2150
2169
  return a === "TypeError" && /fetch|network|load failed/i.test(String((e == null ? void 0 : e.message) ?? "")) ? (typeof navigator < "u" && navigator.onLine !== !1 && Di(t instanceof Error ? t : new Error(String(t))), { message: Nr }) : gi[a] ? { message: gi[a] } : t instanceof Error && a === "Error" && !(t instanceof Ci) ? { message: t.message } : { message: xr };
2151
2170
  }
2152
- const qi = "https://api.vocalstack.com", Br = Oi(null);
2153
- function Wt() {
2154
- const t = Ga(Br);
2171
+ const qi = "https://api.vocalstack.com", Vr = Oi(null);
2172
+ function Ft() {
2173
+ const t = Ga(Vr);
2155
2174
  if (!t) throw new Error("VocalStack player hooks must be used inside <VocalStackPlayer> or <PlayerApiProvider>");
2156
2175
  return t;
2157
2176
  }
2158
2177
  function xl(t) {
2159
- return t.value ? /* @__PURE__ */ i(Br.Provider, { value: t.value, children: t.children }) : /* @__PURE__ */ i(Sl, { ...t });
2178
+ return t.value ? /* @__PURE__ */ i(Vr.Provider, { value: t.value, children: t.children }) : /* @__PURE__ */ i(Sl, { ...t });
2160
2179
  }
2161
2180
  function Sl({ children: t, ...e }) {
2162
2181
  const n = Ki(e);
2163
- return /* @__PURE__ */ i(Br.Provider, { value: n, children: t });
2182
+ return /* @__PURE__ */ i(Vr.Provider, { value: n, children: t });
2164
2183
  }
2165
2184
  const Dl = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
2166
2185
  function Al(t) {
2167
2186
  return Dl.test(t);
2168
2187
  }
2169
2188
  function Ki(t) {
2170
- const e = t.listen ?? null, n = e ? null : t.listenerToken ?? null, r = !e && !n && !!t.token && (!t.id || Al(t.id)), s = (t.baseUrl ?? qi).replace(/\/$/, ""), a = j(t.token);
2189
+ const e = t.listen ?? null, n = e ? null : t.listenerToken ?? null, r = !e && !n && !!t.token && (!t.id || Al(t.id)), s = (t.baseUrl ?? qi).replace(/\/$/, ""), a = z(t.token);
2171
2190
  a.current = t.token;
2172
2191
  const o = !!t.token, l = ze(() => async () => {
2173
2192
  const h = a.current;
2174
2193
  return (typeof h == "function" ? await h() : h) || void 0;
2175
- }, []), [c, u] = k(() => {
2194
+ }, []), [c, u] = j(() => {
2176
2195
  const h = t.token, f = typeof h == "function" ? h() : h;
2177
2196
  return typeof f == "string" && f ? f : null;
2178
2197
  });
@@ -2222,14 +2241,14 @@ async function _l(t, e) {
2222
2241
  };
2223
2242
  }
2224
2243
  function Yl(t, e) {
2225
- const [n, r] = k(null), [s, a] = k(!1), [o, l] = k(null), [c, u] = k(0);
2244
+ const [n, r] = j(null), [s, a] = j(!1), [o, l] = j(null), [c, u] = j(0);
2226
2245
  return S(() => {
2227
2246
  let d = !0;
2228
2247
  return _l(t, e).then((M) => {
2229
2248
  d && (r(M), a(!1), l(null));
2230
2249
  }).catch((M) => {
2231
2250
  if (!d) return;
2232
- const h = It(M);
2251
+ const h = bt(M);
2233
2252
  h.code === "not_found" || h.status === 404 ? a(!0) : l(h);
2234
2253
  }), () => {
2235
2254
  d = !1;
@@ -2237,7 +2256,7 @@ function Yl(t, e) {
2237
2256
  }, [t, e, c]), { source: n, gone: s, error: o, reload: () => u((d) => d + 1) };
2238
2257
  }
2239
2258
  function Ul(t, e) {
2240
- const [n, r] = k(null);
2259
+ const [n, r] = j(null);
2241
2260
  return S(() => {
2242
2261
  if (!t.owner || !e) {
2243
2262
  r(null);
@@ -2271,7 +2290,7 @@ async function fi(t, e, n = {}) {
2271
2290
  }
2272
2291
  const yr = /* @__PURE__ */ new Map();
2273
2292
  function Ji() {
2274
- const t = Wt(), [e, n] = k(yr.get(t.origin) ?? null);
2293
+ const t = Ft(), [e, n] = j(yr.get(t.origin) ?? null);
2275
2294
  return S(() => {
2276
2295
  yr.has(t.origin) || t.client.languages.list().then((r) => {
2277
2296
  yr.set(t.origin, r), n(r);
@@ -2280,26 +2299,26 @@ function Ji() {
2280
2299
  }, [t]), e;
2281
2300
  }
2282
2301
  function Xi(t, e) {
2283
- const [n, r] = k(null), [s, a] = k(null), [o, l] = k(0);
2302
+ const [n, r] = j(null), [s, a] = j(null), [o, l] = j(0);
2284
2303
  return S(() => {
2285
2304
  let c = !0;
2286
- return t().then((u) => c && r(u)).catch((u) => c && a(It(u))), () => {
2305
+ return t().then((u) => c && r(u)).catch((u) => c && a(bt(u))), () => {
2287
2306
  c = !1;
2288
2307
  };
2289
2308
  }, [...e, o]), { data: n, error: s, reload: () => l((c) => c + 1) };
2290
2309
  }
2291
2310
  const Rl = (t) => new Promise((e) => setTimeout(e, t)), Pl = 2500, $l = 72;
2292
2311
  function Ql(t, e) {
2293
- const n = Wt(), r = j(n);
2312
+ const n = Ft(), r = z(n);
2294
2313
  r.current = n;
2295
- const [s, a] = k(Kt), o = j(Kt()), l = j(null), c = j(e.lang ?? null), [u, d] = k(!1), [M, h] = k(null), [f, p] = k(!1), y = Ke(() => {
2314
+ const [s, a] = j(Jt), o = z(Jt()), l = z(null), c = z(e.lang ?? null), [u, d] = j(!1), [M, h] = j(null), [f, p] = j(!1), y = Ke(() => {
2296
2315
  const A = o.current;
2297
2316
  a({ ...A });
2298
- }, []), T = j(e);
2317
+ }, []), T = z(e);
2299
2318
  T.current = e, S(() => {
2300
2319
  if (!t) return;
2301
- let A = !0, w = 0;
2302
- o.current = Kt(), a(Kt()), p(!1);
2320
+ let A = !0, v = 0;
2321
+ o.current = Jt(), a(Jt()), p(!1);
2303
2322
  const _ = n.client;
2304
2323
  let O = o.current.state;
2305
2324
  const te = () => {
@@ -2317,11 +2336,11 @@ function Ql(t, e) {
2317
2336
  Z.close();
2318
2337
  return;
2319
2338
  }
2320
- w = 0, l.current = Z, c.current !== pe && Z.setLanguage(c.current), d(!0), h(null), o.current = mr(Z.snapshot, o.current), y(), te();
2339
+ v = 0, l.current = Z, c.current !== pe && Z.setLanguage(c.current), d(!0), h(null), o.current = mr(Z.snapshot, o.current), y(), te();
2321
2340
  for await (const le of Z) {
2322
2341
  if (!A) break;
2323
2342
  if (le.type === "snapshot")
2324
- o.current = mr(le.snapshot, le.reason === "gap" ? o.current : Kt()), y(), te();
2343
+ o.current = mr(le.snapshot, le.reason === "gap" ? o.current : Jt()), y(), te();
2325
2344
  else if (le.type === "frame") {
2326
2345
  Nl(o.current, le.frame);
2327
2346
  const Te = le.frame;
@@ -2330,7 +2349,7 @@ function Ql(t, e) {
2330
2349
  }
2331
2350
  } catch (pe) {
2332
2351
  if (!A) return;
2333
- const le = It(pe);
2352
+ const le = bt(pe);
2334
2353
  if (le.code === "not_found" || le.status === 404) {
2335
2354
  p(!0), h(le);
2336
2355
  return;
@@ -2338,7 +2357,7 @@ function Ql(t, e) {
2338
2357
  try {
2339
2358
  await _.recordings.get(t, n.readAs);
2340
2359
  } catch (Te) {
2341
- const je = It(Te);
2360
+ const je = bt(Te);
2342
2361
  if (je.code === "not_found" || je.status === 404) {
2343
2362
  p(!0), h(je);
2344
2363
  return;
@@ -2358,19 +2377,19 @@ function Ql(t, e) {
2358
2377
  }
2359
2378
  const J = o.current.state;
2360
2379
  if (!A || J === "ended" || J === "finalized" || J === "processing") return;
2361
- w += 1, await Rl(Math.min(15e3, 1e3 * 2 ** Math.min(w, 4)));
2380
+ v += 1, await Rl(Math.min(15e3, 1e3 * 2 ** Math.min(v, 4)));
2362
2381
  }
2363
2382
  })(), () => {
2364
2383
  var K;
2365
2384
  A = !1, (K = l.current) == null || K.close(), l.current = null, d(!1);
2366
2385
  };
2367
2386
  }, [t, n, e.voice]);
2368
- const [N, m] = k(!1), [b, C] = k(null), D = j(0), [B, Y] = k(null), ee = Ke((A) => {
2387
+ const [N, m] = j(!1), [b, C] = j(null), D = z(0), [V, Y] = j(null), ee = Ke((A) => {
2369
2388
  var te;
2370
2389
  if (c.current = A, (te = l.current) == null || te.setLanguage(A), !t) return;
2371
- const w = r.current.client, _ = ++D.current;
2390
+ const v = r.current.client, _ = ++D.current;
2372
2391
  m(!0), C(null);
2373
- const O = (K) => w.recordings.transcript(t, { lang: A ?? void 0, ...r.current.readAs, asListener: !r.current.owner }).then((L) => {
2392
+ const O = (K) => v.recordings.transcript(t, { lang: A ?? void 0, ...r.current.readAs, asListener: !r.current.owner }).then((L) => {
2374
2393
  _ === D.current && (o.current = mr(L, o.current), Y(A), y(), L.translationPending && K > 0 && window.setTimeout(() => {
2375
2394
  _ === D.current && O(K - 1).catch(() => {
2376
2395
  });
@@ -2381,16 +2400,16 @@ function Ql(t, e) {
2381
2400
  }).finally(() => {
2382
2401
  _ === D.current && m(!1);
2383
2402
  });
2384
- }, [y, t]), I = Ke((A, w) => {
2403
+ }, [y, t]), I = Ke((A, v) => {
2385
2404
  const _ = o.current;
2386
2405
  let O = !1;
2387
- for (const [te, K] of Object.entries(w)) {
2406
+ for (const [te, K] of Object.entries(v)) {
2388
2407
  const L = _.sentences.get(Number(te));
2389
2408
  L && (L.translations = { ...L.translations, [A]: K }, O = !0);
2390
2409
  }
2391
2410
  O && y();
2392
2411
  }, [y]), F = Ke(() => h(null), []);
2393
- return { model: s, connected: u, error: M, notFound: f, clearError: F, setLanguage: ee, mergeTranslations: I, translating: N, translateFailed: b, shownLang: B };
2412
+ return { model: s, connected: u, error: M, notFound: f, clearError: F, setLanguage: ee, mergeTranslations: I, translating: N, translateFailed: b, shownLang: V };
2394
2413
  }
2395
2414
  const pi = {
2396
2415
  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" },
@@ -2424,10 +2443,10 @@ function Tr(t) {
2424
2443
  return "queued";
2425
2444
  }
2426
2445
  }
2427
- function Bl(t) {
2446
+ function Vl(t) {
2428
2447
  return t ? t.progress ? { state: t.state, processedS: t.progress.processedS, totalS: t.progress.totalS ?? null, segmentsDone: t.progress.segmentsDone, segmentsTotal: t.progress.segmentsTotal ?? null, pct: t.progress.pct, error: t.error ?? null } : t.state ? { state: t.state, processedS: 0, totalS: null, segmentsDone: 0, segmentsTotal: null, pct: 0, error: t.error ?? null } : null : null;
2429
2448
  }
2430
- const Vl = (t, e) => {
2449
+ const Bl = (t, e) => {
2431
2450
  const n = (t == null ? void 0 : t.segmentsDone) ?? e, r = Math.max(n, (t == null ? void 0 : t.segmentsTotal) ?? n);
2432
2451
  return `${n} / ${r} SEGMENTS`;
2433
2452
  };
@@ -2446,14 +2465,14 @@ const Sr = [
2446
2465
  { key: "srt", name: "Subtitles", ext: "SRT / VTT", note: "Timed caption cues, ready for a video editor or a player.", icon: "M2.25 15.75V8.25A2.25 2.25 0 0 1 4.5 6h15a2.25 2.25 0 0 1 2.25 2.25v7.5A2.25 2.25 0 0 1 19.5 18h-15a2.25 2.25 0 0 1-2.25-2.25Zm4.5-4.5h4.5m-4.5 3h1.5m3 0h6m-3-3h3" },
2447
2466
  { key: "json", name: "JSON", ext: "JSON", note: "Word-level timings, confidence scores and speaker turns.", icon: "M17.25 6.75 22.5 12l-5.25 5.25m-10.5 0L1.5 12l5.25-5.25m7.5-3-4.5 16.5" }
2448
2467
  ];
2449
- function Vr(t) {
2468
+ function Br(t) {
2450
2469
  const e = document.createElement("a");
2451
2470
  e.href = t, e.style.display = "none", document.body.appendChild(e), e.click(), e.remove();
2452
2471
  }
2453
2472
  async function Wl(t) {
2454
2473
  const e = await fetch(t, { redirect: "manual" });
2455
2474
  if (e.type !== "opaqueredirect" && !e.ok) throw await ta(e);
2456
- Vr(t);
2475
+ Br(t);
2457
2476
  }
2458
2477
  async function Fl(t, e, n, r = {}) {
2459
2478
  var h, f;
@@ -2472,7 +2491,7 @@ async function Zl(t, e) {
2472
2491
  if (Date.now() > u) throw new Error("The spoken track is taking too long; try again in a moment.");
2473
2492
  await new Promise((d) => setTimeout(d, 4e3)), c = l(await o());
2474
2493
  }
2475
- Vr(po(t.origin, n, r, c.voiceKey, a));
2494
+ Br(po(t.origin, n, r, c.voiceKey, a));
2476
2495
  }
2477
2496
  const na = (t) => {
2478
2497
  var e;
@@ -2498,7 +2517,7 @@ function Jl(t, e, n) {
2498
2517
  return o += r * s[c] / a, { text: l, start: u, end: o };
2499
2518
  });
2500
2519
  }
2501
- function wr(t) {
2520
+ function vr(t) {
2502
2521
  const e = getComputedStyle(t), n = t.clientHeight * 0.45;
2503
2522
  return {
2504
2523
  top: Math.min(parseFloat(e.paddingTop) || 0, n),
@@ -2506,7 +2525,7 @@ function wr(t) {
2506
2525
  };
2507
2526
  }
2508
2527
  function Xl(t, e, n = 0) {
2509
- const r = j(() => {
2528
+ const r = z(() => {
2510
2529
  });
2511
2530
  S(() => {
2512
2531
  r.current();
@@ -2559,12 +2578,12 @@ function Xl(t, e, n = 0) {
2559
2578
  if (!d) return;
2560
2579
  const ee = l();
2561
2580
  s.scrollTop = h + (Y.clientY - M) / (ee.vis - ee.size) * ee.max, p();
2562
- }, B = () => {
2581
+ }, V = () => {
2563
2582
  d && (d = !1, a.style.cursor = "grab", p());
2564
2583
  };
2565
- return s.addEventListener("scroll", b, { passive: !0 }), a.addEventListener("pointerdown", C), a.addEventListener("pointermove", D), a.addEventListener("pointerup", B), a.addEventListener("pointercancel", B), typeof ResizeObserver < "u" && (y = new ResizeObserver(() => N()), y.observe(s)), r.current = () => N(), N(), () => {
2584
+ return s.addEventListener("scroll", b, { passive: !0 }), a.addEventListener("pointerdown", C), a.addEventListener("pointermove", D), a.addEventListener("pointerup", V), a.addEventListener("pointercancel", V), typeof ResizeObserver < "u" && (y = new ResizeObserver(() => N()), y.observe(s)), r.current = () => N(), N(), () => {
2566
2585
  r.current = () => {
2567
- }, s.removeEventListener("scroll", b), a.removeEventListener("pointerdown", C), a.removeEventListener("pointermove", D), a.removeEventListener("pointerup", B), a.removeEventListener("pointercancel", B), y == null || y.disconnect(), clearTimeout(u);
2586
+ }, s.removeEventListener("scroll", b), a.removeEventListener("pointerdown", C), a.removeEventListener("pointermove", D), a.removeEventListener("pointerup", V), a.removeEventListener("pointercancel", V), y == null || y.disconnect(), clearTimeout(u);
2568
2587
  };
2569
2588
  }, []);
2570
2589
  }
@@ -2572,9 +2591,9 @@ function ec({ thumbRef: t }) {
2572
2591
  return /* @__PURE__ */ i("div", { className: "feedbar", "aria-hidden": "true", children: /* @__PURE__ */ i("div", { ref: t, className: "feedbar__thumb" }) });
2573
2592
  }
2574
2593
  function tc({ error: t, onClose: e }) {
2575
- const n = j(e);
2594
+ const n = z(e);
2576
2595
  n.current = e;
2577
- const [r, s] = k(!1), [a, o] = k(!1), l = j();
2596
+ const [r, s] = j(!1), [a, o] = j(!1), l = z();
2578
2597
  if (S(() => {
2579
2598
  o(!1), s(!1), window.clearTimeout(l.current);
2580
2599
  }, [t]), S(() => () => window.clearTimeout(l.current), []), S(() => {
@@ -2595,7 +2614,7 @@ Request id: ${t.requestId}` : t.message;
2595
2614
  /* @__PURE__ */ i(oe, { d: X.warn, size: 16, style: { color: "var(--conf-low)", flex: "none" } }),
2596
2615
  /* @__PURE__ */ g("span", { style: { flex: 1 }, children: [
2597
2616
  t.message,
2598
- u && /* @__PURE__ */ g(be, { children: [
2617
+ u && /* @__PURE__ */ g(Ce, { children: [
2599
2618
  " ",
2600
2619
  /* @__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" })
2601
2620
  ] })
@@ -2611,7 +2630,7 @@ function ed({ chip: t, note: e, scrub: n, mute: r, voice: s, prev: a, play: o, n
2611
2630
  return /* @__PURE__ */ g("div", { className: "vs-tt", children: [
2612
2631
  /* @__PURE__ */ g("div", { className: "vs-tt__r1", children: [
2613
2632
  /* @__PURE__ */ i("div", { className: "vs-tt__chip", children: t }),
2614
- e ? /* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: e }) : /* @__PURE__ */ g(be, { children: [
2633
+ e ? /* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: e }) : /* @__PURE__ */ g(Ce, { children: [
2615
2634
  /* @__PURE__ */ i("div", { className: "vs-tt__scrub", children: n }),
2616
2635
  /* @__PURE__ */ i("div", { className: "vs-tt__spk", children: r }),
2617
2636
  /* @__PURE__ */ i("div", { className: "vs-tt__voice", children: s })
@@ -2625,11 +2644,11 @@ function ed({ chip: t, note: e, scrub: n, mute: r, voice: s, prev: a, play: o, n
2625
2644
  ] });
2626
2645
  }
2627
2646
  function nc({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek: a, onSeekFrac: o, onScrubStart: l, onScrubEnd: c, frac: u, glideMs: d = 260 }) {
2628
- const M = j(null), h = j(!1), [f, p] = k(null), y = Math.max(1, e), T = f ?? u, N = T != null ? Math.min(100, Math.max(0, T * 100)) : t / Math.max(1, y - 1) * 100, m = u != null && d > 0 && f == null ? `width ${d}ms linear, left ${d}ms linear` : "none", b = (D) => {
2647
+ const M = z(null), h = z(!1), [f, p] = j(null), y = Math.max(1, e), T = f ?? u, N = T != null ? Math.min(100, Math.max(0, T * 100)) : t / Math.max(1, y - 1) * 100, m = u != null && d > 0 && f == null ? `width ${d}ms linear, left ${d}ms linear` : "none", b = (D) => {
2629
2648
  var I;
2630
- const B = (I = M.current) == null ? void 0 : I.getBoundingClientRect();
2631
- if (!B) return;
2632
- const Y = Math.min(1, Math.max(0, (D.clientX - B.left) / Math.max(1, B.width)));
2649
+ const V = (I = M.current) == null ? void 0 : I.getBoundingClientRect();
2650
+ if (!V) return;
2651
+ const Y = Math.min(1, Math.max(0, (D.clientX - V.left) / Math.max(1, V.width)));
2633
2652
  if (o) {
2634
2653
  p(Y), o(Y);
2635
2654
  return;
@@ -2646,8 +2665,8 @@ function nc({ index: t, total: e, atLabel: n, durLabel: r, stepLabel: s, onSeek:
2646
2665
  ref: M,
2647
2666
  className: "rscrub__track",
2648
2667
  onPointerDown: (D) => {
2649
- var B;
2650
- h.current = !0, (B = M.current) == null || B.setPointerCapture(D.pointerId), l == null || l(), b(D), D.preventDefault();
2668
+ var V;
2669
+ h.current = !0, (V = M.current) == null || V.setPointerCapture(D.pointerId), l == null || l(), b(D), D.preventDefault();
2651
2670
  },
2652
2671
  onPointerMove: (D) => {
2653
2672
  h.current && b(D);
@@ -2684,13 +2703,13 @@ function sc({ f: t, desk: e, onOpen: n }) {
2684
2703
  s,
2685
2704
  a > 0 && /* @__PURE__ */ i("span", { className: "badge__n", children: a })
2686
2705
  ] }, s);
2687
- return /* @__PURE__ */ g(be, { children: [
2706
+ return /* @__PURE__ */ g(Ce, { children: [
2688
2707
  t.script > 0 && r(e ? "SCRIPT FIX" : "SCRIPT", t.script, !0),
2689
2708
  t.manual && r(e ? "MANUAL FIX" : "MANUAL", t.manualCount, t.script === 0)
2690
2709
  ] });
2691
2710
  }
2692
2711
  function ic({ onOpen: t, alone: e }) {
2693
- const [n, r] = k(!1);
2712
+ const [n, r] = j(!1);
2694
2713
  return /* @__PURE__ */ g("span", { role: "button", title: "Fix this line", className: `badge badge--pen${n ? " is-over" : ""}`, style: { marginLeft: e ? "auto" : 0 }, onMouseEnter: () => r(!0), onMouseLeave: () => r(!1), onClick: (s) => {
2695
2714
  s.stopPropagation(), t();
2696
2715
  }, children: [
@@ -2699,7 +2718,7 @@ function ic({ onOpen: t, alone: e }) {
2699
2718
  ] });
2700
2719
  }
2701
2720
  function ac(t, e, n, r) {
2702
- const s = Wt(), [a, o] = k([]), [l, c] = k(0), u = j(/* @__PURE__ */ new Set()), d = j(!1), M = ze(() => new Map(n.filter((f) => f.sentenceId != null).map((f) => [f.sentenceId, f])), [n]);
2721
+ const s = Ft(), [a, o] = j([]), [l, c] = j(0), u = z(/* @__PURE__ */ new Set()), d = z(!1), M = ze(() => new Map(n.filter((f) => f.sentenceId != null).map((f) => [f.sentenceId, f])), [n]);
2703
2722
  S(() => {
2704
2723
  u.current = /* @__PURE__ */ new Set();
2705
2724
  }, [t, e]);
@@ -2825,14 +2844,14 @@ function uc({ roster: t, selected: e, onSelect: n, noClone: r, building: s, shor
2825
2844
  }) }) : null;
2826
2845
  }
2827
2846
  function dc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s = null, dlId: a = null, onPick: o, onAdd: l, onUse: c, usedBy: u, foldKey: d, foldFor: M = null, problem: h, noClone: f = null, t: p }) {
2828
- const y = ze(() => lc(e, p), [e, p]), [T, N] = k({});
2847
+ const y = ze(() => lc(e, p), [e, p]), [T, N] = j({});
2829
2848
  S(() => {
2830
2849
  N({});
2831
2850
  }, [d, M]);
2832
2851
  const m = (D) => D === p.vcMale.toUpperCase() || D === p.vcFemale.toUpperCase(), b = (D) => {
2833
2852
  if (D === p.vcSheet) return !0;
2834
- const B = T[D];
2835
- return B != null ? !B : !M || !m(D) ? !0 : D === (M === "female" ? p.vcFemale : p.vcMale).toUpperCase();
2853
+ const V = T[D];
2854
+ return V != null ? !V : !M || !m(D) ? !0 : D === (M === "female" ? p.vcFemale : p.vcMale).toUpperCase();
2836
2855
  }, C = !!r && r !== n;
2837
2856
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column" }, children: [
2838
2857
  h && /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "flex-start", gap: 9, padding: "10px 11px", marginBottom: 10, borderRadius: 11, background: "var(--conf-low-soft)" }, children: [
@@ -2841,7 +2860,7 @@ function dc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
2841
2860
  /* @__PURE__ */ i("span", { style: { flex: "none", marginTop: -1 }, children: /* @__PURE__ */ i(lo, { value: h, label: "Copy this error" }) })
2842
2861
  ] }),
2843
2862
  t,
2844
- f && /* @__PURE__ */ g(be, { children: [
2863
+ f && /* @__PURE__ */ g(Ce, { children: [
2845
2864
  /* @__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: p.vcSheet }) }),
2846
2865
  /* @__PURE__ */ g("div", { role: f.action ? "button" : "status", tabIndex: f.action ? 0 : void 0, title: f.tip, onClick: f.action, onKeyDown: f.action ? (D) => {
2847
2866
  (D.key === "Enter" || D.key === " ") && (D.preventDefault(), f.action());
@@ -2853,11 +2872,11 @@ function dc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
2853
2872
  ] })
2854
2873
  ] })
2855
2874
  ] }),
2856
- y.map(({ v: D, headOn: B, head: Y, headCount: ee, rule: I }, F) => {
2857
- const A = oc(D), w = a === D.id, _ = b(Y), O = (u == null ? void 0 : u(D)) ?? null;
2875
+ y.map(({ v: D, headOn: V, head: Y, headCount: ee, rule: I }, F) => {
2876
+ const A = oc(D), v = a === D.id, _ = b(Y), O = (u == null ? void 0 : u(D)) ?? null;
2858
2877
  return /* @__PURE__ */ g(qa, { children: [
2859
- B && Y === p.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: F === 0 && !f ? "0" : "1px solid var(--hair)", userSelect: "none" }, children: /* @__PURE__ */ i("span", { style: { font: "600 9px var(--vs-font-mono)", letterSpacing: ".13em", color: "var(--ink-62)" }, children: Y }) }),
2860
- B && Y !== p.vcSheet && /* @__PURE__ */ g(
2878
+ V && Y === p.vcSheet && /* @__PURE__ */ i("div", { style: { display: "flex", alignItems: "center", padding: "14px 2px 6px", borderTop: F === 0 && !f ? "0" : "1px solid var(--hair)", userSelect: "none" }, children: /* @__PURE__ */ i("span", { style: { font: "600 9px var(--vs-font-mono)", letterSpacing: ".13em", color: "var(--ink-62)" }, children: Y }) }),
2879
+ V && Y !== p.vcSheet && /* @__PURE__ */ g(
2861
2880
  "button",
2862
2881
  {
2863
2882
  type: "button",
@@ -2884,7 +2903,7 @@ function dc({ cast: t, voices: e, currentId: n, armedId: r = null, sampleId: s =
2884
2903
  onClick: () => o(D),
2885
2904
  style: { width: "100%", textAlign: "left", font: "inherit", border: 0, borderTop: _ ? I : "0", display: "flex", alignItems: "center", gap: 11, padding: _ ? "11px 8px" : "0px 8px", margin: "0 -6px", borderRadius: 10, background: r === D.id ? "var(--brand-tint)" : "transparent", cursor: "pointer", opacity: _ ? 1 : 0, maxHeight: _ ? 120 : 0, overflow: "hidden", transition: "max-height 280ms cubic-bezier(.32,.72,0,1),padding 280ms cubic-bezier(.32,.72,0,1),opacity 200ms ease" },
2886
2905
  children: [
2887
- /* @__PURE__ */ i("span", { title: w ? "Downloading this voice" : void 0, style: { flex: "none", width: 32, height: 32, borderRadius: "50%", background: w ? "transparent" : D.cloned ? "var(--brand-soft)" : "var(--fill-06)", display: "flex", alignItems: "center", justifyContent: "center" }, children: w ? /* @__PURE__ */ i("span", { style: { width: 16, height: 16, borderRadius: "50%", border: "2px solid var(--fill-10)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite" } }) : s === D.id ? /* @__PURE__ */ g("span", { className: "vcplay", children: [
2906
+ /* @__PURE__ */ i("span", { title: v ? "Downloading this voice" : void 0, style: { flex: "none", width: 32, height: 32, borderRadius: "50%", background: v ? "transparent" : D.cloned ? "var(--brand-soft)" : "var(--fill-06)", display: "flex", alignItems: "center", justifyContent: "center" }, children: v ? /* @__PURE__ */ i("span", { style: { width: 16, height: 16, borderRadius: "50%", border: "2px solid var(--fill-10)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite" } }) : s === D.id ? /* @__PURE__ */ g("span", { className: "vcplay", children: [
2888
2907
  /* @__PURE__ */ i("span", { className: "vcplay__eq", children: /* @__PURE__ */ i(hc, { height: 13, width: 2.5 }) }),
2889
2908
  /* @__PURE__ */ i("span", { className: "vcplay__stop", children: /* @__PURE__ */ i(io, { size: 11 }) })
2890
2909
  ] }) : /* @__PURE__ */ i(oe, { d: D.cloned ? X.voiceClone : D.gender === "female" ? X.venus : D.gender === "male" ? X.mars : X.mic, size: 15, sw: 1.6, style: { color: D.cloned ? "var(--brand)" : "var(--ink-55)" } }) }),
@@ -2931,7 +2950,7 @@ function Dr(t, e) {
2931
2950
  return { flag: e ? (n == null ? void 0 : n.flag) ?? "🌐" : Mc, code: e ? e.toUpperCase() : "", label: (n == null ? void 0 : n.native) ?? "As spoken", name: (n == null ? void 0 : n.name) ?? "Original" };
2932
2951
  }
2933
2952
  function gc(t, e, n = 0, r) {
2934
- const s = (r == null ? void 0 : r.id) ?? null, a = (r == null ? void 0 : r.token) ?? null, o = (r == null ? void 0 : r.shareCode) ?? null, l = Wt(), { data: c } = Xi(async () => {
2953
+ const s = (r == null ? void 0 : r.id) ?? null, a = (r == null ? void 0 : r.token) ?? null, o = (r == null ? void 0 : r.shareCode) ?? null, l = Ft(), { data: c } = Xi(async () => {
2935
2954
  if (!t || !e) return null;
2936
2955
  try {
2937
2956
  return await l.client.voices.available(t, { recording: s ?? void 0, shareCode: s ? o ?? void 0 : void 0, asOwner: l.owner });
@@ -2945,14 +2964,14 @@ function fc(t) {
2945
2964
  return (/* @__PURE__ */ new Set([...Object.keys(t.speakers), ...Object.keys(t.speakerIds)])).size;
2946
2965
  }
2947
2966
  function pc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, sentenceIds: a }) {
2948
- const o = Wt(), { data: l, reload: c } = Xi(async () => {
2967
+ const o = Ft(), { data: l, reload: c } = Xi(async () => {
2949
2968
  if (!t || !e) return null;
2950
2969
  const K = await o.client.recordings.voice(t, e, o.readAs).catch(() => []);
2951
2970
  return { recordingId: t, lang: e, rows: K.filter((L) => L.lang === e) };
2952
2971
  }, [t, e, o, n]), u = ze(
2953
2972
  () => l && l.lang === e && l.recordingId === t ? l.rows : [],
2954
2973
  [l, e, t]
2955
- ), d = ze(() => Ui(u, s), [u, s]), M = d ? d.voiceKey || null : s, [h, f] = k(null), [p, y] = k(null), T = j(/* @__PURE__ */ new Set()), N = `${t ?? ""}|${e ?? ""}|${M ?? ""}`, m = Ke(async (K, L) => {
2974
+ ), d = ze(() => Ui(u, s), [u, s]), M = d ? d.voiceKey || null : s, [h, f] = j(null), [p, y] = j(null), T = z(/* @__PURE__ */ new Set()), N = `${t ?? ""}|${e ?? ""}|${M ?? ""}`, m = Ke(async (K, L) => {
2956
2975
  if (!t || !e || !n) return;
2957
2976
  const ie = L != null && L.size ? null : yi(K), ne = L != null && L.size ? L : ie, Z = ne && ne.size ? Object.fromEntries([...ne].map(([Te, je]) => [String(Te), je])) : null, J = `${t}|${e}|${Z ? JSON.stringify(Z) : K ?? ""}`;
2958
2977
  if (T.current.has(J)) return;
@@ -2971,7 +2990,7 @@ function pc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, senten
2971
2990
  const K = `${t ?? ""}|${e ?? ""}|`;
2972
2991
  for (const L of [...T.current]) L.startsWith(K) && T.current.delete(L);
2973
2992
  y(null);
2974
- }, [t, e]), C = !!d && (d.state === "queued" || d.state === "running") || h === N, D = (d == null ? void 0 : d.state) === "failed" ? d.error || "the render failed" : p, B = (a == null ? void 0 : a.join(",")) ?? "", [Y, ee] = k(null), I = ze(() => new Set((d == null ? void 0 : d.clips) ?? []), [d]), F = ze(() => n && B ? B.split(",").map(Number).filter((K) => !I.has(K)) : [], [n, B, I]), A = j(null);
2993
+ }, [t, e]), C = !!d && (d.state === "queued" || d.state === "running") || h === N, D = (d == null ? void 0 : d.state) === "failed" ? d.error || "the render failed" : p, V = (a == null ? void 0 : a.join(",")) ?? "", [Y, ee] = j(null), I = ze(() => new Set((d == null ? void 0 : d.clips) ?? []), [d]), F = ze(() => n && V ? V.split(",").map(Number).filter((K) => !I.has(K)) : [], [n, V, I]), A = z(null);
2975
2994
  S(() => {
2976
2995
  if (!n || !t || !e || !F.length) return;
2977
2996
  const K = Y ?? F[0], L = F.find((pe) => pe >= K) ?? F[0], ie = `${t}|${e}|${M ?? ""}`, ne = A.current;
@@ -2984,25 +3003,25 @@ function pc({ recordingId: t, lang: e, ended: n, cred: r, pickedVoice: s, senten
2984
3003
  A.current = null;
2985
3004
  });
2986
3005
  }, [n, t, e, M, Y, F, o]);
2987
- const w = F.length > 0, _ = j({ n: -1, at: 0 });
3006
+ const v = F.length > 0, _ = z({ n: -1, at: 0 });
2988
3007
  S(() => {
2989
- if (!w) return;
3008
+ if (!v) return;
2990
3009
  const K = setInterval(() => {
2991
3010
  const L = I.size;
2992
3011
  L !== _.current.n && (_.current = { n: L, at: Date.now() }), !(Date.now() - _.current.at > 10 * 6e4) && c();
2993
3012
  }, 3e3);
2994
3013
  return () => clearInterval(K);
2995
- }, [w, c, I]);
3014
+ }, [v, c, I]);
2996
3015
  const O = ze(() => {
2997
3016
  if (!t) return [];
2998
- const K = B ? B.split(",").map(Number).filter((ie) => !n || I.has(ie)) : void 0, L = d ?? (K != null && K.length && e ? { lang: e, voiceKey: s ?? "", clips: [], voice: null } : null);
2999
- return vo(L, t, o.origin, r, K);
3000
- }, [d, t, o, r, B, e, s, n, I]), te = ze(() => new Set(F), [F]);
3017
+ const K = V ? V.split(",").map(Number).filter((ie) => !n || I.has(ie)) : void 0, L = d ?? (K != null && K.length && e ? { lang: e, voiceKey: s ?? "", clips: [], voice: null } : null);
3018
+ return wo(L, t, o.origin, r, K);
3019
+ }, [d, t, o, r, V, e, s, n, I]), te = ze(() => new Set(F), [F]);
3001
3020
  return { listed: l, rows: u, track: d, renderVoiceId: M, rendering: C, failed: D, clips: O, requestRender: m, forget: b, reload: c, setNear: ee, missing: F.length, coming: te };
3002
3021
  }
3003
3022
  const mc = { share: X.share, delay: X.tabGauge, video: X.video, source: X.tabSources, script: X.tabScript, fix: X.tabFix, ending: X.tabEnding, summary: X.tabSummary, export: X.tabExport, settings: X.tabSettings, sources: X.tabSources, recs: X.mic };
3004
3023
  function ia({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s }) {
3005
- const o = s && t.length <= 3, l = t.some((T) => T.key === e), [c, u] = k(null), d = j(null), [M, h] = k(0);
3024
+ const o = s && t.length <= 3, l = t.some((T) => T.key === e), [c, u] = j(null), d = z(null), [M, h] = j(0);
3006
3025
  S(() => {
3007
3026
  d.current && h(d.current.offsetWidth);
3008
3027
  }, [c == null ? void 0 : c.k]);
@@ -3035,7 +3054,7 @@ function ia({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
3035
3054
  return s ? /* @__PURE__ */ g("button", { type: "button", role: "tab", "aria-selected": N, title: T.label, className: `tabbar__tab${N ? " is-on" : ""}`, style: { flex: b }, onClick: D, children: [
3036
3055
  C && /* @__PURE__ */ i(oe, { d: C, size: 15, sw: T.sw ?? 2, style: { flex: "none" } }),
3037
3056
  m && /* @__PURE__ */ i("span", { className: "tabbar__label", children: T.label })
3038
- ] }, T.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: b }, onMouseEnter: (B) => f(B, T), onMouseMove: (B) => f(B, T), onClick: D, children: /* @__PURE__ */ g("button", { type: "button", role: "tab", "aria-selected": N, "aria-label": T.label, className: `tabbar__tab${N ? " is-on" : ""}${(c == null ? void 0 : c.k) === T.key ? " is-tip" : ""}`, children: [
3057
+ ] }, T.key) : /* @__PURE__ */ i("div", { className: "tabbar__slot", "data-tab-cell": "", style: { flex: b }, onMouseEnter: (V) => f(V, T), onMouseMove: (V) => f(V, T), onClick: D, children: /* @__PURE__ */ g("button", { type: "button", role: "tab", "aria-selected": N, "aria-label": T.label, className: `tabbar__tab${N ? " is-on" : ""}${(c == null ? void 0 : c.k) === T.key ? " is-tip" : ""}`, children: [
3039
3058
  C && /* @__PURE__ */ i(oe, { d: C, size: 15, sw: T.sw ?? 2, className: "tabbar__icon", style: { flex: "none", transform: N && !o ? "scale(1.12)" : "none" } }),
3040
3059
  /* @__PURE__ */ i("span", { className: "tabbar__grow", "data-tab-lw": "", style: { gridTemplateColumns: m ? "1fr" : "0fr", marginLeft: m && C ? 6 : 0 }, children: /* @__PURE__ */ i("span", { className: "tabbar__label", "data-tab-l": "", style: { opacity: m ? 1 : 0, transform: m ? "none" : "translateX(-6px)" }, children: T.label }) })
3041
3060
  ] }) }, T.key);
@@ -3045,7 +3064,7 @@ function ia({ tabs: t, current: e, onPick: n, gap: r, fold: s = !0, side: a = !s
3045
3064
  }
3046
3065
  const Nc = "M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3", yc = "m9 9 10.5-3m0 6.553v3.75a2.25 2.25 0 0 1-1.632 2.163l-1.32.377a1.803 1.803 0 1 1-.99-3.467l2.31-.66a2.25 2.25 0 0 0 1.632-2.163Zm0 0V2.25L9 5.25v10.303m0 0v3.75a2.25 2.25 0 0 1-1.632 2.163l-1.32.377a1.803 1.803 0 0 1-.99-3.467l2.31-.66A2.25 2.25 0 0 0 9 15.553Z";
3047
3066
  function Tc({ audio: t, video: e, formats: n, onExport: r }) {
3048
- const [s, a] = k(null), [o, l] = k(null), c = j(void 0), u = j(!0);
3067
+ const [s, a] = j(null), [o, l] = j(null), c = z(void 0), u = z(!0);
3049
3068
  S(() => (u.current = !0, () => {
3050
3069
  u.current = !1, window.clearTimeout(c.current);
3051
3070
  }), []);
@@ -3065,7 +3084,7 @@ function Tc({ audio: t, video: e, formats: n, onExport: r }) {
3065
3084
  }).finally(() => {
3066
3085
  u.current && l(null);
3067
3086
  }));
3068
- }, f = (p, y, T, N) => /* @__PURE__ */ g(be, { children: [
3087
+ }, f = (p, y, T, N) => /* @__PURE__ */ g(Ce, { children: [
3069
3088
  /* @__PURE__ */ i(zr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: N }),
3070
3089
  /* @__PURE__ */ g("button", { type: "button", className: "dlrow", disabled: o != null, "aria-busy": o === p || void 0, onClick: () => h(p, y), style: o && o !== p ? { opacity: 0.45 } : void 0, children: [
3071
3090
  o === p ? /* @__PURE__ */ i(ht, { size: 17, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: T, size: 17, sw: 1.5, style: { flex: "none", color: "var(--ink-70)" } }),
@@ -3079,7 +3098,7 @@ function Tc({ audio: t, video: e, formats: n, onExport: r }) {
3079
3098
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: 10 }, children: [
3080
3099
  t && f("audio", t, yc, "DOWNLOAD AUDIO"),
3081
3100
  e && f("video", e, X.video, "DOWNLOAD VIDEO"),
3082
- n !== !1 && /* @__PURE__ */ g(be, { children: [
3101
+ n !== !1 && /* @__PURE__ */ g(Ce, { children: [
3083
3102
  /* @__PURE__ */ i(zr, { style: { letterSpacing: ".12em", color: "var(--ink-35)" }, children: "EXPORT AS" }),
3084
3103
  /* @__PURE__ */ i("div", { className: "fmtgrid", children: Sr.map((p) => /* @__PURE__ */ g("button", { type: "button", className: "fmtgrid__cell", title: o === p.key ? `Building the ${p.name}…` : p.note, disabled: o != null, "aria-busy": o === p.key || void 0, onClick: () => M(p.key), style: o && o !== p.key ? { opacity: 0.45 } : void 0, children: [
3085
3104
  o === p.key ? /* @__PURE__ */ i(ht, { size: 16, color: "var(--brand)", track: "var(--fill-12)" }) : /* @__PURE__ */ i(oe, { d: s === p.key ? X.check : p.icon, size: 16, sw: 1.6, style: { color: s === p.key ? "var(--brand)" : "var(--ink-62)" } }),
@@ -3102,9 +3121,9 @@ function Hr(t, e, n) {
3102
3121
  }
3103
3122
  r();
3104
3123
  }
3105
- function wc(t, e, n) {
3106
- const [r, s] = k(null), a = t.state === "ready", o = `${e ?? ""}|${n ?? ""}|${a ? `${t.title}
3107
- ${t.summary}` : ""}`, l = Wt();
3124
+ function vc(t, e, n) {
3125
+ const [r, s] = j(null), a = t.state === "ready", o = `${e ?? ""}|${n ?? ""}|${a ? `${t.title}
3126
+ ${t.summary}` : ""}`, l = Ft();
3108
3127
  return S(() => {
3109
3128
  if (!e || !n || !a) return;
3110
3129
  let c = !0;
@@ -3119,13 +3138,13 @@ ${t.summary}` : ""}`, l = Wt();
3119
3138
  };
3120
3139
  }, [o, l]), !n || !a ? t : (r == null ? void 0 : r.key) === o ? r.s : { state: "pending", retry: t.retry };
3121
3140
  }
3122
- function vc(t) {
3141
+ function wc(t) {
3123
3142
  return t != null && t.title && (t != null && t.summary) ? { state: "ready", title: t.title, summary: t.summary, retry: () => {
3124
3143
  } } : { state: "unavailable", retry: () => {
3125
3144
  } };
3126
3145
  }
3127
3146
  function Lc({ s: t }) {
3128
- const [e, n] = k(!1), r = j(void 0);
3147
+ const [e, n] = j(!1), r = z(void 0);
3129
3148
  S(() => () => window.clearTimeout(r.current), []);
3130
3149
  const s = t.title ?? "", a = t.summary ?? "", o = () => {
3131
3150
  var c;
@@ -3145,7 +3164,7 @@ ${a}`).catch(() => {
3145
3164
  e ? "Copied" : "Copy"
3146
3165
  ] })
3147
3166
  ] }),
3148
- t.state === "ready" ? /* @__PURE__ */ g(be, { children: [
3167
+ t.state === "ready" ? /* @__PURE__ */ g(Ce, { children: [
3149
3168
  /* @__PURE__ */ i("div", { style: { fontSize: 15, fontWeight: 600, lineHeight: 1.3, letterSpacing: "-.15px", color: "var(--ink-96)", textWrap: "pretty" }, children: s }),
3150
3169
  /* @__PURE__ */ i("div", { style: { fontSize: 13, fontWeight: 300, lineHeight: 1.55, color: "var(--ink-80)", textWrap: "pretty", whiteSpace: "pre-line" }, children: a })
3151
3170
  ] }) : 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__ */ g("div", { style: { display: "flex", alignItems: "center", gap: 10, fontSize: 13, fontWeight: 300, color: "var(--ink-45)" }, children: [
@@ -3163,7 +3182,7 @@ function kc({ ytId: t, title: e, timeLabel: n, radius: r, style: s, large: a, ch
3163
3182
  ] });
3164
3183
  }
3165
3184
  function jc(t = !0, e) {
3166
- const n = j(null), r = e ?? n;
3185
+ const n = z(null), r = e ?? n;
3167
3186
  return S(() => {
3168
3187
  const s = r.current;
3169
3188
  if (!s || !t) return;
@@ -3224,7 +3243,7 @@ function Ic(t, e) {
3224
3243
  return { id: t, tabbed: a && M.length > 1, cur: h, seq: d, pinnable: o, tabKeys: M, stripTabs: e.tabs.filter((m) => M.includes(m.key)), panel: N, pin: p, unpin: y };
3225
3244
  }
3226
3245
  function bc({ col: t, order: e, render: n, grip: r, onPick: s, wrapClass: a }) {
3227
- return Oc(t), /* @__PURE__ */ g(be, { children: [
3246
+ return Oc(t), /* @__PURE__ */ g(Ce, { children: [
3228
3247
  e.map((o) => {
3229
3248
  const l = t.panel(o);
3230
3249
  if (!l.show) return null;
@@ -3241,7 +3260,7 @@ function bc({ col: t, order: e, render: n, grip: r, onPick: s, wrapClass: a }) {
3241
3260
  ] });
3242
3261
  }
3243
3262
  function Oc(t) {
3244
- const e = j(t);
3263
+ const e = z(t);
3245
3264
  e.current = t;
3246
3265
  const n = t.id;
3247
3266
  S(() => {
@@ -3263,12 +3282,12 @@ function Oc(t) {
3263
3282
  F.startsWith("--") && b.style.setProperty(F, C.getPropertyValue(F));
3264
3283
  }
3265
3284
  b.style.fontFamily = C.fontFamily, b.style.color = C.color;
3266
- let D = N.el.parentElement, B = "";
3267
- for (; D && !B; ) {
3285
+ let D = N.el.parentElement, V = "";
3286
+ for (; D && !V; ) {
3268
3287
  const I = getComputedStyle(D).backgroundColor;
3269
- I && !/rgba?\(0, 0, 0, 0\)|transparent/.test(I) && !/\/ 0\.|, 0\.\d+\)$/.test(I) && (B = I), D = D.parentElement;
3288
+ I && !/rgba?\(0, 0, 0, 0\)|transparent/.test(I) && !/\/ 0\.|, 0\.\d+\)$/.test(I) && (V = I), D = D.parentElement;
3270
3289
  }
3271
- b.style.background = B || getComputedStyle(document.body).backgroundColor, document.body.appendChild(b), N.orig = [...N.col.querySelectorAll("[data-panel-key]")].map((I) => [I, I.style.order]), N.snap = {}, N.orig.forEach(([I]) => {
3290
+ b.style.background = V || getComputedStyle(document.body).backgroundColor, document.body.appendChild(b), N.orig = [...N.col.querySelectorAll("[data-panel-key]")].map((I) => [I, I.style.order]), N.snap = {}, N.orig.forEach(([I]) => {
3272
3291
  N.snap[I.getAttribute("data-panel-key")] = I.getBoundingClientRect();
3273
3292
  }), N.tabsSnap = ((ee = o(N)) == null ? void 0 : ee.getBoundingClientRect()) ?? null;
3274
3293
  const Y = N.col.querySelector("[data-panel-grid]");
@@ -3277,20 +3296,20 @@ function Oc(t) {
3277
3296
  const N = s;
3278
3297
  if (!N || !N.on || N.px == null || N.py == null) return;
3279
3298
  N.raf = 0, N.clone.style.transform = `translate3d(${N.px - N.x0}px,${N.py - N.y0}px,0)`;
3280
- const m = e.current, b = N.key, C = o(N), D = m.seq.includes(b), B = D || m.tabKeys.length > 1, Y = C && N.tabsSnap, ee = !Y || N.py < Y.top + Y.height / 2 ? B ? "pin" : null : "tabs";
3299
+ const m = e.current, b = N.key, C = o(N), D = m.seq.includes(b), V = D || m.tabKeys.length > 1, Y = C && N.tabsSnap, ee = !Y || N.py < Y.top + Y.height / 2 ? V ? "pin" : null : "tabs";
3281
3300
  let I = null;
3282
3301
  if (ee === "pin") {
3283
- const A = m.seq.filter((_) => _ !== b).map((_) => N.snap[_]).filter(Boolean), w = N.grid ? A.filter((_) => _.bottom < N.py || _.top <= N.py && _.left + _.width / 2 < N.px).length : A.filter((_) => _.top + _.height / 2 < N.py).length;
3284
- D && m.seq.indexOf(b) === w || (I = { zone: ee, idx: w });
3302
+ const A = m.seq.filter((_) => _ !== b).map((_) => N.snap[_]).filter(Boolean), v = N.grid ? A.filter((_) => _.bottom < N.py || _.top <= N.py && _.left + _.width / 2 < N.px).length : A.filter((_) => _.top + _.height / 2 < N.py).length;
3303
+ D && m.seq.indexOf(b) === v || (I = { zone: ee, idx: v });
3285
3304
  } else ee === "tabs" && D && (I = { zone: ee });
3286
3305
  const F = I ? I.zone + (I.idx ?? "") : "";
3287
3306
  if (F !== N.sig) {
3288
- if (N.sig = F, N.target = I, N.orig.forEach(([A, w]) => {
3289
- A.style.order = w;
3307
+ if (N.sig = F, N.target = I, N.orig.forEach(([A, v]) => {
3308
+ A.style.order = v;
3290
3309
  }), (I == null ? void 0 : I.zone) === "pin") {
3291
- const A = m.seq.filter((w) => w !== b);
3292
- A.splice(I.idx, 0, b), A.forEach((w, _) => {
3293
- const O = N.col.querySelector(`[data-panel-key="${w}"]`);
3310
+ const A = m.seq.filter((v) => v !== b);
3311
+ A.splice(I.idx, 0, b), A.forEach((v, _) => {
3312
+ const O = N.col.querySelector(`[data-panel-key="${v}"]`);
3294
3313
  O && (O.style.order = String(_ + 1));
3295
3314
  });
3296
3315
  } else (I == null ? void 0 : I.zone) === "tabs" && (N.el.style.order = "998");
@@ -3325,8 +3344,8 @@ function Oc(t) {
3325
3344
  }
3326
3345
  const b = m.closest("[data-panel-key]"), C = b == null ? void 0 : b.firstElementChild;
3327
3346
  if (!b || !C || !e.current.tabbed || !e.current.pinnable.includes(b.getAttribute("data-panel-key")) || m.closest("[role=button],[role=tab],button,a,input,textarea,select,iframe,[data-pin-pill],[contenteditable=true]")) return a(null);
3328
- const D = C.getBoundingClientRect(), B = parseFloat(getComputedStyle(b).getPropertyValue("--grip-h")) || 30;
3329
- a(N.clientY >= D.top && N.clientY <= D.top + B ? b : null);
3347
+ const D = C.getBoundingClientRect(), V = parseFloat(getComputedStyle(b).getPropertyValue("--grip-h")) || 30;
3348
+ a(N.clientY >= D.top && N.clientY <= D.top + V ? b : null);
3330
3349
  }, h = (N) => {
3331
3350
  if (!r || N.button !== 0) return;
3332
3351
  const m = d(r);
@@ -3342,7 +3361,7 @@ function Oc(t) {
3342
3361
  }, [n]);
3343
3362
  }
3344
3363
  function Cc({ id: t, className: e, gap: n, hidden: r, plain: s, children: a }) {
3345
- const [o, l] = zo(t), c = j(null), u = j(null);
3364
+ const [o, l] = zo(t), c = z(null), u = z(null);
3346
3365
  xc(u), S(() => {
3347
3366
  document.documentElement.style.setProperty("--colw", `${o}px`);
3348
3367
  }, [o]);
@@ -3350,19 +3369,19 @@ function Cc({ id: t, className: e, gap: n, hidden: r, plain: s, children: a }) {
3350
3369
  const f = c.current, p = f == null ? void 0 : f.parentElement;
3351
3370
  if (h.button !== 0 || !f || !p) return;
3352
3371
  h.preventDefault();
3353
- const y = h.currentTarget, T = getComputedStyle(p), N = p.clientWidth - parseFloat(T.paddingLeft) - parseFloat(T.paddingRight) - (parseFloat(T.columnGap) || 0), m = 320, b = 320, C = Math.max(m, N - b), D = h.clientX, B = f.getBoundingClientRect().width;
3354
- let Y = B;
3372
+ const y = h.currentTarget, T = getComputedStyle(p), N = p.clientWidth - parseFloat(T.paddingLeft) - parseFloat(T.paddingRight) - (parseFloat(T.columnGap) || 0), m = 320, b = 320, C = Math.max(m, N - b), D = h.clientX, V = f.getBoundingClientRect().width;
3373
+ let Y = V;
3355
3374
  y.classList.add("is-on");
3356
3375
  const ee = { cur: document.body.style.cursor, sel: document.body.style.userSelect };
3357
3376
  document.body.style.cursor = "col-resize", document.body.style.userSelect = "none";
3358
3377
  const I = (A) => {
3359
- Y = Math.round(Math.min(C, Math.max(m, B + (D - A.clientX)))), f.style.flexBasis = `${Y}px`, document.documentElement.style.setProperty("--colw", `${Y}px`);
3378
+ Y = Math.round(Math.min(C, Math.max(m, V + (D - A.clientX)))), f.style.flexBasis = `${Y}px`, document.documentElement.style.setProperty("--colw", `${Y}px`);
3360
3379
  }, F = () => {
3361
3380
  window.removeEventListener("pointermove", I), window.removeEventListener("pointerup", F), window.removeEventListener("pointercancel", F), document.body.style.cursor = ee.cur, document.body.style.userSelect = ee.sel, y.classList.remove("is-on"), l(Y);
3362
3381
  };
3363
3382
  window.addEventListener("pointermove", I), window.addEventListener("pointerup", F), window.addEventListener("pointercancel", F);
3364
3383
  }, M = r ? { display: "none" } : void 0;
3365
- return /* @__PURE__ */ g(be, { children: [
3384
+ return /* @__PURE__ */ g(Ce, { children: [
3366
3385
  /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "colgrip", style: { marginRight: -n, ...M }, children: /* @__PURE__ */ i("div", { className: "colgrip__bar", style: { left: -(n / 2 + 6) }, title: "Drag to resize · double-click to reset", onPointerDown: d, onDoubleClick: () => l(null) }) }),
3367
3386
  /* @__PURE__ */ i("div", { ref: c, "data-tab-col": t, className: `${e} sidecol`, style: { flex: `0 0 ${o}px`, ...M }, children: s ? a : /* @__PURE__ */ i("div", { ref: u, "data-panel-grid": "", className: "panelgrid", children: a }) })
3368
3387
  ] });
@@ -3400,7 +3419,7 @@ function Sc(t) {
3400
3419
  }
3401
3420
  const Dc = 1500, Ac = 3e5;
3402
3421
  function Ec(t) {
3403
- const e = Wt(), [n, r] = k(null), [s, a] = k(null), [o, l] = k(null), [c, u] = k(null), d = j(null), M = j(null), h = j(null), f = j(0), p = Ke(() => {
3422
+ const e = Ft(), [n, r] = j(null), [s, a] = j(null), [o, l] = j(null), [c, u] = j(null), d = z(null), M = z(null), h = z(null), f = z(0), p = Ke(() => {
3404
3423
  h.current && (clearTimeout(h.current), h.current = null), d.current && (d.current.pause(), d.current.removeAttribute("src"), d.current.load(), d.current = null), M.current && (URL.revokeObjectURL(M.current), M.current = null);
3405
3424
  }, []), y = Ke(() => {
3406
3425
  f.current += 1, p(), a(null), l(null);
@@ -3418,7 +3437,7 @@ function Ec(t) {
3418
3437
  Hn() === "caf" && (C += `${C.includes("?") ? "&" : "?"}format=caf`);
3419
3438
  const D = Date.now();
3420
3439
  e.shareCode && C.includes("recording=") && (C += `&shareCode=${encodeURIComponent(e.shareCode)}`);
3421
- const B = async () => {
3440
+ const V = async () => {
3422
3441
  if (f.current !== b) return;
3423
3442
  let Y;
3424
3443
  try {
@@ -3426,7 +3445,7 @@ function Ec(t) {
3426
3445
  Y = await fetch(C, { headers: A ? { Authorization: `Bearer ${A}` } : {} });
3427
3446
  } catch (A) {
3428
3447
  if (f.current !== b) return;
3429
- l(null), u(It(A));
3448
+ l(null), u(bt(A));
3430
3449
  return;
3431
3450
  }
3432
3451
  if (f.current !== b) return;
@@ -3436,7 +3455,7 @@ function Ec(t) {
3436
3455
  return;
3437
3456
  }
3438
3457
  l(m.id), h.current = setTimeout(() => {
3439
- B();
3458
+ V();
3440
3459
  }, Dc);
3441
3460
  return;
3442
3461
  }
@@ -3458,7 +3477,7 @@ function Ec(t) {
3458
3477
  f.current === b && a(m.id);
3459
3478
  }).catch(F);
3460
3479
  };
3461
- B();
3480
+ V();
3462
3481
  }, [t, p, e]);
3463
3482
  return { armId: n, sampleId: s, dlId: o, error: c, clearError: () => u(null), arm: N, stop: y, reset: T };
3464
3483
  }
@@ -3488,14 +3507,14 @@ function En(t, e, n) {
3488
3507
  function Yc(t) {
3489
3508
  return t.on ? t.want || t.relang ? "asked" : t.playing && (t.preparing || t.starting != null) ? "line" : null : null;
3490
3509
  }
3491
- const wi = "Preparing the voice…";
3510
+ const vi = "Preparing the voice…";
3492
3511
  function Uc(t) {
3493
3512
  if (!t.lang) return null;
3494
3513
  const e = t.langName;
3495
3514
  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;
3496
3515
  }
3497
3516
  function oa(t, e) {
3498
- const [n, r] = k(null), [s, a] = k(!1);
3517
+ const [n, r] = j(null), [s, a] = j(!1);
3499
3518
  return S(() => {
3500
3519
  if (!t) {
3501
3520
  r(null), a(!1);
@@ -3509,7 +3528,7 @@ function oa(t, e) {
3509
3528
  }
3510
3529
  const Rc = (t) => `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
3511
3530
  function Pc({ state: t, line: e, onRetry: n, onOriginal: r }) {
3512
- const [s, a] = k(() => Date.now());
3531
+ const [s, a] = j(() => Date.now());
3513
3532
  S(() => {
3514
3533
  if (t.since == null) return;
3515
3534
  const d = setInterval(() => a(Date.now()), 1e3);
@@ -3561,7 +3580,7 @@ function la(t, e, n) {
3561
3580
  const a = (s ?? r.text).split(/\s+/).filter(Boolean), o = ((c = r.words[0]) == null ? void 0 : c.start) ?? r.start, l = ra(r, t[e + 1], r.start + Math.max(2, a.length * 0.4));
3562
3581
  return Jl(a, o, l).map((u, d) => ({ ...u, seq: r.seqs[0] ?? 0, idx: d }));
3563
3582
  }
3564
- function vi(t, e, n) {
3583
+ function wi(t, e, n) {
3565
3584
  if (!t.engaged || e !== t.idx || !n.length) return null;
3566
3585
  if (!t.wordSync) return t.clipPos ? Ri(n.map((a) => ({ t: a.text, sp: " " })), t.clipPos) : null;
3567
3586
  const r = t.t;
@@ -3569,7 +3588,7 @@ function vi(t, e, n) {
3569
3588
  for (let a = 0; a < n.length && n[a].start <= r; a++) s = a;
3570
3589
  return s;
3571
3590
  }
3572
- function Bt(t, e) {
3591
+ function Vt(t, e) {
3573
3592
  var l;
3574
3593
  const n = t.clipPos;
3575
3594
  if (t.wordSync || t.timed || !n || !(n.dur > 0)) return t.t;
@@ -3582,7 +3601,7 @@ function Ht(t, e, n) {
3582
3601
  return r != null && r > e ? r : (t == null ? void 0 : t.end) != null && t.end > e ? t.end : n > e ? n : e + 4;
3583
3602
  }
3584
3603
  function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd: o, endT: l, onGone: c, onKnown: u, lead: d, onTime: M, waiting: h = !1 }) {
3585
- const f = j(null), [p, y] = k(!1);
3604
+ const f = z(null), [p, y] = j(!1);
3586
3605
  S(() => {
3587
3606
  if (!h) {
3588
3607
  y(!1);
@@ -3591,34 +3610,34 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3591
3610
  const W = setTimeout(() => y(!0), 300);
3592
3611
  return () => clearTimeout(W);
3593
3612
  }, [h]);
3594
- const T = r && !p, N = j(!1), [m, b] = k(!1), C = (W, ye = []) => {
3613
+ const T = r && !p, N = z(!1), [m, b] = j(!1), C = (W, ye = []) => {
3595
3614
  var G, ke;
3596
3615
  if (!(N.current && (W === "pauseVideo" || W === "seekTo" || W === "setPlaybackRate")))
3597
3616
  try {
3598
3617
  (ke = (G = f.current) == null ? void 0 : G.contentWindow) == null || ke.postMessage(JSON.stringify({ event: "command", func: W, args: ye }), "*");
3599
3618
  } catch {
3600
3619
  }
3601
- }, D = j(null), B = j(!1), Y = j(!1), ee = j(!1), I = j(a);
3620
+ }, D = z(null), V = z(!1), Y = z(!1), ee = z(!1), I = z(a);
3602
3621
  I.current = a;
3603
- const F = j(d);
3622
+ const F = z(d);
3604
3623
  F.current = d;
3605
- const A = j(o);
3624
+ const A = z(o);
3606
3625
  A.current = o;
3607
- const w = j(!1), _ = () => {
3626
+ const v = z(!1), _ = () => {
3608
3627
  var ye, G;
3609
3628
  const W = Y.current || ee.current;
3610
3629
  if (W !== N.current)
3611
3630
  if (N.current = W, b(W), (ye = A.current) == null || ye.call(A, W), W) {
3612
3631
  if (C("playVideo"), F.current) return;
3613
- we.current && I.current && (w.current = !0, I.current());
3614
- } else w.current && !F.current && (w.current = !1, we.current || (G = I.current) == null || G.call(I));
3615
- }, O = j(n);
3632
+ ve.current && I.current && (v.current = !0, I.current());
3633
+ } else v.current && !F.current && (v.current = !1, ve.current || (G = I.current) == null || G.call(I));
3634
+ }, O = z(n);
3616
3635
  O.current = n;
3617
- const te = j(M);
3636
+ const te = z(M);
3618
3637
  te.current = M;
3619
- const K = j(null), L = j(null), [ie, ne] = k(!0), [Z, J] = k(!1), pe = () => {
3638
+ const K = z(null), L = z(null), [ie, ne] = j(!0), [Z, J] = j(!1), pe = () => {
3620
3639
  C("unloadModule", ["captions"]), C("unloadModule", ["cc"]);
3621
- }, le = j([]), Te = () => {
3640
+ }, le = z([]), Te = () => {
3622
3641
  pe(), le.current.forEach(clearTimeout), le.current = [400, 1200, 2500, 5e3].map((W) => window.setTimeout(pe, W));
3623
3642
  };
3624
3643
  S(() => () => le.current.forEach(clearTimeout), []);
@@ -3633,23 +3652,23 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3633
3652
  S(() => (d == null || d.bind(C), () => d == null ? void 0 : d.bind(null)), [!!d]), S(() => {
3634
3653
  !d && Z && C("mute");
3635
3654
  }, [!!d]);
3636
- const Se = j(null), ve = j(l);
3637
- ve.current = l;
3638
- const we = j(T);
3639
- we.current = T;
3640
- const Ee = j(!1), Re = j(c);
3655
+ const Se = z(null), we = z(l);
3656
+ we.current = l;
3657
+ const ve = z(T);
3658
+ ve.current = T;
3659
+ const Ee = z(!1), Re = z(c);
3641
3660
  Re.current = c;
3642
- const De = j(u);
3661
+ const De = z(u);
3643
3662
  De.current = u;
3644
- const Q = j(!1), [H, E] = k(!1), x = (W) => {
3663
+ const Q = z(!1), [H, E] = j(!1), x = (W) => {
3645
3664
  const ye = Se.current;
3646
3665
  return !!ye && (W < ye.start - 1 || W > ye.end + 5);
3647
- }, V = () => {
3666
+ }, B = () => {
3648
3667
  x(O.current) || C("seekTo", [O.current, !0]);
3649
3668
  }, ce = () => K.current;
3650
3669
  return S(() => {
3651
3670
  const W = (ye) => {
3652
- var Fe, Ae, he, _e, Be, $, Me, ue, ae, fe, Ye, U, R, q, se, de;
3671
+ var Fe, Ae, he, _e, Ve, $, Me, ue, ae, fe, Ye, U, R, q, se, de;
3653
3672
  if (ye.source !== ((Fe = f.current) == null ? void 0 : Fe.contentWindow) || typeof ye.data != "string") return;
3654
3673
  let G = null;
3655
3674
  try {
@@ -3657,15 +3676,15 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3657
3676
  } catch {
3658
3677
  return;
3659
3678
  }
3660
- (he = (Ae = G == null ? void 0 : G.info) == null ? void 0 : Ae.videoData) != null && he.isLive && (B.current = !0);
3679
+ (he = (Ae = G == null ? void 0 : G.info) == null ? void 0 : Ae.videoData) != null && he.isLive && (V.current = !0);
3661
3680
  const ke = (_e = G == null ? void 0 : G.info) == null ? void 0 : _e.duration;
3662
- typeof ke == "number" && ke > 0 && !B.current && (D.current == null ? D.current = ke : (Y.current = Math.abs(ke - D.current) > 1.5, _())), (G == null ? void 0 : G.event) === "onReady" && ((!F.current || F.current.muted) && C("mute"), Te(), (Be = F.current) == null || Be.onInfo({ ready: !0 })), typeof (($ = G == null ? void 0 : G.info) == null ? void 0 : $.playerState) == "number" && (G.info.playerState !== L.current && (G.info.playerState === 1 || G.info.playerState === 2) && Te(), L.current = G.info.playerState, ne(G.info.playerState !== 1 && G.info.playerState !== 3), (Me = F.current) == null || Me.onInfo({ state: G.info.playerState }));
3681
+ typeof ke == "number" && ke > 0 && !V.current && (D.current == null ? D.current = ke : (Y.current = Math.abs(ke - D.current) > 1.5, _())), (G == null ? void 0 : G.event) === "onReady" && ((!F.current || F.current.muted) && C("mute"), Te(), (Ve = F.current) == null || Ve.onInfo({ ready: !0 })), typeof (($ = G == null ? void 0 : G.info) == null ? void 0 : $.playerState) == "number" && (G.info.playerState !== L.current && (G.info.playerState === 1 || G.info.playerState === 2) && Te(), L.current = G.info.playerState, ne(G.info.playerState !== 1 && G.info.playerState !== 3), (Me = F.current) == null || Me.onInfo({ state: G.info.playerState }));
3663
3682
  const Ie = (ue = G == null ? void 0 : G.info) == null ? void 0 : ue.progressState;
3664
3683
  if (Ie && typeof Ie.seekableStart == "number" && typeof Ie.seekableEnd == "number" && Ie.seekableEnd > Ie.seekableStart) {
3665
- const Oe = Se.current == null;
3666
- if (Se.current = { start: Ie.seekableStart, end: Ie.seekableEnd }, Oe && !we.current && (C("pauseVideo"), x(O.current) || C("seekTo", [O.current, !0])), !Q.current && ve.current != null) {
3684
+ const be = Se.current == null;
3685
+ if (Se.current = { start: Ie.seekableStart, end: Ie.seekableEnd }, be && !ve.current && (C("pauseVideo"), x(O.current) || C("seekTo", [O.current, !0])), !Q.current && we.current != null) {
3667
3686
  Q.current = !0;
3668
- const Ne = ve.current < Ie.seekableStart - 1;
3687
+ const Ne = we.current < Ie.seekableStart - 1;
3669
3688
  (ae = De.current) == null || ae.call(De, Ne), Ne && ((fe = Re.current) == null || fe.call(Re));
3670
3689
  }
3671
3690
  }
@@ -3683,11 +3702,11 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3683
3702
  return;
3684
3703
  }
3685
3704
  const W = ce();
3686
- T && (W == null || Math.abs(W - O.current) > 1.5) && V(), C(T ? "playVideo" : "pauseVideo");
3705
+ T && (W == null || Math.abs(W - O.current) > 1.5) && B(), C(T ? "playVideo" : "pauseVideo");
3687
3706
  }, [T, Z, H]), S(() => {
3688
3707
  if (!Z || s === 0 || H || d) return;
3689
3708
  const W = ce();
3690
- (W == null || Math.abs(W - O.current) > 0.5) && V(), T || C("pauseVideo");
3709
+ (W == null || Math.abs(W - O.current) > 0.5) && B(), T || C("pauseVideo");
3691
3710
  }, [s, Z]), S(() => {
3692
3711
  if (!Z) return;
3693
3712
  let W = null, ye = 0;
@@ -3701,7 +3720,7 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3701
3720
  }, [Z]), /* @__PURE__ */ g("div", { className: `txyt${m ? " txyt--ad" : ""}`, children: [
3702
3721
  /* @__PURE__ */ i("iframe", { ref: f, onLoad: je, referrerPolicy: "strict-origin-when-cross-origin", src: `https://www.youtube-nocookie.com/embed/${t}?enablejsapi=1&mute=1&controls=0&rel=0&modestbranding=1&playsinline=1&iv_load_policy=3`, title: e, allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" }),
3703
3722
  !m && /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: a, style: { cursor: a ? "pointer" : "default" } }),
3704
- /* @__PURE__ */ i("div", { className: `txyt__paused${ie && !m && !H ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Xt, { size: 44 }) }) }),
3723
+ /* @__PURE__ */ i("div", { className: `txyt__paused${ie && !m && !H ? " txyt__paused--on" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) }) }),
3705
3724
  m && /* @__PURE__ */ i("div", { className: "txyt__ad", "aria-live": "polite", children: "Ad on YouTube · the transcript carries on after it" }),
3706
3725
  H && /* @__PURE__ */ g("div", { className: "txyt__gone", children: [
3707
3726
  /* @__PURE__ */ i("span", { children: "YouTube no longer has this part of the broadcast" }),
@@ -3709,25 +3728,25 @@ function $c({ ytId: t, title: e, t: n, playing: r, seekN: s, onToggle: a, onAd:
3709
3728
  ] })
3710
3729
  ] });
3711
3730
  }
3712
- const Qc = /* @__PURE__ */ g(be, { children: [
3731
+ const Qc = /* @__PURE__ */ g(Ce, { children: [
3713
3732
  /* @__PURE__ */ i("rect", { x: "6.5", y: "5", width: "3.75", height: "14", rx: "1.2" }),
3714
3733
  /* @__PURE__ */ i("rect", { x: "13.75", y: "5", width: "3.75", height: "14", rx: "1.2" })
3715
- ] }), Bc = /* @__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" });
3716
- function Vc({ player: t, size: e }) {
3734
+ ] }), Vc = /* @__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" });
3735
+ function Bc({ player: t, size: e }) {
3717
3736
  const n = t.muted ? "Unmute" : "Mute";
3718
3737
  return /* @__PURE__ */ i("button", { type: "button", className: `mutebtn${e < 36 ? " mutebtn--sm" : e > 36 ? " mutebtn--lg" : ""}`, "aria-label": n, title: n, "aria-pressed": t.muted, onClick: t.toggleMute, children: /* @__PURE__ */ i(oe, { d: t.muted ? X.volumeOff : X.volume, size: 17, sw: 1.6, style: { color: t.muted ? "var(--ink-38)" : "var(--ink-70)" } }) });
3719
3738
  }
3720
3739
  function Hc() {
3721
- const [t, e] = k(""), n = j(null), r = Ke((s) => {
3740
+ const [t, e] = j(""), n = z(null), r = Ke((s) => {
3722
3741
  clearTimeout(n.current), e(s), n.current = setTimeout(() => e(""), 3e3);
3723
3742
  }, []);
3724
3743
  return S(() => () => clearTimeout(n.current), []), [t, r];
3725
3744
  }
3726
3745
  const Wc = 0.2, Fc = 140, Zc = 320;
3727
3746
  function Gc(t, e) {
3728
- const n = j(t);
3747
+ const n = z(t);
3729
3748
  n.current = t;
3730
- const r = j(0), s = j(1), a = Ke((o, l) => {
3749
+ const r = z(0), s = z(1), a = Ke((o, l) => {
3731
3750
  cancelAnimationFrame(r.current);
3732
3751
  const c = s.current, u = performance.now(), d = () => {
3733
3752
  const M = l > 0 ? Math.min(1, (performance.now() - u) / l) : 1;
@@ -3746,18 +3765,18 @@ function Gc(t, e) {
3746
3765
  }
3747
3766
  function qc(t, e, n, r) {
3748
3767
  var De;
3749
- const s = j(null), a = j(!1), o = j(!1), [l, c] = k(null), [u, d] = k(!0), M = j(!0), h = j(!1), [f, p] = k(0), y = j(0);
3768
+ const s = z(null), a = z(!1), o = z(!1), [l, c] = j(null), [u, d] = j(!0), M = z(!0), h = z(!1), [f, p] = j(0), y = z(0);
3750
3769
  y.current = f;
3751
- const T = j({ t: 0, at: 0 }), N = j(n);
3770
+ const T = z({ t: 0, at: 0 }), N = z(n);
3752
3771
  N.current = n;
3753
- const m = j(r);
3772
+ const m = z(r);
3754
3773
  m.current = r;
3755
- const [b, C] = k(!1), D = j(!1), B = (Q) => {
3774
+ const [b, C] = j(!1), D = z(!1), V = (Q) => {
3756
3775
  D.current = Q, C(Q);
3757
3776
  }, Y = (Q, H) => {
3758
3777
  var E;
3759
3778
  return (E = s.current) == null ? void 0 : E.call(s, Q, H);
3760
- }, ee = l === 1 || l === 3, I = j(null), F = j(null), A = ze(() => ({
3779
+ }, ee = l === 1 || l === 3, I = z(null), F = z(null), A = ze(() => ({
3761
3780
  muted: !0,
3762
3781
  bind: (Q) => {
3763
3782
  s.current = Q, Q || (a.current = !1);
@@ -3775,26 +3794,26 @@ function qc(t, e, n, r) {
3775
3794
  const H = () => {
3776
3795
  const E = T.current, x = E.t + Math.min(1.2, (performance.now() - E.at) / 1e3);
3777
3796
  if (m.current != null && x >= m.current) {
3778
- B(!0), Y("pauseVideo"), p(x);
3797
+ V(!0), Y("pauseVideo"), p(x);
3779
3798
  return;
3780
3799
  }
3781
3800
  x > y.current && p(x), Q = requestAnimationFrame(H);
3782
3801
  };
3783
3802
  return Q = requestAnimationFrame(H), () => cancelAnimationFrame(Q);
3784
3803
  }, [l]), S(() => {
3785
- !b || r == null || r < f + 1.5 || (B(!1), Y("playVideo"));
3804
+ !b || r == null || r < f + 1.5 || (V(!1), Y("playVideo"));
3786
3805
  }, [b, r, f]), S(() => {
3787
- r == null && D.current && (B(!1), Y("playVideo"));
3806
+ r == null && D.current && (V(!1), Y("playVideo"));
3788
3807
  }, [r]);
3789
- const w = t.length ? ((De = t[t.length - 1].words[t[t.length - 1].words.length - 1]) == null ? void 0 : De.end) ?? t[t.length - 1].start + 4 : 0, _ = e || w || 1, O = ze(() => {
3808
+ const v = t.length ? ((De = t[t.length - 1].words[t[t.length - 1].words.length - 1]) == null ? void 0 : De.end) ?? t[t.length - 1].start + 4 : 0, _ = e || v || 1, O = ze(() => {
3790
3809
  if (!t.length) return 0;
3791
3810
  let Q = 0;
3792
3811
  for (let H = 0; H < t.length; H++) t[H].start <= f + 0.05 && (Q = H);
3793
3812
  return Q;
3794
- }, [t, f]), [te, K] = k(0), L = (Q) => {
3813
+ }, [t, f]), [te, K] = j(0), L = (Q) => {
3795
3814
  const H = Math.max(0, m.current != null ? Math.min(Q, Math.max(0, m.current - 0.5)) : Q);
3796
3815
  Y("seekTo", [H + N.current, !0]), T.current = { t: H, at: performance.now() }, p(H), K((E) => E + 1);
3797
- }, ie = j(!1), ne = j(void 0), Z = (Q) => {
3816
+ }, ie = z(!1), ne = z(void 0), Z = (Q) => {
3798
3817
  window.clearTimeout(ne.current), ne.current = window.setTimeout(() => {
3799
3818
  !ie.current || Q <= 0 || I.current === 1 || I.current === 3 || (Y("playVideo"), Z(Q - 1));
3800
3819
  }, 1200);
@@ -3807,7 +3826,7 @@ function qc(t, e, n, r) {
3807
3826
  }
3808
3827
  Y("playVideo"), Z(3);
3809
3828
  }, pe = () => {
3810
- ie.current = !1, window.clearTimeout(ne.current), o.current = !1, B(!1), Y("pauseVideo");
3829
+ ie.current = !1, window.clearTimeout(ne.current), o.current = !1, V(!1), Y("pauseVideo");
3811
3830
  }, le = () => {
3812
3831
  if (!a.current) {
3813
3832
  o.current = !0;
@@ -3818,32 +3837,32 @@ function qc(t, e, n, r) {
3818
3837
  return;
3819
3838
  }
3820
3839
  if (D.current) {
3821
- B(!1);
3840
+ V(!1);
3822
3841
  return;
3823
3842
  }
3824
3843
  f >= _ - 0.25 && L(0), J();
3825
3844
  }, Te = (Q) => {
3826
3845
  const H = t[Math.max(0, Math.min(t.length - 1, Q))];
3827
3846
  H && L(H.start);
3828
- }, je = j(!1), Se = () => {
3847
+ }, je = z(!1), Se = () => {
3829
3848
  const Q = M.current || h.current;
3830
3849
  A.muted = Q, Y(Q ? "mute" : "unMute");
3831
- }, ve = (Q) => {
3832
- M.current = Q, d(Q), Se();
3833
3850
  }, we = (Q) => {
3851
+ M.current = Q, d(Q), Se();
3852
+ }, ve = (Q) => {
3834
3853
  h.current !== !Q && (h.current = !Q, Se());
3835
3854
  };
3836
3855
  return { player: {
3837
3856
  autoplay: async () => {
3838
3857
  const Q = (E) => new Promise((x) => setTimeout(x, E)), H = async (E, x) => {
3839
- for (let V = 0; V < x / 250 && !E(); V++) await Q(250);
3858
+ for (let B = 0; B < x / 250 && !E(); B++) await Q(250);
3840
3859
  return E();
3841
3860
  };
3842
3861
  if (!await H(() => a.current, 1e4)) return null;
3843
- ve(!0);
3862
+ we(!0);
3844
3863
  for (let E = 0; E < 5 && I.current !== 1; E++)
3845
3864
  Y("playVideo"), await H(() => I.current === 1, 1500);
3846
- return I.current !== 1 ? null : h.current ? (ve(!0), !1) : (ve(!1), await Q(1200), I.current === 1 && F.current === !1 ? !0 : (ve(!0), Y("playVideo"), !1));
3865
+ return I.current !== 1 ? null : h.current ? (we(!0), !1) : (we(!1), await Q(1200), I.current === 1 && F.current === !1 ? !0 : (we(!0), Y("playVideo"), !1));
3847
3866
  },
3848
3867
  playing: ee,
3849
3868
  ended: l === 0,
@@ -3856,8 +3875,8 @@ function qc(t, e, n, r) {
3856
3875
  seekRow: Te,
3857
3876
  toggleMute: () => {
3858
3877
  const Q = !M.current;
3859
- ve(Q), !Q && !h.current && I.current === 1 && setTimeout(() => {
3860
- I.current === 2 && !M.current && (ve(!0), Y("playVideo"));
3878
+ we(Q), !Q && !h.current && I.current === 1 && setTimeout(() => {
3879
+ I.current === 2 && !M.current && (we(!0), Y("playVideo"));
3861
3880
  }, 900);
3862
3881
  },
3863
3882
  seekFrac: (Q) => L(Math.max(0, Math.min(1, Q)) * _),
@@ -3885,15 +3904,15 @@ function qc(t, e, n, r) {
3885
3904
  wordSync: !0,
3886
3905
  pause: pe,
3887
3906
  setVolume: (Q) => Y("setVolume", [Math.round(Q * 100)])
3888
- }, lead: A, setVideoSound: we };
3907
+ }, lead: A, setVideoSound: ve };
3889
3908
  }
3890
3909
  function Kc(t, e, n, r, s = 0, a = null) {
3891
3910
  var E;
3892
- const o = j(null), [l, c] = k(!1), [u, d] = k(0), [M, h] = k(!1), f = j(M);
3911
+ const o = z(null), [l, c] = j(!1), [u, d] = j(0), [M, h] = j(!1), f = z(M);
3893
3912
  f.current = M;
3894
- const p = j(!1), [y, T] = k(null), [N, m] = k(!1), b = j(s);
3913
+ const p = z(!1), [y, T] = j(null), [N, m] = j(!1), b = z(s);
3895
3914
  b.current = s;
3896
- const C = j(null), [D, B] = k(0);
3915
+ const C = z(null), [D, V] = j(0);
3897
3916
  S(() => {
3898
3917
  m(!1);
3899
3918
  const x = C.current;
@@ -3901,30 +3920,30 @@ function Kc(t, e, n, r, s = 0, a = null) {
3901
3920
  c(!1), o.current = null;
3902
3921
  return;
3903
3922
  }
3904
- const V = _i(t), ce = b.current;
3905
- return V.preload = "metadata", V.muted = f.current || p.current, V.onplay = () => c(!0), V.onpause = () => c(!1), V.onended = () => c(!1), V.onloadedmetadata = () => {
3906
- m(!0), V.currentTime = ((x == null ? void 0 : x.t) ?? 0) + ce, x != null && x.playing && V.play().catch((W) => {
3907
- x.asked && (W == null ? void 0 : W.name) === "NotAllowedError" || T(It(W));
3923
+ const B = _i(t), ce = b.current;
3924
+ return B.preload = "metadata", B.muted = f.current || p.current, B.onplay = () => c(!0), B.onpause = () => c(!1), B.onended = () => c(!1), B.onloadedmetadata = () => {
3925
+ m(!0), B.currentTime = ((x == null ? void 0 : x.t) ?? 0) + ce, x != null && x.playing && B.play().catch((W) => {
3926
+ x.asked && (W == null ? void 0 : W.name) === "NotAllowedError" || T(bt(W));
3908
3927
  });
3909
- }, V.onerror = () => {
3928
+ }, B.onerror = () => {
3910
3929
  c(!1);
3911
- const W = V.error, ye = No(W, !1);
3930
+ const W = B.error, ye = No(W, !1);
3912
3931
  Mo(t).then((G) => {
3913
- Sc(G == null ? void 0 : G.message) || Ai(W), o.current === V && (T({ message: (G == null ? void 0 : G.message) ?? ye }), G != null && G.permanent || (o.current = null));
3932
+ Sc(G == null ? void 0 : G.message) || Ai(W), o.current === B && (T({ message: (G == null ? void 0 : G.message) ?? ye }), G != null && G.permanent || (o.current = null));
3914
3933
  });
3915
- }, o.current = V, () => {
3916
- C.current = { t: Math.max(0, V.currentTime - ce), playing: !V.paused && !V.ended }, V.pause(), V.onplay = V.onpause = V.onended = V.onloadedmetadata = V.onerror = null, o.current = null;
3934
+ }, o.current = B, () => {
3935
+ C.current = { t: Math.max(0, B.currentTime - ce), playing: !B.paused && !B.ended }, B.pause(), B.onplay = B.onpause = B.onended = B.onloadedmetadata = B.onerror = null, o.current = null;
3917
3936
  };
3918
3937
  }, [t, D]), S(() => () => {
3919
3938
  C.current = null;
3920
3939
  }, []);
3921
- const Y = n.length ? ((E = n[n.length - 1].words[n[n.length - 1].words.length - 1]) == null ? void 0 : E.end) ?? n[n.length - 1].start + 4 : 0, ee = s > 0 || r != null && N && o.current != null && Number.isFinite(o.current.duration) && o.current.duration > r + 1, I = !ee && N && o.current && Number.isFinite(o.current.duration) && o.current.duration || r || Y || 1, F = j(I);
3940
+ const Y = n.length ? ((E = n[n.length - 1].words[n[n.length - 1].words.length - 1]) == null ? void 0 : E.end) ?? n[n.length - 1].start + 4 : 0, ee = s > 0 || r != null && N && o.current != null && Number.isFinite(o.current.duration) && o.current.duration > r + 1, I = !ee && N && o.current && Number.isFinite(o.current.duration) && o.current.duration || r || Y || 1, F = z(I);
3922
3941
  F.current = I;
3923
- const A = j(ee);
3942
+ const A = z(ee);
3924
3943
  A.current = ee;
3925
- const w = j(a);
3926
- w.current = a;
3927
- const [_, O] = k(!1), te = j(!1), K = (x) => {
3944
+ const v = z(a);
3945
+ v.current = a;
3946
+ const [_, O] = j(!1), te = z(!1), K = (x) => {
3928
3947
  te.current = x, O(x);
3929
3948
  };
3930
3949
  S(() => {
@@ -3938,7 +3957,7 @@ function Kc(t, e, n, r, s = 0, a = null) {
3938
3957
  }, [_, a, u]), S(() => {
3939
3958
  if (!l) return;
3940
3959
  let x = 0;
3941
- const V = () => {
3960
+ const B = () => {
3942
3961
  const ce = o.current;
3943
3962
  if (ce) {
3944
3963
  const W = ce.currentTime - b.current;
@@ -3946,35 +3965,35 @@ function Kc(t, e, n, r, s = 0, a = null) {
3946
3965
  ce.pause(), d(F.current);
3947
3966
  return;
3948
3967
  }
3949
- if (w.current != null && W >= w.current) {
3968
+ if (v.current != null && W >= v.current) {
3950
3969
  K(!0), ce.pause(), d(W);
3951
3970
  return;
3952
3971
  }
3953
3972
  d(W);
3954
3973
  }
3955
- x = requestAnimationFrame(V);
3974
+ x = requestAnimationFrame(B);
3956
3975
  };
3957
- return x = requestAnimationFrame(V), () => cancelAnimationFrame(x);
3976
+ return x = requestAnimationFrame(B), () => cancelAnimationFrame(x);
3958
3977
  }, [l]);
3959
3978
  const L = ze(() => {
3960
3979
  if (!n.length) return 0;
3961
3980
  let x = 0;
3962
- for (let V = 0; V < n.length; V++) n[V].start <= u + 0.05 && (x = V);
3981
+ for (let B = 0; B < n.length; B++) n[B].start <= u + 0.05 && (x = B);
3963
3982
  return x;
3964
- }, [n, u]), [ie, ne] = k(0), Z = (x) => {
3965
- const V = w.current != null ? Math.min(x, Math.max(0, w.current - 0.5)) : x, ce = o.current;
3966
- d(V), ce && (ce.currentTime = V + b.current), ne((W) => W + 1);
3983
+ }, [n, u]), [ie, ne] = j(0), Z = (x) => {
3984
+ const B = v.current != null ? Math.min(x, Math.max(0, v.current - 0.5)) : x, ce = o.current;
3985
+ d(B), ce && (ce.currentTime = B + b.current), ne((W) => W + 1);
3967
3986
  }, J = (x) => {
3968
- (x == null ? void 0 : x.name) !== "AbortError" && T(It(x));
3987
+ (x == null ? void 0 : x.name) !== "AbortError" && T(bt(x));
3969
3988
  }, pe = () => {
3970
- var V;
3989
+ var B;
3971
3990
  const x = o.current;
3972
3991
  if (!x) {
3973
3992
  if (!t && e) {
3974
- C.current = (V = C.current) != null && V.asked ? null : { t: u, playing: !0, asked: !0 };
3993
+ C.current = (B = C.current) != null && B.asked ? null : { t: u, playing: !0, asked: !0 };
3975
3994
  return;
3976
3995
  }
3977
- t && B((ce) => ce + 1), T({ message: e ? "The audio player is not ready yet — try again in a moment." : "There is no audio for this transcription." });
3996
+ t && V((ce) => ce + 1), T({ message: e ? "The audio player is not ready yet — try again in a moment." : "There is no audio for this transcription." });
3978
3997
  return;
3979
3998
  }
3980
3999
  if (l) {
@@ -3987,46 +4006,46 @@ function Kc(t, e, n, r, s = 0, a = null) {
3987
4006
  }
3988
4007
  x.currentTime < b.current && (x.currentTime = b.current), u >= I - 0.25 && Z(0), x.play().catch(J);
3989
4008
  }, le = (x) => {
3990
- const V = n[Math.max(0, Math.min(n.length - 1, x))];
3991
- V && Z(V.start);
4009
+ const B = n[Math.max(0, Math.min(n.length - 1, x))];
4010
+ B && Z(B.start);
3992
4011
  }, Te = (x) => Z(Math.max(0, Math.min(1, x)) * I), je = (x) => {
3993
- const V = En(x, n, I);
3994
- Z(V.t);
4012
+ const B = En(x, n, I);
4013
+ Z(B.t);
3995
4014
  const ce = o.current;
3996
4015
  if (ce) {
3997
- if (!V.playing) {
4016
+ if (!B.playing) {
3998
4017
  ce.pause();
3999
4018
  return;
4000
4019
  }
4001
4020
  K(!1), ce.play().catch(J);
4002
4021
  }
4003
- }, Se = (x) => Z(x.start), ve = (x) => {
4022
+ }, Se = (x) => Z(x.start), we = (x) => {
4004
4023
  le(x);
4005
- const V = o.current;
4006
- V && V.paused && V.play().catch(J);
4007
- }, we = j(!1), Ee = j(0), Re = () => {
4024
+ const B = o.current;
4025
+ B && B.paused && B.play().catch(J);
4026
+ }, ve = z(!1), Ee = z(0), Re = () => {
4008
4027
  var x;
4009
- l && ((x = o.current) == null || x.pause(), we.current = !0);
4028
+ l && ((x = o.current) == null || x.pause(), ve.current = !0);
4010
4029
  }, De = () => {
4011
4030
  var x;
4012
- we.current && (we.current = !1, (x = o.current) == null || x.play().catch(J));
4031
+ ve.current && (ve.current = !1, (x = o.current) == null || x.play().catch(J));
4013
4032
  };
4014
4033
  return {
4015
4034
  autoplay: async () => {
4016
4035
  const x = o.current;
4017
4036
  if (!x) return null;
4018
4037
  x.currentTime < b.current && (x.currentTime = b.current);
4019
- const V = (ce) => {
4038
+ const B = (ce) => {
4020
4039
  f.current = ce, x.muted = ce || p.current, h(ce);
4021
4040
  };
4022
4041
  try {
4023
- return V(!1), await x.play(), !0;
4042
+ return B(!1), await x.play(), !0;
4024
4043
  } catch (ce) {
4025
4044
  if ((ce == null ? void 0 : ce.name) !== "NotAllowedError")
4026
- return V(!0), null;
4045
+ return B(!0), null;
4027
4046
  }
4028
4047
  try {
4029
- return V(!0), await x.play(), !1;
4048
+ return B(!0), await x.play(), !1;
4030
4049
  } catch {
4031
4050
  return null;
4032
4051
  }
@@ -4045,17 +4064,17 @@ function Kc(t, e, n, r, s = 0, a = null) {
4045
4064
  seekFrac: Te,
4046
4065
  resumeAt: je,
4047
4066
  seekWord: Se,
4048
- playRow: ve,
4067
+ playRow: we,
4049
4068
  seekN: ie,
4050
4069
  stop: () => {
4051
4070
  const x = o.current;
4052
4071
  x && (x.pause(), x.currentTime = b.current), d(0);
4053
4072
  },
4054
4073
  videoAt: (x) => {
4055
- const V = o.current;
4056
- if (!V || V.paused || V.ended || we.current || Date.now() - Ee.current < 3e3) return;
4074
+ const B = o.current;
4075
+ if (!B || B.paused || B.ended || ve.current || Date.now() - Ee.current < 3e3) return;
4057
4076
  const ce = x + b.current;
4058
- Math.abs(V.currentTime - ce) <= 0.2 || (Ee.current = Date.now(), V.currentTime = ce);
4077
+ Math.abs(B.currentTime - ce) <= 0.2 || (Ee.current = Date.now(), B.currentTime = ce);
4059
4078
  },
4060
4079
  engaged: l || u > 0,
4061
4080
  prev: () => le(L - 1),
@@ -4068,8 +4087,8 @@ function Kc(t, e, n, r, s = 0, a = null) {
4068
4087
  edgeWait: _,
4069
4088
  wordSync: !0,
4070
4089
  pause: () => {
4071
- var x, V;
4072
- K(!1), (x = C.current) != null && x.asked && (C.current = null), (V = o.current) == null || V.pause();
4090
+ var x, B;
4091
+ K(!1), (x = C.current) != null && x.asked && (C.current = null), (B = o.current) == null || B.pause();
4073
4092
  },
4074
4093
  setVolume: (x) => {
4075
4094
  o.current && (o.current.volume = x);
@@ -4080,22 +4099,22 @@ function Kc(t, e, n, r, s = 0, a = null) {
4080
4099
  };
4081
4100
  }
4082
4101
  function Jc(t, e, n, r, s, a, o = !1, l) {
4083
- const c = j(/* @__PURE__ */ new Set());
4102
+ const c = z(/* @__PURE__ */ new Set());
4084
4103
  c.current = l ?? c.current;
4085
- const u = j(null), [d, M] = k(!1), [h, f] = k(0), [p, y] = k(0), [T, N] = k(!1), m = j(T);
4104
+ const u = z(null), [d, M] = j(!1), [h, f] = j(0), [p, y] = j(0), [T, N] = j(!1), m = z(T);
4086
4105
  m.current = T;
4087
- const [b, C] = k(null), [D, B] = k(null), [Y, ee] = k(null), [I, F] = k(null), A = j(I);
4106
+ const [b, C] = j(null), [D, V] = j(null), [Y, ee] = j(null), [I, F] = j(null), A = z(I);
4088
4107
  A.current = I;
4089
- const [w, _] = k(null), [O, te] = k(null), [K, L] = k(null), [ie, ne] = k(!1), Z = j(e);
4108
+ const [v, _] = j(null), [O, te] = j(null), [K, L] = j(null), [ie, ne] = j(!1), Z = z(e);
4090
4109
  Z.current = e;
4091
- const J = j(o), pe = j([]);
4110
+ const J = z(o), pe = z([]);
4092
4111
  J.current = o, u.current && (u.current.flow = o);
4093
- const le = j(null), Te = j(s);
4112
+ const le = z(null), Te = z(s);
4094
4113
  Te.current = s;
4095
- const je = j(a);
4114
+ const je = z(a);
4096
4115
  je.current = a;
4097
4116
  const Se = Ke((U) => {
4098
- U.finite = !0, U.coming = (R) => c.current.has(R), U.readAhead = 6, U.readAheadS = 45, U.onWaiting = (R) => B(R), U.onStarting = (R) => ee(R), U.onSentence = (R) => {
4117
+ U.finite = !0, U.coming = (R) => c.current.has(R), U.readAhead = 6, U.readAheadS = 45, U.onWaiting = (R) => V(R), U.onStarting = (R) => ee(R), U.onSentence = (R) => {
4099
4118
  if (M(U.playing), R == null) return;
4100
4119
  const q = Z.current.findIndex((se) => se.sentenceId === R);
4101
4120
  q >= 0 && f(q);
@@ -4103,17 +4122,17 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4103
4122
  M(U.playing), C(R instanceof Yi ? { 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." });
4104
4123
  }, U.gapBefore = (R, q) => {
4105
4124
  if (!J.current) return 0;
4106
- const se = Z.current, de = se.find((Ce) => Ce.sentenceId === R), Oe = se.find((Ce) => Ce.sentenceId === q);
4107
- if (!Oe) return 0;
4125
+ const se = Z.current, de = se.find((Oe) => Oe.sentenceId === R), be = se.find((Oe) => Oe.sentenceId === q);
4126
+ if (!be) return 0;
4108
4127
  const Ne = A.current;
4109
- if (R == null) return Ne && Ne.sid === q ? Math.max(0, Oe.start - Ne.t) : 0;
4128
+ if (R == null) return Ne && Ne.sid === q ? Math.max(0, be.start - Ne.t) : 0;
4110
4129
  const Le = le.current;
4111
- return Le && Date.now() - Le.at < 2e3 ? Math.max(0, Oe.start - (Le.t + (Date.now() - Le.at) / 1e3 * U.rate)) : !de || Oe.start <= de.start ? 0 : Math.max(0, Oe.start - Ht(de, de.start, de.start + 4));
4130
+ return Le && Date.now() - Le.at < 2e3 ? Math.max(0, be.start - (Le.t + (Date.now() - Le.at) / 1e3 * U.rate)) : !de || be.start <= de.start ? 0 : Math.max(0, be.start - Ht(de, de.start, de.start + 4));
4112
4131
  }, U.flow = J.current, U.silentSpan = (R) => {
4113
4132
  var $e;
4114
4133
  const q = Z.current, se = q.findIndex((ut) => ut.sentenceId === R), de = q[se];
4115
4134
  if (!de) return null;
4116
- const Oe = (($e = q[se + 1]) == null ? void 0 : $e.start) ?? Ht(de, de.start, de.start + 4), Ne = Math.max(0, Oe - de.start), Le = le.current, Ce = Le && Date.now() - Le.at < 2e3 ? Le.t + (Date.now() - Le.at) / 1e3 * (U.rate || 1) : de.start, He = Math.max(0, Math.min(Ne, Ce - de.start));
4135
+ const be = (($e = q[se + 1]) == null ? void 0 : $e.start) ?? Ht(de, de.start, de.start + 4), Ne = Math.max(0, be - de.start), Le = le.current, Oe = Le && Date.now() - Le.at < 2e3 ? Le.t + (Date.now() - Le.at) / 1e3 * (U.rate || 1) : de.start, He = Math.max(0, Math.min(Ne, Oe - de.start));
4117
4136
  return { fromS: He, ms: (Ne - He) * 1e3 / (U.rate || 1) };
4118
4137
  }, U.speakable = (R) => {
4119
4138
  const q = Te.current;
@@ -4121,7 +4140,7 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4121
4140
  const se = Z.current.find((de) => de.sentenceId === R);
4122
4141
  return !se || !q.has(se.speaker);
4123
4142
  };
4124
- }, []), ve = j(null), we = j(null), Ee = j(null), [Re, De] = k(!1), Q = j(() => {
4143
+ }, []), we = z(null), ve = z(null), Ee = z(null), [Re, De] = j(!1), Q = z(() => {
4125
4144
  }), H = (U) => {
4126
4145
  if (Ee.current = U, De(!!(U != null && U.playing)), !U) return;
4127
4146
  const R = En(U, Z.current, Ie).index;
@@ -4131,9 +4150,9 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4131
4150
  };
4132
4151
  S(() => {
4133
4152
  var q;
4134
- if (ve.current !== r) {
4135
- const se = ve.current != null ? we.current : null;
4136
- ve.current = r, (q = u.current) == null || q.stop(), u.current = new Ir(), Se(u.current), u.current.setSequence(pe.current), M(!1), f(0), C(null), ee(null), F(null), H(se && (se.playing || se.t > 0) ? se : null);
4153
+ if (we.current !== r) {
4154
+ const se = we.current != null ? ve.current : null;
4155
+ we.current = r, (q = u.current) == null || q.stop(), u.current = new Ir(), Se(u.current), u.current.setSequence(pe.current), M(!1), f(0), C(null), ee(null), F(null), H(se && (se.playing || se.t > 0) ? se : null);
4137
4156
  }
4138
4157
  const U = u.current;
4139
4158
  U.setMuted(m.current);
@@ -4147,27 +4166,27 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4147
4166
  (U = u.current) == null || U.setSequence(x);
4148
4167
  }, [x, r]), S(() => () => {
4149
4168
  var U;
4150
- (U = u.current) == null || U.stop(), u.current = null, ve.current = null;
4169
+ (U = u.current) == null || U.stop(), u.current = null, we.current = null;
4151
4170
  }, []);
4152
- const V = w != null || O != null;
4171
+ const B = v != null || O != null;
4153
4172
  S(() => {
4154
- if (!d && !V) {
4173
+ if (!d && !B) {
4155
4174
  _(null), te(null);
4156
4175
  return;
4157
4176
  }
4158
4177
  const U = () => {
4159
4178
  var Ne, Le;
4160
4179
  const q = ((Ne = u.current) == null ? void 0 : Ne.resting()) ?? null;
4161
- ne(!!(q != null && q.silent)), q != null && q.silent && A.current && (A.current = null, F(null)), te((Ce) => q == null ? null : Ce != null && Math.abs(Ce - q.s) < 0.05 ? Ce : q.s);
4180
+ ne(!!(q != null && q.silent)), q != null && q.silent && A.current && (A.current = null, F(null)), te((Oe) => q == null ? null : Oe != null && Math.abs(Oe - q.s) < 0.05 ? Oe : q.s);
4162
4181
  const se = A.current;
4163
4182
  q == null ? L(null) : se && se.sid === q.sentenceId && (L(se.t), A.current = null, F(null));
4164
- const de = ((Le = u.current) == null ? void 0 : Le.position()) ?? null, Oe = de && je.current ? je.current[String(de.sentenceId)] ?? null : null;
4165
- se && de && de.sentenceId === se.sid && de.t > 0.1 && F(null), _((Ce) => de ? Ce && Math.abs(Ce.t - de.t) < 0.05 && Ce.dur === de.dur && Ce.words === Oe ? Ce : { t: de.t, dur: de.dur, words: Oe } : Ce == null ? Ce : null);
4183
+ const de = ((Le = u.current) == null ? void 0 : Le.position()) ?? null, be = de && je.current ? je.current[String(de.sentenceId)] ?? null : null;
4184
+ se && de && de.sentenceId === se.sid && de.t > 0.1 && F(null), _((Oe) => de ? Oe && Math.abs(Oe.t - de.t) < 0.05 && Oe.dur === de.dur && Oe.words === be ? Oe : { t: de.t, dur: de.dur, words: be } : Oe == null ? Oe : null);
4166
4185
  };
4167
4186
  U();
4168
4187
  const R = setInterval(U, 100);
4169
4188
  return () => clearInterval(R);
4170
- }, [d, V]);
4189
+ }, [d, B]);
4171
4190
  const ce = ze(() => new Set(t.map((U) => U.sentenceId)), [t]), W = (U) => {
4172
4191
  var q;
4173
4192
  const R = (q = e[U]) == null ? void 0 : q.sentenceId;
@@ -4175,7 +4194,7 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4175
4194
  }, ye = (U, R) => {
4176
4195
  for (let q = U; q >= 0 && q < e.length; q += R) if (W(q)) return q;
4177
4196
  return null;
4178
- }, G = Math.max(0, Math.min(h, Math.max(0, e.length - 1))), ke = e.length ? e[e.length - 1].start + 4 : 0, Ie = n || ke || 1, Fe = j(!1), Ae = j(h);
4197
+ }, G = Math.max(0, Math.min(h, Math.max(0, e.length - 1))), ke = e.length ? e[e.length - 1].start + 4 : 0, Ie = n || ke || 1, Fe = z(!1), Ae = z(h);
4179
4198
  Ae.current = h;
4180
4199
  const he = (U) => {
4181
4200
  var R, q, se;
@@ -4183,17 +4202,17 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4183
4202
  }, _e = (U) => {
4184
4203
  var q, se, de;
4185
4204
  const R = Math.max(0, Math.min(Math.max(0, e.length - 1), U));
4186
- f(R), Ae.current = R, y((Oe) => Oe + 1), (se = u.current) == null || se.seek(((q = e[R]) == null ? void 0 : q.sentenceId) ?? null), M(!!((de = u.current) != null && de.playing));
4187
- }, Be = (U) => {
4205
+ f(R), Ae.current = R, y((be) => be + 1), (se = u.current) == null || se.seek(((q = e[R]) == null ? void 0 : q.sentenceId) ?? null), M(!!((de = u.current) != null && de.playing));
4206
+ }, Ve = (U) => {
4188
4207
  var R;
4189
4208
  E(), F(null), (R = u.current) == null || R.startWithin(-1, 0), _e(U);
4190
4209
  }, $ = (U) => {
4191
4210
  var de;
4192
4211
  const R = e[U], q = (R == null ? void 0 : R.start) ?? 0, se = ((de = e[U + 1]) == null ? void 0 : de.start) ?? Ht(R, q, Ie);
4193
4212
  return { from: q, span: Math.max(0, se - q) };
4194
- }, Me = $(G), ue = Math.max(0, Math.min(Me.span, Ht(e[G], Me.from, Me.from + 4) - Me.from)), ae = I ? I.t : o ? O != null && ie ? Me.from + Math.min(Me.span, O) : O != null ? K != null ? Math.min(Me.from, K + O) : Me.from + Math.min(Me.span, ue + O) : w && w.dur > 0 ? Me.from + Math.min(ue, w.t / w.dur * ue) : Me.from : w && w.dur > 0 ? Me.from + Math.min(Me.span, w.t / w.dur * Me.span) : Me.from;
4213
+ }, Me = $(G), ue = Math.max(0, Math.min(Me.span, Ht(e[G], Me.from, Me.from + 4) - Me.from)), ae = I ? I.t : o ? O != null && ie ? Me.from + Math.min(Me.span, O) : O != null ? K != null ? Math.min(Me.from, K + O) : Me.from + Math.min(Me.span, ue + O) : v && v.dur > 0 ? Me.from + Math.min(ue, v.t / v.dur * ue) : Me.from : v && v.dur > 0 ? Me.from + Math.min(Me.span, v.t / v.dur * Me.span) : Me.from;
4195
4214
  S(() => {
4196
- we.current = Ee.current ?? _c(e, ae, d, Ie);
4215
+ ve.current = Ee.current ?? _c(e, ae, d, Ie);
4197
4216
  });
4198
4217
  const fe = {
4199
4218
  playing: d || Re,
@@ -4203,11 +4222,11 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4203
4222
  muted: T,
4204
4223
  wordSync: !1,
4205
4224
  timed: o,
4206
- clipPos: I ? null : w,
4225
+ clipPos: I ? null : v,
4207
4226
  videoAt: (U) => {
4208
4227
  le.current = { t: U, at: Date.now() };
4209
4228
  },
4210
- engaged: d || w != null,
4229
+ engaged: d || v != null,
4211
4230
  has: t.length > 0,
4212
4231
  preparing: D != null || Re,
4213
4232
  silent: d && ie,
@@ -4245,7 +4264,7 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4245
4264
  var U, R, q;
4246
4265
  E(), (U = u.current) == null || U.pause(), M(!1), f(0), _(null), (q = u.current) == null || q.seek(((R = e[0]) == null ? void 0 : R.sentenceId) ?? null);
4247
4266
  },
4248
- seekRow: Be,
4267
+ seekRow: Ve,
4249
4268
  resumeAt: (U) => {
4250
4269
  H(U), t.some((R) => R.sentenceId >= (U.sentenceId ?? 0)) && (H(null), Q.current(U));
4251
4270
  },
@@ -4263,22 +4282,22 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4263
4282
  A.current = Mt, F(Mt), _e(Ge);
4264
4283
  return;
4265
4284
  }
4266
- const Oe = (se == null ? void 0 : se.sentenceId) ?? null, { from: Ne, span: Le } = $(q);
4267
- let Ce = Le > 0 ? Math.max(0, Math.min(1, (R - Ne) / Le)) : 0;
4268
- const He = Oe != null ? (it = je.current) == null ? void 0 : it[String(Oe)] : void 0, $e = He != null && He.length ? He[He.length - 1][1] : 0;
4285
+ const be = (se == null ? void 0 : se.sentenceId) ?? null, { from: Ne, span: Le } = $(q);
4286
+ let Oe = Le > 0 ? Math.max(0, Math.min(1, (R - Ne) / Le)) : 0;
4287
+ const He = be != null ? (it = je.current) == null ? void 0 : it[String(be)] : void 0, $e = He != null && He.length ? He[He.length - 1][1] : 0;
4269
4288
  if (se && He && He.length === se.words.length && $e > 0) {
4270
4289
  let Ge = 0;
4271
4290
  for (let st = 0; st < se.words.length; st++) se.words[st].start <= R && (Ge = st);
4272
4291
  const rt = se.words[Ge], Mt = rt.end > rt.start ? Math.max(0, Math.min(1, (R - rt.start) / (rt.end - rt.start))) : 0;
4273
- Ce = Math.min(1, (He[Ge][0] + Mt * (He[Ge][1] - He[Ge][0])) / $e);
4292
+ Oe = Math.min(1, (He[Ge][0] + Mt * (He[Ge][1] - He[Ge][0])) / $e);
4274
4293
  }
4275
- Oe != null && ((pt = u.current) == null || pt.startWithin(Oe, Ce)), F(Ce > 0.01 ? { t: R, sid: Oe } : null), _e(q);
4294
+ be != null && ((pt = u.current) == null || pt.startWithin(be, Oe)), F(Oe > 0.01 ? { t: R, sid: be } : null), _e(q);
4276
4295
  },
4277
4296
  seekWord: a ? (U) => {
4278
- var de, Oe, Ne, Le;
4297
+ var de, be, Ne, Le;
4279
4298
  const R = e[G];
4280
4299
  if (!R || R.sentenceId == null) return;
4281
- const q = R.words.findIndex((Ce) => Ce.seq === U.seq && Ce.idx === U.idx), se = q >= 0 ? (Ne = (Oe = (de = je.current) == null ? void 0 : de[String(R.sentenceId)]) == null ? void 0 : Oe[q]) == null ? void 0 : Ne[0] : void 0;
4300
+ const q = R.words.findIndex((Oe) => Oe.seq === U.seq && Oe.idx === U.idx), se = q >= 0 ? (Ne = (be = (de = je.current) == null ? void 0 : de[String(R.sentenceId)]) == null ? void 0 : be[q]) == null ? void 0 : Ne[0] : void 0;
4282
4301
  se != null && ((Le = u.current) == null || Le.seekWithin(se));
4283
4302
  } : void 0,
4284
4303
  playRow: (U) => {
@@ -4289,11 +4308,11 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4289
4308
  },
4290
4309
  prev: () => {
4291
4310
  const U = ye(G - 1, -1);
4292
- U != null && Be(U);
4311
+ U != null && Ve(U);
4293
4312
  },
4294
4313
  next: () => {
4295
4314
  const U = ye(G + 1, 1);
4296
- U != null && Be(U);
4315
+ U != null && Ve(U);
4297
4316
  },
4298
4317
  hold: () => {
4299
4318
  var U;
@@ -4309,11 +4328,11 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4309
4328
  }
4310
4329
  };
4311
4330
  function Ye(U) {
4312
- var se, de, Oe, Ne;
4331
+ var se, de, be, Ne;
4313
4332
  const R = (se = e[U]) == null ? void 0 : se.sentenceId;
4314
4333
  if (R == null) return;
4315
4334
  f(U), Ae.current = U, F(null), A.current = null, (de = u.current) == null || de.joinSilently(R);
4316
- const q = ((Oe = u.current) == null ? void 0 : Oe.resting()) ?? null;
4335
+ const q = ((be = u.current) == null ? void 0 : be.resting()) ?? null;
4317
4336
  te((q == null ? void 0 : q.s) ?? null), ne(!!(q != null && q.silent)), M(!!((Ne = u.current) != null && Ne.playing));
4318
4337
  }
4319
4338
  return fe.joinAt = o ? (U) => {
@@ -4331,28 +4350,28 @@ function Jc(t, e, n, r, s, a, o = !1, l) {
4331
4350
  const Xc = () => {
4332
4351
  }, eu = "The language this recording is read aloud in.", tu = { title: "READ IN", note: "The transcript and its voice switch to this language." };
4333
4352
  function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, langs: o, srcLang: l, canTranslate: c, pickedLang: u, setPickedLang: d, side: M, hearOriginal: h = !1, timed: f = !1, stockVoices: p = !1, stickyPicker: y = !1, pickerBusy: T = null, voiceSheet: N, forcedVoice: m = null }) {
4334
- var mn, xt, Nn, an;
4335
- const { onAddVoice: b, onPickVoice: C, onSelectSpeaker: D, noCloneFor: B, castNoClone: Y, castShort: ee, castBuilding: I, castWarn: F, badge: A, titleNode: w } = N ?? {}, _ = !!N, O = !!(N != null && N.pendingClones), [te, K] = $i(), [L, ie] = k(null), [ne, Z] = k(!1), [J, pe] = k(!1), [le, Te] = k(!1), [je, Se] = k(!1), ve = u ?? l, we = u === null, Ee = u != null || L != null, De = ((P) => !!P && !!(o != null && o.voice.includes(P)))(we ? l : ve) ? we ? l : ve : "en", Q = Ec(De), H = (N == null ? void 0 : N.cloneOn) ?? !0, [E, x] = k(0), V = j(H);
4353
+ var mn, wt, Nn, an;
4354
+ const { onAddVoice: b, onPickVoice: C, onSelectSpeaker: D, noCloneFor: V, castNoClone: Y, castShort: ee, castBuilding: I, castWarn: F, badge: A, titleNode: v } = N ?? {}, _ = !!N, O = !!(N != null && N.pendingClones), [te, K] = $i(), [L, ie] = j(null), [ne, Z] = j(!1), [J, pe] = j(!1), [le, Te] = j(!1), [je, Se] = j(!1), we = u ?? l, ve = u === null, Ee = u != null || L != null, De = ((P) => !!P && !!(o != null && o.voice.includes(P)))(ve ? l : we) ? ve ? l : we : "en", Q = Ec(De), H = (N == null ? void 0 : N.cloneOn) ?? !0, [E, x] = j(0), B = z(H);
4336
4355
  S(() => {
4337
- V.current !== H && (V.current = H, x((P) => P + 1));
4356
+ B.current !== H && (B.current = H, x((P) => P + 1));
4338
4357
  }, [H]);
4339
- const ce = gc(De, Ee || s || J, fc(e) * 1e3 + E, { id: t ?? null, shareCode: a.shareCode ?? null }), W = ze(() => ((ce == null ? void 0 : ce.voices) ?? []).filter((P) => _ || !P.cloned || P.speaker != null), [ce, _]), ye = W.length > 1, G = Dr(o, ve), ke = ea(), Ie = ze(() => Qi(o, "translation"), [o]), [Fe, Ae] = k(null), [he] = k(() => /* @__PURE__ */ new Set()), [_e, Be] = k({}), $ = ze(() => cc(n, e, ke.vcUnknownSpk), [n, e, ke]), Me = ye && $.filter((P) => P.key >= 0).length > 1, ue = Fe != null && $.some((P) => P.key === Fe) ? Fe : ((mn = $[0]) == null ? void 0 : mn.key) ?? null, ae = ze(() => {
4358
+ const ce = gc(De, Ee || s || J, fc(e) * 1e3 + E, { id: t ?? null, shareCode: a.shareCode ?? null }), W = ze(() => ((ce == null ? void 0 : ce.voices) ?? []).filter((P) => _ || !P.cloned || P.speaker != null), [ce, _]), ye = W.length > 1, G = Dr(o, we), ke = ea(), Ie = ze(() => Qi(o, "translation"), [o]), [Fe, Ae] = j(null), [he] = j(() => /* @__PURE__ */ new Set()), [_e, Ve] = j({}), $ = ze(() => cc(n, e, ke.vcUnknownSpk), [n, e, ke]), Me = ye && $.filter((P) => P.key >= 0).length > 1, ue = Fe != null && $.some((P) => P.key === Fe) ? Fe : ((mn = $[0]) == null ? void 0 : mn.key) ?? null, ae = ze(() => {
4340
4359
  const P = Ti($, W, H);
4341
4360
  for (const [xe, Qe] of Object.entries(_e[De ?? ""] ?? {})) P.set(Number(xe), Qe);
4342
4361
  return P;
4343
- }, [$, W, _e, De, H]), fe = Me && Object.keys(_e[De ?? ""] ?? {}).length > 0, Ye = ze(() => p && !fe ? Ti($, W, !1) : null, [p, fe, $, W]), U = ze(() => fe ? Ni(ae) || null : Ye && Ni(Ye) || null, [fe, ae, Ye]), R = fe ? ae : Ye, q = W.some((P) => P.cloned && P.consent !== "pending"), se = !!ve && !!(o != null && o.voice.includes(ve)), de = se && !h, Oe = ze(
4362
+ }, [$, W, _e, De, H]), fe = Me && Object.keys(_e[De ?? ""] ?? {}).length > 0, Ye = ze(() => p && !fe ? Ti($, W, !1) : null, [p, fe, $, W]), U = ze(() => fe ? Ni(ae) || null : Ye && Ni(Ye) || null, [fe, ae, Ye]), R = fe ? ae : Ye, q = W.some((P) => P.cloned && P.consent !== "pending"), se = !!we && !!(o != null && o.voice.includes(we)), de = se && !h, be = ze(
4344
4363
  () => n.filter((P) => !P.suppressed && !P.unclear).map((P) => P.sentenceId).filter((P) => P != null),
4345
4364
  [n]
4346
- ), Ne = pc({ recordingId: t, lang: ve, ended: s, cred: a, pickedVoice: m || (U ?? L), sentenceIds: s && de ? Oe : void 0 }), Le = W.find((P) => P.id === L) ?? W.find((P) => {
4365
+ ), Ne = pc({ recordingId: t, lang: we, ended: s, cred: a, pickedVoice: m || (U ?? L), sentenceIds: s && de ? be : void 0 }), Le = W.find((P) => P.id === L) ?? W.find((P) => {
4347
4366
  var xe;
4348
4367
  return P.id === ((xe = Ne.track) == null ? void 0 : xe.voice);
4349
- }) ?? W.find((P) => P.default) ?? W[0] ?? null, Ce = (Le == null ? void 0 : Le.id) ?? null;
4368
+ }) ?? W.find((P) => P.default) ?? W[0] ?? null, Oe = (Le == null ? void 0 : Le.id) ?? null;
4350
4369
  S(() => {
4351
4370
  if (!Ne.rendering) return;
4352
4371
  const P = setInterval(Ne.reload, 4e3);
4353
4372
  return () => clearInterval(P);
4354
4373
  }, [Ne.rendering, Ne.reload]);
4355
- const He = `${t ?? ""}|${ve ?? ""}|${m || (U ?? L ?? ((xt = Ne.track) == null ? void 0 : xt.voiceKey) ?? "default")}`, $e = Jc(Ne.clips, n, r, He, he, (Nn = Ne.track) == null ? void 0 : Nn.wordTimes, f, Ne.coming);
4374
+ const He = `${t ?? ""}|${we ?? ""}|${m || (U ?? L ?? ((wt = Ne.track) == null ? void 0 : wt.voiceKey) ?? "default")}`, $e = Jc(Ne.clips, n, r, He, he, (Nn = Ne.track) == null ? void 0 : Nn.wordTimes, f, Ne.coming);
4356
4375
  S(() => {
4357
4376
  var xe;
4358
4377
  const P = (xe = n[$e.idx]) == null ? void 0 : xe.sentenceId;
@@ -4360,7 +4379,7 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4360
4379
  }, [$e.idx]), S(() => {
4361
4380
  !je || !$e.has || (Se(!1), $e.playing || $e.toggle());
4362
4381
  }, [je, $e.has]);
4363
- const ut = Ne.rendering, it = ut ? null : Ne.failed ?? null, pt = !1, Ge = Ee && de, rt = Ee && !we && de && !(Ne.listed && Ne.listed.lang === ve && Ne.listed.recordingId === t), Mt = {
4382
+ const ut = Ne.rendering, it = ut ? null : Ne.failed ?? null, pt = !1, Ge = Ee && de, rt = Ee && !ve && de && !(Ne.listed && Ne.listed.lang === we && Ne.listed.recordingId === t), Mt = {
4364
4383
  ...$e,
4365
4384
  has: $e.has || Ge && s,
4366
4385
  toggle: () => {
@@ -4373,12 +4392,12 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4373
4392
  pause: () => {
4374
4393
  Se(!1), $e.pause();
4375
4394
  }
4376
- }, st = () => Z(!0), Ve = () => {
4395
+ }, st = () => Z(!0), Be = () => {
4377
4396
  Z(!1), pe(le), Te(!1);
4378
4397
  }, Mn = (P) => {
4379
4398
  if (d(P), K(P), !((M || y) && !le)) {
4380
4399
  if (P != null) {
4381
- Ve();
4400
+ Be();
4382
4401
  return;
4383
4402
  }
4384
4403
  Q.reset(), Z(!1), pe(!1), Te(!1);
@@ -4400,18 +4419,18 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4400
4419
  }
4401
4420
  Z(!1), Te(!1), pe(!0);
4402
4421
  }, gn = (P) => {
4403
- if (Q.reset(), pe(Me), (ve !== De || we) && d(De), Ne.forget(), Se(!0), Me && ue != null && De) {
4422
+ if (Q.reset(), pe(Me), (we !== De || ve) && d(De), Ne.forget(), Se(!0), Me && ue != null && De) {
4404
4423
  const xe = new Map(ae);
4405
- xe.set(ue, P), Be((Qe) => ({ ...Qe, [De]: Object.fromEntries(xe) })), ie(null);
4424
+ xe.set(ue, P), Ve((Qe) => ({ ...Qe, [De]: Object.fromEntries(xe) })), ie(null);
4406
4425
  return;
4407
4426
  }
4408
4427
  ie(P);
4409
- }, z = we ? { ...Dr(o, null), flag: /* @__PURE__ */ i(oe, { d: X.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : G, Wn = c ? M ? /* @__PURE__ */ i("span", { className: "barchip", style: lt ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(Rn, { flag: z.flag, code: z.code, bordered: !1, onClick: tn, flagOnly: !0, label: z.label }) }) : /* @__PURE__ */ i(Rn, { flag: z.flag, code: z.code, bordered: !1, onClick: st, flagOnly: !0, label: z.label }) : null, Et = X.voiceClone, _t = Ee && (!!Ne.track || ut), Yt = it ? "var(--conf-low)" : _t || M && at ? "var(--brand)" : "var(--ink-55)", Ft = Yc({ on: Ee, want: je, relang: rt, playing: $e.playing, preparing: !!$e.preparing, starting: $e.starting }), [fn] = oa(Ft === "line", 400), qe = Ft === "asked" || Ft === "line" && fn, ot = ut || qe, nn = Ft === "asked" ? wi : $e.preparing ? `Speaking this line in ${(Le == null ? void 0 : Le.name) ?? "this voice"}…` : ut ? `Preparing this recording in ${(Le == null ? void 0 : Le.name) ?? "this voice"} — it will play as soon as it is ready` : it ? `This voice could not be prepared: ${it}` : se ? ye ? "Choose a voice" : Le ? Le.name : ke.vcNoVoice + G.label : `${ke.vcNoVoice}${G.label}`, mt = /* @__PURE__ */ i(Io, { open: ne, onClose: Ve, keepOpen: (!!M || y) && !le, value: we ? null : ve, onSelect: Mn, languages: Ie, title: (M == null ? void 0 : M.title) ?? "SPOKEN LANGUAGE", note: (M == null ? void 0 : M.note) ?? eu, searchPlaceholder: ke.search, none: "Original", pinned: (we ? l : ve) ? [we ? l : ve] : [], recent: te, requireVoice: le, sticky: y, busy: T }), gt = ze(() => W.filter((P) => P.cloned && !P.auto), [W]), Zt = (P) => P.voiceId ? gt.find((xe) => xe.id === `clone:${P.voiceId}`) ?? null : null, dt = ze(() => $.filter((P) => P.key >= 0), [$]), rn = ze(() => {
4428
+ }, k = ve ? { ...Dr(o, null), flag: /* @__PURE__ */ i(oe, { d: X.langAuto, size: 21, sw: 1.7, style: { color: "currentColor", display: "block" } }) } : G, Wn = c ? M ? /* @__PURE__ */ i("span", { className: "barchip", style: lt ? { background: "var(--brand-tint)", boxShadow: "0 0 0 1.5px var(--brand)" } : void 0, children: /* @__PURE__ */ i(Rn, { flag: k.flag, code: k.code, bordered: !1, onClick: tn, flagOnly: !0, label: k.label }) }) : /* @__PURE__ */ i(Rn, { flag: k.flag, code: k.code, bordered: !1, onClick: st, flagOnly: !0, label: k.label }) : null, Et = X.voiceClone, _t = Ee && (!!Ne.track || ut), Yt = it ? "var(--conf-low)" : _t || M && at ? "var(--brand)" : "var(--ink-55)", Zt = Yc({ on: Ee, want: je, relang: rt, playing: $e.playing, preparing: !!$e.preparing, starting: $e.starting }), [fn] = oa(Zt === "line", 400), qe = Zt === "asked" || Zt === "line" && fn, ot = ut || qe, nn = Zt === "asked" ? vi : $e.preparing ? `Speaking this line in ${(Le == null ? void 0 : Le.name) ?? "this voice"}…` : ut ? `Preparing this recording in ${(Le == null ? void 0 : Le.name) ?? "this voice"} — it will play as soon as it is ready` : it ? `This voice could not be prepared: ${it}` : se ? ye ? "Choose a voice" : Le ? Le.name : ke.vcNoVoice + G.label : `${ke.vcNoVoice}${G.label}`, mt = /* @__PURE__ */ i(Io, { open: ne, onClose: Be, keepOpen: (!!M || y) && !le, value: ve ? null : we, onSelect: Mn, languages: Ie, title: (M == null ? void 0 : M.title) ?? "SPOKEN LANGUAGE", note: (M == null ? void 0 : M.note) ?? eu, searchPlaceholder: ke.search, none: "Original", pinned: (ve ? l : we) ? [ve ? l : we] : [], recent: te, requireVoice: le, sticky: y, busy: T }), gt = ze(() => W.filter((P) => P.cloned && !P.auto), [W]), Gt = (P) => P.voiceId ? gt.find((xe) => xe.id === `clone:${P.voiceId}`) ?? null : null, dt = ze(() => $.filter((P) => P.key >= 0), [$]), rn = ze(() => {
4410
4429
  const P = W.filter((Qe) => !Qe.cloned);
4411
4430
  if (!Me) return [...P, ...s && dt.length === 1 ? gt.filter((Qe) => Qe.id === `clone:${dt[0].voiceId}`) : []];
4412
4431
  const xe = [];
4413
4432
  for (const Qe of dt) {
4414
- if (Zt(Qe)) continue;
4433
+ if (Gt(Qe)) continue;
4415
4434
  const St = W.find((Pt) => Pt.cloned && Pt.auto && Pt.speaker === Qe.key);
4416
4435
  !St || St.ready === !1 || St.consent === "pending" && !O || xe.push({ id: St.id, name: Qe.name, cloned: !0, default: !1, live: !0, auto: !0, gender: Qe.sex ?? St.gender ?? null, speaker: Qe.key, consent: St.consent ?? null });
4417
4436
  }
@@ -4419,11 +4438,11 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4419
4438
  }, [W, gt, Me, dt, O, s]), ct = Me ? dt.find((P) => P.key === ue) ?? null : null, sn = (P) => {
4420
4439
  var xe;
4421
4440
  return P ? ((xe = W.find((Qe) => Qe.id === P)) == null ? void 0 : xe.gender) ?? null : null;
4422
- }, bt = ct ? ct.sex ?? sn(ae.get(ct.key)) : null, Ze = ze(() => ct ? rn.filter((P) => P.cloned ? P.live ? P.speaker === ct.key : P.id === `clone:${ct.voiceId}` : !0) : rn, [rn, ct, bt, dt]), Ut = (P) => W.find((xe) => xe.cloned && xe.auto && xe.speaker === P) ?? null, wt = { people: dt, gvList: W, autoOf: Ut, savedFor: Zt }, Rt = (A == null ? void 0 : A(wt)) ?? 0, et = F ? dt.map((P) => F(P, wt)).filter((P) => !!P) : [], pn = /* @__PURE__ */ g("button", { type: "button", className: "txvoice", "aria-label": "Voice", "aria-pressed": M ? at : void 0, "aria-busy": ot || void 0, title: ot || it ? nn : void 0, style: { cursor: "pointer", background: _t || ot || M && at ? "var(--brand-tint)" : "var(--fill-06)", boxShadow: M && at ? "inset 0 0 0 1.5px var(--brand)" : void 0 }, onClick: M ? re : At, children: [
4441
+ }, Ot = ct ? ct.sex ?? sn(ae.get(ct.key)) : null, Ze = ze(() => ct ? rn.filter((P) => P.cloned ? P.live ? P.speaker === ct.key : P.id === `clone:${ct.voiceId}` : !0) : rn, [rn, ct, Ot, dt]), Ut = (P) => W.find((xe) => xe.cloned && xe.auto && xe.speaker === P) ?? null, vt = { people: dt, gvList: W, autoOf: Ut, savedFor: Gt }, Rt = (A == null ? void 0 : A(vt)) ?? 0, et = F ? dt.map((P) => F(P, vt)).filter((P) => !!P) : [], pn = /* @__PURE__ */ g("button", { type: "button", className: "txvoice", "aria-label": "Voice", "aria-pressed": M ? at : void 0, "aria-busy": ot || void 0, title: ot || it ? nn : void 0, style: { cursor: "pointer", background: _t || ot || M && at ? "var(--brand-tint)" : "var(--fill-06)", boxShadow: M && at ? "inset 0 0 0 1.5px var(--brand)" : void 0 }, onClick: M ? re : At, children: [
4423
4442
  /* @__PURE__ */ i(oe, { d: Et, size: 17, sw: 1.6, style: { color: Yt } }),
4424
4443
  ot && /* @__PURE__ */ i("span", { "aria-hidden": "true", style: { position: "absolute", inset: 0, boxSizing: "border-box", borderRadius: "50%", border: "2px solid var(--fill-12)", borderTopColor: "var(--brand)", animation: "vs-spin .7s linear infinite", pointerEvents: "none" } }),
4425
4444
  et.length > 0 ? /* @__PURE__ */ i("span", { className: "txvoice__warn", title: et.join(" · "), children: "!" }) : !!Rt && /* @__PURE__ */ i("span", { className: "txvoice__n", title: `${Rt} speaker${Rt === 1 ? "" : "s"} can get a cloned voice`, children: Rt })
4426
- ] }), Ot = /* @__PURE__ */ i(en, { open: J, onClose: Je, title: ke.vcSheet, titleNode: w, doneLabel: ke.done, children: /* @__PURE__ */ i(
4445
+ ] }), Ct = /* @__PURE__ */ i(en, { open: J, onClose: Je, title: ke.vcSheet, titleNode: v, doneLabel: ke.done, children: /* @__PURE__ */ i(
4427
4446
  dc,
4428
4447
  {
4429
4448
  t: ke,
@@ -4436,10 +4455,10 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4436
4455
  onSelect: (P) => {
4437
4456
  Q.reset(), Ae(P), D == null || D(P);
4438
4457
  },
4439
- noClone: (P) => !!(Y != null && Y(P, wt)),
4440
- short: (P) => !!(ee != null && ee(P, wt)),
4441
- warn: (P) => (F == null ? void 0 : F(P, wt)) ?? null,
4442
- building: (P) => !Zt(P) && (W.some((xe) => xe.cloned && xe.speaker === P.key && xe.ready === !1) || !!(I != null && I(P, wt))),
4458
+ noClone: (P) => !!(Y != null && Y(P, vt)),
4459
+ short: (P) => !!(ee != null && ee(P, vt)),
4460
+ warn: (P) => (F == null ? void 0 : F(P, vt)) ?? null,
4461
+ building: (P) => !Gt(P) && (W.some((xe) => xe.cloned && xe.speaker === P.key && xe.ready === !1) || !!(I != null && I(P, vt))),
4443
4462
  sexOf: (P) => P.sex ?? sn(ae.get(P.key))
4444
4463
  }
4445
4464
  ),
@@ -4447,14 +4466,14 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4447
4466
  onAdd: (P) => {
4448
4467
  Q.reset(), b == null || b(P);
4449
4468
  },
4450
- noClone: ct && !Ze.some((P) => P.cloned) ? (B == null ? void 0 : B(ct, Ut(ct.key), wt)) ?? null : null,
4469
+ noClone: ct && !Ze.some((P) => P.cloned) ? (V == null ? void 0 : V(ct, Ut(ct.key), vt)) ?? null : null,
4451
4470
  usedBy: Me && ue != null ? (P) => {
4452
4471
  const xe = $.filter((Qe) => Qe.key !== ue && ae.get(Qe.key) === P.id);
4453
4472
  return xe.length ? xe.map((Qe) => Qe.name).join(", ") : null;
4454
4473
  } : void 0,
4455
4474
  foldKey: ue,
4456
- foldFor: bt,
4457
- currentId: Me && ue != null ? ae.get(ue) ?? null : Ce,
4475
+ foldFor: Ot,
4476
+ currentId: Me && ue != null ? ae.get(ue) ?? null : Oe,
4458
4477
  armedId: Q.armId,
4459
4478
  sampleId: Q.sampleId,
4460
4479
  dlId: Q.dlId,
@@ -4471,12 +4490,12 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4471
4490
  },
4472
4491
  onUse: gn
4473
4492
  }
4474
- ) }), Fn = M ? null : /* @__PURE__ */ g(be, { children: [
4493
+ ) }), Fn = M ? null : /* @__PURE__ */ g(Ce, { children: [
4475
4494
  mt,
4476
- Ot
4477
- ] }), Zn = M && (ne || J) ? /* @__PURE__ */ i("div", { className: "vs-side", children: ne ? mt : Ot }) : null, Ct = Ge ? it ? `This voice could not be prepared: ${it}` : qe && (je || $e.playing) ? wi : null : null, Gn = pt;
4495
+ Ct
4496
+ ] }), Zn = M && (ne || J) ? /* @__PURE__ */ i("div", { className: "vs-side", children: ne ? mt : Ct }) : null, xt = Ge ? it ? `This voice could not be prepared: ${it}` : qe && (je || $e.playing) ? vi : null : null, Gn = pt;
4478
4497
  return {
4479
- barChip: { flag: z.flag, code: z.code, label: z.label, onClick: M || y ? tn : st, active: !!((M || y) && lt), can: c },
4498
+ barChip: { flag: k.flag, code: k.code, label: k.label, onClick: M || y ? tn : st, active: !!((M || y) && lt), can: c },
4480
4499
  sheetsOpen: ne || J,
4481
4500
  on: Ge,
4482
4501
  player: Mt,
@@ -4488,7 +4507,7 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4488
4507
  voicesMine: at,
4489
4508
  toggleVoices: re,
4490
4509
  cloningOn: H,
4491
- playTitle: Ct,
4510
+ playTitle: xt,
4492
4511
  noVoice: pt,
4493
4512
  noVoiceNote: Gn,
4494
4513
  relang: rt,
@@ -4497,20 +4516,20 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4497
4516
  clearError: () => Q.clearError(),
4498
4517
  openVoices: At,
4499
4518
  openPicker: st,
4500
- original: we,
4519
+ original: ve,
4501
4520
  reloadVoices: () => x((P) => P + 1),
4502
4521
  voicesVer: E,
4503
4522
  people: dt,
4504
4523
  gvList: W,
4505
4524
  autoOf: Ut,
4506
- savedFor: Zt,
4525
+ savedFor: Gt,
4507
4526
  closeVoices: Je,
4508
4527
  setSheet: pe,
4509
4528
  selectedSpeaker: ct,
4510
4529
  armVoice: Q.arm,
4511
4530
  resetPreview: Q.reset,
4512
4531
  armedId: Q.armId,
4513
- resetCast: () => Be((P) => ({ ...P, [De ?? ""]: {} })),
4532
+ resetCast: () => Ve((P) => ({ ...P, [De ?? ""]: {} })),
4514
4533
  readLang: typeof u == "string" && u !== l ? u : null,
4515
4534
  readVoiceKey: m || (U ?? L ?? ((an = Ne.track) == null ? void 0 : an.voiceKey) ?? ""),
4516
4535
  pickedVoiceKey: U ?? L ?? null,
@@ -4521,20 +4540,20 @@ function nu({ recordingId: t, model: e, rows: n, lenS: r, ended: s, cred: a, lan
4521
4540
  clips: Ne.clips,
4522
4541
  setNear: Ne.setNear,
4523
4542
  closePicker: () => {
4524
- lt && Ve();
4543
+ lt && Be();
4525
4544
  },
4526
- langList: { value: we ? null : ve, onSelect: Mn, languages: Ie, searchPlaceholder: ke.search, none: "Original", pinned: (we ? l : ve) ? [we ? l : ve] : [], recent: te }
4545
+ langList: { value: ve ? null : we, onSelect: Mn, languages: Ie, searchPlaceholder: ke.search, none: "Original", pinned: (ve ? l : we) ? [ve ? l : we] : [], recent: te }
4527
4546
  };
4528
4547
  }
4529
- function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: u, marks: d = !0, fixBadges: M = !0, tail: h, tailFg: f, running: p, desk: y, feedRef: T, listener: N, showLabels: m, find: b, findOpen: C, lang: D, warm: B, onVisible: Y, wordHl: ee = !0 }) {
4530
- const { playing: I, engaged: F, t: A, idx: w, seekN: _, wordSync: O, clipPos: te } = n;
4548
+ function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a, onWord: o, onFix: l, fixMode: c, fixingId: u, marks: d = !0, fixBadges: M = !0, tail: h, tailFg: f, running: p, desk: y, feedRef: T, listener: N, showLabels: m, find: b, findOpen: C, lang: D, warm: V, onVisible: Y, wordHl: ee = !0 }) {
4549
+ const { playing: I, engaged: F, t: A, idx: v, seekN: _, wordSync: O, clipPos: te } = n;
4531
4550
  jc(!0, T);
4532
- const K = j(null);
4551
+ const K = z(null);
4533
4552
  Xl(T, K);
4534
- const [L, ie] = k(null), ne = (b ?? "").trim().toLowerCase(), [Z, J] = k(0), pe = j(0), le = j(null), Te = j(w), je = (H) => {
4553
+ const [L, ie] = j(null), ne = (b ?? "").trim().toLowerCase(), [Z, J] = j(0), pe = z(0), le = z(null), Te = z(v), je = (H) => {
4535
4554
  var E;
4536
4555
  return ((E = T.current) == null ? void 0 : E.querySelector(`[data-tx-row="${H}"]`)) ?? null;
4537
- }, Se = j("");
4556
+ }, Se = z("");
4538
4557
  S(() => {
4539
4558
  const H = T.current;
4540
4559
  if (!H || !Y) return;
@@ -4547,62 +4566,62 @@ function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
4547
4566
  const G = ye.join(",");
4548
4567
  G !== Se.current && (Se.current = G, Y(ye));
4549
4568
  }, x = window.setTimeout(E, 120);
4550
- let V;
4569
+ let B;
4551
4570
  const ce = () => {
4552
- window.clearTimeout(V), V = window.setTimeout(E, 120);
4571
+ window.clearTimeout(B), B = window.setTimeout(E, 120);
4553
4572
  };
4554
4573
  return H.addEventListener("scroll", ce, { passive: !0 }), () => {
4555
- window.clearTimeout(x), window.clearTimeout(V), H.removeEventListener("scroll", ce);
4574
+ window.clearTimeout(x), window.clearTimeout(B), H.removeEventListener("scroll", ce);
4556
4575
  };
4557
4576
  }, [e, Y, T]);
4558
- const ve = (H) => {
4577
+ const we = (H) => {
4559
4578
  const E = T.current, x = je(H);
4560
4579
  if (!E || !x) return;
4561
- const V = x.getBoundingClientRect().top - E.getBoundingClientRect().top + E.scrollTop, ce = E.scrollHeight - E.clientHeight, W = wr(E), ye = Math.max(80, E.clientHeight - W.top - W.bottom), G = x.offsetHeight > ye ? 8 : (ye - x.offsetHeight) / 2;
4562
- E.scrollTop = Math.max(0, Math.min(ce, V - W.top - G));
4563
- }, we = (H) => {
4580
+ const B = x.getBoundingClientRect().top - E.getBoundingClientRect().top + E.scrollTop, ce = E.scrollHeight - E.clientHeight, W = vr(E), ye = Math.max(80, E.clientHeight - W.top - W.bottom), G = x.offsetHeight > ye ? 8 : (ye - x.offsetHeight) / 2;
4581
+ E.scrollTop = Math.max(0, Math.min(ce, B - W.top - G));
4582
+ }, ve = (H) => {
4564
4583
  const E = T.current, x = je(H);
4565
4584
  if (!E || !E.clientHeight || !E.offsetParent || !x) return 0;
4566
- const V = x.getBoundingClientRect(), ce = E.getBoundingClientRect(), W = wr(E), ye = ce.top + W.top, G = ce.bottom - W.bottom;
4567
- return V.height > G - ye ? V.top < ye - 4 ? -1 : V.top > G - 60 ? 1 : 0 : V.bottom < ye + 10 ? -1 : V.bottom > G - 4 ? 1 : 0;
4585
+ const B = x.getBoundingClientRect(), ce = E.getBoundingClientRect(), W = vr(E), ye = ce.top + W.top, G = ce.bottom - W.bottom;
4586
+ return B.height > G - ye ? B.top < ye - 4 ? -1 : B.top > G - 60 ? 1 : 0 : B.bottom < ye + 10 ? -1 : B.bottom > G - 4 ? 1 : 0;
4568
4587
  }, Ee = (H) => {
4569
4588
  pe.current = performance.now() + 420;
4570
4589
  const E = T.current, x = je(H);
4571
4590
  if (!E || !E.clientHeight || !x) return;
4572
- const V = x.getBoundingClientRect(), ce = E.getBoundingClientRect(), W = E.scrollHeight - E.clientHeight, ye = E.scrollTop, G = wr(E), ke = Math.max(80, E.clientHeight - G.top - G.bottom), Ie = V.height > ke ? 8 : (ke - V.height) / 2, Fe = Math.max(0, Math.min(W, ye + (V.top - ce.top) - G.top - Ie));
4591
+ const B = x.getBoundingClientRect(), ce = E.getBoundingClientRect(), W = E.scrollHeight - E.clientHeight, ye = E.scrollTop, G = vr(E), ke = Math.max(80, E.clientHeight - G.top - G.bottom), Ie = B.height > ke ? 8 : (ke - B.height) / 2, Fe = Math.max(0, Math.min(W, ye + (B.top - ce.top) - G.top - Ie));
4573
4592
  if (le.current && cancelAnimationFrame(le.current), Math.abs(Fe - ye) < 2) {
4574
4593
  E.scrollTop = Fe, le.current = null;
4575
4594
  return;
4576
4595
  }
4577
4596
  const Ae = performance.now(), he = 360, _e = () => {
4578
- const Be = Math.min(1, (performance.now() - Ae) / he);
4579
- E.scrollTop = ye + (Fe - ye) * (1 - Math.pow(1 - Be, 3)), le.current = Be < 1 ? requestAnimationFrame(_e) : null;
4597
+ const Ve = Math.min(1, (performance.now() - Ae) / he);
4598
+ E.scrollTop = ye + (Fe - ye) * (1 - Math.pow(1 - Ve, 3)), le.current = Ve < 1 ? requestAnimationFrame(_e) : null;
4580
4599
  };
4581
4600
  le.current = requestAnimationFrame(_e);
4582
4601
  };
4583
4602
  S(() => () => {
4584
4603
  le.current && cancelAnimationFrame(le.current);
4585
4604
  }, []);
4586
- const Re = j(0);
4605
+ const Re = z(0);
4587
4606
  S(() => {
4588
4607
  if (!I) {
4589
- Te.current = w, Re.current = 0, J(0);
4608
+ Te.current = v, Re.current = 0, J(0);
4590
4609
  return;
4591
4610
  }
4592
4611
  const H = () => {
4593
- const x = w !== Te.current;
4594
- Te.current = w;
4595
- let V = performance.now() < pe.current ? 0 : we(w);
4596
- x && V && !Re.current && (ve(w), V = 0), Re.current = V, J(V);
4612
+ const x = v !== Te.current;
4613
+ Te.current = v;
4614
+ let B = performance.now() < pe.current ? 0 : ve(v);
4615
+ x && B && !Re.current && (we(v), B = 0), Re.current = B, J(B);
4597
4616
  };
4598
4617
  H();
4599
4618
  const E = setInterval(H, 200);
4600
4619
  return () => clearInterval(E);
4601
- }, [w, I]), S(() => {
4602
- _ && Ee(w);
4620
+ }, [v, I]), S(() => {
4621
+ _ && Ee(v);
4603
4622
  }, [_]);
4604
4623
  const De = () => {
4605
- Ee(w), Re.current = 0, J(0);
4624
+ Ee(v), Re.current = 0, J(0);
4606
4625
  }, Q = (H) => /* @__PURE__ */ i("div", { className: `txfollow txfollow--${H}`, children: /* @__PURE__ */ g("button", { type: "button", className: "txfollow__pill", title: "Jump to the line playing now", onClick: De, children: [
4607
4626
  /* @__PURE__ */ i(oe, { d: H === "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 }),
4608
4627
  "Now playing"
@@ -4612,13 +4631,13 @@ function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
4612
4631
  I && Z === -1 && Q("up"),
4613
4632
  e.map((H, E) => {
4614
4633
  var Me;
4615
- const x = I && E === w, V = F && E === w, ce = !!u && u === H.id, W = ne && !H.text.toLowerCase().includes(ne) && !(D && ((Me = H.translations[D]) != null && Me.toLowerCase().includes(ne))) ? 0.22 : !F || E <= w || ce ? 1 : 0.38, ye = N ? () => n.playRow(E) : c && l ? () => {
4634
+ const x = I && E === v, B = F && E === v, ce = !!u && u === H.id, W = ne && !H.text.toLowerCase().includes(ne) && !(D && ((Me = H.translations[D]) != null && Me.toLowerCase().includes(ne))) ? 0.22 : !F || E <= v || ce ? 1 : 0.38, ye = N ? () => n.playRow(E) : c && l ? () => {
4616
4635
  I && !x && n.seekRow(E), l(H);
4617
- } : I && x ? void 0 : () => n.playRow(E), G = N ? null : rc(H, s, r), ke = !!G && (G.script > 0 || G.manual), Ie = y && !!a && L === H.id && !!G && !ke, Fe = $r(t, H.speaker), Ae = Qr(t, H.speaker), he = Ae.lane, _e = D && H.translations[D] && H.language !== D ? H.translations[D] : null, Be = la(e, E, D), $ = V && !O && te ? Ri(Be.map((ue) => ({ t: ue.text, sp: " " })), te) : null;
4618
- return /* @__PURE__ */ g("div", { "data-tx-row": E, "data-sentence": H.sentenceId, className: `txline${B ? " txline--warm" : ""}${ce ? " txline--fixing" : ""}`, "aria-current": ce || void 0, style: { opacity: W }, onClick: ye, onMouseEnter: y && a ? () => ie(H.id) : void 0, onMouseLeave: y && a ? () => ie(null) : void 0, children: [
4636
+ } : I && x ? void 0 : () => n.playRow(E), G = N ? null : rc(H, s, r), ke = !!G && (G.script > 0 || G.manual), Ie = y && !!a && L === H.id && !!G && !ke, Fe = $r(t, H.speaker), Ae = Qr(t, H.speaker), he = Ae.lane, _e = D && H.translations[D] && H.language !== D ? H.translations[D] : null, Ve = la(e, E, D), $ = B && !O && te ? Ri(Ve.map((ue) => ({ t: ue.text, sp: " " })), te) : null;
4637
+ return /* @__PURE__ */ g("div", { "data-tx-row": E, "data-sentence": H.sentenceId, className: `txline${V ? " txline--warm" : ""}${ce ? " txline--fixing" : ""}`, "aria-current": ce || void 0, style: { opacity: W }, onClick: ye, onMouseEnter: y && a ? () => ie(H.id) : void 0, onMouseLeave: y && a ? () => ie(null) : void 0, children: [
4619
4638
  /* @__PURE__ */ g("div", { className: "txline__meta", children: [
4620
- /* @__PURE__ */ i("span", { className: "txline__at", children: jt(H.start) }),
4621
- m && H.speaker >= 0 && /* @__PURE__ */ g(be, { children: [
4639
+ /* @__PURE__ */ i("span", { className: "txline__at", children: zt(H.start) }),
4640
+ m && H.speaker >= 0 && /* @__PURE__ */ g(Ce, { children: [
4622
4641
  /* @__PURE__ */ i("div", { className: `lanechip bg-lane-${he}`, style: Ae.soft ? { background: Ae.soft, color: Ae.fg } : void 0, children: Zi(t, H.speaker) }),
4623
4642
  /* @__PURE__ */ i("span", { className: `txline__who lane-${he}`, style: Ae.fg ? { color: Ae.fg } : void 0, children: Fe }),
4624
4643
  Ae.hasVoice && /* @__PURE__ */ i(sa, { color: Ae.fg ?? `var(--lane-${he})` })
@@ -4627,8 +4646,8 @@ function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
4627
4646
  G && M && /* @__PURE__ */ i(sc, { f: G, desk: y, onOpen: a ? () => a(H, !0) : void 0 }),
4628
4647
  Ie && /* @__PURE__ */ i(ic, { alone: !0, onOpen: () => a == null ? void 0 : a(H, !1) })
4629
4648
  ] }),
4630
- /* @__PURE__ */ i("div", { className: "txline__text", children: Be.map((ue, ae) => {
4631
- const fe = `${ue.seq}:${ue.idx}`, Ye = kl(ue.prob), U = V && ee, R = U && (O ? A >= ue.start && (A < ue.end || ae === Be.length - 1 || A < Be[ae + 1].start) : ae === $), q = U && !R && (O ? ue.start > A : $ != null && ae > $), se = !_e && !N && (!!(r != null && r.has(fe)) || !!ue.script), de = !_e && !N && d && !!Ye && !se, Oe = de ? Ye === "low" ? "var(--conf-low-half)" : "var(--conf-mid-half)" : null, Ne = se ? "var(--brand)" : q ? "var(--ink-40)" : Oe ?? "var(--ink-96)";
4649
+ /* @__PURE__ */ i("div", { className: "txline__text", children: Ve.map((ue, ae) => {
4650
+ const fe = `${ue.seq}:${ue.idx}`, Ye = kl(ue.prob), U = B && ee, R = U && (O ? A >= ue.start && (A < ue.end || ae === Ve.length - 1 || A < Ve[ae + 1].start) : ae === $), q = U && !R && (O ? ue.start > A : $ != null && ae > $), se = !_e && !N && (!!(r != null && r.has(fe)) || !!ue.script), de = !_e && !N && d && !!Ye && !se, be = de ? Ye === "low" ? "var(--conf-low-half)" : "var(--conf-mid-half)" : null, Ne = se ? "var(--brand)" : q ? "var(--ink-40)" : be ?? "var(--ink-96)";
4632
4651
  return /* @__PURE__ */ g("span", { children: [
4633
4652
  /* @__PURE__ */ i(
4634
4653
  "span",
@@ -4636,18 +4655,18 @@ function ru({ model: t, rows: e, player: n, fixed: r, applied: s, onFixOpen: a,
4636
4655
  className: "txw",
4637
4656
  title: o && !_e ? c ? "Correct this word" : x && I && n.seekWord ? "Play from this word" : "Play from this line" : x ? "" : "Play from this line",
4638
4657
  onClick: o && !_e ? (Le) => {
4639
- var Ce;
4658
+ var Oe;
4640
4659
  if (Le.stopPropagation(), c) {
4641
4660
  o(H, ue);
4642
4661
  return;
4643
4662
  }
4644
4663
  if (I && x) {
4645
- (Ce = n.seekWord) == null || Ce.call(n, ue);
4664
+ (Oe = n.seekWord) == null || Oe.call(n, ue);
4646
4665
  return;
4647
4666
  }
4648
4667
  n.playRow(E);
4649
4668
  } : void 0,
4650
- style: { color: Ne, opacity: q ? 0.45 : 1, fontWeight: 300, cursor: o && !_e ? c || !x || !I || n.seekWord ? "pointer" : "default" : x ? "default" : "pointer", textShadow: R ? "0 0 2px currentColor, 0 0 4px currentColor" : "none", textDecorationLine: de || se ? "underline" : "none", textDecorationStyle: se ? "solid" : "dotted", textDecorationColor: se ? "var(--brand)" : Oe ?? "currentColor", textDecorationThickness: de || se ? "1.5px" : void 0, textUnderlineOffset: de || se ? "3px" : void 0 },
4669
+ style: { color: Ne, opacity: q ? 0.45 : 1, fontWeight: 300, cursor: o && !_e ? c || !x || !I || n.seekWord ? "pointer" : "default" : x ? "default" : "pointer", textShadow: R ? "0 0 2px currentColor, 0 0 4px currentColor" : "none", textDecorationLine: de || se ? "underline" : "none", textDecorationStyle: se ? "solid" : "dotted", textDecorationColor: se ? "var(--brand)" : be ?? "currentColor", textDecorationThickness: de || se ? "1.5px" : void 0, textUnderlineOffset: de || se ? "3px" : void 0 },
4651
4670
  children: ue.text
4652
4671
  }
4653
4672
  ),
@@ -4679,11 +4698,11 @@ function su({ open: t, q: e, onQ: n, onClose: r, hits: s, desk: a, inline: o, fl
4679
4698
  ] }) });
4680
4699
  }
4681
4700
  function iu(t, e, n, r, s) {
4682
- const a = j(n);
4701
+ const a = z(n);
4683
4702
  a.current = n;
4684
- const o = j(r);
4703
+ const o = z(r);
4685
4704
  o.current = r;
4686
- const [l, c] = k(0), u = r.trim().toLowerCase();
4705
+ const [l, c] = j(0), u = r.trim().toLowerCase();
4687
4706
  return S(() => {
4688
4707
  c(u ? e.filter((d) => d.text.toLowerCase().includes(u)).length : 0);
4689
4708
  }, [e, u]), S(() => {
@@ -4755,44 +4774,44 @@ function cu(t) {
4755
4774
  for (; n <= 40 && !(4 + (n <= 9 ? 8 : 16) + e.length * 8 <= Li(n) * 8); n++)
4756
4775
  ;
4757
4776
  if (n > 40) throw new Error("Text too long for a QR code");
4758
- const r = n * 4 + 17, s = Li(n) * 8, a = [], o = (w, _) => {
4759
- for (let O = _ - 1; O >= 0; O--) a.push(w >>> O & 1);
4777
+ const r = n * 4 + 17, s = Li(n) * 8, a = [], o = (v, _) => {
4778
+ for (let O = _ - 1; O >= 0; O--) a.push(v >>> O & 1);
4760
4779
  };
4761
4780
  o(4, 4), o(e.length, n <= 9 ? 8 : 16);
4762
- for (const w of e) o(w, 8);
4781
+ for (const v of e) o(v, 8);
4763
4782
  for (o(0, Math.min(4, s - a.length)); a.length % 8; ) a.push(0);
4764
- for (let w = 236; a.length < s; w ^= 253) o(w, 8);
4783
+ for (let v = 236; a.length < s; v ^= 253) o(v, 8);
4765
4784
  const l = [];
4766
- for (let w = 0; w < a.length; w += 8) l.push(a.slice(w, w + 8).reduce((_, O) => _ << 1 | O, 0));
4785
+ for (let v = 0; v < a.length; v += 8) l.push(a.slice(v, v + 8).reduce((_, O) => _ << 1 | O, 0));
4767
4786
  const c = hn.blocks[n], u = hn.perBlock[n], d = Math.floor(ca(n) / 8), M = c - d % c, h = Math.floor(d / c), f = [], p = au(u);
4768
- for (let w = 0, _ = 0; w < c; w++) {
4769
- const O = l.slice(_, _ + h - u + (w < M ? 0 : 1));
4787
+ for (let v = 0, _ = 0; v < c; v++) {
4788
+ const O = l.slice(_, _ + h - u + (v < M ? 0 : 1));
4770
4789
  _ += O.length;
4771
4790
  const te = ou(O, p);
4772
- w < M && O.push(0), f.push(O.concat(te));
4791
+ v < M && O.push(0), f.push(O.concat(te));
4773
4792
  }
4774
4793
  const y = [];
4775
- for (let w = 0; w < f[0].length; w++) f.forEach((_, O) => {
4776
- (w !== h - u || O >= M) && y.push(_[w]);
4794
+ for (let v = 0; v < f[0].length; v++) f.forEach((_, O) => {
4795
+ (v !== h - u || O >= M) && y.push(_[v]);
4777
4796
  });
4778
- const T = Array.from({ length: r }, () => new Array(r).fill(!1)), N = Array.from({ length: r }, () => new Array(r).fill(!1)), m = (w, _, O) => {
4779
- T[_][w] = O, N[_][w] = !0;
4797
+ const T = Array.from({ length: r }, () => new Array(r).fill(!1)), N = Array.from({ length: r }, () => new Array(r).fill(!1)), m = (v, _, O) => {
4798
+ T[_][v] = O, N[_][v] = !0;
4780
4799
  };
4781
- for (let w = 0; w < r; w++)
4782
- m(6, w, w % 2 === 0), m(w, 6, w % 2 === 0);
4783
- const b = (w, _) => {
4800
+ for (let v = 0; v < r; v++)
4801
+ m(6, v, v % 2 === 0), m(v, 6, v % 2 === 0);
4802
+ const b = (v, _) => {
4784
4803
  for (let O = -4; O <= 4; O++) for (let te = -4; te <= 4; te++) {
4785
- const K = Math.max(Math.abs(te), Math.abs(O)), L = w + te, ie = _ + O;
4804
+ const K = Math.max(Math.abs(te), Math.abs(O)), L = v + te, ie = _ + O;
4786
4805
  L >= 0 && L < r && ie >= 0 && ie < r && m(L, ie, K !== 2 && K !== 4);
4787
4806
  }
4788
4807
  };
4789
4808
  b(3, 3), b(r - 4, 3), b(3, r - 4);
4790
4809
  const C = lu(n);
4791
- for (let w = 0; w < C.length; w++) for (let _ = 0; _ < C.length; _++)
4792
- if (!(w === 0 && _ === 0 || w === 0 && _ === C.length - 1 || w === C.length - 1 && _ === 0))
4793
- for (let O = -2; O <= 2; O++) for (let te = -2; te <= 2; te++) m(C[w] + te, C[_] + O, Math.max(Math.abs(te), Math.abs(O)) !== 1);
4794
- const D = (w) => {
4795
- const _ = hn.formatBits << 3 | w;
4810
+ for (let v = 0; v < C.length; v++) for (let _ = 0; _ < C.length; _++)
4811
+ if (!(v === 0 && _ === 0 || v === 0 && _ === C.length - 1 || v === C.length - 1 && _ === 0))
4812
+ for (let O = -2; O <= 2; O++) for (let te = -2; te <= 2; te++) m(C[v] + te, C[_] + O, Math.max(Math.abs(te), Math.abs(O)) !== 1);
4813
+ const D = (v) => {
4814
+ const _ = hn.formatBits << 3 | v;
4796
4815
  let O = _;
4797
4816
  for (let L = 0; L < 10; L++) O = O << 1 ^ (O >>> 9) * 1335;
4798
4817
  const te = (_ << 10 | O) ^ 21522, K = (L) => (te >>> L & 1) !== 0;
@@ -4804,24 +4823,24 @@ function cu(t) {
4804
4823
  m(8, r - 8, !0);
4805
4824
  };
4806
4825
  if (D(0), n >= 7) {
4807
- let w = n;
4808
- for (let O = 0; O < 12; O++) w = w << 1 ^ (w >>> 11) * 7973;
4809
- const _ = n << 12 | w;
4826
+ let v = n;
4827
+ for (let O = 0; O < 12; O++) v = v << 1 ^ (v >>> 11) * 7973;
4828
+ const _ = n << 12 | v;
4810
4829
  for (let O = 0; O < 18; O++) {
4811
4830
  const te = (_ >>> O & 1) !== 0, K = r - 11 + O % 3, L = Math.floor(O / 3);
4812
4831
  m(K, L, te), m(L, K, te);
4813
4832
  }
4814
4833
  }
4815
- let B = 0;
4816
- for (let w = r - 1; w >= 1; w -= 2) {
4817
- w === 6 && (w = 5);
4834
+ let V = 0;
4835
+ for (let v = r - 1; v >= 1; v -= 2) {
4836
+ v === 6 && (v = 5);
4818
4837
  for (let _ = 0; _ < r; _++) for (let O = 0; O < 2; O++) {
4819
- const te = w - O, K = w + 1 & 2 ? _ : r - 1 - _;
4820
- !N[K][te] && B < y.length * 8 && (T[K][te] = (y[B >>> 3] >>> 7 - (B & 7) & 1) !== 0, B++);
4838
+ const te = v - O, K = v + 1 & 2 ? _ : r - 1 - _;
4839
+ !N[K][te] && V < y.length * 8 && (T[K][te] = (y[V >>> 3] >>> 7 - (V & 7) & 1) !== 0, V++);
4821
4840
  }
4822
4841
  }
4823
- const Y = (w, _, O) => {
4824
- switch (w) {
4842
+ const Y = (v, _, O) => {
4843
+ switch (v) {
4825
4844
  case 0:
4826
4845
  return (_ + O) % 2 === 0;
4827
4846
  case 1:
@@ -4839,10 +4858,10 @@ function cu(t) {
4839
4858
  default:
4840
4859
  return ((_ + O) % 2 + _ * O % 3) % 2 === 0;
4841
4860
  }
4842
- }, ee = (w) => {
4843
- for (let _ = 0; _ < r; _++) for (let O = 0; O < r; O++) !N[_][O] && Y(w, O, _) && (T[_][O] = !T[_][O]);
4861
+ }, ee = (v) => {
4862
+ for (let _ = 0; _ < r; _++) for (let O = 0; O < r; O++) !N[_][O] && Y(v, O, _) && (T[_][O] = !T[_][O]);
4844
4863
  }, I = () => {
4845
- let w = 0;
4864
+ let v = 0;
4846
4865
  const _ = (ne) => {
4847
4866
  const Z = ne[1], J = Z > 0 && ne[2] === Z && ne[3] === Z * 3 && ne[4] === Z && ne[5] === Z;
4848
4867
  return (J && ne[0] >= Z * 4 && ne[6] >= Z ? 1 : 0) + (J && ne[6] >= Z * 4 && ne[0] >= Z ? 1 : 0);
@@ -4852,25 +4871,25 @@ function cu(t) {
4852
4871
  let Z = !1, J = 0;
4853
4872
  const pe = [0, 0, 0, 0, 0, 0, 0];
4854
4873
  for (let le = 0; le < r; le++)
4855
- ne(le) === Z ? (J++, J === 5 ? w += 3 : J > 5 && w++) : (O(pe, J), Z || (w += _(pe) * 40), Z = ne(le), J = 1);
4856
- w += te(pe, Z, J) * 40;
4874
+ ne(le) === Z ? (J++, J === 5 ? v += 3 : J > 5 && v++) : (O(pe, J), Z || (v += _(pe) * 40), Z = ne(le), J = 1);
4875
+ v += te(pe, Z, J) * 40;
4857
4876
  };
4858
4877
  for (let ne = 0; ne < r; ne++) K((Z) => T[ne][Z]);
4859
4878
  for (let ne = 0; ne < r; ne++) K((Z) => T[Z][ne]);
4860
4879
  for (let ne = 0; ne < r - 1; ne++) for (let Z = 0; Z < r - 1; Z++) {
4861
4880
  const J = T[ne][Z];
4862
- J === T[ne][Z + 1] && J === T[ne + 1][Z] && J === T[ne + 1][Z + 1] && (w += 3);
4881
+ J === T[ne][Z + 1] && J === T[ne + 1][Z] && J === T[ne + 1][Z + 1] && (v += 3);
4863
4882
  }
4864
4883
  let L = 0;
4865
4884
  for (const ne of T) for (const Z of ne) Z && L++;
4866
4885
  const ie = r * r;
4867
- return w += (Math.ceil(Math.abs(L * 20 - ie * 10) / ie) - 1) * 10, w;
4886
+ return v += (Math.ceil(Math.abs(L * 20 - ie * 10) / ie) - 1) * 10, v;
4868
4887
  };
4869
4888
  let F = 0, A = 1 / 0;
4870
- for (let w = 0; w < 8; w++) {
4871
- ee(w), D(w);
4889
+ for (let v = 0; v < 8; v++) {
4890
+ ee(v), D(v);
4872
4891
  const _ = I();
4873
- _ < A && (A = _, F = w), ee(w);
4892
+ _ < A && (A = _, F = v), ee(v);
4874
4893
  }
4875
4894
  return ee(F), D(F), T;
4876
4895
  }
@@ -4882,7 +4901,7 @@ function uu(t) {
4882
4901
  return `data:image/svg+xml,${encodeURIComponent(a)}`;
4883
4902
  }
4884
4903
  const ua = "M3.75 3.75v4.5m0-4.5h4.5m-4.5 0L9 9M3.75 20.25v-4.5m0 4.5h4.5m-4.5 0L9 15M20.25 3.75h-4.5m4.5 0v4.5m0-4.5L15 9m5.25 11.25h-4.5m4.5 0v-4.5m0 4.5L15 15", du = "M9 9V4.5M9 9H4.5M9 9 3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5 5.25 5.25";
4885
- function vr() {
4904
+ function wr() {
4886
4905
  const t = document;
4887
4906
  return t.fullscreenElement ?? t.webkitFullscreenElement ?? null;
4888
4907
  }
@@ -4916,7 +4935,7 @@ function _n(t) {
4916
4935
  }
4917
4936
  }
4918
4937
  function Mu(t) {
4919
- const [e, n] = k(() => {
4938
+ const [e, n] = j(() => {
4920
4939
  var r;
4921
4940
  return typeof window < "u" && !!((r = window.matchMedia) != null && r.call(window, t).matches);
4922
4941
  });
@@ -4929,7 +4948,7 @@ function Mu(t) {
4929
4948
  }, [t]), e;
4930
4949
  }
4931
4950
  function Yn({ pos: t, interactive: e, axis: n = "x" }) {
4932
- const [r, s] = k(null), a = (c) => {
4951
+ const [r, s] = j(null), a = (c) => {
4933
4952
  const u = c.currentTarget.getBoundingClientRect(), d = n === "y" ? (c.clientY - u.top) / Math.max(1, u.height) : (c.clientX - u.left) / Math.max(1, u.width);
4934
4953
  return Math.min(1, Math.max(0, d));
4935
4954
  }, o = (c) => {
@@ -4937,7 +4956,7 @@ function Yn({ pos: t, interactive: e, axis: n = "x" }) {
4937
4956
  const u = a(c);
4938
4957
  s(null), t.onSeek(u);
4939
4958
  }, l = r != null ? r * 100 : t.pct;
4940
- return /* @__PURE__ */ g(be, { children: [
4959
+ return /* @__PURE__ */ g(Ce, { children: [
4941
4960
  /* @__PURE__ */ i("span", { className: `gfull__t${e ? " gfull__t--at" : ""}`, children: r != null ? t.labelAt(r) : t.atLabel }),
4942
4961
  /* @__PURE__ */ i(
4943
4962
  "div",
@@ -4968,7 +4987,7 @@ function Yn({ pos: t, interactive: e, axis: n = "x" }) {
4968
4987
  ] });
4969
4988
  }
4970
4989
  function td({ pos: t }) {
4971
- const [e, n] = k(null), r = (l) => {
4990
+ const [e, n] = j(null), r = (l) => {
4972
4991
  const c = l.currentTarget.getBoundingClientRect();
4973
4992
  return Math.min(1, Math.max(0, (l.clientX - c.left) / Math.max(1, c.width)));
4974
4993
  }, s = (l) => {
@@ -5021,7 +5040,7 @@ function Un({ t, mini: e }) {
5021
5040
  disabled: !t.playable,
5022
5041
  style: { background: t.playable ? t.playing ? "rgba(238,240,248,.92)" : "var(--brand)" : "rgba(5,6,21,.42)", color: t.playable ? t.playing ? "#131326" : "var(--brand-ink)" : "rgba(234,236,250,.5)", cursor: t.playable ? "pointer" : "default" },
5023
5042
  onClick: t.onPlay,
5024
- children: t.busy ? /* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }) : t.playing ? /* @__PURE__ */ i(ao, { size: e ? 14 : 18 }) : /* @__PURE__ */ i(Xt, { size: e ? 15 : 19 })
5043
+ children: t.busy ? /* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }) : t.playing ? /* @__PURE__ */ i(ao, { size: e ? 14 : 18 }) : /* @__PURE__ */ i(Wt, { size: e ? 15 : 19 })
5025
5044
  }
5026
5045
  ),
5027
5046
  /* @__PURE__ */ i("button", { type: "button", className: "gfull__step", "aria-label": "Next line", title: "Next line", style: { opacity: t.nextOn ? 1 : 0.3 }, onClick: t.onNext, children: /* @__PURE__ */ i(oe, { d: X.chevronRight, size: e ? 13 : 16, sw: e ? 1.8 : 1.9 }) })
@@ -5029,7 +5048,7 @@ function Un({ t, mini: e }) {
5029
5048
  }
5030
5049
  function _r({ live: t, mini: e, desk: n, pct: r, mark: s }) {
5031
5050
  return /* @__PURE__ */ g("div", { className: `gfull__brand${s ? " gfull__brand--mark" : ""}`, children: [
5032
- /* @__PURE__ */ i("a", { href: Si, target: "_blank", rel: "noopener", style: { display: "block", lineHeight: 0 }, "aria-label": "VocalStack", title: "VocalStack", children: s ? /* @__PURE__ */ i(Yr, { dark: !0, size: 22 }) : /* @__PURE__ */ i(Vn, { dark: !0, link: !1, height: e ? 11 : n ? 18 : 15 }) }),
5051
+ /* @__PURE__ */ i("a", { href: Si, target: "_blank", rel: "noopener", style: { display: "block", lineHeight: 0 }, "aria-label": "VocalStack", title: "VocalStack", children: s ? /* @__PURE__ */ i(Yr, { dark: !0, size: 22 }) : /* @__PURE__ */ i(Bn, { dark: !0, link: !1, height: e ? 11 : n ? 18 : 15 }) }),
5033
5052
  t && /* @__PURE__ */ g("span", { className: "gfull__live", children: [
5034
5053
  /* @__PURE__ */ i("i", {}),
5035
5054
  "LIVE"
@@ -5064,19 +5083,19 @@ function gu({ pos: t, transport: e, chip: n, voices: r, onShare: s, onFull: a, c
5064
5083
  ] });
5065
5084
  }
5066
5085
  const fu = { color: "rgba(255,255,255,.4)" };
5067
- function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title: s, desk: a, pos: o, sub: l, wait: c, pct: u, mute: d, cc: M, ad: h, chip: f, transport: p, picker: y, sheet: T, voices: N, voicesBtn: m, sheetOpen: b, onShare: C, onSettings: D, paused: B, copied: Y, onTouch: ee, onClose: I }) {
5068
- const [F, A] = k(() => !!vr());
5086
+ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title: s, desk: a, pos: o, sub: l, wait: c, pct: u, mute: d, cc: M, ad: h, chip: f, transport: p, picker: y, sheet: T, voices: N, voicesBtn: m, sheetOpen: b, onShare: C, onSettings: D, paused: V, copied: Y, onTouch: ee, onClose: I }) {
5087
+ const [F, A] = j(() => !!wr());
5069
5088
  S(() => {
5070
- const $ = () => A(!!vr());
5089
+ const $ = () => A(!!wr());
5071
5090
  return document.addEventListener("fullscreenchange", $), document.addEventListener("webkitfullscreenchange", $), () => {
5072
5091
  document.removeEventListener("fullscreenchange", $), document.removeEventListener("webkitfullscreenchange", $);
5073
5092
  };
5074
5093
  }, []);
5075
- const w = j(I);
5076
- w.current = I;
5077
- const _ = j(p.playable ? p.onPlay : void 0);
5094
+ const v = z(I);
5095
+ v.current = I;
5096
+ const _ = z(p.playable ? p.onPlay : void 0);
5078
5097
  _.current = p.playable ? p.onPlay : void 0;
5079
- const [O, te] = k(!1), [K, L] = k(0), ie = j(!1);
5098
+ const [O, te] = j(!1), [K, L] = j(0), ie = z(!1);
5080
5099
  S(() => () => _n(!1), []), S(() => {
5081
5100
  if (!n) return;
5082
5101
  const $ = [document.documentElement, document.body], Me = $.map((fe) => fe.style.background);
@@ -5090,7 +5109,7 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5090
5109
  }), ue && ae && (ue.content = ae);
5091
5110
  };
5092
5111
  }, []);
5093
- const ne = ze(() => n && hu(), [n]), [Z, J] = k(ne);
5112
+ const ne = ze(() => n && hu(), [n]), [Z, J] = j(ne);
5094
5113
  S(() => {
5095
5114
  if (!n) return;
5096
5115
  const $ = [document.documentElement, document.body], Me = $.map((fe) => [fe.style.overflow, fe.style.overscrollBehavior]);
@@ -5109,11 +5128,11 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5109
5128
  window.removeEventListener("scroll", ae), ue.remove(), document.documentElement.style.overscrollBehavior = Me[0][1], window.scrollTo(0, 0);
5110
5129
  };
5111
5130
  }, [ne, n]);
5112
- const pe = j(b);
5131
+ const pe = z(b);
5113
5132
  pe.current = b, S(() => {
5114
5133
  const $ = (ae) => ae instanceof HTMLElement && (ae.isContentEditable || /^(INPUT|TEXTAREA|SELECT)$/.test(ae.tagName)), Me = (ae) => {
5115
5134
  var fe;
5116
- ae.key === "Escape" && !pe.current && w.current && (ae.stopPropagation(), w.current()), ae.key === " " && !pe.current && !$(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (fe = _.current) == null || fe.call(_)), (ae.key === "f" || ae.key === "F") && !ae.metaKey && !ae.ctrlKey && !ae.altKey && !pe.current && !$(ae.target) && ji() && (ae.preventDefault(), ae.repeat || _n(!vr()));
5135
+ ae.key === "Escape" && !pe.current && v.current && (ae.stopPropagation(), v.current()), ae.key === " " && !pe.current && !$(ae.target) && (ae.preventDefault(), ae.stopPropagation(), ae.repeat || (fe = _.current) == null || fe.call(_)), (ae.key === "f" || ae.key === "F") && !ae.metaKey && !ae.ctrlKey && !ae.altKey && !pe.current && !$(ae.target) && ji() && (ae.preventDefault(), ae.repeat || _n(!wr()));
5117
5136
  }, ue = (ae) => {
5118
5137
  ae.key === " " && !pe.current && !$(ae.target) && ae.preventDefault();
5119
5138
  };
@@ -5121,27 +5140,27 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5121
5140
  window.removeEventListener("keydown", Me, !0), window.removeEventListener("keyup", ue, !0);
5122
5141
  };
5123
5142
  }, []);
5124
- const le = Mu("(orientation: landscape) and (max-height: 540px)"), Te = j(null), [je, Se] = k(null);
5125
- Jt(() => {
5143
+ const le = Mu("(orientation: landscape) and (max-height: 540px)"), Te = z(null), [je, Se] = j(null);
5144
+ Xt(() => {
5126
5145
  const $ = Te.current;
5127
5146
  if (!$ || (Se($.getBoundingClientRect().width), typeof ResizeObserver > "u")) return;
5128
5147
  const Me = new ResizeObserver(([ue]) => Se(ue.contentRect.width));
5129
5148
  return Me.observe($), () => Me.disconnect();
5130
5149
  }, []);
5131
- const ve = t && !F, we = !ve && a && !le && (je == null || je >= 880), Ee = !we;
5150
+ const we = t && !F, ve = !we && a && !le && (je == null || je >= 880), Ee = !ve;
5132
5151
  S(() => {
5133
5152
  if (te(!1), !p.playing || b) return;
5134
5153
  const $ = setTimeout(() => te(!0), 3e3);
5135
5154
  return () => clearTimeout($);
5136
5155
  }, [p.playing, b, K]);
5137
- const Re = j(O);
5156
+ const Re = z(O);
5138
5157
  Re.current = O;
5139
- const De = j(0), Q = ($) => {
5158
+ const De = z(0), Q = ($) => {
5140
5159
  if ($.pointerType !== "mouse") return;
5141
5160
  const Me = Date.now();
5142
5161
  !Re.current && Me - De.current < 1e3 || (De.current = Me, L((ue) => ue + 1));
5143
- }, H = !we && le, E = j(null), x = l ? l.words.map(($) => $.dim ? 0 : 1).join("") + l.words.length + ":" + (l.cursor ?? "") : "";
5144
- Jt(() => {
5162
+ }, H = !ve && le, E = z(null), x = l ? l.words.map(($) => $.dim ? 0 : 1).join("") + l.words.length + ":" + (l.cursor ?? "") : "";
5163
+ Xt(() => {
5145
5164
  const $ = E.current;
5146
5165
  if (!$) return;
5147
5166
  const Me = !!(l != null && l.words.some((de) => de.dim)) || (l == null ? void 0 : l.cursor) != null, ue = $.querySelectorAll((l == null ? void 0 : l.cursor) != null && !l.words.some((de) => de.dim) ? "[data-at]" : "[data-said]"), ae = parseFloat(getComputedStyle($).lineHeight) || 24, fe = Math.round($.scrollHeight / ae) - Math.round($.clientHeight / ae), Ye = Math.max(0, fe) * ae;
@@ -5152,22 +5171,22 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5152
5171
  const U = (de) => Math.round((de.getBoundingClientRect().top - $.getBoundingClientRect().top + $.scrollTop) / ae), R = Math.max(1, Math.round($.clientHeight / ae)), q = Me ? ue.length ? Math.floor(U(ue[ue.length - 1]) / R) * R * ae : 0 : Ye, se = Math.max(0, Math.min(Ye, q));
5153
5172
  Math.abs(se - $.scrollTop) > 1 && ($.scrollTop = se);
5154
5173
  }, [x, H]);
5155
- const [V, ce] = k(!0), [W, ye] = k(!1), G = j(void 0);
5174
+ const [B, ce] = j(!0), [W, ye] = j(!1), G = z(void 0);
5156
5175
  S(() => () => window.clearTimeout(G.current), []);
5157
- const ke = B != null && B.share ? B.share.url(V && B.share.at >= 1 ? Math.floor(B.share.at) : null) : "", Ie = ze(() => we && ke && !p.playing ? uu(ke) : "", [we, ke, p.playing]), Fe = () => {
5176
+ const ke = V != null && V.share ? V.share.url(B && V.share.at >= 1 ? Math.floor(V.share.at) : null) : "", Ie = ze(() => ve && ke && !p.playing ? uu(ke) : "", [ve, ke, p.playing]), Fe = () => {
5158
5177
  var $;
5159
5178
  ($ = navigator.clipboard) == null || $.writeText(ke).then(() => {
5160
5179
  ye(!0), window.clearTimeout(G.current), G.current = window.setTimeout(() => ye(!1), 1800);
5161
5180
  }, () => {
5162
5181
  });
5163
- }, Ae = we && (B == null ? void 0 : B.share) && /* @__PURE__ */ g("div", { className: "gfull__sharecard", onPointerDown: ($) => $.stopPropagation(), onClick: ($) => $.stopPropagation(), children: [
5182
+ }, Ae = ve && (V == null ? void 0 : V.share) && /* @__PURE__ */ g("div", { className: "gfull__sharecard", onPointerDown: ($) => $.stopPropagation(), onClick: ($) => $.stopPropagation(), children: [
5164
5183
  Ie && /* @__PURE__ */ i("div", { className: "gfull__shareqr", role: "img", "aria-label": "QR code for this link", style: { backgroundImage: `url("${Ie}")` } }),
5165
5184
  /* @__PURE__ */ g("div", { className: "gfull__sharebody", children: [
5166
5185
  /* @__PURE__ */ i("div", { className: "gfull__shareeyebrow", children: "SHARE THIS MOMENT" }),
5167
5186
  /* @__PURE__ */ g("label", { className: "gfull__shareat", children: [
5168
- /* @__PURE__ */ i("input", { type: "checkbox", checked: V, onChange: ($) => ce($.target.checked), disabled: B.share.at < 1 }),
5187
+ /* @__PURE__ */ i("input", { type: "checkbox", checked: B, onChange: ($) => ce($.target.checked), disabled: V.share.at < 1 }),
5169
5188
  "Start at ",
5170
- jt(Math.floor(B.share.at))
5189
+ zt(Math.floor(V.share.at))
5171
5190
  ] }),
5172
5191
  /* @__PURE__ */ i("div", { className: "gfull__shareurl", children: /* @__PURE__ */ i("span", { children: ke.replace(/^https?:\/\//, "") }) }),
5173
5192
  /* @__PURE__ */ g("div", { className: "gfull__shareacts", children: [
@@ -5181,12 +5200,12 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5181
5200
  ] })
5182
5201
  ] })
5183
5202
  ] })
5184
- ] }), he = ($, Me, ue, ae, fe, Ye = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: $, "aria-label": $, onClick: ae, children: /* @__PURE__ */ i(oe, { d: Me, size: (we ? 20 : Ee ? 15 : 18) + Ye, sw: ue, style: fe }) }), _e = /* @__PURE__ */ g("div", { className: "gfull__acts", children: [
5185
- m && /* @__PURE__ */ i(da, { v: m, size: we ? 20 : Ee ? 15 : 18 }),
5203
+ ] }), he = ($, Me, ue, ae, fe, Ye = 0) => /* @__PURE__ */ i("button", { type: "button", className: "gfull__btn", title: $, "aria-label": $, onClick: ae, children: /* @__PURE__ */ i(oe, { d: Me, size: (ve ? 20 : Ee ? 15 : 18) + Ye, sw: ue, style: fe }) }), _e = /* @__PURE__ */ g("div", { className: "gfull__acts", children: [
5204
+ m && /* @__PURE__ */ i(da, { v: m, size: ve ? 20 : Ee ? 15 : 18 }),
5186
5205
  C && he("Share", X.share, 1.6, C),
5187
5206
  ji() && !e && he(F ? "Exit full screen" : "Full screen", F ? du : ua, 1.7, () => _n(!F)),
5188
5207
  I && he("Close player", X.close, 1.7, I)
5189
- ] }), Be = (d || M || D) && /* @__PURE__ */ g("div", { className: "gfull__top", children: [
5208
+ ] }), Ve = (d || M || D) && /* @__PURE__ */ g("div", { className: "gfull__top", children: [
5190
5209
  d && he(d.muted ? "Unmute" : "Mute", d.muted ? X.volumeOff : X.volume, 1.6, d.onToggle),
5191
5210
  M && he(M.on ? "Hide subtitles" : "Show subtitles", M.on ? X.cc : X.ccOff, 1.7, M.onToggle, void 0, 4),
5192
5211
  D && he("Settings", X.cog, 1.6, D)
@@ -5195,7 +5214,7 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5195
5214
  "div",
5196
5215
  {
5197
5216
  ref: Te,
5198
- className: `gfull${we ? " gfull--desk" : ""}${Ee ? " gfull--mini" : ""}${ve ? " gfull--small" : ""}${ne ? " gfull--swipe" : ""}${h ? " gfull--ad" : ""}${O ? " gfull--calm" : ""}`,
5217
+ className: `gfull${ve ? " gfull--desk" : ""}${Ee ? " gfull--mini" : ""}${we ? " gfull--small" : ""}${ne ? " gfull--swipe" : ""}${h ? " gfull--ad" : ""}${O ? " gfull--calm" : ""}`,
5199
5218
  "data-theme": "dark",
5200
5219
  role: "dialog",
5201
5220
  "aria-label": s,
@@ -5215,24 +5234,24 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5215
5234
  /* @__PURE__ */ g("div", { className: `gfull__frame${H ? " gfull__frame--land" : ""}`, children: [
5216
5235
  r,
5217
5236
  /* @__PURE__ */ i("div", { className: "gfull__shade", "aria-hidden": "true" }),
5218
- B && !h && /* @__PURE__ */ g("div", { className: `gfull__pausedinfo${p.playing ? "" : " gfull__pausedinfo--on"}`, "aria-hidden": p.playing, children: [
5237
+ V && !h && /* @__PURE__ */ g("div", { className: `gfull__pausedinfo${p.playing ? "" : " gfull__pausedinfo--on"}`, "aria-hidden": p.playing, children: [
5219
5238
  /* @__PURE__ */ g("div", { className: "gfull__pausedtext", children: [
5220
5239
  /* @__PURE__ */ g("div", { className: "gfull__pausedhead", children: [
5221
- (Ee || ve) && /* @__PURE__ */ i("span", { className: "gfull__pausedmark", "aria-hidden": "true", children: /* @__PURE__ */ i(Yr, { dark: !0, size: 20 }) }),
5222
- /* @__PURE__ */ i("div", { className: "gfull__pausedtitle", children: B.title })
5240
+ (Ee || we) && /* @__PURE__ */ i("span", { className: "gfull__pausedmark", "aria-hidden": "true", children: /* @__PURE__ */ i(Yr, { dark: !0, size: 20 }) }),
5241
+ /* @__PURE__ */ i("div", { className: "gfull__pausedtitle", children: V.title })
5223
5242
  ] }),
5224
- B.summary && /* @__PURE__ */ i("div", { className: "gfull__pausedsum", children: B.summary })
5243
+ V.summary && /* @__PURE__ */ i("div", { className: "gfull__pausedsum", children: V.summary })
5225
5244
  ] }),
5226
5245
  Ae
5227
5246
  ] }),
5228
- Be,
5247
+ Ve,
5229
5248
  Y,
5230
5249
  c ? typeof c == "string" ? /* @__PURE__ */ i("div", { className: "gfull__sub", "aria-live": "polite", children: /* @__PURE__ */ g("div", { className: "gfull__wait", children: [
5231
5250
  /* @__PURE__ */ i("span", { className: "gfull__spin", "aria-hidden": "true" }),
5232
5251
  c
5233
5252
  ] }) }) : /* @__PURE__ */ i("div", { className: "gfull__sub", children: c }) : l && /* @__PURE__ */ i("div", { className: "gfull__sub", children: /* @__PURE__ */ g("div", { ref: E, children: [
5234
5253
  /* @__PURE__ */ i("div", { className: "gfull__subback", "aria-hidden": "true", children: /* @__PURE__ */ g("span", { children: [
5235
- l.who && /* @__PURE__ */ g(be, { children: [
5254
+ l.who && /* @__PURE__ */ g(Ce, { children: [
5236
5255
  /* @__PURE__ */ g("b", { children: [
5237
5256
  l.who,
5238
5257
  ":"
@@ -5242,7 +5261,7 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5242
5261
  l.words.map(($) => $.t + $.sp).join("")
5243
5262
  ] }) }),
5244
5263
  /* @__PURE__ */ g("span", { children: [
5245
- l.who && /* @__PURE__ */ g(be, { children: [
5264
+ l.who && /* @__PURE__ */ g(Ce, { children: [
5246
5265
  /* @__PURE__ */ g("b", { style: { color: l.color }, children: [
5247
5266
  l.who,
5248
5267
  ":"
@@ -5255,7 +5274,7 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5255
5274
  ] }, Me))
5256
5275
  ] })
5257
5276
  ] }) }),
5258
- /* @__PURE__ */ i("div", { className: `gfull__prog${we ? "" : " gfull__prog--two"}`, children: we ? /* @__PURE__ */ g(be, { children: [
5277
+ /* @__PURE__ */ i("div", { className: `gfull__prog${ve ? "" : " gfull__prog--two"}`, children: ve ? /* @__PURE__ */ g(Ce, { children: [
5259
5278
  /* @__PURE__ */ i(_r, { live: o.live, desk: !0, pct: u }),
5260
5279
  /* @__PURE__ */ i(Un, { t: p }),
5261
5280
  /* @__PURE__ */ i(Yn, { pos: o, interactive: !0 }),
@@ -5266,7 +5285,7 @@ function ha({ compact: t = !1, noFull: e = !1, page: n = !0, picture: r, title:
5266
5285
  /* @__PURE__ */ i(Yn, { pos: o, interactive: !0 }),
5267
5286
  /* @__PURE__ */ i("div", { className: "gfull__chip", children: f }),
5268
5287
  _e
5269
- ] }) : /* @__PURE__ */ g(be, { children: [
5288
+ ] }) : /* @__PURE__ */ g(Ce, { children: [
5270
5289
  /* @__PURE__ */ g("div", { className: "gfull__row", children: [
5271
5290
  /* @__PURE__ */ i(_r, { live: o.live, pct: u, mark: !0 }),
5272
5291
  /* @__PURE__ */ i(Yn, { pos: o, interactive: !0 })
@@ -5290,7 +5309,7 @@ function pu({ dark: t, back: e, home: n, live: r, title: s, badge: a, subline: o
5290
5309
  return /* @__PURE__ */ g("div", { className: "ghead", children: [
5291
5310
  e && /* @__PURE__ */ i("button", { type: "button", className: "ghead__back", "aria-label": "Back", title: "Back", onClick: e, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 19, sw: 1.7 }) }),
5292
5311
  r && /* @__PURE__ */ i("span", { className: "mark", children: /* @__PURE__ */ i(Yr, { dark: t, size: 30 }) }),
5293
- /* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0, display: "flex" }, children: n ? /* @__PURE__ */ i("div", { className: "ghead__logo", children: /* @__PURE__ */ i(Vn, { dark: t, height: 22 }) }) : /* @__PURE__ */ g("div", { className: "ghead__title", onClick: e, title: e ? "Back" : void 0, style: { cursor: e ? "pointer" : "default" }, children: [
5312
+ /* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0, display: "flex" }, children: n ? /* @__PURE__ */ i("div", { className: "ghead__logo", children: /* @__PURE__ */ i(Bn, { dark: t, height: 22 }) }) : /* @__PURE__ */ g("div", { className: "ghead__title", onClick: e, title: e ? "Back" : void 0, style: { cursor: e ? "pointer" : "default" }, children: [
5294
5313
  /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
5295
5314
  /* @__PURE__ */ i("span", { className: "ghead__name", children: s }),
5296
5315
  a
@@ -5350,12 +5369,12 @@ function Ma(t, e, n) {
5350
5369
  }, 500);
5351
5370
  }) : Promise.reject(new Error("Your browser blocked the VocalStack window. Allow pop-ups for this site and try again."));
5352
5371
  }
5353
- async function wu(t, e, n) {
5372
+ async function vu(t, e, n) {
5354
5373
  const r = await Ma(t, { url: e }, n);
5355
5374
  return r === "connected" ? null : r;
5356
5375
  }
5357
5376
  const ga = "vsp.connected";
5358
- function vu(t) {
5377
+ function wu(t) {
5359
5378
  try {
5360
5379
  return localStorage.getItem(ga) === new URL(t ?? Fr).origin;
5361
5380
  } catch {
@@ -5377,7 +5396,7 @@ const ku = {
5377
5396
  starting: "Starting the transcription…"
5378
5397
  }, ju = /^(https?:\/\/)?([\w-]+\.)+[a-z]{2,}(\/\S*)?$/i;
5379
5398
  function zu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
5380
- const [s, a] = k(""), [o, l] = k(!1), [c, u] = k(null), [d, M] = k(null);
5399
+ const [s, a] = j(""), [o, l] = j(!1), [c, u] = j(null), [d, M] = j(null);
5381
5400
  S(() => {
5382
5401
  const y = (T) => {
5383
5402
  T.key === "Escape" && r();
@@ -5388,7 +5407,7 @@ function zu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
5388
5407
  if (!(!f || o)) {
5389
5408
  l(!0), u(null);
5390
5409
  try {
5391
- const y = await wu(t.appUrl, /^https?:\/\//i.test(h) ? h : `https://${h}`, M);
5410
+ const y = await vu(t.appUrl, /^https?:\/\//i.test(h) ? h : `https://${h}`, M);
5392
5411
  y && e(y);
5393
5412
  } catch (y) {
5394
5413
  u(y instanceof Error ? y.message : "Something went wrong. Please try again.");
@@ -5401,7 +5420,7 @@ function zu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
5401
5420
  y.stopPropagation(), y.target === y.currentTarget && r();
5402
5421
  }, children: /* @__PURE__ */ g("div", { className: "vsp-end__card", children: [
5403
5422
  /* @__PURE__ */ i("button", { type: "button", className: "vsp-end__close", "aria-label": "Close", title: "Close", onClick: r, children: /* @__PURE__ */ i(oe, { d: X.close, size: 16, sw: 1.8 }) }),
5404
- /* @__PURE__ */ i("div", { className: "vsp-end__brand", children: /* @__PURE__ */ i(Vn, { dark: !0, link: !1, height: 16 }) }),
5423
+ /* @__PURE__ */ i("div", { className: "vsp-end__brand", children: /* @__PURE__ */ i(Bn, { dark: !0, link: !1, height: 16 }) }),
5405
5424
  /* @__PURE__ */ i("div", { className: "vsp-end__title", children: t.title ?? "Transcribe and translate any video" }),
5406
5425
  /* @__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." }),
5407
5426
  /* @__PURE__ */ g("form", { className: "vsp-end__row", onSubmit: (y) => {
@@ -5424,7 +5443,7 @@ function zu({ options: t, onStarted: e, onReplay: n, onClose: r }) {
5424
5443
  ] }) });
5425
5444
  }
5426
5445
  function fa(t) {
5427
- const [e, n] = k(() => typeof window > "u" ? !0 : window.innerWidth >= 880);
5446
+ const [e, n] = j(() => typeof window > "u" ? !0 : window.innerWidth >= 880);
5428
5447
  return S(() => {
5429
5448
  if (t != null) return;
5430
5449
  const r = () => n(window.innerWidth >= 880);
@@ -5433,7 +5452,7 @@ function fa(t) {
5433
5452
  }
5434
5453
  const Iu = { lang: null, subtitles: !0, speakerLabels: !1, wordHighlight: !0, translateAudio: !0, voices: "cloned", removeBackground: !1, muted: !1 };
5435
5454
  function bu(t, e) {
5436
- const n = Ji(), [r, s] = $i(), [a, o] = k(null), [l, c] = k("main"), u = Dr(n, t.lang), d = ze(() => Qi(n, "translation"), [n]), M = (Y) => {
5455
+ const n = Ji(), [r, s] = $i(), [a, o] = j(null), [l, c] = j("main"), u = Dr(n, t.lang), d = ze(() => Qi(n, "translation"), [n]), M = (Y) => {
5437
5456
  e({ lang: Y }), s(Y);
5438
5457
  }, h = Rr({ open: a === "lang" || a === "settings" && l === "lang", onClose: () => a === "lang" ? o(null) : c("main"), value: t.lang, onSelect: M, languages: d, none: "As spoken", pinned: t.lang ? [t.lang] : [], recent: r, keepOpen: !0 }), f = () => {
5439
5458
  o(null), c("main");
@@ -5487,45 +5506,45 @@ function bu(t, e) {
5487
5506
  ] }),
5488
5507
  T
5489
5508
  ] })
5490
- ] }), B = /* @__PURE__ */ g(be, { children: [
5509
+ ] }), V = /* @__PURE__ */ g(Ce, { children: [
5491
5510
  /* @__PURE__ */ i(en, { open: a === "lang", onClose: f, title: "LANGUAGE", kind: "picker", header: h.search, sticky: !0, children: /* @__PURE__ */ i(jr, { children: h.list }) }),
5492
5511
  /* @__PURE__ */ i(en, { open: a === "settings", onClose: f, title: { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO" }[l], titleNode: l === "main" ? void 0 : N, kind: l === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(jr, { children: D }) })
5493
5512
  ] });
5494
5513
  return {
5495
5514
  chip: y,
5496
- sheets: B,
5515
+ sheets: V,
5497
5516
  sheetOpen: a != null,
5498
5517
  openSettings: () => {
5499
5518
  c("main"), o((Y) => Y === "settings" ? null : "settings");
5500
5519
  }
5501
5520
  };
5502
5521
  }
5503
- const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "currentColor", fillRule: e }), Vt = (t) => /* @__PURE__ */ g(be, { children: [
5522
+ const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "currentColor", fillRule: e }), Bt = (t) => /* @__PURE__ */ g(Ce, { children: [
5504
5523
  /* @__PURE__ */ i("path", { d: "M6.5 2.75h7.25l4.75 4.75v12.25a1.5 1.5 0 0 1-1.5 1.5H6.5a1.5 1.5 0 0 1-1.5-1.5V4.25a1.5 1.5 0 0 1 1.5-1.5Z", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinejoin: "round" }),
5505
5524
  /* @__PURE__ */ i("path", { d: "M13.75 2.75V7.5h4.75", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinejoin: "round" }),
5506
5525
  /* @__PURE__ */ i("text", { x: "11.75", y: "17.4", textAnchor: "middle", fontSize: t.length > 3 ? 4.4 : 5.2, fontWeight: "800", fill: "currentColor", fontFamily: "inherit", letterSpacing: ".2", children: t })
5507
5526
  ] }), zi = [
5508
5527
  { name: "YouTube", tint: "#ff3b30", glyph: yt("M21.6 7.2a2.7 2.7 0 0 0-1.9-1.9C18 4.8 12 4.8 12 4.8s-6 0-7.7.5a2.7 2.7 0 0 0-1.9 1.9C2 8.9 2 12 2 12s0 3.1.4 4.8a2.7 2.7 0 0 0 1.9 1.9c1.7.5 7.7.5 7.7.5s6 0 7.7-.5a2.7 2.7 0 0 0 1.9-1.9c.4-1.7.4-4.8.4-4.8s0-3.1-.4-4.8ZM10 15.1V8.9l5.3 3.1L10 15.1Z", "evenodd") },
5509
- { name: "MP3", tint: "#f78472", glyph: Vt("MP3") },
5528
+ { name: "MP3", tint: "#f78472", glyph: Bt("MP3") },
5510
5529
  { name: "Vimeo", tint: "#1ab7ea", glyph: yt("M22 7.4c-.1 2-1.5 4.7-4.2 8.1-2.8 3.6-5.1 5.4-7 5.4-1.2 0-2.2-1.1-3-3.3L6.2 11.6C5.6 9.4 5 8.3 4.3 8.3c-.1 0-.6.3-1.4.9L2 8l2.7-2.4C5.9 4.6 6.8 4 7.4 4c1.4-.1 2.3.9 2.6 2.9.4 2.2.6 3.6.8 4.1.4 1.8.9 2.7 1.4 2.7.4 0 1-.6 1.8-1.9.8-1.2 1.2-2.2 1.3-2.8.1-1.1-.3-1.6-1.3-1.6-.5 0-.9.1-1.4.3.9-3 2.7-4.5 5.3-4.4 1.9.1 2.8 1.3 2.7 3.7Z") },
5511
- { name: "Video", tint: "#55abe5", glyph: /* @__PURE__ */ g(be, { children: [
5530
+ { name: "Video", tint: "#55abe5", glyph: /* @__PURE__ */ g(Ce, { children: [
5512
5531
  /* @__PURE__ */ i("rect", { x: "3", y: "5.5", width: "13", height: "13", rx: "2.5", fill: "none", stroke: "currentColor", strokeWidth: "1.5" }),
5513
5532
  yt("M16 10.2 21 7v10l-5-3.2v-3.6Z")
5514
5533
  ] }) },
5515
5534
  { name: "Twitch", tint: "#a970ff", glyph: yt("M5 2.5 3 6.5v13h4.5V22H10l2.5-2.5h3.8L21 14.8V2.5H5Zm14 11.4-2.9 2.9h-4.3L9.4 19.2v-2.4H6V4.5h13v9.4ZM15.2 7.4h1.9v5.2h-1.9V7.4Zm-5 0h1.9v5.2h-1.9V7.4Z", "evenodd") },
5516
- { name: "WAV", tint: "#7ee0b4", glyph: Vt("WAV") },
5517
- { name: "SoundCloud", tint: "#ff7a1a", glyph: /* @__PURE__ */ g(be, { children: [
5535
+ { name: "WAV", tint: "#7ee0b4", glyph: Bt("WAV") },
5536
+ { name: "SoundCloud", tint: "#ff7a1a", glyph: /* @__PURE__ */ g(Ce, { children: [
5518
5537
  yt("M11 8.6a5 5 0 0 1 7.8 3.1 3 3 0 0 1-.3 6H11V8.6Z"),
5519
5538
  /* @__PURE__ */ i("rect", { x: "8.6", y: "9.4", width: "1.3", height: "8.3", rx: ".65", fill: "currentColor" }),
5520
5539
  /* @__PURE__ */ i("rect", { x: "6.2", y: "10.6", width: "1.3", height: "7.1", rx: ".65", fill: "currentColor" }),
5521
5540
  /* @__PURE__ */ i("rect", { x: "3.8", y: "12.2", width: "1.3", height: "5.5", rx: ".65", fill: "currentColor" }),
5522
5541
  /* @__PURE__ */ i("rect", { x: "1.4", y: "13.8", width: "1.3", height: "3.9", rx: ".65", fill: "currentColor" })
5523
5542
  ] }) },
5524
- { name: "MP4", tint: "#5b63d7", glyph: Vt("MP4") },
5543
+ { name: "MP4", tint: "#5b63d7", glyph: Bt("MP4") },
5525
5544
  { name: "TikTok", tint: "#25f4ee", glyph: yt("M16.6 2.5c.3 2.3 1.7 3.8 3.9 4v2.7a6.8 6.8 0 0 1-3.9-1.3v6.5a5.7 5.7 0 1 1-5.7-5.7l.9.1v2.8a2.9 2.9 0 1 0 2 2.8V2.5h2.8Z") },
5526
5545
  { name: "Audio", tint: "#f7c948", glyph: /* @__PURE__ */ i("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.8", strokeLinecap: "round", children: /* @__PURE__ */ i("path", { d: "M3 10.5v3M6.5 7.5v9M10 4.5v15M13.5 8v8M17 6v12M20.5 10v4" }) }) },
5527
5546
  { name: "X", tint: "#e8eaf2", glyph: yt("M17.8 3h3.1l-6.7 7.7L22 21h-6.2l-4.8-6.3L5.5 21H2.4l7.2-8.2L2.1 3h6.3l4.4 5.8L17.8 3Zm-1.1 16.2h1.7L7.4 4.7H5.6l11.1 14.5Z") },
5528
- { name: "MOV", tint: "#55abe5", glyph: Vt("MOV") },
5547
+ { name: "MOV", tint: "#55abe5", glyph: Bt("MOV") },
5529
5548
  { name: "Facebook", tint: "#3b82f6", glyph: yt("M13.9 21.5v-8h2.7l.4-3.1h-3.1V8.4c0-.9.3-1.5 1.6-1.5H17V4.1c-.3 0-1.3-.1-2.4-.1-2.4 0-4 1.4-4 4.1v2.3H7.9v3.1h2.7v8h3.3Z") },
5530
5549
  { name: "Podcast", tint: "#c46bff", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
5531
5550
  /* @__PURE__ */ i("rect", { x: "9", y: "3", width: "6", height: "10.5", rx: "3" }),
@@ -5536,15 +5555,15 @@ const yt = (t, e = "nonzero") => /* @__PURE__ */ i("path", { d: t, fill: "curren
5536
5555
  /* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "4" }),
5537
5556
  /* @__PURE__ */ i("circle", { cx: "17.2", cy: "6.8", r: ".9", fill: "currentColor", stroke: "none" })
5538
5557
  ] }) },
5539
- { name: "M4A", tint: "#f78472", glyph: Vt("M4A") },
5558
+ { name: "M4A", tint: "#f78472", glyph: Bt("M4A") },
5540
5559
  { name: "Dailymotion", tint: "#4aa3ff", glyph: yt("M14.6 3.5h3.2V20h-3v-1.2a5.4 5.4 0 0 1-3.6 1.4c-3.3 0-5.9-2.7-5.9-6.1S7.9 8 11.2 8c1.3 0 2.5.4 3.4 1.2V3.5Zm-3.1 7.4a3.2 3.2 0 1 0 0 6.4 3.2 3.2 0 0 0 0-6.4Z", "evenodd") },
5541
5560
  { name: "Radio", tint: "#7ee0b4", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
5542
5561
  /* @__PURE__ */ i("circle", { cx: "12", cy: "12", r: "1.8", fill: "currentColor", stroke: "none" }),
5543
5562
  /* @__PURE__ */ i("path", { d: "M8.5 15.5a5 5 0 0 1 0-7M15.5 8.5a5 5 0 0 1 0 7M5.6 18.4a9 9 0 0 1 0-12.8M18.4 5.6a9 9 0 0 1 0 12.8" })
5544
5563
  ] }) },
5545
- { name: "WEBM", tint: "#5b63d7", glyph: Vt("WEBM") },
5564
+ { name: "WEBM", tint: "#5b63d7", glyph: Bt("WEBM") },
5546
5565
  { name: "Loom", tint: "#8f7bff", glyph: yt("M21 11h-5.2l4.5-2.6-1-1.7-4.5 2.6 2.6-4.5-1.7-1-2.6 4.5V3h-2v5.3L8.5 3.8l-1.7 1 2.6 4.5-4.5-2.6-1 1.7L8.2 11H3v2h5.2l-4.5 2.6 1 1.7 4.5-2.6-2.6 4.5 1.7 1 2.6-4.5V21h2v-5.2l2.6 4.5 1.7-1-2.6-4.5 4.5 2.6 1-1.7-4.5-2.6H21v-2Zm-9 3.4a2.4 2.4 0 1 1 0-4.8 2.4 2.4 0 0 1 0 4.8Z", "evenodd") },
5547
- { name: "FLAC", tint: "#f7c948", glyph: Vt("FLAC") },
5566
+ { name: "FLAC", tint: "#f7c948", glyph: Bt("FLAC") },
5548
5567
  { name: "Live", tint: "#ff5a5a", glyph: /* @__PURE__ */ g("g", { fill: "none", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round", children: [
5549
5568
  /* @__PURE__ */ i("rect", { x: "3", y: "6", width: "18", height: "12", rx: "3" }),
5550
5569
  /* @__PURE__ */ i("circle", { cx: "8", cy: "12", r: "1.6", fill: "currentColor", stroke: "none" }),
@@ -5563,7 +5582,7 @@ function Su({ t }) {
5563
5582
  ] });
5564
5583
  }
5565
5584
  function Du() {
5566
- const t = j(null), [e, n] = k(!0), [r, s] = k(() => typeof document > "u" || !document.hidden);
5585
+ const t = z(null), [e, n] = j(!0), [r, s] = j(() => typeof document > "u" || !document.hidden);
5567
5586
  return S(() => {
5568
5587
  const a = () => s(!document.hidden);
5569
5588
  document.addEventListener("visibilitychange", a);
@@ -5593,7 +5612,7 @@ function Lr(t) {
5593
5612
  }
5594
5613
  }
5595
5614
  function Au(t, e) {
5596
- const [n, r] = k(!1), [s, a] = k(null), [o, l] = k(null), [c, u] = k(() => vu(t)), d = Ke((f) => {
5615
+ const [n, r] = j(!1), [s, a] = j(null), [o, l] = j(null), [c, u] = j(() => wu(t)), d = Ke((f) => {
5597
5616
  if (n) return;
5598
5617
  r(!0), l(null);
5599
5618
  let p;
@@ -5616,16 +5635,16 @@ function Eu(t) {
5616
5635
  function _u({ poster: t, src: e }) {
5617
5636
  var s;
5618
5637
  const n = e && ((s = Pn(e)) == null ? void 0 : s.id) === "youtube" ? na(e) : null, r = t ?? (n ? `https://i.ytimg.com/vi/${n}/hqdefault.jpg` : null);
5619
- return r ? /* @__PURE__ */ i("div", { className: "vsp-idle__pic", style: { backgroundImage: `url(${r})` } }) : e && Eu(e) ? /* @__PURE__ */ i("video", { className: "vsp-idle__pic vsp-idle__frame", src: `${e}#t=1`, muted: !0, playsInline: !0, preload: "metadata", "aria-hidden": "true" }) : /* @__PURE__ */ g(be, { children: [
5638
+ return r ? /* @__PURE__ */ i("div", { className: "vsp-idle__pic", style: { backgroundImage: `url(${r})` } }) : e && Eu(e) ? /* @__PURE__ */ i("video", { className: "vsp-idle__pic vsp-idle__frame", src: `${e}#t=1`, muted: !0, playsInline: !0, preload: "metadata", "aria-hidden": "true" }) : /* @__PURE__ */ g(Ce, { children: [
5620
5639
  /* @__PURE__ */ i("div", { className: "vsp-idle__pic vsp-idle__pic--brand" }),
5621
5640
  /* @__PURE__ */ i(Du, {})
5622
5641
  ] });
5623
5642
  }
5624
5643
  const Yu = { live: !1, atEdge: !1, edgeFrac: null, pct: 0, atLabel: "0:00", labelAt: () => "0:00", endLabel: "0:00", onSeek: () => {
5625
5644
  } };
5626
- function Bn({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children: o }) {
5627
- const l = bu(t.prefs, t.set), c = fa(), u = j(null), [d, M] = k(!1);
5628
- Jt(() => {
5645
+ function Vn({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children: o }) {
5646
+ const l = bu(t.prefs, t.set), c = fa(), u = z(null), [d, M] = j(!1);
5647
+ Xt(() => {
5629
5648
  var T;
5630
5649
  const f = (T = u.current) == null ? void 0 : T.parentElement;
5631
5650
  if (!f) return;
@@ -5644,7 +5663,7 @@ function Bn({ idle: t, poster: e, src: n, title: r, page: s, onAct: a, children:
5644
5663
  ] });
5645
5664
  }
5646
5665
  function ma({ connect: t, onClick: e, label: n }) {
5647
- return /* @__PURE__ */ g(be, { children: [
5666
+ return /* @__PURE__ */ g(Ce, { children: [
5648
5667
  /* @__PURE__ */ g("button", { type: "button", className: "vsp-idle__connect", onClick: e, disabled: t.busy, children: [
5649
5668
  t.busy ? /* @__PURE__ */ i(ht, { size: 18, color: "#050507", track: "rgba(5,5,7,.2)" }) : /* @__PURE__ */ i(oe, { d: X.link, size: 18, sw: 1.8 }),
5650
5669
  /* @__PURE__ */ i("span", { children: t.busy ? "Waiting for VocalStack…" : n })
@@ -5655,20 +5674,20 @@ function ma({ connect: t, onClick: e, label: n }) {
5655
5674
  }
5656
5675
  function Uu({ idle: t, src: e, ask: n, connect: r, page: s, poster: a = null, onClear: o }) {
5657
5676
  const l = () => r.start(e, n);
5658
- return /* @__PURE__ */ g(Bn, { idle: t, poster: a, src: e, title: Lr(e), page: s, onAct: l, children: [
5677
+ return /* @__PURE__ */ g(Vn, { idle: t, poster: a, src: e, title: Lr(e), page: s, onAct: l, children: [
5659
5678
  /* @__PURE__ */ i(ma, { connect: r, onClick: l, label: r.connected ? "Play with VocalStack" : "Connect to VocalStack" }),
5660
5679
  !r.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: r.connected ? `Plays ${Lr(e)} with subtitles and spoken translations.` : `Connect to play ${Lr(e)} with subtitles and spoken translations.` }),
5661
5680
  o && !r.busy && /* @__PURE__ */ i("button", { type: "button", className: "vsp-idle__other", onClick: o, children: "Choose another video" })
5662
5681
  ] });
5663
5682
  }
5664
5683
  function Ru({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
5665
- const [a, o] = k(""), l = j(null), c = j(null), u = a.trim(), d = Ii.test(u), M = () => {
5684
+ const [a, o] = j(""), l = z(null), c = z(null), u = a.trim(), d = Ii.test(u), M = () => {
5666
5685
  if (!d || e.busy) return;
5667
5686
  const p = /^https?:\/\//i.test(u) ? u : `https://${u}`;
5668
5687
  s(p), e.start(p, !1);
5669
5688
  };
5670
5689
  if (!e.connected)
5671
- return /* @__PURE__ */ g(Bn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: e.connect, children: [
5690
+ return /* @__PURE__ */ g(Vn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: e.connect, children: [
5672
5691
  /* @__PURE__ */ i(ma, { connect: e, onClick: e.connect, label: "Connect to VocalStack" }),
5673
5692
  !e.busy && /* @__PURE__ */ i("div", { className: "vsp-idle__note", children: "Connect your VocalStack account to watch any video with subtitles and spoken translations." })
5674
5693
  ] });
@@ -5682,7 +5701,7 @@ function Ru({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
5682
5701
  const T = /^https?:\/\//i.test(y) ? y : `https://${y}`;
5683
5702
  s(T), e.start(T, !1);
5684
5703
  };
5685
- return /* @__PURE__ */ g(Bn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: h, children: [
5704
+ return /* @__PURE__ */ g(Vn, { idle: t, poster: r, src: null, title: "VocalStack", page: n, onAct: h, children: [
5686
5705
  /* @__PURE__ */ i("form", { className: "vsp-idle__form", onSubmit: (p) => {
5687
5706
  p.preventDefault(), M();
5688
5707
  }, children: /* @__PURE__ */ g("span", { className: "vsp-idle__field", children: [
@@ -5698,7 +5717,7 @@ function Ru({ idle: t, connect: e, page: n, poster: r = null, onPick: s }) {
5698
5717
  ] });
5699
5718
  }
5700
5719
  function Pu({ idle: t, message: e, onRetry: n, page: r }) {
5701
- return /* @__PURE__ */ g(Bn, { idle: t, poster: null, src: null, title: "VocalStack", page: r, onAct: n, children: [
5720
+ return /* @__PURE__ */ g(Vn, { idle: t, poster: null, src: null, title: "VocalStack", page: r, onAct: n, children: [
5702
5721
  /* @__PURE__ */ g("div", { className: "vsp-idle__err", role: "alert", children: [
5703
5722
  /* @__PURE__ */ i(oe, { d: X.warn, size: 16, sw: 1.8 }),
5704
5723
  e
@@ -5710,7 +5729,7 @@ function Pu({ idle: t, message: e, onRetry: n, page: r }) {
5710
5729
  ] });
5711
5730
  }
5712
5731
  function $u(t, e, n) {
5713
- const [r, s] = k(t && e ? void 0 : null);
5732
+ const [r, s] = j(t && e ? void 0 : null);
5714
5733
  return S(() => {
5715
5734
  if (!t) {
5716
5735
  s(null);
@@ -5737,7 +5756,7 @@ function $u(t, e, n) {
5737
5756
  }, [t, e, n]), r;
5738
5757
  }
5739
5758
  const Qu = 100, bi = (t) => t == null ? null : t ? "on" : "off";
5740
- function Bu(t) {
5759
+ function Vu(t) {
5741
5760
  const e = t.syncUrl && typeof window < "u" ? new URLSearchParams(window.location.search) : null, n = { ...t.initial ?? {}, ...t.settings ?? {} }, r = (a) => a === "on" || a === "off" ? a : null, s = Number(e == null ? void 0 : e.get("t"));
5742
5761
  return {
5743
5762
  lang: (e == null ? void 0 : e.get("lang")) || n.lang || null,
@@ -5752,7 +5771,7 @@ function Bu(t) {
5752
5771
  }
5753
5772
  const nd = Ka(function(e, n) {
5754
5773
  var K;
5755
- const r = j(null);
5774
+ const r = z(null);
5756
5775
  Ja(n, () => ({
5757
5776
  seek: (L) => {
5758
5777
  var ie;
@@ -5775,7 +5794,7 @@ const nd = Ka(function(e, n) {
5775
5794
  return (L = r.current) == null ? void 0 : L.toggle();
5776
5795
  }
5777
5796
  }), []);
5778
- const [s, a] = k({ id: e.id ?? "", token: e.token });
5797
+ const [s, a] = j({ id: e.id ?? "", token: e.token });
5779
5798
  S(() => {
5780
5799
  a({ id: e.id ?? "", token: e.token });
5781
5800
  }, [e.id, e.token, e.src]);
@@ -5783,37 +5802,37 @@ const nd = Ka(function(e, n) {
5783
5802
  S(() => {
5784
5803
  o != null && o.id && a({ id: o.id, token: e.token });
5785
5804
  }, [o == null ? void 0 : o.id]);
5786
- const [l, c] = k(null), [u, d] = k(() => ({ ...Iu, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, L]) => L !== void 0)) })), [M, h] = k({}), f = { prefs: u, set: (L) => {
5805
+ const [l, c] = j(null), [u, d] = j(() => ({ ...Iu, ...Object.fromEntries(Object.entries({ ...e.initial ?? {}, ...e.settings ?? {} }).filter(([, L]) => L !== void 0)) })), [M, h] = j({}), f = { prefs: u, set: (L) => {
5787
5806
  d((ie) => ({ ...ie, ...L })), h((ie) => ({ ...ie, ...L }));
5788
5807
  }, shareUrl: (K = e.shareUrl) == null ? void 0 : K.call(e, null) }, { muted: p, ...y } = M;
5789
5808
  S(() => {
5790
5809
  c(null);
5791
5810
  }, [e.id, e.src]);
5792
- const T = e.src ?? l, N = !s.id && !!T && (l != null || o !== void 0), m = !s.id && !e.src && !l, b = Ki({ id: s.id, token: s.token, baseUrl: e.baseUrl, listen: s.listen }), { source: C, gone: D, error: B, reload: Y } = Yl(b, s.id), ee = Ul(b, (C == null ? void 0 : C.recording.id) ?? null), I = ze(() => El(b, ee), [b, ee]);
5811
+ const T = e.src ?? l, N = !s.id && !!T && (l != null || o !== void 0), m = !s.id && !e.src && !l, b = Ki({ id: s.id, token: s.token, baseUrl: e.baseUrl, listen: s.listen }), { source: C, gone: D, error: V, reload: Y } = Yl(b, s.id), ee = Ul(b, (C == null ? void 0 : C.recording.id) ?? null), I = ze(() => El(b, ee), [b, ee]);
5793
5812
  S(() => {
5794
5813
  var L;
5795
5814
  C && ((L = e.onSource) == null || L.call(e, C));
5796
5815
  }, [C]), S(() => {
5797
5816
  var L;
5798
- B && ((L = e.onError) == null || L.call(e, B));
5799
- }, [B]);
5800
- const F = fa(e.desk), A = (e.layout ?? "embed") === "embed", w = e.appUrl ?? (e.endCard ? e.endCard.appUrl : void 0), _ = Ke((L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }), []), O = Au(w, _), te = j(null);
5801
- return S(() => (ki(A ? te.current : null), () => ki(null)), [A]), /* @__PURE__ */ i(xl, { value: I, children: /* @__PURE__ */ i("div", { ref: te, className: `vsp${A ? " vsp--embed" : ""}${e.className ? ` ${e.className}` : ""}`, "data-theme": (e.mode ?? "video") === "video" || e.dark ? "dark" : "light", "data-mode": (e.mode ?? "video") === "video" ? "video" : "transcript", children: m ? /* @__PURE__ */ i(Ru, { idle: f, connect: O, page: !A, poster: e.poster ?? null, onPick: c }) : N ? /* @__PURE__ */ i(Uu, { idle: f, src: T, ask: !l, connect: O, page: !A, poster: e.poster ?? null, onClear: l ? () => c(null) : void 0 }) : s.id ? B && !C ? /* @__PURE__ */ i(Pu, { idle: f, message: B.message, onRetry: Y, page: !A }) : /* @__PURE__ */ i(Vu, { ...e, initial: { ...e.initial ?? {}, ...y }, startMuted: p === !0, handle: r, id: s.id, api: I, shared: C, gone: D, loadError: B, reread: Y, desk: F, dark: (e.mode ?? "video") === "video" || !!e.dark, onStarted: (L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }) }, s.id) : /* @__PURE__ */ i("div", { className: "vsp-gate", "data-theme": "dark", children: /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) }) }) });
5817
+ V && ((L = e.onError) == null || L.call(e, V));
5818
+ }, [V]);
5819
+ const F = fa(e.desk), A = (e.layout ?? "embed") === "embed", v = e.appUrl ?? (e.endCard ? e.endCard.appUrl : void 0), _ = Ke((L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }), []), O = Au(v, _), te = z(null);
5820
+ return S(() => (ki(A ? te.current : null), () => ki(null)), [A]), /* @__PURE__ */ i(xl, { value: I, children: /* @__PURE__ */ i("div", { ref: te, className: `vsp${A ? " vsp--embed" : ""}${e.className ? ` ${e.className}` : ""}`, "data-theme": (e.mode ?? "video") === "video" || e.dark ? "dark" : "light", "data-mode": (e.mode ?? "video") === "video" ? "video" : "transcript", children: m ? /* @__PURE__ */ i(Ru, { idle: f, connect: O, page: !A, poster: e.poster ?? null, onPick: c }) : N ? /* @__PURE__ */ i(Uu, { idle: f, src: T, ask: !l, connect: O, page: !A, poster: e.poster ?? null, onClear: l ? () => c(null) : void 0 }) : s.id ? V && !C ? /* @__PURE__ */ i(Pu, { idle: f, message: V.message, onRetry: Y, page: !A }) : /* @__PURE__ */ i(Bu, { ...e, initial: { ...e.initial ?? {}, ...y }, startMuted: p === !0, handle: r, id: s.id, api: I, shared: C, gone: D, loadError: V, reread: Y, desk: F, dark: (e.mode ?? "video") === "video" || !!e.dark, onStarted: (L) => a({ id: L.transcriptionId, token: null, listen: { transcriptionId: L.transcriptionId, recordingId: L.recordingId, token: L.token } }) }, s.id) : /* @__PURE__ */ i("div", { className: "vsp-gate", "data-theme": "dark", children: /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) }) }) });
5802
5821
  });
5803
- function Vu(t) {
5804
- var js, zs, Is, bs, Os, Cs, xs, Ss, Ds, As, Es, _s, Ys, Us, Rs, Ps, $s, Qs, Bs, Vs, Hs, Ws, Fs, Zs, Gs, qs, Ks, Js, Xs, ei, ti, ni, ri, si;
5805
- const { api: e, shared: n, gone: r, desk: s, dark: a } = t, o = t.id ?? "", l = ze(() => Bu(t), []), u = (t.mode ?? "video") === "video", [d, M] = k(t.loadError);
5822
+ function Bu(t) {
5823
+ var js, zs, Is, bs, Os, Cs, xs, Ss, Ds, As, Es, _s, Ys, Us, Rs, Ps, $s, Qs, Vs, Bs, Hs, Ws, Fs, Zs, Gs, qs, Ks, Js, Xs, ei, ti, ni, ri, si;
5824
+ const { api: e, shared: n, gone: r, desk: s, dark: a } = t, o = t.id ?? "", l = ze(() => Vu(t), []), u = (t.mode ?? "video") === "video", [d, M] = j(t.loadError);
5806
5825
  S(() => {
5807
5826
  t.loadError && M(t.loadError);
5808
5827
  }, [t.loadError]);
5809
- const [h, f] = k("none"), [p, y] = k(!1), [T, N] = k(""), [m, b] = Hc(), [C, D] = k(null), [B, Y] = k(u ? "listen" : "read"), [ee, I] = k(!1), F = j(null), A = j(/* @__PURE__ */ new Map()), [w, _] = k("main"), O = (v) => {
5828
+ const [h, f] = j("none"), [p, y] = j(!1), [T, N] = j(""), [m, b] = Hc(), [C, D] = j(null), [V, Y] = j(u ? "listen" : "read"), [ee, I] = j(!1), F = z(null), A = z(/* @__PURE__ */ new Map()), [v, _] = j("main"), O = (w) => {
5810
5829
  const me = document.querySelector(".vs-sheet--settings"), Pe = me == null ? void 0 : me.parentElement;
5811
- me && Pe && w === "main" && v !== "main" && Pe.style.setProperty("--vs-sheet-top", `${Math.round(me.getBoundingClientRect().top - Pe.getBoundingClientRect().top)}px`), _(v);
5830
+ me && Pe && v === "main" && w !== "main" && Pe.style.setProperty("--vs-sheet-top", `${Math.round(me.getBoundingClientRect().top - Pe.getBoundingClientRect().top)}px`), _(w);
5812
5831
  };
5813
5832
  S(() => {
5814
5833
  ee || O("main");
5815
5834
  }, [ee]);
5816
- const [te, K] = k(u), L = (n == null ? void 0 : n.recording) ?? null, ie = (L == null ? void 0 : L.id) ?? null, [ne, Z] = k(l.lang), J = typeof ne == "string" ? ne : null, [pe, le] = k(l.labels), [Te, je] = k(l.words), [Se, ve] = k(l.cc), [we, Ee] = k(l.translateAudio), [Re, De] = k(l.clonedVoices), [Q, H] = k(l.removeBackground), E = t.settings;
5835
+ const [te, K] = j(u), L = (n == null ? void 0 : n.recording) ?? null, ie = (L == null ? void 0 : L.id) ?? null, [ne, Z] = j(l.lang), J = typeof ne == "string" ? ne : null, [pe, le] = j(l.labels), [Te, je] = j(l.words), [Se, we] = j(l.cc), [ve, Ee] = j(l.translateAudio), [Re, De] = j(l.clonedVoices), [Q, H] = j(l.removeBackground), E = t.settings;
5817
5836
  S(() => {
5818
5837
  (E == null ? void 0 : E.lang) !== void 0 && Z(E.lang);
5819
5838
  }, [E == null ? void 0 : E.lang]), S(() => {
@@ -5821,7 +5840,7 @@ function Vu(t) {
5821
5840
  }, [E == null ? void 0 : E.speakerLabels]), S(() => {
5822
5841
  (E == null ? void 0 : E.wordHighlight) !== void 0 && je(E.wordHighlight ? "on" : "off");
5823
5842
  }, [E == null ? void 0 : E.wordHighlight]), S(() => {
5824
- (E == null ? void 0 : E.subtitles) !== void 0 && ve(E.subtitles);
5843
+ (E == null ? void 0 : E.subtitles) !== void 0 && we(E.subtitles);
5825
5844
  }, [E == null ? void 0 : E.subtitles]), S(() => {
5826
5845
  (E == null ? void 0 : E.translateAudio) !== void 0 && Ee(E.translateAudio);
5827
5846
  }, [E == null ? void 0 : E.translateAudio]), S(() => {
@@ -5829,28 +5848,28 @@ function Vu(t) {
5829
5848
  }, [E == null ? void 0 : E.voices]), S(() => {
5830
5849
  (E == null ? void 0 : E.removeBackground) !== void 0 && H(E.removeBackground);
5831
5850
  }, [E == null ? void 0 : E.removeBackground]);
5832
- const x = { language: !0, subtitles: !0, audio: !0, export: !0, share: !0, fullscreen: !0, settings: !0, ...t.controls ?? {} }, V = u && !we;
5851
+ const x = { language: !0, subtitles: !0, audio: !0, export: !0, share: !0, fullscreen: !0, settings: !0, ...t.controls ?? {} }, B = u && !ve;
5833
5852
  S(() => {
5834
5853
  if (!t.syncUrl) return;
5835
- const v = new URL(window.location.href);
5836
- J ? v.searchParams.set("lang", J) : v.searchParams.delete("lang"), pe ? v.searchParams.set("labels", pe) : v.searchParams.delete("labels"), Te ? v.searchParams.set("words", Te) : v.searchParams.delete("words"), Se ? v.searchParams.delete("cc") : v.searchParams.set("cc", "off"), we ? v.searchParams.delete("audio") : v.searchParams.set("audio", "original"), Re ? v.searchParams.delete("voices") : v.searchParams.set("voices", "stock"), Xo(v, Q), v.href !== window.location.href && window.history.replaceState(window.history.state, "", v);
5837
- }, [J, pe, Te, Se, we, Re, Q]), S(() => {
5854
+ const w = new URL(window.location.href);
5855
+ J ? w.searchParams.set("lang", J) : w.searchParams.delete("lang"), pe ? w.searchParams.set("labels", pe) : w.searchParams.delete("labels"), Te ? w.searchParams.set("words", Te) : w.searchParams.delete("words"), Se ? w.searchParams.delete("cc") : w.searchParams.set("cc", "off"), ve ? w.searchParams.delete("audio") : w.searchParams.set("audio", "original"), Re ? w.searchParams.delete("voices") : w.searchParams.set("voices", "stock"), Xo(w, Q), w.href !== window.location.href && window.history.replaceState(window.history.state, "", w);
5856
+ }, [J, pe, Te, Se, ve, Re, Q]), S(() => {
5838
5857
  n && !n.allowTranslate && J && Z(null);
5839
5858
  }, [n, J]);
5840
5859
  const { model: ce, error: W, clearError: ye, setLanguage: G, mergeTranslations: ke, translating: Ie, translateFailed: Fe, shownLang: Ae } = Ql(ie, {
5841
5860
  lang: null,
5842
- onFrame: (v) => {
5843
- v.type === "job.progress" && D({ state: v.state, processedS: v.processedS ?? 0, totalS: v.totalS ?? null, segmentsDone: v.segmentsDone ?? 0, segmentsTotal: v.segmentsTotal ?? null, pct: v.pct ?? 0, error: v.error ?? null });
5861
+ onFrame: (w) => {
5862
+ w.type === "job.progress" && D({ state: w.state, processedS: w.processedS ?? 0, totalS: w.totalS ?? null, segmentsDone: w.segmentsDone ?? 0, segmentsTotal: w.segmentsTotal ?? null, pct: w.pct ?? 0, error: w.error ?? null });
5844
5863
  }
5845
- }), he = ze(() => yl(ce).filter((v) => !v.suppressed), [ce]), _e = Bl((n == null ? void 0 : n.job) ?? null), Be = ["done", "failed", "stopped"].includes(Tr((_e == null ? void 0 : _e.state) ?? ((js = n == null ? void 0 : n.job) == null ? void 0 : js.state))), $ = Be ? _e : C ?? _e, Me = !!C && !["done", "failed", "stopped"].includes(Tr(C.state)), ue = j(0);
5864
+ }), he = ze(() => yl(ce).filter((w) => !w.suppressed), [ce]), _e = Vl((n == null ? void 0 : n.job) ?? null), Ve = ["done", "failed", "stopped"].includes(Tr((_e == null ? void 0 : _e.state) ?? ((js = n == null ? void 0 : n.job) == null ? void 0 : js.state))), $ = Ve ? _e : C ?? _e, Me = !!C && !["done", "failed", "stopped"].includes(Tr(C.state)), ue = z(0);
5846
5865
  S(() => {
5847
- !Be || !Me || Date.now() - ue.current < 1e4 || (ue.current = Date.now(), t.reread());
5848
- }, [Be, Me, C == null ? void 0 : C.state, C == null ? void 0 : C.processedS, o]);
5849
- const ae = Tr(($ == null ? void 0 : $.state) ?? ((zs = n == null ? void 0 : n.job) == null ? void 0 : zs.state) ?? (e.listen ? (L == null ? void 0 : L.state) === "finalized" ? "done" : L != null && L.state ? "transcribing" : void 0 : void 0)), fe = !!ie && (ae === "transcribing" || ae === "queued"), Ye = u && !r && (!n || (fe || ae === "cropping") && he.length === 0), U = fe ? ($ == null ? void 0 : $.pct) ?? 0 : 100, R = Hl(n == null ? void 0 : n.job, $) ?? (L == null ? void 0 : L.mediaDurationS) ?? null, q = ((Is = ce.segments.values().next().value) == null ? void 0 : Is.language) ?? (L == null ? void 0 : L.spokenLanguage) ?? null, se = n != null && n.sharedBy ? `Shared by ${n.sharedBy}` : "", de = ((Cs = (Os = (bs = n == null ? void 0 : n.job) == null ? void 0 : bs.source) == null ? void 0 : Os.name) == null ? void 0 : Cs.trim()) || null, Oe = n ? ((xs = n.name) == null ? void 0 : xs.trim()) || de : null, Ne = !!((Ss = n == null ? void 0 : n.job) != null && Ss.hasAudio), Le = (Ds = n == null ? void 0 : n.job) == null ? void 0 : Ds.source, Ce = !Ne && !!Le && (Le.kind !== "url" || Le.bytes != null) && (ae === "transcribing" || ae === "queued" || ae === "done"), He = ie && (n != null && n.allowDownload) && Ne ? fo(e.origin, ie, e.cred) : null, $e = !!Le && (Le.kind !== "url" || Le.bytes != null), ut = Hu(He && $e ? He : null), it = He && (!$e || ut === "yes") ? He : He && ut === "unknown" ? null : ie && (n != null && n.allowDownload) && (Ce || Ne && $e) ? xn(e.origin, ie, "source", e.cred) : null, pt = he[he.length - 1], Ge = pt ? ((As = pt.words[pt.words.length - 1]) == null ? void 0 : As.end) ?? pt.start : 0, rt = u && fe ? Math.max(Ge, ($ == null ? void 0 : $.processedS) ?? 0) : null, Mt = Kc(it, (Ne || Ce) && !!(n != null && n.allowDownload), he, R, Ce ? ((_s = (Es = n == null ? void 0 : n.job) == null ? void 0 : Es.crop) == null ? void 0 : _s.startS) ?? 0 : 0, rt), st = _o((Ys = n == null ? void 0 : n.job) == null ? void 0 : Ys.source), Ve = st && ((Us = Pn(st)) == null ? void 0 : Us.id) === "youtube" ? na(st) : null, Mn = Vo(Ve), At = qc(he, R, ((Ps = (Rs = n == null ? void 0 : n.job) == null ? void 0 : Rs.crop) == null ? void 0 : Ps.startS) ?? 0, rt), Je = !!Ve, lt = Je ? At.player : Mt, at = Ji(), tn = j(null), re = nu({ forcedVoice: t.voice ?? null, recordingId: ie, model: ce, rows: he, lenS: R, ended: !!ie && !fe, cred: e.cred, langs: at, srcLang: q, canTranslate: !!(n != null && n.allowTranslate), pickedLang: ne, setPickedLang: Z, side: s && !te ? tu : void 0, hearOriginal: V, timed: !!Ve, stockVoices: u && !Re, stickyPicker: u, pickerBusy: tn.current }), gn = j(null);
5866
+ !Ve || !Me || Date.now() - ue.current < 1e4 || (ue.current = Date.now(), t.reread());
5867
+ }, [Ve, Me, C == null ? void 0 : C.state, C == null ? void 0 : C.processedS, o]);
5868
+ const ae = Tr(($ == null ? void 0 : $.state) ?? ((zs = n == null ? void 0 : n.job) == null ? void 0 : zs.state) ?? (e.listen ? (L == null ? void 0 : L.state) === "finalized" ? "done" : L != null && L.state ? "transcribing" : void 0 : void 0)), fe = !!ie && (ae === "transcribing" || ae === "queued"), Ye = u && !r && (!n || (fe || ae === "cropping") && he.length === 0), U = fe ? ($ == null ? void 0 : $.pct) ?? 0 : 100, R = Hl(n == null ? void 0 : n.job, $) ?? (L == null ? void 0 : L.mediaDurationS) ?? null, q = ((Is = ce.segments.values().next().value) == null ? void 0 : Is.language) ?? (L == null ? void 0 : L.spokenLanguage) ?? null, se = n != null && n.sharedBy ? `Shared by ${n.sharedBy}` : "", de = ((Cs = (Os = (bs = n == null ? void 0 : n.job) == null ? void 0 : bs.source) == null ? void 0 : Os.name) == null ? void 0 : Cs.trim()) || null, be = n ? ((xs = n.name) == null ? void 0 : xs.trim()) || de : null, Ne = !!((Ss = n == null ? void 0 : n.job) != null && Ss.hasAudio), Le = (Ds = n == null ? void 0 : n.job) == null ? void 0 : Ds.source, Oe = !Ne && !!Le && (Le.kind !== "url" || Le.bytes != null) && (ae === "transcribing" || ae === "queued" || ae === "done"), He = ie && (n != null && n.allowDownload) && Ne ? fo(e.origin, ie, e.cred) : null, $e = !!Le && (Le.kind !== "url" || Le.bytes != null), ut = Hu(He && $e ? He : null), it = He && (!$e || ut === "yes") ? He : He && ut === "unknown" ? null : ie && (n != null && n.allowDownload) && (Oe || Ne && $e) ? xn(e.origin, ie, "source", e.cred) : null, pt = he[he.length - 1], Ge = pt ? ((As = pt.words[pt.words.length - 1]) == null ? void 0 : As.end) ?? pt.start : 0, rt = u && fe ? Math.max(Ge, ($ == null ? void 0 : $.processedS) ?? 0) : null, Mt = Kc(it, (Ne || Oe) && !!(n != null && n.allowDownload), he, R, Oe ? ((_s = (Es = n == null ? void 0 : n.job) == null ? void 0 : Es.crop) == null ? void 0 : _s.startS) ?? 0 : 0, rt), st = _o((Ys = n == null ? void 0 : n.job) == null ? void 0 : Ys.source), Be = st && ((Us = Pn(st)) == null ? void 0 : Us.id) === "youtube" ? na(st) : null, Mn = Bo(Be), At = qc(he, R, ((Ps = (Rs = n == null ? void 0 : n.job) == null ? void 0 : Rs.crop) == null ? void 0 : Ps.startS) ?? 0, rt), Je = !!Be, lt = Je ? At.player : Mt, at = Ji(), tn = z(null), re = nu({ forcedVoice: t.voice ?? null, recordingId: ie, model: ce, rows: he, lenS: R, ended: !!ie && !fe, cred: e.cred, langs: at, srcLang: q, canTranslate: !!(n != null && n.allowTranslate), pickedLang: ne, setPickedLang: Z, side: s && !te ? tu : void 0, hearOriginal: B, timed: !!Be, stockVoices: u && !Re, stickyPicker: u, pickerBusy: tn.current }), gn = z(null);
5850
5869
  S(() => {
5851
5870
  !ie || gn.current === J || (gn.current = J, G(J));
5852
5871
  }, [J, ie]);
5853
- const z = Je ? At.player : re.on ? re.player : lt;
5872
+ const k = Je ? At.player : re.on ? re.player : lt;
5854
5873
  S(() => {
5855
5874
  if (Je) {
5856
5875
  re.player.pause();
@@ -5858,18 +5877,18 @@ function Vu(t) {
5858
5877
  }
5859
5878
  (re.on ? lt : re.player).pause();
5860
5879
  }, [re.on, Je]);
5861
- const Wn = ze(() => he.filter((v) => v.sentenceId != null).map((v, me, Pe) => {
5880
+ const Wn = ze(() => he.filter((w) => w.sentenceId != null).map((w, me, Pe) => {
5862
5881
  var We;
5863
- return { sid: v.sentenceId, start: v.start, end: ((We = Pe[me + 1]) == null ? void 0 : We.start) ?? Ht(v, v.start, v.start + 4) };
5864
- }), [he]), Et = hl({ on: Je && re.on, lines: Wn, clips: re.clips, t: z.t, playing: z.playing, muted: z.muted }), _t = !!J && (Ie || re.relang || re.on && Et.missing != null);
5882
+ return { sid: w.sentenceId, start: w.start, end: ((We = Pe[me + 1]) == null ? void 0 : We.start) ?? Ht(w, w.start, w.start + 4) };
5883
+ }), [he]), Et = hl({ on: Je && re.on, lines: Wn, clips: re.clips, t: k.t, playing: k.playing, muted: k.muted }), _t = !!J && (Ie || re.relang || re.on && Et.missing != null);
5865
5884
  tn.current = _t ? J : null, S(() => {
5866
5885
  Je && re.on && Et.sid != null && re.setNear(Et.sid);
5867
5886
  }, [Et.sid, Je, re.on]), Gc([lt, re.player], re.sampling);
5868
- const Yt = j(null);
5887
+ const Yt = z(null);
5869
5888
  S(() => {
5870
- fe && !z.playing && Yt.current && (Yt.current.scrollTop = Yt.current.scrollHeight);
5889
+ fe && !k.playing && Yt.current && (Yt.current.scrollTop = Yt.current.scrollHeight);
5871
5890
  }, [fe, he.length]);
5872
- const Ft = iu(Yt, he, p, T, y), fn = /* @__PURE__ */ i(su, { open: p, q: T, onQ: N, onClose: () => y(!1), hits: Ft, desk: s, inline: s }), qe = Wo({ name: n == null ? void 0 : n.name, sourceName: (Qs = ($s = n == null ? void 0 : n.job) == null ? void 0 : $s.source) == null ? void 0 : Qs.name, ytTitle: Mn, url: ((Vs = (Bs = n == null ? void 0 : n.job) == null ? void 0 : Bs.source) == null ? void 0 : Vs.kind) === "url" ? n.job.source.url : t.src ?? null, id: o }), ot = !!(n != null && n.allowDownload), nn = !!(n != null && n.allowExport), mt = re.readLang, gt = mt ? ((Hs = at == null ? void 0 : at.languages.find((v) => v.code === mt)) == null ? void 0 : Hs.name) ?? mt.toUpperCase() : null, Zt = async () => {
5891
+ const Zt = iu(Yt, he, p, T, y), fn = /* @__PURE__ */ i(su, { open: p, q: T, onQ: N, onClose: () => y(!1), hits: Zt, desk: s, inline: s }), qe = Wo({ name: n == null ? void 0 : n.name, sourceName: (Qs = ($s = n == null ? void 0 : n.job) == null ? void 0 : $s.source) == null ? void 0 : Qs.name, ytTitle: Mn, url: ((Bs = (Vs = n == null ? void 0 : n.job) == null ? void 0 : Vs.source) == null ? void 0 : Bs.kind) === "url" ? n.job.source.url : t.src ?? null, id: o }), ot = !!(n != null && n.allowDownload), nn = !!(n != null && n.allowExport), mt = re.readLang, gt = mt ? ((Hs = at == null ? void 0 : at.languages.find((w) => w.code === mt)) == null ? void 0 : Hs.name) ?? mt.toUpperCase() : null, Gt = async () => {
5873
5892
  if (ie)
5874
5893
  try {
5875
5894
  if (mt && re.canSpeak) {
@@ -5880,211 +5899,211 @@ function Vu(t) {
5880
5899
  b(`Preparing ${qe} as MP3 — the download starts when it is ready.`), await Wl(xn(e.origin, ie, "delivery", e.cred)), b(`Downloading ${qe}.`);
5881
5900
  return;
5882
5901
  }
5883
- Vr(xn(e.origin, ie, "source", e.cred)), b(`Downloading ${qe} — the full audio, since the transcript is still being written.`);
5884
- } catch (v) {
5885
- throw M(It(v)), v;
5902
+ Br(xn(e.origin, ie, "source", e.cred)), b(`Downloading ${qe} — the full audio, since the transcript is still being written.`);
5903
+ } catch (w) {
5904
+ throw M(bt(w)), w;
5886
5905
  }
5887
- }, dt = (v) => {
5906
+ }, dt = (w) => {
5888
5907
  if (!ie) return;
5889
- const me = Sr.find((We) => We.key === v).name, Pe = gt ? ` in ${gt}` : "";
5890
- return Fl(e, ie, v, { lang: mt }).then(() => b(fe ? `${me} exported${Pe} for the first ${he.length} segments — the rest is still transcribing.` : `${me} exported${Pe}.`)).catch((We) => {
5891
- throw M(It(We)), We;
5908
+ const me = Sr.find((We) => We.key === w).name, Pe = gt ? ` in ${gt}` : "";
5909
+ return Fl(e, ie, w, { lang: mt }).then(() => b(fe ? `${me} exported${Pe} for the first ${he.length} segments — the rest is still transcribing.` : `${me} exported${Pe}.`)).catch((We) => {
5910
+ throw M(bt(We)), We;
5892
5911
  });
5893
- }, rn = fe ? "MORE TO COME…" : "END OF TRANSCRIPT", ct = fe ? "var(--brand)" : "var(--ink-28)", sn = Vl($, he.length), bt = z.has && (!re.relang || !!Ve), Ze = j(z);
5894
- Ze.current = z;
5895
- const Ut = `${J ?? ""}|${re.on ? "voice" : "source"}`, wt = j({ key: Ut, idx: 0, t: 0, playing: !1, until: 0 });
5912
+ }, rn = fe ? "MORE TO COME…" : "END OF TRANSCRIPT", ct = fe ? "var(--brand)" : "var(--ink-28)", sn = Bl($, he.length), Ot = k.has && (!re.relang || !!Be), Ze = z(k);
5913
+ Ze.current = k;
5914
+ const Ut = `${J ?? ""}|${re.on ? "voice" : "source"}`, vt = z({ key: Ut, idx: 0, t: 0, playing: !1, until: 0 });
5896
5915
  S(() => {
5897
- const v = wt.current;
5898
- if (v.key !== Ut && (v.key = Ut, v.until = Date.now() + 15e3), !Je) {
5899
- if (!v.until) {
5900
- v.idx = z.idx, v.t = z.t, v.playing = z.playing;
5916
+ const w = vt.current;
5917
+ if (w.key !== Ut && (w.key = Ut, w.until = Date.now() + 15e3), !Je) {
5918
+ if (!w.until) {
5919
+ w.idx = k.idx, w.t = k.t, w.playing = k.playing;
5901
5920
  return;
5902
5921
  }
5903
- if (Date.now() > v.until) {
5904
- v.until = 0;
5922
+ if (Date.now() > w.until) {
5923
+ w.until = 0;
5905
5924
  return;
5906
5925
  }
5907
- !z.has || re.relang || (v.until = 0, Math.abs(z.t - v.t) > 0.5 && (z.seekFrac && z.dur > 0 ? z.seekFrac(v.t / z.dur) : z.seekRow(v.idx)), v.playing && !z.playing && B === "listen" && (et.current = !0, z.toggle()));
5926
+ !k.has || re.relang || (w.until = 0, Math.abs(k.t - w.t) > 0.5 && (k.seekFrac && k.dur > 0 ? k.seekFrac(w.t / k.dur) : k.seekRow(w.idx)), w.playing && !k.playing && V === "listen" && (et.current = !0, k.toggle()));
5908
5927
  }
5909
5928
  });
5910
- const Rt = j(!1), et = j(!1);
5929
+ const Rt = z(!1), et = z(!1);
5911
5930
  u && (Ei.video = !0);
5912
- const [pn, Ot] = k(!1), [Fn, Zn] = k(!1);
5931
+ const [pn, Ct] = j(!1), [Fn, Zn] = j(!1);
5913
5932
  S(() => {
5914
- if (!u || Rt.current || !bt || !te || Ye || t.autoplay === !1) return;
5933
+ if (!u || Rt.current || !Ot || !te || Ye || t.autoplay === !1) return;
5915
5934
  Rt.current = !0;
5916
- const v = (We) => {
5917
- Ze.current.playing || et.current || (Ze.current.toggle(), We > 0 && setTimeout(() => v(We - 1), 1500));
5935
+ const w = (We) => {
5936
+ Ze.current.playing || et.current || (Ze.current.toggle(), We > 0 && setTimeout(() => w(We - 1), 1500));
5918
5937
  }, me = () => {
5919
- Ze.current.muted || Ze.current.toggleMute(), Ot(!0), v(3);
5938
+ Ze.current.muted || Ze.current.toggleMute(), Ct(!0), w(3);
5920
5939
  }, Pe = Ze.current;
5921
5940
  if (!Pe.autoplay || t.startMuted) {
5922
5941
  me();
5923
5942
  return;
5924
5943
  }
5925
5944
  Pe.autoplay().then((We) => {
5926
- We === !1 ? Ot(!0) : We == null && !et.current && me();
5945
+ We === !1 ? Ct(!0) : We == null && !et.current && me();
5927
5946
  });
5928
- }, [u, bt, te, Ye]);
5929
- const Ct = j(!1), Gn = () => {
5930
- pn && (Ot(!1), Ct.current = !0, setTimeout(() => {
5931
- Ct.current = !1;
5947
+ }, [u, Ot, te, Ye]);
5948
+ const xt = z(!1), Gn = () => {
5949
+ pn && (Ct(!1), xt.current = !0, setTimeout(() => {
5950
+ xt.current = !1;
5932
5951
  }, 500), Ze.current.muted && Ze.current.toggleMute());
5933
5952
  }, mn = () => {
5934
- if (Ct.current) {
5935
- Ct.current = !1;
5953
+ if (xt.current) {
5954
+ xt.current = !1;
5936
5955
  return;
5937
5956
  }
5938
- Ot(!1), Ze.current.toggleMute();
5939
- }, xt = () => {
5940
- if (Ct.current) {
5941
- Ct.current = !1;
5957
+ Ct(!1), Ze.current.toggleMute();
5958
+ }, wt = () => {
5959
+ if (xt.current) {
5960
+ xt.current = !1;
5942
5961
  return;
5943
5962
  }
5944
5963
  et.current = !0, Ze.current.toggle();
5945
- }, Nn = (v) => /* @__PURE__ */ i(Vc, { player: z, size: v }), an = !!ie && !fe, [P, xe] = k(!1);
5964
+ }, Nn = (w) => /* @__PURE__ */ i(Bc, { player: k, size: w }), an = !!ie && !fe, [P, xe] = j(!1);
5946
5965
  S(() => {
5947
5966
  if (!Ie) {
5948
5967
  xe(!1);
5949
5968
  return;
5950
5969
  }
5951
- const v = setTimeout(() => xe(!0), 180);
5952
- return () => clearTimeout(v);
5970
+ const w = setTimeout(() => xe(!0), 180);
5971
+ return () => clearTimeout(w);
5953
5972
  }, [Ie]);
5954
- const Qe = P ? Ae : J, St = ac(ie, J, he, ke), Pt = wc(vc(L), ie, re.readLang), Na = ot || nn, ya = (((Fs = (Ws = n == null ? void 0 : n.job) == null ? void 0 : Ws.crop) == null ? void 0 : Fs.startS) ?? 0) + Bt(z, he), vt = B === "listen", $t = vt && (!!Ve || u), Ta = (v) => {
5955
- lt.pause(), re.player.pause(), Y(v), v === "read" && te && (cn(!1), K(!1));
5973
+ const Qe = P ? Ae : J, St = ac(ie, J, he, ke), Pt = vc(wc(L), ie, re.readLang), Na = ot || nn, ya = (((Fs = (Ws = n == null ? void 0 : n.job) == null ? void 0 : Ws.crop) == null ? void 0 : Fs.startS) ?? 0) + Vt(k, he), Lt = V === "listen", $t = Lt && (!!Be || u), Ta = (w) => {
5974
+ lt.pause(), re.player.pause(), Y(w), w === "read" && te && (cn(!1), K(!1));
5956
5975
  };
5957
5976
  S(() => {
5958
- vt || (lt.playing && lt.pause(), re.player.playing && re.player.pause());
5959
- }, [vt, lt.playing, re.player.playing]);
5960
- const Ue = re.barChip, Gt = ea(Ue.label), Zr = /* @__PURE__ */ i(kr, { value: B, onChange: Ta, bordered: !1, options: Nu(Gt, !!Ve) }), qt = [...an ? [{ key: "summary", label: "Summary" }] : [], ...Na ? [{ key: "export", label: "Export" }] : []], Gr = (v) => /* @__PURE__ */ g(be, { children: [
5961
- v === "summary" && an && /* @__PURE__ */ i(Lc, { s: Pt }),
5962
- v === "export" && /* @__PURE__ */ i(Tc, { audio: ot ? { name: qe, meta: mt && re.canSpeak || Ne ? `MP3${R ? ` · ${jt(R)}` : ""}` : "ORIGINAL AUDIO", onClick: Zt } : null, formats: nn, onExport: dt })
5963
- ] }), wa = (v) => /* @__PURE__ */ i(nc, { index: z.idx, total: Math.max(1, he.length), frac: z.dur > 0 ? Math.min(1, z.t / z.dur) : 0, glideMs: z.wordSync ? 0 : 220, atLabel: jt(z.t), durLabel: jt(z.dur), stepLabel: v ? `${z.idx + 1} / ${he.length}` : "", onSeek: re.relang ? Xc : z.seekRow, onSeekFrac: re.relang ? void 0 : z.seekFrac, onScrubStart: z.hold, onScrubEnd: z.release }), qr = {
5977
+ Lt || (lt.playing && lt.pause(), re.player.playing && re.player.pause());
5978
+ }, [Lt, lt.playing, re.player.playing]);
5979
+ const Ue = re.barChip, qt = ea(Ue.label), Zr = /* @__PURE__ */ i(kr, { value: V, onChange: Ta, bordered: !1, options: Nu(qt, !!Be) }), Kt = [...an ? [{ key: "summary", label: "Summary" }] : [], ...Na ? [{ key: "export", label: "Export" }] : []], Gr = (w) => /* @__PURE__ */ g(Ce, { children: [
5980
+ w === "summary" && an && /* @__PURE__ */ i(Lc, { s: Pt }),
5981
+ w === "export" && /* @__PURE__ */ i(Tc, { audio: ot ? { name: qe, meta: mt && re.canSpeak || Ne ? `MP3${R ? ` · ${zt(R)}` : ""}` : "ORIGINAL AUDIO", onClick: Gt } : null, formats: nn, onExport: dt })
5982
+ ] }), va = (w) => /* @__PURE__ */ i(nc, { index: k.idx, total: Math.max(1, he.length), frac: k.dur > 0 ? Math.min(1, k.t / k.dur) : 0, glideMs: k.wordSync ? 0 : 220, atLabel: zt(k.t), durLabel: zt(k.dur), stepLabel: w ? `${k.idx + 1} / ${he.length}` : "", onSeek: re.relang ? Xc : k.seekRow, onSeekFrac: re.relang ? void 0 : k.seekFrac, onScrubStart: k.hold, onScrubEnd: k.release }), qr = {
5964
5983
  live: !1,
5965
5984
  atEdge: !1,
5966
5985
  edgeFrac: null,
5967
- readyFrac: rt != null && z.dur > 0 ? Math.min(1, rt / z.dur) : null,
5968
- pct: z.dur > 0 ? Math.min(100, Math.round(z.t / z.dur * 1e3) / 10) : 0,
5969
- atLabel: jt(z.t),
5970
- labelAt: (v) => jt(v * z.dur),
5971
- endLabel: jt(z.dur),
5972
- onSeek: (v) => {
5986
+ readyFrac: rt != null && k.dur > 0 ? Math.min(1, rt / k.dur) : null,
5987
+ pct: k.dur > 0 ? Math.min(100, Math.round(k.t / k.dur * 1e3) / 10) : 0,
5988
+ atLabel: zt(k.t),
5989
+ labelAt: (w) => zt(w * k.dur),
5990
+ endLabel: zt(k.dur),
5991
+ onSeek: (w) => {
5973
5992
  var me;
5974
- re.relang || (me = z.seekFrac) == null || me.call(z, v);
5993
+ re.relang || (me = k.seekFrac) == null || me.call(k, w);
5975
5994
  }
5976
- }, [va, La] = oa(re.on && !!z.preparing && z.playing, 1500), qn = re.on && ((Zs = z.error) == null ? void 0 : Zs.code) === "voice_not_started", Kn = re.canSpeak && !re.error && !qn, yn = J ? ((Gs = at == null ? void 0 : at.languages.find((v) => v.code === J)) == null ? void 0 : Gs.name) ?? Ue.label : "", tt = te ? Uc({ lang: J, langName: yn, translating: Ie && !!J, translateFailed: Fe, voiceFailed: qn, relang: re.relang, starting: re.on ? z.starting : null, slowLine: va, lineSince: La }) : null, Jn = !!Ve && !!tt && (tt.kind === "translating" || tt.kind === "voice" && re.relang), Kr = !Jn || !tt ? null : tt.kind === "translating" ? `Translating into ${yn || "the new language"}…` : `Preparing the ${yn || "translated"} voice…`, Lt = !Jn && ((tt == null ? void 0 : tt.kind) === "voice" || (tt == null ? void 0 : tt.kind) === "starting"), Jr = Rr({ ...re.langList, keepOpen: !0, open: w === "lang", onClose: () => O("main") }), Xr = Ko(Q, re.on), ka = u && Xr.bed && ot && ie && (!fe || it) ? ai(e.origin, ie, e.cred) : null, es = al(ka, { t: Bt(z, he), playing: z.playing && !Lt && !(z.timed && z.preparing), muted: z.muted }), ja = u && Xr.speech && ot && ie && (!fe || it) ? ai(e.origin, ie, e.cred, "speech") : null, Xn = Wi(ja, { t: Bt(z, he), playing: !re.on && z.playing, muted: z.muted }), er = !re.on && Xn.on;
5995
+ }, [wa, La] = oa(re.on && !!k.preparing && k.playing, 1500), qn = re.on && ((Zs = k.error) == null ? void 0 : Zs.code) === "voice_not_started", Kn = re.canSpeak && !re.error && !qn, yn = J ? ((Gs = at == null ? void 0 : at.languages.find((w) => w.code === J)) == null ? void 0 : Gs.name) ?? Ue.label : "", tt = te ? Uc({ lang: J, langName: yn, translating: Ie && !!J, translateFailed: Fe, voiceFailed: qn, relang: re.relang, starting: re.on ? k.starting : null, slowLine: wa, lineSince: La }) : null, Jn = !!Be && !!tt && (tt.kind === "translating" || tt.kind === "voice" && re.relang), Kr = !Jn || !tt ? null : tt.kind === "translating" ? `Translating into ${yn || "the new language"}…` : `Preparing the ${yn || "translated"} voice…`, kt = !Jn && ((tt == null ? void 0 : tt.kind) === "voice" || (tt == null ? void 0 : tt.kind) === "starting"), Jr = Rr({ ...re.langList, keepOpen: !0, open: v === "lang", onClose: () => O("main") }), Xr = Ko(Q, re.on), ka = u && Xr.bed && ot && ie && (!fe || it) ? ai(e.origin, ie, e.cred) : null, es = al(ka, { t: Vt(k, he), playing: k.playing && !kt && !(k.timed && k.preparing), muted: k.muted }), ja = u && Xr.speech && ot && ie && (!fe || it) ? ai(e.origin, ie, e.cred, "speech") : null, Xn = Wi(ja, { t: Vt(k, he), playing: !re.on && k.playing, muted: k.muted }), er = !re.on && Xn.on;
5977
5996
  S(() => {
5978
- var v;
5979
- At.setVideoSound(!(Je && (re.on || er))), (v = Mt.silence) == null || v.call(Mt, !Je && er);
5997
+ var w;
5998
+ At.setVideoSound(!(Je && (re.on || er))), (w = Mt.silence) == null || w.call(Mt, !Je && er);
5980
5999
  }, [Je, re.on, er, it]);
5981
- const tr = ot ? re.on ? es : Xn.state : "unavailable", nr = we && Kn && !!J, za = nr ? [`Translated${re.hasClone ? Re ? ", cloned voices" : ", synthetic voices" : ""}`, !Q && ot && es !== "unavailable" ? "with background sound" : null].filter(Boolean).join(" ") : Q && tr !== "unavailable" ? "Original speech, background removed" : "Original sound", Ia = () => {
6000
+ const tr = ot ? re.on ? es : Xn.state : "unavailable", nr = ve && Kn && !!J, za = nr ? [`Translated${re.hasClone ? Re ? ", cloned voices" : ", synthetic voices" : ""}`, !Q && ot && es !== "unavailable" ? "with background sound" : null].filter(Boolean).join(" ") : Q && tr !== "unavailable" ? "Original speech, background removed" : "Original sound", Ia = () => {
5982
6001
  if ((tt == null ? void 0 : tt.kind) === "translateFailed") {
5983
6002
  G(J);
5984
6003
  return;
5985
6004
  }
5986
- et.current = !0, z.toggle();
6005
+ et.current = !0, k.toggle();
5987
6006
  }, ba = () => {
5988
- const v = z.idx;
5989
- z.pause(), Z(null), et.current = !0, lt.playRow(v);
5990
- }, ts = { prevOn: z.idx > 0, nextOn: z.idx < he.length - 1, onPrev: z.prev, onNext: z.next, playing: z.playing, playable: bt, playTitle: re.playTitle ?? (z.playing ? "Pause" : "Play"), onPlay: () => {
5991
- et.current = !0, z.toggle();
5992
- }, busy: re.relang && !Ve || Lt };
5993
- fl(bt && vt ? { playing: z.playing, toggle: () => {
5994
- et.current = !0, z.toggle();
5995
- }, next: z.next, prev: z.prev } : null, Oe);
5996
- const rr = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, sr = (v, me) => !Ue.can || !x.language ? null : u ? /* @__PURE__ */ g("button", { type: "button", className: "gfull__btn", title: _t ? `${Ue.label ?? Ue.code}: still being prepared` : Ue.label ?? Ue.code, "aria-label": `Language: ${Ue.label ?? Ue.code}`, "aria-busy": _t || void 0, onClick: () => {
6007
+ const w = k.idx;
6008
+ k.pause(), Z(null), et.current = !0, lt.playRow(w);
6009
+ }, ts = { prevOn: k.idx > 0, nextOn: k.idx < he.length - 1, onPrev: k.prev, onNext: k.next, playing: k.playing, playable: Ot, playTitle: re.playTitle ?? (k.playing ? "Pause" : "Play"), onPlay: () => {
6010
+ et.current = !0, k.toggle();
6011
+ }, busy: re.relang && !Be || kt };
6012
+ fl(Ot && Lt ? { playing: k.playing, toggle: () => {
6013
+ et.current = !0, k.toggle();
6014
+ }, next: k.next, prev: k.prev } : null, be);
6015
+ const rr = { background: "transparent", color: "#eef0f8", width: 74, justifyContent: "center", boxSizing: "border-box" }, sr = (w, me) => !Ue.can || !x.language ? null : u ? /* @__PURE__ */ g("button", { type: "button", className: "gfull__btn", title: _t ? `${Ue.label ?? Ue.code}: still being prepared` : Ue.label ?? Ue.code, "aria-label": `Language: ${Ue.label ?? Ue.code}`, "aria-busy": _t || void 0, onClick: () => {
5997
6016
  I(!1), Ue.onClick();
5998
6017
  }, style: { position: "relative" }, children: [
5999
6018
  /* @__PURE__ */ i("span", { style: { fontSize: me === "sm" ? 17 : 21, lineHeight: 1 }, children: Ue.flag }),
6000
6019
  _t && /* @__PURE__ */ i("span", { style: { position: "absolute", right: 2, bottom: 2, display: "flex", borderRadius: 999, background: "rgba(5,6,21,.7)", padding: 1 }, children: /* @__PURE__ */ i(ht, { size: 11, color: "#eef0f8", track: "rgba(255,255,255,.25)" }) })
6001
- ] }) : /* @__PURE__ */ i(Rn, { flag: Ue.flag, code: Ue.code, label: Ue.label, bordered: !1, size: me, onClick: Ue.onClick, style: v }), ns = { on: !1, title: "Voices", onClick: () => {
6002
- }, busy: re.voiceWaiting || Lt }, [Oa, Ca] = k(!1);
6020
+ ] }) : /* @__PURE__ */ i(Rn, { flag: Ue.flag, code: Ue.code, label: Ue.label, bordered: !1, size: me, onClick: Ue.onClick, style: w }), ns = { on: !1, title: "Voices", onClick: () => {
6021
+ }, busy: re.voiceWaiting || kt }, [Oa, Ca] = j(!1);
6003
6022
  S(() => {
6004
- z.t > 0.3 && Ca(!0);
6005
- }, [z.t]);
6006
- const xa = !Ve && u && ie && (n != null && n.allowDownload) && !fe && ((qs = n == null ? void 0 : n.job) == null ? void 0 : qs.hasVideo) !== !1 ? /* @__PURE__ */ i(li, { src: xn(e.origin, ie, "video", e.cred), t: Bt(z, he), playing: z.playing && !Lt, seekN: z.seekN, onToggle: z.has ? xt : void 0 }, ie) : null, Qt = !Ve && u && st && Ao(st) ? st : null, Tn = Qt ? Vi(Qt) : null, rs = ze(() => Tn ? Bo(Tn) : void 0, [Tn]), ir = Qt && ((Ks = Pn(Qt)) == null ? void 0 : Ks.id) === "facebook" ? Qt : null, Sa = ir ? /* @__PURE__ */ i(Po, { url: ir, t: Bt(z, he) + (((Xs = (Js = n == null ? void 0 : n.job) == null ? void 0 : Js.crop) == null ? void 0 : Xs.startS) ?? 0), playing: z.playing && !Lt, seekN: z.seekN, onToggle: z.has ? xt : void 0 }, ir) : rs ? /* @__PURE__ */ i(li, { setup: rs, seekOver: 1, t: Bt(z, he) + (((ti = (ei = n == null ? void 0 : n.job) == null ? void 0 : ei.crop) == null ? void 0 : ti.startS) ?? 0), playing: z.playing && !Lt, seekN: z.seekN, onToggle: z.has ? xt : void 0 }, Tn) : Qt ? /* @__PURE__ */ i(Yo, { url: Qt, t: Bt(z, he) + (((ri = (ni = n == null ? void 0 : n.job) == null ? void 0 : ni.crop) == null ? void 0 : ri.startS) ?? 0), playing: z.playing && !Lt, seekN: z.seekN, title: qe }) : null, Da = z.has ? /* @__PURE__ */ g("div", { className: "txyt vsp-follow", children: [
6007
- /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: xt, style: { cursor: "pointer" } }),
6008
- /* @__PURE__ */ i("div", { className: `txyt__paused${z.playing ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Xt, { size: 44 }) }) })
6009
- ] }) : null, ss = Ve ? /* @__PURE__ */ g(be, { children: [
6010
- /* @__PURE__ */ i($c, { ytId: Ve, title: qe, t: ya, playing: z.playing && !Lt, waiting: re.on && !!z.timed && !!z.preparing, seekN: z.seekN, onTime: (v) => {
6023
+ k.t > 0.3 && Ca(!0);
6024
+ }, [k.t]);
6025
+ const xa = !Be && u && ie && (n != null && n.allowDownload) && !fe && ((qs = n == null ? void 0 : n.job) == null ? void 0 : qs.hasVideo) !== !1 ? /* @__PURE__ */ i(li, { src: xn(e.origin, ie, "video", e.cred), t: Vt(k, he), playing: k.playing && !kt, seekN: k.seekN, onToggle: k.has ? wt : void 0 }, ie) : null, Qt = !Be && u && st && Ao(st) ? st : null, Tn = Qt ? Bi(Qt) : null, rs = ze(() => Tn ? Vo(Tn) : void 0, [Tn]), ir = Qt && ((Ks = Pn(Qt)) == null ? void 0 : Ks.id) === "facebook" ? Qt : null, Sa = ir ? /* @__PURE__ */ i(Po, { url: ir, t: Vt(k, he) + (((Xs = (Js = n == null ? void 0 : n.job) == null ? void 0 : Js.crop) == null ? void 0 : Xs.startS) ?? 0), playing: k.playing && !kt, seekN: k.seekN, onToggle: k.has ? wt : void 0 }, ir) : rs ? /* @__PURE__ */ i(li, { setup: rs, seekOver: 1, t: Vt(k, he) + (((ti = (ei = n == null ? void 0 : n.job) == null ? void 0 : ei.crop) == null ? void 0 : ti.startS) ?? 0), playing: k.playing && !kt, seekN: k.seekN, onToggle: k.has ? wt : void 0 }, Tn) : Qt ? /* @__PURE__ */ i(Yo, { url: Qt, t: Vt(k, he) + (((ri = (ni = n == null ? void 0 : n.job) == null ? void 0 : ni.crop) == null ? void 0 : ri.startS) ?? 0), playing: k.playing && !kt, seekN: k.seekN, title: qe, onToggle: k.has ? wt : void 0 }) : null, Da = k.has ? /* @__PURE__ */ g("div", { className: "txyt vsp-follow", children: [
6026
+ /* @__PURE__ */ i("div", { "aria-hidden": "true", className: "txyt__tap", onClick: wt, style: { cursor: "pointer" } }),
6027
+ /* @__PURE__ */ i("div", { className: `txyt__paused${k.playing ? "" : " txyt__paused--on"}`, "aria-hidden": "true", children: /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) }) })
6028
+ ] }) : null, ss = Be ? /* @__PURE__ */ g(Ce, { children: [
6029
+ /* @__PURE__ */ i($c, { ytId: Be, title: qe, t: ya, playing: k.playing && !kt, waiting: re.on && !!k.timed && !!k.preparing, seekN: k.seekN, onTime: (w) => {
6011
6030
  var me, Pe, We;
6012
- return (We = z.videoAt) == null ? void 0 : We.call(z, v - (((Pe = (me = n == null ? void 0 : n.job) == null ? void 0 : me.crop) == null ? void 0 : Pe.startS) ?? 0));
6013
- }, onToggle: z.has ? xt : void 0, onAd: Zn, lead: Je ? At.lead : void 0 }),
6031
+ return (We = k.videoAt) == null ? void 0 : We.call(k, w - (((Pe = (me = n == null ? void 0 : n.job) == null ? void 0 : me.crop) == null ? void 0 : Pe.startS) ?? 0));
6032
+ }, onToggle: k.has ? wt : void 0, onAd: Zn, lead: Je ? At.lead : void 0 }),
6014
6033
  /* @__PURE__ */ g("div", { className: "vsp-poster", "aria-hidden": "true", style: { opacity: Oa ? 0 : 1 }, children: [
6015
- /* @__PURE__ */ i("div", { className: "vsp-poster__img", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Ve}/hqdefault.jpg)` } }),
6016
- /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Xt, { size: 44 }) })
6034
+ /* @__PURE__ */ i("div", { className: "vsp-poster__img", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Be}/hqdefault.jpg)` } }),
6035
+ /* @__PURE__ */ i("span", { className: "txyt__pausedplay", children: /* @__PURE__ */ i(Wt, { size: 44 }) })
6017
6036
  ] })
6018
- ] }) : u ? /* @__PURE__ */ g(be, { children: [
6037
+ ] }) : u ? /* @__PURE__ */ g(Ce, { children: [
6019
6038
  /* @__PURE__ */ i("div", { className: "vsp-idle__pic vsp-idle__pic--brand" }),
6020
6039
  Da,
6021
6040
  Sa,
6022
6041
  xa
6023
- ] }) : null, is = $t && Ve && !te ? /* @__PURE__ */ i(kc, { ytId: Ve, title: qe, radius: 14, large: !0, style: s ? void 0 : { margin: "8px 20px 2px" }, picture: ss, children: /* @__PURE__ */ i(gu, { pos: qr, transport: ts, chip: sr({ ...rr, width: 64, height: 28, minHeight: 28, padding: "0 8px" }, "sm"), voices: ns, onFull: () => {
6042
+ ] }) : null, is = $t && Be && !te ? /* @__PURE__ */ i(kc, { ytId: Be, title: qe, radius: 14, large: !0, style: s ? void 0 : { margin: "8px 20px 2px" }, picture: ss, children: /* @__PURE__ */ i(gu, { pos: qr, transport: ts, chip: sr({ ...rr, width: 64, height: 28, minHeight: 28, padding: "0 8px" }, "sm"), voices: ns, onFull: () => {
6024
6043
  cn(!0), K(!0);
6025
- }, copied: null }) }) : null, Xe = z.wordSync ? Kl(he, z.idx, z.t) ? he[z.idx] : void 0 : he[z.idx];
6026
- for (const v of he) for (const [me, Pe] of Object.entries(v.translations)) Pe && A.current.set(`${v.sentenceId ?? v.start}|${me}`, Pe);
6027
- const as = (v, me) => v.translations[me] || A.current.get(`${v.sentenceId ?? v.start}|${me}`) || null, ar = (v, me) => !v || !me || v.language === me || !!as(v, me), kt = ar(Xe, J) ? J : ar(Xe, F.current) ? F.current : J;
6028
- Xe && ar(Xe, kt) && (F.current = kt);
6029
- const os = Xe && kt && Xe.language !== kt ? as(Xe, kt) : null, Aa = Xe && os && kt && !Xe.translations[kt] ? Object.assign([...he], { [z.idx]: { ...Xe, translations: { ...Xe.translations, [kt]: os } } }) : he, wn = Xe ? la(Aa, z.idx, kt) : [], vn = Te ? Te === "on" : !u || re.on || !Qe || Qe === q, ls = vn ? vi(z, z.idx, wn) : null, cs = wn.map((v, me) => ({ t: v.text, sp: me < wn.length - 1 ? " " : "", dim: ls != null && me > ls })), Ln = pe ? pe === "on" : u ? !1 : Ol(ce, he, L == null ? void 0 : L.settings), us = { lang: J, subtitles: Se, speakerLabels: Ln, wordHighlight: vn, translateAudio: we, voices: Re ? "cloned" : "synthetic", removeBackground: Q }, Ea = JSON.stringify(us), kn = j(t.onSettingsChange);
6044
+ }, copied: null }) }) : null, Xe = k.wordSync ? Kl(he, k.idx, k.t) ? he[k.idx] : void 0 : he[k.idx];
6045
+ for (const w of he) for (const [me, Pe] of Object.entries(w.translations)) Pe && A.current.set(`${w.sentenceId ?? w.start}|${me}`, Pe);
6046
+ const as = (w, me) => w.translations[me] || A.current.get(`${w.sentenceId ?? w.start}|${me}`) || null, ar = (w, me) => !w || !me || w.language === me || !!as(w, me), jt = ar(Xe, J) ? J : ar(Xe, F.current) ? F.current : J;
6047
+ Xe && ar(Xe, jt) && (F.current = jt);
6048
+ const os = Xe && jt && Xe.language !== jt ? as(Xe, jt) : null, Aa = Xe && os && jt && !Xe.translations[jt] ? Object.assign([...he], { [k.idx]: { ...Xe, translations: { ...Xe.translations, [jt]: os } } }) : he, vn = Xe ? la(Aa, k.idx, jt) : [], wn = Te ? Te === "on" : !u || re.on || !Qe || Qe === q, ls = wn ? wi(k, k.idx, vn) : null, cs = vn.map((w, me) => ({ t: w.text, sp: me < vn.length - 1 ? " " : "", dim: ls != null && me > ls })), Ln = pe ? pe === "on" : u ? !1 : Ol(ce, he, L == null ? void 0 : L.settings), us = { lang: J, subtitles: Se, speakerLabels: Ln, wordHighlight: wn, translateAudio: ve, voices: Re ? "cloned" : "synthetic", removeBackground: Q }, Ea = JSON.stringify(us), kn = z(t.onSettingsChange);
6030
6049
  kn.current = t.onSettingsChange, S(() => {
6031
- var v;
6032
- (v = kn.current) == null || v.call(kn, us);
6050
+ var w;
6051
+ (w = kn.current) == null || w.call(kn, us);
6033
6052
  }, [Ea]);
6034
- const jn = Xe && Xe.speaker >= 0 && Ln ? Qr(ce, Xe.speaker) : null, [_a, ds] = k(!1), [or, hs] = k(null), [Ya, Ms] = k(null), lr = j(void 0);
6053
+ const jn = Xe && Xe.speaker >= 0 && Ln ? Qr(ce, Xe.speaker) : null, [_a, ds] = j(!1), [or, hs] = j(null), [Ya, Ms] = j(null), lr = z(void 0);
6035
6054
  S(() => () => window.clearTimeout(lr.current), []);
6036
- const cr = j(void 0);
6055
+ const cr = z(void 0);
6037
6056
  S(() => () => window.clearTimeout(cr.current), []);
6038
- const gs = (v) => {
6039
- if (t.shareUrl) return t.shareUrl(v);
6057
+ const gs = (w) => {
6058
+ if (t.shareUrl) return t.shareUrl(w);
6040
6059
  const me = new URL(window.location.href);
6041
- return v != null && v > 0 ? me.searchParams.set("t", String(v)) : me.searchParams.delete("t"), me.href;
6042
- }, zn = j(l.startAt), ur = (v) => {
6043
- if (z.seekFrac && z.dur > 0) {
6044
- z.seekFrac(Math.min(1, v / z.dur));
6060
+ return w != null && w > 0 ? me.searchParams.set("t", String(w)) : me.searchParams.delete("t"), me.href;
6061
+ }, zn = z(l.startAt), ur = (w) => {
6062
+ if (k.seekFrac && k.dur > 0) {
6063
+ k.seekFrac(Math.min(1, w / k.dur));
6045
6064
  return;
6046
6065
  }
6047
6066
  let me = 0;
6048
- for (let Pe = 0; Pe < he.length; Pe++) he[Pe].start <= v && (me = Pe);
6049
- z.seekRow(me);
6050
- }, fs = j(!1);
6067
+ for (let Pe = 0; Pe < he.length; Pe++) he[Pe].start <= w && (me = Pe);
6068
+ k.seekRow(me);
6069
+ }, fs = z(!1);
6051
6070
  S(() => {
6052
- const v = zn.current;
6053
- v == null || fs.current || !z.has || he.length === 0 || (fs.current = !0, ur(v));
6054
- }, [z.has, he.length]), S(() => {
6055
- const v = zn.current;
6056
- v == null || !z.playing || (zn.current = null, Math.abs(z.t - v) > 2 && ur(v));
6057
- }, [z.playing]);
6058
- const Ua = (v) => {
6059
- et.current = !0, zn.current = null, ur(Math.max(0, v));
6071
+ const w = zn.current;
6072
+ w == null || fs.current || !k.has || he.length === 0 || (fs.current = !0, ur(w));
6073
+ }, [k.has, he.length]), S(() => {
6074
+ const w = zn.current;
6075
+ w == null || !k.playing || (zn.current = null, Math.abs(k.t - w) > 2 && ur(w));
6076
+ }, [k.playing]);
6077
+ const Ua = (w) => {
6078
+ et.current = !0, zn.current = null, ur(Math.max(0, w));
6060
6079
  };
6061
6080
  t.handle.current = {
6062
- seek: (v) => Ua(v),
6081
+ seek: (w) => Ua(w),
6063
6082
  play: () => {
6064
- et.current = !0, vt && !Ze.current.playing && Ze.current.toggle();
6083
+ et.current = !0, Lt && !Ze.current.playing && Ze.current.toggle();
6065
6084
  },
6066
6085
  pause: () => {
6067
6086
  et.current = !0, Ze.current.pause();
6068
6087
  },
6069
6088
  toggle: () => {
6070
- et.current = !0, (vt || Ze.current.playing) && Ze.current.toggle();
6089
+ et.current = !0, (Lt || Ze.current.playing) && Ze.current.toggle();
6071
6090
  },
6072
6091
  toggleMute: () => {
6073
- Ot(!1), Ze.current.toggleMute();
6092
+ Ct(!1), Ze.current.toggleMute();
6074
6093
  }
6075
6094
  }, S(() => () => {
6076
6095
  t.handle.current = null;
6077
6096
  }, []);
6078
- const ps = j(t.onPlayback);
6097
+ const ps = z(t.onPlayback);
6079
6098
  ps.current = t.onPlayback;
6080
- const ms = j(J);
6099
+ const ms = z(J);
6081
6100
  ms.current = J, S(() => {
6082
- let v = "";
6101
+ let w = "";
6083
6102
  const me = () => {
6084
6103
  const We = ps.current;
6085
6104
  if (!We) return;
6086
6105
  const Nt = Ze.current, ft = { t: Nt.t, dur: Nt.dur, playing: Nt.playing, idx: Nt.idx, seekN: Nt.seekN, lang: ms.current, muted: Nt.muted }, Cn = `${ft.t.toFixed(2)}|${ft.dur}|${ft.playing}|${ft.idx}|${ft.seekN}|${ft.lang}|${ft.muted}`;
6087
- Cn !== v && (v = Cn, We(ft));
6106
+ Cn !== w && (w = Cn, We(ft));
6088
6107
  };
6089
6108
  me();
6090
6109
  const Pe = window.setInterval(me, Qu);
@@ -6092,11 +6111,11 @@ function Vu(t) {
6092
6111
  }, []);
6093
6112
  const Ra = () => t.onShare ? t.onShare() : Hr(gs(null), qe, () => {
6094
6113
  window.clearTimeout(cr.current), ds(!0), cr.current = window.setTimeout(() => ds(!1), 2200);
6095
- }), Ns = (v, me, Pe) => {
6096
- const We = Sr.find((Cn) => Cn.key === v), Nt = or === v, ft = Ya === v;
6114
+ }), Ns = (w, me, Pe) => {
6115
+ const We = Sr.find((Cn) => Cn.key === w), Nt = or === w, ft = Ya === w;
6097
6116
  return /* @__PURE__ */ g("div", { className: "srow srow--tap", role: "button", "aria-busy": Nt || void 0, style: or && !Nt ? { opacity: 0.45, pointerEvents: "none" } : void 0, onClick: () => {
6098
- or || (hs(v), Promise.resolve().then(() => dt(v)).then(() => {
6099
- Ms(v), window.clearTimeout(lr.current), lr.current = window.setTimeout(() => Ms(null), 1600);
6117
+ or || (hs(w), Promise.resolve().then(() => dt(w)).then(() => {
6118
+ Ms(w), window.clearTimeout(lr.current), lr.current = window.setTimeout(() => Ms(null), 1600);
6100
6119
  }).catch(() => {
6101
6120
  }).finally(() => hs(null)));
6102
6121
  }, children: [
@@ -6113,32 +6132,32 @@ function Vu(t) {
6113
6132
  /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 18, sw: 1.8 }),
6114
6133
  "Back"
6115
6134
  ] })
6116
- ] }), In = /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), $a = { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO", export: "EXPORT" }[w], bn = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, dr = u ? /* @__PURE__ */ i(en, { open: ee, onClose: () => I(!1), title: $a, titleNode: w === "main" ? void 0 : Pa, doneLabel: Gt.done, kind: w === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(jr, { children: w === "lang" ? /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column" }, children: [
6135
+ ] }), In = /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 17, sw: 1.6, style: { flex: "none", color: "var(--ink-45)" } }), $a = { main: "SETTINGS", lang: "LANGUAGE", subs: "SUBTITLES", audio: "AUDIO", export: "EXPORT" }[v], bn = { display: "flex", flexDirection: "column", gap: 2, paddingBottom: 14 }, dr = u ? /* @__PURE__ */ i(en, { open: ee, onClose: () => I(!1), title: $a, titleNode: v === "main" ? void 0 : Pa, doneLabel: qt.done, kind: v === "main" ? "settings" : "settings vs-sheet--page", sticky: !0, children: /* @__PURE__ */ i(jr, { children: v === "lang" ? /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column" }, children: [
6117
6136
  /* @__PURE__ */ i("div", { style: { position: "sticky", top: 0, zIndex: 1, padding: "4px 14px 10px", background: "var(--vs-surface-raised)" }, children: Jr.search }),
6118
6137
  Jr.list
6119
- ] }) : w === "subs" ? /* @__PURE__ */ g("div", { style: bn, children: [
6138
+ ] }) : v === "subs" ? /* @__PURE__ */ g("div", { style: bn, children: [
6120
6139
  /* @__PURE__ */ g("div", { className: "srow", children: [
6121
6140
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6122
6141
  /* @__PURE__ */ i("div", { className: "srow__t", children: "Show subtitles" }),
6123
6142
  /* @__PURE__ */ i("div", { className: "srow__s", children: "Captions over the video" })
6124
6143
  ] }),
6125
- /* @__PURE__ */ i(Tt, { checked: Se, onChange: ve, label: "Show subtitles" })
6144
+ /* @__PURE__ */ i(Tt, { checked: Se, onChange: we, label: "Show subtitles" })
6126
6145
  ] }),
6127
6146
  /* @__PURE__ */ g("div", { className: "srow", children: [
6128
6147
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6129
6148
  /* @__PURE__ */ i("div", { className: "srow__t", children: "Show speaker labels" }),
6130
6149
  /* @__PURE__ */ i("div", { className: "srow__s", children: "Who is speaking, before each line" })
6131
6150
  ] }),
6132
- /* @__PURE__ */ i(Tt, { checked: Ln, onChange: (v) => le(v ? "on" : "off"), label: "Show speaker labels" })
6151
+ /* @__PURE__ */ i(Tt, { checked: Ln, onChange: (w) => le(w ? "on" : "off"), label: "Show speaker labels" })
6133
6152
  ] }),
6134
6153
  /* @__PURE__ */ g("div", { className: "srow", children: [
6135
6154
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6136
6155
  /* @__PURE__ */ i("div", { className: "srow__t", children: "Highlight words" }),
6137
6156
  /* @__PURE__ */ i("div", { className: "srow__s", children: "Follow each word as it is spoken" })
6138
6157
  ] }),
6139
- /* @__PURE__ */ i(Tt, { checked: vn, onChange: (v) => je(v ? "on" : "off"), label: "Highlight words" })
6158
+ /* @__PURE__ */ i(Tt, { checked: wn, onChange: (w) => je(w ? "on" : "off"), label: "Highlight words" })
6140
6159
  ] })
6141
- ] }) : w === "audio" ? /* @__PURE__ */ g("div", { style: bn, children: [
6160
+ ] }) : v === "audio" ? /* @__PURE__ */ g("div", { style: bn, children: [
6142
6161
  /* @__PURE__ */ g("div", { className: "srow", children: [
6143
6162
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6144
6163
  /* @__PURE__ */ i("div", { className: "srow__t", children: "Translate audio" }),
@@ -6151,7 +6170,7 @@ function Vu(t) {
6151
6170
  /* @__PURE__ */ i("div", { className: "srow__t", children: "Voices" }),
6152
6171
  /* @__PURE__ */ i("div", { className: "srow__s", children: Re ? "Each speaker in their own cloned voice" : "Synthetic voices matched to each speaker" })
6153
6172
  ] }),
6154
- /* @__PURE__ */ i(kr, { value: Re ? "clone" : "stock", onChange: (v) => De(v === "clone"), size: "sm", options: [{ value: "stock", label: "Synthetic" }, { value: "clone", label: "Cloned" }] })
6173
+ /* @__PURE__ */ i(kr, { value: Re ? "clone" : "stock", onChange: (w) => De(w === "clone"), size: "sm", options: [{ value: "stock", label: "Synthetic" }, { value: "clone", label: "Cloned" }] })
6155
6174
  ] }),
6156
6175
  /* @__PURE__ */ g("div", { className: "srow", children: [
6157
6176
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
@@ -6160,7 +6179,7 @@ function Vu(t) {
6160
6179
  ] }),
6161
6180
  /* @__PURE__ */ i(Tt, { checked: Q && ot, onChange: H, label: $n, disabled: !ot || tr === "unavailable" && !Q })
6162
6181
  ] })
6163
- ] }) : w === "export" ? /* @__PURE__ */ g("div", { style: bn, children: [
6182
+ ] }) : v === "export" ? /* @__PURE__ */ g("div", { style: bn, children: [
6164
6183
  Ns("srt", "Subtitles", "SRT / VTT caption cues, ready for a video editor or a player"),
6165
6184
  Ns("pdf", "PDF", "Formatted transcript in paragraphs, with timestamps and speaker labels")
6166
6185
  ] }) : /* @__PURE__ */ i("div", { style: bn, children: [
@@ -6196,14 +6215,14 @@ function Vu(t) {
6196
6215
  ] }),
6197
6216
  In
6198
6217
  ] }, "export")
6199
- ].filter(Boolean).flatMap((v, me) => me ? [/* @__PURE__ */ i("div", { className: "sdiv" }, `d${me}`), v] : [v]) }) }) }) : /* @__PURE__ */ i(en, { open: ee, onClose: () => I(!1), title: Gt.settings, doneLabel: Gt.done, drawer: s, children: /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: 2 }, children: [
6200
- Ue.can && /* @__PURE__ */ g(be, { children: [
6218
+ ].filter(Boolean).flatMap((w, me) => me ? [/* @__PURE__ */ i("div", { className: "sdiv" }, `d${me}`), w] : [w]) }) }) }) : /* @__PURE__ */ i(en, { open: ee, onClose: () => I(!1), title: qt.settings, doneLabel: qt.done, drawer: s, children: /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: 2 }, children: [
6219
+ Ue.can && /* @__PURE__ */ g(Ce, { children: [
6201
6220
  /* @__PURE__ */ g("div", { className: "srow srow--tap", onClick: () => {
6202
6221
  I(!1), Ue.onClick();
6203
6222
  }, children: [
6204
6223
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6205
- /* @__PURE__ */ i("div", { className: "srow__t", children: Gt.langLabel }),
6206
- /* @__PURE__ */ i("div", { className: "srow__s", children: Gt.langCount })
6224
+ /* @__PURE__ */ i("div", { className: "srow__t", children: qt.langLabel }),
6225
+ /* @__PURE__ */ i("div", { className: "srow__s", children: qt.langCount })
6207
6226
  ] }),
6208
6227
  /* @__PURE__ */ i("span", { style: { fontSize: 18, lineHeight: 1 }, children: Ue.flag }),
6209
6228
  re.original ? null : /* @__PURE__ */ i("span", { style: { fontSize: 14, fontWeight: 600, color: "var(--ink-96)" }, children: Ue.label }),
@@ -6212,7 +6231,7 @@ function Vu(t) {
6212
6231
  /* @__PURE__ */ i("div", { className: "sdiv" })
6213
6232
  ] }),
6214
6233
  t.settingsExtra
6215
- ] }) }), Dt = te && $t && (!!Ve || u) && /* @__PURE__ */ i(
6234
+ ] }) }), Dt = te && $t && (!!Be || u) && /* @__PURE__ */ i(
6216
6235
  ha,
6217
6236
  {
6218
6237
  page: (t.layout ?? "embed") === "page",
@@ -6220,13 +6239,13 @@ function Vu(t) {
6220
6239
  title: qe,
6221
6240
  desk: s,
6222
6241
  pos: qr,
6223
- mute: { muted: z.muted, onToggle: mn },
6224
- cc: x.subtitles ? { on: Se, onToggle: () => ve((v) => !v) } : void 0,
6242
+ mute: { muted: k.muted, onToggle: mn },
6243
+ cc: x.subtitles ? { on: Se, onToggle: () => we((w) => !w) } : void 0,
6225
6244
  noFull: !x.fullscreen,
6226
6245
  ad: Fn,
6227
- wait: tt && !Jn ? /* @__PURE__ */ i(Pc, { state: tt, line: Lt ? cs.map((v) => v.t + v.sp).join("") : null, onRetry: Ia, onOriginal: ba }) : z.edgeWait ? `Transcribing ${Math.round(U)}% — it plays on as more is written` : null,
6246
+ wait: tt && !Jn ? /* @__PURE__ */ i(Pc, { state: tt, line: kt ? cs.map((w) => w.t + w.sp).join("") : null, onRetry: Ia, onOriginal: ba }) : k.edgeWait ? `Transcribing ${Math.round(U)}% — it plays on as more is written` : null,
6228
6247
  pct: fe ? Math.round(U) : null,
6229
- sub: Se && Xe ? { who: jn ? $r(ce, Xe.speaker) : null, color: jn ? jn.fg ?? `var(--lane-${jn.lane})` : "#fff", words: cs, cursor: vi(z, z.idx, wn) } : null,
6248
+ sub: Se && Xe ? { who: jn ? $r(ce, Xe.speaker) : null, color: jn ? jn.fg ?? `var(--lane-${jn.lane})` : "#fff", words: cs, cursor: wi(k, k.idx, vn) } : null,
6230
6249
  chip: sr(s ? rr : { ...rr, width: 64, padding: "0 6px" }, s ? void 0 : "sm"),
6231
6250
  transport: ts,
6232
6251
  picker: re.sheets,
@@ -6236,10 +6255,10 @@ function Vu(t) {
6236
6255
  sheetOpen: re.sheetsOpen || ee,
6237
6256
  onShare: u && x.share ? Ra : void 0,
6238
6257
  onSettings: u && x.settings ? () => {
6239
- re.closePicker(), I((v) => !v);
6258
+ re.closePicker(), I((w) => !w);
6240
6259
  } : void 0,
6241
6260
  compact: !!t.compact,
6242
- paused: { title: qe, summary: Pt.state === "ready" ? Pt.summary ?? null : null, share: x.share && (t.shareUrl || !t.onShare) ? { url: gs, at: z.t } : null },
6261
+ paused: { title: qe, summary: Pt.state === "ready" ? Pt.summary ?? null : null, share: x.share && (t.shareUrl || !t.onShare) ? { url: gs, at: k.t } : null },
6243
6262
  copied: _a ? /* @__PURE__ */ g("div", { className: "gfull__toast", "aria-live": "polite", children: [
6244
6263
  /* @__PURE__ */ i(oe, { d: X.check, size: 13, sw: 2 }),
6245
6264
  "Link copied"
@@ -6249,7 +6268,7 @@ function Vu(t) {
6249
6268
  ] }) : Kr ? /* @__PURE__ */ g("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
6250
6269
  /* @__PURE__ */ i(ht, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
6251
6270
  Kr
6252
- ] }) : re.on && (Je ? Et.missing != null : z.silent) ? /* @__PURE__ */ g("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
6271
+ ] }) : re.on && (Je ? Et.missing != null : k.silent) ? /* @__PURE__ */ g("div", { className: "gfull__toast", role: "status", "aria-live": "polite", children: [
6253
6272
  /* @__PURE__ */ i(ht, { size: 13, color: "#eef0f8", track: "rgba(255,255,255,.25)" }),
6254
6273
  `${yn || "Translated"} voice is still being prepared · playing with subtitles`
6255
6274
  ] }) : null,
@@ -6272,22 +6291,22 @@ function Vu(t) {
6272
6291
  /* @__PURE__ */ i("span", { className: "s", children: sn })
6273
6292
  ] }),
6274
6293
  !s && /* @__PURE__ */ i("div", { className: "pubprog__bar", style: { marginTop: 8 }, children: /* @__PURE__ */ i("div", { style: { width: `${U}%` } }) })
6275
- ] }), hr = r && /* @__PURE__ */ i("div", { className: "hint", style: { padding: "30px 20px", textAlign: "center", fontSize: 13 }, children: "This link is no longer shared. Ask the person who sent it for a new one." }), Ts = /* @__PURE__ */ i(ru, { model: ce, rows: he, player: vt ? z : { ...z, playRow: z.seekRow }, tail: rn, tailFg: ct, running: fe, desk: s, feedRef: Yt, listener: !0, showLabels: Ln, find: T, findOpen: !s && p, lang: Qe, warm: P, onVisible: St, wordHl: vn }), Mr = /* @__PURE__ */ i(tc, { error: d ?? W ?? (qn && te ? null : z.error) ?? re.error, onClose: () => {
6276
- M(null), ye(), z.clearError(), re.clearError();
6277
- } }), ws = [R ? jt(R) : null, q ? q.toUpperCase() : null, se || "Read-only copy"].filter(Boolean).join(" · "), vs = (v) => /* @__PURE__ */ i("div", { className: "ctrans", children: re.noVoice ? re.noVoiceNote : /* @__PURE__ */ g(be, { children: [
6294
+ ] }), hr = r && /* @__PURE__ */ i("div", { className: "hint", style: { padding: "30px 20px", textAlign: "center", fontSize: 13 }, children: "This link is no longer shared. Ask the person who sent it for a new one." }), Ts = /* @__PURE__ */ i(ru, { model: ce, rows: he, player: Lt ? k : { ...k, playRow: k.seekRow }, tail: rn, tailFg: ct, running: fe, desk: s, feedRef: Yt, listener: !0, showLabels: Ln, find: T, findOpen: !s && p, lang: Qe, warm: P, onVisible: St, wordHl: wn }), Mr = /* @__PURE__ */ i(tc, { error: d ?? W ?? (qn && te ? null : k.error) ?? re.error, onClose: () => {
6295
+ M(null), ye(), k.clearError(), re.clearError();
6296
+ } }), vs = [R ? zt(R) : null, q ? q.toUpperCase() : null, se || "Read-only copy"].filter(Boolean).join(" · "), ws = (w) => /* @__PURE__ */ i("div", { className: "ctrans", children: re.noVoice ? re.noVoiceNote : /* @__PURE__ */ g(Ce, { children: [
6278
6297
  /* @__PURE__ */ g("div", { className: "ctrans__row", children: [
6279
6298
  /* @__PURE__ */ i("span", { className: "ctrans__sp", "aria-hidden": "true" }),
6280
6299
  /* @__PURE__ */ g("div", { className: "ctrans__mid", children: [
6281
- /* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Previous segment", title: "Previous segment", style: { opacity: z.idx <= 0 ? 0.3 : 1 }, onClick: z.prev, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 16, sw: 1.8 }) }),
6282
- /* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : z.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (z.playing ? "Pause" : "Play"), disabled: !bt, onClick: z.toggle, children: re.relang ? /* @__PURE__ */ i("span", { className: "ctrans__spin" }) : /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: 16, height: 16, fill: "currentColor", "aria-hidden": "true", style: z.playing ? void 0 : { marginLeft: 2 }, children: z.playing ? Qc : Bc }) }),
6283
- /* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: z.idx >= he.length - 1 ? 0.3 : 1 }, onClick: z.next, children: /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 16, sw: 1.8 }) })
6300
+ /* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Previous segment", title: "Previous segment", style: { opacity: k.idx <= 0 ? 0.3 : 1 }, onClick: k.prev, children: /* @__PURE__ */ i(oe, { d: X.chevronLeft, size: 16, sw: 1.8 }) }),
6301
+ /* @__PURE__ */ i("button", { type: "button", className: "ctrans__play", "aria-label": re.relang ? "Preparing audio" : k.playing ? "Pause" : "Play", title: re.relang ? "Preparing audio…" : re.playTitle ?? (k.playing ? "Pause" : "Play"), disabled: !Ot, onClick: k.toggle, children: re.relang ? /* @__PURE__ */ i("span", { className: "ctrans__spin" }) : /* @__PURE__ */ i("svg", { viewBox: "0 0 24 24", width: 16, height: 16, fill: "currentColor", "aria-hidden": "true", style: k.playing ? void 0 : { marginLeft: 2 }, children: k.playing ? Qc : Vc }) }),
6302
+ /* @__PURE__ */ i("button", { type: "button", className: "ctrans__step", "aria-label": "Next segment", title: "Next segment", style: { opacity: k.idx >= he.length - 1 ? 0.3 : 1 }, onClick: k.next, children: /* @__PURE__ */ i(oe, { d: X.chevronRight, size: 16, sw: 1.8 }) })
6284
6303
  ] }),
6285
6304
  /* @__PURE__ */ i("span", { className: "ctrans__mute", children: Nn(36) })
6286
6305
  ] }),
6287
- /* @__PURE__ */ i("div", { className: "ctrans__scrub", children: wa(v) })
6288
- ] }) }), Qa = Ic("ga", { tabs: qt, cur: h, pref: (si = qt[0]) == null ? void 0 : si.key, onPick: f }), Ls = Math.max(0, Math.min(100, Math.round(U))), Ba = Ye && /* @__PURE__ */ g("div", { className: "gfull gfull--hold", "data-theme": "dark", role: "status", "aria-live": "polite", children: [
6289
- Ve && /* @__PURE__ */ i("div", { className: "gfull__holdbg", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Ve}/hqdefault.jpg)` } }),
6290
- /* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */ g(be, { children: [
6306
+ /* @__PURE__ */ i("div", { className: "ctrans__scrub", children: va(w) })
6307
+ ] }) }), Qa = Ic("ga", { tabs: Kt, cur: h, pref: (si = Kt[0]) == null ? void 0 : si.key, onPick: f }), Ls = Math.max(0, Math.min(100, Math.round(U))), Va = Ye && /* @__PURE__ */ g("div", { className: "gfull gfull--hold", "data-theme": "dark", role: "status", "aria-live": "polite", children: [
6308
+ Be && /* @__PURE__ */ i("div", { className: "gfull__holdbg", style: { backgroundImage: `url(https://i.ytimg.com/vi/${Be}/hqdefault.jpg)` } }),
6309
+ /* @__PURE__ */ i("div", { className: "gfull__hold", children: n ? /* @__PURE__ */ g(Ce, { children: [
6291
6310
  qe && /* @__PURE__ */ i("div", { className: "gfull__holdt", children: qe }),
6292
6311
  /* @__PURE__ */ i("div", { className: "gfull__holdpct", children: ae === "transcribing" ? `${Ls}%` : /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin" }) }),
6293
6312
  /* @__PURE__ */ i("div", { className: "gfull__holdbar", children: /* @__PURE__ */ i("div", { style: { width: `${ae === "transcribing" ? Ls : 0}%` } }) }),
@@ -6297,32 +6316,32 @@ function Vu(t) {
6297
6316
  ] }),
6298
6317
  /* @__PURE__ */ i("div", { className: "gfull__holdn", children: "The video starts as soon as the first lines are transcribed." })
6299
6318
  ] }) : /* @__PURE__ */ i("span", { className: "gfull__spin gfull__holdspin", "aria-label": "Loading" }) })
6300
- ] }), ks = u && n && (fe || ae === "cropping") ? Math.max(0, Math.min(100, Math.round(U))) : null, On = j(t.onProgress);
6319
+ ] }), ks = u && n && (fe || ae === "cropping") ? Math.max(0, Math.min(100, Math.round(U))) : null, On = z(t.onProgress);
6301
6320
  On.current = t.onProgress, S(() => {
6302
- var v;
6303
- (v = On.current) == null || v.call(On, ks);
6321
+ var w;
6322
+ (w = On.current) == null || w.call(On, ks);
6304
6323
  }, [ks]);
6305
- const [Va, gr] = k(!1), fr = !!Dt && !Ye && (Je ? !!z.ended : !z.playing && z.dur > 0 && z.t >= z.dur - 0.5);
6324
+ const [Ba, gr] = j(!1), fr = !!Dt && !Ye && (Je ? !!k.ended : !k.playing && k.dur > 0 && k.t >= k.dur - 0.5);
6306
6325
  S(() => {
6307
6326
  fr || gr(!1);
6308
6327
  }, [fr]);
6309
- const Ha = t.endCard !== !1 && fr && !Va && /* @__PURE__ */ i(zu, { options: { appUrl: t.appUrl, ...t.endCard || {} }, onStarted: t.onStarted, onClose: () => gr(!0), onReplay: () => {
6310
- gr(!0), et.current = !0, z.seekFrac ? z.seekFrac(0) : z.seekRow(0), z.playing || z.toggle();
6328
+ const Ha = t.endCard !== !1 && fr && !Ba && /* @__PURE__ */ i(zu, { options: { appUrl: t.appUrl, ...t.endCard || {} }, onStarted: t.onStarted, onClose: () => gr(!0), onReplay: () => {
6329
+ gr(!0), et.current = !0, k.seekFrac ? k.seekFrac(0) : k.seekRow(0), k.playing || k.toggle();
6311
6330
  } });
6312
- if (u) return /* @__PURE__ */ g(be, { children: [
6313
- r ? /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark", children: hr }) : Ba || Dt || /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark" }),
6331
+ if (u) return /* @__PURE__ */ g(Ce, { children: [
6332
+ r ? /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark", children: hr }) : Va || Dt || /* @__PURE__ */ i("div", { className: "gfull", "data-theme": "dark" }),
6314
6333
  Ha,
6315
6334
  Mr
6316
6335
  ] });
6317
6336
  if (s) {
6318
- const v = vt && !$t && !r && /* @__PURE__ */ i("div", { className: "pubdeskctl", children: vs(!0) }), me = !r && (qt.length > 0 || $t || !!re.sidePanel || !!v);
6319
- return /* @__PURE__ */ g(be, { children: [
6337
+ const w = Lt && !$t && !r && /* @__PURE__ */ i("div", { className: "pubdeskctl", children: ws(!0) }), me = !r && (Kt.length > 0 || $t || !!re.sidePanel || !!w);
6338
+ return /* @__PURE__ */ g(Ce, { children: [
6320
6339
  /* @__PURE__ */ i("div", { className: "dhead dhead--listener dhead--cols", children: /* @__PURE__ */ g("div", { className: "gcolhead", children: [
6321
6340
  /* @__PURE__ */ i("div", { className: "gcolhead__main", children: /* @__PURE__ */ g("div", { className: "gcolhead__col", children: [
6322
- /* @__PURE__ */ i("div", { style: { flex: "none" }, children: /* @__PURE__ */ i(Vn, { dark: a, height: 20.38 }) }),
6341
+ /* @__PURE__ */ i("div", { style: { flex: "none" }, children: /* @__PURE__ */ i(Bn, { dark: a, height: 20.38 }) }),
6323
6342
  !r && /* @__PURE__ */ g("div", { className: "dhead__session", children: [
6324
6343
  /* @__PURE__ */ i("span", { className: "t", children: n ? qe : "" }),
6325
- /* @__PURE__ */ i("span", { className: "s", children: n ? ws : "" })
6344
+ /* @__PURE__ */ i("span", { className: "s", children: n ? vs : "" })
6326
6345
  ] })
6327
6346
  ] }) }),
6328
6347
  me && /* @__PURE__ */ i("div", { className: "gcolhead__side" })
@@ -6340,9 +6359,9 @@ function Vu(t) {
6340
6359
  ] })
6341
6360
  ] }),
6342
6361
  me && /* @__PURE__ */ g(Cc, { id: "ga", className: "listenerside", gap: 20, plain: !0, children: [
6343
- !re.sidePanel && v,
6362
+ !re.sidePanel && w,
6344
6363
  !re.sidePanel && is,
6345
- !re.sidePanel && qt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(bc, { col: Qa, order: ["summary", "export"], onPick: f, grip: { summary: 40, export: 28 }, render: (Pe) => /* @__PURE__ */ i(ii, { panel: !0, children: Gr(Pe) }) }) }),
6364
+ !re.sidePanel && Kt.length > 0 && /* @__PURE__ */ i("div", { "data-panel-grid": "", className: "listenerside__panels", children: /* @__PURE__ */ i(bc, { col: Qa, order: ["summary", "export"], onPick: f, grip: { summary: 40, export: 28 }, render: (Pe) => /* @__PURE__ */ i(ii, { panel: !0, children: Gr(Pe) }) }) }),
6346
6365
  re.sidePanel
6347
6366
  ] })
6348
6367
  ] }),
@@ -6352,12 +6371,12 @@ function Vu(t) {
6352
6371
  Mr
6353
6372
  ] });
6354
6373
  }
6355
- const Wa = qt.length > 0 && !p && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */ g(ii, { panel: !0, children: [
6356
- /* @__PURE__ */ i(ia, { tabs: qt, current: h, onPick: f, gap: h !== "none" }),
6374
+ const Wa = Kt.length > 0 && !p && /* @__PURE__ */ i("div", { className: "txwidget", children: /* @__PURE__ */ g(ii, { panel: !0, children: [
6375
+ /* @__PURE__ */ i(ia, { tabs: Kt, current: h, onPick: f, gap: h !== "none" }),
6357
6376
  h !== "none" && Gr(h)
6358
6377
  ] }) });
6359
- return /* @__PURE__ */ g(be, { children: [
6360
- /* @__PURE__ */ i(pu, { dark: a, title: n ? qe : "", subline: n ? ws : "", onOptions: () => I(!0), optionsActive: ee }),
6378
+ return /* @__PURE__ */ g(Ce, { children: [
6379
+ /* @__PURE__ */ i(pu, { dark: a, title: n ? qe : "", subline: n ? vs : "", onOptions: () => I(!0), optionsActive: ee }),
6361
6380
  hr,
6362
6381
  ys,
6363
6382
  !r && Wa,
@@ -6368,7 +6387,7 @@ function Vu(t) {
6368
6387
  m && /* @__PURE__ */ i("div", { className: "txflash", children: m })
6369
6388
  ] }),
6370
6389
  !r && /* @__PURE__ */ g("div", { className: "gbottom", "data-transport": "1", children: [
6371
- vt && !$t && /* @__PURE__ */ i("div", { className: "pubctl", children: vs(!1) }),
6390
+ Lt && !$t && /* @__PURE__ */ i("div", { className: "pubctl", children: ws(!1) }),
6372
6391
  /* @__PURE__ */ g("div", { className: "gbottom__bar", children: [
6373
6392
  Ue.can && /* @__PURE__ */ i("div", { style: { flex: "none" }, children: sr({ width: 87 }, void 0) }),
6374
6393
  /* @__PURE__ */ i("div", { style: { flex: 1, minWidth: 0 }, children: Zr })
@@ -6381,7 +6400,7 @@ function Vu(t) {
6381
6400
  ] });
6382
6401
  }
6383
6402
  function Hu(t) {
6384
- const [e, n] = k(null);
6403
+ const [e, n] = j(null);
6385
6404
  return S(() => {
6386
6405
  if (!t || (e == null ? void 0 : e.url) === t && e.ok) return;
6387
6406
  let r = !0, s;
@@ -6402,17 +6421,17 @@ export {
6402
6421
  Tc as ExportPanel,
6403
6422
  ha as FullVideo,
6404
6423
  gu as MiniPlayer,
6405
- Vc as MuteButton,
6424
+ Bc as MuteButton,
6406
6425
  Xc as NO_SEEK,
6407
6426
  Qc as PAUSE_D,
6408
- Bc as PLAY_D,
6427
+ Vc as PLAY_D,
6409
6428
  tu as PUB_SIDE,
6410
6429
  td as PanelSeek,
6411
6430
  xl as PlayerApiProvider,
6412
6431
  $n as REMOVE_BG_LABEL,
6413
6432
  Zo as REMOVE_BG_NOTE,
6414
6433
  nc as ReplayScrub,
6415
- Bi as SITES,
6434
+ Vi as SITES,
6416
6435
  rd as SiteIcon,
6417
6436
  uc as SpeakerCast,
6418
6437
  Lc as SummaryPanel,
@@ -6427,7 +6446,7 @@ export {
6427
6446
  Oo as hostOfUrl,
6428
6447
  Ht as lineEnd,
6429
6448
  la as lineWords,
6430
- Bt as pictureT,
6449
+ Vt as pictureT,
6431
6450
  En as placePosition,
6432
6451
  _n as realFull,
6433
6452
  Ju as setErrorReporter,
@@ -6435,7 +6454,7 @@ export {
6435
6454
  Xu as siteById,
6436
6455
  Pn as siteOf,
6437
6456
  _c as snapPosition,
6438
- vi as spokenWordOf,
6457
+ wi as spokenWordOf,
6439
6458
  Ko as trackPlan,
6440
6459
  Ki as useApi,
6441
6460
  pc as useArchiveVoice,
@@ -6443,9 +6462,9 @@ export {
6443
6462
  Gc as useDuck,
6444
6463
  iu as useFindPull,
6445
6464
  Hc as useFlash,
6446
- Wt as usePlayerApi,
6465
+ Ft as usePlayerApi,
6447
6466
  Wi as useSeparatedTrack,
6448
- wc as useSummaryIn,
6467
+ vc as useSummaryIn,
6449
6468
  Ql as useTranscript,
6450
6469
  Kc as useTxPlayer,
6451
6470
  nu as useTxVoice,