@nodaro/sdk 1.24.0 → 1.25.0

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.d.cts CHANGED
@@ -222,10 +222,17 @@ declare class WorkflowsResource {
222
222
  }>;
223
223
  /**
224
224
  * Import a `WorkflowExport` bundle into the specified project.
225
- * Re-creates any bundled assets (characters, objects, locations) under your account.
225
+ * Re-creates any bundled assets (characters, objects, creatures, locations)
226
+ * under your account, and re-points BOTH the entity nodes and every `@`-chip
227
+ * (`ConnectedReference`) bound in the graph at the rows it created.
226
228
  * Media the bundle references on other hosts is copied onto this instance's
227
- * storage where reachable; `importReport` says what was copied, what could
228
- * not be reached, and what was skipped (and why).
229
+ * storage where reachable; a bundled entity's images are copied whoever
230
+ * hosts them, because they are the exporter's bytes and their lifecycle is
231
+ * not yours. `importReport` says what was copied, what could not be reached
232
+ * and what was skipped (and why); `assetIdMap` maps each bundled entity id
233
+ * to the row created for it (for chips you hold outside the graph), and
234
+ * `assetsSkipped` names the entities your storage quota left uncreated —
235
+ * the workflow itself still lands.
229
236
  */
230
237
  import(input: WorkflowExport & {
231
238
  projectId: string;
@@ -3821,6 +3828,18 @@ declare class VoicesResource {
3821
3828
  type VoiceChangerProVoice = string | {
3822
3829
  /** Target voice — premade name (`"Rachel"`, `"Aria"`, …) or an ElevenLabs UUID for a custom clone. */
3823
3830
  voiceId: string;
3831
+ /**
3832
+ * Which lane converts this speaker. `"sts"` (default) is the classic
3833
+ * speech-to-speech recast; `"v3"` is RE-SPEAK — the performance is
3834
+ * REGENERATED from the transcript with eleven_v3 (supports `[audio
3835
+ * tags]`; original delivery is replaced, and lips won't match on video).
3836
+ * A v3 speaker needs transcript text: pass an `analysis` whose
3837
+ * `segments[].text` carries it (analyze now emits this), or omit
3838
+ * `analysis` and the engine re-speaks from its own transcription. For
3839
+ * `"v3"`, `stability` accepts exactly 0 / 0.5 / 1, and
3840
+ * `similarityBoost` / `style` / `useSpeakerBoost` are ignored.
3841
+ */
3842
+ engine?: "sts" | "v3";
3824
3843
  /** ElevenLabs stability (0–1). Higher = steadier, lower = more expressive. */
3825
3844
  stability?: number;
3826
3845
  /** ElevenLabs similarity boost (0–1) — how closely the output hugs the target voice's timbre. */
@@ -3923,10 +3942,13 @@ interface VoiceChangerProInput {
3923
3942
  interface VcpAnalysisSpeaker {
3924
3943
  /** Stable speaker id (first-appearance order). */
3925
3944
  id: string;
3926
- /** The speaker's spoken time ranges (seconds). */
3945
+ /** The speaker's spoken time ranges (seconds). `text` is what was said in
3946
+ * the range — the paid input for a speaker recast with `engine: "v3"`
3947
+ * (editable before conversion); the STS lane ignores it. */
3927
3948
  segments: Array<{
3928
3949
  start: number;
3929
3950
  end: number;
3951
+ text?: string;
3930
3952
  }>;
3931
3953
  /** When the speaker first speaks (seconds). */
3932
3954
  firstStartSec?: number;
@@ -4022,20 +4044,39 @@ interface VoiceRemixInput {
4022
4044
  /** Optional extra prompt context (≤8000 chars). */
4023
4045
  userPrompt?: string;
4024
4046
  }
4025
- /** Input for {@link VoicesResource.dub}. */
4047
+ /** Input for {@link VoicesResource.dub}. Provide exactly ONE source:
4048
+ * `audioUrl` (dubbed audio out), `videoUrl` (the dubbed VIDEO out, plus the
4049
+ * dubbed audio track as `output_data.audioUrl`), or `sourceUrl` (a public
4050
+ * YouTube/TikTok/direct link ElevenLabs fetches itself). Priced per minute
4051
+ * of the dubbed span; the span is capped at 30 minutes — use
4052
+ * `startTime`/`endTime` to dub part of a longer source. */
4026
4053
  interface DubbingInput {
4027
- /** URL of the audio to dub. */
4028
- audioUrl: string;
4054
+ /** URL of the audio to dub (audio mode). */
4055
+ audioUrl?: string;
4056
+ /** URL of the video to dub — the result is the dubbed VIDEO (+ audio track). */
4057
+ videoUrl?: string;
4058
+ /** Public page/media URL (YouTube, TikTok, or a direct link) — ElevenLabs fetches it directly. */
4059
+ sourceUrl?: string;
4029
4060
  /** Target language ISO code (2–10 chars), e.g. `"es"`, `"pt-BR"`. */
4030
4061
  targetLanguage: string;
4031
4062
  /** Source language ISO code; auto-detected when omitted. */
4032
4063
  sourceLanguage?: string;
4033
- /** Expected number of speakers (1–20) — improves separation when known. */
4064
+ /** Expected number of speakers (1–20; 0 = auto-detect) — improves separation when known. */
4034
4065
  numSpeakers?: number;
4035
4066
  /** Keep the original voices instead of cloning them into the target language. */
4036
4067
  disableVoiceCloning?: boolean;
4037
4068
  /** Drop the background/music bed from the dubbed output. */
4038
4069
  dropBackgroundAudio?: boolean;
4070
+ /** Dub only this window of the source (seconds). */
4071
+ startTime?: number;
4072
+ endTime?: number;
4073
+ /** Keep the source resolution on video dubs (slower render). */
4074
+ highestResolution?: boolean;
4075
+ useProfanityFilter?: boolean;
4076
+ /** Experimental: steer dubbed voices toward an accent. */
4077
+ targetAccent?: string;
4078
+ /** Apply ElevenLabs' own watermark to video dubs. */
4079
+ watermark?: boolean;
4039
4080
  }
4040
4081
 
4041
4082
  /**
package/dist/index.d.ts CHANGED
@@ -222,10 +222,17 @@ declare class WorkflowsResource {
222
222
  }>;
223
223
  /**
224
224
  * Import a `WorkflowExport` bundle into the specified project.
225
- * Re-creates any bundled assets (characters, objects, locations) under your account.
225
+ * Re-creates any bundled assets (characters, objects, creatures, locations)
226
+ * under your account, and re-points BOTH the entity nodes and every `@`-chip
227
+ * (`ConnectedReference`) bound in the graph at the rows it created.
226
228
  * Media the bundle references on other hosts is copied onto this instance's
227
- * storage where reachable; `importReport` says what was copied, what could
228
- * not be reached, and what was skipped (and why).
229
+ * storage where reachable; a bundled entity's images are copied whoever
230
+ * hosts them, because they are the exporter's bytes and their lifecycle is
231
+ * not yours. `importReport` says what was copied, what could not be reached
232
+ * and what was skipped (and why); `assetIdMap` maps each bundled entity id
233
+ * to the row created for it (for chips you hold outside the graph), and
234
+ * `assetsSkipped` names the entities your storage quota left uncreated —
235
+ * the workflow itself still lands.
229
236
  */
230
237
  import(input: WorkflowExport & {
231
238
  projectId: string;
@@ -3821,6 +3828,18 @@ declare class VoicesResource {
3821
3828
  type VoiceChangerProVoice = string | {
3822
3829
  /** Target voice — premade name (`"Rachel"`, `"Aria"`, …) or an ElevenLabs UUID for a custom clone. */
3823
3830
  voiceId: string;
3831
+ /**
3832
+ * Which lane converts this speaker. `"sts"` (default) is the classic
3833
+ * speech-to-speech recast; `"v3"` is RE-SPEAK — the performance is
3834
+ * REGENERATED from the transcript with eleven_v3 (supports `[audio
3835
+ * tags]`; original delivery is replaced, and lips won't match on video).
3836
+ * A v3 speaker needs transcript text: pass an `analysis` whose
3837
+ * `segments[].text` carries it (analyze now emits this), or omit
3838
+ * `analysis` and the engine re-speaks from its own transcription. For
3839
+ * `"v3"`, `stability` accepts exactly 0 / 0.5 / 1, and
3840
+ * `similarityBoost` / `style` / `useSpeakerBoost` are ignored.
3841
+ */
3842
+ engine?: "sts" | "v3";
3824
3843
  /** ElevenLabs stability (0–1). Higher = steadier, lower = more expressive. */
3825
3844
  stability?: number;
3826
3845
  /** ElevenLabs similarity boost (0–1) — how closely the output hugs the target voice's timbre. */
@@ -3923,10 +3942,13 @@ interface VoiceChangerProInput {
3923
3942
  interface VcpAnalysisSpeaker {
3924
3943
  /** Stable speaker id (first-appearance order). */
3925
3944
  id: string;
3926
- /** The speaker's spoken time ranges (seconds). */
3945
+ /** The speaker's spoken time ranges (seconds). `text` is what was said in
3946
+ * the range — the paid input for a speaker recast with `engine: "v3"`
3947
+ * (editable before conversion); the STS lane ignores it. */
3927
3948
  segments: Array<{
3928
3949
  start: number;
3929
3950
  end: number;
3951
+ text?: string;
3930
3952
  }>;
3931
3953
  /** When the speaker first speaks (seconds). */
3932
3954
  firstStartSec?: number;
@@ -4022,20 +4044,39 @@ interface VoiceRemixInput {
4022
4044
  /** Optional extra prompt context (≤8000 chars). */
4023
4045
  userPrompt?: string;
4024
4046
  }
4025
- /** Input for {@link VoicesResource.dub}. */
4047
+ /** Input for {@link VoicesResource.dub}. Provide exactly ONE source:
4048
+ * `audioUrl` (dubbed audio out), `videoUrl` (the dubbed VIDEO out, plus the
4049
+ * dubbed audio track as `output_data.audioUrl`), or `sourceUrl` (a public
4050
+ * YouTube/TikTok/direct link ElevenLabs fetches itself). Priced per minute
4051
+ * of the dubbed span; the span is capped at 30 minutes — use
4052
+ * `startTime`/`endTime` to dub part of a longer source. */
4026
4053
  interface DubbingInput {
4027
- /** URL of the audio to dub. */
4028
- audioUrl: string;
4054
+ /** URL of the audio to dub (audio mode). */
4055
+ audioUrl?: string;
4056
+ /** URL of the video to dub — the result is the dubbed VIDEO (+ audio track). */
4057
+ videoUrl?: string;
4058
+ /** Public page/media URL (YouTube, TikTok, or a direct link) — ElevenLabs fetches it directly. */
4059
+ sourceUrl?: string;
4029
4060
  /** Target language ISO code (2–10 chars), e.g. `"es"`, `"pt-BR"`. */
4030
4061
  targetLanguage: string;
4031
4062
  /** Source language ISO code; auto-detected when omitted. */
4032
4063
  sourceLanguage?: string;
4033
- /** Expected number of speakers (1–20) — improves separation when known. */
4064
+ /** Expected number of speakers (1–20; 0 = auto-detect) — improves separation when known. */
4034
4065
  numSpeakers?: number;
4035
4066
  /** Keep the original voices instead of cloning them into the target language. */
4036
4067
  disableVoiceCloning?: boolean;
4037
4068
  /** Drop the background/music bed from the dubbed output. */
4038
4069
  dropBackgroundAudio?: boolean;
4070
+ /** Dub only this window of the source (seconds). */
4071
+ startTime?: number;
4072
+ endTime?: number;
4073
+ /** Keep the source resolution on video dubs (slower render). */
4074
+ highestResolution?: boolean;
4075
+ useProfanityFilter?: boolean;
4076
+ /** Experimental: steer dubbed voices toward an accent. */
4077
+ targetAccent?: string;
4078
+ /** Apply ElevenLabs' own watermark to video dubs. */
4079
+ watermark?: boolean;
4039
4080
  }
4040
4081
 
4041
4082
  /**
package/dist/index.js CHANGED
@@ -238,10 +238,17 @@ var WorkflowsResource = class {
238
238
  }
239
239
  /**
240
240
  * Import a `WorkflowExport` bundle into the specified project.
241
- * Re-creates any bundled assets (characters, objects, locations) under your account.
241
+ * Re-creates any bundled assets (characters, objects, creatures, locations)
242
+ * under your account, and re-points BOTH the entity nodes and every `@`-chip
243
+ * (`ConnectedReference`) bound in the graph at the rows it created.
242
244
  * Media the bundle references on other hosts is copied onto this instance's
243
- * storage where reachable; `importReport` says what was copied, what could
244
- * not be reached, and what was skipped (and why).
245
+ * storage where reachable; a bundled entity's images are copied whoever
246
+ * hosts them, because they are the exporter's bytes and their lifecycle is
247
+ * not yours. `importReport` says what was copied, what could not be reached
248
+ * and what was skipped (and why); `assetIdMap` maps each bundled entity id
249
+ * to the row created for it (for chips you hold outside the graph), and
250
+ * `assetsSkipped` names the entities your storage quota left uncreated —
251
+ * the workflow itself still lands.
245
252
  */
246
253
  import(input) {
247
254
  const { projectId, ...workflowJson } = input;
@@ -2628,7 +2635,7 @@ var WorkspacesResource = class {
2628
2635
  return this.client.request("POST", "/v1/workspaces/join", { body: { code } });
2629
2636
  }
2630
2637
  };
2631
- var SDK_VERSION = "1.24.0" ;
2638
+ var SDK_VERSION = "1.25.0" ;
2632
2639
  var CLIENT_HEADER = "X-Nodaro-Client";
2633
2640
  var isBrowser = () => typeof window !== "undefined" && typeof window.document !== "undefined";
2634
2641
  var NodaroClient = class _NodaroClient {