@active-reach/web-sdk 1.15.0 → 1.20.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.
Files changed (64) hide show
  1. package/README.md +35 -54
  2. package/dist/aegis-sw.js +1 -1
  3. package/dist/aegis.min.js +1 -1
  4. package/dist/aegis.min.js.map +1 -1
  5. package/dist/{analytics-CjLItVo2.mjs → analytics-DblhjFhs.mjs} +66 -3
  6. package/dist/analytics-DblhjFhs.mjs.map +1 -0
  7. package/dist/cdn.d.ts +5 -2
  8. package/dist/cdn.d.ts.map +1 -1
  9. package/dist/chat/AegisChat.d.ts +138 -0
  10. package/dist/chat/AegisChat.d.ts.map +1 -0
  11. package/dist/chat/index.d.ts +3 -0
  12. package/dist/chat/index.d.ts.map +1 -0
  13. package/dist/core/analytics.d.ts +37 -2
  14. package/dist/core/analytics.d.ts.map +1 -1
  15. package/dist/ecommerce/index.d.ts +32 -14
  16. package/dist/ecommerce/index.d.ts.map +1 -1
  17. package/dist/inapp/AegisInAppManager.d.ts +323 -7
  18. package/dist/inapp/AegisInAppManager.d.ts.map +1 -1
  19. package/dist/inapp/devicePairing.d.ts +70 -0
  20. package/dist/inapp/devicePairing.d.ts.map +1 -0
  21. package/dist/inapp/index.d.ts +2 -0
  22. package/dist/inapp/index.d.ts.map +1 -1
  23. package/dist/inapp/renderPreview.d.ts.map +1 -1
  24. package/dist/inapp/renderers/active-web-chat.d.ts +38 -0
  25. package/dist/inapp/renderers/active-web-chat.d.ts.map +1 -0
  26. package/dist/inapp/renderers/carousel-cards.d.ts.map +1 -1
  27. package/dist/inapp/renderers/coachmark-tour.d.ts.map +1 -1
  28. package/dist/inapp/renderers/games.d.ts +27 -0
  29. package/dist/inapp/renderers/games.d.ts.map +1 -0
  30. package/dist/inapp/renderers/index.d.ts +8 -3
  31. package/dist/inapp/renderers/index.d.ts.map +1 -1
  32. package/dist/inapp/renderers/product-recommendation.d.ts +4 -4
  33. package/dist/inapp/renderers/product-recommendation.d.ts.map +1 -1
  34. package/dist/inapp/renderers/progress-bar.d.ts +14 -0
  35. package/dist/inapp/renderers/progress-bar.d.ts.map +1 -1
  36. package/dist/inapp/renderers/sticky-bar.d.ts.map +1 -1
  37. package/dist/inapp/renderers/stories.d.ts +31 -0
  38. package/dist/inapp/renderers/stories.d.ts.map +1 -0
  39. package/dist/inapp/renderers/types.d.ts +73 -2
  40. package/dist/inapp/renderers/types.d.ts.map +1 -1
  41. package/dist/inapp/renderers/video.d.ts +20 -0
  42. package/dist/inapp/renderers/video.d.ts.map +1 -0
  43. package/dist/index.d.ts +5 -3
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +8576 -3169
  46. package/dist/index.js.map +1 -1
  47. package/dist/loyalty/AegisLoyaltyManager.d.ts +120 -0
  48. package/dist/loyalty/AegisLoyaltyManager.d.ts.map +1 -0
  49. package/dist/loyalty/index.d.ts +3 -0
  50. package/dist/loyalty/index.d.ts.map +1 -0
  51. package/dist/push/AegisWebPush.d.ts.map +1 -1
  52. package/dist/push/AegisWebPush.js +13 -2
  53. package/dist/push/AegisWebPush.js.map +1 -1
  54. package/dist/react.js +1 -1
  55. package/dist/runtime/AegisMessageRuntime.d.ts +78 -1
  56. package/dist/runtime/AegisMessageRuntime.d.ts.map +1 -1
  57. package/dist/triggers/ContactScoresFetcher.d.ts +6 -0
  58. package/dist/triggers/ContactScoresFetcher.d.ts.map +1 -1
  59. package/dist/triggers/IntentRuleEvaluator.d.ts +29 -4
  60. package/dist/triggers/IntentRuleEvaluator.d.ts.map +1 -1
  61. package/package.json +7 -6
  62. package/dist/analytics-CjLItVo2.mjs.map +0 -1
  63. package/dist/placements/AegisPlacementManager.d.ts +0 -97
  64. package/dist/placements/AegisPlacementManager.d.ts.map +0 -1
@@ -1,97 +0,0 @@
1
- /**
2
- * AegisPlacementManager - Web SDK Placement Module
3
- *
4
- * Real-time SSE architecture for inline content placements.
5
- *
6
- * Security:
7
- * - XSS Protection: Uses DOMPurify (when available) with allowlisted tags/attrs; safe text-only fallback
8
- * - URL Validation: Prevents javascript: protocol injection
9
- * - CSP Compatible: No inline styles in HTML strings
10
- *
11
- * Architecture:
12
- * - Connects to SSE endpoint for real-time placement updates
13
- * - Initial fetch on load, then SSE for updates
14
- * - Caches placement content locally in memory
15
- * - Renders content into pre-defined UI slots (inline, not overlay)
16
- * - Tracks events (impression, click, conversion) asynchronously
17
- *
18
- * Key Differences from In-App Messages:
19
- * - INLINE content (part of layout), not overlays
20
- * - Content rendered immediately on slot registration
21
- * - No trigger rules (shown when slot loads)
22
- * - Supports banner, card, carousel, video, HTML content types
23
- */
24
- export interface PlacementContent {
25
- placement_id: string;
26
- variant_id: string;
27
- content_type: 'banner' | 'card' | 'carousel' | 'video' | 'html' | 'dynamic_injection';
28
- content: Record<string, any>;
29
- css_selector?: string;
30
- injection_mode?: 'replace' | 'append' | 'prepend';
31
- }
32
- export interface PlacementSlot {
33
- placementId: string;
34
- containerId: string;
35
- fallbackContent?: string;
36
- onRender?: (content: PlacementContent) => void;
37
- onError?: (error: Error) => void;
38
- }
39
- export interface AegisPlacementConfig {
40
- writeKey: string;
41
- apiHost?: string;
42
- userId?: string;
43
- contactId?: string;
44
- organizationId?: string;
45
- debugMode?: boolean;
46
- enableSSE?: boolean;
47
- /**
48
- * Workspace cascade reader. Host SDK sets this to
49
- * `() => aegis.getEffectiveWorkspaceId()` so placement
50
- * impression/click/conversion events arrive at the gateway with the
51
- * same workspace context the main analytics SDK uses. See
52
- * PLUGIN_HANDSHAKE_AUTOMATION_TRACKER.md §P1.b.
53
- */
54
- getWorkspaceId?: () => string | undefined;
55
- }
56
- export declare class AegisPlacementManager {
57
- private writeKey;
58
- private apiHost;
59
- private userId?;
60
- private contactId?;
61
- private organizationId?;
62
- private debugMode;
63
- private enableSSE;
64
- private getWorkspaceId?;
65
- private placements;
66
- private slots;
67
- private renderedSlots;
68
- private eventSource?;
69
- private isInitialized;
70
- private reconnectAttempts;
71
- private maxReconnectAttempts;
72
- constructor(config: AegisPlacementConfig);
73
- initialize(): Promise<void>;
74
- register(placementId: string, options: Omit<PlacementSlot, 'placementId'>): void;
75
- unregister(placementId: string): void;
76
- refreshPlacements(): Promise<void>;
77
- private renderAllSlots;
78
- private renderSlot;
79
- private renderBanner;
80
- private renderCard;
81
- private renderCarousel;
82
- private renderVideo;
83
- private renderHTML;
84
- private renderDynamicInjection;
85
- private renderFallback;
86
- private trackEvent;
87
- private connectSSE;
88
- private disconnectSSE;
89
- private attemptReconnect;
90
- private getDeviceType;
91
- private sanitizeUrl;
92
- private sanitizeColor;
93
- private sanitizeHTML;
94
- private log;
95
- destroy(): void;
96
- }
97
- //# sourceMappingURL=AegisPlacementManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AegisPlacementManager.d.ts","sourceRoot":"","sources":["../../src/placements/AegisPlacementManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,mBAAmB,CAAC;IACtF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;CACnD;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,cAAc,CAAC,CAA2B;IAElD,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,oBAAoB,CAAK;gBAErB,MAAM,EAAE,oBAAoB;IAWlC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBjC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,IAAI;IAiBhF,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAM/B,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4CxC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,UAAU;IAwDlB,OAAO,CAAC,YAAY;IA2EpB,OAAO,CAAC,UAAU;IAsElB,OAAO,CAAC,cAAc;IA6EtB,OAAO,CAAC,WAAW;IAmCnB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,sBAAsB;IAmE9B,OAAO,CAAC,cAAc;YAUR,UAAU;IAmDxB,OAAO,CAAC,UAAU;IAwDlB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,GAAG;IAMX,OAAO,IAAI,IAAI;CAQhB"}