@bluepic/embed 0.4.0-next.202 → 0.4.0-next.203

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.
@@ -1,4 +1,4 @@
1
- import type { Template } from '@bluepic/types';
1
+ import { type Template } from '@bluepic/types';
2
2
  import { imageFormats, videoFormats, type RenderRemoteOptions, type RenderRemoteVideoOptions } from '../export';
3
3
  import type { BatchRow } from './useBatchRows';
4
4
  export type BatchImageFormat = keyof typeof imageFormats;
@@ -30,21 +30,23 @@ export declare function renderSerialRemote(campaignId: number, templateId: strin
30
30
  * byte-identical for single-format templates.
31
31
  */
32
32
  canvasId?: string): Promise<Blob>;
33
+ /** @deprecated Video renders go through the bx-studio-api campaign route now; kept so hosts passing it keep compiling. */
33
34
  export type RenderRemoteVideoOptions = {
34
35
  remoteVideoRenderBaseUrl: string;
35
36
  };
36
- export declare function renderVideoRemote(serial: Template.Serial, data: {
37
+ /**
38
+ * Server-side video export via `POST {api}/api/public/render/campaign` with a
39
+ * video format. The API resolves the template's canvas/animation itself, picks
40
+ * the backend (elya first, the Cloudflare container fan-out as the fallback)
41
+ * and meters the credit once the render succeeds — so the client never charges
42
+ * a server-rendered video. The response is the render service's SSE
43
+ * (keyframe / encode_video progress, then `end{result}` with the hosted URL).
44
+ */
45
+ export declare function renderVideoRemote(campaignId: number, templateId: string, data: {
37
46
  [k: string]: unknown;
38
- }, width: number, height: number, format: z.infer<typeof Render.videoFormatSchema>, duration: number, videoOpts: {
39
- fps: number;
40
- vcodec: z.infer<typeof Render.vcodecSchema>;
41
- acodec: z.infer<typeof Render.acodecSchema>;
42
- pix_fmt: z.infer<typeof Render.pixFmtSchema>;
43
- audio: {
44
- itsoffset: number;
45
- src: string;
46
- }[];
47
- }, options: RenderRemoteVideoOptions, onProgress: (progress: Render.RenderProgressEvent) => void): Promise<{
47
+ }, format: z.infer<typeof Render.videoFormatSchema>, opts: RenderRemoteOptions, onProgress: (progress: Render.RenderProgressEvent) => void,
48
+ /** Multi-canvas: the selected canvas, omitted for single-format templates. */
49
+ canvasId?: string): Promise<{
48
50
  files: string[];
49
51
  creditsConsumed: number;
50
52
  }>;
@@ -61,7 +63,9 @@ svgLoadWaitDelay?: number): Promise<{
61
63
  }>;
62
64
  export declare function useTemplateExport(serial: Ref<Template.Serial | undefined>, data: Ref<{
63
65
  [k: string]: unknown;
64
- }>, exportOptions: Ref<z.infer<typeof Studio.campaignConfigSchema>['export']>, templateId: Ref<string | undefined>, name: Ref<string | undefined>, bxLiveTemplateComponentRef: Ref<InstanceType<typeof BxLiveTemplate> | undefined>, campaignId: Ref<number | undefined>, remoteOptions: RenderRemoteOptions, remoteVideoOptions: RenderRemoteVideoOptions, enforceServerSideRendering: Ref<boolean>, enforceVideoServerSideRendering: Ref<boolean>, timecode: Ref<number>, consumeCreditsOnRender: Ref<boolean>, watermark: Ref<boolean>, bridge: Ref<FieldsBridge>, preCacheLocalRendering: Ref<boolean>,
66
+ }>, exportOptions: Ref<z.infer<typeof Studio.campaignConfigSchema>['export']>, templateId: Ref<string | undefined>, name: Ref<string | undefined>, bxLiveTemplateComponentRef: Ref<InstanceType<typeof BxLiveTemplate> | undefined>, campaignId: Ref<number | undefined>, remoteOptions: RenderRemoteOptions,
67
+ /** @deprecated unused — video renders go through the API campaign route (see renderVideoRemote). */
68
+ _remoteVideoOptions: RenderRemoteVideoOptions, enforceServerSideRendering: Ref<boolean>, enforceVideoServerSideRendering: Ref<boolean>, timecode: Ref<number>, consumeCreditsOnRender: Ref<boolean>, watermark: Ref<boolean>, bridge: Ref<FieldsBridge>, preCacheLocalRendering: Ref<boolean>,
65
69
  /** Host-provided abstract analytics sink. When absent, all analytics calls are no-ops. */
66
70
  analytics: Ref<ExportAnalyticsSink | undefined>,
67
71
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluepic/embed",
3
- "version": "0.4.0-next.202",
3
+ "version": "0.4.0-next.203",
4
4
  "description": "Bluepic embed sdk",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -46,7 +46,7 @@
46
46
  },
47
47
  "devDependencies": {
48
48
  "@auth0/auth0-vue": "^2.4.0",
49
- "@bluepic/types": "^0.8.90",
49
+ "@bluepic/types": "^0.8.91",
50
50
  "@hono/zod-openapi": "^1.1.4",
51
51
  "@types/css": "^0.0.38",
52
52
  "@types/downloadjs": "^1.4.6",