@frontmcp/plugin-feature-flags 0.0.1
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/LICENSE +201 -0
- package/adapters/feature-flag-adapter.interface.d.ts +18 -0
- package/adapters/feature-flag-adapter.interface.d.ts.map +1 -0
- package/adapters/index.d.ts +9 -0
- package/adapters/index.d.ts.map +1 -0
- package/adapters/launchdarkly.adapter.d.ts +21 -0
- package/adapters/launchdarkly.adapter.d.ts.map +1 -0
- package/adapters/splitio.adapter.d.ts +21 -0
- package/adapters/splitio.adapter.d.ts.map +1 -0
- package/adapters/static.adapter.d.ts +16 -0
- package/adapters/static.adapter.d.ts.map +1 -0
- package/adapters/unleash.adapter.d.ts +23 -0
- package/adapters/unleash.adapter.d.ts.map +1 -0
- package/esm/index.mjs +634 -0
- package/esm/package.json +72 -0
- package/feature-flag.context-extension.d.ts +45 -0
- package/feature-flag.context-extension.d.ts.map +1 -0
- package/feature-flag.plugin.d.ts +67 -0
- package/feature-flag.plugin.d.ts.map +1 -0
- package/feature-flag.symbols.d.ts +17 -0
- package/feature-flag.symbols.d.ts.map +1 -0
- package/feature-flag.types.d.ts +88 -0
- package/feature-flag.types.d.ts.map +1 -0
- package/index.d.ts +34 -0
- package/index.d.ts.map +1 -0
- package/index.js +638 -0
- package/package.json +72 -0
- package/providers/feature-flag-accessor.provider.d.ts +39 -0
- package/providers/feature-flag-accessor.provider.d.ts.map +1 -0
- package/providers/index.d.ts +2 -0
- package/providers/index.d.ts.map +1 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { FrontMcpContext } from '@frontmcp/sdk';
|
|
2
|
+
import type { FeatureFlagAdapter } from '../adapters/feature-flag-adapter.interface';
|
|
3
|
+
import type { FeatureFlagVariant, FeatureFlagPluginOptions, FeatureFlagRef } from '../feature-flag.types';
|
|
4
|
+
/**
|
|
5
|
+
* Context-scoped accessor for feature flag evaluation.
|
|
6
|
+
* Provides caching and context resolution from FrontMcpContext.
|
|
7
|
+
*/
|
|
8
|
+
export declare class FeatureFlagAccessor {
|
|
9
|
+
private readonly adapter;
|
|
10
|
+
private readonly ctx;
|
|
11
|
+
private readonly config;
|
|
12
|
+
private readonly cache;
|
|
13
|
+
constructor(adapter: FeatureFlagAdapter, ctx: FrontMcpContext, config: FeatureFlagPluginOptions);
|
|
14
|
+
/**
|
|
15
|
+
* Check if a feature flag is enabled.
|
|
16
|
+
*/
|
|
17
|
+
isEnabled(flagKey: string, defaultValue?: boolean): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Get a feature flag variant (for multi-variate flags).
|
|
20
|
+
*/
|
|
21
|
+
getVariant(flagKey: string): Promise<FeatureFlagVariant>;
|
|
22
|
+
/**
|
|
23
|
+
* Batch evaluate multiple flags at once.
|
|
24
|
+
*/
|
|
25
|
+
evaluateFlags(flagKeys: string[]): Promise<Map<string, boolean>>;
|
|
26
|
+
/**
|
|
27
|
+
* Resolve a FeatureFlagRef (string or object) to a boolean.
|
|
28
|
+
*/
|
|
29
|
+
resolveRef(ref: FeatureFlagRef): Promise<boolean>;
|
|
30
|
+
/**
|
|
31
|
+
* Build the FeatureFlagContext from the current FrontMcpContext.
|
|
32
|
+
*/
|
|
33
|
+
private buildContext;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Factory function for creating FeatureFlagAccessor instances.
|
|
37
|
+
*/
|
|
38
|
+
export declare function createFeatureFlagAccessor(adapter: FeatureFlagAdapter, ctx: FrontMcpContext, config: FeatureFlagPluginOptions): FeatureFlagAccessor;
|
|
39
|
+
//# sourceMappingURL=feature-flag-accessor.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature-flag-accessor.provider.d.ts","sourceRoot":"","sources":["../../src/providers/feature-flag-accessor.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA2B,MAAM,eAAe,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,KAAK,EAEV,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAE/B;;;GAGG;AACH,qBAKa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA4D;gBAEtE,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,wBAAwB;IAM/F;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA4B1E;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAK9D;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAKtE;;OAEG;IACG,UAAU,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAOvD;;OAEG;IACH,OAAO,CAAC,YAAY;CAerB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,kBAAkB,EAC3B,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,wBAAwB,GAC/B,mBAAmB,CAErB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC"}
|