@contractspec/lib.video-gen 2.7.6 → 2.7.7
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/README.md +67 -25
- package/dist/browser/compositions/api-overview.js +114 -114
- package/dist/browser/compositions/index.js +115 -115
- package/dist/browser/compositions/primitives/index.js +113 -113
- package/dist/browser/compositions/social-clip.js +114 -114
- package/dist/browser/compositions/terminal-demo.js +113 -113
- package/dist/browser/design/index.js +35 -35
- package/dist/browser/generators/index.js +94 -94
- package/dist/browser/generators/scene-planner.js +94 -94
- package/dist/browser/generators/script-generator.js +94 -94
- package/dist/browser/generators/video-generator.js +94 -94
- package/dist/browser/i18n/catalogs/index.js +74 -74
- package/dist/browser/i18n/index.js +94 -94
- package/dist/browser/i18n/locale.js +2 -2
- package/dist/browser/i18n/messages.js +74 -74
- package/dist/browser/index.js +212 -212
- package/dist/browser/player/demo-player.js +116 -116
- package/dist/browser/player/index.js +116 -116
- package/dist/browser/remotion/Root.js +115 -115
- package/dist/browser/remotion/index.js +115 -115
- package/dist/compositions/api-overview.js +114 -114
- package/dist/compositions/index.d.ts +4 -4
- package/dist/compositions/index.js +115 -115
- package/dist/compositions/primitives/animated-text.d.ts +1 -1
- package/dist/compositions/primitives/brand-frame.d.ts +1 -1
- package/dist/compositions/primitives/index.d.ts +8 -8
- package/dist/compositions/primitives/index.js +113 -113
- package/dist/compositions/primitives/transition.d.ts +1 -1
- package/dist/compositions/social-clip.js +114 -114
- package/dist/compositions/terminal-demo.js +113 -113
- package/dist/design/index.d.ts +2 -2
- package/dist/design/index.js +35 -35
- package/dist/generators/index.d.ts +2 -2
- package/dist/generators/index.js +94 -94
- package/dist/generators/scene-planner.d.ts +1 -1
- package/dist/generators/scene-planner.js +94 -94
- package/dist/generators/script-generator.d.ts +2 -2
- package/dist/generators/script-generator.js +94 -94
- package/dist/generators/video-generator.js +94 -94
- package/dist/i18n/catalogs/index.d.ts +1 -1
- package/dist/i18n/catalogs/index.js +74 -74
- package/dist/i18n/index.d.ts +7 -7
- package/dist/i18n/index.js +94 -94
- package/dist/i18n/locale.d.ts +1 -1
- package/dist/i18n/locale.js +2 -2
- package/dist/i18n/messages.js +74 -74
- package/dist/index.d.ts +3 -3
- package/dist/index.js +212 -212
- package/dist/node/compositions/api-overview.js +114 -114
- package/dist/node/compositions/index.js +115 -115
- package/dist/node/compositions/primitives/index.js +113 -113
- package/dist/node/compositions/social-clip.js +114 -114
- package/dist/node/compositions/terminal-demo.js +113 -113
- package/dist/node/design/index.js +35 -35
- package/dist/node/generators/index.js +94 -94
- package/dist/node/generators/scene-planner.js +94 -94
- package/dist/node/generators/script-generator.js +94 -94
- package/dist/node/generators/video-generator.js +94 -94
- package/dist/node/i18n/catalogs/index.js +74 -74
- package/dist/node/i18n/index.js +94 -94
- package/dist/node/i18n/locale.js +2 -2
- package/dist/node/i18n/messages.js +74 -74
- package/dist/node/index.js +212 -212
- package/dist/node/player/demo-player.js +116 -116
- package/dist/node/player/index.js +116 -116
- package/dist/node/remotion/Root.js +115 -115
- package/dist/node/remotion/index.js +115 -115
- package/dist/player/demo-player.js +116 -116
- package/dist/player/index.d.ts +1 -1
- package/dist/player/index.js +116 -116
- package/dist/remotion/Root.js +115 -115
- package/dist/remotion/index.js +115 -115
- package/dist/renderers/index.d.ts +2 -2
- package/dist/types.d.ts +6 -6
- package/package.json +15 -15
package/dist/generators/index.js
CHANGED
|
@@ -186,54 +186,54 @@ Prioritize clarity and pacing. Each scene should communicate one idea.`,
|
|
|
186
186
|
}
|
|
187
187
|
});
|
|
188
188
|
|
|
189
|
-
// src/i18n/catalogs/
|
|
189
|
+
// src/i18n/catalogs/es.ts
|
|
190
190
|
import { defineTranslation as defineTranslation2 } from "@contractspec/lib.contracts-spec/translations";
|
|
191
|
-
var
|
|
191
|
+
var esMessages = defineTranslation2({
|
|
192
192
|
meta: {
|
|
193
193
|
key: "video-gen.messages",
|
|
194
194
|
version: "1.0.0",
|
|
195
195
|
domain: "video-gen",
|
|
196
|
-
description: "
|
|
196
|
+
description: "Spanish translations for the video-gen package",
|
|
197
197
|
owners: ["platform"],
|
|
198
198
|
stability: "experimental"
|
|
199
199
|
},
|
|
200
|
-
locale: "
|
|
200
|
+
locale: "es",
|
|
201
201
|
fallback: "en",
|
|
202
202
|
messages: {
|
|
203
203
|
"prompt.script.system": {
|
|
204
|
-
value: `
|
|
205
|
-
|
|
204
|
+
value: `Eres un redactor de guiones de narraci\xF3n para v\xEDdeo.
|
|
205
|
+
Escribe un gui\xF3n de narraci\xF3n para un v\xEDdeo corto (30-60 segundos).
|
|
206
206
|
{styleGuide}
|
|
207
207
|
|
|
208
|
-
|
|
208
|
+
Devuelve JSON con la forma:
|
|
209
209
|
{
|
|
210
210
|
"segments": [{ "sceneId": string, "text": string }],
|
|
211
211
|
"fullText": string
|
|
212
212
|
}
|
|
213
213
|
|
|
214
|
-
|
|
215
|
-
|
|
214
|
+
Los identificadores de escena deben ser: "intro", "problems", "solutions", "metrics", "cta".
|
|
215
|
+
Incluye solo los segmentos relevantes para el brief.`,
|
|
216
216
|
description: "Script generator LLM system prompt",
|
|
217
217
|
placeholders: [{ name: "styleGuide", type: "string" }]
|
|
218
218
|
},
|
|
219
219
|
"prompt.scenePlanner.system": {
|
|
220
|
-
value: `
|
|
221
|
-
|
|
220
|
+
value: `Eres un planificador de escenas de v\xEDdeo para v\xEDdeos de marketing/documentaci\xF3n de ContractSpec.
|
|
221
|
+
Dado un brief de contenido, div\xEDdelo en escenas de v\xEDdeo.
|
|
222
222
|
|
|
223
|
-
|
|
224
|
-
- compositionId
|
|
225
|
-
- props
|
|
226
|
-
- durationInFrames
|
|
227
|
-
- narrationText
|
|
223
|
+
Cada escena debe tener:
|
|
224
|
+
- compositionId: uno de "ApiOverview", "SocialClip", "TerminalDemo"
|
|
225
|
+
- props: las propiedades de entrada de esa composici\xF3n
|
|
226
|
+
- durationInFrames: duraci\xF3n a {fps} fps
|
|
227
|
+
- narrationText: lo que dice el narrador durante esta escena
|
|
228
228
|
|
|
229
|
-
|
|
229
|
+
Devuelve un objeto JSON con la forma:
|
|
230
230
|
{
|
|
231
231
|
"scenes": [{ "compositionId": string, "props": object, "durationInFrames": number, "narrationText": string }],
|
|
232
232
|
"narrationScript": string
|
|
233
233
|
}
|
|
234
234
|
|
|
235
|
-
|
|
236
|
-
|
|
235
|
+
Mant\xE9n la duraci\xF3n total alrededor de {targetSeconds} segundos.
|
|
236
|
+
Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
237
237
|
description: "Scene planner LLM system prompt",
|
|
238
238
|
placeholders: [
|
|
239
239
|
{ name: "fps", type: "number" },
|
|
@@ -241,64 +241,64 @@ Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une i
|
|
|
241
241
|
]
|
|
242
242
|
},
|
|
243
243
|
"prompt.style.professional": {
|
|
244
|
-
value: "
|
|
244
|
+
value: "Usa un tono claro, autoritario y profesional. S\xE9 conciso y directo.",
|
|
245
245
|
description: "Style guide for professional narration"
|
|
246
246
|
},
|
|
247
247
|
"prompt.style.casual": {
|
|
248
|
-
value: "
|
|
248
|
+
value: "Usa un tono amigable y conversacional. S\xE9 accesible y cercano.",
|
|
249
249
|
description: "Style guide for casual narration"
|
|
250
250
|
},
|
|
251
251
|
"prompt.style.technical": {
|
|
252
|
-
value: "
|
|
252
|
+
value: "Usa un lenguaje t\xE9cnico preciso. S\xE9 detallado y exacto.",
|
|
253
253
|
description: "Style guide for technical narration"
|
|
254
254
|
},
|
|
255
255
|
"script.segment.challenge": {
|
|
256
|
-
value: "
|
|
256
|
+
value: "El desaf\xEDo: {content}",
|
|
257
257
|
description: "Narration segment prefix for problems",
|
|
258
258
|
placeholders: [{ name: "content", type: "string" }]
|
|
259
259
|
},
|
|
260
260
|
"script.segment.solution": {
|
|
261
|
-
value: "La
|
|
261
|
+
value: "La soluci\xF3n: {content}",
|
|
262
262
|
description: "Narration segment prefix for solutions",
|
|
263
263
|
placeholders: [{ name: "content", type: "string" }]
|
|
264
264
|
},
|
|
265
265
|
"script.segment.results": {
|
|
266
|
-
value: "
|
|
266
|
+
value: "Los resultados: {content}",
|
|
267
267
|
description: "Narration segment prefix for metrics",
|
|
268
268
|
placeholders: [{ name: "content", type: "string" }]
|
|
269
269
|
},
|
|
270
270
|
"scene.cta.default": {
|
|
271
|
-
value: "
|
|
271
|
+
value: "M\xE1s informaci\xF3n",
|
|
272
272
|
description: "Default call-to-action text for scenes"
|
|
273
273
|
},
|
|
274
274
|
"scene.hook.problem": {
|
|
275
|
-
value: "
|
|
275
|
+
value: "El problema",
|
|
276
276
|
description: "Scene hook label for problem statement"
|
|
277
277
|
},
|
|
278
278
|
"scene.narration.problem": {
|
|
279
|
-
value: "
|
|
279
|
+
value: "El problema: {content}",
|
|
280
280
|
description: "Scene narration for problem statement",
|
|
281
281
|
placeholders: [{ name: "content", type: "string" }]
|
|
282
282
|
},
|
|
283
283
|
"scene.hook.solution": {
|
|
284
|
-
value: "La
|
|
284
|
+
value: "La soluci\xF3n",
|
|
285
285
|
description: "Scene hook label for solution"
|
|
286
286
|
},
|
|
287
287
|
"scene.narration.solution": {
|
|
288
|
-
value: "La
|
|
288
|
+
value: "La soluci\xF3n: {content}",
|
|
289
289
|
description: "Scene narration for solution",
|
|
290
290
|
placeholders: [{ name: "content", type: "string" }]
|
|
291
291
|
},
|
|
292
292
|
"scene.hook.results": {
|
|
293
|
-
value: "
|
|
293
|
+
value: "Resultados",
|
|
294
294
|
description: "Scene hook label for results/metrics"
|
|
295
295
|
},
|
|
296
296
|
"composition.apiOverview.generates": {
|
|
297
|
-
value: "
|
|
297
|
+
value: "Genera:",
|
|
298
298
|
description: "ApiOverview heading for generated outputs"
|
|
299
299
|
},
|
|
300
300
|
"composition.apiOverview.tagline": {
|
|
301
|
-
value: "
|
|
301
|
+
value: "Una spec. Todas las superficies.",
|
|
302
302
|
description: "ApiOverview default tagline"
|
|
303
303
|
},
|
|
304
304
|
"composition.apiOverview.output.rest": {
|
|
@@ -306,11 +306,11 @@ Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une i
|
|
|
306
306
|
description: "Generated output label: REST"
|
|
307
307
|
},
|
|
308
308
|
"composition.apiOverview.output.graphql": {
|
|
309
|
-
value: "
|
|
309
|
+
value: "Mutaci\xF3n GraphQL",
|
|
310
310
|
description: "Generated output label: GraphQL"
|
|
311
311
|
},
|
|
312
312
|
"composition.apiOverview.output.prisma": {
|
|
313
|
-
value: "
|
|
313
|
+
value: "Modelo Prisma",
|
|
314
314
|
description: "Generated output label: Prisma"
|
|
315
315
|
},
|
|
316
316
|
"composition.apiOverview.output.typescript": {
|
|
@@ -318,7 +318,7 @@ Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une i
|
|
|
318
318
|
description: "Generated output label: TypeScript SDK"
|
|
319
319
|
},
|
|
320
320
|
"composition.apiOverview.output.mcp": {
|
|
321
|
-
value: "
|
|
321
|
+
value: "Herramienta MCP",
|
|
322
322
|
description: "Generated output label: MCP Tool"
|
|
323
323
|
},
|
|
324
324
|
"composition.apiOverview.output.openapi": {
|
|
@@ -326,7 +326,7 @@ Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une i
|
|
|
326
326
|
description: "Generated output label: OpenAPI"
|
|
327
327
|
},
|
|
328
328
|
"composition.socialClip.cta": {
|
|
329
|
-
value: "
|
|
329
|
+
value: "M\xE1s informaci\xF3n",
|
|
330
330
|
description: "SocialClip default CTA"
|
|
331
331
|
},
|
|
332
332
|
"composition.terminal.title": {
|
|
@@ -336,54 +336,54 @@ Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une i
|
|
|
336
336
|
}
|
|
337
337
|
});
|
|
338
338
|
|
|
339
|
-
// src/i18n/catalogs/
|
|
339
|
+
// src/i18n/catalogs/fr.ts
|
|
340
340
|
import { defineTranslation as defineTranslation3 } from "@contractspec/lib.contracts-spec/translations";
|
|
341
|
-
var
|
|
341
|
+
var frMessages = defineTranslation3({
|
|
342
342
|
meta: {
|
|
343
343
|
key: "video-gen.messages",
|
|
344
344
|
version: "1.0.0",
|
|
345
345
|
domain: "video-gen",
|
|
346
|
-
description: "
|
|
346
|
+
description: "French translations for the video-gen package",
|
|
347
347
|
owners: ["platform"],
|
|
348
348
|
stability: "experimental"
|
|
349
349
|
},
|
|
350
|
-
locale: "
|
|
350
|
+
locale: "fr",
|
|
351
351
|
fallback: "en",
|
|
352
352
|
messages: {
|
|
353
353
|
"prompt.script.system": {
|
|
354
|
-
value: `
|
|
355
|
-
|
|
354
|
+
value: `Vous \xEAtes un r\xE9dacteur de scripts de narration vid\xE9o.
|
|
355
|
+
\xC9crivez un script de narration pour une courte vid\xE9o (30-60 secondes).
|
|
356
356
|
{styleGuide}
|
|
357
357
|
|
|
358
|
-
|
|
358
|
+
Retournez du JSON avec la forme\xA0:
|
|
359
359
|
{
|
|
360
360
|
"segments": [{ "sceneId": string, "text": string }],
|
|
361
361
|
"fullText": string
|
|
362
362
|
}
|
|
363
363
|
|
|
364
|
-
|
|
365
|
-
|
|
364
|
+
Les identifiants de sc\xE8ne doivent \xEAtre\xA0: "intro", "problems", "solutions", "metrics", "cta".
|
|
365
|
+
N'incluez que les segments pertinents au brief.`,
|
|
366
366
|
description: "Script generator LLM system prompt",
|
|
367
367
|
placeholders: [{ name: "styleGuide", type: "string" }]
|
|
368
368
|
},
|
|
369
369
|
"prompt.scenePlanner.system": {
|
|
370
|
-
value: `
|
|
371
|
-
|
|
370
|
+
value: `Vous \xEAtes un planificateur de sc\xE8nes vid\xE9o pour les vid\xE9os marketing/documentation de ContractSpec.
|
|
371
|
+
\xC0 partir d'un brief, d\xE9composez-le en sc\xE8nes vid\xE9o.
|
|
372
372
|
|
|
373
|
-
|
|
374
|
-
- compositionId:
|
|
375
|
-
- props:
|
|
376
|
-
- durationInFrames:
|
|
377
|
-
- narrationText:
|
|
373
|
+
Chaque sc\xE8ne doit avoir\xA0:
|
|
374
|
+
- compositionId\xA0: un parmi "ApiOverview", "SocialClip", "TerminalDemo"
|
|
375
|
+
- props\xA0: les propri\xE9t\xE9s d'entr\xE9e de cette composition
|
|
376
|
+
- durationInFrames\xA0: dur\xE9e \xE0 {fps}\xA0fps
|
|
377
|
+
- narrationText\xA0: ce que le narrateur dit pendant cette sc\xE8ne
|
|
378
378
|
|
|
379
|
-
|
|
379
|
+
Retournez un objet JSON avec la forme\xA0:
|
|
380
380
|
{
|
|
381
381
|
"scenes": [{ "compositionId": string, "props": object, "durationInFrames": number, "narrationText": string }],
|
|
382
382
|
"narrationScript": string
|
|
383
383
|
}
|
|
384
384
|
|
|
385
|
-
|
|
386
|
-
|
|
385
|
+
Gardez la dur\xE9e totale autour de {targetSeconds} secondes.
|
|
386
|
+
Privil\xE9giez la clart\xE9 et le rythme. Chaque sc\xE8ne doit communiquer une id\xE9e.`,
|
|
387
387
|
description: "Scene planner LLM system prompt",
|
|
388
388
|
placeholders: [
|
|
389
389
|
{ name: "fps", type: "number" },
|
|
@@ -391,64 +391,64 @@ Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
|
391
391
|
]
|
|
392
392
|
},
|
|
393
393
|
"prompt.style.professional": {
|
|
394
|
-
value: "
|
|
394
|
+
value: "Utilisez un ton clair, autoritaire et professionnel. Soyez concis et direct.",
|
|
395
395
|
description: "Style guide for professional narration"
|
|
396
396
|
},
|
|
397
397
|
"prompt.style.casual": {
|
|
398
|
-
value: "
|
|
398
|
+
value: "Utilisez un ton amical et conversationnel. Soyez accessible et proche.",
|
|
399
399
|
description: "Style guide for casual narration"
|
|
400
400
|
},
|
|
401
401
|
"prompt.style.technical": {
|
|
402
|
-
value: "
|
|
402
|
+
value: "Utilisez un langage technique pr\xE9cis. Soyez d\xE9taill\xE9 et exact.",
|
|
403
403
|
description: "Style guide for technical narration"
|
|
404
404
|
},
|
|
405
405
|
"script.segment.challenge": {
|
|
406
|
-
value: "
|
|
406
|
+
value: "Le d\xE9fi\xA0: {content}",
|
|
407
407
|
description: "Narration segment prefix for problems",
|
|
408
408
|
placeholders: [{ name: "content", type: "string" }]
|
|
409
409
|
},
|
|
410
410
|
"script.segment.solution": {
|
|
411
|
-
value: "La
|
|
411
|
+
value: "La solution\xA0: {content}",
|
|
412
412
|
description: "Narration segment prefix for solutions",
|
|
413
413
|
placeholders: [{ name: "content", type: "string" }]
|
|
414
414
|
},
|
|
415
415
|
"script.segment.results": {
|
|
416
|
-
value: "
|
|
416
|
+
value: "Les r\xE9sultats\xA0: {content}",
|
|
417
417
|
description: "Narration segment prefix for metrics",
|
|
418
418
|
placeholders: [{ name: "content", type: "string" }]
|
|
419
419
|
},
|
|
420
420
|
"scene.cta.default": {
|
|
421
|
-
value: "
|
|
421
|
+
value: "En savoir plus",
|
|
422
422
|
description: "Default call-to-action text for scenes"
|
|
423
423
|
},
|
|
424
424
|
"scene.hook.problem": {
|
|
425
|
-
value: "
|
|
425
|
+
value: "Le probl\xE8me",
|
|
426
426
|
description: "Scene hook label for problem statement"
|
|
427
427
|
},
|
|
428
428
|
"scene.narration.problem": {
|
|
429
|
-
value: "
|
|
429
|
+
value: "Le probl\xE8me\xA0: {content}",
|
|
430
430
|
description: "Scene narration for problem statement",
|
|
431
431
|
placeholders: [{ name: "content", type: "string" }]
|
|
432
432
|
},
|
|
433
433
|
"scene.hook.solution": {
|
|
434
|
-
value: "La
|
|
434
|
+
value: "La solution",
|
|
435
435
|
description: "Scene hook label for solution"
|
|
436
436
|
},
|
|
437
437
|
"scene.narration.solution": {
|
|
438
|
-
value: "La
|
|
438
|
+
value: "La solution\xA0: {content}",
|
|
439
439
|
description: "Scene narration for solution",
|
|
440
440
|
placeholders: [{ name: "content", type: "string" }]
|
|
441
441
|
},
|
|
442
442
|
"scene.hook.results": {
|
|
443
|
-
value: "
|
|
443
|
+
value: "R\xE9sultats",
|
|
444
444
|
description: "Scene hook label for results/metrics"
|
|
445
445
|
},
|
|
446
446
|
"composition.apiOverview.generates": {
|
|
447
|
-
value: "
|
|
447
|
+
value: "G\xE9n\xE8re\xA0:",
|
|
448
448
|
description: "ApiOverview heading for generated outputs"
|
|
449
449
|
},
|
|
450
450
|
"composition.apiOverview.tagline": {
|
|
451
|
-
value: "
|
|
451
|
+
value: "Un spec. Toutes les surfaces.",
|
|
452
452
|
description: "ApiOverview default tagline"
|
|
453
453
|
},
|
|
454
454
|
"composition.apiOverview.output.rest": {
|
|
@@ -456,11 +456,11 @@ Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
|
456
456
|
description: "Generated output label: REST"
|
|
457
457
|
},
|
|
458
458
|
"composition.apiOverview.output.graphql": {
|
|
459
|
-
value: "
|
|
459
|
+
value: "Mutation GraphQL",
|
|
460
460
|
description: "Generated output label: GraphQL"
|
|
461
461
|
},
|
|
462
462
|
"composition.apiOverview.output.prisma": {
|
|
463
|
-
value: "
|
|
463
|
+
value: "Mod\xE8le Prisma",
|
|
464
464
|
description: "Generated output label: Prisma"
|
|
465
465
|
},
|
|
466
466
|
"composition.apiOverview.output.typescript": {
|
|
@@ -468,7 +468,7 @@ Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
|
468
468
|
description: "Generated output label: TypeScript SDK"
|
|
469
469
|
},
|
|
470
470
|
"composition.apiOverview.output.mcp": {
|
|
471
|
-
value: "
|
|
471
|
+
value: "Outil MCP",
|
|
472
472
|
description: "Generated output label: MCP Tool"
|
|
473
473
|
},
|
|
474
474
|
"composition.apiOverview.output.openapi": {
|
|
@@ -476,7 +476,7 @@ Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
|
476
476
|
description: "Generated output label: OpenAPI"
|
|
477
477
|
},
|
|
478
478
|
"composition.socialClip.cta": {
|
|
479
|
-
value: "
|
|
479
|
+
value: "En savoir plus",
|
|
480
480
|
description: "SocialClip default CTA"
|
|
481
481
|
},
|
|
482
482
|
"composition.terminal.title": {
|
|
@@ -486,26 +486,6 @@ Prioriza la claridad y el ritmo. Cada escena debe comunicar una idea.`,
|
|
|
486
486
|
}
|
|
487
487
|
});
|
|
488
488
|
|
|
489
|
-
// src/i18n/messages.ts
|
|
490
|
-
import {
|
|
491
|
-
createI18nFactory
|
|
492
|
-
} from "@contractspec/lib.contracts-spec/translations";
|
|
493
|
-
var factory = createI18nFactory({
|
|
494
|
-
specKey: "video-gen.messages",
|
|
495
|
-
catalogs: [enMessages, frMessages, esMessages]
|
|
496
|
-
});
|
|
497
|
-
var createVideoGenI18n = factory.create;
|
|
498
|
-
var getDefaultI18n = factory.getDefault;
|
|
499
|
-
var resetI18nRegistry = factory.resetRegistry;
|
|
500
|
-
|
|
501
|
-
// src/i18n/locale.ts
|
|
502
|
-
import {
|
|
503
|
-
DEFAULT_LOCALE,
|
|
504
|
-
SUPPORTED_LOCALES,
|
|
505
|
-
resolveLocale,
|
|
506
|
-
isSupportedLocale
|
|
507
|
-
} from "@contractspec/lib.contracts-spec/translations";
|
|
508
|
-
|
|
509
489
|
// src/i18n/keys.ts
|
|
510
490
|
var PROMPT_KEYS = {
|
|
511
491
|
"prompt.script.system": "prompt.script.system",
|
|
@@ -545,6 +525,26 @@ var I18N_KEYS = {
|
|
|
545
525
|
...SCENE_KEYS,
|
|
546
526
|
...COMPOSITION_KEYS
|
|
547
527
|
};
|
|
528
|
+
|
|
529
|
+
// src/i18n/locale.ts
|
|
530
|
+
import {
|
|
531
|
+
DEFAULT_LOCALE,
|
|
532
|
+
isSupportedLocale,
|
|
533
|
+
resolveLocale,
|
|
534
|
+
SUPPORTED_LOCALES
|
|
535
|
+
} from "@contractspec/lib.contracts-spec/translations";
|
|
536
|
+
|
|
537
|
+
// src/i18n/messages.ts
|
|
538
|
+
import {
|
|
539
|
+
createI18nFactory
|
|
540
|
+
} from "@contractspec/lib.contracts-spec/translations";
|
|
541
|
+
var factory = createI18nFactory({
|
|
542
|
+
specKey: "video-gen.messages",
|
|
543
|
+
catalogs: [enMessages, frMessages, esMessages]
|
|
544
|
+
});
|
|
545
|
+
var createVideoGenI18n = factory.create;
|
|
546
|
+
var getDefaultI18n = factory.getDefault;
|
|
547
|
+
var resetI18nRegistry = factory.resetRegistry;
|
|
548
548
|
// src/generators/scene-planner.ts
|
|
549
549
|
class ScenePlanner {
|
|
550
550
|
llm;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { ModelSelectionContext, ModelSelector } from '@contractspec/lib.ai-providers/selector-types';
|
|
1
2
|
import type { LLMProvider } from '@contractspec/lib.contracts-integrations/integrations/providers/llm';
|
|
2
|
-
import type { ModelSelector, ModelSelectionContext } from '@contractspec/lib.ai-providers/selector-types';
|
|
3
3
|
import type { ScenePlan, VideoBrief } from '../types';
|
|
4
4
|
export interface ScenePlannerOptions {
|
|
5
5
|
llm?: LLMProvider;
|