screenci 0.0.70 → 0.0.72

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.
Files changed (108) hide show
  1. package/README.md +13 -13
  2. package/dist/cli.d.ts +9 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +184 -5
  5. package/dist/cli.js.map +1 -1
  6. package/dist/docs/manifest.d.ts +34 -34
  7. package/dist/docs/manifest.d.ts.map +1 -1
  8. package/dist/docs/manifest.js +20 -12
  9. package/dist/docs/manifest.js.map +1 -1
  10. package/dist/docs/video-sources/installation.screenci.js +13 -12
  11. package/dist/docs/video-sources/installation.screenci.js.map +1 -1
  12. package/dist/docs/video-sources/landing.screenci.js +16 -9
  13. package/dist/docs/video-sources/landing.screenci.js.map +1 -1
  14. package/dist/docs/video-sources/locator-highlight-animated.screenci.js +14 -26
  15. package/dist/docs/video-sources/locator-highlight-animated.screenci.js.map +1 -1
  16. package/dist/docs/video-sources/locator-highlight-still.screenci.js +5 -10
  17. package/dist/docs/video-sources/locator-highlight-still.screenci.js.map +1 -1
  18. package/dist/docs/video-sources/product-pitch.screenci.js +97 -32
  19. package/dist/docs/video-sources/product-pitch.screenci.js.map +1 -1
  20. package/dist/docs/video-sources/public-urls.screenci.js +16 -9
  21. package/dist/docs/video-sources/public-urls.screenci.js.map +1 -1
  22. package/dist/docs/video-sources/studio.screenci.js +42 -27
  23. package/dist/docs/video-sources/studio.screenci.js.map +1 -1
  24. package/dist/docs/videos.d.ts +4 -15
  25. package/dist/docs/videos.d.ts.map +1 -1
  26. package/dist/docs/videos.js +6 -22
  27. package/dist/docs/videos.js.map +1 -1
  28. package/dist/index.d.ts +7 -5
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +3 -4
  31. package/dist/index.js.map +1 -1
  32. package/dist/src/asset.d.ts +8 -23
  33. package/dist/src/asset.d.ts.map +1 -1
  34. package/dist/src/asset.js +10 -32
  35. package/dist/src/asset.js.map +1 -1
  36. package/dist/src/audio.d.ts +6 -24
  37. package/dist/src/audio.d.ts.map +1 -1
  38. package/dist/src/audio.js +10 -35
  39. package/dist/src/audio.js.map +1 -1
  40. package/dist/src/builder.d.ts +214 -0
  41. package/dist/src/builder.d.ts.map +1 -0
  42. package/dist/src/builder.js +212 -0
  43. package/dist/src/builder.js.map +1 -0
  44. package/dist/src/cue.d.ts +40 -123
  45. package/dist/src/cue.d.ts.map +1 -1
  46. package/dist/src/cue.js +190 -30
  47. package/dist/src/cue.js.map +1 -1
  48. package/dist/src/events.d.ts +80 -15
  49. package/dist/src/events.d.ts.map +1 -1
  50. package/dist/src/events.js +72 -6
  51. package/dist/src/events.js.map +1 -1
  52. package/dist/src/init.d.ts.map +1 -1
  53. package/dist/src/init.js +26 -14
  54. package/dist/src/init.js.map +1 -1
  55. package/dist/src/locales.d.ts +19 -0
  56. package/dist/src/locales.d.ts.map +1 -0
  57. package/dist/src/locales.js +60 -0
  58. package/dist/src/locales.js.map +1 -0
  59. package/dist/src/localize.d.ts +135 -0
  60. package/dist/src/localize.d.ts.map +1 -0
  61. package/dist/src/localize.js +195 -0
  62. package/dist/src/localize.js.map +1 -0
  63. package/dist/src/localizeRuntime.d.ts +53 -0
  64. package/dist/src/localizeRuntime.d.ts.map +1 -0
  65. package/dist/src/localizeRuntime.js +79 -0
  66. package/dist/src/localizeRuntime.js.map +1 -0
  67. package/dist/src/recordingData.d.ts +5 -4
  68. package/dist/src/recordingData.d.ts.map +1 -1
  69. package/dist/src/runtimeContext.d.ts +3 -4
  70. package/dist/src/runtimeContext.d.ts.map +1 -1
  71. package/dist/src/runtimeContext.js.map +1 -1
  72. package/dist/src/runtimeMode.d.ts +47 -0
  73. package/dist/src/runtimeMode.d.ts.map +1 -1
  74. package/dist/src/runtimeMode.js +124 -0
  75. package/dist/src/runtimeMode.js.map +1 -1
  76. package/dist/src/screenshot.d.ts +56 -2
  77. package/dist/src/screenshot.d.ts.map +1 -1
  78. package/dist/src/screenshot.js +47 -10
  79. package/dist/src/screenshot.js.map +1 -1
  80. package/dist/src/stillCapture.d.ts +2 -3
  81. package/dist/src/stillCapture.d.ts.map +1 -1
  82. package/dist/src/stillCapture.js.map +1 -1
  83. package/dist/src/studio.d.ts +55 -22
  84. package/dist/src/studio.d.ts.map +1 -1
  85. package/dist/src/studio.js +38 -12
  86. package/dist/src/studio.js.map +1 -1
  87. package/dist/src/types.d.ts +18 -5
  88. package/dist/src/types.d.ts.map +1 -1
  89. package/dist/src/types.js.map +1 -1
  90. package/dist/src/video.d.ts +149 -13
  91. package/dist/src/video.d.ts.map +1 -1
  92. package/dist/src/video.js +91 -24
  93. package/dist/src/video.js.map +1 -1
  94. package/dist/src/voiceConfig.d.ts +110 -0
  95. package/dist/src/voiceConfig.d.ts.map +1 -0
  96. package/dist/src/voiceConfig.js +2 -0
  97. package/dist/src/voiceConfig.js.map +1 -0
  98. package/dist/src/voices.d.ts +27 -23
  99. package/dist/src/voices.d.ts.map +1 -1
  100. package/dist/src/voices.js +7 -4
  101. package/dist/src/voices.js.map +1 -1
  102. package/dist/tsconfig.tsbuildinfo +1 -1
  103. package/package.json +1 -1
  104. package/skills/screenci/SKILL.md +39 -30
  105. package/dist/docs/video-sources/cli.screenci.d.ts +0 -2
  106. package/dist/docs/video-sources/cli.screenci.d.ts.map +0 -1
  107. package/dist/docs/video-sources/cli.screenci.js +0 -36
  108. package/dist/docs/video-sources/cli.screenci.js.map +0 -1
package/dist/src/cue.d.ts CHANGED
@@ -1,5 +1,8 @@
1
- import type { IEventRecorder } from './events.js';
2
- import { type ModelVoiceKey, type ElevenLabsVoiceKey, type Lang, type CustomVoiceRef, type ModelType } from './voices.js';
1
+ import type { IEventRecorder, VoiceLanguageMeta } from './events.js';
2
+ import { type VoiceKey, type Lang, type CustomVoiceRef } from './voices.js';
3
+ import type { TopLevelVoiceConfig, LangNarrationOverride } from './voiceConfig.js';
4
+ export type { TopLevelVoiceConfig, LangNarrationOverride };
5
+ import type { NormalizedNarration } from './localize.js';
3
6
  export declare const ONE_FRAME_MS: number;
4
7
  export declare function setSleepFn(fn: (ms: number) => void): void;
5
8
  export declare function setActiveCueRecorder(recorder: IEventRecorder | null): void;
@@ -50,107 +53,6 @@ export type CueMapValue = string | NarrationCueObject;
50
53
  export type Cues<T extends Record<string, CueMapValue>> = {
51
54
  [K in keyof T]: NarrationCue;
52
55
  };
53
- /**
54
- * Top-level voice configuration shared across all languages.
55
- * `seed` is not allowed here — use per-language `voice` overrides instead.
56
- *
57
- * Built-in model voices support expressive/consistent model controls.
58
- * ElevenLabs voices support only the numeric settings documented below.
59
- */
60
- type ElevenLabsVoiceSettings = {
61
- /** Voice stability for ElevenLabs `eleven_multilingual_v2`. Valid range: 0 to 1. */
62
- stability?: number;
63
- /** Similarity enhancement for ElevenLabs `eleven_multilingual_v2`. Valid range: 0 to 1. */
64
- similarityBoost?: number;
65
- /** Style exaggeration for ElevenLabs `eleven_multilingual_v2`. Valid range: 0 to 1. */
66
- style?: number;
67
- /** Playback speed for ElevenLabs `eleven_multilingual_v2`. Valid range: 0.7 to 1.2. */
68
- speed?: number;
69
- /** Enables ElevenLabs speaker boost. Defaults to `true`. */
70
- useSpeakerBoost?: boolean;
71
- };
72
- type ElevenLabsVoiceConfig = ElevenLabsVoiceSettings & {
73
- name: ElevenLabsVoiceKey | CustomVoiceRef;
74
- modelType?: never;
75
- accent?: never;
76
- pacing?: never;
77
- };
78
- export type TopLevelVoiceConfig = ElevenLabsVoiceConfig | {
79
- name: ModelVoiceKey;
80
- /** Speaking style prompt for expressive synthesis. Business tier only. Implies `expressive` model type. */
81
- style: string;
82
- /** Can be omitted when `style` is set — `expressive` is implied. Business tier only. */
83
- modelType?: 'expressive';
84
- /**
85
- * Accent description for expressive synthesis.
86
- * The more specific, the better — e.g. `'Southern American English'` or `'Received Pronunciation British'`.
87
- * Omitted from the prompt when not set — the voice uses its natural default.
88
- */
89
- accent?: string;
90
- /**
91
- * Pacing description for expressive synthesis.
92
- * Describes the overall speed and tempo — e.g. `'Measured and deliberate'` or `'Brisk and energetic'`.
93
- */
94
- pacing?: string;
95
- } | {
96
- name: ModelVoiceKey;
97
- style?: never;
98
- accent?: never;
99
- /** Speaking rate for consistent synthesis. Valid range: 0.25 to 2. */
100
- pacing?: number;
101
- /** TTS model type — `modelTypes.expressive` or `modelTypes.consistent`. Defaults to `consistent`. */
102
- modelType?: Exclude<ModelType, 'expressive'> | undefined;
103
- };
104
- /**
105
- * Per-language narration override. Can override the top-level voice name and
106
- * optionally set a `seed` for TTS generation.
107
- *
108
- * The voice name discriminates provider-specific settings: built-in model
109
- * voices use expressive/consistent controls, while ElevenLabs voices use the
110
- * numeric `eleven_multilingual_v2` controls.
111
- */
112
- export type LangNarrationOverride = (ElevenLabsVoiceConfig & {
113
- /**
114
- * Integer seed included in the audio cache key and forwarded to ElevenLabs.
115
- * A different seed always forces regeneration.
116
- */
117
- seed?: number;
118
- }) | {
119
- name: ModelVoiceKey;
120
- /**
121
- * Integer seed included in the audio cache key. A different seed always forces
122
- * regeneration. Consistent output is not guaranteed across all voice types.
123
- */
124
- seed?: number;
125
- /** Speaking style prompt for expressive synthesis. Business tier only. Implies `expressive` model type. */
126
- style: string;
127
- /** Can be omitted when `style` is set — `expressive` is implied. Business tier only. */
128
- modelType?: 'expressive';
129
- /**
130
- * Accent description for expressive synthesis.
131
- * The more specific, the better — e.g. `'Southern American English'` or `'Received Pronunciation British'`.
132
- * Omitted from the prompt when not set — the voice uses its natural default.
133
- */
134
- accent?: string;
135
- /**
136
- * Pacing description for expressive synthesis.
137
- * Describes the overall speed and tempo — e.g. `'Measured and deliberate'` or `'Brisk and energetic'`.
138
- */
139
- pacing?: string;
140
- } | {
141
- name: ModelVoiceKey;
142
- /**
143
- * Integer seed included in the audio cache key. A different seed always forces
144
- * regeneration. Consistent output is not guaranteed across all voice types.
145
- */
146
- seed?: number;
147
- style?: never;
148
- accent?: never;
149
- /** Speaking rate for consistent synthesis. Valid range: 0.25 to 2. */
150
- pacing?: number;
151
- /** TTS model type — `modelTypes.expressive` or `modelTypes.consistent`. Defaults to `consistent`. */
152
- modelType?: Exclude<ModelType, 'expressive'> | undefined;
153
- };
154
56
  /** Converts a union type to an intersection: `A | B` → `A & B` */
155
57
  type UnionToIntersection<U> = (U extends unknown ? (x: U) => void : never) extends (x: infer I) => void ? I : never;
156
58
  /**
@@ -220,27 +122,42 @@ type NarrationInput<M extends Partial<Record<Lang, NarrationLanguageInput>>> = {
220
122
  */
221
123
  export declare function createNarration<M extends Partial<Record<Lang, NarrationLanguageInput>>>(input: NarrationInput<M>): Cues<AllCues<M>>;
222
124
  /**
223
- * Creates typed narration controllers whose text and voice are configured on
224
- * the ScreenCI Studio page instead of in code. Business tier only.
225
- *
226
- * Each key becomes a cue with the same behavior as {@link createNarration}
227
- * cues — callable, with explicit `start()` and `end()` methods. Languages,
228
- * narration text, and voice settings all come from Studio.
229
- *
230
- * On the first upload of a studio-mode video, rendering is held until the
231
- * video is configured in Studio (the CLI prints a direct link). Later uploads
232
- * reuse the saved Studio configuration automatically.
125
+ * Asserts that a narration input's language keys match a video's declared
126
+ * languages exactly. Used by the `narration` fixture so the languages declared
127
+ * via `video.languages([...])` stay the single source of truth: a missing or
128
+ * unexpected language fails loudly instead of silently drifting.
129
+ */
130
+ export declare function assertNarrationLanguagesMatch(input: Record<string, unknown>, declared: readonly string[]): void;
131
+ /**
132
+ * Builds narration controllers for Studio-managed cues declared via
133
+ * `video.studio({ narration: [...] })`. Their text and voice are configured on
134
+ * the ScreenCI Studio page instead of in code. Each name becomes a cue with the
135
+ * same behavior as a seeded narration cue (callable, with `start()`/`end()`);
136
+ * languages, narration text, and voice all come from Studio.
233
137
  *
234
- * @example
235
- * ```ts
236
- * const narration = createStudioNarration('intro', 'checkout', 'outro')
138
+ * Internal: the `narration` fixture merges these with the seeded localize cues.
139
+ */
140
+ export declare function buildStudioNarrationCues(names: readonly string[]): Record<string, NarrationCue>;
141
+ /**
142
+ * Resolve a single voice config into its recorded name and language metadata.
143
+ * Unlike {@link buildCuesFromInput}, the config here is already fully resolved by
144
+ * the localize voice cascade, so there is no top-level/override merge: every
145
+ * provider setting comes from this one config.
146
+ */
147
+ export declare function resolveVoiceMeta(config: TopLevelVoiceConfig | LangNarrationOverride): {
148
+ name: VoiceKey | CustomVoiceRef;
149
+ meta: VoiceLanguageMeta;
150
+ };
151
+ /**
152
+ * Build the narration cue controllers for a localized recording, directly from
153
+ * the normalized localize spec. Per-cue voice can override the per-language
154
+ * (`voiceByLang`) and config/global (`defaultVoice`) voices, so the cascade is
155
+ * resolved per `(cue, language)` here rather than routed through
156
+ * {@link buildCuesFromInput} (which is per-language only).
237
157
  *
238
- * await narration.intro()
239
- * await page.goto('/checkout')
240
- * await narration.checkout.start()
241
- * await narration.checkout.end()
242
- * ```
158
+ * Seeded cues emit translations carrying the resolved voice + spoken text (the
159
+ * recorder filters to the active language). Studio-managed cues emit studio cue
160
+ * starts whose content is owned by Studio.
243
161
  */
244
- export declare function createStudioNarration<const K extends readonly [string, ...string[]]>(...keys: K): Cues<Record<K[number], CueMapValue>>;
245
- export {};
162
+ export declare function buildLocalizedNarrationCues(narration: NormalizedNarration, voiceByLang: Partial<Record<string, LangNarrationOverride>>, defaultVoice: TopLevelVoiceConfig | LangNarrationOverride | undefined): Record<string, NarrationCue>;
246
163
  //# sourceMappingURL=cue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue.d.ts","sourceRoot":"","sources":["../../src/cue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cue.d.ts","sourceRoot":"","sources":["../../src/cue.ts"],"names":[],"mappings":"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"}
package/dist/src/cue.js CHANGED
@@ -183,6 +183,27 @@ export function createNarration(input) {
183
183
  const languages = normalizeLanguagesInput(input);
184
184
  return buildCuesFromInput(input.voice ?? { name: voices.Sophie }, languages);
185
185
  }
186
+ /**
187
+ * Asserts that a narration input's language keys match a video's declared
188
+ * languages exactly. Used by the `narration` fixture so the languages declared
189
+ * via `video.languages([...])` stay the single source of truth: a missing or
190
+ * unexpected language fails loudly instead of silently drifting.
191
+ */
192
+ export function assertNarrationLanguagesMatch(input, declared) {
193
+ const declaredSet = new Set(declared);
194
+ const inputLangs = Object.keys(input).filter((key) => !RESERVED_LANGUAGE_METADATA_KEYS.has(key));
195
+ const inputSet = new Set(inputLangs);
196
+ const missing = declared.filter((lang) => !inputSet.has(lang));
197
+ const unexpected = inputLangs.filter((lang) => !declaredSet.has(lang));
198
+ if (missing.length === 0 && unexpected.length === 0)
199
+ return;
200
+ const parts = [];
201
+ if (missing.length > 0)
202
+ parts.push(`missing ${missing.join(', ')}`);
203
+ if (unexpected.length > 0)
204
+ parts.push(`unexpected ${unexpected.join(', ')}`);
205
+ throw new Error(`[screenci] narration languages must match the video's declared languages (${declared.join(', ')}): ${parts.join('; ')}.`);
206
+ }
186
207
  function createCueController(name, emitStart) {
187
208
  let didRegisterName = false;
188
209
  const start = async (startedWithExplicitStart = true) => {
@@ -222,40 +243,20 @@ function createCueController(name, emitStart) {
222
243
  return cue;
223
244
  }
224
245
  /**
225
- * Creates typed narration controllers whose text and voice are configured on
226
- * the ScreenCI Studio page instead of in code. Business tier only.
227
- *
228
- * Each key becomes a cue with the same behavior as {@link createNarration}
229
- * cues callable, with explicit `start()` and `end()` methods. Languages,
230
- * narration text, and voice settings all come from Studio.
231
- *
232
- * On the first upload of a studio-mode video, rendering is held until the
233
- * video is configured in Studio (the CLI prints a direct link). Later uploads
234
- * reuse the saved Studio configuration automatically.
235
- *
236
- * @example
237
- * ```ts
238
- * const narration = createStudioNarration('intro', 'checkout', 'outro')
246
+ * Builds narration controllers for Studio-managed cues declared via
247
+ * `video.studio({ narration: [...] })`. Their text and voice are configured on
248
+ * the ScreenCI Studio page instead of in code. Each name becomes a cue with the
249
+ * same behavior as a seeded narration cue (callable, with `start()`/`end()`);
250
+ * languages, narration text, and voice all come from Studio.
239
251
  *
240
- * await narration.intro()
241
- * await page.goto('/checkout')
242
- * await narration.checkout.start()
243
- * await narration.checkout.end()
244
- * ```
252
+ * Internal: the `narration` fixture merges these with the seeded localize cues.
245
253
  */
246
- export function createStudioNarration(...keys) {
247
- const seen = new Set();
248
- for (const key of keys) {
249
- if (seen.has(key)) {
250
- throw new Error(`Duplicate cue key "${key}" passed to createStudioNarration. Cue keys must be unique.`);
251
- }
252
- seen.add(key);
253
- }
254
+ export function buildStudioNarrationCues(names) {
254
255
  const result = {};
255
- for (const key of keys) {
256
- result[key] = createCueController(key, (recorder) => {
256
+ for (const name of names) {
257
+ result[name] = createCueController(name, (recorder) => {
257
258
  sleepForCueFrameGap();
258
- recorder.addStudioCueStart(key);
259
+ recorder.addStudioCueStart(name);
259
260
  });
260
261
  }
261
262
  return result;
@@ -534,4 +535,163 @@ async function entryToVideoTranslation(testFilePath, entry) {
534
535
  ...(subtitle !== undefined && { subtitle }),
535
536
  };
536
537
  }
538
+ /**
539
+ * Resolve a single voice config into its recorded name and language metadata.
540
+ * Unlike {@link buildCuesFromInput}, the config here is already fully resolved by
541
+ * the localize voice cascade, so there is no top-level/override merge: every
542
+ * provider setting comes from this one config.
543
+ */
544
+ export function resolveVoiceMeta(config) {
545
+ const name = config.name;
546
+ const seed = 'seed' in config ? config.seed : undefined;
547
+ const style = 'style' in config ? config.style : undefined;
548
+ const accent = 'accent' in config ? config.accent : undefined;
549
+ const pacing = 'pacing' in config ? config.pacing : undefined;
550
+ const stability = 'stability' in config ? config.stability : undefined;
551
+ const similarityBoost = 'similarityBoost' in config ? config.similarityBoost : undefined;
552
+ const speed = 'speed' in config ? config.speed : undefined;
553
+ const useSpeakerBoost = 'useSpeakerBoost' in config ? config.useSpeakerBoost : undefined;
554
+ const modelType = typeof style === 'string'
555
+ ? 'expressive'
556
+ : 'modelType' in config
557
+ ? config.modelType
558
+ : undefined;
559
+ return {
560
+ name,
561
+ meta: {
562
+ name: voiceToKeyString(name),
563
+ ...(seed !== undefined && { seed }),
564
+ ...(modelType !== undefined && { modelType }),
565
+ ...(style !== undefined && { style }),
566
+ ...(accent !== undefined && { accent }),
567
+ ...(pacing !== undefined && { pacing }),
568
+ ...(stability !== undefined && { stability }),
569
+ ...(similarityBoost !== undefined && { similarityBoost }),
570
+ ...(speed !== undefined && { speed }),
571
+ ...(useSpeakerBoost !== undefined && { useSpeakerBoost }),
572
+ },
573
+ };
574
+ }
575
+ /** The voice fields of a cue translation derived from resolved meta (no name). */
576
+ function translationVoiceFields(meta) {
577
+ return {
578
+ ...(meta.modelType !== undefined && { modelType: meta.modelType }),
579
+ ...(meta.style !== undefined && { style: meta.style }),
580
+ ...(meta.accent !== undefined && { accent: meta.accent }),
581
+ ...(meta.pacing !== undefined && { pacing: meta.pacing }),
582
+ ...(meta.stability !== undefined && { stability: meta.stability }),
583
+ ...(meta.similarityBoost !== undefined && {
584
+ similarityBoost: meta.similarityBoost,
585
+ }),
586
+ ...(meta.speed !== undefined && { speed: meta.speed }),
587
+ ...(meta.useSpeakerBoost !== undefined && {
588
+ useSpeakerBoost: meta.useSpeakerBoost,
589
+ }),
590
+ };
591
+ }
592
+ /**
593
+ * Build the narration cue controllers for a localized recording, directly from
594
+ * the normalized localize spec. Per-cue voice can override the per-language
595
+ * (`voiceByLang`) and config/global (`defaultVoice`) voices, so the cascade is
596
+ * resolved per `(cue, language)` here rather than routed through
597
+ * {@link buildCuesFromInput} (which is per-language only).
598
+ *
599
+ * Seeded cues emit translations carrying the resolved voice + spoken text (the
600
+ * recorder filters to the active language). Studio-managed cues emit studio cue
601
+ * starts whose content is owned by Studio.
602
+ */
603
+ export function buildLocalizedNarrationCues(narration, voiceByLang, defaultVoice) {
604
+ if (narration === null)
605
+ return {};
606
+ const studioSet = new Set(narration.studioNames);
607
+ const result = {};
608
+ for (const cueName of narration.cueNames) {
609
+ if (studioSet.has(cueName)) {
610
+ result[cueName] = createCueController(cueName, (recorder) => {
611
+ sleepForCueFrameGap();
612
+ recorder.addStudioCueStart(cueName);
613
+ });
614
+ continue;
615
+ }
616
+ // Languages that seed this cue, with the per-(cue, language) voice resolved.
617
+ const langs = Object.keys(narration.seedByLang).filter((lang) => narration.seedByLang[lang]?.[cueName] !== undefined);
618
+ let hasFileEntry = false;
619
+ // Volume is per-cue (a render-time mix property): the first language that
620
+ // sets a volume for this cue wins.
621
+ let cueVolume;
622
+ for (const lang of langs) {
623
+ const value = narration.seedByLang[lang][cueName];
624
+ if (value.kind === 'media')
625
+ hasFileEntry = true;
626
+ if (cueVolume === undefined && value.volume !== undefined) {
627
+ cueVolume = validateCueVolume(cueName, value.volume);
628
+ }
629
+ }
630
+ const resolveLang = (lang) => {
631
+ const value = narration.seedByLang[lang][cueName];
632
+ const config = (value.kind === 'text' ? value.voice : undefined) ??
633
+ voiceByLang[lang] ??
634
+ defaultVoice ?? { name: voices.Sophie };
635
+ const { name, meta } = resolveVoiceMeta(config);
636
+ assertElevenLabsApiKeyConfigured(name, `localize narration (${lang})`);
637
+ return { value, voice: name, meta };
638
+ };
639
+ if (hasFileEntry) {
640
+ result[cueName] = createCueController(cueName, async (recorder) => {
641
+ const testFilePath = getScreenCIRuntimeContext().testFilePath;
642
+ const resolved = new Map(langs.map((lang) => [lang, resolveLang(lang)]));
643
+ for (const lang of langs) {
644
+ recorder.registerVoiceForLang(lang, resolved.get(lang).meta);
645
+ }
646
+ const videoTranslations = {};
647
+ for (const lang of langs) {
648
+ const { value, voice, meta } = resolved.get(lang);
649
+ if (value.kind === 'text') {
650
+ videoTranslations[lang] = {
651
+ text: value.text,
652
+ voice: await toRecordedVoice(voice),
653
+ ...translationVoiceFields(meta),
654
+ ...(value.language !== undefined &&
655
+ value.language !== lang && { language: value.language }),
656
+ };
657
+ }
658
+ else {
659
+ videoTranslations[lang] = await entryToVideoTranslation(testFilePath, {
660
+ path: value.path,
661
+ ...(value.subtitle !== undefined && {
662
+ subtitle: value.subtitle,
663
+ }),
664
+ });
665
+ }
666
+ }
667
+ sleepForCueFrameGap();
668
+ recorder.addVideoCueStart(cueName, undefined, undefined, undefined, videoTranslations, ...(cueVolume !== undefined ? [cueVolume] : []));
669
+ });
670
+ }
671
+ else {
672
+ result[cueName] = createCueController(cueName, async (recorder) => {
673
+ const resolved = new Map(langs.map((lang) => [lang, resolveLang(lang)]));
674
+ for (const lang of langs) {
675
+ recorder.registerVoiceForLang(lang, resolved.get(lang).meta);
676
+ }
677
+ const textTranslations = {};
678
+ for (const lang of langs) {
679
+ const { value, voice, meta } = resolved.get(lang);
680
+ if (value.kind !== 'text')
681
+ continue;
682
+ textTranslations[lang] = {
683
+ text: value.text,
684
+ voice: await toRecordedVoice(voice),
685
+ ...translationVoiceFields(meta),
686
+ ...(value.language !== undefined &&
687
+ value.language !== lang && { language: value.language }),
688
+ };
689
+ }
690
+ sleepForCueFrameGap();
691
+ recorder.addCueStart('', cueName, undefined, textTranslations, ...(cueVolume !== undefined ? [cueVolume] : []));
692
+ });
693
+ }
694
+ }
695
+ return result;
696
+ }
537
697
  //# sourceMappingURL=cue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue.js","sourceRoot":"","sources":["../../src/cue.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,kBAAkB,EAClB,MAAM,GAOP,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACvC,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AAEjE,oFAAoF;AACpF,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;AACrC,MAAM,mBAAmB,GACvB,6DAA6D,CAAA;AAE/D,0DAA0D;AAC1D,IAAI,OAAO,GAAG,CAAC,EAAU,EAAQ,EAAE;IACjC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAA;IAClC,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;QAC/B,UAAU;IACZ,CAAC;AACH,CAAC,CAAA;AAED,SAAS,mBAAmB;IAC1B,MAAM,UAAU,GAAG,8BAA8B,CAAC,CAAC,GAAG,YAAY,CAAC,CAAA;IACnE,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACpB,OAAM;IACR,CAAC;IAED,OAAO,CAAC,UAAU,CAAC,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EAAwB;IACjD,OAAO,GAAG,EAAE,CAAA;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAA+B;IAClE,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC/B,oBAAoB,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,oBAAoB,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,uEAAuE;IACvE,uCAAuC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,aAAqB;IAErB,6EAA6E;IAC7E,0EAA0E;IAC1E,qBAAqB;AACvB,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,SAAiB,EACjB,YAA2B;IAE3B,MAAM,UAAU,GAAG,CAAC,SAAS,CAAC,CAAA;IAC9B,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACrC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAA;YAC5C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,KAAgC;IAEhC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1C,MAAM,YAAY,GAAG,yBAAyB,EAAE,CAAC,YAAY,CAAA;IAC7D,OAAO;QACL,SAAS,EAAE,MAAM,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC;QAC/D,SAAS,EAAE,KAAK,CAAC,IAAI;KACtB,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAgC;IAC3D,IAAI,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,OAAO,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,gCAAgC,CACvC,KAAgC,EAChC,QAAgB;IAEhB,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;QAAE,OAAM;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE;QAAE,OAAM;IAElD,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,qIAAqI,mBAAmB,GAAG,CACvK,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU,CAAC,WAAmB;IACrC,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAA;IAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI;QAAE,OAAM;IAC7C,IACE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,wBAAwB;QACjD,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,EAClC,CAAC;QACD,MAAM,CAAC,IAAI,CACT,mBAAmB,OAAO,CAAC,GAAG,CAAC,aAAa,wDAAwD,WAAW,2EAA2E,CAC3L,CAAA;IACH,CAAC;IACD,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IACrC,mBAAmB,EAAE,CAAA;IACrB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,eAAe,EAAE,CAAA;IAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAA;IAChC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAA;AACjC,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,MAAM,YAAY,GAAG,yBAAyB,EAAE,CAAC,GAAG,CAAC,YAAY,CAAA;IACjE,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,uBAAuB,IAAI,qDAAqD,CACjF,CAAA;IACH,CAAC;IACD,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACxB,CAAC;AAED,SAAS,cAAc;IAIrB,IAAI,OAAoB,CAAA;IACxB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,SAAS,EAAE,EAAE;QAC9C,OAAO,GAAG,SAAS,CAAA;IACrB,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC7B,CAAC;AAED,SAAS,kBAAkB,CAAC,wBAAiC;IAK3D,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAA;IACjC,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,OAAO;QAC1B,eAAe,EAAE,QAAQ,CAAC,OAAO;QACjC,wBAAwB;KACzB,CAAA;AACH,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAA;IAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI;QAAE,OAAM;IAC7C,IAAI,YAAY,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACtE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAA;IACpC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IACrC,mBAAmB,EAAE,CAAA;IACrB,GAAG,CAAC,eAAe,EAAE,CAAA;IACrB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAA;QAChC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAA;IACjC,CAAC;AACH,CAAC;AAwND;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,UAAU,eAAe,CAE7B,KAAwB;IACxB,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,2JAA2J,CAC5J,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;IAEhD,OAAO,kBAAkB,CACvB,KAAK,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,EACtC,SAAS,CACU,CAAA;AACvB,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAY,EACZ,SAA6D;IAE7D,IAAI,eAAe,GAAG,KAAK,CAAA;IAE3B,MAAM,KAAK,GAAG,KAAK,EAAE,wBAAwB,GAAG,IAAI,EAAiB,EAAE;QACrE,IAAI,YAAY,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QAC3E,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAA;QACxC,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAA;QAC3C,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,mBAAmB,CAAC,IAAI,CAAC,CAAA;YACzB,eAAe,GAAG,IAAI,CAAA;QACxB,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,MAAM,GAAG,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAA;QACxD,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAA;QAChC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAA;QAC9B,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC,CAAA;IAED,MAAM,GAAG,GAAG,KAAK,IAAmB,EAAE;QACpC,IAAI,YAAY,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QACtE,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAA;QAC3C,IACE,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI;YAClC,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI,EACjC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,8BAA8B,IAAI,4CAA4C,CAC/E,CAAA;QACH,CAAC;QAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAA;QACpC,MAAM,YAAY,EAAE,CAAA;QACpB,MAAM,GAAG,CAAC,QAAQ,CAAA;IACpB,CAAC,CAAA;IAED,MAAM,GAAG,GAAG,CAAC,KAAK,IAAmB,EAAE;QACrC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAA;QAClB,mBAAmB,EAAE,CAAA;QACrB,MAAM,GAAG,EAAE,CAAA;IACb,CAAC,CAAiB,CAAA;IAElB,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;IACjB,GAAG,CAAC,GAAG,GAAG,GAAG,CAAA;IACb,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,qBAAqB,CAEnC,GAAG,IAAO;IACV,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,sBAAsB,GAAG,6DAA6D,CACvF,CAAA;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,CAAC;IAED,MAAM,MAAM,GAAG,EAA0C,CAAA;IACzD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAgB,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC/D,mBAAmB,EAAE,CAAA;YACrB,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAMD,MAAM,+BAA+B,GAAG,IAAI,GAAG,CAAsB,CAAC,OAAO,CAAC,CAAC,CAAA;AAC/E,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAO,kBAAkB,CAAC,CAAA;AAEhE;;;GAGG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,MAAc;IACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,eAAe,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,gDAAgD,eAAe,qEAAqE,CACtK,CAAA;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkB;IAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACtC,CAAC;IAED,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;SAC5D,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAE7D,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjE,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;KAC5D,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CACtB,IAAU,EACV,KAA6D;IAE7D,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,sCAAsC,IAAI,wDAAwD,CAC7I,CAAA;IACH,CAAC;IAED,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,gDAAgD,IAAI,iCAAiC,CAChI,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAC1B,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CACR,CAAC,+BAA+B,CAAC,GAAG,CAAC,GAA0B,CAAC,CACnE,CAC6B,CAAA;AAClC,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgC;IACxD,IAAI,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,UAAU,KAAK,CAAC,IAAI,EAAE,CAAA;IAC1D,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAoE;IAEpE,MAAM,SAAS,GAEX,EAAE,CAAA;IAEN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAW,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CACb,uDAAuD,GAAG,mEAAmE,CAC9H,CAAA;QACH,CAAC;QAED,SAAS,CAAC,GAAW,CAAC,GAAG,KAAmD,CAAA;IAC9E,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,kBAAkB,CACzB,QAA6B,EAC7B,SAA4E;IAE5E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAW,CAAA;IAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,+EAA+E,CAChF,CAAA;IACH,CAAC;IAED,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAqC,CAAA;IACnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA6B,CAAA;IAE9D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,YAAY,GAAG,KAAK,EAAE,KAAK,CAAA;QACjC,MAAM,kBAAkB,GAAG,YAAY,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAA;QAC9D,MAAM,aAAa,GAAG,YAAY,EAAE,IAAI,CAAA;QACxC,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,cAAc,GAClB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAA;QAClE,MAAM,eAAe,GACnB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,YAAY,EAAE,MAAM;YACtB,CAAC,CAAC,QAAQ,IAAI,QAAQ;gBACpB,CAAC,CAAE,QAAgC,CAAC,MAAM;gBAC1C,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,eAAe,GACnB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,YAAY,EAAE,MAAM;YACtB,CAAC,CAAC,QAAQ,IAAI,QAAQ;gBACpB,CAAC,CAAE,QAAyC,CAAC,MAAM;gBACnD,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,kBAAkB,GACtB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,WAAW,IAAI,YAAY;gBAC3B,CAAC,CAAC,YAAY,CAAC,SAAS;gBACxB,CAAC,CAAC,SAAS;YACb,CAAC,CAAC,WAAW,IAAI,QAAQ;gBACvB,CAAC,CAAC,QAAQ,CAAC,SAAS;gBACpB,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,wBAAwB,GAC5B,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,iBAAiB,IAAI,YAAY;gBACjC,CAAC,CAAC,YAAY,CAAC,eAAe;gBAC9B,CAAC,CAAC,SAAS;YACb,CAAC,CAAC,iBAAiB,IAAI,QAAQ;gBAC7B,CAAC,CAAC,QAAQ,CAAC,eAAe;gBAC1B,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,cAAc,GAClB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,OAAO,IAAI,YAAY;gBACvB,CAAC,CAAC,YAAY,CAAC,KAAK;gBACpB,CAAC,CAAC,SAAS;YACb,CAAC,CAAC,OAAO,IAAI,QAAQ;gBACnB,CAAC,CAAC,QAAQ,CAAC,KAAK;gBAChB,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,wBAAwB,GAC5B,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,iBAAiB,IAAI,YAAY;gBACjC,CAAC,CAAC,YAAY,CAAC,eAAe;gBAC9B,CAAC,CAAC,SAAS;YACb,CAAC,CAAC,iBAAiB,IAAI,QAAQ;gBAC7B,CAAC,CAAC,QAAQ,CAAC,eAAe;gBAC1B,CAAC,CAAC,SAAS,CAAA;QACjB,MAAM,kBAAkB,GACtB,OAAO,cAAc,KAAK,QAAQ;YAChC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAA;QAErD,gCAAgC,CAC9B,kBAAkB,EAClB,mBAAmB,IAAI,GAAG,CAC3B,CAAA;QAED,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;QAC5C,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE;YAC1B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB,CAAC;YAC1C,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;YAC3D,GAAG,CAAC,kBAAkB,KAAK,SAAS,IAAI;gBACtC,SAAS,EAAE,kBAAkB;aAC9B,CAAC;YACF,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAC9D,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;YACjE,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;YACjE,GAAG,CAAC,kBAAkB,KAAK,SAAS,IAAI;gBACtC,SAAS,EAAE,kBAAkB;aAC9B,CAAC;YACF,GAAG,CAAC,wBAAwB,KAAK,SAAS,IAAI;gBAC5C,eAAe,EAAE,wBAAwB;aAC1C,CAAC;YACF,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAC9D,GAAG,CAAC,wBAAwB,KAAK,SAAS,IAAI;gBAC5C,eAAe,EAAE,wBAAwB;aAC1C,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;IACvC,IAAI,CAAC,UAAU;QAAE,OAAO,EAAuC,CAAA;IAE/D,MAAM,MAAM,GAAG,EAAuC,CAAA;IAEtD,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IACxD,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,EAAuC,CAAA;IAE3E,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,GAAG,CAAA;QAElB,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA+B,CAAA;QAE/D,2FAA2F;QAC3F,IAAI,YAAY,GAAG,KAAK,CAAA;QACxB,8EAA8E;QAC9E,iDAAiD;QACjD,IAAI,SAA6B,CAAA;QACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;YAC5D,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;gBAC5C,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;gBACtC,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC/B,YAAY,GAAG,IAAI,CAAA;gBACrB,CAAC;gBACD,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC/D,SAAS,GAAG,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC9D,MAAM,YAAY,GAAG,yBAAyB,EAAE,CAAC,YAAY,CAAA;gBAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,QAAQ,CAAC,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAA;gBACnE,CAAC;gBACD,MAAM,iBAAiB,GAAwC,EAAE,CAAA;gBACjE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACtC,IAAI,GAAG,KAAK,SAAS;wBAAE,SAAQ;oBAC/B,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAE,CAAA;oBACvC,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACxC,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,CAAA;oBACjC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAA;oBACzB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;oBAC3B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;oBAC3B,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,CAAA;oBACjC,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,CAAA;oBAC7C,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAA;oBACzB,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,CAAA;oBAC7C,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAA;oBACvB,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACxB,iBAAiB,CAAC,IAAI,CAAC,GAAG;4BACxB,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,KAAK,EAAE,MAAM,eAAe,CAAC,KAAK,CAAC;4BACnC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;4BAC7C,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;4BACrC,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;4BACvC,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;4BACvC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;4BAC7C,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;4BACzD,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;4BACrC,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;4BACzD,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;yBACpC,CAAA;oBACH,CAAC;yBAAM,CAAC;wBACN,iBAAiB,CAAC,IAAI,CAAC,GAAG,MAAM,uBAAuB,CACrD,YAAY,EACZ;4BACE,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;yBAC9D,CACF,CAAA;oBACH,CAAC;gBACH,CAAC;gBACD,mBAAmB,EAAE,CAAA;gBACrB,QAAQ,CAAC,gBAAgB,CACvB,MAAM,EACN,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB;gBACjB,8DAA8D;gBAC9D,6CAA6C;gBAC7C,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAChD,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,MAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC9D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,QAAQ,CAAC,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAA;gBACnE,CAAC;gBACD,MAAM,gBAAgB,GAAmC,EAAE,CAAA;gBAC3D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACtC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAC7C,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAE,CAAA;wBACvC,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;wBACxC,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,CAAA;wBACjC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAA;wBACzB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;wBAC3B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;wBAC3B,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,CAAA;wBACjC,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,CAAA;wBAC7C,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAA;wBACzB,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,CAAA;wBAC7C,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAA;wBACvB,gBAAgB,CAAC,IAAI,CAAC,GAAG;4BACvB,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,KAAK,EAAE,MAAM,eAAe,CAAC,KAAK,CAAC;4BACnC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;4BAC7C,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;4BACrC,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;4BACvC,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;4BACvC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;4BAC7C,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;4BACzD,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;4BACrC,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;4BACzD,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;yBACpC,CAAA;oBACH,CAAC;gBACH,CAAC;gBACD,mBAAmB,EAAE,CAAA;gBACrB,QAAQ,CAAC,WAAW,CAClB,EAAE,EACF,MAAM,EACN,SAAS,EACT,gBAAgB;gBAChB,8DAA8D;gBAC9D,6CAA6C;gBAC7C,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAChD,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,YAA2B,EAC3B,KAAmD;IAEnD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAC3D,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAA;IACvE,OAAO;QACL,SAAS,EAAE,MAAM,oBAAoB,CAAC,IAAI,EAAE,YAAY,CAAC;QACzD,SAAS,EAAE,IAAI;QACf,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"cue.js","sourceRoot":"","sources":["../../src/cue.ts"],"names":[],"mappings":"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"}