@encorekit/web-sdk 1.1.19 → 1.1.20

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 (76) 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/src/App.tsx +1 -1
  14. package/examples/svelte/src/App.svelte +0 -2
  15. package/examples/vanilla-js/index.html +0 -2
  16. package/examples/vue/src/App.vue +0 -2
  17. package/package.json +10 -8
  18. package/types/analytics/AnalyticsClient.d.ts +11 -3
  19. package/types/analytics/AnalyticsClient.d.ts.map +1 -1
  20. package/types/analytics/events.d.ts +12 -1
  21. package/types/analytics/events.d.ts.map +1 -1
  22. package/types/analytics/models.d.ts +11 -8
  23. package/types/analytics/models.d.ts.map +1 -1
  24. package/types/analytics/transport.d.ts +23 -0
  25. package/types/analytics/transport.d.ts.map +1 -0
  26. package/types/api/APIClient.d.ts +1 -1
  27. package/types/api/APIClient.d.ts.map +1 -1
  28. package/types/api/contract.d.ts +32 -0
  29. package/types/api/contract.d.ts.map +1 -0
  30. package/types/api/generated/types.d.ts +4509 -0
  31. package/types/api/generated/types.d.ts.map +1 -0
  32. package/types/api/models.d.ts +45 -128
  33. package/types/api/models.d.ts.map +1 -1
  34. package/types/core/Configuration.d.ts +2 -2
  35. package/types/core/Configuration.d.ts.map +1 -1
  36. package/types/core/Encore.d.ts +77 -4
  37. package/types/core/Encore.d.ts.map +1 -1
  38. package/types/core/PlacementBuilder.d.ts +14 -9
  39. package/types/core/PlacementBuilder.d.ts.map +1 -1
  40. package/types/core/TransactionStore.d.ts +35 -0
  41. package/types/core/TransactionStore.d.ts.map +1 -0
  42. package/types/core/version.d.ts +1 -1
  43. package/types/experiments/ExperimentManager.d.ts +43 -0
  44. package/types/experiments/ExperimentManager.d.ts.map +1 -0
  45. package/types/experiments/ExposureOutbox.d.ts +37 -0
  46. package/types/experiments/ExposureOutbox.d.ts.map +1 -0
  47. package/types/experiments/bucketing.d.ts +33 -0
  48. package/types/experiments/bucketing.d.ts.map +1 -0
  49. package/types/experiments/types.d.ts +60 -0
  50. package/types/experiments/types.d.ts.map +1 -0
  51. package/types/index.d.ts +1 -0
  52. package/types/index.d.ts.map +1 -1
  53. package/types/react.d.ts +1 -3
  54. package/types/react.d.ts.map +1 -1
  55. package/types/types.d.ts +229 -17
  56. package/types/types.d.ts.map +1 -1
  57. package/types/ui/OfferCarousel.d.ts +14 -3
  58. package/types/ui/OfferCarousel.d.ts.map +1 -1
  59. package/types/ui/OfferModal.d.ts +6 -0
  60. package/types/ui/OfferModal.d.ts.map +1 -1
  61. package/types/ui/RedemptionScreen.d.ts +33 -0
  62. package/types/ui/RedemptionScreen.d.ts.map +1 -0
  63. package/types/ui/ThankYouLayout.d.ts +35 -0
  64. package/types/ui/ThankYouLayout.d.ts.map +1 -0
  65. package/types/ui/styles.d.ts.map +1 -1
  66. package/examples/react/.env.local +0 -1
  67. package/types/__tests__/PlacementBuilder.test.d.ts +0 -2
  68. package/types/__tests__/PlacementBuilder.test.d.ts.map +0 -1
  69. package/types/__tests__/SuccessScreen.test.d.ts +0 -2
  70. package/types/__tests__/SuccessScreen.test.d.ts.map +0 -1
  71. package/types/__tests__/react.test.d.ts +0 -2
  72. package/types/__tests__/react.test.d.ts.map +0 -1
  73. package/types/__tests__/styles.test.d.ts +0 -2
  74. package/types/__tests__/styles.test.d.ts.map +0 -1
  75. package/types/ui/SuccessScreen.d.ts +0 -35
  76. package/types/ui/SuccessScreen.d.ts.map +0 -1
@@ -1,13 +1,21 @@
1
1
  /**
2
2
  * Analytics Client
3
- * Fire-and-forget event dispatch to the analytics API
3
+ * Fire-and-forget event dispatch to the analytics API.
4
+ *
5
+ * Includes ingest-side dedup for noisy lifecycle/identity events: a 30-day
6
+ * audit showed `user_identified` was emitting per-session and consuming a
7
+ * disproportionate share of the analytics pipe. We throttle to one emit
8
+ * per distinct_id per 24h on the SDK side so the noise never leaves the
9
+ * client.
4
10
  */
5
11
  import type { AnalyticsEvent } from './models';
12
+ import type { StorageManager } from '../core/StorageManager';
6
13
  export declare class AnalyticsClient {
7
14
  #private;
8
- constructor(apiKey: string, analyticsBaseURL: string);
15
+ constructor(apiKey: string, analyticsBaseURL: string, storage?: StorageManager);
9
16
  /**
10
- * Track an analytics event (fire-and-forget)
17
+ * Track an analytics event (fire-and-forget).
18
+ * Throttles dedup-eligible events; silently drops UX never blocks on this.
11
19
  */
12
20
  track(event: AnalyticsEvent): void;
13
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AnalyticsClient.d.ts","sourceRoot":"","sources":["../../src/analytics/AnalyticsClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,UAAU,CAAC;AAK9D,qBAAa,eAAe;;gBAId,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;IAKpD;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CA4CnC"}
1
+ {"version":3,"file":"AnalyticsClient.d.ts","sourceRoot":"","sources":["../../src/analytics/AnalyticsClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAgB7D,qBAAa,eAAe;;gBAKd,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IAM9E;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CA6CnC"}
@@ -58,6 +58,17 @@ export declare function offerTimeSpent(distinctId: string, params: {
58
58
  presentationId: string;
59
59
  variantId?: string;
60
60
  }): AnalyticsEvent;
61
- export declare function applyCreditsClicked(distinctId: string, creditsApplied: number, userId: string, variantId?: string): AnalyticsEvent;
61
+ /**
62
+ * Exposure at the offer trigger — logged for BOTH treatment and control to
63
+ * establish the NCL A/B denominator. Cross-platform contract: event name and
64
+ * property keys match iOS `Experiment+Outbox.swift` / Android
65
+ * `ExperimentExposureEvent` verbatim (BigQuery joins on these literals). The
66
+ * envelope adds platform/sdk_version/app_bundle_id; distinct_id == appAccountId.
67
+ */
68
+ export declare function experimentExposure(appAccountId: string, params: {
69
+ experiment: string;
70
+ cohort: string;
71
+ assignmentVersion: number;
72
+ }): AnalyticsEvent;
62
73
  export declare function sdkError(distinctId: string, errorType: string, errorDescription: string, context?: string): AnalyticsEvent;
63
74
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/analytics/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/analytics/events.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,17 @@
1
1
  /**
2
2
  * Analytics Types
3
- * Types for analytics event tracking
3
+ *
4
+ * `EventEnvelope` is the on-the-wire analytics ingest shape and is now DERIVED
5
+ * from the backend contract (POST /v1/events request, single-event form) via
6
+ * `./../api/contract`. This is the shape whose `event_id: uuid` requirement the
7
+ * `sdk_experiment_exposure` bug violated — see AnalyticsEventEnvelopeSchema for
8
+ * the runtime validator that now guards it at the boundary.
9
+ *
10
+ * `AnalyticsEvent` is the SDK-internal event shape (pre-envelope) — not a
11
+ * contract type.
4
12
  */
5
- export interface EventEnvelope {
6
- event_id: string;
7
- event_name: string;
8
- event_timestamp: string;
9
- distinct_id: string;
10
- properties: Record<string, unknown>;
11
- }
13
+ import type { AnalyticsEventEnvelope } from '../api/contract';
14
+ export type EventEnvelope = AnalyticsEventEnvelope;
12
15
  export interface AnalyticsEvent {
13
16
  name: string;
14
17
  distinctId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/analytics/models.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/analytics/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9D,MAAM,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Shared analytics wire transport: the single source of truth for the event
3
+ * envelope shape and the POST /events request (endpoint + auth headers).
4
+ *
5
+ * Both the fire-and-forget `AnalyticsClient` and the reliable `ExposureOutbox`
6
+ * build on these so the wire contract (metadata fields + auth) lives in one place.
7
+ */
8
+ import type { AnalyticsEvent, EventEnvelope } from './models';
9
+ /**
10
+ * Wrap an event in the analytics wire envelope, injecting the shared web metadata
11
+ * (platform, sdk_version, app_bundle_id). `eventId` defaults to a fresh UUID;
12
+ * callers needing idempotent retries pass a stable id.
13
+ */
14
+ export declare function buildEnvelope(event: AnalyticsEvent, eventId?: string): EventEnvelope;
15
+ /**
16
+ * POST an envelope to the analytics ingest endpoint. Returns the fetch promise so
17
+ * callers choose their own delivery policy (fire-and-forget vs. await + retry).
18
+ * `keepalive` lets the request outlive document unload (used for exposure flush).
19
+ */
20
+ export declare function postEvent(baseURL: string, apiKey: string, envelope: EventEnvelope, options?: {
21
+ keepalive?: boolean;
22
+ }): Promise<Response>;
23
+ //# sourceMappingURL=transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/analytics/transport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAI9D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,GAAE,MAAuB,GAAG,aAAa,CAcpG;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,QAAQ,CAAC,CAWnB"}
@@ -58,7 +58,7 @@ export declare class APIClient {
58
58
  */
59
59
  checkVerificationStatus(transactionId: string): Promise<{
60
60
  status: VerificationStatus;
61
- raw: BackendVerificationStatus;
61
+ raw: BackendVerificationStatus | null;
62
62
  }>;
63
63
  /**
64
64
  * Initialize user on the backend
@@ -1 +1 @@
1
- {"version":3,"file":"APIClient.d.ts","sourceRoot":"","sources":["../../src/api/APIClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAe,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE7F,OAAO,KAAK,EAEV,wBAAwB,EAIxB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,yBAAyB,EAC1B,MAAM,UAAU,CAAC;AAQlB,UAAU,cAAc;IACtB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAQD,qBAAa,SAAS;;gBAKR,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAM3C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAW7E;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAY9F;;OAEG;IACG,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgP/F;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;IA6ChG;;OAEG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAa7F;;OAEG;IACG,eAAe,CACnB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,aAAa,GAAG,OAAO,GACjC,OAAO,CAAC,OAAO,CAAC;IAanB;;OAEG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAoE/D;;OAEG;IACG,uBAAuB,CAC3B,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,kBAAkB,CAAC;QAAC,GAAG,EAAE,yBAAyB,CAAA;KAAE,CAAC;IAc1E;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7C,OAAO,CAAC,gBAAgB,CAAC;IAa5B;;OAEG;IACG,YAAY,CAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7C,OAAO,CAAC,oBAAoB,CAAC;IAchC;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAYpF;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;QAClD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnC,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjB;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAW3D"}
1
+ {"version":3,"file":"APIClient.d.ts","sourceRoot":"","sources":["../../src/api/APIClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Contract type barrel — the single seam between the SDK and the backend contract.
3
+ *
4
+ * Friendly-named, declaration-safe TYPES sourced from the generated
5
+ * `./generated/types.ts` (openapi-typescript over the merged + drift-gated
6
+ * OpenAPI). Import contract TYPES from HERE so a schema rename in the generator
7
+ * surfaces as one compile error in this file.
8
+ *
9
+ * Two generated artifacts, one contract (both produced by `make sync-contract`):
10
+ * - `./generated/types.ts` — concrete TS types (this file re-exports them).
11
+ * Declaration-safe, so they ship in the SDK's public `.d.ts`.
12
+ * - `./generated/schemas.ts` — runtime zod validators, used by tests to
13
+ * `.parse()` fixtures at the boundary (the link-B guarantee). Kept OUT of the
14
+ * declaration graph: giant zod schemas cannot serialize into `.d.ts` (TS7056),
15
+ * so ONLY tests / runtime validators import them, never production sources.
16
+ */
17
+ import type { components } from './generated/types';
18
+ type Schema = components['schemas'];
19
+ export type AnalyticsEventEnvelope = Schema['AnalyticsEventEnvelope'];
20
+ export type ConfigResponse = Schema['ConfigResponse'];
21
+ export type OffersSearchResponse = Schema['OffersSearchResponse'];
22
+ export type Campaign = Schema['Campaign'];
23
+ export type Creative = Schema['Creative'];
24
+ export type Organization = Schema['Organization'];
25
+ export type TransactionResponse = Schema['TransactionResponse'];
26
+ export type SignalResponse = Schema['SignalResponse'];
27
+ export type EntitlementsResponse = Schema['EntitlementsResponse'];
28
+ export type VerificationStatusResponse = Schema['VerificationStatusResponse'];
29
+ export type InitUserResponse = Schema['InitUserResponse'];
30
+ export type IdentifyUserResponse = Schema['IdentifyUserResponse'];
31
+ export {};
32
+ //# sourceMappingURL=contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/api/contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,KAAK,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACtD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAClE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAC1C,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAC1C,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAClD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACtD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAClE,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAC9E,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC1D,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC"}