@contractspec/lib.video-gen 1.44.0 → 1.46.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.
Files changed (61) hide show
  1. package/README.md +37 -0
  2. package/dist/browser/docs/rendering.docblock.js +4 -4
  3. package/dist/browser/docs/video-gen.docblock.js +1 -1
  4. package/dist/browser/generators/index.js +601 -192
  5. package/dist/browser/generators/scene-planner.js +527 -23
  6. package/dist/browser/generators/script-generator.js +528 -18
  7. package/dist/browser/generators/video-generator.js +601 -191
  8. package/dist/browser/i18n/catalogs/en.js +160 -0
  9. package/dist/browser/i18n/catalogs/es.js +160 -0
  10. package/dist/browser/i18n/catalogs/fr.js +160 -0
  11. package/dist/browser/i18n/catalogs/index.js +462 -0
  12. package/dist/browser/i18n/index.js +534 -0
  13. package/dist/browser/i18n/keys.js +54 -0
  14. package/dist/browser/i18n/locale.js +21 -0
  15. package/dist/browser/i18n/messages.js +474 -0
  16. package/dist/browser/index.js +601 -192
  17. package/dist/docs/rendering.docblock.js +4 -4
  18. package/dist/docs/video-gen.docblock.js +1 -1
  19. package/dist/generators/index.d.ts +0 -2
  20. package/dist/generators/index.js +601 -192
  21. package/dist/generators/scene-planner.d.ts +2 -0
  22. package/dist/generators/scene-planner.js +527 -23
  23. package/dist/generators/script-generator.d.ts +2 -0
  24. package/dist/generators/script-generator.js +528 -18
  25. package/dist/generators/video-generator.d.ts +6 -5
  26. package/dist/generators/video-generator.js +601 -191
  27. package/dist/i18n/catalogs/en.d.ts +8 -0
  28. package/dist/i18n/catalogs/en.js +155 -0
  29. package/dist/i18n/catalogs/es.d.ts +6 -0
  30. package/dist/i18n/catalogs/es.js +155 -0
  31. package/dist/i18n/catalogs/fr.d.ts +6 -0
  32. package/dist/i18n/catalogs/fr.js +155 -0
  33. package/dist/i18n/catalogs/index.d.ts +8 -0
  34. package/dist/i18n/catalogs/index.js +457 -0
  35. package/dist/i18n/i18n.test.d.ts +1 -0
  36. package/dist/i18n/index.d.ts +22 -0
  37. package/dist/i18n/index.js +529 -0
  38. package/dist/i18n/keys.d.ts +116 -0
  39. package/dist/i18n/keys.js +49 -0
  40. package/dist/i18n/locale.d.ts +8 -0
  41. package/dist/i18n/locale.js +16 -0
  42. package/dist/i18n/messages.d.ts +14 -0
  43. package/dist/i18n/messages.js +469 -0
  44. package/dist/index.js +601 -192
  45. package/dist/node/docs/rendering.docblock.js +4 -4
  46. package/dist/node/docs/video-gen.docblock.js +1 -1
  47. package/dist/node/generators/index.js +601 -192
  48. package/dist/node/generators/scene-planner.js +527 -23
  49. package/dist/node/generators/script-generator.js +528 -18
  50. package/dist/node/generators/video-generator.js +601 -191
  51. package/dist/node/i18n/catalogs/en.js +155 -0
  52. package/dist/node/i18n/catalogs/es.js +155 -0
  53. package/dist/node/i18n/catalogs/fr.js +155 -0
  54. package/dist/node/i18n/catalogs/index.js +457 -0
  55. package/dist/node/i18n/index.js +529 -0
  56. package/dist/node/i18n/keys.js +49 -0
  57. package/dist/node/i18n/locale.js +16 -0
  58. package/dist/node/i18n/messages.js +469 -0
  59. package/dist/node/index.js +601 -192
  60. package/dist/types.d.ts +14 -3
  61. package/package.json +149 -6
package/dist/types.d.ts CHANGED
@@ -1,8 +1,11 @@
1
1
  import type { LLMProvider } from '@contractspec/lib.contracts-integrations/integrations/providers/llm';
2
- import type { VoiceProvider } from '@contractspec/lib.contracts-integrations/integrations/providers/voice';
2
+ import type { VoiceSynthesizer } from '@contractspec/lib.voice/tts';
3
+ import type { Transcriber } from '@contractspec/lib.voice/stt';
3
4
  import type { ContentBrief } from '@contractspec/lib.content-gen/types';
5
+ import type { ImageGenerator } from '@contractspec/lib.image-gen/generators/image-generator';
4
6
  import type { NarrationConfig, VideoFormat, VideoProject, VideoStyleOverrides } from '@contractspec/lib.contracts-integrations/integrations/providers/video';
5
7
  export type { AudioTrack, CompositionMeta, CompositionRegistry, NarrationConfig, RenderConfig, RenderResult, SceneTransition, SceneTransitionType, VideoCodec, VideoFormat, VideoFormatCustom, VideoFormatLandscape, VideoFormatPortrait, VideoFormatSquare, VideoOutputFormat, VideoProject, VideoProjectMetadata, VideoProvider, VideoScene, VideoStyleOverrides, } from '@contractspec/lib.contracts-integrations/integrations/providers/video';
8
+ export type { TTSProject } from '@contractspec/lib.voice/tts';
6
9
  export { VIDEO_FORMATS } from '@contractspec/lib.contracts-integrations/integrations/providers/video';
7
10
  /**
8
11
  * Input for the video generation pipeline.
@@ -21,12 +24,18 @@ export interface VideoBrief {
21
24
  style?: VideoStyleOverrides;
22
25
  /** Composition template to use (if known). Otherwise scene planner picks. */
23
26
  compositionId?: string;
27
+ /** Locale for generated content and LLM prompts (defaults to "en") */
28
+ locale?: string;
24
29
  }
25
30
  export interface VideoGeneratorOptions {
26
31
  /** Optional LLM for enhanced scene planning & script generation */
27
32
  llm?: LLMProvider;
28
- /** Optional voice provider for narration synthesis */
29
- voice?: VoiceProvider;
33
+ /** Optional voice synthesizer for narration synthesis */
34
+ voice?: VoiceSynthesizer;
35
+ /** Optional transcriber for subtitle generation */
36
+ transcriber?: Transcriber;
37
+ /** Optional image generator for thumbnail generation */
38
+ image?: ImageGenerator;
30
39
  /** LLM model override */
31
40
  model?: string;
32
41
  /** LLM temperature (0-1). Default 0.4 for determinism. */
@@ -35,6 +44,8 @@ export interface VideoGeneratorOptions {
35
44
  defaultVoiceId?: string;
36
45
  /** Default FPS. Default 30. */
37
46
  fps?: number;
47
+ /** Locale for generated content and LLM prompts (defaults to "en") */
48
+ locale?: string;
38
49
  }
39
50
  export interface GeneratedVideo {
40
51
  project: VideoProject;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contractspec/lib.video-gen",
3
- "version": "1.44.0",
3
+ "version": "1.46.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -25,14 +25,17 @@
25
25
  "typecheck": "tsc --noEmit"
26
26
  },
27
27
  "dependencies": {
28
- "@contractspec/lib.contracts-spec": "2.3.0",
29
- "@contractspec/lib.content-gen": "2.3.0",
30
- "@contractspec/lib.design-system": "2.3.0",
28
+ "@contractspec/lib.contracts-spec": "2.5.0",
29
+ "@contractspec/lib.contracts-integrations": "2.5.0",
30
+ "@contractspec/lib.voice": "0.2.0",
31
+ "@contractspec/lib.content-gen": "2.5.0",
32
+ "@contractspec/lib.design-system": "2.5.0",
33
+ "@contractspec/lib.image-gen": "0.2.0",
31
34
  "remotion": "^4.0.0"
32
35
  },
33
36
  "devDependencies": {
34
- "@contractspec/tool.typescript": "2.3.0",
35
- "@contractspec/tool.bun": "2.3.0",
37
+ "@contractspec/tool.typescript": "2.5.0",
38
+ "@contractspec/tool.bun": "2.5.0",
36
39
  "typescript": "^5.9.3",
37
40
  "@remotion/bundler": "^4.0.0",
38
41
  "@remotion/cli": "^4.0.0",
@@ -264,6 +267,76 @@
264
267
  "browser": "./dist/browser/generators/video-generator.js",
265
268
  "default": "./dist/generators/video-generator.js"
266
269
  },
270
+ "./i18n": {
271
+ "types": "./dist/i18n/index.d.ts",
272
+ "bun": "./dist/i18n/index.js",
273
+ "node": "./dist/node/i18n/index.js",
274
+ "browser": "./dist/browser/i18n/index.js",
275
+ "default": "./dist/i18n/index.js"
276
+ },
277
+ "./i18n/catalogs": {
278
+ "types": "./dist/i18n/catalogs/index.d.ts",
279
+ "bun": "./dist/i18n/catalogs/index.js",
280
+ "node": "./dist/node/i18n/catalogs/index.js",
281
+ "browser": "./dist/browser/i18n/catalogs/index.js",
282
+ "default": "./dist/i18n/catalogs/index.js"
283
+ },
284
+ "./i18n/catalogs/en": {
285
+ "types": "./dist/i18n/catalogs/en.d.ts",
286
+ "bun": "./dist/i18n/catalogs/en.js",
287
+ "node": "./dist/node/i18n/catalogs/en.js",
288
+ "browser": "./dist/browser/i18n/catalogs/en.js",
289
+ "default": "./dist/i18n/catalogs/en.js"
290
+ },
291
+ "./i18n/catalogs/es": {
292
+ "types": "./dist/i18n/catalogs/es.d.ts",
293
+ "bun": "./dist/i18n/catalogs/es.js",
294
+ "node": "./dist/node/i18n/catalogs/es.js",
295
+ "browser": "./dist/browser/i18n/catalogs/es.js",
296
+ "default": "./dist/i18n/catalogs/es.js"
297
+ },
298
+ "./i18n/catalogs/fr": {
299
+ "types": "./dist/i18n/catalogs/fr.d.ts",
300
+ "bun": "./dist/i18n/catalogs/fr.js",
301
+ "node": "./dist/node/i18n/catalogs/fr.js",
302
+ "browser": "./dist/browser/i18n/catalogs/fr.js",
303
+ "default": "./dist/i18n/catalogs/fr.js"
304
+ },
305
+ "./i18n/catalogs/index": {
306
+ "types": "./dist/i18n/catalogs/index.d.ts",
307
+ "bun": "./dist/i18n/catalogs/index.js",
308
+ "node": "./dist/node/i18n/catalogs/index.js",
309
+ "browser": "./dist/browser/i18n/catalogs/index.js",
310
+ "default": "./dist/i18n/catalogs/index.js"
311
+ },
312
+ "./i18n/index": {
313
+ "types": "./dist/i18n/index.d.ts",
314
+ "bun": "./dist/i18n/index.js",
315
+ "node": "./dist/node/i18n/index.js",
316
+ "browser": "./dist/browser/i18n/index.js",
317
+ "default": "./dist/i18n/index.js"
318
+ },
319
+ "./i18n/keys": {
320
+ "types": "./dist/i18n/keys.d.ts",
321
+ "bun": "./dist/i18n/keys.js",
322
+ "node": "./dist/node/i18n/keys.js",
323
+ "browser": "./dist/browser/i18n/keys.js",
324
+ "default": "./dist/i18n/keys.js"
325
+ },
326
+ "./i18n/locale": {
327
+ "types": "./dist/i18n/locale.d.ts",
328
+ "bun": "./dist/i18n/locale.js",
329
+ "node": "./dist/node/i18n/locale.js",
330
+ "browser": "./dist/browser/i18n/locale.js",
331
+ "default": "./dist/i18n/locale.js"
332
+ },
333
+ "./i18n/messages": {
334
+ "types": "./dist/i18n/messages.d.ts",
335
+ "bun": "./dist/i18n/messages.js",
336
+ "node": "./dist/node/i18n/messages.js",
337
+ "browser": "./dist/browser/i18n/messages.js",
338
+ "default": "./dist/i18n/messages.js"
339
+ },
267
340
  "./player": {
268
341
  "types": "./dist/player/index.d.ts",
269
342
  "bun": "./dist/player/index.js",
@@ -555,6 +628,76 @@
555
628
  "browser": "./dist/browser/generators/video-generator.js",
556
629
  "default": "./dist/generators/video-generator.js"
557
630
  },
631
+ "./i18n": {
632
+ "types": "./dist/i18n/index.d.ts",
633
+ "bun": "./dist/i18n/index.js",
634
+ "node": "./dist/node/i18n/index.js",
635
+ "browser": "./dist/browser/i18n/index.js",
636
+ "default": "./dist/i18n/index.js"
637
+ },
638
+ "./i18n/catalogs": {
639
+ "types": "./dist/i18n/catalogs/index.d.ts",
640
+ "bun": "./dist/i18n/catalogs/index.js",
641
+ "node": "./dist/node/i18n/catalogs/index.js",
642
+ "browser": "./dist/browser/i18n/catalogs/index.js",
643
+ "default": "./dist/i18n/catalogs/index.js"
644
+ },
645
+ "./i18n/catalogs/en": {
646
+ "types": "./dist/i18n/catalogs/en.d.ts",
647
+ "bun": "./dist/i18n/catalogs/en.js",
648
+ "node": "./dist/node/i18n/catalogs/en.js",
649
+ "browser": "./dist/browser/i18n/catalogs/en.js",
650
+ "default": "./dist/i18n/catalogs/en.js"
651
+ },
652
+ "./i18n/catalogs/es": {
653
+ "types": "./dist/i18n/catalogs/es.d.ts",
654
+ "bun": "./dist/i18n/catalogs/es.js",
655
+ "node": "./dist/node/i18n/catalogs/es.js",
656
+ "browser": "./dist/browser/i18n/catalogs/es.js",
657
+ "default": "./dist/i18n/catalogs/es.js"
658
+ },
659
+ "./i18n/catalogs/fr": {
660
+ "types": "./dist/i18n/catalogs/fr.d.ts",
661
+ "bun": "./dist/i18n/catalogs/fr.js",
662
+ "node": "./dist/node/i18n/catalogs/fr.js",
663
+ "browser": "./dist/browser/i18n/catalogs/fr.js",
664
+ "default": "./dist/i18n/catalogs/fr.js"
665
+ },
666
+ "./i18n/catalogs/index": {
667
+ "types": "./dist/i18n/catalogs/index.d.ts",
668
+ "bun": "./dist/i18n/catalogs/index.js",
669
+ "node": "./dist/node/i18n/catalogs/index.js",
670
+ "browser": "./dist/browser/i18n/catalogs/index.js",
671
+ "default": "./dist/i18n/catalogs/index.js"
672
+ },
673
+ "./i18n/index": {
674
+ "types": "./dist/i18n/index.d.ts",
675
+ "bun": "./dist/i18n/index.js",
676
+ "node": "./dist/node/i18n/index.js",
677
+ "browser": "./dist/browser/i18n/index.js",
678
+ "default": "./dist/i18n/index.js"
679
+ },
680
+ "./i18n/keys": {
681
+ "types": "./dist/i18n/keys.d.ts",
682
+ "bun": "./dist/i18n/keys.js",
683
+ "node": "./dist/node/i18n/keys.js",
684
+ "browser": "./dist/browser/i18n/keys.js",
685
+ "default": "./dist/i18n/keys.js"
686
+ },
687
+ "./i18n/locale": {
688
+ "types": "./dist/i18n/locale.d.ts",
689
+ "bun": "./dist/i18n/locale.js",
690
+ "node": "./dist/node/i18n/locale.js",
691
+ "browser": "./dist/browser/i18n/locale.js",
692
+ "default": "./dist/i18n/locale.js"
693
+ },
694
+ "./i18n/messages": {
695
+ "types": "./dist/i18n/messages.d.ts",
696
+ "bun": "./dist/i18n/messages.js",
697
+ "node": "./dist/node/i18n/messages.js",
698
+ "browser": "./dist/browser/i18n/messages.js",
699
+ "default": "./dist/i18n/messages.js"
700
+ },
558
701
  "./player": {
559
702
  "types": "./dist/player/index.d.ts",
560
703
  "bun": "./dist/player/index.js",