@scenerok/sdk 0.2.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 (53) hide show
  1. package/README.md +114 -0
  2. package/dist/duration.d.ts +29 -0
  3. package/dist/duration.d.ts.map +1 -0
  4. package/dist/duration.js +87 -0
  5. package/dist/grid.d.ts +61 -0
  6. package/dist/grid.d.ts.map +1 -0
  7. package/dist/grid.js +174 -0
  8. package/dist/index.d.ts +27 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +22 -0
  11. package/dist/ir-builder.d.ts +28 -0
  12. package/dist/ir-builder.d.ts.map +1 -0
  13. package/dist/ir-builder.js +452 -0
  14. package/dist/ir.d.ts +204 -0
  15. package/dist/ir.d.ts.map +1 -0
  16. package/dist/ir.js +30 -0
  17. package/dist/media.d.ts +16 -0
  18. package/dist/media.d.ts.map +1 -0
  19. package/dist/media.js +105 -0
  20. package/dist/motion.d.ts +9 -0
  21. package/dist/motion.d.ts.map +1 -0
  22. package/dist/motion.js +31 -0
  23. package/dist/plugins/cloudflare.d.ts +80 -0
  24. package/dist/plugins/cloudflare.d.ts.map +1 -0
  25. package/dist/plugins/cloudflare.js +55 -0
  26. package/dist/plugins/elevenlabs-music.d.ts +37 -0
  27. package/dist/plugins/elevenlabs-music.d.ts.map +1 -0
  28. package/dist/plugins/elevenlabs-music.js +21 -0
  29. package/dist/plugins/invoke.d.ts +26 -0
  30. package/dist/plugins/invoke.d.ts.map +1 -0
  31. package/dist/plugins/invoke.js +109 -0
  32. package/dist/plugins/types.d.ts +21 -0
  33. package/dist/plugins/types.d.ts.map +1 -0
  34. package/dist/plugins/types.js +4 -0
  35. package/dist/plugins/xai.d.ts +76 -0
  36. package/dist/plugins/xai.d.ts.map +1 -0
  37. package/dist/plugins/xai.js +60 -0
  38. package/dist/stdlib.d.ts +96 -0
  39. package/dist/stdlib.d.ts.map +1 -0
  40. package/dist/stdlib.js +66 -0
  41. package/dist/timeline.d.ts +27 -0
  42. package/dist/timeline.d.ts.map +1 -0
  43. package/dist/timeline.js +117 -0
  44. package/dist/transitions/catalog.d.ts +33 -0
  45. package/dist/transitions/catalog.d.ts.map +1 -0
  46. package/dist/transitions/catalog.js +51 -0
  47. package/dist/transitions/index.d.ts +62 -0
  48. package/dist/transitions/index.d.ts.map +1 -0
  49. package/dist/transitions/index.js +57 -0
  50. package/dist/types.d.ts +177 -0
  51. package/dist/types.d.ts.map +1 -0
  52. package/dist/types.js +14 -0
  53. package/package.json +64 -0
@@ -0,0 +1,177 @@
1
+ import type { IRAnimation, IREffect, IRMotionTrack, IRTextStyle } from './ir.js';
2
+ import type { Duration, TimeInput } from './duration.js';
3
+ import type { GridSpec } from './grid.js';
4
+ export type SdkKind = 'video' | 'text' | 'audio' | 'filter' | 'shader' | 'transition' | 'timeline' | 'animation';
5
+ export interface SdkNodeBase {
6
+ readonly __sdk: true;
7
+ readonly kind: SdkKind;
8
+ }
9
+ export interface AnimationDescriptor {
10
+ readonly __sdk: true;
11
+ readonly kind: 'animation';
12
+ type: string;
13
+ from: Record<string, unknown>;
14
+ to: Record<string, unknown>;
15
+ duration: number;
16
+ align?: 'start' | 'end';
17
+ easing?: string;
18
+ loop?: boolean;
19
+ plugin?: string;
20
+ }
21
+ export interface VideoOptions {
22
+ width?: number;
23
+ height?: number;
24
+ x?: number;
25
+ y?: number;
26
+ opacity?: number;
27
+ trimStart?: TimeInput;
28
+ trimEnd?: TimeInput;
29
+ speed?: number;
30
+ loop?: number;
31
+ /** Explicit duration in seconds when the asset cannot be probed yet. */
32
+ duration?: TimeInput;
33
+ animate?: AnimationDescriptor | AnimationDescriptor[];
34
+ }
35
+ export interface VideoClip extends SdkNodeBase {
36
+ kind: 'video';
37
+ source: string;
38
+ options: VideoOptions;
39
+ /** Resolved or declared duration in seconds. */
40
+ duration: number;
41
+ animations: AnimationDescriptor[];
42
+ animate(anim: AnimationDescriptor | AnimationDescriptor[]): VideoClip;
43
+ with(opts: Partial<VideoOptions>): VideoClip;
44
+ }
45
+ export interface TextOptions {
46
+ font?: string;
47
+ size?: number;
48
+ color?: string;
49
+ stroke?: string;
50
+ strokeWidth?: number;
51
+ bold?: boolean;
52
+ italic?: boolean;
53
+ x?: number | string;
54
+ y?: number | string;
55
+ rotation?: number;
56
+ opacity?: number;
57
+ align?: 'left' | 'center' | 'right';
58
+ lineHeight?: number;
59
+ letterSpacing?: number;
60
+ position?: string;
61
+ area?: string;
62
+ fit?: IRTextStyle['fit'];
63
+ overflow?: IRTextStyle['overflow'];
64
+ maxWidth?: number | string;
65
+ maxHeight?: number | string;
66
+ maxLines?: number;
67
+ anchor?: IRTextStyle['anchor'];
68
+ shadowColor?: string;
69
+ shadowBlur?: number;
70
+ shadowOffsetX?: number;
71
+ shadowOffsetY?: number;
72
+ animate?: AnimationDescriptor | AnimationDescriptor[];
73
+ }
74
+ export interface TextLayer extends SdkNodeBase {
75
+ kind: 'text';
76
+ content: string;
77
+ options: TextOptions;
78
+ animations: AnimationDescriptor[];
79
+ animate(anim: AnimationDescriptor | AnimationDescriptor[]): TextLayer;
80
+ with(opts: Partial<TextOptions>): TextLayer;
81
+ }
82
+ export interface AudioOptions {
83
+ volume?: number;
84
+ fadeIn?: TimeInput;
85
+ fadeOut?: TimeInput;
86
+ duration?: TimeInput;
87
+ loudnessNormalization?: 'ebu-r128';
88
+ targetLufs?: number;
89
+ }
90
+ export interface AudioTrack extends SdkNodeBase {
91
+ kind: 'audio';
92
+ source: string;
93
+ options: AudioOptions;
94
+ duration: number;
95
+ with(opts: Partial<AudioOptions>): AudioTrack;
96
+ }
97
+ export interface FilterEffect extends SdkNodeBase {
98
+ kind: 'filter';
99
+ name: string;
100
+ params: Record<string, number | string>;
101
+ }
102
+ export interface ShaderEffect extends SdkNodeBase {
103
+ kind: 'shader';
104
+ shaderSource: string;
105
+ params: Record<string, number | string>;
106
+ }
107
+ export interface TransitionOptions {
108
+ direction?: string;
109
+ ease?: string;
110
+ strength?: string | number;
111
+ /** `roll` | `freeze` — omit to auto-resolve from clip adjacency. */
112
+ mode?: string;
113
+ /** Override catalog default duration (0.6s) for `push` / auto-append. */
114
+ duration?: TimeInput;
115
+ width?: number;
116
+ height?: number;
117
+ x?: number | string;
118
+ y?: number | string;
119
+ opacity?: number;
120
+ }
121
+ export interface TransitionEffect extends SdkNodeBase {
122
+ kind: 'transition';
123
+ /** Catalog function name, e.g. `dissolve`. */
124
+ name: string;
125
+ /** Shader library key used by the render engine. */
126
+ shaderName: string;
127
+ options: TransitionOptions;
128
+ /** Default / declared duration in seconds. */
129
+ duration: number;
130
+ with(opts: Partial<TransitionOptions>): TransitionEffect;
131
+ }
132
+ export type Schedulable = VideoClip | TextLayer | AudioTrack | FilterEffect | ShaderEffect | TransitionEffect | TimelineLike;
133
+ export interface TimelineOptions {
134
+ width?: number;
135
+ height?: number;
136
+ fps?: number;
137
+ background?: string;
138
+ output?: {
139
+ path?: string;
140
+ format?: string;
141
+ codec?: string;
142
+ bitrate?: string;
143
+ resolution?: string;
144
+ fps?: number;
145
+ };
146
+ /** Optional name for nested timeline metadata. */
147
+ name?: string;
148
+ }
149
+ export interface TimelineLike extends SdkNodeBase {
150
+ kind: 'timeline';
151
+ readonly options: TimelineOptions;
152
+ /** Visual playhead (seconds) after last scheduled visual item. */
153
+ readonly duration: number;
154
+ /** Alias used in plan examples (`scene1.length`). */
155
+ readonly length: number;
156
+ /** Declare CSS-grid named regions for `area:` text placement. */
157
+ grid(spec: GridSpec): this;
158
+ push(value: Schedulable, duration?: TimeInput): this;
159
+ range(start: TimeInput, end: TimeInput, value: Schedulable): this;
160
+ toIR(): import('./ir.js').IRTimeline;
161
+ }
162
+ export type TimeKey = TimeInput | '-';
163
+ export interface RangeBinder {
164
+ [end: string | number | symbol]: Schedulable | undefined;
165
+ }
166
+ /** Host hooks for duration probing / asset resolution (injected by sdk-runtime). */
167
+ export interface SdkHost {
168
+ probeDuration?(source: string): number | Promise<number>;
169
+ resolveAsset?(source: string): string | Promise<string>;
170
+ }
171
+ export type BuiltEffect = IREffect;
172
+ export type BuiltMotion = IRMotionTrack[];
173
+ export type BuiltAnimations = IRAnimation[];
174
+ export declare function isSdkNode(value: unknown): value is SdkNodeBase;
175
+ export declare function isSchedulable(value: unknown): value is Schedulable;
176
+ export type { Duration };
177
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,14 @@
1
+ export function isSdkNode(value) {
2
+ return typeof value === 'object' && value !== null && value.__sdk === true;
3
+ }
4
+ export function isSchedulable(value) {
5
+ if (!isSdkNode(value))
6
+ return false;
7
+ return (value.kind === 'video'
8
+ || value.kind === 'text'
9
+ || value.kind === 'audio'
10
+ || value.kind === 'filter'
11
+ || value.kind === 'shader'
12
+ || value.kind === 'transition'
13
+ || value.kind === 'timeline');
14
+ }
package/package.json ADDED
@@ -0,0 +1,64 @@
1
+ {
2
+ "name": "@scenerok/sdk",
3
+ "version": "0.2.0",
4
+ "description": "TypeScript-first SceneRok authoring SDK — build IRTimeline for complex agent-authored scenes",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./stdlib": {
14
+ "types": "./dist/stdlib.d.ts",
15
+ "import": "./dist/stdlib.js"
16
+ },
17
+ "./xai": {
18
+ "types": "./dist/plugins/xai.d.ts",
19
+ "import": "./dist/plugins/xai.js"
20
+ },
21
+ "./cloudflare": {
22
+ "types": "./dist/plugins/cloudflare.d.ts",
23
+ "import": "./dist/plugins/cloudflare.js"
24
+ },
25
+ "./elevenlabs-music": {
26
+ "types": "./dist/plugins/elevenlabs-music.d.ts",
27
+ "import": "./dist/plugins/elevenlabs-music.js"
28
+ },
29
+ "./transitions": {
30
+ "types": "./dist/transitions/index.d.ts",
31
+ "import": "./dist/transitions/index.js"
32
+ }
33
+ },
34
+ "files": [
35
+ "dist",
36
+ "README.md"
37
+ ],
38
+ "scripts": {
39
+ "build": "tsc -p tsconfig.json",
40
+ "dev": "tsc --watch",
41
+ "test": "node --import tsx --test src/**/*.test.ts"
42
+ },
43
+ "keywords": [
44
+ "scenerok",
45
+ "vidscript",
46
+ "video",
47
+ "timeline",
48
+ "ir",
49
+ "sdk"
50
+ ],
51
+ "author": "SceneRok",
52
+ "license": "MIT",
53
+ "devDependencies": {
54
+ "@types/node": "^20.11.0",
55
+ "tsx": "^4.19.0",
56
+ "typescript": "^5.3.0"
57
+ },
58
+ "engines": {
59
+ "node": ">=18.0.0"
60
+ },
61
+ "publishConfig": {
62
+ "access": "public"
63
+ }
64
+ }