@agentmedia/schema 0.2.2 → 0.3.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.
- package/.turbo/turbo-build.log +4 -0
- package/.turbo/turbo-test.log +14 -0
- package/.turbo/turbo-typecheck.log +4 -0
- package/LICENSE +199 -0
- package/README.md +2 -2
- package/dist/__tests__/parity.test.js +7 -0
- package/dist/__tests__/parity.test.js.map +1 -1
- package/dist/generators.d.ts +452 -7
- package/dist/generators.d.ts.map +1 -1
- package/dist/generators.js +14 -3
- package/dist/generators.js.map +1 -1
- package/dist/video.d.ts +457 -6
- package/dist/video.d.ts.map +1 -1
- package/dist/video.js +75 -4
- package/dist/video.js.map +1 -1
- package/package.json +31 -16
- package/scripts/generate-openapi.ts +87 -38
- package/src/__tests__/parity.test.ts +8 -0
- package/src/generators.ts +17 -2
- package/src/video.ts +95 -5
package/dist/video.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.js","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAE/D;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAU,CAAC;AAG9C,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAU,CAAC;AAG7E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AAG/F,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IAChD,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW;IACpD,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW;CACxD,CAAC;AAGX,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAU,CAAC;AAG9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE,OAAO,CAAU,CAAC;AAG9D,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB;IAChE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc;CACjD,CAAC;AAGX,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAGrF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAU,CAAC;AAGvE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,CAAU,CAAC;AAGpG,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,CAAU,CAAC;AAGvF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAG/D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAGlG,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AAGvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,CAAU,CAAC;AAGlD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAGpE,+EAA+E;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AAEpD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IAC1C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC,MAAM,EAAE,CAAC;AAIZ;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACnD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAEvB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,EAAE,CAAE,SAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnD,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAC7C,CAAC,QAAQ,EAAE;IACZ,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;IACtC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAEvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAEvB;;;GAGG;AACH,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,IAAI,GAAG,EAAE,GAAI,KAAiC,EAAE,CAAC;IAEvD,uBAAuB;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4C,CAAC;IAChE,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;QACjE,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACrF,IAAI,KAAK,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;QAC7F,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,wBAAwB;IACxB,MAAM,MAAM,GAAG,IAAI,CAAC,MAA6C,CAAC;IAClE,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;QACrF,IAAI,MAAM,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACvF,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3D,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3D,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,uBAAuB;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4C,CAAC;IAChE,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC;QACpG,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;QACzE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAC,MAAM,CAAC;IAC3E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACjD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACnD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACrC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAChC,CAAC,CAAC,EAAE,EAAE,CAAE,SAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnD,EAAE,OAAO,EAAE,sCAAsC,EAAE,CACpD,CAAC,QAAQ,EAAE;IACZ,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACpD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;IACtC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IAC9C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACxC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;IAC5C,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1D,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACxC,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;KACrC,CAAC,CAAC,WAAW,EAAE,CACjB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC,MAAM,CACP,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAChE,EAAE,OAAO,EAAE,qCAAqC,EAAE,CACnD,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC3B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAChC,CAAC,CAAC,EAAE,EAAE,CAAE,SAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC,EACnD,EAAE,OAAO,EAAE,sCAAsC,EAAE,CACpD,CAAC,QAAQ,EAAE;CACb,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAU,CAAC;AAE5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACpC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,EAAE,CAAE,uBAA6C,CAAC,QAAQ,CAAC,CAAC,CAAC,EACjE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAC7C,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvB,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IACzE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,QAAQ,GAAG,8BAA8B,CAAC;IAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACxE,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;QACzB,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,QAAQ,CAAC;YAChB,OAAO,EAAE,cAAc,SAAS,eAAe,QAAQ,QAAQ,QAAQ,QAAQ,8BAA8B,YAAY;SAC1H,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAU,CAAC;AAC7D,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,iBAAiB;IACjB,eAAe;IACf,mBAAmB;IACnB,iBAAiB;IACjB,YAAY;IACZ,cAAc;IACd,kBAAkB;IAClB,iBAAiB;CACT,CAAC;AACX,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY;IACZ,SAAS;IACT,OAAO;IACP,SAAS;IACT,UAAU;IACV,YAAY;IACZ,aAAa;IACb,eAAe;CACP,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,8FAA8F,CAAC;IAC5I,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;IAC/H,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wFAAwF,CAAC;IACjJ,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACrH,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0GAA0G,CAAC;IAChL,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0GAA0G,CAAC;IACnK,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IACtJ,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAC1H,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IAC/G,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,EAAE,CAAE,wBAA8C,CAAC,QAAQ,CAAC,CAAC,CAAC,EAClE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAC7C,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IAC1F,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,mEAAmE,CAAC;IAC7H,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IAC7I,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;CACtH,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC5C,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,qBAAqB,CAAC;YAC7B,OAAO,EAAE,kDAAkD;SAC5D,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO;IAExB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,QAAQ,GAAG,+BAA+B,CAAC;IAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACxE,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;QACzB,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,QAAQ,CAAC;YAChB,OAAO,EAAE,cAAc,SAAS,eAAe,QAAQ,QAAQ,QAAQ,QAAQ,+BAA+B,YAAY;SAC3H,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"video.js","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,21 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentmedia/schema",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Type-safe schema definitions for AI UGC video generation — enums, Zod validation, and generator registry. Single source of truth for the agent-media platform.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"homepage": "https://agent-media.ai/docs/api-reference",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
10
|
-
"url": "git+https://github.com/
|
|
10
|
+
"url": "git+https://github.com/gitroomhq/agent-media.git",
|
|
11
11
|
"directory": "packages/schema"
|
|
12
12
|
},
|
|
13
13
|
"keywords": [
|
|
14
|
-
"ugc",
|
|
15
|
-
"
|
|
16
|
-
"
|
|
14
|
+
"ugc",
|
|
15
|
+
"video-generation",
|
|
16
|
+
"ai",
|
|
17
|
+
"schema",
|
|
18
|
+
"zod",
|
|
19
|
+
"validation",
|
|
20
|
+
"typescript",
|
|
21
|
+
"sdk",
|
|
22
|
+
"developer-tools",
|
|
23
|
+
"text-to-video",
|
|
24
|
+
"talking-head",
|
|
25
|
+
"product-video",
|
|
26
|
+
"product-ugc",
|
|
27
|
+
"openapi",
|
|
28
|
+
"mcp",
|
|
29
|
+
"agent-media"
|
|
17
30
|
],
|
|
18
|
-
"publishConfig": {
|
|
31
|
+
"publishConfig": {
|
|
32
|
+
"access": "public"
|
|
33
|
+
},
|
|
19
34
|
"main": "./dist/index.js",
|
|
20
35
|
"types": "./dist/index.d.ts",
|
|
21
36
|
"exports": {
|
|
@@ -24,15 +39,6 @@
|
|
|
24
39
|
"import": "./dist/index.js"
|
|
25
40
|
}
|
|
26
41
|
},
|
|
27
|
-
"scripts": {
|
|
28
|
-
"build": "tsc",
|
|
29
|
-
"typecheck": "tsc --noEmit",
|
|
30
|
-
"test": "vitest run",
|
|
31
|
-
"generate:edge-schema": "tsx scripts/generate-edge-schema.ts",
|
|
32
|
-
"generate:openapi": "tsx scripts/generate-openapi.ts",
|
|
33
|
-
"check:spec": "tsx scripts/check-spec-freshness.ts",
|
|
34
|
-
"check:sdk-types": "npx openapi-typescript ../../generated/openapi.json -o ../../generated/api-types.d.ts && echo '✓ SDK types generated'"
|
|
35
|
-
},
|
|
36
42
|
"dependencies": {
|
|
37
43
|
"zod": "^3.23.0",
|
|
38
44
|
"zod-to-json-schema": "^3.25.2"
|
|
@@ -42,5 +48,14 @@
|
|
|
42
48
|
"tsx": "^4.19.0",
|
|
43
49
|
"typescript": "^5.7.3",
|
|
44
50
|
"vitest": "^3.1.0"
|
|
51
|
+
},
|
|
52
|
+
"scripts": {
|
|
53
|
+
"build": "tsc",
|
|
54
|
+
"typecheck": "tsc --noEmit",
|
|
55
|
+
"test": "vitest run",
|
|
56
|
+
"generate:edge-schema": "tsx scripts/generate-edge-schema.ts",
|
|
57
|
+
"generate:openapi": "tsx scripts/generate-openapi.ts",
|
|
58
|
+
"check:spec": "tsx scripts/check-spec-freshness.ts",
|
|
59
|
+
"check:sdk-types": "npx openapi-typescript ../../generated/openapi.json -o ../../generated/api-types.d.ts && echo '✓ SDK types generated'"
|
|
45
60
|
}
|
|
46
|
-
}
|
|
61
|
+
}
|
|
@@ -21,7 +21,7 @@ const outputPath = resolve(outputDir, 'openapi.json');
|
|
|
21
21
|
const FIELD_DESCRIPTIONS: Record<string, string> = {
|
|
22
22
|
script: 'Narration script for the video. Must be 50-3000 characters. Either script or prompt is required.',
|
|
23
23
|
prompt: 'AI generates a script from this description. 1-1000 characters. Either script or prompt is required.',
|
|
24
|
-
product_url: '
|
|
24
|
+
product_url: 'SaaS product URL for context during AI script generation.',
|
|
25
25
|
actor_slug: 'AI actor slug for talking head. Run GET /v1/actors to browse. Example: "sofia", "marcus".',
|
|
26
26
|
persona_slug: 'Custom persona slug (cloned voice + face). Mutually exclusive with actor_slug.',
|
|
27
27
|
face_photo_url: 'Direct URL to a face photo. Mutually exclusive with actor_slug.',
|
|
@@ -33,7 +33,7 @@ const FIELD_DESCRIPTIONS: Record<string, string> = {
|
|
|
33
33
|
music: 'Background music genre.',
|
|
34
34
|
cta: 'End screen call-to-action text. Max 100 characters. Example: "Follow for more".',
|
|
35
35
|
aspect_ratio: 'Video aspect ratio.',
|
|
36
|
-
template: 'Script structure template. Options: monologue, testimonial,
|
|
36
|
+
template: 'Script structure template. Options: monologue, testimonial, problem-solution, saas-review, before-after, listicle, product-demo.',
|
|
37
37
|
composition_mode: 'Set to "pip" for picture-in-picture overlay mode.',
|
|
38
38
|
allow_broll: 'Enable AI-generated B-roll cutaway scenes mixed with talking head.',
|
|
39
39
|
broll_model: 'Deprecated. Backend auto-selects the best model. Accepted but ignored.',
|
|
@@ -60,7 +60,7 @@ const FIELD_DESCRIPTIONS: Record<string, string> = {
|
|
|
60
60
|
|
|
61
61
|
const paths: Record<string, unknown> = {};
|
|
62
62
|
|
|
63
|
-
for (const [id, gen] of Object.entries(GENERATORS)) {
|
|
63
|
+
for (const [id, gen] of Object.entries(GENERATORS).filter(([, gen]) => !(gen as { legacy?: boolean }).legacy)) {
|
|
64
64
|
const jsonSchema = zodToJsonSchema(gen.inputSchema, {
|
|
65
65
|
name: `${id}_input`,
|
|
66
66
|
$refStrategy: 'none',
|
|
@@ -106,7 +106,7 @@ for (const [id, gen] of Object.entries(GENERATORS)) {
|
|
|
106
106
|
} : id === 'subtitle' ? {
|
|
107
107
|
video_url: 'https://example.com/video.mp4',
|
|
108
108
|
style: 'hormozi',
|
|
109
|
-
} : id === '
|
|
109
|
+
} : id === 'saas_review' ? {
|
|
110
110
|
product_url: 'https://example.com/product',
|
|
111
111
|
angle: 'honest',
|
|
112
112
|
actor_slug: 'marcus',
|
|
@@ -132,7 +132,7 @@ for (const [id, gen] of Object.entries(GENERATORS)) {
|
|
|
132
132
|
{
|
|
133
133
|
lang: 'curl',
|
|
134
134
|
label: 'cURL',
|
|
135
|
-
source: `curl -X POST https://api-
|
|
135
|
+
source: `curl -X POST https://api.agent-media.ai/v1/generate/ugc_video \\
|
|
136
136
|
-H "Authorization: Bearer ma_YOUR_KEY" \\
|
|
137
137
|
-H "Content-Type: application/json" \\
|
|
138
138
|
-d '{
|
|
@@ -220,23 +220,47 @@ console.log(video.video_url);`,
|
|
|
220
220
|
paths['/v1/actors'] = {
|
|
221
221
|
get: {
|
|
222
222
|
operationId: 'listActors',
|
|
223
|
-
summary: 'List
|
|
224
|
-
description:
|
|
223
|
+
summary: 'List actors with filters, or look up a single actor by slug',
|
|
224
|
+
description:
|
|
225
|
+
'Public endpoint — no API key required. Lists active actors, supports filters (gender, age_range, actor_type, preset, search), and returns a single actor when ?slug=… is provided (with similar-slug suggestions on 404). Rate limited to 60 requests/minute per IP.',
|
|
225
226
|
tags: ['actors'],
|
|
226
|
-
security: [{ bearerAuth: [] }],
|
|
227
227
|
parameters: [
|
|
228
|
-
{ name: '
|
|
229
|
-
{ name: '
|
|
228
|
+
{ name: 'gender', in: 'query', required: false, schema: { type: 'string', enum: ['female', 'male'] }, description: 'Filter by gender' },
|
|
229
|
+
{ name: 'age_range', in: 'query', required: false, schema: { type: 'string', enum: ['18-25', '26-35', '36-50', '51+'] }, description: 'Filter by age range' },
|
|
230
|
+
{ name: 'actor_type', in: 'query', required: false, schema: { type: 'string', enum: ['Young Adult', 'Professional', 'Mom', 'Elder', 'Casual'] }, description: 'Filter by persona type' },
|
|
231
|
+
{ name: 'preset', in: 'query', required: false, schema: { type: 'string' }, description: 'Filter by preset tag (e.g. show_your_app)' },
|
|
232
|
+
{ name: 'search', in: 'query', required: false, schema: { type: 'string' }, description: 'Case-insensitive substring on name' },
|
|
233
|
+
{ name: 'slug', in: 'query', required: false, schema: { type: 'string' }, description: 'Exact slug. Returns single actor or 404 with similar-slug suggestions. Other filters and pagination are ignored.' },
|
|
234
|
+
{ name: 'limit', in: 'query', required: false, schema: { type: 'integer', minimum: 1, maximum: 500, default: 500 }, description: 'Page size (ignored when slug is set). Default 500 — large enough to return the full active library in one call.' },
|
|
235
|
+
{ name: 'offset', in: 'query', required: false, schema: { type: 'integer', minimum: 0, default: 0 }, description: 'Page offset (ignored when slug is set)' },
|
|
230
236
|
],
|
|
231
237
|
responses: {
|
|
232
238
|
'200': {
|
|
233
|
-
description: '
|
|
239
|
+
description: 'Actor list (when slug is omitted) or single actor (when slug is given).',
|
|
234
240
|
content: {
|
|
235
241
|
'application/json': {
|
|
236
|
-
schema: { $ref: '#/components/schemas/ActorList' },
|
|
242
|
+
schema: { oneOf: [{ $ref: '#/components/schemas/ActorList' }, { $ref: '#/components/schemas/ActorSingle' }] },
|
|
237
243
|
example: {
|
|
238
244
|
actors: [
|
|
239
|
-
{
|
|
245
|
+
{
|
|
246
|
+
id: '66ac63f6-1be0-4c70-9914-c8ed90208be0',
|
|
247
|
+
slug: 'aaliyah',
|
|
248
|
+
name: 'Aaliyah',
|
|
249
|
+
gender: 'female',
|
|
250
|
+
age: 28,
|
|
251
|
+
age_range: '26-35',
|
|
252
|
+
nationality: 'African American',
|
|
253
|
+
actor_type: 'Professional',
|
|
254
|
+
style: 'Confident, poised, thoughtful presence',
|
|
255
|
+
portrait_url: 'https://example.com/aaliyah.png',
|
|
256
|
+
green_screen_url: 'https://example.com/aaliyah-gs.png',
|
|
257
|
+
voice_id: 'cgSgspJ2msm6clMCkdW9',
|
|
258
|
+
voice_gender: 'female',
|
|
259
|
+
lip_sync_engine: 'aurora',
|
|
260
|
+
preset: null,
|
|
261
|
+
presets: ['show_your_app'],
|
|
262
|
+
status: 'active',
|
|
263
|
+
},
|
|
240
264
|
],
|
|
241
265
|
total: 200,
|
|
242
266
|
limit: 50,
|
|
@@ -245,8 +269,13 @@ paths['/v1/actors'] = {
|
|
|
245
269
|
},
|
|
246
270
|
},
|
|
247
271
|
},
|
|
248
|
-
'
|
|
249
|
-
description: '
|
|
272
|
+
'404': {
|
|
273
|
+
description: 'Slug lookup miss. Includes a similar-slug suggestion list.',
|
|
274
|
+
content: { 'application/json': { schema: { $ref: '#/components/schemas/Error' } } },
|
|
275
|
+
},
|
|
276
|
+
'429': {
|
|
277
|
+
description: 'Rate limited',
|
|
278
|
+
headers: { 'Retry-After': { schema: { type: 'integer' } } },
|
|
250
279
|
content: { 'application/json': { schema: { $ref: '#/components/schemas/Error' } } },
|
|
251
280
|
},
|
|
252
281
|
},
|
|
@@ -279,7 +308,7 @@ paths['/v1/videos/{jobId}'] = {
|
|
|
279
308
|
job_id: '9ba7ff45-b161-4aba-b14c-fd87d7e19a77',
|
|
280
309
|
status: 'completed',
|
|
281
310
|
progress: {},
|
|
282
|
-
video_url: 'https://
|
|
311
|
+
video_url: 'https://media.agent-media.ai/generation-outputs/.../ugc-final.mp4',
|
|
283
312
|
error_message: null,
|
|
284
313
|
created_at: '2026-04-11T10:00:00Z',
|
|
285
314
|
updated_at: '2026-04-11T10:03:00Z',
|
|
@@ -302,7 +331,7 @@ const spec = {
|
|
|
302
331
|
info: {
|
|
303
332
|
title: 'agent-media API',
|
|
304
333
|
version: '1.0.0',
|
|
305
|
-
description: `AI UGC video production API. Generate talking head videos with lip-synced AI actors,
|
|
334
|
+
description: `AI UGC video production API. Generate talking head videos with lip-synced AI actors, SaaS reviews, and styled subtitles.
|
|
306
335
|
|
|
307
336
|
## Authentication
|
|
308
337
|
All endpoints require a Bearer token. Use either:
|
|
@@ -320,7 +349,7 @@ Video generation is async. POST to /v1/generate/* returns a job_id immediately.
|
|
|
320
349
|
termsOfService: 'https://agent-media.ai/terms',
|
|
321
350
|
},
|
|
322
351
|
servers: [
|
|
323
|
-
{ url: 'https://api-
|
|
352
|
+
{ url: 'https://api.agent-media.ai', description: 'Production' },
|
|
324
353
|
],
|
|
325
354
|
paths,
|
|
326
355
|
components: {
|
|
@@ -390,31 +419,51 @@ Video generation is async. POST to /v1/generate/* returns a job_id immediately.
|
|
|
390
419
|
},
|
|
391
420
|
required: ['job_id', 'status'],
|
|
392
421
|
},
|
|
422
|
+
Actor: {
|
|
423
|
+
type: 'object',
|
|
424
|
+
description: 'A single AI actor record from the actor library.',
|
|
425
|
+
properties: {
|
|
426
|
+
id: { type: 'string', format: 'uuid' },
|
|
427
|
+
slug: { type: 'string', description: 'Use this in actor_slug when generating videos.' },
|
|
428
|
+
name: { type: 'string' },
|
|
429
|
+
gender: { type: 'string', enum: ['female', 'male'] },
|
|
430
|
+
age: { type: 'integer' },
|
|
431
|
+
age_range: { type: 'string', enum: ['18-25', '26-35', '36-50', '51+'] },
|
|
432
|
+
nationality: { type: 'string' },
|
|
433
|
+
actor_type: { type: 'string', enum: ['Young Adult', 'Professional', 'Mom', 'Elder', 'Casual'] },
|
|
434
|
+
style: { type: 'string', description: 'On-camera style descriptor.' },
|
|
435
|
+
portrait_url: { type: 'string', format: 'uri' },
|
|
436
|
+
green_screen_url: { type: 'string', format: 'uri', nullable: true },
|
|
437
|
+
voice_id: { type: 'string', description: 'ElevenLabs voice id used by default for this actor.' },
|
|
438
|
+
voice_gender: { type: 'string' },
|
|
439
|
+
lip_sync_engine: { type: 'string' },
|
|
440
|
+
preset: { type: 'string', nullable: true },
|
|
441
|
+
presets: { type: 'array', items: { type: 'string' } },
|
|
442
|
+
bio_occupation: { type: 'string' },
|
|
443
|
+
bio_story: { type: 'string' },
|
|
444
|
+
bio_hobbies: { type: 'array', items: { type: 'string' } },
|
|
445
|
+
status: { type: 'string', enum: ['active'] },
|
|
446
|
+
created_at: { type: 'string', format: 'date-time' },
|
|
447
|
+
updated_at: { type: 'string', format: 'date-time' },
|
|
448
|
+
},
|
|
449
|
+
required: ['id', 'slug', 'name', 'portrait_url', 'gender'],
|
|
450
|
+
},
|
|
393
451
|
ActorList: {
|
|
394
452
|
type: 'object',
|
|
395
|
-
description: 'Paginated list of
|
|
453
|
+
description: 'Paginated list of active actors. Returned when slug is omitted.',
|
|
396
454
|
properties: {
|
|
397
|
-
actors: {
|
|
398
|
-
|
|
399
|
-
items: {
|
|
400
|
-
type: 'object',
|
|
401
|
-
properties: {
|
|
402
|
-
id: { type: 'string', format: 'uuid' },
|
|
403
|
-
slug: { type: 'string', description: 'Use this in actor_slug when generating videos.' },
|
|
404
|
-
name: { type: 'string' },
|
|
405
|
-
portrait_url: { type: 'string', format: 'uri' },
|
|
406
|
-
age: { type: 'integer' },
|
|
407
|
-
gender: { type: 'string' },
|
|
408
|
-
nationality: { type: 'string' },
|
|
409
|
-
},
|
|
410
|
-
required: ['id', 'slug', 'name'],
|
|
411
|
-
},
|
|
412
|
-
},
|
|
413
|
-
total: { type: 'integer', description: 'Total number of actors available.' },
|
|
455
|
+
actors: { type: 'array', items: { $ref: '#/components/schemas/Actor' } },
|
|
456
|
+
total: { type: 'integer', description: 'Total matching actors.' },
|
|
414
457
|
limit: { type: 'integer' },
|
|
415
458
|
offset: { type: 'integer' },
|
|
416
459
|
},
|
|
417
|
-
required: ['actors', 'total'],
|
|
460
|
+
required: ['actors', 'total', 'limit', 'offset'],
|
|
461
|
+
},
|
|
462
|
+
ActorSingle: {
|
|
463
|
+
type: 'object',
|
|
464
|
+
description: 'Single-actor response shape. Returned when slug is provided.',
|
|
465
|
+
properties: { actor: { $ref: '#/components/schemas/Actor' } },
|
|
466
|
+
required: ['actor'],
|
|
418
467
|
},
|
|
419
468
|
},
|
|
420
469
|
},
|
|
@@ -424,4 +473,4 @@ mkdirSync(outputDir, { recursive: true });
|
|
|
424
473
|
writeFileSync(outputPath, JSON.stringify(spec, null, 2), 'utf-8');
|
|
425
474
|
console.log(`Generated: ${outputPath}`);
|
|
426
475
|
console.log(`Endpoints: ${Object.keys(paths).length}`);
|
|
427
|
-
console.log(`Generators: ${Object.
|
|
476
|
+
console.log(`Generators: ${Object.values(GENERATORS).filter((gen) => !(gen as { legacy?: boolean }).legacy).length}`);
|
|
@@ -27,6 +27,7 @@ import {
|
|
|
27
27
|
PIP_ANIMATIONS,
|
|
28
28
|
PIP_FRAME_STYLES,
|
|
29
29
|
} from '../video.js';
|
|
30
|
+
import { GENERATOR_IDS, GENERATORS } from '../generators.js';
|
|
30
31
|
|
|
31
32
|
// ── Helper: check if Zod accepts a body ─────────────────────────────────────
|
|
32
33
|
|
|
@@ -327,6 +328,13 @@ describe('Parity: pip_options', () => {
|
|
|
327
328
|
// ── Enum completeness: verify schema arrays match production ────────────────
|
|
328
329
|
|
|
329
330
|
describe('Enum completeness: values match production', () => {
|
|
331
|
+
it('promotes saas_review and keeps product_review as an undocumented legacy alias', () => {
|
|
332
|
+
expect(GENERATOR_IDS).toContain('saas_review');
|
|
333
|
+
expect(GENERATOR_IDS).not.toContain('product_review');
|
|
334
|
+
expect(GENERATORS.product_review.legacy).toBe(true);
|
|
335
|
+
expect(GENERATORS.product_review.inputSchema).toBe(GENERATORS.saas_review.inputSchema);
|
|
336
|
+
});
|
|
337
|
+
|
|
330
338
|
it('DURATIONS matches production', () => {
|
|
331
339
|
expect([...DURATIONS]).toEqual([5, 10, 15]);
|
|
332
340
|
});
|
package/src/generators.ts
CHANGED
|
@@ -10,8 +10,10 @@
|
|
|
10
10
|
|
|
11
11
|
import {
|
|
12
12
|
CreateVideoSchema,
|
|
13
|
+
LaptopUgcSchema,
|
|
13
14
|
ProductActingSchema,
|
|
14
15
|
ProductReviewSchema,
|
|
16
|
+
SaasReviewSchema,
|
|
15
17
|
ShowYourAppSchema,
|
|
16
18
|
SubtitleSchema,
|
|
17
19
|
} from './video.js';
|
|
@@ -22,10 +24,16 @@ export const GENERATORS = {
|
|
|
22
24
|
inputSchema: CreateVideoSchema,
|
|
23
25
|
output: 'video_url' as const,
|
|
24
26
|
},
|
|
27
|
+
saas_review: {
|
|
28
|
+
description: 'Generate a SaaS review video from a SaaS product URL',
|
|
29
|
+
inputSchema: SaasReviewSchema,
|
|
30
|
+
output: 'video_url' as const,
|
|
31
|
+
},
|
|
25
32
|
product_review: {
|
|
26
|
-
description: '
|
|
33
|
+
description: 'Legacy alias for SaaS Review video generation',
|
|
27
34
|
inputSchema: ProductReviewSchema,
|
|
28
35
|
output: 'video_url' as const,
|
|
36
|
+
legacy: true,
|
|
29
37
|
},
|
|
30
38
|
subtitle: {
|
|
31
39
|
description: 'Add styled subtitles to an existing video',
|
|
@@ -42,8 +50,15 @@ export const GENERATORS = {
|
|
|
42
50
|
inputSchema: ProductActingSchema,
|
|
43
51
|
output: 'video_url' as const,
|
|
44
52
|
},
|
|
53
|
+
laptop_ugc: {
|
|
54
|
+
description: 'Generate a 3-scene laptop-UGC ad: actor holds laptop showing your app, scrolling B-roll, then a face-only selfie close',
|
|
55
|
+
inputSchema: LaptopUgcSchema,
|
|
56
|
+
output: 'video_url' as const,
|
|
57
|
+
},
|
|
45
58
|
} as const;
|
|
46
59
|
|
|
47
60
|
export type GeneratorId = keyof typeof GENERATORS;
|
|
48
61
|
|
|
49
|
-
export const GENERATOR_IDS = Object.keys(GENERATORS)
|
|
62
|
+
export const GENERATOR_IDS = Object.keys(GENERATORS).filter(
|
|
63
|
+
(id) => !(GENERATORS[id as GeneratorId] as { legacy?: boolean }).legacy,
|
|
64
|
+
) as GeneratorId[];
|
package/src/video.ts
CHANGED
|
@@ -221,18 +221,54 @@ export const SubtitleSchema = z.object({
|
|
|
221
221
|
|
|
222
222
|
export type SubtitleInput = z.infer<typeof SubtitleSchema>;
|
|
223
223
|
|
|
224
|
-
export const
|
|
225
|
-
|
|
224
|
+
export const SaasReviewSchema = z.preprocess(flattenGroupedParams, z.object({
|
|
225
|
+
script: z.string().min(50).max(3000).optional(),
|
|
226
|
+
prompt: z.string().min(1).max(1000).optional(),
|
|
227
|
+
product_url: z.string().url().optional(),
|
|
226
228
|
angle: z.enum(REVIEW_ANGLES).optional(),
|
|
227
|
-
tone: z.enum(TONES).optional(),
|
|
228
229
|
actor_slug: z.string().min(1).max(100).optional(),
|
|
230
|
+
persona_slug: z.string().min(1).max(100).optional(),
|
|
231
|
+
face_photo_url: z.string().url().optional(),
|
|
232
|
+
voice: z.string().max(100).optional(),
|
|
229
233
|
target_duration: z.number().refine(
|
|
230
234
|
(v) => (DURATIONS as readonly number[]).includes(v),
|
|
231
235
|
{ message: 'target_duration must be 5, 10, or 15' },
|
|
232
236
|
).optional(),
|
|
233
|
-
|
|
237
|
+
style: z.string().max(50).optional(),
|
|
238
|
+
tone: z.enum(TONES).optional(),
|
|
239
|
+
voice_speed: z.number().min(0.7).max(1.5).optional(),
|
|
240
|
+
music: z.enum(MUSIC_GENRES).optional(),
|
|
241
|
+
cta: z.string().max(100).optional(),
|
|
242
|
+
aspect_ratio: z.enum(ASPECT_RATIOS).optional(),
|
|
243
|
+
template: z.string().max(50).optional(),
|
|
244
|
+
composition_mode: z.literal('pip').optional(),
|
|
245
|
+
pip_options: PipOptionsSchema.optional(),
|
|
246
|
+
allow_broll: z.boolean().optional(),
|
|
247
|
+
broll_model: z.enum(BROLL_MODELS).optional(),
|
|
248
|
+
broll_images: z.array(z.string().url()).max(10).optional(),
|
|
249
|
+
dub_language: z.string().max(10).optional(),
|
|
250
|
+
webhook_url: z.string().url().optional(),
|
|
251
|
+
scenes: z.array(
|
|
252
|
+
z.object({
|
|
253
|
+
type: z.enum(SCENE_TYPES).optional(),
|
|
254
|
+
}).passthrough(),
|
|
255
|
+
).max(30).optional(),
|
|
256
|
+
}).refine(
|
|
257
|
+
(data) => data.script !== undefined || data.prompt !== undefined || data.product_url !== undefined,
|
|
258
|
+
{ message: 'script, prompt, or product_url is required' },
|
|
259
|
+
));
|
|
234
260
|
|
|
235
|
-
export type
|
|
261
|
+
export type SaasReviewInput = z.infer<typeof SaasReviewSchema>;
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* @deprecated Use SaasReviewSchema. Kept for API/SDK compatibility.
|
|
265
|
+
*/
|
|
266
|
+
export const ProductReviewSchema = SaasReviewSchema;
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* @deprecated Use SaasReviewInput. Kept for API/SDK compatibility.
|
|
270
|
+
*/
|
|
271
|
+
export type ProductReviewInput = SaasReviewInput;
|
|
236
272
|
|
|
237
273
|
export const SHOW_YOUR_APP_WORDS_PER_SECOND = 3;
|
|
238
274
|
export const SHOW_YOUR_APP_DURATIONS = [5, 10, 15] as const;
|
|
@@ -262,6 +298,60 @@ export const ShowYourAppSchema = z.object({
|
|
|
262
298
|
|
|
263
299
|
export type ShowYourAppInput = z.infer<typeof ShowYourAppSchema>;
|
|
264
300
|
|
|
301
|
+
// ── Laptop UGC ──────────────────────────────────────────────────────────────
|
|
302
|
+
|
|
303
|
+
export const LAPTOP_UGC_WORDS_PER_SECOND = 3;
|
|
304
|
+
export const LAPTOP_UGC_DURATIONS = [15, 20] as const;
|
|
305
|
+
export const LAPTOP_UGC_MAX_RECORDING_BYTES = 10 * 1024 * 1024; // 10 MB
|
|
306
|
+
export const LAPTOP_UGC_MAX_RECORDING_SECONDS = 10;
|
|
307
|
+
export const LAPTOP_UGC_RECORDING_MIME_TYPES = ['video/mp4', 'video/quicktime'] as const;
|
|
308
|
+
export const LAPTOP_UGC_MAX_IMAGE_BYTES = 5 * 1024 * 1024; // 5 MB
|
|
309
|
+
export const LAPTOP_UGC_IMAGE_MIME_TYPES = ['image/png', 'image/jpeg', 'image/webp'] as const;
|
|
310
|
+
|
|
311
|
+
export const LaptopUgcSchema = z.object({
|
|
312
|
+
app_screen_recording_url: z.string().url().optional().describe('Public URL of a screen recording of your app (mp4 or mov). Max 10 MB, max 10 seconds. Provide this OR app_screen_image_url, not both.'),
|
|
313
|
+
app_screen_image_url: z.string().url().optional().describe('Public URL of a static screenshot of your app (png, jpeg, or webp). Max 5 MB. Provide this OR app_screen_recording_url, not both.'),
|
|
314
|
+
actor_slug: z.string().min(1).max(100).optional().describe('Actor slug from GET /v1/actors. Random actor if omitted.'),
|
|
315
|
+
script: z.string().min(5).max(3000).describe('Full voiceover script. Auto-split at sentence boundary into two halves for the two face shots.'),
|
|
316
|
+
duration: z.number().refine(
|
|
317
|
+
(v) => (LAPTOP_UGC_DURATIONS as readonly number[]).includes(v),
|
|
318
|
+
{ message: 'duration must be 15 or 20' },
|
|
319
|
+
).optional().default(20),
|
|
320
|
+
subtitle_style: z.enum(['hormozi', 'none']).optional().default('hormozi'),
|
|
321
|
+
webhook_url: z.string().url().optional(),
|
|
322
|
+
}).superRefine((val, ctx) => {
|
|
323
|
+
// Exactly one of recording / image must be provided
|
|
324
|
+
const hasRecording = !!val.app_screen_recording_url;
|
|
325
|
+
const hasImage = !!val.app_screen_image_url;
|
|
326
|
+
if (hasRecording && hasImage) {
|
|
327
|
+
ctx.addIssue({
|
|
328
|
+
code: z.ZodIssueCode.custom,
|
|
329
|
+
path: ['app_screen_recording_url'],
|
|
330
|
+
message: 'Provide app_screen_recording_url OR app_screen_image_url, not both',
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
if (!hasRecording && !hasImage) {
|
|
334
|
+
ctx.addIssue({
|
|
335
|
+
code: z.ZodIssueCode.custom,
|
|
336
|
+
path: ['app_screen_recording_url'],
|
|
337
|
+
message: 'Either app_screen_recording_url or app_screen_image_url is required',
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
// Word-count cap
|
|
341
|
+
const duration = val.duration ?? 20;
|
|
342
|
+
const maxWords = duration * LAPTOP_UGC_WORDS_PER_SECOND;
|
|
343
|
+
const wordCount = val.script.trim().split(/\s+/).filter(Boolean).length;
|
|
344
|
+
if (wordCount > maxWords) {
|
|
345
|
+
ctx.addIssue({
|
|
346
|
+
code: z.ZodIssueCode.custom,
|
|
347
|
+
path: ['script'],
|
|
348
|
+
message: `Script has ${wordCount} words; max ${maxWords} for ${duration}s at ${LAPTOP_UGC_WORDS_PER_SECOND} words/sec`,
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
});
|
|
352
|
+
|
|
353
|
+
export type LaptopUgcInput = z.infer<typeof LaptopUgcSchema>;
|
|
354
|
+
|
|
265
355
|
export const PRODUCT_ACTING_WORDS_PER_SECOND = 3;
|
|
266
356
|
export const PRODUCT_ACTING_DURATIONS = [5, 10, 15] as const;
|
|
267
357
|
export const PRODUCT_ACTING_TEMPLATES = [
|