@featurevisor/core 2.20.0 → 2.22.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.
Files changed (87) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/coverage/clover.xml +1286 -515
  3. package/coverage/coverage-final.json +17 -16
  4. package/coverage/lcov-report/builder/allocator.ts.html +1 -1
  5. package/coverage/lcov-report/builder/buildDatafile.ts.html +1 -1
  6. package/coverage/lcov-report/builder/buildScopedConditions.ts.html +1 -1
  7. package/coverage/lcov-report/builder/buildScopedDatafile.ts.html +1 -1
  8. package/coverage/lcov-report/builder/buildScopedSegments.ts.html +1 -1
  9. package/coverage/lcov-report/builder/convertToV1.ts.html +1 -1
  10. package/coverage/lcov-report/builder/getFeatureRanges.ts.html +1 -1
  11. package/coverage/lcov-report/builder/hashes.ts.html +1 -1
  12. package/coverage/lcov-report/builder/index.html +1 -1
  13. package/coverage/lcov-report/builder/mutateVariables.ts.html +1 -1
  14. package/coverage/lcov-report/builder/mutator.ts.html +1 -1
  15. package/coverage/lcov-report/builder/revision.ts.html +1 -1
  16. package/coverage/lcov-report/builder/traffic.ts.html +1 -1
  17. package/coverage/lcov-report/config/index.html +1 -1
  18. package/coverage/lcov-report/config/index.ts.html +1 -1
  19. package/coverage/lcov-report/config/projectConfig.ts.html +42 -42
  20. package/coverage/lcov-report/datasource/adapter.ts.html +2 -2
  21. package/coverage/lcov-report/datasource/datasource.ts.html +43 -43
  22. package/coverage/lcov-report/datasource/filesystemAdapter.ts.html +48 -48
  23. package/coverage/lcov-report/datasource/index.html +19 -19
  24. package/coverage/lcov-report/datasource/index.ts.html +4 -4
  25. package/coverage/lcov-report/generate-code/index.html +116 -0
  26. package/coverage/lcov-report/generate-code/typescript.ts.html +3004 -0
  27. package/coverage/lcov-report/index.html +44 -29
  28. package/coverage/lcov-report/linter/attributeSchema.ts.html +1815 -30
  29. package/coverage/lcov-report/linter/checkCircularDependency.ts.html +1 -1
  30. package/coverage/lcov-report/linter/checkPercentageExceedingSlot.ts.html +1 -1
  31. package/coverage/lcov-report/linter/conditionSchema.ts.html +1606 -157
  32. package/coverage/lcov-report/linter/featureSchema.ts.html +56 -56
  33. package/coverage/lcov-report/linter/groupSchema.ts.html +1 -1
  34. package/coverage/lcov-report/linter/index.html +39 -39
  35. package/coverage/lcov-report/linter/lintProject.ts.html +189 -78
  36. package/coverage/lcov-report/linter/mutationNotation.ts.html +1 -1
  37. package/coverage/lcov-report/linter/printError.ts.html +1 -1
  38. package/coverage/lcov-report/linter/schema.ts.html +59 -59
  39. package/coverage/lcov-report/linter/segmentSchema.ts.html +3 -3
  40. package/coverage/lcov-report/linter/testSchema.ts.html +6 -6
  41. package/coverage/lcov-report/list/index.html +1 -1
  42. package/coverage/lcov-report/list/matrix.ts.html +1 -1
  43. package/coverage/lcov-report/parsers/index.html +1 -1
  44. package/coverage/lcov-report/parsers/index.ts.html +4 -4
  45. package/coverage/lcov-report/parsers/json.ts.html +2 -2
  46. package/coverage/lcov-report/parsers/yml.ts.html +6 -6
  47. package/coverage/lcov-report/tester/cliFormat.ts.html +1 -1
  48. package/coverage/lcov-report/tester/helpers.ts.html +1 -1
  49. package/coverage/lcov-report/tester/index.html +1 -1
  50. package/coverage/lcov-report/utils/extractKeys.ts.html +1 -1
  51. package/coverage/lcov-report/utils/git.ts.html +3 -3
  52. package/coverage/lcov-report/utils/index.html +1 -1
  53. package/coverage/lcov-report/utils/index.ts.html +1 -1
  54. package/coverage/lcov-report/utils/pretty.ts.html +1 -1
  55. package/coverage/lcov.info +2624 -926
  56. package/lib/generate-code/typescript.js +57 -29
  57. package/lib/generate-code/typescript.js.map +1 -1
  58. package/lib/generate-code/typescript.spec.d.ts +1 -0
  59. package/lib/generate-code/typescript.spec.js +78 -0
  60. package/lib/generate-code/typescript.spec.js.map +1 -0
  61. package/lib/linter/attributeSchema.d.ts +352 -20
  62. package/lib/linter/attributeSchema.js +426 -16
  63. package/lib/linter/attributeSchema.js.map +1 -1
  64. package/lib/linter/attributeSchema.spec.d.ts +1 -0
  65. package/lib/linter/attributeSchema.spec.js +266 -0
  66. package/lib/linter/attributeSchema.spec.js.map +1 -0
  67. package/lib/linter/conditionSchema.d.ts +2 -1
  68. package/lib/linter/conditionSchema.js +370 -100
  69. package/lib/linter/conditionSchema.js.map +1 -1
  70. package/lib/linter/conditionSchema.spec.js +200 -153
  71. package/lib/linter/conditionSchema.spec.js.map +1 -1
  72. package/lib/linter/featureSchema.spec.js +114 -3
  73. package/lib/linter/featureSchema.spec.js.map +1 -1
  74. package/lib/linter/lintProject.js +45 -14
  75. package/lib/linter/lintProject.js.map +1 -1
  76. package/lib/linter/segmentSchema.spec.js +71 -1
  77. package/lib/linter/segmentSchema.spec.js.map +1 -1
  78. package/package.json +5 -5
  79. package/src/generate-code/typescript.spec.ts +108 -0
  80. package/src/generate-code/typescript.ts +80 -34
  81. package/src/linter/attributeSchema.spec.ts +342 -0
  82. package/src/linter/attributeSchema.ts +613 -18
  83. package/src/linter/conditionSchema.spec.ts +231 -189
  84. package/src/linter/conditionSchema.ts +582 -99
  85. package/src/linter/featureSchema.spec.ts +129 -4
  86. package/src/linter/lintProject.ts +55 -18
  87. package/src/linter/segmentSchema.spec.ts +82 -1
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">68.7% </span>
26
+ <span class="strong">70.5% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>2015/2933</span>
28
+ <span class='fraction'>2642/3747</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">62.76% </span>
33
+ <span class="strong">65.86% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>1104/1759</span>
35
+ <span class='fraction'>1613/2449</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">63.84% </span>
40
+ <span class="strong">68.91% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>256/401</span>
42
+ <span class='fraction'>357/518</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">70.26% </span>
47
+ <span class="strong">72.31% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>1940/2761</span>
49
+ <span class='fraction'>2550/3526</span>
50
50
  </div>
51
51
 
52
52
 
@@ -110,32 +110,47 @@
110
110
 
111
111
  <tr>
112
112
  <td class="file low" data-value="datasource"><a href="datasource/index.html">datasource</a></td>
113
- <td data-value="38.27" class="pic low">
114
- <div class="chart"><div class="cover-fill" style="width: 38%"></div><div class="cover-empty" style="width: 62%"></div></div>
113
+ <td data-value="35.18" class="pic low">
114
+ <div class="chart"><div class="cover-fill" style="width: 35%"></div><div class="cover-empty" style="width: 65%"></div></div>
115
115
  </td>
116
- <td data-value="38.27" class="pct low">38.27%</td>
117
- <td data-value="324" class="abs low">124/324</td>
118
- <td data-value="27.27" class="pct low">27.27%</td>
119
- <td data-value="121" class="abs low">33/121</td>
120
- <td data-value="40" class="pct low">40%</td>
121
- <td data-value="85" class="abs low">34/85</td>
122
- <td data-value="38.24" class="pct low">38.24%</td>
123
- <td data-value="319" class="abs low">122/319</td>
116
+ <td data-value="35.18" class="pct low">35.18%</td>
117
+ <td data-value="324" class="abs low">114/324</td>
118
+ <td data-value="25.61" class="pct low">25.61%</td>
119
+ <td data-value="121" class="abs low">31/121</td>
120
+ <td data-value="38.82" class="pct low">38.82%</td>
121
+ <td data-value="85" class="abs low">33/85</td>
122
+ <td data-value="35.1" class="pct low">35.1%</td>
123
+ <td data-value="319" class="abs low">112/319</td>
124
+ </tr>
125
+
126
+ <tr>
127
+ <td class="file high" data-value="generate-code"><a href="generate-code/index.html">generate-code</a></td>
128
+ <td data-value="88.12" class="pic high">
129
+ <div class="chart"><div class="cover-fill" style="width: 88%"></div><div class="cover-empty" style="width: 12%"></div></div>
130
+ </td>
131
+ <td data-value="88.12" class="pct high">88.12%</td>
132
+ <td data-value="379" class="abs high">334/379</td>
133
+ <td data-value="79.92" class="pct medium">79.92%</td>
134
+ <td data-value="274" class="abs medium">219/274</td>
135
+ <td data-value="91.11" class="pct high">91.11%</td>
136
+ <td data-value="45" class="abs high">41/45</td>
137
+ <td data-value="90.02" class="pct high">90.02%</td>
138
+ <td data-value="361" class="abs high">325/361</td>
124
139
  </tr>
125
140
 
126
141
  <tr>
127
142
  <td class="file medium" data-value="linter"><a href="linter/index.html">linter</a></td>
128
- <td data-value="76.87" class="pic medium">
129
- <div class="chart"><div class="cover-fill" style="width: 76%"></div><div class="cover-empty" style="width: 24%"></div></div>
143
+ <td data-value="75.07" class="pic medium">
144
+ <div class="chart"><div class="cover-fill" style="width: 75%"></div><div class="cover-empty" style="width: 25%"></div></div>
130
145
  </td>
131
- <td data-value="76.87" class="pct medium">76.87%</td>
132
- <td data-value="1310" class="abs medium">1007/1310</td>
133
- <td data-value="70.63" class="pct medium">70.63%</td>
134
- <td data-value="984" class="abs medium">695/984</td>
135
- <td data-value="74.69" class="pct medium">74.69%</td>
136
- <td data-value="162" class="abs medium">121/162</td>
137
- <td data-value="80.13" class="pct high">80.13%</td>
138
- <td data-value="1213" class="abs high">972/1213</td>
146
+ <td data-value="75.07" class="pct medium">75.07%</td>
147
+ <td data-value="1745" class="abs medium">1310/1745</td>
148
+ <td data-value="70.5" class="pct medium">70.5%</td>
149
+ <td data-value="1400" class="abs medium">987/1400</td>
150
+ <td data-value="77.77" class="pct medium">77.77%</td>
151
+ <td data-value="234" class="abs medium">182/234</td>
152
+ <td data-value="78.35" class="pct medium">78.35%</td>
153
+ <td data-value="1617" class="abs medium">1267/1617</td>
139
154
  </tr>
140
155
 
141
156
  <tr>
@@ -206,7 +221,7 @@
206
221
  <div class='footer quiet pad2 space-top1 center small'>
207
222
  Code coverage generated by
208
223
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
209
- at 2026-03-01T23:08:13.696Z
224
+ at 2026-04-08T20:42:08.360Z
210
225
  </div>
211
226
  <script src="prettify.js"></script>
212
227
  <script>