@nodaro/sdk 2.31.0 → 2.33.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/{chunk-XQAIEPAZ.js → chunk-4CXB7RA6.js} +2 -2
- package/dist/chunk-4CXB7RA6.js.map +1 -0
- package/dist/{chunk-REUFPWM7.cjs → chunk-56NJIP7P.cjs} +3 -3
- package/dist/{chunk-REUFPWM7.cjs.map → chunk-56NJIP7P.cjs.map} +1 -1
- package/dist/{chunk-I4A5VJRL.js → chunk-5A7J24LN.js} +68 -20
- package/dist/chunk-5A7J24LN.js.map +1 -0
- package/dist/{chunk-QITJGSFA.js → chunk-6ECW23GA.js} +6 -2
- package/dist/chunk-6ECW23GA.js.map +1 -0
- package/dist/{chunk-RAZN6C5R.cjs → chunk-6T54F65Q.cjs} +2 -2
- package/dist/{chunk-PHKYIWE4.cjs.map → chunk-6T54F65Q.cjs.map} +1 -1
- package/dist/{chunk-PHKYIWE4.cjs → chunk-7CK6I4CT.cjs} +2 -2
- package/dist/{chunk-RAZN6C5R.cjs.map → chunk-7CK6I4CT.cjs.map} +1 -1
- package/dist/{chunk-BFMKPELU.cjs → chunk-B7RG6AUQ.cjs} +6 -2
- package/dist/chunk-B7RG6AUQ.cjs.map +1 -0
- package/dist/{chunk-7ISSKQ6S.cjs → chunk-GB724HW2.cjs} +2 -2
- package/dist/chunk-GB724HW2.cjs.map +1 -0
- package/dist/{chunk-UI2NXUML.cjs → chunk-GKQSA24K.cjs} +10 -10
- package/dist/{chunk-UI2NXUML.cjs.map → chunk-GKQSA24K.cjs.map} +1 -1
- package/dist/{chunk-5WAI7VGO.js → chunk-JSCC2N7N.js} +6 -6
- package/dist/{chunk-5WAI7VGO.js.map → chunk-JSCC2N7N.js.map} +1 -1
- package/dist/{chunk-WUIEZ6Z4.cjs → chunk-RHJRLXKY.cjs} +68 -20
- package/dist/chunk-RHJRLXKY.cjs.map +1 -0
- package/dist/chunk-UKB64254.js +3 -0
- package/dist/{chunk-W7YI5UT3.js.map → chunk-UKB64254.js.map} +1 -1
- package/dist/{chunk-LHP2CWHD.js → chunk-Y5CYFNNW.js} +3 -3
- package/dist/{chunk-LHP2CWHD.js.map → chunk-Y5CYFNNW.js.map} +1 -1
- package/dist/chunk-ZYPH2FPT.js +3 -0
- package/dist/{chunk-ZH4F2P2G.js.map → chunk-ZYPH2FPT.js.map} +1 -1
- package/dist/entries/characters.d.cts +1 -1
- package/dist/entries/characters.d.ts +1 -1
- package/dist/entries/client.cjs +10 -10
- package/dist/entries/client.d.cts +1 -1
- package/dist/entries/client.d.ts +1 -1
- package/dist/entries/client.js +5 -5
- package/dist/entries/core.cjs +5 -5
- package/dist/entries/core.js +1 -1
- package/dist/entries/creatures.d.cts +1 -1
- package/dist/entries/creatures.d.ts +1 -1
- package/dist/entries/credits.cjs +2 -2
- package/dist/entries/credits.d.cts +8 -0
- package/dist/entries/credits.d.ts +8 -0
- package/dist/entries/credits.js +1 -1
- package/dist/entries/edit.cjs +8 -8
- package/dist/entries/edit.d.cts +134 -24
- package/dist/entries/edit.d.ts +134 -24
- package/dist/entries/edit.js +2 -2
- package/dist/entries/locations.d.cts +1 -1
- package/dist/entries/locations.d.ts +1 -1
- package/dist/entries/nodes.cjs +5 -5
- package/dist/entries/nodes.d.cts +2 -2
- package/dist/entries/nodes.d.ts +2 -2
- package/dist/entries/nodes.js +2 -2
- package/dist/entries/objects.d.cts +1 -1
- package/dist/entries/objects.d.ts +1 -1
- package/dist/entries/scene3d.d.cts +2 -2
- package/dist/entries/scene3d.d.ts +2 -2
- package/dist/index.cjs +23 -23
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +7 -7
- package/dist/{nodes-C2zu3uqn.d.ts → nodes-C-wrO6Sg.d.ts} +106 -6
- package/dist/{nodes-BPvrAoUs.d.cts → nodes-J8ByUN8z.d.cts} +106 -6
- package/package.json +2 -2
- package/dist/chunk-7ISSKQ6S.cjs.map +0 -1
- package/dist/chunk-BFMKPELU.cjs.map +0 -1
- package/dist/chunk-I4A5VJRL.js.map +0 -1
- package/dist/chunk-QITJGSFA.js.map +0 -1
- package/dist/chunk-W7YI5UT3.js +0 -3
- package/dist/chunk-WUIEZ6Z4.cjs.map +0 -1
- package/dist/chunk-XQAIEPAZ.js.map +0 -1
- package/dist/chunk-ZH4F2P2G.js +0 -3
package/dist/entries/client.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkGKQSA24K_cjs = require('../chunk-GKQSA24K.cjs');
|
|
4
4
|
require('../chunk-3B47IHB3.cjs');
|
|
5
5
|
require('../chunk-VGWOIWRQ.cjs');
|
|
6
6
|
require('../chunk-LKH5M44B.cjs');
|
|
@@ -23,7 +23,7 @@ require('../chunk-YDRXBRW2.cjs');
|
|
|
23
23
|
require('../chunk-7QOCWJKD.cjs');
|
|
24
24
|
require('../chunk-ZCWKX4V6.cjs');
|
|
25
25
|
require('../chunk-34PU2DAT.cjs');
|
|
26
|
-
require('../chunk-
|
|
26
|
+
require('../chunk-B7RG6AUQ.cjs');
|
|
27
27
|
require('../chunk-GVIFLUYZ.cjs');
|
|
28
28
|
require('../chunk-CR5E2SF3.cjs');
|
|
29
29
|
require('../chunk-J5LGGCAS.cjs');
|
|
@@ -39,11 +39,11 @@ require('../chunk-43FVH6LJ.cjs');
|
|
|
39
39
|
require('../chunk-YFS2LMG4.cjs');
|
|
40
40
|
require('../chunk-NLQQHJ25.cjs');
|
|
41
41
|
require('../chunk-KNMW722T.cjs');
|
|
42
|
-
var
|
|
42
|
+
var chunk56NJIP7P_cjs = require('../chunk-56NJIP7P.cjs');
|
|
43
43
|
require('../chunk-HGCVWOGK.cjs');
|
|
44
|
-
require('../chunk-
|
|
44
|
+
require('../chunk-GB724HW2.cjs');
|
|
45
45
|
require('../chunk-A3S55XGF.cjs');
|
|
46
|
-
require('../chunk-
|
|
46
|
+
require('../chunk-RHJRLXKY.cjs');
|
|
47
47
|
require('../chunk-N6GLZOE4.cjs');
|
|
48
48
|
require('../chunk-DKEYSJCE.cjs');
|
|
49
49
|
require('../chunk-GA4LZZKQ.cjs');
|
|
@@ -56,23 +56,23 @@ require('../chunk-WK4VXPPZ.cjs');
|
|
|
56
56
|
|
|
57
57
|
Object.defineProperty(exports, "NodaroClient", {
|
|
58
58
|
enumerable: true,
|
|
59
|
-
get: function () { return
|
|
59
|
+
get: function () { return chunkGKQSA24K_cjs.NodaroClient; }
|
|
60
60
|
});
|
|
61
61
|
Object.defineProperty(exports, "createClient", {
|
|
62
62
|
enumerable: true,
|
|
63
|
-
get: function () { return
|
|
63
|
+
get: function () { return chunkGKQSA24K_cjs.createClient; }
|
|
64
64
|
});
|
|
65
65
|
Object.defineProperty(exports, "CallbackAuth", {
|
|
66
66
|
enumerable: true,
|
|
67
|
-
get: function () { return
|
|
67
|
+
get: function () { return chunk56NJIP7P_cjs.CallbackAuth; }
|
|
68
68
|
});
|
|
69
69
|
Object.defineProperty(exports, "StaticTokenAuth", {
|
|
70
70
|
enumerable: true,
|
|
71
|
-
get: function () { return
|
|
71
|
+
get: function () { return chunk56NJIP7P_cjs.StaticTokenAuth; }
|
|
72
72
|
});
|
|
73
73
|
Object.defineProperty(exports, "supabaseAuth", {
|
|
74
74
|
enumerable: true,
|
|
75
|
-
get: function () { return
|
|
75
|
+
get: function () { return chunk56NJIP7P_cjs.supabaseAuth; }
|
|
76
76
|
});
|
|
77
77
|
//# sourceMappingURL=client.cjs.map
|
|
78
78
|
//# sourceMappingURL=client.cjs.map
|
|
@@ -4,7 +4,7 @@ import { SessionsResource } from './sessions.cjs';
|
|
|
4
4
|
import { JobsResource } from './jobs.cjs';
|
|
5
5
|
import { VideoProResource } from './video-pro.cjs';
|
|
6
6
|
import { ExecutionsResource } from './executions.cjs';
|
|
7
|
-
import {
|
|
7
|
+
import { t as NodesResource } from '../nodes-J8ByUN8z.cjs';
|
|
8
8
|
import { Scene3DResource } from './scene3d.cjs';
|
|
9
9
|
import { N as NodaroClientCore, h as DeveloperAppsResource, a as ClientOptions } from '../developer-apps-zSQXWmEG.cjs';
|
|
10
10
|
export { A as Auth, C as CallbackAuth, b as ConnectedApp, S as StaticTokenAuth, i as UserIdentity, s as supabaseAuth } from '../developer-apps-zSQXWmEG.cjs';
|
package/dist/entries/client.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { SessionsResource } from './sessions.js';
|
|
|
4
4
|
import { JobsResource } from './jobs.js';
|
|
5
5
|
import { VideoProResource } from './video-pro.js';
|
|
6
6
|
import { ExecutionsResource } from './executions.js';
|
|
7
|
-
import {
|
|
7
|
+
import { t as NodesResource } from '../nodes-C-wrO6Sg.js';
|
|
8
8
|
import { Scene3DResource } from './scene3d.js';
|
|
9
9
|
import { N as NodaroClientCore, h as DeveloperAppsResource, a as ClientOptions } from '../developer-apps-zSQXWmEG.js';
|
|
10
10
|
export { A as Auth, C as CallbackAuth, b as ConnectedApp, S as StaticTokenAuth, i as UserIdentity, s as supabaseAuth } from '../developer-apps-zSQXWmEG.js';
|
package/dist/entries/client.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { NodaroClient, createClient } from '../chunk-
|
|
1
|
+
export { NodaroClient, createClient } from '../chunk-JSCC2N7N.js';
|
|
2
2
|
import '../chunk-YN6CBIIB.js';
|
|
3
3
|
import '../chunk-ZXJQSFIA.js';
|
|
4
4
|
import '../chunk-Z5GLY4R3.js';
|
|
@@ -21,7 +21,7 @@ import '../chunk-NNHWH7ER.js';
|
|
|
21
21
|
import '../chunk-Y6V6CBY5.js';
|
|
22
22
|
import '../chunk-YVU2M7MI.js';
|
|
23
23
|
import '../chunk-JTAW54UM.js';
|
|
24
|
-
import '../chunk-
|
|
24
|
+
import '../chunk-6ECW23GA.js';
|
|
25
25
|
import '../chunk-Z7LGWNI7.js';
|
|
26
26
|
import '../chunk-7LSFG2AF.js';
|
|
27
27
|
import '../chunk-ALSLZG3U.js';
|
|
@@ -37,11 +37,11 @@ import '../chunk-SFB4YLCS.js';
|
|
|
37
37
|
import '../chunk-BU5A6K4C.js';
|
|
38
38
|
import '../chunk-I6CXC345.js';
|
|
39
39
|
import '../chunk-JMOKD6ZP.js';
|
|
40
|
-
export { CallbackAuth, StaticTokenAuth, supabaseAuth } from '../chunk-
|
|
40
|
+
export { CallbackAuth, StaticTokenAuth, supabaseAuth } from '../chunk-Y5CYFNNW.js';
|
|
41
41
|
import '../chunk-CK3AMMSC.js';
|
|
42
|
-
import '../chunk-
|
|
42
|
+
import '../chunk-4CXB7RA6.js';
|
|
43
43
|
import '../chunk-65E3JBFZ.js';
|
|
44
|
-
import '../chunk-
|
|
44
|
+
import '../chunk-5A7J24LN.js';
|
|
45
45
|
import '../chunk-JGS6YBDW.js';
|
|
46
46
|
import '../chunk-53SXNN3A.js';
|
|
47
47
|
import '../chunk-3QFTP5P5.js';
|
package/dist/entries/core.cjs
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
require('../chunk-X7XP5WBP.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunk56NJIP7P_cjs = require('../chunk-56NJIP7P.cjs');
|
|
5
5
|
require('../chunk-N6GLZOE4.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
Object.defineProperty(exports, "CallbackAuth", {
|
|
10
10
|
enumerable: true,
|
|
11
|
-
get: function () { return
|
|
11
|
+
get: function () { return chunk56NJIP7P_cjs.CallbackAuth; }
|
|
12
12
|
});
|
|
13
13
|
Object.defineProperty(exports, "NodaroClientCore", {
|
|
14
14
|
enumerable: true,
|
|
15
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunk56NJIP7P_cjs.NodaroClientCore; }
|
|
16
16
|
});
|
|
17
17
|
Object.defineProperty(exports, "StaticTokenAuth", {
|
|
18
18
|
enumerable: true,
|
|
19
|
-
get: function () { return
|
|
19
|
+
get: function () { return chunk56NJIP7P_cjs.StaticTokenAuth; }
|
|
20
20
|
});
|
|
21
21
|
Object.defineProperty(exports, "supabaseAuth", {
|
|
22
22
|
enumerable: true,
|
|
23
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunk56NJIP7P_cjs.supabaseAuth; }
|
|
24
24
|
});
|
|
25
25
|
//# sourceMappingURL=core.cjs.map
|
|
26
26
|
//# sourceMappingURL=core.cjs.map
|
package/dist/entries/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import '../chunk-AUDHV3OE.js';
|
|
2
|
-
export { CallbackAuth, NodaroClientCore, StaticTokenAuth, supabaseAuth } from '../chunk-
|
|
2
|
+
export { CallbackAuth, NodaroClientCore, StaticTokenAuth, supabaseAuth } from '../chunk-Y5CYFNNW.js';
|
|
3
3
|
import '../chunk-JGS6YBDW.js';
|
|
4
4
|
//# sourceMappingURL=core.js.map
|
|
5
5
|
//# sourceMappingURL=core.js.map
|
|
@@ -2,7 +2,7 @@ import { CreatureAttachColumn, ObjectAspectRatio } from '@nodaro/shared/entities
|
|
|
2
2
|
export { OBJECT_ASPECT_DEFAULTS as CREATURE_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS as CREATURE_ASPECT_OPTIONS, CREATURE_ATTACH_COLUMNS, ObjectAspectRatio as CreatureAspectRatio, CreatureAttachColumn } from '@nodaro/shared/entities';
|
|
3
3
|
import { TtsProvider } from '@nodaro/shared/models';
|
|
4
4
|
import { N as NodaroClientCore } from '../developer-apps-zSQXWmEG.cjs';
|
|
5
|
-
import { l as GenerationSessionParams } from '../nodes-
|
|
5
|
+
import { l as GenerationSessionParams } from '../nodes-J8ByUN8z.cjs';
|
|
6
6
|
import '@nodaro/shared/apps';
|
|
7
7
|
import '@nodaro/shared/organizations';
|
|
8
8
|
import '@nodaro/shared/types';
|
|
@@ -2,7 +2,7 @@ import { CreatureAttachColumn, ObjectAspectRatio } from '@nodaro/shared/entities
|
|
|
2
2
|
export { OBJECT_ASPECT_DEFAULTS as CREATURE_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS as CREATURE_ASPECT_OPTIONS, CREATURE_ATTACH_COLUMNS, ObjectAspectRatio as CreatureAspectRatio, CreatureAttachColumn } from '@nodaro/shared/entities';
|
|
3
3
|
import { TtsProvider } from '@nodaro/shared/models';
|
|
4
4
|
import { N as NodaroClientCore } from '../developer-apps-zSQXWmEG.js';
|
|
5
|
-
import { l as GenerationSessionParams } from '../nodes-
|
|
5
|
+
import { l as GenerationSessionParams } from '../nodes-C-wrO6Sg.js';
|
|
6
6
|
import '@nodaro/shared/apps';
|
|
7
7
|
import '@nodaro/shared/organizations';
|
|
8
8
|
import '@nodaro/shared/types';
|
package/dist/entries/credits.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
require('../chunk-ALUUBPDG.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunkGB724HW2_cjs = require('../chunk-GB724HW2.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "CreditsResource", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkGB724HW2_cjs.CreditsResource; }
|
|
11
11
|
});
|
|
12
12
|
//# sourceMappingURL=credits.cjs.map
|
|
13
13
|
//# sourceMappingURL=credits.cjs.map
|
|
@@ -69,6 +69,14 @@ interface WelcomeOfferClaimInput extends SignupKeys {
|
|
|
69
69
|
* stored as absent, never refused.
|
|
70
70
|
*/
|
|
71
71
|
sourceApp?: string;
|
|
72
|
+
/**
|
|
73
|
+
* The interface language the user answered in — the id of a language Nodaro
|
|
74
|
+
* ships, such as `"en"`, `"ja"` or `"pt-BR"`. Matched exactly and
|
|
75
|
+
* case-sensitively: `"en-US"` or `"pt-br"` is stored as absent, never refused.
|
|
76
|
+
* Recorded with the consent as the language of the LATEST consent: a later
|
|
77
|
+
* "yes" in another language replaces it.
|
|
78
|
+
*/
|
|
79
|
+
locale?: string;
|
|
72
80
|
}
|
|
73
81
|
/** The answer of `POST /v1/credits/welcome-offer/claim`. */
|
|
74
82
|
interface WelcomeOfferClaimResult {
|
|
@@ -69,6 +69,14 @@ interface WelcomeOfferClaimInput extends SignupKeys {
|
|
|
69
69
|
* stored as absent, never refused.
|
|
70
70
|
*/
|
|
71
71
|
sourceApp?: string;
|
|
72
|
+
/**
|
|
73
|
+
* The interface language the user answered in — the id of a language Nodaro
|
|
74
|
+
* ships, such as `"en"`, `"ja"` or `"pt-BR"`. Matched exactly and
|
|
75
|
+
* case-sensitively: `"en-US"` or `"pt-br"` is stored as absent, never refused.
|
|
76
|
+
* Recorded with the consent as the language of the LATEST consent: a later
|
|
77
|
+
* "yes" in another language replaces it.
|
|
78
|
+
*/
|
|
79
|
+
locale?: string;
|
|
72
80
|
}
|
|
73
81
|
/** The answer of `POST /v1/credits/welcome-offer/claim`. */
|
|
74
82
|
interface WelcomeOfferClaimResult {
|
package/dist/entries/credits.js
CHANGED
package/dist/entries/edit.cjs
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunk6T54F65Q_cjs = require('../chunk-6T54F65Q.cjs');
|
|
4
|
+
var chunkRHJRLXKY_cjs = require('../chunk-RHJRLXKY.cjs');
|
|
5
5
|
require('../chunk-N6GLZOE4.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
Object.defineProperty(exports, "unwrapEditPlanOutput", {
|
|
10
10
|
enumerable: true,
|
|
11
|
-
get: function () { return
|
|
11
|
+
get: function () { return chunk6T54F65Q_cjs.unwrapEditPlanOutput; }
|
|
12
12
|
});
|
|
13
13
|
Object.defineProperty(exports, "CLIP_PACK_MAX_TARGET_SEC", {
|
|
14
14
|
enumerable: true,
|
|
15
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkRHJRLXKY_cjs.CLIP_PACK_MAX_TARGET_SEC; }
|
|
16
16
|
});
|
|
17
17
|
Object.defineProperty(exports, "CLIP_PACK_MIN_TARGET_SEC", {
|
|
18
18
|
enumerable: true,
|
|
19
|
-
get: function () { return
|
|
19
|
+
get: function () { return chunkRHJRLXKY_cjs.CLIP_PACK_MIN_TARGET_SEC; }
|
|
20
20
|
});
|
|
21
21
|
Object.defineProperty(exports, "EditResource", {
|
|
22
22
|
enumerable: true,
|
|
23
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunkRHJRLXKY_cjs.EditResource; }
|
|
24
24
|
});
|
|
25
25
|
Object.defineProperty(exports, "TRAILER_FORMATS", {
|
|
26
26
|
enumerable: true,
|
|
27
|
-
get: function () { return
|
|
27
|
+
get: function () { return chunkRHJRLXKY_cjs.TRAILER_FORMATS; }
|
|
28
28
|
});
|
|
29
29
|
Object.defineProperty(exports, "USE_CASE_NODE_TYPES", {
|
|
30
30
|
enumerable: true,
|
|
31
|
-
get: function () { return
|
|
31
|
+
get: function () { return chunkRHJRLXKY_cjs.USE_CASE_NODE_TYPES; }
|
|
32
32
|
});
|
|
33
33
|
//# sourceMappingURL=edit.cjs.map
|
|
34
34
|
//# sourceMappingURL=edit.cjs.map
|
package/dist/entries/edit.d.cts
CHANGED
|
@@ -46,20 +46,51 @@ interface SpeakerMapInput {
|
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
48
|
* The inputs of the podcast use-case runs on the `edit` resource (Tighten
|
|
49
|
-
* Episode, Chapters, Trailer, Clip Pack) and the request body each one sends.
|
|
49
|
+
* Episode, Chapters, Trailer, Clip Pack, Speaker Layout) and the request body each one sends.
|
|
50
50
|
* Split from `edit.ts`, which holds the methods, the type list and the
|
|
51
51
|
* continue routes; every name here is re-exported from there.
|
|
52
52
|
*/
|
|
53
53
|
|
|
54
54
|
/**
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
55
|
+
* The recordings of a use-case run: one (`mediaUrl`), or the recordings of one
|
|
56
|
+
* conversation (`mediaUrls`, in order — the cameras; one may be sound only),
|
|
57
|
+
* an optional Master audio and the Cameras settings. Pass `mediaUrl` or
|
|
58
|
+
* `mediaUrls`, not both.
|
|
59
|
+
*
|
|
60
|
+
* Several recordings or a Master audio need Speaker Map, which tells who is on
|
|
61
|
+
* which camera: where it is not available to you (not yet on nodaro.ai) the
|
|
62
|
+
* request is refused `403 node_not_available` — send one recording.
|
|
59
63
|
*/
|
|
60
|
-
interface
|
|
64
|
+
interface UseCaseRecordingsInput {
|
|
61
65
|
/** The recording — a video or audio URL, up to 3 hours. */
|
|
62
|
-
mediaUrl
|
|
66
|
+
mediaUrl?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Instead of `mediaUrl`: the recordings of one conversation, in order — up
|
|
69
|
+
* to six in all with the Master audio; without one, two or more cameras keep
|
|
70
|
+
* a place for the sound, so up to five. With two or more the run lines them
|
|
71
|
+
* up, works out who is on which camera and cuts to whoever is talking.
|
|
72
|
+
*/
|
|
73
|
+
mediaUrls?: string[];
|
|
74
|
+
/** The mixer or recorder track: the episode's sound and the clock the recordings are lined up to. */
|
|
75
|
+
masterAudioUrl?: string;
|
|
76
|
+
/** With several recordings or a Master audio: the Cameras settings (ignored with one recording and no Master audio). */
|
|
77
|
+
cameras?: {
|
|
78
|
+
/** Which recording (1-based) is the wide shot, shown when a speaker has no camera of their own; `null` for none. */
|
|
79
|
+
wide?: number | null;
|
|
80
|
+
/** The recordings already share one clock: skip lining them up. */
|
|
81
|
+
synced?: boolean;
|
|
82
|
+
/** Who is on which camera: speaker number (`"1"` = the first voice heard) → recording number, 0 = the wide shot. Overrides the automatic map. */
|
|
83
|
+
speakerCameras?: Record<string, number>;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Input for {@link EditResource.tightenEpisode} and
|
|
88
|
+
* {@link EditResource.estimateTightenEpisode}: the recording (or the
|
|
89
|
+
* recordings of one conversation, see {@link UseCaseRecordingsInput}) in, the
|
|
90
|
+
* tightened episode out. Only the recording is required; every other field
|
|
91
|
+
* left out takes the node's default.
|
|
92
|
+
*/
|
|
93
|
+
interface TightenEpisodeInput extends UseCaseRecordingsInput {
|
|
63
94
|
/** Optional music bed, ducked under the voice and ending with the episode. */
|
|
64
95
|
musicUrl?: string;
|
|
65
96
|
/** `"video"` or `"audio"`; an audio recording always makes an audio episode. */
|
|
@@ -73,6 +104,16 @@ interface TightenEpisodeInput {
|
|
|
73
104
|
aspect: EdlTargetAspect;
|
|
74
105
|
layout: "auto" | "single" | "side-by-side" | "stacked" | "grid" | "pip";
|
|
75
106
|
} | null;
|
|
107
|
+
/**
|
|
108
|
+
* With a framing, how it follows the speakers: `"static"` (the default)
|
|
109
|
+
* splits the frame evenly by speaker; `"tracking"` follows faces with
|
|
110
|
+
* Speaker Frames (charged per started block of 1,000 sampled frames; a
|
|
111
|
+
* camera shared by several speakers keeps the even split until faces are
|
|
112
|
+
* named; refused 403 where Speaker Frames is not available to the caller);
|
|
113
|
+
* `"auto"` follows faces while Speaker Frames is available to the caller,
|
|
114
|
+
* else the even split. Ignored without a framing.
|
|
115
|
+
*/
|
|
116
|
+
framingSource?: "auto" | "static" | "tracking";
|
|
76
117
|
/** Captions on a video episode (on by default). */
|
|
77
118
|
captions?: boolean;
|
|
78
119
|
/** The captions' look. */
|
|
@@ -114,12 +155,13 @@ declare const TRAILER_FORMATS: readonly ["9:16", "1:1", "4:5", "16:9"];
|
|
|
114
155
|
type TrailerFormat = (typeof TRAILER_FORMATS)[number];
|
|
115
156
|
/**
|
|
116
157
|
* Input for {@link EditResource.episodeTrailer} and
|
|
117
|
-
* {@link EditResource.estimateEpisodeTrailer}: one video recording
|
|
118
|
-
*
|
|
158
|
+
* {@link EditResource.estimateEpisodeTrailer}: one video recording (or the
|
|
159
|
+
* recordings of one conversation, see {@link UseCaseRecordingsInput}) in, a
|
|
160
|
+
* 20–40 s trailer out in each chosen format. Only the recording is required.
|
|
119
161
|
*/
|
|
120
|
-
interface EpisodeTrailerInput {
|
|
121
|
-
/** The recording — a video URL, up to 3 hours (
|
|
122
|
-
mediaUrl
|
|
162
|
+
interface EpisodeTrailerInput extends UseCaseRecordingsInput {
|
|
163
|
+
/** The recording — a video URL, up to 3 hours (a run with no picture is refused). Or `mediaUrls`. */
|
|
164
|
+
mediaUrl?: string;
|
|
123
165
|
/** An optional intro card: a short video (15 s at most) played before the trailer. */
|
|
124
166
|
introCardUrl?: string;
|
|
125
167
|
/** The formats to deliver, padded, never cropped (default `["9:16", "1:1", "4:5"]`; an empty list is refused). */
|
|
@@ -143,13 +185,13 @@ declare const CLIP_PACK_MAX_TARGET_SEC = 180;
|
|
|
143
185
|
type ClipPackEmphasis = SpeakerEmphasisStyle | `${Exclude<SpeakerEmphasisStyle, "none">}+${string}`;
|
|
144
186
|
/**
|
|
145
187
|
* Input for {@link EditResource.clipPack} and
|
|
146
|
-
* {@link EditResource.estimateClipPack}:
|
|
147
|
-
*
|
|
148
|
-
*
|
|
188
|
+
* {@link EditResource.estimateClipPack}: the recording (or the recordings of
|
|
189
|
+
* one conversation, see {@link UseCaseRecordingsInput} — each clip then cuts
|
|
190
|
+
* to whoever is talking) in, a pack of short clips out. An audio recording
|
|
191
|
+
* makes audio clips (no framing, no captions). Only the recording is
|
|
192
|
+
* required; every other field left out takes the node's default.
|
|
149
193
|
*/
|
|
150
|
-
interface ClipPackInput {
|
|
151
|
-
/** The recording — a video or audio URL, up to 3 hours. An audio recording makes audio clips (no framing, no captions). */
|
|
152
|
-
mediaUrl: string;
|
|
194
|
+
interface ClipPackInput extends UseCaseRecordingsInput {
|
|
153
195
|
/** How many clips to find, 1–50 (default 8). The plan may find fewer. */
|
|
154
196
|
count?: number;
|
|
155
197
|
/** Each clip's target length in seconds, {@link CLIP_PACK_MIN_TARGET_SEC}–{@link CLIP_PACK_MAX_TARGET_SEC} (default 60). */
|
|
@@ -168,6 +210,15 @@ interface ClipPackInput {
|
|
|
168
210
|
switchType?: SpeakerSwitchId;
|
|
169
211
|
emphasisStyle?: ClipPackEmphasis;
|
|
170
212
|
} | null;
|
|
213
|
+
/**
|
|
214
|
+
* With a framing, how it follows the speakers: `"static"` splits the frame
|
|
215
|
+
* evenly by speaker (what a request that leaves this out gets); `"tracking"`
|
|
216
|
+
* runs Speaker Frames once over the whole pack to follow faces (charged per
|
|
217
|
+
* started block of 1,000 sampled frames; refused 403 where Speaker Frames is
|
|
218
|
+
* not available to the caller); `"auto"` follows faces while Speaker Frames
|
|
219
|
+
* is available to the caller, else the even split. Ignored without a framing.
|
|
220
|
+
*/
|
|
221
|
+
framingSource?: "auto" | "static" | "tracking";
|
|
171
222
|
/** Caption each video clip (on by default). */
|
|
172
223
|
captions?: boolean;
|
|
173
224
|
/** The captions' look (default `"karaoke"`). */
|
|
@@ -185,6 +236,42 @@ interface ClipPackInput {
|
|
|
185
236
|
/** A style guide for the planner (up to 4 000 characters). */
|
|
186
237
|
styleGuide?: string;
|
|
187
238
|
}
|
|
239
|
+
/**
|
|
240
|
+
* Input for {@link EditResource.speakerLayout} and
|
|
241
|
+
* {@link EditResource.estimateSpeakerLayout}: one video recording (or the
|
|
242
|
+
* recordings of one conversation, see {@link UseCaseRecordingsInput}) in, the
|
|
243
|
+
* whole recording framed by speaker out — the same length, nothing cut. Only
|
|
244
|
+
* the recording is required; every other field left out takes the node's
|
|
245
|
+
* default.
|
|
246
|
+
*/
|
|
247
|
+
interface SpeakerLayoutInput extends UseCaseRecordingsInput {
|
|
248
|
+
/** The recording — a video URL, up to 3 hours (an audio-only recording is refused). Or `mediaUrls`. */
|
|
249
|
+
mediaUrl?: string;
|
|
250
|
+
/** The video's shape (default `"9:16"`). With one recording, a video already as narrow as the shape (or narrower) is refused `400 media_shape`. */
|
|
251
|
+
targetAspect?: EdlTargetAspect;
|
|
252
|
+
/** How the speakers are laid out (default `"stacked"`; one the shape does not draw is snapped to one it does). */
|
|
253
|
+
layout?: "auto" | "single" | "side-by-side" | "stacked" | "grid" | "pip";
|
|
254
|
+
/** The switch at each speaker change (default `"cut"`). */
|
|
255
|
+
switchType?: SpeakerSwitchId;
|
|
256
|
+
/** How the speaker talking is emphasised (default `"scale"`): `"none"`, or `"scale"`, `"border"` and `"dim"` joined with `"+"`. */
|
|
257
|
+
emphasisStyle?: ClipPackEmphasis;
|
|
258
|
+
/**
|
|
259
|
+
* How the speakers are followed: `"auto"` (the default) follows faces with
|
|
260
|
+
* Speaker Frames while it is available to the caller, else splits the frame
|
|
261
|
+
* evenly; `"static"` splits the frame evenly by speaker; `"tracking"`
|
|
262
|
+
* follows faces (charged per started block of 1,000 sampled frames;
|
|
263
|
+
* refused 403 where Speaker Frames is not available to the caller). Faces
|
|
264
|
+
* aren't named after a speaker yet, so a camera shared by several speakers
|
|
265
|
+
* keeps the even split.
|
|
266
|
+
*/
|
|
267
|
+
framingSource?: "auto" | "static" | "tracking";
|
|
268
|
+
/**
|
|
269
|
+
* Stop at a quick preview for a person to review; render it at full
|
|
270
|
+
* quality with {@link EditResource.continueUseCase}
|
|
271
|
+
* (`mode: "render-final"`, no `editedEdl`: the layout has no cut to change).
|
|
272
|
+
*/
|
|
273
|
+
reviewBeforeRender?: boolean;
|
|
274
|
+
}
|
|
188
275
|
|
|
189
276
|
/**
|
|
190
277
|
* A silence-detect job's `output_data.json` — the value to pass as
|
|
@@ -437,7 +524,7 @@ interface CameraSwitchInput {
|
|
|
437
524
|
workflowId?: string;
|
|
438
525
|
}
|
|
439
526
|
|
|
440
|
-
/** What a use-case run (`tightenEpisode`, `episodeChapters`, `episodeTrailer`, `clipPack`) and `continueUseCase` answer: the run's job to poll. */
|
|
527
|
+
/** What a use-case run (`tightenEpisode`, `episodeChapters`, `episodeTrailer`, `clipPack`, `speakerLayout`) and `continueUseCase` answer: the run's job to poll. */
|
|
441
528
|
interface UseCaseJobResult extends EditJobResult {
|
|
442
529
|
/** The run's execution (absent on a deduplicated retry). */
|
|
443
530
|
executionId?: string;
|
|
@@ -465,7 +552,7 @@ interface UseCaseEstimate {
|
|
|
465
552
|
type TightenEpisodeEstimate = UseCaseEstimate;
|
|
466
553
|
/** Input for {@link EditResource.continueUseCase}. */
|
|
467
554
|
interface UseCaseContinueInput {
|
|
468
|
-
/** The run to continue: the job `tightenEpisode`, `episodeChapters`, `episodeTrailer` or `
|
|
555
|
+
/** The run to continue: the job `tightenEpisode`, `episodeChapters`, `episodeTrailer`, `clipPack` or `speakerLayout` (or an earlier continuation) answered. */
|
|
469
556
|
jobId: string;
|
|
470
557
|
/**
|
|
471
558
|
* `"from-failed"` re-runs what did not finish of a failed run;
|
|
@@ -474,7 +561,7 @@ interface UseCaseContinueInput {
|
|
|
474
561
|
* a Clip Pack edit that drops every clip is refused `use_case_nothing_kept`).
|
|
475
562
|
*/
|
|
476
563
|
mode: "from-failed" | "render-final";
|
|
477
|
-
/** Render final only: the reviewer's edit of the plan (an EDL). */
|
|
564
|
+
/** Render final only: the reviewer's edit of the plan (an EDL). A Speaker Layout run has no plan: an edit is refused `400 use_case_no_plan`. */
|
|
478
565
|
editedEdl?: unknown;
|
|
479
566
|
/**
|
|
480
567
|
* The run's node type: its continuation goes to `POST /v1/<nodeType>/continue`.
|
|
@@ -485,7 +572,7 @@ interface UseCaseContinueInput {
|
|
|
485
572
|
*/
|
|
486
573
|
nodeType?: UseCaseNodeType;
|
|
487
574
|
}
|
|
488
|
-
/** Per-call options for the use-case requests (Tighten Episode, Chapters, Trailer, Clip Pack, and their continuations). */
|
|
575
|
+
/** Per-call options for the use-case requests (Tighten Episode, Chapters, Trailer, Clip Pack, Speaker Layout, and their continuations). */
|
|
489
576
|
interface UseCaseRequestOptions {
|
|
490
577
|
/**
|
|
491
578
|
* Sent as the `Idempotency-Key` header. Reuse the same value when retrying
|
|
@@ -518,13 +605,15 @@ interface UseCaseRequestOptions {
|
|
|
518
605
|
* it in each chosen format in one call; the same connection applies.
|
|
519
606
|
* - {@link clipPack} cuts a recording into a pack of short clips (framed and
|
|
520
607
|
* captioned by default) in one call; the same connection applies.
|
|
608
|
+
* - {@link speakerLayout} frames a whole recording by speaker (the same
|
|
609
|
+
* length, nothing cut) in one call; the same connection applies.
|
|
521
610
|
* - {@link remapTranscript} is a PURE local transform (no request) — the same
|
|
522
611
|
* remap `applyEdl` performs on its `transcript`, exposed for callers that hold
|
|
523
612
|
* an EDL and a transcript and only want the re-timed transcript.
|
|
524
613
|
*
|
|
525
614
|
* Every request method except the estimates ({@link estimateTightenEpisode},
|
|
526
615
|
* {@link estimateEpisodeChapters}, {@link estimateEpisodeTrailer},
|
|
527
|
-
* {@link estimateClipPack}: a quote, `{ data }`) returns
|
|
616
|
+
* {@link estimateClipPack}, {@link estimateSpeakerLayout}: a quote, `{ data }`) returns
|
|
528
617
|
* {@link EditJobResult} (the use-case runs a {@link UseCaseJobResult}); poll the
|
|
529
618
|
* `jobId` with `client.jobs.getStatus(jobId)`.
|
|
530
619
|
*/
|
|
@@ -648,6 +737,27 @@ declare class EditResource {
|
|
|
648
737
|
estimateClipPack(input: ClipPackInput): Promise<{
|
|
649
738
|
data: UseCaseEstimate;
|
|
650
739
|
}>;
|
|
740
|
+
/**
|
|
741
|
+
* Speaker Layout (`POST /v1/speaker-layout`): frame a whole recording by
|
|
742
|
+
* speaker in one call — the same length, nothing cut. One recording: each
|
|
743
|
+
* speaker framed in turn; several recordings of one conversation: lined up,
|
|
744
|
+
* each speaker shown on their own camera. The finished job's
|
|
745
|
+
* `output_data.videoUrl` is the framed video, `output_data.json` the edit
|
|
746
|
+
* Speaker View drew. With `reviewBeforeRender` the run stops at a preview;
|
|
747
|
+
* {@link continueUseCase} (`mode: "render-final"`, no `editedEdl`) renders
|
|
748
|
+
* it at full quality. Priced as its steps at their own rates plus the listed
|
|
749
|
+
* per-run fee; quote it first with {@link estimateSpeakerLayout}.
|
|
750
|
+
*/
|
|
751
|
+
speakerLayout(input: SpeakerLayoutInput, options?: UseCaseRequestOptions): Promise<UseCaseJobResult>;
|
|
752
|
+
/**
|
|
753
|
+
* What a Speaker Layout run is estimated at (`POST /v1/speaker-layout/estimate`):
|
|
754
|
+
* its steps at their own rates plus its per-run fee. Nothing is created or
|
|
755
|
+
* charged. A recording whose length cannot be read is estimated at the
|
|
756
|
+
* 180-minute ceiling.
|
|
757
|
+
*/
|
|
758
|
+
estimateSpeakerLayout(input: SpeakerLayoutInput): Promise<{
|
|
759
|
+
data: UseCaseEstimate;
|
|
760
|
+
}>;
|
|
651
761
|
/**
|
|
652
762
|
* Continue a use-case run as a new job (`POST /v1/<type>/continue`, the
|
|
653
763
|
* run's own type: `input.nodeType`, else the type the job records, read with
|
|
@@ -702,4 +812,4 @@ declare class EditResource {
|
|
|
702
812
|
remapTranscript(edl: Edl, transcript: Transcript): Transcript;
|
|
703
813
|
}
|
|
704
814
|
|
|
705
|
-
export { type ApplyEdlInput, type AudioSyncInput, type AudioSyncOffset, type AudioSyncResult, type AudioSyncSource, CLIP_PACK_MAX_TARGET_SEC, CLIP_PACK_MIN_TARGET_SEC, type CameraSwitchInput, type ClipPackEmphasis, type ClipPackInput, type EditJobResult, type EditPlanInput, type EditPlanSource, EditResource, type EpisodeChaptersInput, type EpisodeTrailerInput, type SilenceDetectInput, type SilenceRanges, type SpeakerMapInput, type SpeakerMapSource, TRAILER_FORMATS, type TightenEpisodeEstimate, type TightenEpisodeInput, type TightenEpisodeJobResult, type TrailerFormat, type UseCaseContinueInput, type UseCaseEstimate, type UseCaseJobResult, type UseCaseRequestOptions };
|
|
815
|
+
export { type ApplyEdlInput, type AudioSyncInput, type AudioSyncOffset, type AudioSyncResult, type AudioSyncSource, CLIP_PACK_MAX_TARGET_SEC, CLIP_PACK_MIN_TARGET_SEC, type CameraSwitchInput, type ClipPackEmphasis, type ClipPackInput, type EditJobResult, type EditPlanInput, type EditPlanSource, EditResource, type EpisodeChaptersInput, type EpisodeTrailerInput, type SilenceDetectInput, type SilenceRanges, type SpeakerLayoutInput, type SpeakerMapInput, type SpeakerMapSource, TRAILER_FORMATS, type TightenEpisodeEstimate, type TightenEpisodeInput, type TightenEpisodeJobResult, type TrailerFormat, type UseCaseContinueInput, type UseCaseEstimate, type UseCaseJobResult, type UseCaseRecordingsInput, type UseCaseRequestOptions };
|