@mevdragon/vidfarm-devcli 0.2.12 → 0.2.13

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 (199) hide show
  1. package/.env.example +37 -1
  2. package/README.md +27 -183
  3. package/SKILL.director.md +293 -0
  4. package/SKILL.platform.md +312 -0
  5. package/auto-create-hyperframe-templates/AUTO_CREATE_HYPERFRAME_TEMPLATES.md +275 -0
  6. package/auto-create-hyperframe-templates/extractor-system-prompt.md +128 -0
  7. package/auto-create-hyperframe-templates/input-manifest.schema.json +56 -0
  8. package/auto-create-hyperframe-templates/lambda-memory-estimator.md +118 -0
  9. package/auto-create-hyperframe-templates/production-graph.schema.json +314 -0
  10. package/auto-create-hyperframe-templates/runbook.md +198 -0
  11. package/auto-create-hyperframe-templates/scripts/create-hyperframe-template.mjs +368 -0
  12. package/auto-create-hyperframe-templates/template-plan.schema.json +311 -0
  13. package/auto-create-hyperframe-templates/template-planner-prompt.md +144 -0
  14. package/auto-create-templates/AUTO_CREATE_TEMPLATES.md +116 -0
  15. package/auto-create-templates/extractor-system-prompt.md +6 -1
  16. package/auto-create-templates/template-plan.schema.json +73 -2
  17. package/auto-create-templates/template-planner-prompt.md +62 -1
  18. package/dist/src/account-pages-legacy.js +361 -89
  19. package/dist/src/account-pages-legacy.js.map +1 -0
  20. package/dist/src/account-pages.js +13 -3
  21. package/dist/src/account-pages.js.map +1 -0
  22. package/dist/src/app.js +7060 -946
  23. package/dist/src/app.js.map +1 -0
  24. package/dist/src/cli.js +110 -29
  25. package/dist/src/cli.js.map +1 -0
  26. package/dist/src/composition-runtime.js +581 -0
  27. package/dist/src/composition-runtime.js.map +1 -0
  28. package/dist/src/config.js +69 -11
  29. package/dist/src/config.js.map +1 -0
  30. package/dist/src/context.js +280 -21
  31. package/dist/src/context.js.map +1 -0
  32. package/dist/src/dev-app-legacy.js +18 -17
  33. package/dist/src/dev-app-legacy.js.map +1 -0
  34. package/dist/src/dev-app.js +1 -0
  35. package/dist/src/dev-app.js.map +1 -0
  36. package/dist/src/domain.js +2 -1
  37. package/dist/src/domain.js.map +1 -0
  38. package/dist/src/editor-chat-history.js +10 -0
  39. package/dist/src/editor-chat-history.js.map +1 -0
  40. package/dist/src/editor-chat.js +133 -24
  41. package/dist/src/editor-chat.js.map +1 -0
  42. package/dist/src/frontend/flockposter-cache-store.js +10 -2
  43. package/dist/src/frontend/flockposter-cache-store.js.map +1 -0
  44. package/dist/src/frontend/homepage-client.js +6 -3
  45. package/dist/src/frontend/homepage-client.js.map +1 -0
  46. package/dist/src/frontend/homepage-shared.js +1 -0
  47. package/dist/src/frontend/homepage-shared.js.map +1 -0
  48. package/dist/src/frontend/homepage-store.js +1 -0
  49. package/dist/src/frontend/homepage-store.js.map +1 -0
  50. package/dist/src/frontend/homepage-view.js +131 -18
  51. package/dist/src/frontend/homepage-view.js.map +1 -0
  52. package/dist/src/frontend/page-runtime-client.js +5 -2
  53. package/dist/src/frontend/page-runtime-client.js.map +1 -0
  54. package/dist/src/frontend/page-runtime-store.js +1 -0
  55. package/dist/src/frontend/page-runtime-store.js.map +1 -0
  56. package/dist/src/frontend/sentry.js +42 -0
  57. package/dist/src/frontend/sentry.js.map +1 -0
  58. package/dist/src/frontend/template-editor-chat.js +1719 -213
  59. package/dist/src/frontend/template-editor-chat.js.map +1 -0
  60. package/dist/src/help-page.js +333 -0
  61. package/dist/src/help-page.js.map +1 -0
  62. package/dist/src/homepage.js +169 -47
  63. package/dist/src/homepage.js.map +1 -0
  64. package/dist/src/hyperframes/composition.js +180 -0
  65. package/dist/src/hyperframes/composition.js.map +1 -0
  66. package/dist/src/index.js +1 -0
  67. package/dist/src/index.js.map +1 -0
  68. package/dist/src/instrument.js +30 -0
  69. package/dist/src/instrument.js.map +1 -0
  70. package/dist/src/lib/crypto.js +1 -0
  71. package/dist/src/lib/crypto.js.map +1 -0
  72. package/dist/src/lib/dev-log.js +54 -0
  73. package/dist/src/lib/dev-log.js.map +1 -0
  74. package/dist/src/lib/display-name.js +11 -0
  75. package/dist/src/lib/display-name.js.map +1 -0
  76. package/dist/src/lib/ids.js +21 -1
  77. package/dist/src/lib/ids.js.map +1 -0
  78. package/dist/src/lib/images.js +1 -0
  79. package/dist/src/lib/images.js.map +1 -0
  80. package/dist/src/lib/json.js +1 -0
  81. package/dist/src/lib/json.js.map +1 -0
  82. package/dist/src/lib/template-dna.js +1 -0
  83. package/dist/src/lib/template-dna.js.map +1 -0
  84. package/dist/src/lib/template-paths.js +1 -0
  85. package/dist/src/lib/template-paths.js.map +1 -0
  86. package/dist/src/lib/template-style-options.js +29 -3
  87. package/dist/src/lib/template-style-options.js.map +1 -0
  88. package/dist/src/lib/time.js +1 -0
  89. package/dist/src/lib/time.js.map +1 -0
  90. package/dist/src/lib/video-quality-harness.js +60 -0
  91. package/dist/src/lib/video-quality-harness.js.map +1 -0
  92. package/dist/src/page-runtime.js +1 -0
  93. package/dist/src/page-runtime.js.map +1 -0
  94. package/dist/src/page-shell.js +1501 -49
  95. package/dist/src/page-shell.js.map +1 -0
  96. package/dist/src/primitive-context.js +144 -8
  97. package/dist/src/primitive-context.js.map +1 -0
  98. package/dist/src/primitive-registry.js +1919 -78
  99. package/dist/src/primitive-registry.js.map +1 -0
  100. package/dist/src/primitive-sdk.js +1 -0
  101. package/dist/src/primitive-sdk.js.map +1 -0
  102. package/dist/src/primitives/remotion/html-image.js +3 -1
  103. package/dist/src/primitives/remotion/html-image.js.map +1 -0
  104. package/dist/src/primitives/remotion/media-slideshow.js +60 -0
  105. package/dist/src/primitives/remotion/media-slideshow.js.map +1 -0
  106. package/dist/src/react-page-shell.js +1 -0
  107. package/dist/src/react-page-shell.js.map +1 -0
  108. package/dist/src/ready-post-schedule-component.js +1 -0
  109. package/dist/src/ready-post-schedule-component.js.map +1 -0
  110. package/dist/src/registry.js +237 -24
  111. package/dist/src/registry.js.map +1 -0
  112. package/dist/src/runtime.js +3 -0
  113. package/dist/src/runtime.js.map +1 -0
  114. package/dist/src/services/api-call-history.js +4 -0
  115. package/dist/src/services/api-call-history.js.map +1 -0
  116. package/dist/src/services/auth.js +40 -50
  117. package/dist/src/services/auth.js.map +1 -0
  118. package/dist/src/services/billing.js +20 -44
  119. package/dist/src/services/billing.js.map +1 -0
  120. package/dist/src/services/chat-threads.js +10 -6
  121. package/dist/src/services/chat-threads.js.map +1 -0
  122. package/dist/src/services/fork-access.js +94 -0
  123. package/dist/src/services/fork-access.js.map +1 -0
  124. package/dist/src/services/ghostcut.js +132 -0
  125. package/dist/src/services/ghostcut.js.map +1 -0
  126. package/dist/src/services/hyperframes.js +1014 -0
  127. package/dist/src/services/hyperframes.js.map +1 -0
  128. package/dist/src/services/job-capacity.js +14 -0
  129. package/dist/src/services/job-capacity.js.map +1 -0
  130. package/dist/src/services/job-logs.js +4 -0
  131. package/dist/src/services/job-logs.js.map +1 -0
  132. package/dist/src/services/jobs.js +99 -91
  133. package/dist/src/services/jobs.js.map +1 -0
  134. package/dist/src/services/media-processing.js +743 -0
  135. package/dist/src/services/media-processing.js.map +1 -0
  136. package/dist/src/services/primitive-media-lambda.js +280 -0
  137. package/dist/src/services/primitive-media-lambda.js.map +1 -0
  138. package/dist/src/services/providers.js +1560 -178
  139. package/dist/src/services/providers.js.map +1 -0
  140. package/dist/src/services/rate-limits.js +3 -2
  141. package/dist/src/services/rate-limits.js.map +1 -0
  142. package/dist/src/services/remotion.js +495 -92
  143. package/dist/src/services/remotion.js.map +1 -0
  144. package/dist/src/services/serverless-auth.js +374 -0
  145. package/dist/src/services/serverless-auth.js.map +1 -0
  146. package/dist/src/services/serverless-jobs.js +1074 -0
  147. package/dist/src/services/serverless-jobs.js.map +1 -0
  148. package/dist/src/services/serverless-provider-keys.js +401 -0
  149. package/dist/src/services/serverless-provider-keys.js.map +1 -0
  150. package/dist/src/services/serverless-records.js +1086 -0
  151. package/dist/src/services/serverless-records.js.map +1 -0
  152. package/dist/src/services/serverless-template-configs.js +67 -0
  153. package/dist/src/services/serverless-template-configs.js.map +1 -0
  154. package/dist/src/services/storage.js +170 -35
  155. package/dist/src/services/storage.js.map +1 -0
  156. package/dist/src/services/template-certification.js +295 -3
  157. package/dist/src/services/template-certification.js.map +1 -0
  158. package/dist/src/services/template-loader.js +45 -1
  159. package/dist/src/services/template-loader.js.map +1 -0
  160. package/dist/src/services/template-runtime-bundles.js +217 -0
  161. package/dist/src/services/template-runtime-bundles.js.map +1 -0
  162. package/dist/src/services/template-sources.js +452 -87
  163. package/dist/src/services/template-sources.js.map +1 -0
  164. package/dist/src/services/video-normalization.js +2 -0
  165. package/dist/src/services/video-normalization.js.map +1 -0
  166. package/dist/src/services/webhooks.js +7 -6
  167. package/dist/src/services/webhooks.js.map +1 -0
  168. package/dist/src/template-editor-pages.js +5637 -1322
  169. package/dist/src/template-editor-pages.js.map +1 -0
  170. package/dist/src/template-editor-shell.js +1376 -170
  171. package/dist/src/template-editor-shell.js.map +1 -0
  172. package/dist/src/template-sdk.js +1 -0
  173. package/dist/src/template-sdk.js.map +1 -0
  174. package/dist/src/worker.js +11 -226
  175. package/dist/src/worker.js.map +1 -0
  176. package/package.json +47 -12
  177. package/public/assets/homepage-client-app.js +34 -8
  178. package/public/assets/page-runtime-client-app.js +44 -18
  179. package/readme.secret.md +89 -0
  180. package/templates/vidfarm_template_0000/README.md +106 -0
  181. package/templates/vidfarm_template_0000/SKILL.md +266 -0
  182. package/templates/vidfarm_template_0000/assets/Abel-Regular.ttf +0 -0
  183. package/templates/vidfarm_template_0000/assets/DMSerifDisplay-Regular.ttf +0 -0
  184. package/templates/vidfarm_template_0000/assets/Montserrat[wght].ttf +0 -0
  185. package/templates/vidfarm_template_0000/assets/SourceCodePro[wght].ttf +0 -0
  186. package/templates/vidfarm_template_0000/assets/TikTokSans-SemiBold.ttf +0 -0
  187. package/templates/vidfarm_template_0000/assets/Yesteryear-Regular.ttf +0 -0
  188. package/templates/vidfarm_template_0000/composition.json +11 -0
  189. package/templates/vidfarm_template_0000/src/lib/images.js +221 -0
  190. package/templates/vidfarm_template_0000/src/remotion/Root.js +33 -0
  191. package/templates/vidfarm_template_0000/src/remotion/index.js +3 -0
  192. package/templates/vidfarm_template_0000/src/sdk.js +3 -0
  193. package/templates/vidfarm_template_0000/src/style-options.js +200 -0
  194. package/templates/vidfarm_template_0000/src/template-dna.js +9 -0
  195. package/templates/vidfarm_template_0000/src/template.js +1566 -0
  196. package/templates/vidfarm_template_0000/template.config.json +21 -0
  197. package/GETTING_STARTED.developers.md +0 -87
  198. package/SKILL.developer.md +0 -1186
  199. package/dist/src/db.js +0 -2007
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitive-registry.js","sourceRoot":"","sources":["../../src/primitive-registry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export function definePrimitive(definition) {
2
2
  return definition;
3
3
  }
4
+ //# sourceMappingURL=primitive-sdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitive-sdk.js","sourceRoot":"","sources":["../../src/primitive-sdk.ts"],"names":[],"mappings":"AA+JA,MAAM,UAAU,eAAe,CAAC,UAA+B;IAC7D,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { AbsoluteFill, Composition } from "remotion";
2
+ import { AbsoluteFill, Composition, registerRoot } from "remotion";
3
3
  const defaultProps = {
4
4
  width: 1080,
5
5
  height: 1920,
@@ -25,4 +25,6 @@ export const PrimitiveHtmlImageRoot = () => {
25
25
  fps: 30
26
26
  }) }));
27
27
  };
28
+ registerRoot(PrimitiveHtmlImageRoot);
28
29
  export default PrimitiveHtmlImageRoot;
30
+ //# sourceMappingURL=html-image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-image.js","sourceRoot":"","sources":["../../../../src/primitives/remotion/html-image.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAUnE,MAAM,YAAY,GAAmB;IACnC,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,wCAAwC;IAC9C,GAAG,EAAE,EAAE;IACP,eAAe,EAAE,SAAS;CAC3B,CAAC;AAEF,MAAM,oBAAoB,GAA6B,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,EAAE,EAAE,eAAe,GAAG,SAAS,EAAE,EAAE,EAAE;IACzG,OAAO,CACL,MAAC,YAAY,IACX,KAAK,EAAE;YACL,eAAe;YACf,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,mBAAmB;SAChC,aAEA,GAAG,CAAC,CAAC,CAAC,gBAAO,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAI,CAAC,CAAC,CAAC,IAAI,EACjE,cACE,KAAK,EAAE;oBACL,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,MAAM;iBACf,EACD,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GACzC,IACW,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAa,GAAG,EAAE;IACnD,OAAO,CACL,KAAC,WAAW,IACV,EAAE,EAAC,sBAAsB,EACzB,SAAS,EAAE,oBAAoB,EAC/B,KAAK,EAAE,IAAI,EACX,MAAM,EAAE,IAAI,EACZ,GAAG,EAAE,EAAE,EACP,gBAAgB,EAAE,CAAC,EACnB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACjC,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACpF,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACvF,gBAAgB,EAAE,CAAC;YACnB,GAAG,EAAE,EAAE;SACR,CAAC,GACF,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAErC,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { AbsoluteFill, Composition, Img, Sequence, Video } from "remotion";
3
+ const FPS = 30;
4
+ const DEFAULT_SLIDE = {
5
+ mediaUrl: "https://placehold.co/1080x1920/png?text=Vidfarm",
6
+ mediaType: "image",
7
+ durationMs: 3000,
8
+ fit: "cover"
9
+ };
10
+ const defaultProps = {
11
+ slides: [DEFAULT_SLIDE],
12
+ width: 1080,
13
+ height: 1920,
14
+ backgroundColor: "#000000",
15
+ defaultFit: "cover"
16
+ };
17
+ const MediaSlideshowComposition = ({ slides, backgroundColor = "#000000", defaultFit = "cover" }) => {
18
+ const normalizedSlides = slides.length ? slides : [DEFAULT_SLIDE];
19
+ let cursor = 0;
20
+ return (_jsx(AbsoluteFill, { style: { backgroundColor, overflow: "hidden" }, children: normalizedSlides.map((slide, index) => {
21
+ const durationInFrames = msToFrames(slide.durationMs);
22
+ const from = cursor;
23
+ cursor += durationInFrames;
24
+ const fit = slide.fit ?? defaultFit;
25
+ return (_jsx(Sequence, { from: from, durationInFrames: durationInFrames, children: _jsx(AbsoluteFill, { style: { backgroundColor: slide.backgroundColor ?? backgroundColor }, children: resolveMediaType(slide) === "video" ? (_jsx(Video, { src: slide.mediaUrl, muted: true, loop: true, style: mediaStyle(fit) })) : (_jsx(Img, { src: slide.mediaUrl, style: mediaStyle(fit) })) }) }, `${slide.mediaUrl}-${index}`));
26
+ }) }));
27
+ };
28
+ export const PrimitiveMediaSlideshowRoot = () => {
29
+ return (_jsx(Composition, { id: "primitive-media-slideshow", component: MediaSlideshowComposition, width: 1080, height: 1920, fps: FPS, durationInFrames: msToFrames(DEFAULT_SLIDE.durationMs), defaultProps: defaultProps, calculateMetadata: ({ props }) => {
30
+ const slides = props.slides?.length ? props.slides : [DEFAULT_SLIDE];
31
+ const width = typeof props.width === "number" ? clampInt(props.width, 16, 4096) : 1080;
32
+ const height = typeof props.height === "number" ? clampInt(props.height, 16, 4096) : 1920;
33
+ return {
34
+ width,
35
+ height,
36
+ fps: FPS,
37
+ durationInFrames: slides.reduce((total, slide) => total + msToFrames(slide.durationMs), 0)
38
+ };
39
+ } }));
40
+ };
41
+ export default PrimitiveMediaSlideshowRoot;
42
+ function resolveMediaType(slide) {
43
+ if (slide.mediaType)
44
+ return slide.mediaType;
45
+ return /\.(mp4|mov|webm|m4v)(\?|#|$)/i.test(slide.mediaUrl) ? "video" : "image";
46
+ }
47
+ function mediaStyle(fit) {
48
+ return {
49
+ width: "100%",
50
+ height: "100%",
51
+ objectFit: fit
52
+ };
53
+ }
54
+ function msToFrames(durationMs) {
55
+ return Math.max(1, Math.round((durationMs / 1000) * FPS));
56
+ }
57
+ function clampInt(value, min, max) {
58
+ return Math.min(max, Math.max(min, Math.round(value)));
59
+ }
60
+ //# sourceMappingURL=media-slideshow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media-slideshow.js","sourceRoot":"","sources":["../../../../src/primitives/remotion/media-slideshow.tsx"],"names":[],"mappings":"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"}
@@ -32,3 +32,4 @@ export function renderLegacyPageAsReact(documentHtml, runtimeBoot) {
32
32
  runtimeBoot
33
33
  });
34
34
  }
35
+ //# sourceMappingURL=react-page-shell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-page-shell.js","sourceRoot":"","sources":["../../src/react-page-shell.tsx"],"names":[],"mappings":"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"}
@@ -1512,3 +1512,4 @@ void hydrateScheduleChannelsOnPageLoad();
1512
1512
  })();
1513
1513
  </script>`;
1514
1514
  }
1515
+ //# sourceMappingURL=ready-post-schedule-component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ready-post-schedule-component.js","sourceRoot":"","sources":["../../src/ready-post-schedule-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAYpD,MAAM,UAAU,6BAA6B;IAC3C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAylBR,CAAC;AACF,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6DK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAA2B;IACrE,OAAO,iEAAiE,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAu0BG,CAAC;AACb,CAAC"}
@@ -1,9 +1,15 @@
1
1
  import { existsSync, readdirSync } from "node:fs";
2
2
  import path from "node:path";
3
- import { database } from "./db.js";
3
+ import { z } from "zod";
4
+ import { config } from "./config.js";
5
+ import { devLog } from "./lib/dev-log.js";
4
6
  import { loadTemplateFromModule } from "./services/template-loader.js";
7
+ import { loadTemplateFromRuntimeRelease } from "./services/template-runtime-bundles.js";
8
+ import { serverlessRecords } from "./services/serverless-records.js";
5
9
  class TemplateRegistry {
6
10
  localTemplates = new Map();
11
+ releaseTemplates = new Map();
12
+ activeReleases = new Map();
7
13
  runtimeTemplates = new Map();
8
14
  initialized = false;
9
15
  initPromise = null;
@@ -15,32 +21,29 @@ class TemplateRegistry {
15
21
  return this.initPromise;
16
22
  }
17
23
  this.initPromise = (async () => {
18
- await this.loadLocalTemplates();
19
- const visibleReleaseByTemplateId = new Map();
20
- for (const release of database.listTemplateReleases()) {
21
- if (release.status !== "approved" && release.status !== "active") {
22
- continue;
23
- }
24
- const current = visibleReleaseByTemplateId.get(release.templateId);
25
- if (!current || getReleaseTimestamp(release) > getReleaseTimestamp(current)) {
26
- visibleReleaseByTemplateId.set(release.templateId, release);
27
- }
28
- }
29
- for (const release of visibleReleaseByTemplateId.values()) {
30
- const template = await loadTemplateFromModule(release.modulePath);
31
- const runtimeTemplate = {
32
- ...template,
33
- skillPath: release.skillPath
34
- };
35
- this.runtimeTemplates.set(release.templateId, runtimeTemplate);
24
+ await this.loadActiveReleaseSnapshots();
25
+ if (shouldLoadLocalTemplates()) {
26
+ await this.loadLocalTemplates();
27
+ devLog("template_registry.local_loaded", {
28
+ count: this.localTemplates.size,
29
+ template_ids: [...this.localTemplates.keys()]
30
+ });
36
31
  }
37
32
  this.initialized = true;
38
33
  this.initPromise = null;
34
+ devLog("template_registry.initialized", {
35
+ local_count: this.localTemplates.size,
36
+ release_count: this.releaseTemplates.size,
37
+ runtime_count: this.runtimeTemplates.size
38
+ });
39
39
  })();
40
40
  return this.initPromise;
41
41
  }
42
42
  list() {
43
43
  const merged = new Map();
44
+ for (const template of this.releaseTemplates.values()) {
45
+ merged.set(template.id, template);
46
+ }
44
47
  for (const template of this.localTemplates.values()) {
45
48
  merged.set(template.id, template);
46
49
  }
@@ -50,24 +53,227 @@ class TemplateRegistry {
50
53
  return [...merged.values()].sort((a, b) => a.id.localeCompare(b.id));
51
54
  }
52
55
  get(templateId) {
53
- return this.findTemplate(templateId, this.runtimeTemplates) ?? this.findTemplate(templateId, this.localTemplates);
56
+ return this.findTemplate(templateId, this.runtimeTemplates)
57
+ ?? this.findTemplate(templateId, this.localTemplates)
58
+ ?? this.findTemplate(templateId, this.releaseTemplates);
59
+ }
60
+ async listMetadata() {
61
+ try {
62
+ const releases = await serverlessRecords.listActiveTemplateReleases?.() ?? [];
63
+ for (const release of releases) {
64
+ this.cacheReleaseSnapshot(release);
65
+ }
66
+ const releaseTemplates = releases
67
+ .filter((release) => release.templateSnapshot)
68
+ .map((release) => templateFromSnapshot(release.templateSnapshot, release));
69
+ return await this.mergeLocalMetadata(releaseTemplates);
70
+ }
71
+ catch (error) {
72
+ devLog("template_registry.metadata.list_failed", {
73
+ message: error instanceof Error ? error.message : String(error)
74
+ }, "warn");
75
+ await this.ensureInitialized();
76
+ return this.list();
77
+ }
78
+ }
79
+ async listMetadataPage(input = {}) {
80
+ try {
81
+ const page = await serverlessRecords.listActiveTemplateReleasePage?.(input);
82
+ if (!page) {
83
+ return { templates: await this.listMetadata(), nextCursor: null };
84
+ }
85
+ for (const release of page.items) {
86
+ this.cacheReleaseSnapshot(release);
87
+ }
88
+ const releaseTemplates = page.items
89
+ .filter((release) => release.templateSnapshot)
90
+ .map((release) => templateFromSnapshot(release.templateSnapshot, release));
91
+ return {
92
+ templates: await this.mergeLocalMetadata(releaseTemplates),
93
+ nextCursor: page.nextCursor
94
+ };
95
+ }
96
+ catch (error) {
97
+ devLog("template_registry.metadata.page_failed", {
98
+ message: error instanceof Error ? error.message : String(error)
99
+ }, "warn");
100
+ return { templates: await this.listMetadata(), nextCursor: null };
101
+ }
102
+ }
103
+ async getMetadata(templateId) {
104
+ const cached = this.get(templateId);
105
+ if (cached) {
106
+ return cached;
107
+ }
108
+ try {
109
+ const release = await serverlessRecords.getActiveTemplateReleaseByTemplateId?.(templateId);
110
+ if (release?.templateSnapshot) {
111
+ return this.cacheReleaseSnapshot(release);
112
+ }
113
+ }
114
+ catch (error) {
115
+ devLog("template_registry.metadata.get_failed", {
116
+ template_id: templateId,
117
+ message: error instanceof Error ? error.message : String(error)
118
+ }, "warn");
119
+ }
120
+ await this.ensureInitialized();
121
+ return this.get(templateId);
122
+ }
123
+ async getExecutable(templateId) {
124
+ const runtime = this.findTemplate(templateId, this.runtimeTemplates) ?? this.findTemplate(templateId, this.localTemplates);
125
+ if (runtime) {
126
+ return runtime;
127
+ }
128
+ let releaseTemplate = this.findTemplate(templateId, this.releaseTemplates);
129
+ let release = releaseTemplate ? this.activeReleases.get(releaseTemplate.id) : null;
130
+ if (!release) {
131
+ try {
132
+ const activeRelease = await serverlessRecords.getActiveTemplateReleaseByTemplateId?.(templateId);
133
+ if (activeRelease?.templateSnapshot) {
134
+ releaseTemplate = this.cacheReleaseSnapshot(activeRelease);
135
+ release = activeRelease;
136
+ }
137
+ }
138
+ catch (error) {
139
+ devLog("template_registry.executable.active_release_lookup_failed", {
140
+ template_id: templateId,
141
+ message: error instanceof Error ? error.message : String(error)
142
+ }, "warn");
143
+ }
144
+ }
145
+ if (!release) {
146
+ await this.ensureInitialized();
147
+ const initializedRuntime = this.findTemplate(templateId, this.runtimeTemplates) ?? this.findTemplate(templateId, this.localTemplates);
148
+ if (initializedRuntime) {
149
+ return initializedRuntime;
150
+ }
151
+ releaseTemplate = this.findTemplate(templateId, this.releaseTemplates);
152
+ release = releaseTemplate ? this.activeReleases.get(releaseTemplate.id) : null;
153
+ }
154
+ if (!release) {
155
+ return null;
156
+ }
157
+ const template = await loadTemplateFromRuntimeRelease(release);
158
+ this.runtimeTemplates.set(template.id, template);
159
+ return template;
54
160
  }
55
161
  registerRuntimeTemplate(template) {
56
162
  this.runtimeTemplates.set(template.id, template);
57
163
  }
164
+ cacheReleaseSnapshot(release) {
165
+ if (!release.templateSnapshot) {
166
+ return null;
167
+ }
168
+ const template = templateFromSnapshot(release.templateSnapshot, release);
169
+ this.releaseTemplates.set(template.id, template);
170
+ this.activeReleases.set(template.id, release);
171
+ return template;
172
+ }
58
173
  async loadLocalTemplates() {
59
174
  this.localTemplates.clear();
60
175
  for (const modulePath of discoverLocalTemplateModulePaths(process.cwd())) {
61
176
  const template = await loadTemplateFromModule(modulePath);
62
177
  this.localTemplates.set(template.id, template);
178
+ devLog("template_registry.local_template.loaded", {
179
+ template_id: template.id,
180
+ slug_id: template.slugId,
181
+ module_path: modulePath
182
+ });
183
+ }
184
+ }
185
+ async loadActiveReleaseSnapshots() {
186
+ this.releaseTemplates.clear();
187
+ this.activeReleases.clear();
188
+ let releases = [];
189
+ try {
190
+ releases = await serverlessRecords.listActiveTemplateReleases?.() ?? [];
191
+ }
192
+ catch (error) {
193
+ devLog("template_registry.active_releases.load_failed", {
194
+ message: error instanceof Error ? error.message : String(error)
195
+ }, "warn");
196
+ return;
197
+ }
198
+ for (const release of releases) {
199
+ if (!release.templateSnapshot) {
200
+ continue;
201
+ }
202
+ this.cacheReleaseSnapshot(release);
203
+ }
204
+ devLog("template_registry.active_releases.loaded", {
205
+ count: this.releaseTemplates.size,
206
+ template_ids: [...this.releaseTemplates.keys()]
207
+ });
208
+ }
209
+ async mergeLocalMetadata(templates) {
210
+ if (shouldLoadLocalTemplates()) {
211
+ await this.ensureInitialized();
212
+ }
213
+ const merged = new Map();
214
+ for (const template of templates) {
215
+ merged.set(template.id, template);
63
216
  }
217
+ for (const template of this.localTemplates.values()) {
218
+ merged.set(template.id, template);
219
+ }
220
+ for (const template of this.runtimeTemplates.values()) {
221
+ merged.set(template.id, template);
222
+ }
223
+ return [...merged.values()].sort((a, b) => a.id.localeCompare(b.id));
64
224
  }
65
225
  findTemplate(templateKey, source) {
66
226
  return source.get(templateKey) ?? [...source.values()].find((template) => template.slugId === templateKey) ?? null;
67
227
  }
68
228
  }
69
- function getReleaseTimestamp(release) {
70
- return Date.parse(release.activatedAt ?? release.updatedAt ?? release.createdAt);
229
+ function templateFromSnapshot(snapshot, release) {
230
+ const snapshotAbout = snapshot.about;
231
+ const operations = Object.fromEntries(snapshot.operations.map((operation) => [
232
+ operation.name,
233
+ {
234
+ description: operation.description,
235
+ inputSchema: z.record(z.string(), z.unknown()),
236
+ workflow: operation.workflow,
237
+ providerHint: operation.providerHint ?? undefined,
238
+ webhookSupport: operation.webhookSupport ?? undefined
239
+ }
240
+ ]));
241
+ return {
242
+ id: snapshot.id,
243
+ slugId: snapshot.slugId,
244
+ version: snapshot.version,
245
+ about: {
246
+ ...snapshot.about,
247
+ links_to_inspiration: normalizeTemplateInspirationLinks(snapshotAbout.links_to_inspiration, snapshot.about.link_to_original),
248
+ sound: normalizeTemplateSound(snapshotAbout.sound)
249
+ },
250
+ examples: snapshot.examples,
251
+ skillPath: release.skillPath,
252
+ configSchema: z.record(z.string(), z.unknown()),
253
+ operations,
254
+ jobs: {}
255
+ };
256
+ }
257
+ function normalizeTemplateInspirationLinks(value, linkToOriginal) {
258
+ if (Array.isArray(value)) {
259
+ return value.filter((entry) => typeof entry === "string");
260
+ }
261
+ return linkToOriginal ? [linkToOriginal] : [];
262
+ }
263
+ function normalizeTemplateSound(value) {
264
+ return {
265
+ sound_title: typeof value?.sound_title === "string" ? value.sound_title : "",
266
+ sound_url: typeof value?.sound_url === "string" ? value.sound_url : ""
267
+ };
268
+ }
269
+ function shouldLoadLocalTemplates() {
270
+ if (config.VIDFARM_LOAD_LOCAL_TEMPLATES === "true") {
271
+ return true;
272
+ }
273
+ if (config.VIDFARM_LOAD_LOCAL_TEMPLATES === "false") {
274
+ return false;
275
+ }
276
+ return !config.isProduction;
71
277
  }
72
278
  function discoverLocalTemplateModulePaths(rootDir) {
73
279
  const templatesDir = path.resolve(rootDir, "templates");
@@ -76,8 +282,15 @@ function discoverLocalTemplateModulePaths(rootDir) {
76
282
  }
77
283
  return readdirSync(templatesDir, { withFileTypes: true })
78
284
  .filter((entry) => entry.isDirectory() && entry.name.startsWith("vidfarm_template_"))
79
- .map((entry) => path.join(templatesDir, entry.name, "src", "template.ts"))
80
- .filter((modulePath) => existsSync(modulePath))
285
+ .filter((entry) => (entry.name !== "vidfarm_template_0000"
286
+ || process.env.NODE_ENV !== "production"
287
+ || process.env.VIDFARM_DEPLOYMENT_TARGET === "serverless-staging"))
288
+ .map((entry) => [
289
+ path.join(templatesDir, entry.name, "src", "template.js"),
290
+ path.join(templatesDir, entry.name, "src", "template.ts")
291
+ ].find((modulePath) => existsSync(modulePath)))
292
+ .filter((modulePath) => Boolean(modulePath))
81
293
  .sort((a, b) => a.localeCompare(b));
82
294
  }
83
295
  export const templateRegistry = new TemplateRegistry();
296
+ //# sourceMappingURL=registry.js.map