@revturbine/sdk 0.7.8 → 0.7.9
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/growthbook.d.ts +119 -2
- package/dist/growthbook.js +1 -1
- package/dist/growthbook.js.map +1 -1
- package/dist/headless.d.ts +140 -43
- package/dist/headless.js +2 -2
- package/dist/headless.js.map +1 -1
- package/dist/index.d.ts +140 -43
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/optimizely.d.ts +416 -0
- package/dist/optimizely.js +2 -0
- package/dist/optimizely.js.map +1 -0
- package/dist/types/web-sdk/customer-side.d.ts +17 -1
- package/dist/types/web-sdk/customer-side.d.ts.map +1 -1
- package/dist/types/web-sdk/optimizely.d.ts +8 -0
- package/dist/types/web-sdk/optimizely.d.ts.map +1 -0
- package/dist/types/web-sdk/providers/basic-experiment-provider.d.ts.map +1 -1
- package/dist/types/web-sdk/providers/experiment-context.d.ts +20 -0
- package/dist/types/web-sdk/providers/experiment-context.d.ts.map +1 -0
- package/dist/types/web-sdk/providers/growthbook-experiment-provider.d.ts +3 -1
- package/dist/types/web-sdk/providers/growthbook-experiment-provider.d.ts.map +1 -1
- package/dist/types/web-sdk/providers/index.d.ts +3 -1
- package/dist/types/web-sdk/providers/index.d.ts.map +1 -1
- package/dist/types/web-sdk/providers/optimizely-experiment-provider.d.ts +50 -0
- package/dist/types/web-sdk/providers/optimizely-experiment-provider.d.ts.map +1 -0
- package/dist/types/web-sdk/providers/types.d.ts +1 -1
- package/dist/types/web-sdk/providers/types.d.ts.map +1 -1
- package/package.json +15 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimizely.d.ts","sourceRoot":"","sources":["../../../optimizely.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,4CAA4C,EAC5C,yBAAyB,GAC1B,MAAM,4CAA4C,CAAC;AACpD,YAAY,EACV,+BAA+B,EAC/B,qCAAqC,EACrC,2BAA2B,GAC5B,MAAM,4CAA4C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-experiment-provider.d.ts","sourceRoot":"","sources":["../../../../providers/basic-experiment-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,gFAAgF;AAChF,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC/D;;;;;;;OAOG;IACH,OAAO,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;CACrD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,kBAAkB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACrD,6EAA6E;IAC7E,eAAe,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAChD,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC;CACxF;AAED,0DAA0D;AAC1D,MAAM,MAAM,8BAA8B,GAAG,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAExF,8FAA8F;AAC9F,qBAAa,wCAAyC,SAAQ,KAAK;IACjE,mEAAmE;IACnE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,qEAAqE;IACrE,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,6DAA6D;IAC7D,QAAQ,CAAC,WAAW,EAAE,8BAA8B,CAAC;IAErD,kDAAkD;gBAEhD,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,8BAA8B,EAC7C,WAAW,EAAE,8BAA8B;CAY9C;AAED,gFAAgF;AAChF,MAAM,WAAW,iCAAiC;IAChD,8DAA8D;IAC9D,WAAW,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACtD,qFAAqF;IACrF,OAAO,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzC,oFAAoF;IACpF,WAAW,CAAC,EAAE,8BAA8B,CAAC;CAC9C;AAsCD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,uBAAuB,GAClC,MAAM,GAAG,SAAS,CAyBpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,6BAA6B,GACxC,uBAAuB,CAgBzB;AAED;;;GAGG;AACH,wBAAgB,wCAAwC,CACtD,OAAO,EAAE,iCAAiC,GACzC,4BAA4B,CAe9B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,oBAAoB,GAC5B,4BAA4B,
|
|
1
|
+
{"version":3,"file":"basic-experiment-provider.d.ts","sourceRoot":"","sources":["../../../../providers/basic-experiment-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,gFAAgF;AAChF,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC/D;;;;;;;OAOG;IACH,OAAO,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;CACrD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,kBAAkB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACrD,6EAA6E;IAC7E,eAAe,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAChD,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC;CACxF;AAED,0DAA0D;AAC1D,MAAM,MAAM,8BAA8B,GAAG,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAExF,8FAA8F;AAC9F,qBAAa,wCAAyC,SAAQ,KAAK;IACjE,mEAAmE;IACnE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,qEAAqE;IACrE,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,6DAA6D;IAC7D,QAAQ,CAAC,WAAW,EAAE,8BAA8B,CAAC;IAErD,kDAAkD;gBAEhD,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,8BAA8B,EAC7C,WAAW,EAAE,8BAA8B;CAY9C;AAED,gFAAgF;AAChF,MAAM,WAAW,iCAAiC;IAChD,8DAA8D;IAC9D,WAAW,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACtD,qFAAqF;IACrF,OAAO,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzC,oFAAoF;IACpF,WAAW,CAAC,EAAE,8BAA8B,CAAC;CAC9C;AAsCD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,uBAAuB,GAClC,MAAM,GAAG,SAAS,CAyBpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,6BAA6B,GACxC,uBAAuB,CAgBzB;AAED;;;GAGG;AACH,wBAAgB,wCAAwC,CACtD,OAAO,EAAE,iCAAiC,GACzC,4BAA4B,CAe9B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,oBAAoB,GAC5B,4BAA4B,CAqB9B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { EffectiveUserContextResolution, ExperimentAssignmentProvider, ExperimentProviderState, UserContextSnapshot } from '@revt-eng/core';
|
|
2
|
+
/** Controls aggregation of customer-owned experiment adapters. */
|
|
3
|
+
export interface CompositeExperimentProviderOptions {
|
|
4
|
+
/** Maximum time for one adapter resolution. Set to `0` to disable. */
|
|
5
|
+
timeoutMs?: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Combine customer-owned experiment adapters behind the registry's single
|
|
9
|
+
* `experiments` domain. Overlapping declared ownership is rejected for the
|
|
10
|
+
* affected handles instead of allowing registration order to choose a winner.
|
|
11
|
+
*/
|
|
12
|
+
export declare function createCompositeExperimentProvider(providers: readonly ExperimentAssignmentProvider[], options?: CompositeExperimentProviderOptions): ExperimentAssignmentProvider;
|
|
13
|
+
/**
|
|
14
|
+
* Materialize one ephemeral user context from caller context and normalized
|
|
15
|
+
* provider outcomes. The caller-owned object is never mutated.
|
|
16
|
+
*/
|
|
17
|
+
export declare function composeEffectiveExperimentContext<TContext extends UserContextSnapshot>(callerContext: Readonly<TContext>, providerState: ExperimentProviderState | undefined, contextRevision: string): EffectiveUserContextResolution & {
|
|
18
|
+
readonly userContext: Readonly<TContext>;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=experiment-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"experiment-context.d.ts","sourceRoot":"","sources":["../../../../providers/experiment-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,8BAA8B,EAC9B,4BAA4B,EAC5B,uBAAuB,EAGvB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAExB,kEAAkE;AAClE,MAAM,WAAW,kCAAkC;IACjD,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+FD;;;;GAIG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,SAAS,4BAA4B,EAAE,EAClD,OAAO,GAAE,kCAAuC,GAC/C,4BAA4B,CAwH9B;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,QAAQ,SAAS,mBAAmB,EACpF,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,EACjC,aAAa,EAAE,uBAAuB,GAAG,SAAS,EAClD,eAAe,EAAE,MAAM,GACtB,8BAA8B,GAAG;IAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;CAAE,CA+E/E"}
|
|
@@ -22,9 +22,11 @@ export interface GrowthBookExperimentAssignmentOptions {
|
|
|
22
22
|
client: Pick<GrowthBook<Record<string, string>>, 'evalFeature'>;
|
|
23
23
|
/** Explicit experiment-to-feature mappings; no naming convention is assumed. */
|
|
24
24
|
bindings: readonly GrowthBookExperimentBinding[];
|
|
25
|
+
/** Customer-controlled revision for feature/config changes. */
|
|
26
|
+
providerRevision?: string | number;
|
|
25
27
|
}
|
|
26
28
|
/** Machine-readable reasons a GrowthBook assignment cannot be normalized. */
|
|
27
|
-
export type GrowthBookAssignmentErrorReason = 'duplicate_experiment_handle' | 'unknown_feature' | 'invalid_variant' | 'unexpected_variant';
|
|
29
|
+
export type GrowthBookAssignmentErrorReason = 'duplicate_experiment_handle' | 'invalid_binding' | 'unknown_feature' | 'invalid_variant' | 'unexpected_variant';
|
|
28
30
|
/** Raised when GrowthBook cannot produce a valid normalized assignment. */
|
|
29
31
|
export declare class GrowthBookAssignmentError extends Error {
|
|
30
32
|
/** Stable reason suitable for logs and error handling. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"growthbook-experiment-provider.d.ts","sourceRoot":"","sources":["../../../../providers/growthbook-experiment-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,gBAAgB,CAAC;AAExB,6EAA6E;AAC7E,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,gBAAgB,EAAE,MAAM,CAAC;IACzB,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,wEAAwE;AACxE,MAAM,WAAW,qCAAqC;IACpD,uDAAuD;IACvD,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAChE,gFAAgF;IAChF,QAAQ,EAAE,SAAS,2BAA2B,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"growthbook-experiment-provider.d.ts","sourceRoot":"","sources":["../../../../providers/growthbook-experiment-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,gBAAgB,CAAC;AAExB,6EAA6E;AAC7E,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,gBAAgB,EAAE,MAAM,CAAC;IACzB,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,wEAAwE;AACxE,MAAM,WAAW,qCAAqC;IACpD,uDAAuD;IACvD,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAChE,gFAAgF;IAChF,QAAQ,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACjD,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAED,6EAA6E;AAC7E,MAAM,MAAM,+BAA+B,GACvC,6BAA6B,GAC7B,iBAAiB,GACjB,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,CAAC;AAEzB,2EAA2E;AAC3E,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,EAAE,+BAA+B,CAAC;IACjD,qDAAqD;IACrD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,0DAA0D;gBAExD,MAAM,EAAE,+BAA+B,EACvC,OAAO,EAAE,2BAA2B,EACpC,MAAM,EAAE,MAAM;CAWjB;AAuBD;;;;;;GAMG;AACH,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,qCAAqC,GAC7C,4BAA4B,CA2C9B"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
export type { DomainProviderName, DomainProvider, AnyDomainProvider, ResolvedProviderContext, ResolvedDomainType, TraitsNamespace, PlanProvider, PlanProviderState, EntitlementProvider, EntitlementProviderState, EntitlementUsageEntry, SegmentProvider, SegmentProviderState, ExperimentAssignmentProvider, ExperimentProvider, ExperimentProviderState, ContentProvider, ContentProviderState, MessageBlockSnapshot, PlacementPayloadSnapshot, RuleProvider, RuleProviderState, EntitlementRuleSnapshot, PlanRuleSnapshot, TraitsProvider, TraitsProviderState, TrialStatusTraits, TrialStatusProvider, UsageTraits, UsageTraitsProvider, ThemeProvider, ThemeProviderState, EventConsumer, EventConsumerProvider, EventConsumerProviderState, CtaHandler, CtaHandlerMap, CtaHandlerProvider, CtaHandlerProviderState, } from './types';
|
|
1
|
+
export type { DomainProviderName, DomainProvider, DomainProviderResolutionInput, AnyDomainProvider, ResolvedProviderContext, ResolvedDomainType, TraitsNamespace, PlanProvider, PlanProviderState, EntitlementProvider, EntitlementProviderState, EntitlementUsageEntry, SegmentProvider, SegmentProviderState, ExperimentAssignmentProvider, ExperimentProvider, ExperimentProviderState, ExperimentVariantNonAssignmentReason, ExperimentVariantSelection, EffectiveUserContextResolution, ContentProvider, ContentProviderState, MessageBlockSnapshot, PlacementPayloadSnapshot, RuleProvider, RuleProviderState, EntitlementRuleSnapshot, PlanRuleSnapshot, TraitsProvider, TraitsProviderState, TrialStatusTraits, TrialStatusProvider, UsageTraits, UsageTraitsProvider, ThemeProvider, ThemeProviderState, EventConsumer, EventConsumerProvider, EventConsumerProviderState, CtaHandler, CtaHandlerMap, CtaHandlerProvider, CtaHandlerProviderState, } from './types';
|
|
2
2
|
export { DomainProviderRegistry } from './registry';
|
|
3
|
+
export { composeEffectiveExperimentContext, createCompositeExperimentProvider, } from './experiment-context';
|
|
4
|
+
export type { CompositeExperimentProviderOptions } from './experiment-context';
|
|
3
5
|
export { ServerUserContextProvider, SERVER_TRAITS_DOMAIN, } from './server-user-context-provider';
|
|
4
6
|
export type { ServerUserContextSnapshot } from './server-user-context-provider';
|
|
5
7
|
export { createBasicExperimentProvider, createNativeExperimentAssignmentProvider, UnsupportedExperimentAssignmentUnitError, adaptExperimentVersionToBucketer, bucketSubject, } from './basic-experiment-provider';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../providers/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAElB,eAAe,EAEf,YAAY,EACZ,iBAAiB,EAEjB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EAErB,eAAe,EACf,oBAAoB,EAEpB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../providers/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,6BAA6B,EAC7B,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAElB,eAAe,EAEf,YAAY,EACZ,iBAAiB,EAEjB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EAErB,eAAe,EACf,oBAAoB,EAEpB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,EACvB,oCAAoC,EACpC,0BAA0B,EAC1B,8BAA8B,EAE9B,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EAExB,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAEhB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EAEnB,aAAa,EACb,kBAAkB,EAElB,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAE1B,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,EACL,iCAAiC,EACjC,iCAAiC,GAClC,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,kCAAkC,EAAE,MAAM,sBAAsB,CAAC;AAK/E,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAKhF,OAAO,EACL,6BAA6B,EAC7B,wCAAwC,EACxC,wCAAwC,EACxC,gCAAgC,EAChC,aAAa,GACd,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optimizely-backed experiment assignment provider.
|
|
3
|
+
*
|
|
4
|
+
* The customer injects an initialized client. The adapter contains no SDK
|
|
5
|
+
* credentials and is shipped only from the optional Optimizely entry point.
|
|
6
|
+
*/
|
|
7
|
+
import type { Client, UserAttributes } from '@optimizely/optimizely-sdk';
|
|
8
|
+
import type { DomainProviderResolutionInput, ExperimentAssignmentProvider } from '@revt-eng/core';
|
|
9
|
+
/** One RevTurbine experiment handle mapped to an Optimizely experiment key. */
|
|
10
|
+
export interface OptimizelyExperimentBinding {
|
|
11
|
+
/** Stable RevTurbine experiment handle used by decisions and telemetry. */
|
|
12
|
+
experimentHandle: string;
|
|
13
|
+
/** Experiment key configured in the customer-owned Optimizely project. */
|
|
14
|
+
experimentKey: string;
|
|
15
|
+
/** Optional allowlist that rejects unexpected Optimizely variation keys. */
|
|
16
|
+
allowedVariants?: readonly string[];
|
|
17
|
+
}
|
|
18
|
+
/** Options for the separately bundled Optimizely assignment adapter. */
|
|
19
|
+
export interface OptimizelyExperimentAssignmentOptions {
|
|
20
|
+
/** An initialized customer-owned Optimizely client. */
|
|
21
|
+
client: Pick<Client, 'getVariation'>;
|
|
22
|
+
/** Explicit experiment mappings; no naming convention is assumed. */
|
|
23
|
+
bindings: readonly OptimizelyExperimentBinding[];
|
|
24
|
+
/** Override how the Optimizely user id is derived from current context. */
|
|
25
|
+
userId?: (input: DomainProviderResolutionInput) => string | undefined;
|
|
26
|
+
/** Optional customer-owned Optimizely attributes for audience evaluation. */
|
|
27
|
+
attributes?: (input: DomainProviderResolutionInput) => UserAttributes | undefined;
|
|
28
|
+
/** Customer-controlled revision for Optimizely datafile/context changes. */
|
|
29
|
+
providerRevision?: string | number;
|
|
30
|
+
}
|
|
31
|
+
/** Machine-readable reasons an Optimizely assignment cannot be normalized. */
|
|
32
|
+
export type OptimizelyAssignmentErrorReason = 'duplicate_experiment_handle' | 'invalid_binding' | 'unexpected_variant';
|
|
33
|
+
/** Raised for invalid Optimizely mappings or variation values. */
|
|
34
|
+
export declare class OptimizelyAssignmentError extends Error {
|
|
35
|
+
/** Stable reason suitable for diagnostics and structured SDK outcomes. */
|
|
36
|
+
readonly reason: OptimizelyAssignmentErrorReason;
|
|
37
|
+
/** RevTurbine experiment whose mapping failed. */
|
|
38
|
+
readonly experimentHandle: string;
|
|
39
|
+
/** Optimizely experiment key used for lookup. */
|
|
40
|
+
readonly experimentKey: string;
|
|
41
|
+
/** Construct a named Optimizely normalization failure. */
|
|
42
|
+
constructor(reason: OptimizelyAssignmentErrorReason, binding: OptimizelyExperimentBinding, detail: string);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Create an assignment provider backed by an initialized Optimizely client.
|
|
46
|
+
* A null variation is retained as explicit non-enrollment and never converted
|
|
47
|
+
* to a control assignment.
|
|
48
|
+
*/
|
|
49
|
+
export declare function createOptimizelyExperimentAssignmentProvider(options: OptimizelyExperimentAssignmentOptions): ExperimentAssignmentProvider;
|
|
50
|
+
//# sourceMappingURL=optimizely-experiment-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimizely-experiment-provider.d.ts","sourceRoot":"","sources":["../../../../providers/optimizely-experiment-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EACV,6BAA6B,EAC7B,4BAA4B,EAE7B,MAAM,gBAAgB,CAAC;AAExB,+EAA+E;AAC/E,MAAM,WAAW,2BAA2B;IAC1C,2EAA2E;IAC3E,gBAAgB,EAAE,MAAM,CAAC;IACzB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,wEAAwE;AACxE,MAAM,WAAW,qCAAqC;IACpD,uDAAuD;IACvD,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrC,qEAAqE;IACrE,QAAQ,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACjD,2EAA2E;IAC3E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,MAAM,GAAG,SAAS,CAAC;IACtE,6EAA6E;IAC7E,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,cAAc,GAAG,SAAS,CAAC;IAClF,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAED,8EAA8E;AAC9E,MAAM,MAAM,+BAA+B,GACvC,6BAA6B,GAC7B,iBAAiB,GACjB,oBAAoB,CAAC;AAEzB,kEAAkE;AAClE,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE,+BAA+B,CAAC;IACjD,kDAAkD;IAClD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,0DAA0D;gBAExD,MAAM,EAAE,+BAA+B,EACvC,OAAO,EAAE,2BAA2B,EACpC,MAAM,EAAE,MAAM;CAWjB;AAuBD;;;;GAIG;AACH,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,qCAAqC,GAC7C,4BAA4B,CAyE9B"}
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
* This file maintains backward compatibility for web-sdk consumers.
|
|
5
5
|
* All canonical type definitions live in core/providers/types.ts.
|
|
6
6
|
*/
|
|
7
|
-
export type { TraitsNamespace, DomainProviderName, DomainProvider, PlanProviderState, PlanProvider, EntitlementUsageEntry, EntitlementProviderState, EntitlementProvider, SegmentProviderState, SegmentProvider, ExperimentProviderState, ExperimentAssignmentProvider, ExperimentProvider, MessageBlockSnapshot, PlacementPayloadSnapshot, ContentProviderState, ContentProvider, EntitlementRuleSnapshot, PlanRuleSnapshot, RuleProviderState, RuleProvider, TraitsProviderState, TraitsProvider, TrialStatusTraits, TrialStatusProvider, UsageTraits, UsageTraitsProvider, ThemeProviderState, ThemeProvider, EventConsumer, EventConsumerProviderState, EventConsumerProvider, CtaHandler, CtaHandlerMap, CtaHandlerProviderState, CtaHandlerProvider, ResolvedProviderContext, AnyDomainProvider, ResolvedDomainType, } from '@revt-eng/core';
|
|
7
|
+
export type { TraitsNamespace, DomainProviderName, DomainProvider, DomainProviderResolutionInput, PlanProviderState, PlanProvider, EntitlementUsageEntry, EntitlementProviderState, EntitlementProvider, SegmentProviderState, SegmentProvider, ExperimentProviderState, ExperimentAssignmentProvider, ExperimentProvider, ExperimentVariantNonAssignmentReason, ExperimentVariantSelection, EffectiveUserContextResolution, MessageBlockSnapshot, PlacementPayloadSnapshot, ContentProviderState, ContentProvider, EntitlementRuleSnapshot, PlanRuleSnapshot, RuleProviderState, RuleProvider, TraitsProviderState, TraitsProvider, TrialStatusTraits, TrialStatusProvider, UsageTraits, UsageTraitsProvider, ThemeProviderState, ThemeProvider, EventConsumer, EventConsumerProviderState, EventConsumerProvider, CtaHandler, CtaHandlerMap, CtaHandlerProviderState, CtaHandlerProvider, ResolvedProviderContext, AnyDomainProvider, ResolvedDomainType, } from '@revt-eng/core';
|
|
8
8
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,0BAA0B,EAC1B,qBAAqB,EACrB,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,6BAA6B,EAC7B,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EAClB,oCAAoC,EACpC,0BAA0B,EAC1B,8BAA8B,EAC9B,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,0BAA0B,EAC1B,qBAAqB,EACrB,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,gBAAgB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@revturbine/sdk",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.9",
|
|
4
4
|
"description": "RevTurbine customer-facing SDK — placement decisioning, entitlement checks, and usage tracking.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "pnpm@11.12.0",
|
|
@@ -20,15 +20,21 @@
|
|
|
20
20
|
"import": "./dist/growthbook.js",
|
|
21
21
|
"types": "./dist/growthbook.d.ts"
|
|
22
22
|
},
|
|
23
|
+
"./optimizely": {
|
|
24
|
+
"import": "./dist/optimizely.js",
|
|
25
|
+
"types": "./dist/optimizely.d.ts"
|
|
26
|
+
},
|
|
23
27
|
"./source": "./index.ts",
|
|
24
28
|
"./source/headless": "./headless.ts",
|
|
25
|
-
"./source/growthbook": "./growthbook.ts"
|
|
29
|
+
"./source/growthbook": "./growthbook.ts",
|
|
30
|
+
"./source/optimizely": "./optimizely.ts"
|
|
26
31
|
},
|
|
27
32
|
"files": [
|
|
28
33
|
"dist"
|
|
29
34
|
],
|
|
30
35
|
"peerDependencies": {
|
|
31
36
|
"@growthbook/growthbook": ">=1.0.0",
|
|
37
|
+
"@optimizely/optimizely-sdk": ">=6.0.0",
|
|
32
38
|
"react": ">=18",
|
|
33
39
|
"react-dom": ">=18"
|
|
34
40
|
},
|
|
@@ -36,6 +42,9 @@
|
|
|
36
42
|
"@growthbook/growthbook": {
|
|
37
43
|
"optional": true
|
|
38
44
|
},
|
|
45
|
+
"@optimizely/optimizely-sdk": {
|
|
46
|
+
"optional": true
|
|
47
|
+
},
|
|
39
48
|
"react": {
|
|
40
49
|
"optional": true
|
|
41
50
|
},
|
|
@@ -45,9 +54,10 @@
|
|
|
45
54
|
},
|
|
46
55
|
"devDependencies": {
|
|
47
56
|
"@growthbook/growthbook": "^1.7.0",
|
|
48
|
-
"@
|
|
49
|
-
"@revt-eng/
|
|
50
|
-
"@revt-eng/schema
|
|
57
|
+
"@optimizely/optimizely-sdk": "^6.5.0",
|
|
58
|
+
"@revt-eng/core": "0.1.267",
|
|
59
|
+
"@revt-eng/schema": "0.1.267",
|
|
60
|
+
"@revt-eng/schema-external": "0.1.267",
|
|
51
61
|
"@types/react": "^19.2.17",
|
|
52
62
|
"@types/react-dom": "^19.2.3",
|
|
53
63
|
"openapi-fetch": "^0.17.0",
|