@agent-media/core 0.3.0 → 0.5.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.
@@ -24,9 +24,20 @@ export declare function getConfig(): AgentMediaConfig;
24
24
  */
25
25
  export declare function ensureOutputDir(outputDir: string): Promise<void>;
26
26
  /**
27
- * Generate a unique output filename
27
+ * Generate a unique output filename (legacy function for backwards compatibility)
28
28
  */
29
29
  export declare function generateOutputFilename(extension: string, prefix?: string): string;
30
+ /**
31
+ * Extract base filename without extension from a path or URL
32
+ */
33
+ export declare function extractBasename(source: string): string;
34
+ /**
35
+ * Resolve output filename based on context
36
+ * - If customName provided: use it (with correct extension)
37
+ * - If inputSource provided: derive from input filename
38
+ * - Otherwise: use action prefix
39
+ */
40
+ export declare function resolveOutputFilename(extension: string, actionPrefix: string, customName?: string, inputSource?: string): string;
30
41
  /**
31
42
  * Get the full output path for a file
32
43
  */
@@ -37,6 +48,7 @@ export declare function getOutputPath(outputDir: string, filename: string): stri
37
48
  export interface MergedConfig {
38
49
  outputDir: string;
39
50
  provider?: string;
51
+ outputName?: string;
40
52
  }
41
53
  /**
42
54
  * Merge CLI options with config defaults
@@ -45,5 +57,6 @@ export interface MergedConfig {
45
57
  export declare function mergeConfig(config: AgentMediaConfig, cliOptions: {
46
58
  out?: string;
47
59
  provider?: string;
60
+ name?: string;
48
61
  }): MergedConfig;
49
62
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,OAAO,EAAE;QACP,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,gBAAgB,CAY5C;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,SAAW,GAChB,MAAM,CAIR;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,MAAM,CAER;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE;IACV,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACA,YAAY,CAKd"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,OAAO,EAAE;QACP,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,gBAAgB,CAY5C;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,SAAW,GAChB,MAAM,CAIR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAWtD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAkBR;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,MAAM,CAER;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE;IACV,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,YAAY,CAMd"}
@@ -1,5 +1,6 @@
1
1
  import { mkdir } from 'node:fs/promises';
2
- import { join, resolve } from 'node:path';
2
+ import { join, resolve, basename } from 'node:path';
3
+ import { randomUUID } from 'node:crypto';
3
4
  /**
4
5
  * Default output directory name
5
6
  */
@@ -25,13 +26,50 @@ export async function ensureOutputDir(outputDir) {
25
26
  await mkdir(outputDir, { recursive: true });
26
27
  }
27
28
  /**
28
- * Generate a unique output filename
29
+ * Generate a unique output filename (legacy function for backwards compatibility)
29
30
  */
30
31
  export function generateOutputFilename(extension, prefix = 'output') {
31
32
  const timestamp = Date.now();
32
33
  const random = Math.random().toString(36).substring(2, 8);
33
34
  return `${prefix}_${timestamp}_${random}.${extension}`;
34
35
  }
36
+ /**
37
+ * Extract base filename without extension from a path or URL
38
+ */
39
+ export function extractBasename(source) {
40
+ // Handle URLs
41
+ if (source.startsWith('http://') || source.startsWith('https://')) {
42
+ const url = new URL(source);
43
+ const pathname = url.pathname;
44
+ const filename = pathname.split('/').pop() || 'file';
45
+ return filename.replace(/\.[^.]+$/, '');
46
+ }
47
+ // Handle local paths
48
+ const filename = basename(source);
49
+ return filename.replace(/\.[^.]+$/, '');
50
+ }
51
+ /**
52
+ * Resolve output filename based on context
53
+ * - If customName provided: use it (with correct extension)
54
+ * - If inputSource provided: derive from input filename
55
+ * - Otherwise: use action prefix
56
+ */
57
+ export function resolveOutputFilename(extension, actionPrefix, customName, inputSource) {
58
+ if (customName) {
59
+ // Strip any existing extension and add the correct one
60
+ const baseName = customName.replace(/\.[^.]+$/, '');
61
+ return `${baseName}.${extension}`;
62
+ }
63
+ // Generate UUID without dashes for cleaner filenames
64
+ const uuid = randomUUID().replace(/-/g, '');
65
+ if (inputSource) {
66
+ // Derive from input: {basename}_{action}_{uuid}.{ext}
67
+ const baseName = extractBasename(inputSource);
68
+ return `${baseName}_${actionPrefix}_${uuid}.${extension}`;
69
+ }
70
+ // No input (e.g., generate): {action}_{uuid}.{ext}
71
+ return `${actionPrefix}_${uuid}.${extension}`;
72
+ }
35
73
  /**
36
74
  * Get the full output path for a file
37
75
  */
@@ -46,6 +84,7 @@ export function mergeConfig(config, cliOptions) {
46
84
  return {
47
85
  outputDir: cliOptions.out ? resolve(cliOptions.out) : config.outputDir,
48
86
  provider: cliOptions.provider,
87
+ outputName: cliOptions.name,
49
88
  };
50
89
  }
51
90
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAgBjD;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAE5E,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;QAC7B,OAAO,EAAE;YACP,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YAC/B,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAC7C,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;SACtC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB;IACrD,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,MAAM,GAAG,QAAQ;IAEjB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,GAAG,MAAM,IAAI,SAAS,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,SAAiB,EACjB,QAAgB;IAEhB,OAAO,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnC,CAAC;AAUD;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,MAAwB,EACxB,UAGC;IAED,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS;QACtE,QAAQ,EAAE,UAAU,CAAC,QAAQ;KAC9B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- export type { MediaType, ImageAction, AudioAction, ImageFormat, AudioFormat, MediaInput, ResizeOptions, ConvertOptions, RemoveBackgroundOptions, GenerateOptions, ExtendOptions, EditOptions, ExtractOptions, TranscriptionSegment, TranscriptionData, TranscribeOptions, TranscriptionSuccessResult, ActionOptions, MediaError, MediaSuccessResult, MediaErrorResult, MediaResult, ActionContext, MediaProvider, } from './types/index.js';
1
+ export type { MediaType, ImageAction, AudioAction, VideoAction, ImageFormat, AudioFormat, VideoResolution, VideoFps, MediaInput, ResizeOptions, ConvertOptions, RemoveBackgroundOptions, GenerateOptions, ExtendOptions, EditOptions, ExtractOptions, TranscriptionSegment, TranscriptionData, TranscribeOptions, TranscriptionSuccessResult, VideoGenerateOptions, ActionOptions, MediaError, MediaSuccessResult, MediaErrorResult, MediaResult, ActionContext, MediaProvider, } from './types/index.js';
2
2
  export { ProviderRegistry, detectProviderFromEnv, resolveProvider, executeAction, globalRegistry, } from './provider/index.js';
3
- export { DEFAULT_OUTPUT_DIR, getConfig, ensureOutputDir, generateOutputFilename, getOutputPath, mergeConfig, } from './config/index.js';
3
+ export { DEFAULT_OUTPUT_DIR, getConfig, ensureOutputDir, generateOutputFilename, getOutputPath, mergeConfig, resolveOutputFilename, extractBasename, } from './config/index.js';
4
4
  export type { AgentMediaConfig, MergedConfig } from './config/index.js';
5
5
  export { ErrorCodes, createSuccess, createError, createTranscriptionSuccess, isSuccess, isError, formatResult, printResult, } from './result/index.js';
6
6
  export type { ErrorCode } from './result/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,UAAU,EACV,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,GACd,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,QAAQ,EACR,UAAU,EACV,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,0BAA0B,EAC1B,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,GACd,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // Provider
2
2
  export { ProviderRegistry, detectProviderFromEnv, resolveProvider, executeAction, globalRegistry, } from './provider/index.js';
3
3
  // Config
4
- export { DEFAULT_OUTPUT_DIR, getConfig, ensureOutputDir, generateOutputFilename, getOutputPath, mergeConfig, } from './config/index.js';
4
+ export { DEFAULT_OUTPUT_DIR, getConfig, ensureOutputDir, generateOutputFilename, getOutputPath, mergeConfig, resolveOutputFilename, extractBasename, } from './config/index.js';
5
5
  // Result
6
6
  export { ErrorCodes, createSuccess, createError, createTranscriptionSuccess, isSuccess, isError, formatResult, printResult, } from './result/index.js';
7
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,WAAW;AACX,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,SAAS;AACT,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAG3B,SAAS;AACT,OAAO,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgCA,WAAW;AACX,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,SAAS;AACT,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAG3B,SAAS;AACT,OAAO,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAC"}
@@ -10,6 +10,10 @@ export type ImageAction = 'resize' | 'convert' | 'remove-background' | 'generate
10
10
  * Supported audio actions
11
11
  */
12
12
  export type AudioAction = 'extract' | 'transcribe';
13
+ /**
14
+ * Supported video actions
15
+ */
16
+ export type VideoAction = 'generate';
13
17
  /**
14
18
  * Supported audio output formats for extraction
15
19
  */
@@ -130,6 +134,33 @@ export interface TranscribeOptions {
130
134
  /** Override default model (e.g., "fal-ai/whisper") */
131
135
  model?: string;
132
136
  }
137
+ /**
138
+ * Supported video resolutions
139
+ */
140
+ export type VideoResolution = '720p' | '1080p' | '1440p' | '2160p';
141
+ /**
142
+ * Supported video frame rates
143
+ */
144
+ export type VideoFps = 25 | 50;
145
+ /**
146
+ * Options for video generate action
147
+ */
148
+ export interface VideoGenerateOptions {
149
+ /** Text description of the video to generate */
150
+ prompt: string;
151
+ /** Input image for image-to-video (optional) */
152
+ input?: MediaInput;
153
+ /** Duration in seconds: 6, 8, 10, 12, 14, 16, 18, or 20 (default: 6) */
154
+ duration?: number;
155
+ /** Video resolution (default: 720p) */
156
+ resolution?: VideoResolution;
157
+ /** Frame rate (default: 25) */
158
+ fps?: VideoFps;
159
+ /** Generate audio track (default: false) */
160
+ generateAudio?: boolean;
161
+ /** Override default model */
162
+ model?: string;
163
+ }
133
164
  /**
134
165
  * Successful result from a transcription operation
135
166
  */
@@ -168,6 +199,9 @@ export type ActionOptions = {
168
199
  } | {
169
200
  action: 'transcribe';
170
201
  options: TranscribeOptions;
202
+ } | {
203
+ action: 'video-generate';
204
+ options: VideoGenerateOptions;
171
205
  };
172
206
  /**
173
207
  * Structured error information
@@ -207,6 +241,10 @@ export interface ActionContext {
207
241
  outputDir: string;
208
242
  /** Explicitly selected provider (overrides auto-detection) */
209
243
  provider?: string;
244
+ /** Custom output filename (extension auto-corrected) */
245
+ outputName?: string;
246
+ /** Original input path/URL for deriving default filename */
247
+ inputSource?: string;
210
248
  }
211
249
  /**
212
250
  * Provider interface that all media providers must implement
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-media/core",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "Core types and utilities for agent-media toolkit",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -40,6 +40,9 @@
40
40
  "@types/node": "^22.0.0",
41
41
  "typescript": "^5.7.0"
42
42
  },
43
+ "publishConfig": {
44
+ "access": "public"
45
+ },
43
46
  "scripts": {
44
47
  "build": "tsc",
45
48
  "clean": "rm -rf dist",