@bluepic/embed 0.4.0-next.134 → 0.4.0-next.136

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.
@@ -22,7 +22,15 @@ export type RenderRemoteOptions = {
22
22
  };
23
23
  export declare function renderSerialRemote(campaignId: number, templateId: string, data: {
24
24
  [k: string]: unknown;
25
- }, width: number, height: number, framesX: number, framesY: number, format: keyof typeof imageFormats, opts: RenderRemoteOptions): Promise<Blob>;
25
+ }, width: number, height: number, framesX: number, framesY: number, format: keyof typeof imageFormats, opts: RenderRemoteOptions,
26
+ /**
27
+ * Multi-canvas templates (canvases v2): the canvas to render. The server
28
+ * refetches the persisted serial (root = Default canvas) by templateId, so
29
+ * without this it would render the Default format regardless of what the
30
+ * user selected. OMITTED (not sent at all) when unset — the request stays
31
+ * byte-identical for single-format templates.
32
+ */
33
+ canvasId?: string): Promise<Blob>;
26
34
  export type RenderRemoteVideoOptions = {
27
35
  remoteVideoRenderBaseUrl: string;
28
36
  };
@@ -43,7 +51,9 @@ export declare function renderVideoRemote(serial: Template.Serial, data: {
43
51
  }>;
44
52
  export declare function renderSerialAsImages(bxLiveTemplateComponent: InstanceType<typeof BxLiveTemplate>, serial: Template.Serial, data: {
45
53
  [k: string]: unknown;
46
- }, format: keyof typeof imageFormats, campaignId: number, templateId: string, remoteOptions: RenderRemoteOptions, enforceServerSideRendering: boolean, watermark: boolean, sessionState: string): Promise<{
54
+ }, format: keyof typeof imageFormats, campaignId: number, templateId: string, remoteOptions: RenderRemoteOptions, enforceServerSideRendering: boolean, watermark: boolean, sessionState: string,
55
+ /** Multi-canvas: the selected canvas — remote render only; the LOCAL path already renders the materialized `serial`. */
56
+ canvasId?: string): Promise<{
47
57
  files: Blob[];
48
58
  renderLocation: RenderLocation;
49
59
  clientRenderFailed: boolean;
@@ -58,7 +68,15 @@ analytics: Ref<ExportAnalyticsSink | undefined>,
58
68
  * already resolved by the caller. When undefined, we fall back to the
59
69
  * template's serial caption (today's behavior).
60
70
  */
61
- campaignCaption?: Ref<string | undefined>): {
71
+ campaignCaption?: Ref<string | undefined>,
72
+ /**
73
+ * Multi-canvas templates (canvases v2): the id of the canvas the editor is
74
+ * showing. `serial` is already the MATERIALIZED serial for it (local renders
75
+ * need nothing extra); this only rides on the remote render request so the
76
+ * server materializes the same canvas from the serial it refetches.
77
+ * Undefined (the default) = single-format / Default canvas = today's payload.
78
+ */
79
+ canvasId?: Ref<string | undefined>): {
62
80
  triggerExport: () => Promise<void>;
63
81
  preCacheLocalRender: () => Promise<void>;
64
82
  rendering: Ref<boolean, boolean>;
@@ -1,5 +1,12 @@
1
1
  import { Studio } from '@bluepic/types';
2
2
  import { z } from '@hono/zod-openapi';
3
+ /**
4
+ * A multi-canvas template (canvases v2) is ATOMIC in the gallery: its canvases
5
+ * ARE its format variants, so it never merges with same-named templates — and
6
+ * two multi-canvas templates sharing a name stay two cards. Single-format
7
+ * templates keep merging by name exactly as before.
8
+ */
9
+ export declare function isMultiCanvasTemplateDescriptor(td: Pick<z.infer<typeof Studio.publicTemplateDescriptor>, 'canvases'>): boolean;
3
10
  export declare function groupTemplatesByName(templates: {
4
11
  [k: string]: z.infer<typeof Studio.publicTemplateDescriptor>;
5
12
  }): {
@@ -11,6 +18,13 @@ export declare function groupTemplatesByName(templates: {
11
18
  width: number;
12
19
  height: number;
13
20
  dpi?: number | undefined;
21
+ canvases?: {
22
+ id: string;
23
+ label: string;
24
+ width: number;
25
+ height: number;
26
+ preview?: string | null | undefined;
27
+ }[] | undefined;
14
28
  };
15
29
  };
16
30
  };
@@ -41,6 +55,13 @@ export declare function groupPortalItemsByCategory(templates: {
41
55
  width: number;
42
56
  height: number;
43
57
  dpi?: number | undefined;
58
+ canvases?: {
59
+ id: string;
60
+ label: string;
61
+ width: number;
62
+ height: number;
63
+ preview?: string | null | undefined;
64
+ }[] | undefined;
44
65
  };
45
66
  };
46
67
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluepic/embed",
3
- "version": "0.4.0-next.134",
3
+ "version": "0.4.0-next.136",
4
4
  "description": "Bluepic embed sdk",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "devDependencies": {
46
46
  "@auth0/auth0-vue": "^2.4.0",
47
- "@bluepic/types": "^0.6.483",
47
+ "@bluepic/types": "^0.6.486",
48
48
  "@hono/zod-openapi": "^1.1.4",
49
49
  "@types/css": "^0.0.38",
50
50
  "@types/downloadjs": "^1.4.6",