flagsmith-nodejs 6.0.0 → 6.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/build/cjs/sdk/models.d.ts +7 -5
- package/build/esm/sdk/models.d.ts +7 -5
- package/package.json +2 -2
- package/sdk/models.ts +9 -12
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { FeatureStateModel } from '../flagsmith-engine/features/models.js';
|
|
2
2
|
import { AnalyticsProcessor } from './analytics.js';
|
|
3
|
+
type FlagValue = string | number | boolean | undefined;
|
|
3
4
|
export declare class BaseFlag {
|
|
4
5
|
enabled: boolean;
|
|
5
|
-
value:
|
|
6
|
+
value: FlagValue;
|
|
6
7
|
isDefault: boolean;
|
|
7
|
-
constructor(value:
|
|
8
|
+
constructor(value: FlagValue, enabled: boolean, isDefault: boolean);
|
|
8
9
|
}
|
|
9
10
|
export declare class DefaultFlag extends BaseFlag {
|
|
10
|
-
constructor(value:
|
|
11
|
+
constructor(value: FlagValue, enabled: boolean);
|
|
11
12
|
}
|
|
12
13
|
export declare class Flag extends BaseFlag {
|
|
13
14
|
featureId: number;
|
|
14
15
|
featureName: string;
|
|
15
16
|
constructor(params: {
|
|
16
|
-
value:
|
|
17
|
+
value: FlagValue;
|
|
17
18
|
enabled: boolean;
|
|
18
19
|
isDefault?: boolean;
|
|
19
20
|
featureId: number;
|
|
@@ -50,6 +51,7 @@ export declare class Flags {
|
|
|
50
51
|
}): Flags;
|
|
51
52
|
allFlags(): Flag[];
|
|
52
53
|
getFlag(featureName: string): BaseFlag;
|
|
53
|
-
getFeatureValue(featureName: string):
|
|
54
|
+
getFeatureValue(featureName: string): FlagValue;
|
|
54
55
|
isFeatureEnabled(featureName: string): boolean;
|
|
55
56
|
}
|
|
57
|
+
export {};
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { FeatureStateModel } from '../flagsmith-engine/features/models.js';
|
|
2
2
|
import { AnalyticsProcessor } from './analytics.js';
|
|
3
|
+
type FlagValue = string | number | boolean | undefined;
|
|
3
4
|
export declare class BaseFlag {
|
|
4
5
|
enabled: boolean;
|
|
5
|
-
value:
|
|
6
|
+
value: FlagValue;
|
|
6
7
|
isDefault: boolean;
|
|
7
|
-
constructor(value:
|
|
8
|
+
constructor(value: FlagValue, enabled: boolean, isDefault: boolean);
|
|
8
9
|
}
|
|
9
10
|
export declare class DefaultFlag extends BaseFlag {
|
|
10
|
-
constructor(value:
|
|
11
|
+
constructor(value: FlagValue, enabled: boolean);
|
|
11
12
|
}
|
|
12
13
|
export declare class Flag extends BaseFlag {
|
|
13
14
|
featureId: number;
|
|
14
15
|
featureName: string;
|
|
15
16
|
constructor(params: {
|
|
16
|
-
value:
|
|
17
|
+
value: FlagValue;
|
|
17
18
|
enabled: boolean;
|
|
18
19
|
isDefault?: boolean;
|
|
19
20
|
featureId: number;
|
|
@@ -50,6 +51,7 @@ export declare class Flags {
|
|
|
50
51
|
}): Flags;
|
|
51
52
|
allFlags(): Flag[];
|
|
52
53
|
getFlag(featureName: string): BaseFlag;
|
|
53
|
-
getFeatureValue(featureName: string):
|
|
54
|
+
getFeatureValue(featureName: string): FlagValue;
|
|
54
55
|
isFeatureEnabled(featureName: string): boolean;
|
|
55
56
|
}
|
|
57
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flagsmith-nodejs",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.1",
|
|
4
4
|
"description": "Flagsmith lets you manage features flags and remote config across web, mobile and server side applications. Deliver true Continuous Integration. Get builds out faster. Control who has access to new features.",
|
|
5
5
|
"main": "./build/cjs/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"@types/semver": "^7.3.9",
|
|
70
70
|
"@types/uuid": "^8.3.4",
|
|
71
71
|
"@vitest/coverage-v8": "^2.1.2",
|
|
72
|
-
"esbuild": "^0.
|
|
72
|
+
"esbuild": "^0.25.0",
|
|
73
73
|
"husky": "^7.0.4",
|
|
74
74
|
"prettier": "^2.2.1",
|
|
75
75
|
"typescript": "^4.9.5",
|
package/sdk/models.ts
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { FeatureStateModel } from '../flagsmith-engine/features/models.js';
|
|
2
2
|
import { AnalyticsProcessor } from './analytics.js';
|
|
3
3
|
|
|
4
|
+
type FlagValue = string | number | boolean | undefined;
|
|
5
|
+
|
|
4
6
|
export class BaseFlag {
|
|
5
7
|
enabled: boolean;
|
|
6
|
-
value:
|
|
8
|
+
value: FlagValue;
|
|
7
9
|
isDefault: boolean;
|
|
8
10
|
|
|
9
|
-
constructor(
|
|
10
|
-
value: string | number | boolean | undefined,
|
|
11
|
-
enabled: boolean,
|
|
12
|
-
isDefault: boolean
|
|
13
|
-
) {
|
|
11
|
+
constructor(value: FlagValue, enabled: boolean, isDefault: boolean) {
|
|
14
12
|
this.value = value;
|
|
15
13
|
this.enabled = enabled;
|
|
16
14
|
this.isDefault = isDefault;
|
|
@@ -18,7 +16,7 @@ export class BaseFlag {
|
|
|
18
16
|
}
|
|
19
17
|
|
|
20
18
|
export class DefaultFlag extends BaseFlag {
|
|
21
|
-
constructor(value:
|
|
19
|
+
constructor(value: FlagValue, enabled: boolean) {
|
|
22
20
|
super(value, enabled, true);
|
|
23
21
|
}
|
|
24
22
|
}
|
|
@@ -28,7 +26,7 @@ export class Flag extends BaseFlag {
|
|
|
28
26
|
featureName: string;
|
|
29
27
|
|
|
30
28
|
constructor(params: {
|
|
31
|
-
value:
|
|
29
|
+
value: FlagValue;
|
|
32
30
|
enabled: boolean;
|
|
33
31
|
isDefault?: boolean;
|
|
34
32
|
featureId: number;
|
|
@@ -82,7 +80,7 @@ export class Flags {
|
|
|
82
80
|
defaultFlagHandler?: (f: string) => DefaultFlag;
|
|
83
81
|
identityID?: string | number;
|
|
84
82
|
}): Flags {
|
|
85
|
-
const flags: { [key: string]:
|
|
83
|
+
const flags: { [key: string]: Flag } = {};
|
|
86
84
|
for (const fs of data.featureStates) {
|
|
87
85
|
flags[fs.feature.name] = Flag.fromFeatureStateModel(fs, data.identityID);
|
|
88
86
|
}
|
|
@@ -98,7 +96,7 @@ export class Flags {
|
|
|
98
96
|
analyticsProcessor?: AnalyticsProcessor;
|
|
99
97
|
defaultFlagHandler?: (v: string) => DefaultFlag;
|
|
100
98
|
}): Flags {
|
|
101
|
-
const flags: { [key: string]:
|
|
99
|
+
const flags: { [key: string]: Flag } = {};
|
|
102
100
|
|
|
103
101
|
for (const flagData of data.apiFlags) {
|
|
104
102
|
flags[flagData['feature']['name']] = Flag.fromAPIFlag(flagData);
|
|
@@ -124,7 +122,6 @@ export class Flags {
|
|
|
124
122
|
}
|
|
125
123
|
|
|
126
124
|
return { enabled: false, isDefault: true, value: undefined };
|
|
127
|
-
|
|
128
125
|
}
|
|
129
126
|
|
|
130
127
|
if (this.analyticsProcessor && flag.featureId) {
|
|
@@ -134,7 +131,7 @@ export class Flags {
|
|
|
134
131
|
return flag;
|
|
135
132
|
}
|
|
136
133
|
|
|
137
|
-
getFeatureValue(featureName: string):
|
|
134
|
+
getFeatureValue(featureName: string): FlagValue {
|
|
138
135
|
return this.getFlag(featureName).value;
|
|
139
136
|
}
|
|
140
137
|
|