@active-reach/web-sdk 1.40.0 → 1.42.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.
- package/dist/aegis.min.js +1 -1
- package/dist/aegis.min.js.map +1 -1
- package/dist/inapp/AegisInAppManager.d.ts +14 -9
- package/dist/inapp/AegisInAppManager.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +312 -847
- package/dist/index.js.map +1 -1
- package/dist/runtime/AegisMessageRuntime.d.ts +20 -11
- package/dist/runtime/AegisMessageRuntime.d.ts.map +1 -1
- package/dist/triggers/TriggerEngine.d.ts.map +1 -1
- package/dist/triggers/behaviouralTriggers.d.ts +44 -0
- package/dist/triggers/behaviouralTriggers.d.ts.map +1 -0
- package/dist/triggers/microIntentTriggers.d.ts +80 -0
- package/dist/triggers/microIntentTriggers.d.ts.map +1 -0
- package/dist/widgets/AegisWidgetManager.d.ts +3 -71
- package/dist/widgets/AegisWidgetManager.d.ts.map +1 -1
- package/dist/widgets/index.d.ts +1 -1
- package/dist/widgets/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
* runtime.onClientEvent(eventName, data)
|
|
16
16
|
* runtime.destroy()
|
|
17
17
|
*
|
|
18
|
-
* Internal wiring: spin_wheel + scratch_card campaigns
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
18
|
+
* Internal wiring: spin_wheel + scratch_card campaigns render in the
|
|
19
|
+
* InAppManager like every other in-app type (one engine: a turn posts
|
|
20
|
+
* /in-app/responses). The facade owns the page's TriggerEngine: it arms the
|
|
21
|
+
* behavioural `client_trigger`s (exit intent / scroll depth / time on page /
|
|
22
|
+
* inactivity) of every campaign load, forwards each firing to
|
|
23
|
+
* `inApp.onClientEvent`, and starts the engine it created.
|
|
24
24
|
*/
|
|
25
25
|
import { AegisInAppManager, type AegisInAppConfig, type InAppCampaign, type CartState, type AegisAction } from '../inapp';
|
|
26
26
|
import { AegisWidgetManager, type AegisWidgetConfig } from '../widgets';
|
|
@@ -33,9 +33,8 @@ export interface AegisMessageRuntimeConfig extends AegisInAppConfig {
|
|
|
33
33
|
* for its exit-intent / scroll-velocity / inactivity handlers. Leave
|
|
34
34
|
* undefined to have the runtime construct one internally. */
|
|
35
35
|
triggerEngine?: AegisWidgetConfig['triggerEngine'];
|
|
36
|
-
/** WidgetManager prefetch toggle. Defaults to true —
|
|
37
|
-
*
|
|
38
|
-
* configs from `/v1/widgets/config/prefetch`. */
|
|
36
|
+
/** WidgetManager prefetch toggle. Defaults to true — the exit-intent
|
|
37
|
+
* popup config comes from `/v1/widgets/config/prefetch`. */
|
|
39
38
|
enableWidgetPrefetch?: boolean;
|
|
40
39
|
/** Source platform for gamification attribution (shopify / woocommerce
|
|
41
40
|
* / magento / mobile_sdk / web). Passed through to WidgetManager. */
|
|
@@ -105,9 +104,19 @@ export declare class AegisMessageRuntime {
|
|
|
105
104
|
private contactId?;
|
|
106
105
|
private contactToken?;
|
|
107
106
|
private initialized;
|
|
107
|
+
private readonly triggerEngine;
|
|
108
|
+
private readonly ownsTriggerEngine;
|
|
109
|
+
/** Engine events already armed for in-app client triggers (one subscription each). */
|
|
110
|
+
private readonly armedInAppTriggers;
|
|
111
|
+
/** Smart triggers (`micro_intent`): armed into the evaluator on every campaign load. */
|
|
112
|
+
private readonly microIntent;
|
|
113
|
+
private readonly unsubscribeCampaignsLoaded;
|
|
108
114
|
/** apiHost captured for the device-pairing entry (`?aegis_pair=CODE`). */
|
|
109
115
|
private readonly pairingApiHost;
|
|
110
116
|
constructor(config: AegisMessageRuntimeConfig);
|
|
117
|
+
/** No hovering pointer (phones, tablets): exit intent is a fast scroll up,
|
|
118
|
+
* not the mouse leaving the window. */
|
|
119
|
+
private static hasNoHover;
|
|
111
120
|
/**
|
|
112
121
|
* Boots both managers in parallel. Safe to call multiple times — the
|
|
113
122
|
* second + subsequent calls are no-ops.
|
|
@@ -259,8 +268,8 @@ export declare class AegisMessageRuntime {
|
|
|
259
268
|
/**
|
|
260
269
|
* Current armed campaigns visible to the InAppManager. Accessible for
|
|
261
270
|
* the Prefetch Inspector and for debugging. WidgetManager's prefetched
|
|
262
|
-
*
|
|
263
|
-
*
|
|
271
|
+
* exit-intent popup config is NOT in this list — it lives in
|
|
272
|
+
* `this.widgets` and has its own lifecycle.
|
|
264
273
|
*/
|
|
265
274
|
getCampaigns(): InAppCampaign[];
|
|
266
275
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AegisMessageRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/AegisMessageRuntime.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,iBAAiB,EAAqB,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAC7I,OAAO,EAAE,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"AegisMessageRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/AegisMessageRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerEngine.d.ts","sourceRoot":"","sources":["../../src/triggers/TriggerEngine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TriggerEngine.d.ts","sourceRoot":"","sources":["../../src/triggers/TriggerEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Behavioural in-app triggers — the builder's "When" options
|
|
3
|
+
* (`display_rules.trigger_type`, served as `client_trigger`) that wait on a
|
|
4
|
+
* visitor behaviour the TriggerEngine detects.
|
|
5
|
+
*
|
|
6
|
+
* ONE table maps each trigger to the client event it fires on, so the in-app
|
|
7
|
+
* manager's matcher and the runtime's arming read the same names. Defaults
|
|
8
|
+
* match the builder's (when-panel.tsx): 50 % scroll, 30 s on page, 30 s idle.
|
|
9
|
+
*
|
|
10
|
+
* `micro_intent` is NOT here: it is a compound rule the IntentRuleEvaluator
|
|
11
|
+
* owns, not one engine event.
|
|
12
|
+
*/
|
|
13
|
+
import type { TriggerEngine } from './TriggerEngine';
|
|
14
|
+
export interface ClientTrigger {
|
|
15
|
+
type: string;
|
|
16
|
+
config?: Record<string, unknown>;
|
|
17
|
+
}
|
|
18
|
+
export declare const BEHAVIOURAL_TRIGGER_TYPES: readonly ["exit_intent", "scroll_depth", "time_on_page", "inactivity"];
|
|
19
|
+
export declare const DEFAULT_SCROLL_DEPTH_PERCENT = 50;
|
|
20
|
+
export declare const DEFAULT_TIME_ON_PAGE_SECONDS = 30;
|
|
21
|
+
export declare const DEFAULT_IDLE_SECONDS = 30;
|
|
22
|
+
/**
|
|
23
|
+
* The client event a behavioural trigger fires on — the TriggerEngine's own
|
|
24
|
+
* event name — or null when the trigger is not behavioural.
|
|
25
|
+
*/
|
|
26
|
+
export declare function behaviouralTriggerEvent(trigger: ClientTrigger | null | undefined): string | null;
|
|
27
|
+
/**
|
|
28
|
+
* The inverse of `behaviouralTriggerEvent`: reads an engine event name
|
|
29
|
+
* (`exit_intent`, `inactivity_60`, `time_on_page_30`, `scroll_depth_50`) back
|
|
30
|
+
* into its trigger, for hosts that configure triggers by event name (the chat
|
|
31
|
+
* launcher's `proactiveTriggers`). Null for any other name.
|
|
32
|
+
*/
|
|
33
|
+
export declare function triggerFromEngineEvent(eventName: string): ClientTrigger | null;
|
|
34
|
+
/**
|
|
35
|
+
* Arms the TriggerEngine for the behavioural triggers of `triggers` and calls
|
|
36
|
+
* `fire(eventName)` when one happens. Returns the events it newly armed, so a
|
|
37
|
+
* caller re-arming after each campaign refresh subscribes each event once.
|
|
38
|
+
*
|
|
39
|
+
* Exit intent: mouse leaving the top of the window on desktop; on mobile (no
|
|
40
|
+
* mouse) a fast scroll back up, which the engine reports as
|
|
41
|
+
* `mobile_exit_intent` and this forwards as `exit_intent`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function armBehaviouralTriggers(engine: TriggerEngine, triggers: ReadonlyArray<ClientTrigger | null | undefined>, armed: Set<string>, fire: (eventName: string) => void, isMobile: boolean): string[];
|
|
44
|
+
//# sourceMappingURL=behaviouralTriggers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behaviouralTriggers.d.ts","sourceRoot":"","sources":["../../src/triggers/behaviouralTriggers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,yBAAyB,wEAK5B,CAAC;AAEX,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAOvC;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAehG;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAQ9E;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,aAAa,CAAC,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC,EACzD,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,EAClB,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,EACjC,QAAQ,EAAE,OAAO,GAChB,MAAM,EAAE,CA+BV"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Smart trigger (`micro_intent`) arming — the production caller the
|
|
3
|
+
* IntentRuleEvaluator never had (Aman 2026-09-28, plan
|
|
4
|
+
* GAMIFICATION_ENGAGEMENT_TARGETING_PLAN §0d).
|
|
5
|
+
*
|
|
6
|
+
* A `micro_intent` campaign is served as `client_trigger: { type:
|
|
7
|
+
* 'micro_intent', config: <IntentRule> }`. Before this module nothing called
|
|
8
|
+
* `setArmed`, nothing turned a TriggerEngine event into an evaluator signal,
|
|
9
|
+
* and `converted_in_session` was never written — so `NOT(converted)` stayed
|
|
10
|
+
* null and every rule carrying it could never fire.
|
|
11
|
+
*
|
|
12
|
+
* This arms the evaluator on every campaign load, registers the engine
|
|
13
|
+
* thresholds the rules read (the `fire_on` signals and every numeric leaf of
|
|
14
|
+
* `time_on_page` / `scroll_depth` / `inactivity`), writes each engine event
|
|
15
|
+
* into the snapshot, and asks the evaluator for a decision.
|
|
16
|
+
*
|
|
17
|
+
* Signals owned elsewhere: Layer-1 scores (ContactScoresFetcher), `cart_value`
|
|
18
|
+
* (runtime updateContext). Hover / rage-click / SKU dwell need the
|
|
19
|
+
* IntentSnapshotCollector + SelectorBinder, which no host wires yet — rules on
|
|
20
|
+
* them stay unmet (null), never fire.
|
|
21
|
+
*/
|
|
22
|
+
import type { TriggerEngine } from './TriggerEngine';
|
|
23
|
+
import type { ArmedCampaign, IntentRule, IntentRuleEvaluator } from './IntentRuleEvaluator';
|
|
24
|
+
import { type ClientTrigger } from './behaviouralTriggers';
|
|
25
|
+
export declare const MICRO_INTENT_TRIGGER_TYPE = "micro_intent";
|
|
26
|
+
/** Signals whose value is a count the engine reports at registered thresholds. */
|
|
27
|
+
declare const THRESHOLD_SIGNALS: {
|
|
28
|
+
readonly time_on_page: 30;
|
|
29
|
+
readonly scroll_depth: 50;
|
|
30
|
+
readonly inactivity: 30;
|
|
31
|
+
};
|
|
32
|
+
type ThresholdSignal = keyof typeof THRESHOLD_SIGNALS;
|
|
33
|
+
/** The rule a `micro_intent` trigger carries, or null when it is not one or is malformed. */
|
|
34
|
+
export declare function microIntentRule(trigger: ClientTrigger | null | undefined): IntentRule | null;
|
|
35
|
+
/** Every loaded campaign whose client trigger is a well-formed smart trigger. */
|
|
36
|
+
export declare function armedMicroIntentCampaigns(campaigns: ReadonlyArray<{
|
|
37
|
+
id: string;
|
|
38
|
+
client_trigger?: ClientTrigger | null;
|
|
39
|
+
}>): ArmedCampaign[];
|
|
40
|
+
/**
|
|
41
|
+
* The engine thresholds at which `signal` must be observed for `rules` to be
|
|
42
|
+
* decided truthfully: each numeric leaf's crossing point (`gte 8` → 8,
|
|
43
|
+
* `gt 8` → 9), plus the builder default when a rule fires on the signal but
|
|
44
|
+
* never names a value.
|
|
45
|
+
*/
|
|
46
|
+
export declare function signalThresholds(rules: ReadonlyArray<IntentRule>, signal: ThresholdSignal): number[];
|
|
47
|
+
export interface MicroIntentArmingConfig {
|
|
48
|
+
engine: TriggerEngine;
|
|
49
|
+
evaluator: IntentRuleEvaluator;
|
|
50
|
+
/** Display the campaign; true only when it actually showed. */
|
|
51
|
+
show: (campaignId: string) => boolean;
|
|
52
|
+
/** Whether this session already converted (the in-app manager's record). */
|
|
53
|
+
hasConverted: () => boolean;
|
|
54
|
+
/** No hovering pointer: exit intent is the engine's fast scroll up. */
|
|
55
|
+
isMobile: boolean;
|
|
56
|
+
}
|
|
57
|
+
export declare class MicroIntentArming {
|
|
58
|
+
private readonly cfg;
|
|
59
|
+
private readonly registered;
|
|
60
|
+
private listening;
|
|
61
|
+
private readonly onEngineEvent;
|
|
62
|
+
constructor(cfg: MicroIntentArmingConfig);
|
|
63
|
+
/** Replace the armed rules with the smart triggers among `campaigns`. */
|
|
64
|
+
arm(campaigns: ReadonlyArray<{
|
|
65
|
+
id: string;
|
|
66
|
+
client_trigger?: ClientTrigger | null;
|
|
67
|
+
}>): void;
|
|
68
|
+
/** The host reported a conversion: rules gated on NOT converted stop matching. */
|
|
69
|
+
noteConversion(): void;
|
|
70
|
+
destroy(): void;
|
|
71
|
+
private once;
|
|
72
|
+
/** Subscribe once, and seed the page-start values: nothing scrolled, no
|
|
73
|
+
* time elapsed, no exit yet, conversion as the manager recorded it. A null
|
|
74
|
+
* here would make every AND/NOT over these signals unprovable. */
|
|
75
|
+
private listen;
|
|
76
|
+
private handle;
|
|
77
|
+
private decide;
|
|
78
|
+
}
|
|
79
|
+
export {};
|
|
80
|
+
//# sourceMappingURL=microIntentTriggers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microIntentTriggers.d.ts","sourceRoot":"","sources":["../../src/triggers/microIntentTriggers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EACV,aAAa,EAEb,UAAU,EACV,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAExD,kFAAkF;AAClF,QAAA,MAAM,iBAAiB;;;;CAIb,CAAC;AACX,KAAK,eAAe,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAItD,6FAA6F;AAC7F,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAe5F;AAED,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;CAAE,CAAC,GAC9E,aAAa,EAAE,CAOjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,MAAM,EAAE,CAgBpG;AAOD,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,+DAA+D;IAC/D,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,4EAA4E;IAC5E,YAAY,EAAE,MAAM,OAAO,CAAC;IAC5B,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0D;gBAE5E,GAAG,EAAE,uBAAuB;IAIxC,yEAAyE;IACzE,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;KAAE,CAAC,GAAG,IAAI;IAwB1F,kFAAkF;IAClF,cAAc,IAAI,IAAI;IAItB,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,IAAI;IAMZ;;uEAEmE;IACnE,OAAO,CAAC,MAAM;IAmBd,OAAO,CAAC,MAAM;IAwBd,OAAO,CAAC,MAAM;CAQf"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Smart Pull architecture for persistent web widgets.
|
|
5
5
|
*
|
|
6
6
|
* Features:
|
|
7
|
-
* -
|
|
7
|
+
* - Games (spin wheel, scratch card) are in-app campaigns (AegisInAppManager), not widgets
|
|
8
8
|
* - Chat bubbles (WhatsApp, support)
|
|
9
9
|
* - Social proof toasts (real-time purchase notifications)
|
|
10
10
|
* - Feedback forms (NPS, surveys)
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
import { TriggerEngine } from '../triggers/TriggerEngine';
|
|
24
24
|
export interface WidgetConfig {
|
|
25
25
|
widget_id: string;
|
|
26
|
-
widget_type: 'chat_bubble' | '
|
|
26
|
+
widget_type: 'chat_bubble' | 'toast' | 'feedback_form' | 'exit_intent_popup';
|
|
27
27
|
name: string;
|
|
28
28
|
config: Record<string, any>;
|
|
29
29
|
position?: string;
|
|
@@ -33,12 +33,6 @@ export interface WidgetConfig {
|
|
|
33
33
|
config?: Record<string, any>;
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
-
export interface GamificationPrize {
|
|
37
|
-
prize_label: string;
|
|
38
|
-
prize_value?: string;
|
|
39
|
-
coupon_code?: string;
|
|
40
|
-
play_id: string;
|
|
41
|
-
}
|
|
42
36
|
export interface AegisWidgetConfig {
|
|
43
37
|
writeKey: string;
|
|
44
38
|
apiHost?: string;
|
|
@@ -64,7 +58,7 @@ export interface AegisWidgetConfig {
|
|
|
64
58
|
/**
|
|
65
59
|
* Workspace cascade reader. Host SDK sets this to
|
|
66
60
|
* `() => aegis.getEffectiveWorkspaceId()` so widget interaction events
|
|
67
|
-
* (impressions, clicks,
|
|
61
|
+
* (impressions, clicks, feedback submissions)
|
|
68
62
|
* arrive at the gateway with the same workspace context the main
|
|
69
63
|
* analytics SDK uses. See PLUGIN_HANDSHAKE_AUTOMATION_TRACKER.md §P1.b.
|
|
70
64
|
*/
|
|
@@ -87,15 +81,6 @@ export interface WidgetCSSCustomization {
|
|
|
87
81
|
fontFamily?: string;
|
|
88
82
|
overlayOpacity?: number;
|
|
89
83
|
};
|
|
90
|
-
spinWheel?: {
|
|
91
|
-
backgroundColor?: string;
|
|
92
|
-
textColor?: string;
|
|
93
|
-
accentColor?: string;
|
|
94
|
-
borderRadius?: string;
|
|
95
|
-
fontFamily?: string;
|
|
96
|
-
wheelColors?: string[];
|
|
97
|
-
buttonColor?: string;
|
|
98
|
-
};
|
|
99
84
|
chatBubble?: {
|
|
100
85
|
backgroundColor?: string;
|
|
101
86
|
textColor?: string;
|
|
@@ -132,30 +117,6 @@ export interface PrefetchWidgetConfig {
|
|
|
132
117
|
back_button?: boolean;
|
|
133
118
|
};
|
|
134
119
|
};
|
|
135
|
-
spin_wheel?: {
|
|
136
|
-
enabled: boolean;
|
|
137
|
-
type: 'lead_gen' | 'cart_recovery';
|
|
138
|
-
title?: string;
|
|
139
|
-
prizes?: any[];
|
|
140
|
-
priority: number;
|
|
141
|
-
/**
|
|
142
|
-
* Ask for the customer's birthday, optionally (Aman ruling 2026-09-20).
|
|
143
|
-
*
|
|
144
|
-
* DEFAULT OFF, and the reason is measured rather than stylistic. The
|
|
145
|
-
* sibling optional fields (email, name) are unconditional — there is no
|
|
146
|
-
* flag for them — so "match the siblings" would argue for on-by-default.
|
|
147
|
-
* But the premise behind that ruling was that an owner could turn it off,
|
|
148
|
-
* and this widget's config has NO operator editor anywhere in `apps/web`
|
|
149
|
-
* (it lives in `segments.metadata_payload.widget_config`, written today
|
|
150
|
-
* only by the seed script and `segment_auto_creator`). An on-by-default
|
|
151
|
-
* date-of-birth field would therefore appear on every live spin wheel with
|
|
152
|
-
* no surface to remove it from. Off until a brand asks for it.
|
|
153
|
-
*
|
|
154
|
-
* When on, the field is still OPTIONAL to the customer: a birthday is an
|
|
155
|
-
* offer ("for a birthday treat"), never a toll on the spin.
|
|
156
|
-
*/
|
|
157
|
-
collect_birthday?: boolean;
|
|
158
|
-
};
|
|
159
120
|
}
|
|
160
121
|
export interface CartData {
|
|
161
122
|
cart_id: string;
|
|
@@ -200,23 +161,6 @@ export declare class AegisWidgetManager {
|
|
|
200
161
|
* re-render already-visible widgets — a full teardown requires destroy().
|
|
201
162
|
*/
|
|
202
163
|
updateContactId(contactId: string | undefined, contactToken?: string): Promise<void>;
|
|
203
|
-
/**
|
|
204
|
-
* Render an in-app campaign whose sub_type routes it to the
|
|
205
|
-
* gamification-widget code path (spin_wheel / scratch_card).
|
|
206
|
-
* InAppCampaign is adapted to the minimal WidgetConfig shape that
|
|
207
|
-
* the internal renderers already understand — no rewrite needed.
|
|
208
|
-
*
|
|
209
|
-
* AegisMessageRuntime wires this method as AegisInAppManager's
|
|
210
|
-
* `onInteractiveCampaign` callback so impressions from the inbox
|
|
211
|
-
* prefetch bundle actually land on screen.
|
|
212
|
-
*/
|
|
213
|
-
renderInteractiveCampaign(campaign: {
|
|
214
|
-
id: string;
|
|
215
|
-
title: string;
|
|
216
|
-
sub_type?: string;
|
|
217
|
-
priority?: number;
|
|
218
|
-
interactive_config?: Record<string, unknown>;
|
|
219
|
-
}): void;
|
|
220
164
|
/**
|
|
221
165
|
* Tear down everything the manager installed: trigger listeners (if
|
|
222
166
|
* we own the TriggerEngine), injected style sheets, and any rendered
|
|
@@ -246,22 +190,10 @@ export declare class AegisWidgetManager {
|
|
|
246
190
|
private sendCartAbandonmentBeacon;
|
|
247
191
|
private renderWidget;
|
|
248
192
|
private renderChatBubble;
|
|
249
|
-
private renderSpinWheel;
|
|
250
|
-
private renderSpinWheelWidget;
|
|
251
|
-
private validatePhone;
|
|
252
|
-
private validateEmail;
|
|
253
|
-
private submitSpinWheel;
|
|
254
|
-
private showSpinWheelPrize;
|
|
255
|
-
private detectGeoRegion;
|
|
256
193
|
private getUTMParams;
|
|
257
|
-
private getSessionId;
|
|
258
|
-
private getAnonymousId;
|
|
259
|
-
private renderScratchCard;
|
|
260
194
|
private renderToast;
|
|
261
195
|
private renderFeedbackForm;
|
|
262
196
|
private renderExitIntentPopup;
|
|
263
|
-
private generatePrize;
|
|
264
|
-
private showPrizeResult;
|
|
265
197
|
private submitFeedback;
|
|
266
198
|
private trackEvent;
|
|
267
199
|
private sanitizeUrl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AegisWidgetManager.d.ts","sourceRoot":"","sources":["../../src/widgets/AegisWidgetManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAmB1D,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"AegisWidgetManager.d.ts","sourceRoot":"","sources":["../../src/widgets/AegisWidgetManager.ts"],"names":[],"mappings":"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"}
|
package/dist/widgets/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,YAAY,EACZ,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,YAAY,EACZ,iBAAiB,EAClB,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@active-reach/web-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.42.0",
|
|
4
4
|
"description": "Web SDK for Active Reach Intelligence — event tracking, identity resolution, in-app messaging, web push, and placements",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|