@active-reach/web-sdk 1.7.2 → 1.7.4
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-sw.js +1 -1
- package/dist/aegis.min.js +1 -1
- package/dist/aegis.min.js.map +1 -1
- package/dist/inapp/AegisInAppManager.d.ts +19 -0
- package/dist/inapp/AegisInAppManager.d.ts.map +1 -1
- package/dist/index.js +38 -5
- package/dist/index.js.map +1 -1
- package/dist/push/AegisWebPush.d.ts +1 -0
- package/dist/push/AegisWebPush.d.ts.map +1 -1
- package/dist/push/AegisWebPush.js +33 -0
- package/dist/push/AegisWebPush.js.map +1 -1
- package/package.json +1 -1
|
@@ -186,6 +186,25 @@ export declare class AegisInAppManager {
|
|
|
186
186
|
private createOverlay;
|
|
187
187
|
private createCTAButton;
|
|
188
188
|
private addCloseButton;
|
|
189
|
+
/**
|
|
190
|
+
* Navigate to a campaign CTA URL.
|
|
191
|
+
*
|
|
192
|
+
* Dispatches a cancellable `aegis:campaign-click` CustomEvent so host
|
|
193
|
+
* apps (e.g., the storefront SPA) can intercept and route in-place via
|
|
194
|
+
* their client-side router, avoiding a full page reload that re-runs
|
|
195
|
+
* SSR + re-renders the location picker / banner / cart drawer state.
|
|
196
|
+
*
|
|
197
|
+
* The host calls `event.preventDefault()` to suppress the hard nav and
|
|
198
|
+
* handle the URL itself. If no listener calls preventDefault, the SDK
|
|
199
|
+
* falls through to `window.location.href` so plain HTML pages without a
|
|
200
|
+
* SPA still get the user to the destination.
|
|
201
|
+
*
|
|
202
|
+
* Industry parallel: CleverTap dispatches `clevertap-deeplink-click`,
|
|
203
|
+
* MoEngage dispatches `MoE_inappRedirect`. The pattern lets the same
|
|
204
|
+
* SDK serve both vanilla websites (full nav fallback) and SPAs
|
|
205
|
+
* (in-place state change) without per-host configuration.
|
|
206
|
+
*/
|
|
207
|
+
private navigateToCampaignAction;
|
|
189
208
|
private renderBanner;
|
|
190
209
|
private renderModal;
|
|
191
210
|
private renderFullScreen;
|
|
@@ -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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"}
|
package/dist/index.js
CHANGED
|
@@ -1514,6 +1514,39 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1514
1514
|
});
|
|
1515
1515
|
container.appendChild(close);
|
|
1516
1516
|
}
|
|
1517
|
+
/**
|
|
1518
|
+
* Navigate to a campaign CTA URL.
|
|
1519
|
+
*
|
|
1520
|
+
* Dispatches a cancellable `aegis:campaign-click` CustomEvent so host
|
|
1521
|
+
* apps (e.g., the storefront SPA) can intercept and route in-place via
|
|
1522
|
+
* their client-side router, avoiding a full page reload that re-runs
|
|
1523
|
+
* SSR + re-renders the location picker / banner / cart drawer state.
|
|
1524
|
+
*
|
|
1525
|
+
* The host calls `event.preventDefault()` to suppress the hard nav and
|
|
1526
|
+
* handle the URL itself. If no listener calls preventDefault, the SDK
|
|
1527
|
+
* falls through to `window.location.href` so plain HTML pages without a
|
|
1528
|
+
* SPA still get the user to the destination.
|
|
1529
|
+
*
|
|
1530
|
+
* Industry parallel: CleverTap dispatches `clevertap-deeplink-click`,
|
|
1531
|
+
* MoEngage dispatches `MoE_inappRedirect`. The pattern lets the same
|
|
1532
|
+
* SDK serve both vanilla websites (full nav fallback) and SPAs
|
|
1533
|
+
* (in-place state change) without per-host configuration.
|
|
1534
|
+
*/
|
|
1535
|
+
navigateToCampaignAction(campaign, safeUrl) {
|
|
1536
|
+
if (typeof window === "undefined") return;
|
|
1537
|
+
const event = new CustomEvent("aegis:campaign-click", {
|
|
1538
|
+
detail: {
|
|
1539
|
+
campaign_id: campaign.id,
|
|
1540
|
+
campaign_type: campaign.type,
|
|
1541
|
+
action_url: safeUrl
|
|
1542
|
+
},
|
|
1543
|
+
cancelable: true
|
|
1544
|
+
});
|
|
1545
|
+
const proceeded = window.dispatchEvent(event);
|
|
1546
|
+
if (proceeded && !event.defaultPrevented) {
|
|
1547
|
+
window.location.href = safeUrl;
|
|
1548
|
+
}
|
|
1549
|
+
}
|
|
1517
1550
|
renderBanner(campaign) {
|
|
1518
1551
|
const banner = document.createElement("div");
|
|
1519
1552
|
banner.className = "aegis-in-app-banner";
|
|
@@ -1577,7 +1610,7 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1577
1610
|
this.trackEvent(campaign.id, "clicked");
|
|
1578
1611
|
const safeUrl = this.sanitizeUrl(campaign.action_url);
|
|
1579
1612
|
if (safeUrl) {
|
|
1580
|
-
|
|
1613
|
+
this.navigateToCampaignAction(campaign, safeUrl);
|
|
1581
1614
|
}
|
|
1582
1615
|
this.removeBanner(banner);
|
|
1583
1616
|
});
|
|
@@ -1679,7 +1712,7 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1679
1712
|
this.trackEvent(campaign.id, "clicked");
|
|
1680
1713
|
const safeUrl = this.sanitizeUrl(campaign.action_url);
|
|
1681
1714
|
if (safeUrl) {
|
|
1682
|
-
|
|
1715
|
+
this.navigateToCampaignAction(campaign, safeUrl);
|
|
1683
1716
|
}
|
|
1684
1717
|
this.removeModal(overlay);
|
|
1685
1718
|
});
|
|
@@ -1768,7 +1801,7 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1768
1801
|
this.trackEvent(campaign.id, "clicked");
|
|
1769
1802
|
const safeUrl = this.sanitizeUrl(campaign.action_url);
|
|
1770
1803
|
if (safeUrl) {
|
|
1771
|
-
|
|
1804
|
+
this.navigateToCampaignAction(campaign, safeUrl);
|
|
1772
1805
|
}
|
|
1773
1806
|
this.removeModal(overlay);
|
|
1774
1807
|
});
|
|
@@ -1871,7 +1904,7 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1871
1904
|
this.trackEvent(campaign.id, "clicked");
|
|
1872
1905
|
const safeUrl = this.sanitizeUrl(campaign.action_url);
|
|
1873
1906
|
if (safeUrl) {
|
|
1874
|
-
|
|
1907
|
+
this.navigateToCampaignAction(campaign, safeUrl);
|
|
1875
1908
|
}
|
|
1876
1909
|
this.removeModal(overlay);
|
|
1877
1910
|
});
|
|
@@ -1968,7 +2001,7 @@ const _AegisInAppManager = class _AegisInAppManager {
|
|
|
1968
2001
|
this.trackEvent(campaign.id, "clicked");
|
|
1969
2002
|
const safeUrl = this.sanitizeUrl(campaign.action_url);
|
|
1970
2003
|
if (safeUrl) {
|
|
1971
|
-
|
|
2004
|
+
this.navigateToCampaignAction(campaign, safeUrl);
|
|
1972
2005
|
}
|
|
1973
2006
|
this.removeModal(overlay);
|
|
1974
2007
|
});
|