@fireweaveai/web-sdk 2.1.0 → 2.1.1-staging.2

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 (89) hide show
  1. package/README.md +105 -0
  2. package/dist/application/client.d.ts +120 -0
  3. package/dist/application/client.d.ts.map +1 -0
  4. package/dist/application/client.js +160 -0
  5. package/dist/application/client.js.map +1 -0
  6. package/dist/application/mode.d.ts +100 -0
  7. package/dist/application/mode.d.ts.map +1 -0
  8. package/dist/application/mode.js +99 -0
  9. package/dist/application/mode.js.map +1 -0
  10. package/dist/{adapter.d.ts → application/ports.d.ts} +19 -4
  11. package/dist/application/ports.d.ts.map +1 -0
  12. package/dist/application/ports.js +2 -0
  13. package/dist/application/ports.js.map +1 -0
  14. package/dist/{runtime.d.ts → application/runtime.d.ts} +15 -6
  15. package/dist/application/runtime.d.ts.map +1 -0
  16. package/dist/{runtime.js → application/runtime.js} +80 -27
  17. package/dist/application/runtime.js.map +1 -0
  18. package/dist/domain/context.d.ts +52 -0
  19. package/dist/domain/context.d.ts.map +1 -0
  20. package/dist/domain/context.js +68 -0
  21. package/dist/domain/context.js.map +1 -0
  22. package/dist/domain/errors.d.ts.map +1 -0
  23. package/dist/domain/errors.js.map +1 -0
  24. package/dist/domain/target.d.ts +3 -0
  25. package/dist/domain/target.d.ts.map +1 -0
  26. package/dist/domain/target.js +2 -0
  27. package/dist/domain/target.js.map +1 -0
  28. package/dist/domain/types.d.ts.map +1 -0
  29. package/dist/domain/types.js.map +1 -0
  30. package/dist/domain/validation.d.ts +129 -0
  31. package/dist/domain/validation.d.ts.map +1 -0
  32. package/dist/domain/validation.js +350 -0
  33. package/dist/domain/validation.js.map +1 -0
  34. package/dist/index.d.ts +37 -31
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +25 -21
  37. package/dist/index.js.map +1 -1
  38. package/dist/{adapters → infrastructure/adapters}/inmemory.d.ts +3 -3
  39. package/dist/infrastructure/adapters/inmemory.d.ts.map +1 -0
  40. package/dist/{adapters → infrastructure/adapters}/inmemory.js +1 -1
  41. package/dist/infrastructure/adapters/inmemory.js.map +1 -0
  42. package/dist/infrastructure/adapters/local.d.ts +80 -0
  43. package/dist/infrastructure/adapters/local.d.ts.map +1 -0
  44. package/dist/infrastructure/adapters/local.js +95 -0
  45. package/dist/infrastructure/adapters/local.js.map +1 -0
  46. package/dist/{adapters → infrastructure/adapters}/remote.d.ts +2 -2
  47. package/dist/infrastructure/adapters/remote.d.ts.map +1 -0
  48. package/dist/{adapters → infrastructure/adapters}/remote.js +9 -15
  49. package/dist/infrastructure/adapters/remote.js.map +1 -0
  50. package/dist/infrastructure/hosts.d.ts.map +1 -0
  51. package/dist/{hosts.js → infrastructure/hosts.js} +1 -1
  52. package/dist/infrastructure/hosts.js.map +1 -0
  53. package/package.json +16 -11
  54. package/dist/adapter.d.ts.map +0 -1
  55. package/dist/adapter.js +0 -2
  56. package/dist/adapter.js.map +0 -1
  57. package/dist/adapters/inmemory.d.ts.map +0 -1
  58. package/dist/adapters/inmemory.js.map +0 -1
  59. package/dist/adapters/local.d.ts +0 -38
  60. package/dist/adapters/local.d.ts.map +0 -1
  61. package/dist/adapters/local.js +0 -51
  62. package/dist/adapters/local.js.map +0 -1
  63. package/dist/adapters/remote.d.ts.map +0 -1
  64. package/dist/adapters/remote.js.map +0 -1
  65. package/dist/client.d.ts +0 -134
  66. package/dist/client.d.ts.map +0 -1
  67. package/dist/client.js +0 -0
  68. package/dist/client.js.map +0 -1
  69. package/dist/context.d.ts +0 -26
  70. package/dist/context.d.ts.map +0 -1
  71. package/dist/context.js +0 -106
  72. package/dist/context.js.map +0 -1
  73. package/dist/errors.d.ts.map +0 -1
  74. package/dist/errors.js.map +0 -1
  75. package/dist/hosts.d.ts.map +0 -1
  76. package/dist/hosts.js.map +0 -1
  77. package/dist/provider.d.ts +0 -39
  78. package/dist/provider.d.ts.map +0 -1
  79. package/dist/provider.js +0 -93
  80. package/dist/provider.js.map +0 -1
  81. package/dist/runtime.d.ts.map +0 -1
  82. package/dist/runtime.js.map +0 -1
  83. package/dist/types.d.ts.map +0 -1
  84. package/dist/types.js.map +0 -1
  85. /package/dist/{errors.d.ts → domain/errors.d.ts} +0 -0
  86. /package/dist/{errors.js → domain/errors.js} +0 -0
  87. /package/dist/{types.d.ts → domain/types.d.ts} +0 -0
  88. /package/dist/{types.js → domain/types.js} +0 -0
  89. /package/dist/{hosts.d.ts → infrastructure/hosts.d.ts} +0 -0
package/dist/client.d.ts DELETED
@@ -1,134 +0,0 @@
1
- /**
2
- * FireweaveWebClient — the Fireweave-native surface, mirroring the server
3
- * SDK's `FireweaveClient` namespace for namespace (ADR-0003: extensions live
4
- * beside the OpenFeature client, never inside it).
5
- *
6
- * One divergence, and it is intentional: `controlPoints.*` is SYNCHRONOUS here
7
- * and promise-returning on the server. That follows from the OpenFeature web
8
- * contract — browser reads happen in render paths — and is recorded in
9
- * docs/compatibility.md as a surface difference rather than a gap.
10
- */
11
- import { FireweaveError } from './errors.js';
12
- import type { ContextInput } from './context.js';
13
- import type { FireweaveWebRuntime, ExpectedFlagType } from './runtime.js';
14
- import type { Capabilities, Decision, Exposure, JsonValue, ReleaseContext, ReleaseState, Signal, SignalKind } from './types.js';
15
- import type { RegisterTargetOptions, RegisterTargetResult } from './adapter.js';
16
- export interface ExtensionResult {
17
- readonly ok: boolean;
18
- readonly error?: FireweaveError;
19
- readonly degraded?: boolean;
20
- }
21
- /**
22
- * Control-point evaluation on the public client surface — decision-returning,
23
- * without reaching into the runtime. Never throws; errors surface as ERROR
24
- * decisions, exactly like the OpenFeature path.
25
- */
26
- export declare class WebControlPointsApi {
27
- private readonly runtime;
28
- constructor(runtime: FireweaveWebRuntime);
29
- evaluate(flagKey: string, expectedType: ExpectedFlagType, defaultValue: JsonValue, context?: ContextInput): Decision;
30
- getBooleanValue(flagKey: string, defaultValue: boolean, context?: ContextInput): boolean;
31
- getStringValue(flagKey: string, defaultValue: string, context?: ContextInput): string;
32
- getNumberValue(flagKey: string, defaultValue: number, context?: ContextInput): number;
33
- getObjectValue(flagKey: string, defaultValue: JsonValue, context?: ContextInput): JsonValue;
34
- }
35
- /**
36
- * Exposure recording, with the browser's defining constraint: a tab can vanish
37
- * without warning. Queued exposures are therefore flushed on
38
- * `visibilitychange → hidden` and on `pagehide`, over a transport that survives
39
- * unload. There is no server analogue for this — a server process gets a
40
- * shutdown hook; a tab gets nothing.
41
- */
42
- export declare class WebExposuresApi {
43
- private readonly runtime;
44
- private readonly seen;
45
- private detach;
46
- constructor(runtime: FireweaveWebRuntime);
47
- /** Record one exposure. Deduped per (flagKey, targetingKey, variant). */
48
- record(exposure: Exposure): ExtensionResult;
49
- flush(): Promise<ExtensionResult>;
50
- /**
51
- * Attach unload-time flushing. Idempotent; returns a detach function.
52
- *
53
- * `visibilitychange → hidden` fires in cases `pagehide` does not (tab switch
54
- * on mobile, app backgrounded) and vice versa (bfcache navigation), so both
55
- * are needed. `beforeunload` is deliberately not used: it suppresses bfcache.
56
- */
57
- attachUnloadFlush(): () => void;
58
- }
59
- declare const DEFAULT_SIGNAL_ATTRIBUTE_ALLOWLIST: readonly string[];
60
- export declare class WebSignalsApi {
61
- private readonly runtime;
62
- private readonly recorded;
63
- constructor(runtime: FireweaveWebRuntime);
64
- private send;
65
- recordHealth(signal: Omit<Signal, 'kind'>): ExtensionResult;
66
- recordError(signal: Omit<Signal, 'kind'>): ExtensionResult;
67
- recordMetric(signal: Omit<Signal, 'kind'>): ExtensionResult;
68
- recordOutcome(signal: Omit<Signal, 'kind'>): ExtensionResult;
69
- getRecorded(kind?: SignalKind): readonly Signal[];
70
- }
71
- export interface ReleaseResult extends ExtensionResult {
72
- readonly state?: ReleaseState;
73
- }
74
- /**
75
- * Release lifecycle from the browser.
76
- *
77
- * `setContext` is the load-bearing member — it stamps every subsequent exposure
78
- * and signal with the rollout it belongs to. `start`/`complete`/`fail` exist
79
- * for parity with the server client; a browser is rarely the thing that decides
80
- * a release transitioned, so they are recorded as signals rather than pretending
81
- * to drive state the backend owns.
82
- */
83
- export declare class WebReleasesApi {
84
- private readonly runtime;
85
- private readonly signals;
86
- private state;
87
- constructor(runtime: FireweaveWebRuntime, signals: WebSignalsApi);
88
- setContext(context: ReleaseContext): ExtensionResult;
89
- private transition;
90
- start(): ReleaseResult;
91
- complete(): ReleaseResult;
92
- fail(): ReleaseResult;
93
- getState(): ReleaseState;
94
- }
95
- /** Phase-one stub: every method degrades with UnsupportedCapability. */
96
- declare class WebGuardrailsApi {
97
- evaluate(_name: string, _args?: Record<string, JsonValue>): ExtensionResult;
98
- }
99
- declare class WebCapabilitiesApi {
100
- private readonly runtime;
101
- constructor(runtime: FireweaveWebRuntime);
102
- list(): readonly string[];
103
- get(): Capabilities;
104
- }
105
- export interface FireweaveWebClientOptions {
106
- /** Attach unload-time exposure flushing on construction. Default true. */
107
- readonly autoFlushOnUnload?: boolean;
108
- }
109
- export declare class FireweaveWebClient {
110
- readonly runtime: FireweaveWebRuntime;
111
- readonly controlPoints: WebControlPointsApi;
112
- readonly exposures: WebExposuresApi;
113
- readonly signals: WebSignalsApi;
114
- readonly releases: WebReleasesApi;
115
- readonly guardrails: WebGuardrailsApi;
116
- readonly capabilities: WebCapabilitiesApi;
117
- constructor(runtime: FireweaveWebRuntime, options?: FireweaveWebClientOptions);
118
- /** Dynamic capability dispatch. Unknown capabilities degrade; never throws. */
119
- invokeCapability(capability: string, _args?: Record<string, JsonValue>): ExtensionResult;
120
- initialize(context?: ContextInput): Promise<void>;
121
- /**
122
- * Sign-in hook: register the user's durable targeting properties, then
123
- * re-prefetch under that id so percentage ramps bucket on a stable key.
124
- *
125
- * Two kinds of property feed a rule and both are needed — DURABLE ones
126
- * registered here, and PER-REQUEST ones carried in the evaluation context. A
127
- * rule targeting a property that is never registered AND never sent matches
128
- * nobody, silently.
129
- */
130
- identify(targetingKey: string, options?: RegisterTargetOptions): Promise<RegisterTargetResult>;
131
- shutdown(): Promise<void>;
132
- }
133
- export { DEFAULT_SIGNAL_ATTRIBUTE_ALLOWLIST };
134
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js DELETED
Binary file
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/context.d.ts DELETED
@@ -1,26 +0,0 @@
1
- import type { CanonicalContext } from './types.js';
2
- export interface ContextLimits {
3
- readonly maxAttributeCount: number;
4
- readonly maxKeyBytes: number;
5
- readonly maxValueBytes: number;
6
- readonly maxSerializedBytes: number;
7
- readonly maxNestingDepth: number;
8
- }
9
- export declare const DEFAULT_CONTEXT_LIMITS: ContextLimits;
10
- /**
11
- * Keys the backend owns. A client that could set these could claim another
12
- * tenant's identity, so they are rejected rather than dropped — silently
13
- * discarding them would leave the caller believing targeting was applied.
14
- */
15
- export declare const DEFAULT_RESERVED_ATTRIBUTE_KEYS: readonly string[];
16
- export type ContextInput = Record<string, unknown> & {
17
- targetingKey?: string;
18
- };
19
- /** Later contexts win, key by key. Mirrors the OpenFeature merge order. */
20
- export declare function mergeContexts(...contexts: ReadonlyArray<ContextInput | undefined>): ContextInput;
21
- /**
22
- * Validate and canonicalize. Throws `FireweaveError('InvalidContext')` on any
23
- * limit breach or reserved-key use; never mutates the input.
24
- */
25
- export declare function canonicalizeContext(input: ContextInput | undefined, limits?: ContextLimits, reservedKeys?: readonly string[]): CanonicalContext;
26
- //# sourceMappingURL=context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,YAAY,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,eAAO,MAAM,sBAAsB,EAAE,aAMnC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,MAAM,EAI3D,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAiB/E,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,GAAG,QAAQ,EAAE,aAAa,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,YAAY,CAOhG;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,MAAM,GAAE,aAAsC,EAC9C,YAAY,GAAE,SAAS,MAAM,EAAoC,GAChE,gBAAgB,CA6ClB"}
package/dist/context.js DELETED
@@ -1,106 +0,0 @@
1
- /**
2
- * Evaluation-context normalization.
3
- *
4
- * A browser context is smaller than a server one — there is one user per page,
5
- * not one per request — but the same two rules apply, and for the same reasons:
6
- * reserved keys cannot be spoofed by the caller, and oversized attributes are
7
- * rejected rather than silently truncated by the backend.
8
- *
9
- * UTF-8 byte length is measured with `TextEncoder`, never `Buffer` — the same
10
- * choice ADR-0008 made in the server SDK, here because `Buffer` does not exist
11
- * in a browser at all.
12
- */
13
- import { FireweaveError } from './errors.js';
14
- export const DEFAULT_CONTEXT_LIMITS = Object.freeze({
15
- maxAttributeCount: 100,
16
- maxKeyBytes: 256,
17
- maxValueBytes: 8_192,
18
- maxSerializedBytes: 32_768,
19
- maxNestingDepth: 8,
20
- });
21
- /**
22
- * Keys the backend owns. A client that could set these could claim another
23
- * tenant's identity, so they are rejected rather than dropped — silently
24
- * discarding them would leave the caller believing targeting was applied.
25
- */
26
- export const DEFAULT_RESERVED_ATTRIBUTE_KEYS = Object.freeze([
27
- 'fireweave.orgId',
28
- 'fireweave.projectId',
29
- 'fireweave.tenant',
30
- ]);
31
- const encoder = new TextEncoder();
32
- function byteLength(value) {
33
- return encoder.encode(value).length;
34
- }
35
- function depthOf(value, depth = 0) {
36
- if (value === null || typeof value !== 'object')
37
- return depth;
38
- let deepest = depth;
39
- for (const child of Object.values(value)) {
40
- deepest = Math.max(deepest, depthOf(child, depth + 1));
41
- }
42
- return deepest;
43
- }
44
- /** Later contexts win, key by key. Mirrors the OpenFeature merge order. */
45
- export function mergeContexts(...contexts) {
46
- const merged = {};
47
- for (const ctx of contexts) {
48
- if (ctx === undefined)
49
- continue;
50
- Object.assign(merged, ctx);
51
- }
52
- return merged;
53
- }
54
- /**
55
- * Validate and canonicalize. Throws `FireweaveError('InvalidContext')` on any
56
- * limit breach or reserved-key use; never mutates the input.
57
- */
58
- export function canonicalizeContext(input, limits = DEFAULT_CONTEXT_LIMITS, reservedKeys = DEFAULT_RESERVED_ATTRIBUTE_KEYS) {
59
- const source = input ?? {};
60
- const attributes = {};
61
- let groups;
62
- let groupProperties;
63
- let targetingKey;
64
- for (const [key, value] of Object.entries(source)) {
65
- if (key === 'targetingKey') {
66
- if (typeof value === 'string' && value.length > 0)
67
- targetingKey = value;
68
- continue;
69
- }
70
- if (reservedKeys.includes(key)) {
71
- throw new FireweaveError('InvalidContext');
72
- }
73
- if (key === 'groups' || key === 'fireweave.groups') {
74
- groups = value;
75
- continue;
76
- }
77
- if (key === 'groupProperties' || key === 'fireweave.groupProperties') {
78
- groupProperties = value;
79
- continue;
80
- }
81
- if (value === undefined)
82
- continue;
83
- if (byteLength(key) > limits.maxKeyBytes)
84
- throw new FireweaveError('InvalidContext');
85
- const serialized = JSON.stringify(value) ?? 'null';
86
- if (byteLength(serialized) > limits.maxValueBytes)
87
- throw new FireweaveError('InvalidContext');
88
- if (depthOf(value) > limits.maxNestingDepth)
89
- throw new FireweaveError('InvalidContext');
90
- attributes[key] = value;
91
- }
92
- if (Object.keys(attributes).length > limits.maxAttributeCount) {
93
- throw new FireweaveError('InvalidContext');
94
- }
95
- if (byteLength(JSON.stringify(attributes)) > limits.maxSerializedBytes) {
96
- throw new FireweaveError('InvalidContext');
97
- }
98
- const canonical = { attributes };
99
- return {
100
- ...canonical,
101
- ...(targetingKey !== undefined ? { targetingKey } : {}),
102
- ...(groups !== undefined ? { groups } : {}),
103
- ...(groupProperties !== undefined ? { groupProperties } : {}),
104
- };
105
- }
106
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,kBAAkB,GAC1B,eAAe,GACf,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,SAAS,GACT,aAAa,GACb,oBAAoB,GACpB,mBAAmB,GACnB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,UAAU,GACV,eAAe,GACf,uBAAuB,GACvB,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,GACpB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,eAAe,GACf,uBAAuB,GACvB,iBAAiB,GACjB,SAAS,CAAC;AAEd,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,0DAA0D;IAC1D,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC,CA4D7E,CAAC;AAEH,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;gBAEjD,IAAI,EAAE,kBAAkB,EAAE,OAAO,GAAE,qBAA0B;CAS1E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"hosts.d.ts","sourceRoot":"","sources":["../src/hosts.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAMjD,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CA0BtF;AAYD,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAQvD"}
package/dist/hosts.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"hosts.js","sourceRoot":"","sources":["../src/hosts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,CAAC,MAAM,qBAAqB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACpE,yBAAyB;IACzB,iCAAiC;IACjC,WAAW;IACX,WAAW;IACX,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO,CACL,QAAQ,KAAK,WAAW;QACxB,QAAQ,KAAK,WAAW;QACxB,QAAQ,KAAK,KAAK;QAClB,QAAQ,KAAK,OAAO,CACrB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,YAAgC;IAC9E,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,IAAI,GACR,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC;IAC/F,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,mBAAmB;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CACvB,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,QAAQ,KAAK,CAAC;QAClB,CAAC,CAAC,KAAK,WAAW,IAAI,QAAQ,CAAC;QAC/B,CAAC,CAAC,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAC5C,CAAC;IACF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,sBAAsB,GAAsB,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAE1F,+FAA+F;AAC/F,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAChE,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;QAC5C,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,39 +0,0 @@
1
- /**
2
- * OpenFeature web provider — the SYNCHRONOUS surface.
3
- *
4
- * `resolve*Evaluation` returns `ResolutionDetails` directly, never a Promise.
5
- * That is the load-bearing web invariant: browser call sites read control
6
- * points without `await`, inside render paths where awaiting is not an option.
7
- * Everything asynchronous happens in `initialize` / `onContextChange`, which
8
- * the OpenFeature web SDK is explicitly allowed to await.
9
- *
10
- * Per ADR-0003 the provider is a mapping layer only: OpenFeature types in,
11
- * runtime decisions out. It owns error-code translation and nothing else.
12
- */
13
- import { OpenFeatureEventEmitter, type EvaluationContext, type JsonValue as OFJsonValue, type Paradigm, type Provider, type ProviderMetadata, type ResolutionDetails } from '@openfeature/web-sdk';
14
- import type { FireweaveWebRuntime } from './runtime.js';
15
- export interface FireweaveWebProviderOptions {
16
- /** Provider name reported to OpenFeature. Defaults to `fireweave-web`. */
17
- readonly name?: string;
18
- }
19
- export declare class FireweaveWebProvider implements Provider {
20
- readonly metadata: ProviderMetadata;
21
- readonly runsOn: Paradigm;
22
- readonly events: OpenFeatureEventEmitter;
23
- readonly runtime: FireweaveWebRuntime;
24
- constructor(runtime: FireweaveWebRuntime, options?: FireweaveWebProviderOptions);
25
- initialize(context?: EvaluationContext): Promise<void>;
26
- /**
27
- * The identity-change path. Emits ConfigurationChanged with only the control
28
- * points whose decisions actually moved, so subscribers re-render on real
29
- * changes rather than on every sign-in.
30
- */
31
- onContextChange(_oldContext: EvaluationContext, newContext: EvaluationContext): Promise<void>;
32
- onClose(): Promise<void>;
33
- resolveBooleanEvaluation(flagKey: string, defaultValue: boolean, context: EvaluationContext): ResolutionDetails<boolean>;
34
- resolveStringEvaluation(flagKey: string, defaultValue: string, context: EvaluationContext): ResolutionDetails<string>;
35
- resolveNumberEvaluation(flagKey: string, defaultValue: number, context: EvaluationContext): ResolutionDetails<number>;
36
- resolveObjectEvaluation<T extends OFJsonValue>(flagKey: string, defaultValue: T, context: EvaluationContext): ResolutionDetails<T>;
37
- private resolve;
38
- }
39
- //# sourceMappingURL=provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAEL,uBAAuB,EAEvB,KAAK,iBAAiB,EACtB,KAAK,SAAS,IAAI,WAAW,EAC7B,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,mBAAmB,EAAoB,MAAM,cAAc,CAAC;AAkC1E,MAAM,WAAW,2BAA2B;IAC1C,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,oBAAqB,YAAW,QAAQ;IACnD,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAY;IACrC,QAAQ,CAAC,MAAM,0BAAiC;IAChD,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBAE1B,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAE,2BAAgC;IAK7E,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5D;;;;OAIG;IACG,eAAe,CACnB,WAAW,EAAE,iBAAiB,EAC9B,UAAU,EAAE,iBAAiB,GAC5B,OAAO,CAAC,IAAI,CAAC;IAOV,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,wBAAwB,CACtB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,iBAAiB,GACzB,iBAAiB,CAAC,OAAO,CAAC;IAI7B,uBAAuB,CACrB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,iBAAiB,GACzB,iBAAiB,CAAC,MAAM,CAAC;IAI5B,uBAAuB,CACrB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,iBAAiB,GACzB,iBAAiB,CAAC,MAAM,CAAC;IAI5B,uBAAuB,CAAC,CAAC,SAAS,WAAW,EAC3C,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,CAAC,EACf,OAAO,EAAE,iBAAiB,GACzB,iBAAiB,CAAC,CAAC,CAAC;IAIvB,OAAO,CAAC,OAAO;CAchB"}
package/dist/provider.js DELETED
@@ -1,93 +0,0 @@
1
- /**
2
- * OpenFeature web provider — the SYNCHRONOUS surface.
3
- *
4
- * `resolve*Evaluation` returns `ResolutionDetails` directly, never a Promise.
5
- * That is the load-bearing web invariant: browser call sites read control
6
- * points without `await`, inside render paths where awaiting is not an option.
7
- * Everything asynchronous happens in `initialize` / `onContextChange`, which
8
- * the OpenFeature web SDK is explicitly allowed to await.
9
- *
10
- * Per ADR-0003 the provider is a mapping layer only: OpenFeature types in,
11
- * runtime decisions out. It owns error-code translation and nothing else.
12
- */
13
- import { ErrorCode, OpenFeatureEventEmitter, ProviderEvents, } from '@openfeature/web-sdk';
14
- const ERROR_CODE_MAP = Object.freeze({
15
- PROVIDER_NOT_READY: ErrorCode.PROVIDER_NOT_READY,
16
- PROVIDER_FATAL: ErrorCode.PROVIDER_FATAL,
17
- FLAG_NOT_FOUND: ErrorCode.FLAG_NOT_FOUND,
18
- PARSE_ERROR: ErrorCode.PARSE_ERROR,
19
- TYPE_MISMATCH: ErrorCode.TYPE_MISMATCH,
20
- TARGETING_KEY_MISSING: ErrorCode.TARGETING_KEY_MISSING,
21
- INVALID_CONTEXT: ErrorCode.INVALID_CONTEXT,
22
- GENERAL: ErrorCode.GENERAL,
23
- });
24
- function toResolutionDetails(decision, defaultValue) {
25
- if (decision.errorCode !== undefined) {
26
- const details = {
27
- value: defaultValue,
28
- reason: decision.reason,
29
- errorCode: ERROR_CODE_MAP[decision.errorCode] ?? ErrorCode.GENERAL,
30
- flagMetadata: { ...decision.metadata },
31
- };
32
- return decision.errorMessage !== undefined
33
- ? { ...details, errorMessage: decision.errorMessage }
34
- : details;
35
- }
36
- const details = {
37
- value: decision.value,
38
- reason: decision.reason,
39
- flagMetadata: { ...decision.metadata },
40
- };
41
- return decision.variant !== undefined ? { ...details, variant: decision.variant } : details;
42
- }
43
- export class FireweaveWebProvider {
44
- metadata;
45
- runsOn = 'client';
46
- events = new OpenFeatureEventEmitter();
47
- runtime;
48
- constructor(runtime, options = {}) {
49
- this.runtime = runtime;
50
- this.metadata = Object.freeze({ name: options.name ?? 'fireweave-web' });
51
- }
52
- async initialize(context) {
53
- await this.runtime.initialize(context);
54
- if (this.runtime.getState() === 'STALE') {
55
- // Surfaced, not swallowed: the app booted, but on defaults. A host that
56
- // cares (a kill-switch, say) can react instead of silently shipping OFF.
57
- this.events.emit(ProviderEvents.Stale, {
58
- message: 'fireweave: flag prefetch did not complete; serving defaults',
59
- });
60
- }
61
- }
62
- /**
63
- * The identity-change path. Emits ConfigurationChanged with only the control
64
- * points whose decisions actually moved, so subscribers re-render on real
65
- * changes rather than on every sign-in.
66
- */
67
- async onContextChange(_oldContext, newContext) {
68
- const changed = await this.runtime.setContext(newContext);
69
- if (changed.length > 0) {
70
- this.events.emit(ProviderEvents.ConfigurationChanged, { flagsChanged: [...changed] });
71
- }
72
- }
73
- async onClose() {
74
- await this.runtime.shutdown();
75
- }
76
- resolveBooleanEvaluation(flagKey, defaultValue, context) {
77
- return this.resolve(flagKey, 'boolean', defaultValue, context);
78
- }
79
- resolveStringEvaluation(flagKey, defaultValue, context) {
80
- return this.resolve(flagKey, 'string', defaultValue, context);
81
- }
82
- resolveNumberEvaluation(flagKey, defaultValue, context) {
83
- return this.resolve(flagKey, 'number', defaultValue, context);
84
- }
85
- resolveObjectEvaluation(flagKey, defaultValue, context) {
86
- return this.resolve(flagKey, 'object', defaultValue, context);
87
- }
88
- resolve(flagKey, expectedType, defaultValue, context) {
89
- const decision = this.runtime.evaluateSync(flagKey, expectedType, defaultValue, context);
90
- return toResolutionDetails(decision, defaultValue);
91
- }
92
- }
93
- //# sourceMappingURL=provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAGV,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAEV,QAAQ,EAER,QAAQ,EACR,SAAS,EACT,cAAc,EACd,cAAc,EACd,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1E,2EAA2E;AAC3E,eAAO,MAAM,8BAA8B,OAAQ,CAAC;AAEpD,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,QAAQ,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACzC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CACjC;AAeD,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAE3C,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8C;gBAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,GAAE,yBAA8B;IAO9E,QAAQ,IAAI,cAAc;IAI1B,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,MAAM,IAAI;IAKpE,OAAO,CAAC,QAAQ;IAKhB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAI5C,iBAAiB,IAAI,cAAc;IAInC,mEAAmE;IAC7D,UAAU,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvD;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC;IAOnE,8DAA8D;IACxD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C9B;;;OAGG;IACH,YAAY,CACV,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,gBAAgB,EAC9B,YAAY,EAAE,SAAS,EACvB,iBAAiB,CAAC,EAAE,YAAY,GAC/B,QAAQ;IAgDX,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,iBAAiB;IAkBzB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIxC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI5B,cAAc,CAClB,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC;IAiB1B,KAAK,CAAC,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAW/B,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,aAAa;CAetB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
File without changes
File without changes
File without changes
File without changes
File without changes