@encorekit/web-sdk 1.1.19 → 1.1.21

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 (86) hide show
  1. package/README.md +63 -3
  2. package/dist/cjs/index.cjs +1 -1
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/esm/index.js +1 -1
  5. package/dist/esm/index.js.map +1 -1
  6. package/dist/umd/encore.min.js +1 -1
  7. package/dist/umd/encore.min.js.map +1 -1
  8. package/embed/README.md +1 -1
  9. package/examples/angular/src/app/app.component.ts +0 -1
  10. package/examples/angular/src/app/encore.service.ts +1 -2
  11. package/examples/ios-webview/EncoreWebViewBridge.swift +3 -10
  12. package/examples/ios-webview/README.md +0 -20
  13. package/examples/react/.env +1 -0
  14. package/examples/react/src/App.tsx +1 -1
  15. package/examples/svelte/src/App.svelte +0 -2
  16. package/examples/vanilla-js/index.html +0 -2
  17. package/examples/vue/src/App.vue +0 -2
  18. package/package.json +10 -8
  19. package/types/analytics/AnalyticsClient.d.ts +11 -3
  20. package/types/analytics/AnalyticsClient.d.ts.map +1 -1
  21. package/types/analytics/events.d.ts +30 -1
  22. package/types/analytics/events.d.ts.map +1 -1
  23. package/types/analytics/models.d.ts +11 -8
  24. package/types/analytics/models.d.ts.map +1 -1
  25. package/types/analytics/transport.d.ts +23 -0
  26. package/types/analytics/transport.d.ts.map +1 -0
  27. package/types/api/APIClient.d.ts +1 -1
  28. package/types/api/APIClient.d.ts.map +1 -1
  29. package/types/api/contract.d.ts +32 -0
  30. package/types/api/contract.d.ts.map +1 -0
  31. package/types/api/generated/types.d.ts +4519 -0
  32. package/types/api/generated/types.d.ts.map +1 -0
  33. package/types/api/models.d.ts +45 -128
  34. package/types/api/models.d.ts.map +1 -1
  35. package/types/core/Configuration.d.ts +2 -2
  36. package/types/core/Configuration.d.ts.map +1 -1
  37. package/types/core/DisplayResolver.d.ts +121 -0
  38. package/types/core/DisplayResolver.d.ts.map +1 -0
  39. package/types/core/Encore.d.ts +77 -4
  40. package/types/core/Encore.d.ts.map +1 -1
  41. package/types/core/PlacementBuilder.d.ts +14 -9
  42. package/types/core/PlacementBuilder.d.ts.map +1 -1
  43. package/types/core/TransactionStore.d.ts +35 -0
  44. package/types/core/TransactionStore.d.ts.map +1 -0
  45. package/types/core/version.d.ts +1 -1
  46. package/types/experiments/ExperimentManager.d.ts +43 -0
  47. package/types/experiments/ExperimentManager.d.ts.map +1 -0
  48. package/types/experiments/ExposureOutbox.d.ts +37 -0
  49. package/types/experiments/ExposureOutbox.d.ts.map +1 -0
  50. package/types/experiments/bucketing.d.ts +33 -0
  51. package/types/experiments/bucketing.d.ts.map +1 -0
  52. package/types/experiments/types.d.ts +60 -0
  53. package/types/experiments/types.d.ts.map +1 -0
  54. package/types/index.d.ts +1 -0
  55. package/types/index.d.ts.map +1 -1
  56. package/types/react.d.ts +1 -3
  57. package/types/react.d.ts.map +1 -1
  58. package/types/types.d.ts +284 -18
  59. package/types/types.d.ts.map +1 -1
  60. package/types/ui/OfferCard.d.ts.map +1 -1
  61. package/types/ui/OfferCarousel.d.ts +14 -3
  62. package/types/ui/OfferCarousel.d.ts.map +1 -1
  63. package/types/ui/OfferModal.d.ts +6 -0
  64. package/types/ui/OfferModal.d.ts.map +1 -1
  65. package/types/ui/PrimerScreen.d.ts +34 -0
  66. package/types/ui/PrimerScreen.d.ts.map +1 -0
  67. package/types/ui/RedemptionScreen.d.ts +57 -0
  68. package/types/ui/RedemptionScreen.d.ts.map +1 -0
  69. package/types/ui/ThankYouLayout.d.ts +35 -0
  70. package/types/ui/ThankYouLayout.d.ts.map +1 -0
  71. package/types/ui/brandComponents.d.ts +45 -0
  72. package/types/ui/brandComponents.d.ts.map +1 -0
  73. package/types/ui/safeImageSrc.d.ts +15 -0
  74. package/types/ui/safeImageSrc.d.ts.map +1 -0
  75. package/types/ui/styles.d.ts.map +1 -1
  76. package/examples/react/.env.local +0 -1
  77. package/types/__tests__/PlacementBuilder.test.d.ts +0 -2
  78. package/types/__tests__/PlacementBuilder.test.d.ts.map +0 -1
  79. package/types/__tests__/SuccessScreen.test.d.ts +0 -2
  80. package/types/__tests__/SuccessScreen.test.d.ts.map +0 -1
  81. package/types/__tests__/react.test.d.ts +0 -2
  82. package/types/__tests__/react.test.d.ts.map +0 -1
  83. package/types/__tests__/styles.test.d.ts +0 -2
  84. package/types/__tests__/styles.test.d.ts.map +0 -1
  85. package/types/ui/SuccessScreen.d.ts +0 -35
  86. package/types/ui/SuccessScreen.d.ts.map +0 -1
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Scheme guard for every remote image the SDK renders (offer banners, merchant
3
+ * logos, the dual-brand lockup tiles). Display URLs arrive from remote config,
4
+ * placement options, and persisted transaction snapshots — none of which guarantee
5
+ * a validated URL. `<img src>` cannot execute script, but an arbitrary scheme still
6
+ * hurts: `http:` trips mixed-content on an https publisher page (broken render or
7
+ * CSP violation report), and any URL turns a render into an outbound GET beacon.
8
+ *
9
+ * Contract: https URLs pass through; http is tolerated for localhost/loopback only
10
+ * (local dev); everything else — including data:, blob:, javascript:, protocol-
11
+ * relative and unparseable strings — is rejected. Callers fall back to their
12
+ * placeholder (monogram tile / placeholder banner) on rejection.
13
+ */
14
+ export declare function safeImageSrc(url: string | undefined): string | undefined;
15
+ //# sourceMappingURL=safeImageSrc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeImageSrc.d.ts","sourceRoot":"","sources":["../../src/ui/safeImageSrc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAaxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,eAAO,MAAM,OAAO;;;CAGV,CAAC;AAGX,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAqvBD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,GAAE,cAAmB,GAAG,IAAI,CAgB7D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAMnC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAUvD;AAED;;GAEG;AACH,wBAAgB,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAE/C;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7C"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,eAAO,MAAM,OAAO;;;CAGV,CAAC;AAGX,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAi9CD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,GAAE,cAAmB,GAAG,IAAI,CAgB7D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAMnC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAUvD;AAED;;GAEG;AACH,wBAAgB,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAE/C;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7C"}
@@ -1 +0,0 @@
1
- VITE_ENCORE_API_KEY=pk_test_s71ycgmiukgc9myuvnv886lz
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=PlacementBuilder.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlacementBuilder.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/PlacementBuilder.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=SuccessScreen.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SuccessScreen.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/SuccessScreen.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=react.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/react.test.tsx"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=styles.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/styles.test.ts"],"names":[],"mappings":""}
@@ -1,35 +0,0 @@
1
- /**
2
- * Success Screen Component
3
- * Displays success feedback after entitlement is granted
4
- */
5
- import { EntitlementType } from '../types';
6
- interface SuccessScreenConfig {
7
- entitlement: EntitlementType;
8
- titleText?: string;
9
- subtitleText?: string;
10
- buttonText?: string;
11
- autoDismissMs?: number;
12
- typeText?: string;
13
- amountText?: string;
14
- }
15
- interface SuccessScreenEventMap extends Record<string, unknown> {
16
- continue: undefined;
17
- }
18
- export declare class SuccessScreen {
19
- #private;
20
- constructor(config: SuccessScreenConfig);
21
- /**
22
- * Render the success screen
23
- */
24
- render(): HTMLElement;
25
- /**
26
- * Subscribe to events
27
- */
28
- on<K extends keyof SuccessScreenEventMap>(event: K, handler: (payload: SuccessScreenEventMap[K]) => void): () => void;
29
- /**
30
- * Destroy the success screen
31
- */
32
- destroy(): void;
33
- }
34
- export {};
35
- //# sourceMappingURL=SuccessScreen.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SuccessScreen.d.ts","sourceRoot":"","sources":["../../src/ui/SuccessScreen.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3C,UAAU,mBAAmB;IAC3B,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,qBAAsB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,qBAAa,aAAa;;gBAMZ,MAAM,EAAE,mBAAmB;IAKvC;;OAEG;IACH,MAAM,IAAI,WAAW;IAgDrB;;OAEG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,qBAAqB,EACtC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,KAAK,IAAI,GACnD,MAAM,IAAI;IAIb;;OAEG;IACH,OAAO,IAAI,IAAI;CAiGhB"}