@twick/studio 0.15.19 → 0.15.20
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 +25 -0
- package/dist/components/container/element-panel-container.d.ts +3 -2
- package/dist/components/container/generate-media-panel-container.d.ts +13 -0
- package/dist/components/properties/caption-prop.d.ts +6 -21
- package/dist/helpers/constant.d.ts +36 -0
- package/dist/hooks/use-generate-image.d.ts +10 -0
- package/dist/hooks/use-generate-video.d.ts +10 -0
- package/dist/index.js +682 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +685 -26
- package/dist/index.mjs.map +1 -1
- package/dist/types/generation.d.ts +44 -0
- package/dist/types/index.d.ts +5 -0
- package/package.json +13 -12
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IGenerationPollingResponse, ModelInfo } from '@twick/ai-models';
|
|
2
|
+
|
|
3
|
+
/** Parameters for image generation */
|
|
4
|
+
export interface GenerateImageParams {
|
|
5
|
+
provider: "fal" | "runware";
|
|
6
|
+
endpointId: string;
|
|
7
|
+
prompt: string;
|
|
8
|
+
image_url?: string;
|
|
9
|
+
width?: number;
|
|
10
|
+
height?: number;
|
|
11
|
+
steps?: number;
|
|
12
|
+
guidance_scale?: number;
|
|
13
|
+
negative_prompt?: string;
|
|
14
|
+
}
|
|
15
|
+
/** Parameters for video generation */
|
|
16
|
+
export interface GenerateVideoParams {
|
|
17
|
+
provider: "fal" | "runware";
|
|
18
|
+
endpointId: string;
|
|
19
|
+
prompt: string;
|
|
20
|
+
image_url?: string;
|
|
21
|
+
duration?: number;
|
|
22
|
+
fps?: number;
|
|
23
|
+
width?: number;
|
|
24
|
+
height?: number;
|
|
25
|
+
steps?: number;
|
|
26
|
+
guidance_scale?: number;
|
|
27
|
+
negative_prompt?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface IImageGenerationService {
|
|
30
|
+
/** Submit image generation job; returns requestId for polling */
|
|
31
|
+
generateImage: (params: GenerateImageParams) => Promise<string>;
|
|
32
|
+
/** Poll status of generation job */
|
|
33
|
+
getRequestStatus: (reqId: string) => Promise<IGenerationPollingResponse>;
|
|
34
|
+
/** Available image models */
|
|
35
|
+
getAvailableModels?: () => ModelInfo[];
|
|
36
|
+
}
|
|
37
|
+
export interface IVideoGenerationService {
|
|
38
|
+
/** Submit video generation job; returns requestId for polling */
|
|
39
|
+
generateVideo: (params: GenerateVideoParams) => Promise<string>;
|
|
40
|
+
/** Poll status of generation job */
|
|
41
|
+
getRequestStatus: (reqId: string) => Promise<IGenerationPollingResponse>;
|
|
42
|
+
/** Available video models */
|
|
43
|
+
getAvailableModels?: () => ModelInfo[];
|
|
44
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ProjectJSON, Size, TrackElement, VideoElement } from '@twick/timeline';
|
|
2
2
|
import { CanvasConfig, VideoEditorConfig } from '@twick/video-editor';
|
|
3
3
|
|
|
4
|
+
export type { IImageGenerationService, IVideoGenerationService, GenerateImageParams, GenerateVideoParams, } from './generation';
|
|
4
5
|
export interface MediaItem {
|
|
5
6
|
id: string;
|
|
6
7
|
name: string;
|
|
@@ -91,6 +92,10 @@ export interface StudioConfig extends VideoEditorConfig {
|
|
|
91
92
|
* Implement this in your application code to provide API endpoints
|
|
92
93
|
*/
|
|
93
94
|
captionGenerationService?: ICaptionGenerationService;
|
|
95
|
+
/** Image generation service for polling-based async image generation */
|
|
96
|
+
imageGenerationService?: import('./generation').IImageGenerationService;
|
|
97
|
+
/** Video generation service for polling-based async video generation */
|
|
98
|
+
videoGenerationService?: import('./generation').IVideoGenerationService;
|
|
94
99
|
exportVideo?: (project: ProjectJSON, videoSettings: VideoSettings) => Promise<Result>;
|
|
95
100
|
/**
|
|
96
101
|
* When set, media panels show cloud upload (S3 or GCS). Backend must be configured with env (e.g. FILE_UPLOADER_S3_* or GOOGLE_CLOUD_*).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twick/studio",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.20",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -33,14 +33,15 @@
|
|
|
33
33
|
"access": "public"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@twick/
|
|
37
|
-
"@twick/
|
|
38
|
-
"@twick/
|
|
39
|
-
"@twick/
|
|
40
|
-
"@twick/
|
|
41
|
-
"@twick/
|
|
42
|
-
"@twick/
|
|
43
|
-
"@twick/
|
|
36
|
+
"@twick/ai-models": "0.15.20",
|
|
37
|
+
"@twick/canvas": "0.15.20",
|
|
38
|
+
"@twick/core": "^0.15.20",
|
|
39
|
+
"@twick/live-player": "0.15.20",
|
|
40
|
+
"@twick/media-utils": "0.15.20",
|
|
41
|
+
"@twick/player-react": "^0.15.20",
|
|
42
|
+
"@twick/timeline": "0.15.20",
|
|
43
|
+
"@twick/video-editor": "0.15.20",
|
|
44
|
+
"@twick/visualizer": "0.15.20",
|
|
44
45
|
"lucide-react": "^0.511.0"
|
|
45
46
|
},
|
|
46
47
|
"peerDependencies": {
|
|
@@ -53,9 +54,9 @@
|
|
|
53
54
|
"@types/react-dom": "^18.0.0 || ^19.0.0",
|
|
54
55
|
"react": "^18.0.0 || ^19.0.0",
|
|
55
56
|
"react-dom": "^18.0.0 || ^19.0.0",
|
|
56
|
-
"@twick/timeline": "0.15.
|
|
57
|
-
"@twick/live-player": "0.15.
|
|
58
|
-
"@twick/video-editor": "0.15.
|
|
57
|
+
"@twick/timeline": "0.15.20",
|
|
58
|
+
"@twick/live-player": "0.15.20",
|
|
59
|
+
"@twick/video-editor": "0.15.20",
|
|
59
60
|
"rimraf": "^5.0.5",
|
|
60
61
|
"typedoc": "^0.25.8",
|
|
61
62
|
"typedoc-plugin-markdown": "^3.17.1",
|