@featurevisor/core 1.29.2 → 1.30.0
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/CHANGELOG.md +19 -0
- package/coverage/clover.xml +2 -2
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/lib/builder/allocator.js.html +1 -1
- package/coverage/lcov-report/lib/builder/index.html +1 -1
- package/coverage/lcov-report/lib/builder/revision.js.html +1 -1
- package/coverage/lcov-report/lib/builder/traffic.js.html +1 -1
- package/coverage/lcov-report/lib/tester/checkIfObjectsAreEqual.js.html +1 -1
- package/coverage/lcov-report/lib/tester/index.html +1 -1
- package/coverage/lcov-report/lib/tester/matrix.js.html +1 -1
- package/coverage/lcov-report/src/builder/allocator.ts.html +1 -1
- package/coverage/lcov-report/src/builder/index.html +1 -1
- package/coverage/lcov-report/src/builder/revision.ts.html +1 -1
- package/coverage/lcov-report/src/builder/traffic.ts.html +1 -1
- package/coverage/lcov-report/src/tester/checkIfObjectsAreEqual.ts.html +1 -1
- package/coverage/lcov-report/src/tester/index.html +1 -1
- package/coverage/lcov-report/src/tester/matrix.ts.html +1 -1
- package/lib/config/projectConfig.d.ts +7 -3
- package/lib/config/projectConfig.js +4 -0
- package/lib/config/projectConfig.js.map +1 -1
- package/lib/linter/featureSchema.js +43 -5
- package/lib/linter/featureSchema.js.map +1 -1
- package/package.json +3 -3
- package/src/config/projectConfig.ts +17 -3
- package/src/linter/featureSchema.ts +58 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.30.0](https://github.com/featurevisor/featurevisor/compare/v1.29.3...v1.30.0) (2025-02-04)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* allow setting max character limits for variables ([#342](https://github.com/featurevisor/featurevisor/issues/342)) ([14bff84](https://github.com/featurevisor/featurevisor/commit/14bff84eafcc01929fb7e072b63f5802bf836d26))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [1.29.3](https://github.com/featurevisor/featurevisor/compare/v1.29.2...v1.29.3) (2025-01-30)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @featurevisor/core
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
## [1.29.2](https://github.com/featurevisor/featurevisor/compare/v1.29.1...v1.29.2) (2025-01-25)
|
|
7
26
|
|
|
8
27
|
**Note:** Version bump only for package @featurevisor/core
|
package/coverage/clover.xml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<coverage generated="
|
|
3
|
-
<project timestamp="
|
|
2
|
+
<coverage generated="1738706877287" clover="3.2.0">
|
|
3
|
+
<project timestamp="1738706877288" name="All files">
|
|
4
4
|
<metrics statements="376" coveredstatements="255" conditionals="193" coveredconditionals="122" methods="54" coveredmethods="37" elements="623" coveredelements="414" complexity="0" loc="376" ncloc="376" packages="4" files="10" classes="10"/>
|
|
5
5
|
<package name="lib.builder">
|
|
6
6
|
<metrics statements="103" coveredstatements="97" conditionals="60" coveredconditionals="50" methods="15" coveredmethods="15"/>
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
147
147
|
Code coverage generated by
|
|
148
148
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
149
|
-
at 2025-
|
|
149
|
+
at 2025-02-04T22:07:57.271Z
|
|
150
150
|
</div>
|
|
151
151
|
<script src="prettify.js"></script>
|
|
152
152
|
<script>
|
|
@@ -181,7 +181,7 @@ function getUpdatedAvailableRangesAfterFilling(availableRanges, fill) {
|
|
|
181
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
182
|
Code coverage generated by
|
|
183
183
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
184
|
-
at 2025-
|
|
184
|
+
at 2025-02-04T22:07:57.271Z
|
|
185
185
|
</div>
|
|
186
186
|
<script src="../../prettify.js"></script>
|
|
187
187
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at 2025-
|
|
134
|
+
at 2025-02-04T22:07:57.271Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -133,7 +133,7 @@ function getNextRevision(currentRevision) {
|
|
|
133
133
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
134
134
|
Code coverage generated by
|
|
135
135
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
136
|
-
at 2025-
|
|
136
|
+
at 2025-02-04T22:07:57.271Z
|
|
137
137
|
</div>
|
|
138
138
|
<script src="../../prettify.js"></script>
|
|
139
139
|
<script>
|
|
@@ -451,7 +451,7 @@ ranges) {
|
|
|
451
451
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
452
452
|
Code coverage generated by
|
|
453
453
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
454
|
-
at 2025-
|
|
454
|
+
at 2025-02-04T22:07:57.271Z
|
|
455
455
|
</div>
|
|
456
456
|
<script src="../../prettify.js"></script>
|
|
457
457
|
<script>
|
|
@@ -136,7 +136,7 @@ function checkIfObjectsAreEqual(a, b) {
|
|
|
136
136
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
137
137
|
Code coverage generated by
|
|
138
138
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
139
|
-
at 2025-
|
|
139
|
+
at 2025-02-04T22:07:57.271Z
|
|
140
140
|
</div>
|
|
141
141
|
<script src="../../prettify.js"></script>
|
|
142
142
|
<script>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at 2025-
|
|
119
|
+
at 2025-02-04T22:07:57.271Z
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -469,7 +469,7 @@ function <span class="fstat-no" title="function not covered" >getSegmentAssertio
|
|
|
469
469
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
470
470
|
Code coverage generated by
|
|
471
471
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
472
|
-
at 2025-
|
|
472
|
+
at 2025-02-04T22:07:57.271Z
|
|
473
473
|
</div>
|
|
474
474
|
<script src="../../prettify.js"></script>
|
|
475
475
|
<script>
|
|
@@ -205,7 +205,7 @@ export function getUpdatedAvailableRangesAfterFilling(
|
|
|
205
205
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
206
206
|
Code coverage generated by
|
|
207
207
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
208
|
-
at 2025-
|
|
208
|
+
at 2025-02-04T22:07:57.271Z
|
|
209
209
|
</div>
|
|
210
210
|
<script src="../../prettify.js"></script>
|
|
211
211
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at 2025-
|
|
134
|
+
at 2025-02-04T22:07:57.271Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
137
137
|
Code coverage generated by
|
|
138
138
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
139
|
-
at 2025-
|
|
139
|
+
at 2025-02-04T22:07:57.271Z
|
|
140
140
|
</div>
|
|
141
141
|
<script src="../../prettify.js"></script>
|
|
142
142
|
<script>
|
|
@@ -565,7 +565,7 @@ export function getTraffic(
|
|
|
565
565
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
566
566
|
Code coverage generated by
|
|
567
567
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
568
|
-
at 2025-
|
|
568
|
+
at 2025-02-04T22:07:57.271Z
|
|
569
569
|
</div>
|
|
570
570
|
<script src="../../prettify.js"></script>
|
|
571
571
|
<script>
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at 2025-
|
|
145
|
+
at 2025-02-04T22:07:57.271Z
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at 2025-
|
|
119
|
+
at 2025-02-04T22:07:57.271Z
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -625,7 +625,7 @@ export function <span class="fstat-no" title="function not covered" >getSegmentA
|
|
|
625
625
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
626
626
|
Code coverage generated by
|
|
627
627
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
628
|
-
at 2025-
|
|
628
|
+
at 2025-02-04T22:07:57.271Z
|
|
629
629
|
</div>
|
|
630
630
|
<script src="../../prettify.js"></script>
|
|
631
631
|
<script>
|
|
@@ -26,17 +26,21 @@ export interface ProjectConfig {
|
|
|
26
26
|
testsDirectoryPath: string;
|
|
27
27
|
stateDirectoryPath: string;
|
|
28
28
|
outputDirectoryPath: string;
|
|
29
|
+
siteExportDirectoryPath: string;
|
|
29
30
|
environments: string[];
|
|
30
31
|
tags: string[];
|
|
32
|
+
adapter: any;
|
|
33
|
+
plugins: Plugin[];
|
|
31
34
|
defaultBucketBy: BucketBy;
|
|
32
35
|
parser: Parser;
|
|
33
36
|
prettyState: boolean;
|
|
34
37
|
prettyDatafile: boolean;
|
|
35
38
|
stringify: boolean;
|
|
36
|
-
siteExportDirectoryPath: string;
|
|
37
39
|
enforceCatchAllRule?: boolean;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
+
maxVariableStringLength?: number;
|
|
41
|
+
maxVariableArrayStringifiedLength?: number;
|
|
42
|
+
maxVariableObjectStringifiedLength?: number;
|
|
43
|
+
maxVariableJSONStringifiedLength?: number;
|
|
40
44
|
}
|
|
41
45
|
export declare function getProjectConfig(rootDirectoryPath: string): ProjectConfig;
|
|
42
46
|
export interface ShowProjectConfigOptions {
|
|
@@ -80,6 +80,10 @@ function getProjectConfig(rootDirectoryPath) {
|
|
|
80
80
|
siteExportDirectoryPath: path.join(rootDirectoryPath, exports.SITE_EXPORT_DIRECTORY_NAME),
|
|
81
81
|
enforceCatchAllRule: false,
|
|
82
82
|
plugins: [],
|
|
83
|
+
maxVariableStringLength: undefined,
|
|
84
|
+
maxVariableArrayStringifiedLength: undefined,
|
|
85
|
+
maxVariableObjectStringifiedLength: undefined,
|
|
86
|
+
maxVariableJSONStringifiedLength: undefined,
|
|
83
87
|
};
|
|
84
88
|
var configModulePath = path.join(rootDirectoryPath, exports.CONFIG_MODULE_NAME);
|
|
85
89
|
var customConfig = require(configModulePath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../../src/config/projectConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../../src/config/projectConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ function isFlatObject(value) {
|
|
|
15
15
|
function isArrayOfStrings(value) {
|
|
16
16
|
return Array.isArray(value) && value.every(function (v) { return typeof v === "string"; });
|
|
17
17
|
}
|
|
18
|
-
function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
18
|
+
function superRefineVariableValue(projectConfig, variableSchema, variableValue, path, ctx) {
|
|
19
19
|
if (!variableSchema) {
|
|
20
20
|
var message = "Unknown variable with value: ".concat(variableValue);
|
|
21
21
|
if (path.length > 0) {
|
|
@@ -40,6 +40,14 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
40
40
|
path: path,
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
|
+
if (projectConfig.maxVariableStringLength &&
|
|
44
|
+
variableValue.length > projectConfig.maxVariableStringLength) {
|
|
45
|
+
ctx.addIssue({
|
|
46
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
47
|
+
message: "Variable \"".concat(variableSchema.key, "\" value is too long (").concat(variableValue.length, " characters), max length is ").concat(projectConfig.maxVariableStringLength),
|
|
48
|
+
path: path,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
43
51
|
return;
|
|
44
52
|
}
|
|
45
53
|
// integer, double
|
|
@@ -73,6 +81,16 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
73
81
|
path: path,
|
|
74
82
|
});
|
|
75
83
|
}
|
|
84
|
+
if (projectConfig.maxVariableArrayStringifiedLength) {
|
|
85
|
+
var stringified = JSON.stringify(variableValue);
|
|
86
|
+
if (stringified.length > projectConfig.maxVariableArrayStringifiedLength) {
|
|
87
|
+
ctx.addIssue({
|
|
88
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
89
|
+
message: "Variable \"".concat(variableSchema.key, "\" array is too long (").concat(stringified.length, " characters), max length is ").concat(projectConfig.maxVariableArrayStringifiedLength),
|
|
90
|
+
path: path,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
76
94
|
return;
|
|
77
95
|
}
|
|
78
96
|
// object
|
|
@@ -84,12 +102,32 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
84
102
|
path: path,
|
|
85
103
|
});
|
|
86
104
|
}
|
|
105
|
+
if (projectConfig.maxVariableObjectStringifiedLength) {
|
|
106
|
+
var stringified = JSON.stringify(variableValue);
|
|
107
|
+
if (stringified.length > projectConfig.maxVariableObjectStringifiedLength) {
|
|
108
|
+
ctx.addIssue({
|
|
109
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
110
|
+
message: "Variable \"".concat(variableSchema.key, "\" object is too long (").concat(stringified.length, " characters), max length is ").concat(projectConfig.maxVariableObjectStringifiedLength),
|
|
111
|
+
path: path,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
87
115
|
return;
|
|
88
116
|
}
|
|
89
117
|
// json
|
|
90
118
|
if (variableSchema.type === "json") {
|
|
91
119
|
try {
|
|
92
120
|
JSON.parse(variableValue);
|
|
121
|
+
if (projectConfig.maxVariableJSONStringifiedLength) {
|
|
122
|
+
var stringified = variableValue;
|
|
123
|
+
if (stringified.length > projectConfig.maxVariableJSONStringifiedLength) {
|
|
124
|
+
ctx.addIssue({
|
|
125
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
126
|
+
message: "Variable \"".concat(variableSchema.key, "\" JSON is too long (").concat(stringified.length, " characters), max length is ").concat(projectConfig.maxVariableJSONStringifiedLength),
|
|
127
|
+
path: path,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
93
131
|
}
|
|
94
132
|
catch (e) {
|
|
95
133
|
ctx.addIssue({
|
|
@@ -316,7 +354,7 @@ function getFeatureZodSchema(projectConfig, conditionsZodSchema, availableAttrib
|
|
|
316
354
|
// variablesSchema[n].defaultValue
|
|
317
355
|
allVariablesSchema.forEach(function (variableSchema, n) {
|
|
318
356
|
variableSchemaByKey[variableSchema.key] = variableSchema;
|
|
319
|
-
superRefineVariableValue(variableSchema, variableSchema.defaultValue, ["variablesSchema", n, "defaultValue"], ctx);
|
|
357
|
+
superRefineVariableValue(projectConfig, variableSchema, variableSchema.defaultValue, ["variablesSchema", n, "defaultValue"], ctx);
|
|
320
358
|
});
|
|
321
359
|
// variations[n].variables[n].value
|
|
322
360
|
if (value.variations) {
|
|
@@ -325,11 +363,11 @@ function getFeatureZodSchema(projectConfig, conditionsZodSchema, availableAttrib
|
|
|
325
363
|
return;
|
|
326
364
|
}
|
|
327
365
|
variation.variables.forEach(function (variable, variableN) {
|
|
328
|
-
superRefineVariableValue(variableSchemaByKey[variable.key], variable.value, ["variations", variationN, "variables", variableN, "value"], ctx);
|
|
366
|
+
superRefineVariableValue(projectConfig, variableSchemaByKey[variable.key], variable.value, ["variations", variationN, "variables", variableN, "value"], ctx);
|
|
329
367
|
// variations[n].variables[n].overrides[n].value
|
|
330
368
|
if (variable.overrides) {
|
|
331
369
|
variable.overrides.forEach(function (override, overrideN) {
|
|
332
|
-
superRefineVariableValue(variableSchemaByKey[variable.key], override.value, [
|
|
370
|
+
superRefineVariableValue(projectConfig, variableSchemaByKey[variable.key], override.value, [
|
|
333
371
|
"variations",
|
|
334
372
|
variationN,
|
|
335
373
|
"variables",
|
|
@@ -348,7 +386,7 @@ function getFeatureZodSchema(projectConfig, conditionsZodSchema, availableAttrib
|
|
|
348
386
|
value.environments[environmentKey].rules.forEach(function (rule, ruleN) {
|
|
349
387
|
if (rule.variables) {
|
|
350
388
|
Object.keys(rule.variables).forEach(function (variableKey) {
|
|
351
|
-
superRefineVariableValue(variableSchemaByKey[variableKey], rule.variables[variableKey], ["environments", environmentKey, "rules", ruleN, "variables", variableKey], ctx);
|
|
389
|
+
superRefineVariableValue(projectConfig, variableSchemaByKey[variableKey], rule.variables[variableKey], ["environments", environmentKey, "rules", ruleN, "variables", variableKey], ctx);
|
|
352
390
|
});
|
|
353
391
|
}
|
|
354
392
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"featureSchema.js","sourceRoot":"","sources":["../../src/linter/featureSchema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"featureSchema.js","sourceRoot":"","sources":["../../src/linter/featureSchema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@featurevisor/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.30.0",
|
|
4
4
|
"description": "Core package of Featurevisor for Node.js usage",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"license": "MIT",
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@featurevisor/sdk": "1.29.
|
|
43
|
+
"@featurevisor/sdk": "1.29.3",
|
|
44
44
|
"@featurevisor/site": "1.29.2",
|
|
45
45
|
"@featurevisor/types": "1.29.2",
|
|
46
46
|
"axios": "^1.3.4",
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"@types/js-yaml": "^4.0.5",
|
|
55
55
|
"@types/tar": "^6.1.4"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "21fe75ca861d48c844187c67ed39d6d53566e4cf"
|
|
58
58
|
}
|
|
@@ -37,17 +37,26 @@ export interface ProjectConfig {
|
|
|
37
37
|
testsDirectoryPath: string;
|
|
38
38
|
stateDirectoryPath: string;
|
|
39
39
|
outputDirectoryPath: string;
|
|
40
|
+
siteExportDirectoryPath: string;
|
|
41
|
+
|
|
40
42
|
environments: string[];
|
|
41
43
|
tags: string[];
|
|
44
|
+
|
|
45
|
+
adapter: any; // @TODO: type this properly later
|
|
46
|
+
plugins: Plugin[];
|
|
47
|
+
|
|
42
48
|
defaultBucketBy: BucketBy;
|
|
43
49
|
parser: Parser;
|
|
50
|
+
|
|
44
51
|
prettyState: boolean;
|
|
45
52
|
prettyDatafile: boolean;
|
|
46
53
|
stringify: boolean;
|
|
47
|
-
|
|
54
|
+
|
|
48
55
|
enforceCatchAllRule?: boolean;
|
|
49
|
-
|
|
50
|
-
|
|
56
|
+
maxVariableStringLength?: number;
|
|
57
|
+
maxVariableArrayStringifiedLength?: number;
|
|
58
|
+
maxVariableObjectStringifiedLength?: number;
|
|
59
|
+
maxVariableJSONStringifiedLength?: number;
|
|
51
60
|
}
|
|
52
61
|
|
|
53
62
|
// rootDirectoryPath: path to the root directory of the project (without ending with a slash)
|
|
@@ -76,6 +85,11 @@ export function getProjectConfig(rootDirectoryPath: string): ProjectConfig {
|
|
|
76
85
|
|
|
77
86
|
enforceCatchAllRule: false,
|
|
78
87
|
plugins: [],
|
|
88
|
+
|
|
89
|
+
maxVariableStringLength: undefined,
|
|
90
|
+
maxVariableArrayStringifiedLength: undefined,
|
|
91
|
+
maxVariableObjectStringifiedLength: undefined,
|
|
92
|
+
maxVariableJSONStringifiedLength: undefined,
|
|
79
93
|
};
|
|
80
94
|
|
|
81
95
|
const configModulePath = path.join(rootDirectoryPath, CONFIG_MODULE_NAME);
|
|
@@ -20,7 +20,13 @@ function isArrayOfStrings(value) {
|
|
|
20
20
|
return Array.isArray(value) && value.every((v) => typeof v === "string");
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
function superRefineVariableValue(
|
|
23
|
+
function superRefineVariableValue(
|
|
24
|
+
projectConfig: ProjectConfig,
|
|
25
|
+
variableSchema,
|
|
26
|
+
variableValue,
|
|
27
|
+
path,
|
|
28
|
+
ctx,
|
|
29
|
+
) {
|
|
24
30
|
if (!variableSchema) {
|
|
25
31
|
let message = `Unknown variable with value: ${variableValue}`;
|
|
26
32
|
|
|
@@ -51,6 +57,17 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
51
57
|
});
|
|
52
58
|
}
|
|
53
59
|
|
|
60
|
+
if (
|
|
61
|
+
projectConfig.maxVariableStringLength &&
|
|
62
|
+
variableValue.length > projectConfig.maxVariableStringLength
|
|
63
|
+
) {
|
|
64
|
+
ctx.addIssue({
|
|
65
|
+
code: z.ZodIssueCode.custom,
|
|
66
|
+
message: `Variable "${variableSchema.key}" value is too long (${variableValue.length} characters), max length is ${projectConfig.maxVariableStringLength}`,
|
|
67
|
+
path,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
|
|
54
71
|
return;
|
|
55
72
|
}
|
|
56
73
|
|
|
@@ -90,6 +107,18 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
90
107
|
});
|
|
91
108
|
}
|
|
92
109
|
|
|
110
|
+
if (projectConfig.maxVariableArrayStringifiedLength) {
|
|
111
|
+
const stringified = JSON.stringify(variableValue);
|
|
112
|
+
|
|
113
|
+
if (stringified.length > projectConfig.maxVariableArrayStringifiedLength) {
|
|
114
|
+
ctx.addIssue({
|
|
115
|
+
code: z.ZodIssueCode.custom,
|
|
116
|
+
message: `Variable "${variableSchema.key}" array is too long (${stringified.length} characters), max length is ${projectConfig.maxVariableArrayStringifiedLength}`,
|
|
117
|
+
path,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
93
122
|
return;
|
|
94
123
|
}
|
|
95
124
|
|
|
@@ -103,6 +132,18 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
103
132
|
});
|
|
104
133
|
}
|
|
105
134
|
|
|
135
|
+
if (projectConfig.maxVariableObjectStringifiedLength) {
|
|
136
|
+
const stringified = JSON.stringify(variableValue);
|
|
137
|
+
|
|
138
|
+
if (stringified.length > projectConfig.maxVariableObjectStringifiedLength) {
|
|
139
|
+
ctx.addIssue({
|
|
140
|
+
code: z.ZodIssueCode.custom,
|
|
141
|
+
message: `Variable "${variableSchema.key}" object is too long (${stringified.length} characters), max length is ${projectConfig.maxVariableObjectStringifiedLength}`,
|
|
142
|
+
path,
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
106
147
|
return;
|
|
107
148
|
}
|
|
108
149
|
|
|
@@ -110,6 +151,18 @@ function superRefineVariableValue(variableSchema, variableValue, path, ctx) {
|
|
|
110
151
|
if (variableSchema.type === "json") {
|
|
111
152
|
try {
|
|
112
153
|
JSON.parse(variableValue as string);
|
|
154
|
+
|
|
155
|
+
if (projectConfig.maxVariableJSONStringifiedLength) {
|
|
156
|
+
const stringified = variableValue;
|
|
157
|
+
|
|
158
|
+
if (stringified.length > projectConfig.maxVariableJSONStringifiedLength) {
|
|
159
|
+
ctx.addIssue({
|
|
160
|
+
code: z.ZodIssueCode.custom,
|
|
161
|
+
message: `Variable "${variableSchema.key}" JSON is too long (${stringified.length} characters), max length is ${projectConfig.maxVariableJSONStringifiedLength}`,
|
|
162
|
+
path,
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
113
166
|
} catch (e) {
|
|
114
167
|
ctx.addIssue({
|
|
115
168
|
code: z.ZodIssueCode.custom,
|
|
@@ -410,6 +463,7 @@ export function getFeatureZodSchema(
|
|
|
410
463
|
variableSchemaByKey[variableSchema.key] = variableSchema;
|
|
411
464
|
|
|
412
465
|
superRefineVariableValue(
|
|
466
|
+
projectConfig,
|
|
413
467
|
variableSchema,
|
|
414
468
|
variableSchema.defaultValue,
|
|
415
469
|
["variablesSchema", n, "defaultValue"],
|
|
@@ -426,6 +480,7 @@ export function getFeatureZodSchema(
|
|
|
426
480
|
|
|
427
481
|
variation.variables.forEach((variable, variableN) => {
|
|
428
482
|
superRefineVariableValue(
|
|
483
|
+
projectConfig,
|
|
429
484
|
variableSchemaByKey[variable.key],
|
|
430
485
|
variable.value,
|
|
431
486
|
["variations", variationN, "variables", variableN, "value"],
|
|
@@ -436,6 +491,7 @@ export function getFeatureZodSchema(
|
|
|
436
491
|
if (variable.overrides) {
|
|
437
492
|
variable.overrides.forEach((override, overrideN) => {
|
|
438
493
|
superRefineVariableValue(
|
|
494
|
+
projectConfig,
|
|
439
495
|
variableSchemaByKey[variable.key],
|
|
440
496
|
override.value,
|
|
441
497
|
[
|
|
@@ -461,6 +517,7 @@ export function getFeatureZodSchema(
|
|
|
461
517
|
if (rule.variables) {
|
|
462
518
|
Object.keys(rule.variables).forEach((variableKey) => {
|
|
463
519
|
superRefineVariableValue(
|
|
520
|
+
projectConfig,
|
|
464
521
|
variableSchemaByKey[variableKey],
|
|
465
522
|
rule.variables[variableKey],
|
|
466
523
|
["environments", environmentKey, "rules", ruleN, "variables", variableKey],
|