@openfeature/web-sdk
Advanced tools
Comparing version 0.0.2-experimental to 0.1.0-experimental
@@ -409,8 +409,7 @@ "use strict"; | ||
} | ||
getClient(name, version, context) { | ||
getClient(name, version) { | ||
return new OpenFeatureClient( | ||
() => this._provider, | ||
() => this._logger, | ||
{ name, version }, | ||
context | ||
{ name, version } | ||
); | ||
@@ -423,3 +422,3 @@ } | ||
var OpenFeatureClient = class { | ||
constructor(providerAccessor, globalLogger, options, context = {}) { | ||
constructor(providerAccessor, globalLogger, options) { | ||
this.providerAccessor = providerAccessor; | ||
@@ -433,3 +432,2 @@ this.globalLogger = globalLogger; | ||
}; | ||
this._context = context; | ||
this.attachListeners(); | ||
@@ -459,6 +457,6 @@ window.dispatchEvent(new CustomEvent("providerChanged" /* ProviderChanged */)); | ||
} | ||
getBooleanValue(flagKey, defaultValue, context, options) { | ||
return this.getBooleanDetails(flagKey, defaultValue, context, options).value; | ||
getBooleanValue(flagKey, defaultValue, options) { | ||
return this.getBooleanDetails(flagKey, defaultValue, options).value; | ||
} | ||
getBooleanDetails(flagKey, defaultValue, context, options) { | ||
getBooleanDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -469,10 +467,9 @@ flagKey, | ||
"boolean", | ||
context, | ||
options | ||
); | ||
} | ||
getStringValue(flagKey, defaultValue, context, options) { | ||
return this.getStringDetails(flagKey, defaultValue, context, options).value; | ||
getStringValue(flagKey, defaultValue, options) { | ||
return this.getStringDetails(flagKey, defaultValue, options).value; | ||
} | ||
getStringDetails(flagKey, defaultValue, context, options) { | ||
getStringDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -484,10 +481,9 @@ flagKey, | ||
"string", | ||
context, | ||
options | ||
); | ||
} | ||
getNumberValue(flagKey, defaultValue, context, options) { | ||
return this.getNumberDetails(flagKey, defaultValue, context, options).value; | ||
getNumberValue(flagKey, defaultValue, options) { | ||
return this.getNumberDetails(flagKey, defaultValue, options).value; | ||
} | ||
getNumberDetails(flagKey, defaultValue, context, options) { | ||
getNumberDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -499,13 +495,12 @@ flagKey, | ||
"number", | ||
context, | ||
options | ||
); | ||
} | ||
getObjectValue(flagKey, defaultValue, context, options) { | ||
return this.getObjectDetails(flagKey, defaultValue, context, options).value; | ||
getObjectValue(flagKey, defaultValue, options) { | ||
return this.getObjectDetails(flagKey, defaultValue, options).value; | ||
} | ||
getObjectDetails(flagKey, defaultValue, context, options) { | ||
return this.evaluate(flagKey, this._provider.resolveObjectEvaluation, defaultValue, "object", context, options); | ||
getObjectDetails(flagKey, defaultValue, options) { | ||
return this.evaluate(flagKey, this._provider.resolveObjectEvaluation, defaultValue, "object", options); | ||
} | ||
evaluate(flagKey, resolver, defaultValue, flagType, invocationContext = {}, options = {}) { | ||
evaluate(flagKey, resolver, defaultValue, flagType, options = {}) { | ||
const allHooks = [ | ||
@@ -518,3 +513,3 @@ ...OpenFeature.getHooks(), | ||
const allHooksReversed = [...allHooks].reverse(); | ||
const mergedContext = __spreadValues(__spreadValues(__spreadValues(__spreadValues({}, OpenFeature.getContext()), OpenFeature.getTransactionContext()), this._context), invocationContext); | ||
const context = __spreadValues({}, OpenFeature.getContext()); | ||
const hookContext = { | ||
@@ -526,8 +521,8 @@ flagKey, | ||
providerMetadata: OpenFeature.providerMetadata, | ||
context: mergedContext, | ||
context, | ||
logger: this._logger | ||
}; | ||
try { | ||
const frozenContext = this.beforeHooks(allHooks, hookContext, options); | ||
const resolution = resolver.call(this._provider, flagKey, defaultValue, frozenContext, this._logger); | ||
this.beforeHooks(allHooks, hookContext, options); | ||
const resolution = resolver.call(this._provider, flagKey, defaultValue, this._logger); | ||
const evaluationDetails = __spreadProps(__spreadValues({}, resolution), { | ||
@@ -534,0 +529,0 @@ flagKey |
@@ -368,8 +368,7 @@ var __defProp = Object.defineProperty; | ||
} | ||
getClient(name, version, context) { | ||
getClient(name, version) { | ||
return new OpenFeatureClient( | ||
() => this._provider, | ||
() => this._logger, | ||
{ name, version }, | ||
context | ||
{ name, version } | ||
); | ||
@@ -382,3 +381,3 @@ } | ||
var OpenFeatureClient = class { | ||
constructor(providerAccessor, globalLogger, options, context = {}) { | ||
constructor(providerAccessor, globalLogger, options) { | ||
this.providerAccessor = providerAccessor; | ||
@@ -392,3 +391,2 @@ this.globalLogger = globalLogger; | ||
}; | ||
this._context = context; | ||
this.attachListeners(); | ||
@@ -418,6 +416,6 @@ window.dispatchEvent(new CustomEvent("providerChanged" /* ProviderChanged */)); | ||
} | ||
getBooleanValue(flagKey, defaultValue, context, options) { | ||
return this.getBooleanDetails(flagKey, defaultValue, context, options).value; | ||
getBooleanValue(flagKey, defaultValue, options) { | ||
return this.getBooleanDetails(flagKey, defaultValue, options).value; | ||
} | ||
getBooleanDetails(flagKey, defaultValue, context, options) { | ||
getBooleanDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -428,10 +426,9 @@ flagKey, | ||
"boolean", | ||
context, | ||
options | ||
); | ||
} | ||
getStringValue(flagKey, defaultValue, context, options) { | ||
return this.getStringDetails(flagKey, defaultValue, context, options).value; | ||
getStringValue(flagKey, defaultValue, options) { | ||
return this.getStringDetails(flagKey, defaultValue, options).value; | ||
} | ||
getStringDetails(flagKey, defaultValue, context, options) { | ||
getStringDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -443,10 +440,9 @@ flagKey, | ||
"string", | ||
context, | ||
options | ||
); | ||
} | ||
getNumberValue(flagKey, defaultValue, context, options) { | ||
return this.getNumberDetails(flagKey, defaultValue, context, options).value; | ||
getNumberValue(flagKey, defaultValue, options) { | ||
return this.getNumberDetails(flagKey, defaultValue, options).value; | ||
} | ||
getNumberDetails(flagKey, defaultValue, context, options) { | ||
getNumberDetails(flagKey, defaultValue, options) { | ||
return this.evaluate( | ||
@@ -458,13 +454,12 @@ flagKey, | ||
"number", | ||
context, | ||
options | ||
); | ||
} | ||
getObjectValue(flagKey, defaultValue, context, options) { | ||
return this.getObjectDetails(flagKey, defaultValue, context, options).value; | ||
getObjectValue(flagKey, defaultValue, options) { | ||
return this.getObjectDetails(flagKey, defaultValue, options).value; | ||
} | ||
getObjectDetails(flagKey, defaultValue, context, options) { | ||
return this.evaluate(flagKey, this._provider.resolveObjectEvaluation, defaultValue, "object", context, options); | ||
getObjectDetails(flagKey, defaultValue, options) { | ||
return this.evaluate(flagKey, this._provider.resolveObjectEvaluation, defaultValue, "object", options); | ||
} | ||
evaluate(flagKey, resolver, defaultValue, flagType, invocationContext = {}, options = {}) { | ||
evaluate(flagKey, resolver, defaultValue, flagType, options = {}) { | ||
const allHooks = [ | ||
@@ -477,3 +472,3 @@ ...OpenFeature.getHooks(), | ||
const allHooksReversed = [...allHooks].reverse(); | ||
const mergedContext = __spreadValues(__spreadValues(__spreadValues(__spreadValues({}, OpenFeature.getContext()), OpenFeature.getTransactionContext()), this._context), invocationContext); | ||
const context = __spreadValues({}, OpenFeature.getContext()); | ||
const hookContext = { | ||
@@ -485,8 +480,8 @@ flagKey, | ||
providerMetadata: OpenFeature.providerMetadata, | ||
context: mergedContext, | ||
context, | ||
logger: this._logger | ||
}; | ||
try { | ||
const frozenContext = this.beforeHooks(allHooks, hookContext, options); | ||
const resolution = resolver.call(this._provider, flagKey, defaultValue, frozenContext, this._logger); | ||
this.beforeHooks(allHooks, hookContext, options); | ||
const resolution = resolver.call(this._provider, flagKey, defaultValue, this._logger); | ||
const evaluationDetails = __spreadProps(__spreadValues({}, resolution), { | ||
@@ -493,0 +488,0 @@ flagKey |
@@ -341,15 +341,15 @@ type PrimitiveValue = null | boolean | string | number; | ||
*/ | ||
resolveBooleanEvaluation(flagKey: string, defaultValue: boolean, context: EvaluationContext, logger: Logger): ResolutionDetails<boolean>; | ||
resolveBooleanEvaluation(flagKey: string, defaultValue: boolean, logger: Logger): ResolutionDetails<boolean>; | ||
/** | ||
* Resolve a string flag and its evaluation details. | ||
*/ | ||
resolveStringEvaluation(flagKey: string, defaultValue: string, context: EvaluationContext, logger: Logger): ResolutionDetails<string>; | ||
resolveStringEvaluation(flagKey: string, defaultValue: string, logger: Logger): ResolutionDetails<string>; | ||
/** | ||
* Resolve a numeric flag and its evaluation details. | ||
*/ | ||
resolveNumberEvaluation(flagKey: string, defaultValue: number, context: EvaluationContext, logger: Logger): ResolutionDetails<number>; | ||
resolveNumberEvaluation(flagKey: string, defaultValue: number, logger: Logger): ResolutionDetails<number>; | ||
/** | ||
* Resolve and parse an object flag and its evaluation details. | ||
*/ | ||
resolveObjectEvaluation<T extends JsonValue>(flagKey: string, defaultValue: T, context: EvaluationContext, logger: Logger): ResolutionDetails<T>; | ||
resolveObjectEvaluation<T extends JsonValue>(flagKey: string, defaultValue: T, logger: Logger): ResolutionDetails<T>; | ||
} | ||
@@ -427,7 +427,6 @@ interface Hook<T extends FlagValue = FlagValue> { | ||
* @param {boolean} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {boolean} Flag evaluation response | ||
*/ | ||
getBooleanValue(flagKey: string, defaultValue: boolean, context?: EvaluationContext, options?: FlagEvaluationOptions): boolean; | ||
getBooleanValue(flagKey: string, defaultValue: boolean, options?: FlagEvaluationOptions): boolean; | ||
/** | ||
@@ -438,7 +437,6 @@ * Performs a flag evaluation that a returns an evaluation details object. | ||
* @param {boolean} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {EvaluationDetails<boolean>} Flag evaluation details response | ||
*/ | ||
getBooleanDetails(flagKey: string, defaultValue: boolean, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<boolean>; | ||
getBooleanDetails(flagKey: string, defaultValue: boolean, options?: FlagEvaluationOptions): EvaluationDetails<boolean>; | ||
/** | ||
@@ -450,8 +448,7 @@ * Performs a flag evaluation that returns a string. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {T} Flag evaluation response | ||
*/ | ||
getStringValue(flagKey: string, defaultValue: string, context?: EvaluationContext, options?: FlagEvaluationOptions): string; | ||
getStringValue<T extends string = string>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getStringValue(flagKey: string, defaultValue: string, options?: FlagEvaluationOptions): string; | ||
getStringValue<T extends string = string>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
/** | ||
@@ -463,8 +460,7 @@ * Performs a flag evaluation that a returns an evaluation details object. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {EvaluationDetails<T>} Flag evaluation details response | ||
*/ | ||
getStringDetails(flagKey: string, defaultValue: string, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<string>; | ||
getStringDetails<T extends string = string>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getStringDetails(flagKey: string, defaultValue: string, options?: FlagEvaluationOptions): EvaluationDetails<string>; | ||
getStringDetails<T extends string = string>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
/** | ||
@@ -476,8 +472,7 @@ * Performs a flag evaluation that returns a number. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {T} Flag evaluation response | ||
*/ | ||
getNumberValue(flagKey: string, defaultValue: number, context?: EvaluationContext, options?: FlagEvaluationOptions): number; | ||
getNumberValue<T extends number = number>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getNumberValue(flagKey: string, defaultValue: number, options?: FlagEvaluationOptions): number; | ||
getNumberValue<T extends number = number>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
/** | ||
@@ -489,8 +484,7 @@ * Performs a flag evaluation that a returns an evaluation details object. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {Promise<EvaluationDetails<T>>} Flag evaluation details response | ||
*/ | ||
getNumberDetails(flagKey: string, defaultValue: number, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<number>; | ||
getNumberDetails<T extends number = number>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getNumberDetails(flagKey: string, defaultValue: number, options?: FlagEvaluationOptions): EvaluationDetails<number>; | ||
getNumberDetails<T extends number = number>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
/** | ||
@@ -502,8 +496,7 @@ * Performs a flag evaluation that returns an object. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {Promise<T>} Flag evaluation response | ||
*/ | ||
getObjectValue(flagKey: string, defaultValue: JsonValue, context?: EvaluationContext, options?: FlagEvaluationOptions): JsonValue; | ||
getObjectValue<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getObjectValue(flagKey: string, defaultValue: JsonValue, options?: FlagEvaluationOptions): JsonValue; | ||
getObjectValue<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
/** | ||
@@ -515,8 +508,7 @@ * Performs a flag evaluation that a returns an evaluation details object. | ||
* @param {T} defaultValue The value returned if an error occurs | ||
* @param {EvaluationContext} context The evaluation context used on an individual flag evaluation | ||
* @param {FlagEvaluationOptions} options Additional flag evaluation options | ||
* @returns {Promise<EvaluationDetails<T>>} Flag evaluation details response | ||
*/ | ||
getObjectDetails(flagKey: string, defaultValue: JsonValue, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<JsonValue>; | ||
getObjectDetails<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getObjectDetails(flagKey: string, defaultValue: JsonValue, options?: FlagEvaluationOptions): EvaluationDetails<JsonValue>; | ||
getObjectDetails<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
} | ||
@@ -560,7 +552,6 @@ interface Client extends EvaluationLifeCycle<Client>, Features, ManageLogger<Client>, Eventing { | ||
readonly metadata: ClientMetadata; | ||
private _context; | ||
private _hooks; | ||
private _clientLogger?; | ||
private _handlerWrappers; | ||
constructor(providerAccessor: () => Provider & Partial<EventProvider>, globalLogger: () => Logger, options: OpenFeatureClientOptions, context?: EvaluationContext); | ||
constructor(providerAccessor: () => Provider & Partial<EventProvider>, globalLogger: () => Logger, options: OpenFeatureClientOptions); | ||
addHandler(eventType: ProviderEvents, handler: Handler): void; | ||
@@ -571,10 +562,10 @@ setLogger(logger: Logger): OpenFeatureClient; | ||
clearHooks(): OpenFeatureClient; | ||
getBooleanValue(flagKey: string, defaultValue: boolean, context?: EvaluationContext, options?: FlagEvaluationOptions): boolean; | ||
getBooleanDetails(flagKey: string, defaultValue: boolean, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<boolean>; | ||
getStringValue<T extends string = string>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getStringDetails<T extends string = string>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getNumberValue<T extends number = number>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getNumberDetails<T extends number = number>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getObjectValue<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): T; | ||
getObjectDetails<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, context?: EvaluationContext, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getBooleanValue(flagKey: string, defaultValue: boolean, options?: FlagEvaluationOptions): boolean; | ||
getBooleanDetails(flagKey: string, defaultValue: boolean, options?: FlagEvaluationOptions): EvaluationDetails<boolean>; | ||
getStringValue<T extends string = string>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
getStringDetails<T extends string = string>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getNumberValue<T extends number = number>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
getNumberDetails<T extends number = number>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
getObjectValue<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): T; | ||
getObjectDetails<T extends JsonValue = JsonValue>(flagKey: string, defaultValue: T, options?: FlagEvaluationOptions): EvaluationDetails<T>; | ||
private evaluate; | ||
@@ -629,3 +620,3 @@ private beforeHooks; | ||
close(): Promise<void>; | ||
getClient(name?: string, version?: string, context?: EvaluationContext): Client; | ||
getClient(name?: string, version?: string): Client; | ||
} | ||
@@ -632,0 +623,0 @@ /** |
{ | ||
"name": "@openfeature/web-sdk", | ||
"version": "0.0.2-experimental", | ||
"version": "0.1.0-experimental", | ||
"description": "OpenFeature SDK for Web", | ||
@@ -5,0 +5,0 @@ "main": "./dist/cjs/index.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
153403
1743