@active-reach/web-sdk 1.36.6 → 1.36.8

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.
@@ -347,6 +347,8 @@ export declare class AegisInAppManager {
347
347
  private slotTimers;
348
348
  private slotObserver;
349
349
  private slotRenderScheduled;
350
+ private slotUnfilledBeaconed;
351
+ private slotUnfilledSweepTimer;
350
352
  /**
351
353
  * Scan the page for `[data-aegis-slot]` anchors and render any
352
354
  * campaign whose `widget_category` matches the slot key AND whose
@@ -377,6 +379,21 @@ export declare class AegisInAppManager {
377
379
  private matchesCurrentScreenOrSurface;
378
380
  private ensureSlotObserver;
379
381
  private renderIntoSlots;
382
+ /**
383
+ * slot_unfilled telemetry (Surface/Slot Contract tracker P2).
384
+ *
385
+ * A served embedded_card campaign whose `widget_category` has NO
386
+ * `data-aegis-slot` anchor on the page is silently discarded by
387
+ * `renderIntoSlots` — the exact failure mode that made the storefront
388
+ * value bar dark for browse traffic while the dashboard reported the
389
+ * campaign "active". This sweep runs ~3s after a render attempt (late
390
+ * mounts / SPA hydration get time to appear; the MutationObserver re-fill
391
+ * handles anchors that arrive even later) and beacons one `slot_unfilled`
392
+ * per (campaign, path) per session so the dashboard can show
393
+ * "served but never rendered".
394
+ */
395
+ private scheduleSlotUnfilledSweep;
396
+ private sweepUnfilledSlots;
380
397
  /**
381
398
  * Rotating slot — cycles eligible campaigns one at a time inside a single host
382
399
  * slot (the storefront sticky-footer "value bar"). Each campaign is pre-rendered
@@ -1 +1 @@
1
- {"version":3,"file":"AegisInAppManager.d.ts","sourceRoot":"","sources":["../../src/inapp/AegisInAppManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AegisInAppManager.d.ts","sourceRoot":"","sources":["../../src/inapp/AegisInAppManager.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,18 @@ export interface CardElement {
86
86
  /** rating_input: high-score review/referral CTA. */
87
87
  rating_high_url?: string;
88
88
  rating_high_cta?: string;
89
+ /**
90
+ * rating_input: which lucide glyph the scale draws — 'star' (default) or
91
+ * 'heart'. Authored in the dashboard's star-rating editor and persisted by
92
+ * BOTH schemas (zod + pydantic), but unread here until 2026-08-13, so every
93
+ * widget drew stars whatever the operator picked.
94
+ *
95
+ * Deliberately NOT an emoji option, despite the editor historically offering
96
+ * one: this renderer is lucide-only by design rule, and an emoji glyph here
97
+ * would be UI chrome. An 'emoji' value from an older config falls back to
98
+ * 'star' rather than rendering nothing.
99
+ */
100
+ rating_icon?: 'star' | 'heart' | string;
89
101
  /** Where the item array comes from. 'order' = the slot's data-rateable-items
90
102
  * (trusted Aegis surfaces) OR token→server-resolve (untrusted origins). The
91
103
  * ONLY value at launch — convention binding (PRODUCT_RATING_LIST_ELEMENT_PLAN
@@ -107,6 +119,17 @@ export interface CardElement {
107
119
  * "Earn 100 pts · +50 photo · +75 video"). Authored copy only — never a live
108
120
  * points calc; blank → no hint. */
109
121
  review_earn_hint?: string;
122
+ /** Headline of the detractor form (default "Sorry we missed the mark."). */
123
+ detractor_headline?: string;
124
+ /** Prompt under the headline (default "What went wrong?"). */
125
+ detractor_prompt?: string;
126
+ /** Quick-pick reason chips (default Late / Quality / Wrong item). */
127
+ detractor_chips?: string[];
128
+ /** Submit button label (default "Send to the team"). */
129
+ detractor_send_label?: string;
130
+ /** Post-submit confirmation line (default "Thank you — the team will
131
+ * personally reach out."). */
132
+ detractor_thanks?: string;
110
133
  height?: number;
111
134
  /** group: nested layout + children. */
112
135
  layout?: 'stack' | 'row';
@@ -1 +1 @@
1
- {"version":3,"file":"card-template.d.ts","sourceRoot":"","sources":["../../../src/inapp/renderers/card-template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card-template.d.ts","sourceRoot":"","sources":["../../../src/inapp/renderers/card-template.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { S as Storage, l as logger, A as Aegis } from "./analytics-ZwrwqCTJ.mjs";
2
- import { B, E, N, R, U, m } from "./analytics-ZwrwqCTJ.mjs";
1
+ import { S as Storage, l as logger, A as Aegis } from "./analytics-Qyzk8JaB.mjs";
2
+ import { B, E, N, R, U, m } from "./analytics-Qyzk8JaB.mjs";
3
3
  import { AegisWebPush } from "./push/AegisWebPush.js";
4
4
  function debounce(func, wait) {
5
5
  let timeoutId = null;
@@ -710,6 +710,8 @@ function buildRatingInputElement(el2, ctx, fg) {
710
710
  wrap.appendChild(q);
711
711
  }
712
712
  const scale = typeof el2.rating_scale === "number" && el2.rating_scale >= 2 && el2.rating_scale <= 10 ? Math.floor(el2.rating_scale) : 5;
713
+ const iconName = el2.rating_icon === "heart" ? "heart" : "star";
714
+ const iconWord = iconName === "heart" ? "heart" : "star";
713
715
  const row = document.createElement("div");
714
716
  row.style.cssText = "display:flex;gap:6px;";
715
717
  const stars2 = [];
@@ -724,9 +726,9 @@ function buildRatingInputElement(el2, ctx, fg) {
724
726
  for (let i = 1; i <= scale; i++) {
725
727
  const btn = document.createElement("button");
726
728
  btn.type = "button";
727
- btn.setAttribute("aria-label", `${i} star${i > 1 ? "s" : ""}`);
729
+ btn.setAttribute("aria-label", `${i} ${iconWord}${i > 1 ? "s" : ""}`);
728
730
  btn.style.cssText = "cursor:pointer;border:none;background:none;padding:0;line-height:0;";
729
- const svg = lucideSvgEl("star", { size: 26, color: "#d1d5db" });
731
+ const svg = lucideSvgEl(iconName, { size: 26, color: "#d1d5db" });
730
732
  if (svg) {
731
733
  btn.appendChild(svg);
732
734
  stars2.push(svg);
@@ -823,6 +825,7 @@ function buildProductRatingListElement(el2, ctx, fg) {
823
825
  const scale = typeof el2.rating_scale === "number" && el2.rating_scale >= 2 && el2.rating_scale <= 10 ? Math.floor(el2.rating_scale) : 5;
824
826
  const showThumb = el2.show_thumbnail !== false && el2.rating_layout !== "compact";
825
827
  const scores = {};
828
+ const itemNames = {};
826
829
  const allowText = el2.allow_review_text === true;
827
830
  const canUpload = !!(ctx.apiHost && ctx.writeKey && ctx.organizationId);
828
831
  const allowMedia = el2.allow_review_media === true && canUpload;
@@ -960,9 +963,103 @@ function buildProductRatingListElement(el2, ctx, fg) {
960
963
  submitBtn.style.opacity = has ? "1" : ".5";
961
964
  submitBtn.style.pointerEvents = has ? "auto" : "none";
962
965
  };
966
+ const renderDetractorForm = () => {
967
+ const box = document.createElement("div");
968
+ box.style.cssText = "display:flex;flex-direction:column;gap:10px;padding:4px 0;";
969
+ const head = document.createElement("p");
970
+ head.textContent = typeof el2.detractor_headline === "string" && el2.detractor_headline.trim() ? el2.detractor_headline : "Sorry we missed the mark.";
971
+ head.style.cssText = `margin:0;font-size:14px;font-weight:700;color:${fg};`;
972
+ box.appendChild(head);
973
+ const prompt = document.createElement("p");
974
+ prompt.textContent = typeof el2.detractor_prompt === "string" && el2.detractor_prompt.trim() ? el2.detractor_prompt : "What went wrong?";
975
+ prompt.style.cssText = `margin:0;font-size:13px;color:${fg};opacity:.75;`;
976
+ box.appendChild(prompt);
977
+ const selected = /* @__PURE__ */ new Set();
978
+ const chipLabels = (Array.isArray(el2.detractor_chips) && el2.detractor_chips.length ? el2.detractor_chips.filter((c) => typeof c === "string" && !!c.trim()) : ["Late", "Quality", "Wrong item"]).slice(0, 8);
979
+ const chipRow = document.createElement("div");
980
+ chipRow.style.cssText = "display:flex;flex-wrap:wrap;gap:6px;";
981
+ const ta = document.createElement("textarea");
982
+ ta.placeholder = "Tell us more (optional)";
983
+ ta.rows = 3;
984
+ ta.style.cssText = `width:100%;box-sizing:border-box;padding:10px;border-radius:10px;border:1px solid color-mix(in srgb, ${accent} 30%, transparent);background:transparent;color:${fg};font-size:13px;resize:vertical;font-family:inherit;`;
985
+ const send = document.createElement("button");
986
+ send.type = "button";
987
+ const sendLabel = typeof el2.detractor_send_label === "string" && el2.detractor_send_label.trim() ? el2.detractor_send_label : "Send to the team";
988
+ send.textContent = sendLabel;
989
+ send.style.cssText = `width:100%;border:0;border-radius:999px;background:${accent};color:#fff;font-size:14px;font-weight:700;padding:10px 16px;cursor:pointer;opacity:.5;pointer-events:none;`;
990
+ const refreshSend = () => {
991
+ const has = selected.size > 0 || !!ta.value.trim();
992
+ send.style.opacity = has ? "1" : ".5";
993
+ send.style.pointerEvents = has ? "auto" : "none";
994
+ };
995
+ ta.addEventListener("input", refreshSend);
996
+ chipLabels.forEach((label) => {
997
+ const chip = document.createElement("button");
998
+ chip.type = "button";
999
+ chip.textContent = label;
1000
+ const paint = () => {
1001
+ const on = selected.has(label);
1002
+ chip.style.cssText = `border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;border:1px solid color-mix(in srgb, ${accent} 35%, transparent);` + (on ? `background:${accent};color:#fff;` : `background:transparent;color:${fg};`);
1003
+ };
1004
+ chip.addEventListener("click", () => {
1005
+ if (selected.has(label)) selected.delete(label);
1006
+ else selected.add(label);
1007
+ paint();
1008
+ refreshSend();
1009
+ });
1010
+ paint();
1011
+ chipRow.appendChild(chip);
1012
+ });
1013
+ box.appendChild(chipRow);
1014
+ box.appendChild(ta);
1015
+ box.appendChild(send);
1016
+ const note = document.createElement("div");
1017
+ note.textContent = "Your note goes straight to the team.";
1018
+ note.style.cssText = `font-size:11px;color:${fg};opacity:.6;text-align:center;`;
1019
+ box.appendChild(note);
1020
+ let sent = false;
1021
+ send.addEventListener("click", () => {
1022
+ var _a;
1023
+ if (sent) return;
1024
+ sent = true;
1025
+ send.style.opacity = ".6";
1026
+ send.style.pointerEvents = "none";
1027
+ send.textContent = "Sending…";
1028
+ ctx.trackEvent(ctx.campaign.id, "clicked", {
1029
+ meta: { element: "product_rating_list", detail: "detractor_detail" }
1030
+ });
1031
+ Promise.resolve(
1032
+ (_a = ctx.submitResponse) == null ? void 0 : _a.call(ctx, "detractor_detail", {
1033
+ chips: Array.from(selected),
1034
+ text: ta.value.trim(),
1035
+ order_id: orderId,
1036
+ bill_code: billCode,
1037
+ token
1038
+ })
1039
+ ).then((res) => {
1040
+ var _a2;
1041
+ if (res === null) throw new Error("detractor_detail rejected");
1042
+ box.innerHTML = "";
1043
+ const ok = document.createElement("p");
1044
+ ok.textContent = typeof el2.detractor_thanks === "string" && el2.detractor_thanks.trim() ? el2.detractor_thanks : "Thank you — the team will personally reach out.";
1045
+ ok.style.cssText = `margin:0;font-size:13px;font-weight:700;color:${fg};text-align:center;padding:8px 0;`;
1046
+ box.appendChild(ok);
1047
+ (_a2 = ctx.playReaction) == null ? void 0 : _a2.call(ctx, wrap, "acknowledge");
1048
+ }).catch(() => {
1049
+ sent = false;
1050
+ send.textContent = sendLabel;
1051
+ refreshSend();
1052
+ });
1053
+ });
1054
+ wrap.appendChild(box);
1055
+ };
963
1056
  const done = (branch) => {
964
1057
  var _a;
965
1058
  wrap.innerHTML = "";
1059
+ if (branch === "negative") {
1060
+ renderDetractorForm();
1061
+ return;
1062
+ }
966
1063
  const ack = document.createElement("div");
967
1064
  ack.style.cssText = "text-align:center;padding:8px 0;";
968
1065
  const t = document.createElement("p");
@@ -993,7 +1090,11 @@ function buildProductRatingListElement(el2, ctx, fg) {
993
1090
  });
994
1091
  Promise.resolve(
995
1092
  (_a = ctx.submitResponse) == null ? void 0 : _a.call(ctx, "rating", {
996
- items: rated.map((pid) => ({ product_id: pid, score: scores[pid] })),
1093
+ items: rated.map((pid) => ({
1094
+ product_id: pid,
1095
+ score: scores[pid],
1096
+ ...itemNames[pid] ? { product_name: itemNames[pid] } : {}
1097
+ })),
997
1098
  order_id: orderId,
998
1099
  bill_code: billCode,
999
1100
  token,
@@ -1002,7 +1103,7 @@ function buildProductRatingListElement(el2, ctx, fg) {
1002
1103
  })
1003
1104
  ).then((res) => {
1004
1105
  var _a2;
1005
- const branch = ((_a2 = res == null ? void 0 : res.rating_result) == null ? void 0 : _a2.branch) || "positive";
1106
+ const branch = ((_a2 = res == null ? void 0 : res.rating_result) == null ? void 0 : _a2.branch) || "passive";
1006
1107
  done(branch);
1007
1108
  }).catch(() => {
1008
1109
  submitting = false;
@@ -1021,6 +1122,7 @@ function buildProductRatingListElement(el2, ctx, fg) {
1021
1122
  const rowEl = document.createElement("div");
1022
1123
  rowEl.style.cssText = "display:flex;align-items:center;gap:10px;";
1023
1124
  if (showThumb) rowEl.appendChild(ratingThumb(it, accent));
1125
+ if (it.name) itemNames[it.product_id] = it.name;
1024
1126
  const nameEl = document.createElement("span");
1025
1127
  nameEl.textContent = it.name || it.product_id;
1026
1128
  nameEl.style.cssText = `flex:1;min-width:0;font-size:13px;color:${fg};overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`;
@@ -5863,6 +5965,8 @@ const _AegisInAppManager = class _AegisInAppManager {
5863
5965
  this.slotTimers = /* @__PURE__ */ new WeakMap();
5864
5966
  this.slotObserver = null;
5865
5967
  this.slotRenderScheduled = false;
5968
+ this.slotUnfilledBeaconed = /* @__PURE__ */ new Set();
5969
+ this.slotUnfilledSweepTimer = null;
5866
5970
  this._pushOptInLoading = false;
5867
5971
  this.writeKey = config.writeKey;
5868
5972
  this.apiHost = config.apiHost || "https://api.aegis.ai";
@@ -6580,6 +6684,7 @@ const _AegisInAppManager = class _AegisInAppManager {
6580
6684
  var _a, _b;
6581
6685
  if (typeof document === "undefined") return;
6582
6686
  this.ensureSlotObserver();
6687
+ this.scheduleSlotUnfilledSweep();
6583
6688
  const slots = document.querySelectorAll("[data-aegis-slot]");
6584
6689
  if (slots.length === 0) return;
6585
6690
  const eligibleByCategory = /* @__PURE__ */ new Map();
@@ -6649,6 +6754,54 @@ const _AegisInAppManager = class _AegisInAppManager {
6649
6754
  this.filledSlots.add(slot);
6650
6755
  });
6651
6756
  }
6757
+ /**
6758
+ * slot_unfilled telemetry (Surface/Slot Contract tracker P2).
6759
+ *
6760
+ * A served embedded_card campaign whose `widget_category` has NO
6761
+ * `data-aegis-slot` anchor on the page is silently discarded by
6762
+ * `renderIntoSlots` — the exact failure mode that made the storefront
6763
+ * value bar dark for browse traffic while the dashboard reported the
6764
+ * campaign "active". This sweep runs ~3s after a render attempt (late
6765
+ * mounts / SPA hydration get time to appear; the MutationObserver re-fill
6766
+ * handles anchors that arrive even later) and beacons one `slot_unfilled`
6767
+ * per (campaign, path) per session so the dashboard can show
6768
+ * "served but never rendered".
6769
+ */
6770
+ scheduleSlotUnfilledSweep() {
6771
+ if (typeof document === "undefined" || this.slotUnfilledSweepTimer) return;
6772
+ this.slotUnfilledSweepTimer = setTimeout(() => {
6773
+ this.slotUnfilledSweepTimer = null;
6774
+ this.sweepUnfilledSlots();
6775
+ }, 3e3);
6776
+ }
6777
+ sweepUnfilledSlots() {
6778
+ var _a, _b;
6779
+ if (typeof document === "undefined") return;
6780
+ const present = /* @__PURE__ */ new Set();
6781
+ document.querySelectorAll("[data-aegis-slot]").forEach((el2) => {
6782
+ const k = el2.getAttribute("data-aegis-slot");
6783
+ if (k) present.add(k);
6784
+ });
6785
+ const path = typeof window !== "undefined" ? window.location.pathname : "";
6786
+ for (const c of this.campaigns) {
6787
+ if (!this.matchesCurrentScreenOrSurface(c)) continue;
6788
+ if (!c.delivery_modes || !c.delivery_modes.includes("embedded_card")) continue;
6789
+ const category = c.widget_category;
6790
+ if (!category || present.has(category)) continue;
6791
+ const anchorSel = (_b = (_a = c.interactive_config) == null ? void 0 : _a.anchor) == null ? void 0 : _b.element_selector;
6792
+ if (typeof anchorSel === "string" && anchorSel.trim()) continue;
6793
+ const key = `${c.id}|${path}`;
6794
+ if (this.slotUnfilledBeaconed.has(key)) continue;
6795
+ this.slotUnfilledBeaconed.add(key);
6796
+ void this.trackEvent(c.id, "slot_unfilled", {
6797
+ meta: {
6798
+ widget_category: category,
6799
+ surface: this.currentSurface ?? void 0,
6800
+ path
6801
+ }
6802
+ });
6803
+ }
6804
+ }
6652
6805
  /**
6653
6806
  * Rotating slot — cycles eligible campaigns one at a time inside a single host
6654
6807
  * slot (the storefront sticky-footer "value bar"). Each campaign is pre-rendered
@@ -7028,9 +7181,26 @@ const _AegisInAppManager = class _AegisInAppManager {
7028
7181
  thanks_text: ic.thank_you_message,
7029
7182
  rating_followup_enabled: ic.rating_followup_enabled !== false,
7030
7183
  rating_followup_threshold: ic.rating_followup_threshold,
7031
- rating_followup_prompt: ic.rating_followup_prompt,
7032
- rating_high_url: ic.rating_high_url ?? ic.nps_promoter_url,
7033
- rating_high_cta: ic.rating_high_cta
7184
+ // The dashboard's star-rating editor writes `rating_low_prompt`; the
7185
+ // card element reads `rating_followup_prompt`. Nothing mapped them, so
7186
+ // an operator's custom "what went wrong?" copy never appeared — the
7187
+ // follow-up rendered its hardcoded default instead.
7188
+ rating_followup_prompt: ic.rating_followup_prompt ?? ic.rating_low_prompt,
7189
+ // Same break, worse blast radius: the editor writes `rating_review_url`
7190
+ // (the operator pastes their Google review link there) while this read
7191
+ // `rating_high_url` — a key NOTHING writes — falling back to an NPS
7192
+ // field that a star-rating campaign never sets. Both resolved
7193
+ // undefined, the key was stripped as undefined, and
7194
+ // `appendRatingThanks` skipped the CTA entirely. So the SAD path worked
7195
+ // (comment box) and the HAPPY path silently did nothing: a 5-star rater
7196
+ // was never asked for the public review the operator had configured.
7197
+ // Operator key FIRST; the other two stay as back-compat for configs
7198
+ // authored against the older shapes.
7199
+ rating_high_url: ic.rating_review_url ?? ic.rating_high_url ?? ic.nps_promoter_url,
7200
+ rating_high_cta: ic.rating_high_cta,
7201
+ // Icon choice was authored + persisted (zod + pydantic) but had no
7202
+ // renderer support at all, so every widget drew stars regardless.
7203
+ rating_icon: ic.rating_icon
7034
7204
  };
7035
7205
  } else if (campaign.sub_type === "quick_poll") {
7036
7206
  const opts = Array.isArray(ic.poll_options) ? ic.poll_options : Array.isArray(ic.options) ? ic.options : [];
@@ -7040,7 +7210,9 @@ const _AegisInAppManager = class _AegisInAppManager {
7040
7210
  }
7041
7211
  if (!element) return;
7042
7212
  const cleaned = Object.fromEntries(Object.entries(element).filter(([, v]) => v !== void 0));
7043
- ic.card_template = { frame: {}, elements: [cleaned] };
7213
+ const _headerImage = typeof ic.header_image_url === "string" ? ic.header_image_url.trim() : "";
7214
+ const elements = _headerImage ? [{ type: "image", image_url: _headerImage, aspect: "16/9" }, cleaned] : [cleaned];
7215
+ ic.card_template = { frame: {}, elements };
7044
7216
  campaign.interactive_config = ic;
7045
7217
  }
7046
7218
  /**
@@ -11683,6 +11855,8 @@ _AegisInAppManager.KNOWN_SURFACES = /* @__PURE__ */ new Set([
11683
11855
  "storefront_reviews",
11684
11856
  "storefront_members",
11685
11857
  "storefront_orders",
11858
+ "storefront_account",
11859
+ "storefront_referrals",
11686
11860
  "external_website",
11687
11861
  "external_mobile_screen"
11688
11862
  ]);
@@ -14910,7 +15084,7 @@ const _AegisMessageRuntime = class _AegisMessageRuntime {
14910
15084
  var _a;
14911
15085
  this.initialized = false;
14912
15086
  {
14913
- const v = "1.36.6";
15087
+ const v = "1.36.8";
14914
15088
  try {
14915
15089
  globalThis.__AEGIS_SDK_VERSION__ = v;
14916
15090
  } catch {