@featurevisor/core 2.18.0 → 2.19.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.
Files changed (93) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/coverage/clover.xml +1581 -1119
  3. package/coverage/coverage-final.json +29 -22
  4. package/coverage/lcov-report/builder/allocator.ts.html +26 -26
  5. package/coverage/lcov-report/builder/buildDatafile.ts.html +2017 -0
  6. package/coverage/lcov-report/builder/buildScopedConditions.ts.html +35 -35
  7. package/coverage/lcov-report/builder/buildScopedDatafile.ts.html +213 -45
  8. package/coverage/lcov-report/builder/buildScopedSegments.ts.html +28 -28
  9. package/coverage/lcov-report/builder/convertToV1.ts.html +583 -0
  10. package/coverage/lcov-report/builder/getFeatureRanges.ts.html +268 -0
  11. package/coverage/lcov-report/builder/hashes.ts.html +412 -0
  12. package/coverage/lcov-report/builder/index.html +90 -30
  13. package/coverage/lcov-report/builder/mutateVariables.ts.html +66 -45
  14. package/coverage/lcov-report/builder/mutator.ts.html +95 -95
  15. package/coverage/lcov-report/builder/revision.ts.html +1 -1
  16. package/coverage/lcov-report/builder/traffic.ts.html +60 -57
  17. package/coverage/lcov-report/config/index.html +1 -1
  18. package/coverage/lcov-report/config/index.ts.html +2 -2
  19. package/coverage/lcov-report/config/projectConfig.ts.html +28 -28
  20. package/coverage/lcov-report/datasource/adapter.ts.html +2 -2
  21. package/coverage/lcov-report/datasource/datasource.ts.html +4 -4
  22. package/coverage/lcov-report/datasource/filesystemAdapter.ts.html +34 -34
  23. package/coverage/lcov-report/datasource/index.html +1 -1
  24. package/coverage/lcov-report/datasource/index.ts.html +1 -1
  25. package/coverage/lcov-report/index.html +39 -39
  26. package/coverage/lcov-report/linter/attributeSchema.ts.html +1 -1
  27. package/coverage/lcov-report/linter/checkCircularDependency.ts.html +1 -1
  28. package/coverage/lcov-report/linter/checkPercentageExceedingSlot.ts.html +1 -1
  29. package/coverage/lcov-report/linter/conditionSchema.ts.html +17 -17
  30. package/coverage/lcov-report/linter/featureSchema.ts.html +686 -401
  31. package/coverage/lcov-report/linter/groupSchema.ts.html +1 -1
  32. package/coverage/lcov-report/linter/index.html +27 -27
  33. package/coverage/lcov-report/linter/lintProject.ts.html +25 -25
  34. package/coverage/lcov-report/linter/mutationNotation.ts.html +191 -122
  35. package/coverage/lcov-report/linter/printError.ts.html +1 -1
  36. package/coverage/lcov-report/linter/schema.ts.html +72 -72
  37. package/coverage/lcov-report/linter/segmentSchema.ts.html +1 -1
  38. package/coverage/lcov-report/linter/testSchema.ts.html +5 -5
  39. package/coverage/lcov-report/list/index.html +1 -1
  40. package/coverage/lcov-report/list/matrix.ts.html +1 -1
  41. package/coverage/lcov-report/parsers/index.html +1 -1
  42. package/coverage/lcov-report/parsers/index.ts.html +4 -4
  43. package/coverage/lcov-report/parsers/json.ts.html +2 -2
  44. package/coverage/lcov-report/parsers/yml.ts.html +6 -6
  45. package/coverage/lcov-report/tester/cliFormat.ts.html +1 -1
  46. package/coverage/lcov-report/tester/helpers.ts.html +1 -1
  47. package/coverage/lcov-report/tester/index.html +1 -1
  48. package/coverage/lcov-report/utils/extractKeys.ts.html +493 -0
  49. package/coverage/lcov-report/utils/git.ts.html +3 -3
  50. package/coverage/lcov-report/utils/index.html +54 -9
  51. package/coverage/lcov-report/utils/index.ts.html +94 -0
  52. package/coverage/lcov-report/utils/pretty.ts.html +121 -0
  53. package/coverage/lcov.info +2955 -2095
  54. package/lib/builder/buildDatafile.js +50 -3
  55. package/lib/builder/buildDatafile.js.map +1 -1
  56. package/lib/builder/buildDatafile.spec.d.ts +1 -0
  57. package/lib/builder/buildDatafile.spec.js +233 -0
  58. package/lib/builder/buildDatafile.spec.js.map +1 -0
  59. package/lib/builder/buildScopedDatafile.js +37 -1
  60. package/lib/builder/buildScopedDatafile.js.map +1 -1
  61. package/lib/builder/buildScopedDatafile.spec.js +289 -0
  62. package/lib/builder/buildScopedDatafile.spec.js.map +1 -1
  63. package/lib/builder/mutateVariables.d.ts +1 -1
  64. package/lib/builder/mutateVariables.js +4 -1
  65. package/lib/builder/mutateVariables.js.map +1 -1
  66. package/lib/builder/mutateVariables.spec.js +29 -0
  67. package/lib/builder/mutateVariables.spec.js.map +1 -1
  68. package/lib/builder/traffic.js +1 -0
  69. package/lib/builder/traffic.js.map +1 -1
  70. package/lib/builder/traffic.spec.js +26 -0
  71. package/lib/builder/traffic.spec.js.map +1 -1
  72. package/lib/linter/featureSchema.d.ts +228 -22
  73. package/lib/linter/featureSchema.js +137 -76
  74. package/lib/linter/featureSchema.js.map +1 -1
  75. package/lib/linter/featureSchema.spec.js +175 -0
  76. package/lib/linter/featureSchema.spec.js.map +1 -1
  77. package/lib/linter/mutationNotation.js +35 -10
  78. package/lib/linter/mutationNotation.js.map +1 -1
  79. package/lib/linter/mutationNotation.spec.js +31 -0
  80. package/lib/linter/mutationNotation.spec.js.map +1 -1
  81. package/package.json +5 -5
  82. package/src/builder/buildDatafile.spec.ts +267 -0
  83. package/src/builder/buildDatafile.ts +85 -4
  84. package/src/builder/buildScopedDatafile.spec.ts +330 -0
  85. package/src/builder/buildScopedDatafile.ts +57 -1
  86. package/src/builder/mutateVariables.spec.ts +45 -0
  87. package/src/builder/mutateVariables.ts +7 -0
  88. package/src/builder/traffic.spec.ts +33 -0
  89. package/src/builder/traffic.ts +1 -0
  90. package/src/linter/featureSchema.spec.ts +197 -0
  91. package/src/linter/featureSchema.ts +204 -109
  92. package/src/linter/mutationNotation.spec.ts +39 -0
  93. package/src/linter/mutationNotation.ts +30 -7
@@ -231,20 +231,20 @@
231
231
  <span class="cline-any cline-neutral">&nbsp;</span>
232
232
  <span class="cline-any cline-neutral">&nbsp;</span>
233
233
  <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-yes">96x</span>
235
- <span class="cline-any cline-yes">96x</span>
234
+ <span class="cline-any cline-yes">112x</span>
235
+ <span class="cline-any cline-yes">112x</span>
236
236
  <span class="cline-any cline-neutral">&nbsp;</span>
237
- <span class="cline-any cline-yes">96x</span>
237
+ <span class="cline-any cline-yes">112x</span>
238
238
  <span class="cline-any cline-neutral">&nbsp;</span>
239
239
  <span class="cline-any cline-neutral">&nbsp;</span>
240
240
  <span class="cline-any cline-yes">2x</span>
241
241
  <span class="cline-any cline-neutral">&nbsp;</span>
242
242
  <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-yes">356x</span>
244
- <span class="cline-any cline-yes">192x</span>
243
+ <span class="cline-any cline-yes">376x</span>
244
+ <span class="cline-any cline-yes">209x</span>
245
245
  <span class="cline-any cline-neutral">&nbsp;</span>
246
246
  <span class="cline-any cline-neutral">&nbsp;</span>
247
- <span class="cline-any cline-yes">164x</span>
247
+ <span class="cline-any cline-yes">167x</span>
248
248
  <span class="cline-any cline-neutral">&nbsp;</span>
249
249
  <span class="cline-any cline-yes">39x</span>
250
250
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -259,16 +259,16 @@
259
259
  <span class="cline-any cline-yes">9x</span>
260
260
  <span class="cline-any cline-neutral">&nbsp;</span>
261
261
  <span class="cline-any cline-neutral">&nbsp;</span>
262
- <span class="cline-any cline-yes">146x</span>
263
- <span class="cline-any cline-yes">78x</span>
264
- <span class="cline-any cline-yes">37x</span>
265
- <span class="cline-any cline-yes">95x</span>
262
+ <span class="cline-any cline-yes">149x</span>
263
+ <span class="cline-any cline-yes">80x</span>
264
+ <span class="cline-any cline-yes">39x</span>
265
+ <span class="cline-any cline-yes">99x</span>
266
266
  <span class="cline-any cline-neutral">&nbsp;</span>
267
- <span class="cline-any cline-yes">95x</span>
267
+ <span class="cline-any cline-yes">99x</span>
268
268
  <span class="cline-any cline-neutral">&nbsp;</span>
269
269
  <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-yes">37x</span>
271
- <span class="cline-any cline-yes">19x</span>
270
+ <span class="cline-any cline-yes">39x</span>
271
+ <span class="cline-any cline-yes">21x</span>
272
272
  <span class="cline-any cline-neutral">&nbsp;</span>
273
273
  <span class="cline-any cline-neutral">&nbsp;</span>
274
274
  <span class="cline-any cline-yes">18x</span>
@@ -309,7 +309,7 @@
309
309
  <span class="cline-any cline-neutral">&nbsp;</span>
310
310
  <span class="cline-any cline-neutral">&nbsp;</span>
311
311
  <span class="cline-any cline-neutral">&nbsp;</span>
312
- <span class="cline-any cline-yes">68x</span>
312
+ <span class="cline-any cline-yes">69x</span>
313
313
  <span class="cline-any cline-neutral">&nbsp;</span>
314
314
  <span class="cline-any cline-neutral">&nbsp;</span>
315
315
  <span class="cline-any cline-yes">2x</span>
@@ -318,34 +318,34 @@
318
318
  <span class="cline-any cline-neutral">&nbsp;</span>
319
319
  <span class="cline-any cline-neutral">&nbsp;</span>
320
320
  <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-yes">334x</span>
322
- <span class="cline-any cline-yes">15x</span>
321
+ <span class="cline-any cline-yes">354x</span>
322
+ <span class="cline-any cline-yes">22x</span>
323
323
  <span class="cline-any cline-neutral">&nbsp;</span>
324
324
  <span class="cline-any cline-neutral">&nbsp;</span>
325
- <span class="cline-any cline-yes">319x</span>
325
+ <span class="cline-any cline-yes">332x</span>
326
326
  <span class="cline-any cline-yes">23x</span>
327
327
  <span class="cline-any cline-yes">45x</span>
328
328
  <span class="cline-any cline-neutral">&nbsp;</span>
329
329
  <span class="cline-any cline-neutral">&nbsp;</span>
330
330
  <span class="cline-any cline-neutral">&nbsp;</span>
331
- <span class="cline-any cline-yes">296x</span>
332
- <span class="cline-any cline-yes">217x</span>
333
- <span class="cline-any cline-yes">75x</span>
331
+ <span class="cline-any cline-yes">309x</span>
332
+ <span class="cline-any cline-yes">228x</span>
333
+ <span class="cline-any cline-yes">85x</span>
334
334
  <span class="cline-any cline-neutral">&nbsp;</span>
335
335
  <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-yes">142x</span>
336
+ <span class="cline-any cline-yes">143x</span>
337
337
  <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-yes">142x</span>
338
+ <span class="cline-any cline-yes">143x</span>
339
339
  <span class="cline-any cline-yes">67x</span>
340
340
  <span class="cline-any cline-neutral">&nbsp;</span>
341
341
  <span class="cline-any cline-neutral">&nbsp;</span>
342
342
  <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-yes">154x</span>
343
+ <span class="cline-any cline-yes">157x</span>
344
344
  <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-yes">79x</span>
346
- <span class="cline-any cline-yes">35x</span>
345
+ <span class="cline-any cline-yes">81x</span>
346
+ <span class="cline-any cline-yes">37x</span>
347
347
  <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-yes">71x</span>
348
+ <span class="cline-any cline-yes">75x</span>
349
349
  <span class="cline-any cline-neutral">&nbsp;</span>
350
350
  <span class="cline-any cline-neutral">&nbsp;</span>
351
351
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -367,7 +367,7 @@
367
367
  <span class="cline-any cline-neutral">&nbsp;</span>
368
368
  <span class="cline-any cline-neutral">&nbsp;</span>
369
369
  <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-yes">75x</span>
370
+ <span class="cline-any cline-yes">76x</span>
371
371
  <span class="cline-any cline-neutral">&nbsp;</span>
372
372
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import type {
373
373
  GroupSegment,
@@ -529,7 +529,7 @@ export function buildScopedGroupSegments(
529
529
  <div class='footer quiet pad2 space-top1 center small'>
530
530
  Code coverage generated by
531
531
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
532
- at 2026-02-27T20:35:38.828Z
532
+ at 2026-03-01T20:34:15.761Z
533
533
  </div>
534
534
  <script src="../prettify.js"></script>
535
535
  <script>