veo-sdk 0.4.2 → 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.
@@ -0,0 +1,5 @@
1
+ export { attachDesignManipulator, createBuilderSession, initBuilderMode, startElementPicker, stopElementPicker } from './chunk-H464CQY3.mjs';
2
+ import './chunk-UJTSYDQ6.mjs';
3
+ import './chunk-PTG3BTJE.mjs';
4
+ //# sourceMappingURL=builder-AW37YKWO.mjs.map
5
+ //# sourceMappingURL=builder-AW37YKWO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"builder-S6ZODU2M.mjs"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"builder-AW37YKWO.mjs"}
package/dist/builder.cjs CHANGED
@@ -377,12 +377,12 @@ function buildButtonBlock(block, doc, callbacks) {
377
377
  applyBlockStyle(btn, block.style, "button");
378
378
  btn.addEventListener("click", () => {
379
379
  const action = block.action ?? "dismiss";
380
- const url = action === "url" && typeof block.url === "string" && isSafeUrl(block.url) ? block.url : void 0;
380
+ const target = action === "url" && typeof block.url === "string" && isSafeUrl(block.url) ? block.url : action === "guide" && typeof block.targetGuideId === "string" && block.targetGuideId ? block.targetGuideId : void 0;
381
381
  const meta = {
382
382
  ...typeof block.id === "string" && block.id ? { buttonId: block.id } : {},
383
383
  ...typeof block.text === "string" && block.text ? { buttonText: block.text } : {}
384
384
  };
385
- callbacks.onCtaClick(action, url, Object.keys(meta).length ? meta : void 0);
385
+ callbacks.onCtaClick(action, target, Object.keys(meta).length ? meta : void 0);
386
386
  });
387
387
  return btn;
388
388
  }
@@ -1206,15 +1206,16 @@ var BadgeRenderer = class extends BaseRenderer {
1206
1206
  });
1207
1207
  };
1208
1208
  const buildTooltipContent = (s) => buildStepContent(s, ownerDocument, {
1209
- onCtaClick: (action, url, meta) => {
1209
+ onCtaClick: (action, target, meta) => {
1210
1210
  emit("cta_clicked", meta);
1211
- if (action === "url" && url) window.open(url, "_blank", "noopener,noreferrer");
1211
+ if (action === "url" && target) window.open(target, "_blank", "noopener,noreferrer");
1212
1212
  if (action === "dismiss") {
1213
1213
  emit("dismissed");
1214
1214
  context.onClose();
1215
1215
  return;
1216
1216
  }
1217
1217
  this.closeTooltip();
1218
+ if (action === "guide" && target) context.onOpenGuide?.(target);
1218
1219
  },
1219
1220
  onDismiss: () => {
1220
1221
  emit("dismissed");
@@ -1517,7 +1518,10 @@ var BannerRenderer = class extends BaseRenderer {
1517
1518
  ownerDocument,
1518
1519
  context.nav.callbacks
1519
1520
  ) : buildStepContent(step, ownerDocument, {
1520
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
1521
+ onCtaClick: (action, target, meta) => {
1522
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
1523
+ if (action === "guide" && target) context.onOpenGuide?.(target);
1524
+ },
1521
1525
  onDismiss: () => dismiss("dismissed")
1522
1526
  });
1523
1527
  banner.appendChild(content);
@@ -1532,7 +1536,10 @@ var BannerRenderer = class extends BaseRenderer {
1532
1536
  this.liveContainer = banner;
1533
1537
  this.liveContent = content;
1534
1538
  this.liveBuild = (s) => buildStepContent(s, ownerDocument, {
1535
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
1539
+ onCtaClick: (action, target, meta) => {
1540
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
1541
+ if (action === "guide" && target) context.onOpenGuide?.(target);
1542
+ },
1536
1543
  onDismiss: () => dismiss("dismissed")
1537
1544
  });
1538
1545
  this.liveKey = this.liveKeyOf(step);
@@ -2168,7 +2175,10 @@ var InlineRenderer = class extends BaseRenderer {
2168
2175
  context.onClose();
2169
2176
  };
2170
2177
  const content = buildStepContent(step, ownerDocument, {
2171
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
2178
+ onCtaClick: (action, target, meta) => {
2179
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2180
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2181
+ },
2172
2182
  onDismiss: () => dismiss("dismissed")
2173
2183
  });
2174
2184
  card.appendChild(content);
@@ -2177,7 +2187,10 @@ var InlineRenderer = class extends BaseRenderer {
2177
2187
  this.liveContent = content;
2178
2188
  this.liveKey = `${selector}|${position}`;
2179
2189
  this.liveBuild = (s) => buildStepContent(s, ownerDocument, {
2180
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
2190
+ onCtaClick: (action, target, meta) => {
2191
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2192
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2193
+ },
2181
2194
  onDismiss: () => dismiss("dismissed")
2182
2195
  });
2183
2196
  context.onInteraction({ guideId: context.guide.guideId, stepIndex: 0, action: "shown" });
@@ -2229,7 +2242,10 @@ var ModalRenderer = class extends BaseRenderer {
2229
2242
  ownerDocument,
2230
2243
  context.nav.callbacks
2231
2244
  ) : buildStepContent(step, ownerDocument, {
2232
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
2245
+ onCtaClick: (action, target, meta) => {
2246
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2247
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2248
+ },
2233
2249
  onDismiss: () => dismiss("dismissed")
2234
2250
  });
2235
2251
  card.appendChild(content);
@@ -2239,7 +2255,10 @@ var ModalRenderer = class extends BaseRenderer {
2239
2255
  this.liveContainer = card;
2240
2256
  this.liveContent = content;
2241
2257
  this.liveBuild = (s) => buildStepContent(s, ownerDocument, {
2242
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
2258
+ onCtaClick: (action, target, meta) => {
2259
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2260
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2261
+ },
2243
2262
  onDismiss: () => dismiss("dismissed")
2244
2263
  });
2245
2264
  }
@@ -2295,8 +2314,9 @@ var TooltipRenderer = class extends BaseRenderer {
2295
2314
  context.onClose();
2296
2315
  };
2297
2316
  const content = buildStepContent(step, ownerDocument, {
2298
- onCtaClick: (action, url, meta) => {
2299
- dismiss("cta_clicked", action === "url" ? url : void 0, meta);
2317
+ onCtaClick: (action, target, meta) => {
2318
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2319
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2300
2320
  },
2301
2321
  onDismiss: () => dismiss("dismissed")
2302
2322
  });
@@ -2329,7 +2349,10 @@ var TooltipRenderer = class extends BaseRenderer {
2329
2349
  this.liveContent = content;
2330
2350
  this.liveKey = selector;
2331
2351
  this.liveBuild = (s) => buildStepContent(s, ownerDocument, {
2332
- onCtaClick: (action, url, meta) => dismiss("cta_clicked", action === "url" ? url : void 0, meta),
2352
+ onCtaClick: (action, target, meta) => {
2353
+ dismiss("cta_clicked", action === "url" ? target : void 0, meta);
2354
+ if (action === "guide" && target) context.onOpenGuide?.(target);
2355
+ },
2333
2356
  onDismiss: () => dismiss("dismissed")
2334
2357
  });
2335
2358
  context.onInteraction({
@@ -2461,6 +2484,10 @@ var GuidePreviewController = class {
2461
2484
  onClose: () => this.close(),
2462
2485
  onTrack: () => {
2463
2486
  },
2487
+ // Encadenado en preview: no-op — el editor no puede montar otra guía
2488
+ // guardada; el click igual cierra la preview actual (vía onCtaClick).
2489
+ onOpenGuide: () => {
2490
+ },
2464
2491
  // Preview de forms: por defecto simula el envío SIN escribir props;
2465
2492
  // el caller puede pasar `formSubmit` real (link de preview).
2466
2493
  onFormSubmit: this.input?.formSubmit ?? (() => Promise.resolve(true)),