@featurevisor/core 2.26.1 → 3.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.
Files changed (390) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/coverage/clover.xml +4991 -3130
  3. package/coverage/coverage-final.json +63 -39
  4. package/coverage/lcov-report/block-navigation.js +1 -1
  5. package/coverage/lcov-report/index.html +248 -98
  6. package/coverage/lcov-report/sorter.js +21 -7
  7. package/coverage/lcov-report/src/assess-distribution/index.html +116 -0
  8. package/coverage/lcov-report/src/assess-distribution/index.ts.html +754 -0
  9. package/coverage/lcov-report/{list → src/benchmark}/index.html +30 -30
  10. package/coverage/lcov-report/src/benchmark/index.ts.html +793 -0
  11. package/coverage/lcov-report/{builder → src/builder}/allocator.ts.html +38 -38
  12. package/coverage/lcov-report/{builder/buildScopedConditions.ts.html → src/builder/applyContextToConditions.ts.html} +80 -65
  13. package/coverage/lcov-report/{builder/buildScopedDatafile.ts.html → src/builder/applyContextToDatafile.ts.html} +92 -92
  14. package/coverage/lcov-report/{builder/buildScopedSegments.ts.html → src/builder/applyContextToSegments.ts.html} +103 -67
  15. package/coverage/lcov-report/{builder → src/builder}/buildDatafile.ts.html +336 -306
  16. package/coverage/lcov-report/src/builder/buildProject.ts.html +1117 -0
  17. package/coverage/lcov-report/src/builder/buildRuntimeDatafiles.ts.html +256 -0
  18. package/coverage/lcov-report/{builder → src/builder}/getFeatureRanges.ts.html +22 -22
  19. package/coverage/lcov-report/{builder → src/builder}/hashes.ts.html +50 -50
  20. package/coverage/lcov-report/{builder → src/builder}/index.html +114 -84
  21. package/coverage/lcov-report/{tester/cliFormat.ts.html → src/builder/index.ts.html} +17 -29
  22. package/coverage/lcov-report/{builder → src/builder}/mutateVariables.ts.html +55 -55
  23. package/coverage/lcov-report/{builder → src/builder}/mutator.ts.html +118 -118
  24. package/coverage/lcov-report/{builder → src/builder}/revision.ts.html +15 -15
  25. package/coverage/lcov-report/{builder → src/builder}/traffic.ts.html +86 -86
  26. package/coverage/lcov-report/src/cli/cli.ts.html +400 -0
  27. package/coverage/lcov-report/{tester → src/cli}/index.html +41 -41
  28. package/coverage/lcov-report/src/cli/plugins.ts.html +214 -0
  29. package/coverage/lcov-report/{config → src/config}/index.html +31 -31
  30. package/coverage/lcov-report/{config → src/config}/index.ts.html +12 -12
  31. package/coverage/lcov-report/{config → src/config}/projectConfig.ts.html +312 -96
  32. package/coverage/lcov-report/{datasource → src/datasource}/adapter.ts.html +28 -73
  33. package/coverage/lcov-report/{datasource → src/datasource}/datasource.ts.html +191 -104
  34. package/coverage/lcov-report/{datasource → src/datasource}/filesystemAdapter.ts.html +233 -635
  35. package/coverage/lcov-report/{datasource → src/datasource}/index.html +48 -48
  36. package/coverage/lcov-report/{datasource → src/datasource}/index.ts.html +14 -14
  37. package/coverage/lcov-report/src/evaluate/index.html +116 -0
  38. package/coverage/lcov-report/src/evaluate/index.ts.html +814 -0
  39. package/coverage/lcov-report/src/find-duplicate-segments/findDuplicateSegments.ts.html +313 -0
  40. package/coverage/lcov-report/src/find-duplicate-segments/index.html +131 -0
  41. package/coverage/lcov-report/src/find-duplicate-segments/index.ts.html +307 -0
  42. package/coverage/lcov-report/src/find-usage/index.html +116 -0
  43. package/coverage/lcov-report/src/find-usage/index.ts.html +1780 -0
  44. package/coverage/lcov-report/src/generate-code/index.html +131 -0
  45. package/coverage/lcov-report/src/generate-code/index.ts.html +403 -0
  46. package/coverage/lcov-report/{generate-code → src/generate-code}/typescript.ts.html +266 -1361
  47. package/coverage/lcov-report/{generate-code → src}/index.html +38 -23
  48. package/coverage/lcov-report/src/info/index.html +116 -0
  49. package/coverage/lcov-report/src/info/index.ts.html +472 -0
  50. package/coverage/lcov-report/src/init/index.html +116 -0
  51. package/coverage/lcov-report/src/init/index.ts.html +280 -0
  52. package/coverage/lcov-report/{linter → src/linter}/attributeSchema.ts.html +160 -157
  53. package/coverage/lcov-report/{linter → src/linter}/checkCircularDependency.ts.html +25 -25
  54. package/coverage/lcov-report/{linter → src/linter}/checkPercentageExceedingSlot.ts.html +42 -42
  55. package/coverage/lcov-report/{linter → src/linter}/conditionSchema.ts.html +207 -207
  56. package/coverage/lcov-report/{linter → src/linter}/featureSchema.ts.html +462 -471
  57. package/coverage/lcov-report/{linter → src/linter}/groupSchema.ts.html +25 -22
  58. package/coverage/lcov-report/{linter → src/linter}/index.html +129 -99
  59. package/coverage/lcov-report/src/linter/index.ts.html +88 -0
  60. package/coverage/lcov-report/{linter → src/linter}/lintProject.ts.html +740 -332
  61. package/coverage/lcov-report/{linter → src/linter}/mutationNotation.ts.html +130 -130
  62. package/coverage/lcov-report/{linter → src/linter}/printError.ts.html +27 -27
  63. package/coverage/lcov-report/{linter → src/linter}/schema.ts.html +153 -150
  64. package/coverage/lcov-report/{linter → src/linter}/segmentSchema.ts.html +18 -15
  65. package/coverage/lcov-report/src/linter/targetSchema.ts.html +223 -0
  66. package/coverage/lcov-report/{linter → src/linter}/testSchema.ts.html +54 -48
  67. package/coverage/lcov-report/{linter → src/linter}/zodHelpers.ts.html +17 -17
  68. package/coverage/lcov-report/src/list/index.html +131 -0
  69. package/coverage/lcov-report/src/list/index.ts.html +2065 -0
  70. package/coverage/lcov-report/{list → src/list}/matrix.ts.html +43 -58
  71. package/coverage/lcov-report/src/promoter/index.html +116 -0
  72. package/coverage/lcov-report/src/promoter/index.ts.html +3883 -0
  73. package/coverage/lcov-report/src/sets.ts.html +313 -0
  74. package/coverage/lcov-report/src/targeting.ts.html +403 -0
  75. package/coverage/lcov-report/src/tester/cliFormat.ts.html +133 -0
  76. package/coverage/lcov-report/{tester → src/tester}/helpers.ts.html +15 -15
  77. package/coverage/lcov-report/src/tester/index.html +206 -0
  78. package/coverage/lcov-report/src/tester/prettyDuration.ts.html +187 -0
  79. package/coverage/lcov-report/src/tester/printTestResult.ts.html +337 -0
  80. package/coverage/lcov-report/src/tester/testFeature.ts.html +1186 -0
  81. package/coverage/lcov-report/src/tester/testProject.ts.html +1018 -0
  82. package/coverage/lcov-report/src/tester/testSegment.ts.html +316 -0
  83. package/coverage/lcov-report/{utils → src/utils}/extractKeys.ts.html +68 -68
  84. package/coverage/lcov-report/{utils → src/utils}/git.ts.html +44 -68
  85. package/coverage/lcov-report/{utils → src/utils}/index.html +44 -44
  86. package/coverage/lcov-report/{utils → src/utils}/index.ts.html +14 -14
  87. package/coverage/lcov-report/{utils → src/utils}/pretty.ts.html +20 -20
  88. package/coverage/lcov.info +10121 -5723
  89. package/jest.config.js +13 -4
  90. package/lib/assess-distribution/index.d.ts +1 -1
  91. package/lib/assess-distribution/index.js +59 -40
  92. package/lib/assess-distribution/index.js.map +1 -1
  93. package/lib/benchmark/index.d.ts +8 -5
  94. package/lib/benchmark/index.js +82 -65
  95. package/lib/benchmark/index.js.map +1 -1
  96. package/lib/builder/applyContextToConditions.d.ts +5 -0
  97. package/lib/builder/{buildScopedConditions.js → applyContextToConditions.js} +19 -14
  98. package/lib/builder/applyContextToConditions.js.map +1 -0
  99. package/lib/builder/applyContextToDatafile.d.ts +2 -0
  100. package/lib/builder/{buildScopedDatafile.js → applyContextToDatafile.js} +26 -26
  101. package/lib/builder/applyContextToDatafile.js.map +1 -0
  102. package/lib/builder/applyContextToSegments.d.ts +5 -0
  103. package/lib/builder/{buildScopedSegments.js → applyContextToSegments.js} +19 -14
  104. package/lib/builder/applyContextToSegments.js.map +1 -0
  105. package/lib/builder/buildDatafile.d.ts +9 -6
  106. package/lib/builder/buildDatafile.js +86 -51
  107. package/lib/builder/buildDatafile.js.map +1 -1
  108. package/lib/builder/buildProject.d.ts +17 -3
  109. package/lib/builder/buildProject.js +151 -59
  110. package/lib/builder/buildProject.js.map +1 -1
  111. package/lib/builder/buildRuntimeDatafiles.d.ts +12 -0
  112. package/lib/builder/buildRuntimeDatafiles.js +35 -0
  113. package/lib/builder/buildRuntimeDatafiles.js.map +1 -0
  114. package/lib/builder/getFeatureRanges.js +34 -1
  115. package/lib/builder/getFeatureRanges.js.map +1 -1
  116. package/lib/builder/hashes.js +34 -1
  117. package/lib/builder/hashes.js.map +1 -1
  118. package/lib/builder/index.d.ts +0 -1
  119. package/lib/builder/index.js +0 -1
  120. package/lib/builder/index.js.map +1 -1
  121. package/lib/cli/cli.js +0 -4
  122. package/lib/cli/cli.js.map +1 -1
  123. package/lib/cli/plugins.js +7 -2
  124. package/lib/cli/plugins.js.map +1 -1
  125. package/lib/config/projectConfig.d.ts +17 -17
  126. package/lib/config/projectConfig.js +101 -15
  127. package/lib/config/projectConfig.js.map +1 -1
  128. package/lib/datasource/adapter.d.ts +7 -9
  129. package/lib/datasource/adapter.js +0 -7
  130. package/lib/datasource/adapter.js.map +1 -1
  131. package/lib/datasource/datasource.d.ts +15 -5
  132. package/lib/datasource/datasource.js +37 -9
  133. package/lib/datasource/datasource.js.map +1 -1
  134. package/lib/datasource/filesystemAdapter.d.ts +4 -10
  135. package/lib/datasource/filesystemAdapter.js +111 -149
  136. package/lib/datasource/filesystemAdapter.js.map +1 -1
  137. package/lib/evaluate/index.d.ts +1 -7
  138. package/lib/evaluate/index.js +81 -67
  139. package/lib/evaluate/index.js.map +1 -1
  140. package/lib/find-duplicate-segments/findDuplicateSegments.js +34 -1
  141. package/lib/find-duplicate-segments/findDuplicateSegments.js.map +1 -1
  142. package/lib/find-duplicate-segments/index.js +21 -13
  143. package/lib/find-duplicate-segments/index.js.map +1 -1
  144. package/lib/find-usage/index.js +57 -41
  145. package/lib/find-usage/index.js.map +1 -1
  146. package/lib/generate-code/index.d.ts +1 -1
  147. package/lib/generate-code/index.js +64 -21
  148. package/lib/generate-code/index.js.map +1 -1
  149. package/lib/generate-code/typescript.d.ts +1 -1
  150. package/lib/generate-code/typescript.js +59 -333
  151. package/lib/generate-code/typescript.js.map +1 -1
  152. package/lib/index.d.ts +2 -1
  153. package/lib/index.js +2 -1
  154. package/lib/index.js.map +1 -1
  155. package/lib/info/index.js +57 -16
  156. package/lib/info/index.js.map +1 -1
  157. package/lib/init/index.d.ts +2 -2
  158. package/lib/init/index.js +39 -3
  159. package/lib/init/index.js.map +1 -1
  160. package/lib/linter/attributeSchema.d.ts +1 -0
  161. package/lib/linter/attributeSchema.js +1 -0
  162. package/lib/linter/attributeSchema.js.map +1 -1
  163. package/lib/linter/conditionSchema.js +5 -5
  164. package/lib/linter/conditionSchema.js.map +1 -1
  165. package/lib/linter/featureSchema.d.ts +4 -1
  166. package/lib/linter/featureSchema.js +15 -13
  167. package/lib/linter/featureSchema.js.map +1 -1
  168. package/lib/linter/groupSchema.d.ts +1 -0
  169. package/lib/linter/groupSchema.js +1 -0
  170. package/lib/linter/groupSchema.js.map +1 -1
  171. package/lib/linter/lintProject.d.ts +1 -3
  172. package/lib/linter/lintProject.js +198 -68
  173. package/lib/linter/lintProject.js.map +1 -1
  174. package/lib/linter/schema.js +1 -0
  175. package/lib/linter/schema.js.map +1 -1
  176. package/lib/linter/segmentSchema.d.ts +1 -0
  177. package/lib/linter/segmentSchema.js +1 -0
  178. package/lib/linter/segmentSchema.js.map +1 -1
  179. package/lib/linter/targetSchema.d.ts +16 -0
  180. package/lib/linter/targetSchema.js +40 -0
  181. package/lib/linter/targetSchema.js.map +1 -0
  182. package/lib/linter/testSchema.d.ts +4 -3
  183. package/lib/linter/testSchema.js +9 -4
  184. package/lib/linter/testSchema.js.map +1 -1
  185. package/lib/list/index.d.ts +1 -0
  186. package/lib/list/index.js +131 -12
  187. package/lib/list/index.js.map +1 -1
  188. package/lib/list/matrix.js +3 -7
  189. package/lib/list/matrix.js.map +1 -1
  190. package/lib/promoter/index.d.ts +50 -0
  191. package/lib/promoter/index.js +880 -0
  192. package/lib/promoter/index.js.map +1 -0
  193. package/lib/sets.d.ts +11 -0
  194. package/lib/sets.js +81 -0
  195. package/lib/sets.js.map +1 -0
  196. package/lib/targeting.d.ts +14 -0
  197. package/lib/targeting.js +82 -0
  198. package/lib/targeting.js.map +1 -0
  199. package/lib/tester/cliFormat.d.ts +7 -1
  200. package/lib/tester/cliFormat.js +11 -2
  201. package/lib/tester/cliFormat.js.map +1 -1
  202. package/lib/tester/printTestResult.js +2 -2
  203. package/lib/tester/printTestResult.js.map +1 -1
  204. package/lib/tester/testFeature.d.ts +0 -1
  205. package/lib/tester/testFeature.js +8 -25
  206. package/lib/tester/testFeature.js.map +1 -1
  207. package/lib/tester/testProject.d.ts +2 -3
  208. package/lib/tester/testProject.js +93 -86
  209. package/lib/tester/testProject.js.map +1 -1
  210. package/lib/tester/testSegment.d.ts +1 -1
  211. package/lib/tester/testSegment.js +3 -21
  212. package/lib/tester/testSegment.js.map +1 -1
  213. package/lib/utils/git.js +45 -19
  214. package/lib/utils/git.js.map +1 -1
  215. package/package.json +12 -12
  216. package/src/assess-distribution/index.ts +72 -52
  217. package/src/benchmark/index.ts +124 -91
  218. package/src/builder/{buildScopedConditions.spec.ts → applyContextToConditions.spec.ts} +160 -142
  219. package/src/builder/{buildScopedConditions.ts → applyContextToConditions.ts} +19 -14
  220. package/src/builder/{buildScopedDatafile.spec.ts → applyContextToDatafile.spec.ts} +141 -81
  221. package/src/builder/{buildScopedDatafile.ts → applyContextToDatafile.ts} +33 -33
  222. package/src/builder/{buildScopedSegments.spec.ts → applyContextToSegments.spec.ts} +171 -151
  223. package/src/builder/{buildScopedSegments.ts → applyContextToSegments.ts} +26 -14
  224. package/src/builder/buildDatafile.spec.ts +192 -14
  225. package/src/builder/buildDatafile.ts +74 -64
  226. package/src/builder/buildProject.ts +171 -86
  227. package/src/builder/buildRuntimeDatafiles.ts +57 -0
  228. package/src/builder/index.ts +0 -1
  229. package/src/cli/cli.ts +0 -5
  230. package/src/cli/plugins.ts +7 -2
  231. package/src/config/projectConfig.spec.ts +171 -8
  232. package/src/config/projectConfig.ts +100 -28
  233. package/src/datasource/adapter.ts +8 -23
  234. package/src/datasource/datasource.ts +50 -21
  235. package/src/datasource/filesystemAdapter.spec.ts +133 -74
  236. package/src/datasource/filesystemAdapter.ts +93 -227
  237. package/src/evaluate/index.ts +109 -97
  238. package/src/find-duplicate-segments/index.ts +34 -16
  239. package/src/find-usage/index.ts +89 -44
  240. package/src/generate-code/index.ts +36 -24
  241. package/src/generate-code/typescript.spec.ts +106 -0
  242. package/src/generate-code/typescript.ts +33 -398
  243. package/src/index.ts +2 -1
  244. package/src/info/index.ts +72 -16
  245. package/src/init/index.ts +1 -1
  246. package/src/linter/attributeSchema.ts +1 -0
  247. package/src/linter/conditionSchema.spec.ts +23 -3
  248. package/src/linter/conditionSchema.ts +5 -5
  249. package/src/linter/featureSchema.spec.ts +107 -18
  250. package/src/linter/featureSchema.ts +25 -28
  251. package/src/linter/groupSchema.ts +1 -0
  252. package/src/linter/lintProject.spec.ts +131 -92
  253. package/src/linter/lintProject.ts +233 -97
  254. package/src/linter/schema.ts +1 -0
  255. package/src/linter/segmentSchema.spec.ts +5 -3
  256. package/src/linter/segmentSchema.ts +1 -0
  257. package/src/linter/targetSchema.spec.ts +159 -0
  258. package/src/linter/targetSchema.ts +46 -0
  259. package/src/linter/testSchema.spec.ts +70 -5
  260. package/src/linter/testSchema.ts +12 -10
  261. package/src/list/index.spec.ts +135 -0
  262. package/src/list/index.ts +188 -12
  263. package/src/list/matrix.ts +3 -8
  264. package/src/promoter/index.spec.ts +617 -0
  265. package/src/promoter/index.ts +1266 -0
  266. package/src/sets.ts +76 -0
  267. package/src/targeting.spec.ts +74 -0
  268. package/src/targeting.ts +106 -0
  269. package/src/tester/cliFormat.ts +11 -1
  270. package/src/tester/printTestResult.ts +12 -3
  271. package/src/tester/testFeature.ts +10 -36
  272. package/src/tester/testProject.spec.ts +50 -0
  273. package/src/tester/testProject.ts +89 -140
  274. package/src/tester/testSegment.ts +5 -22
  275. package/src/utils/git.ts +13 -21
  276. package/tsconfig.cjs.json +5 -1
  277. package/tsconfig.typecheck.json +9 -0
  278. package/coverage/lcov-report/builder/convertToV1.ts.html +0 -583
  279. package/lib/builder/allocator.spec.d.ts +0 -1
  280. package/lib/builder/allocator.spec.js +0 -85
  281. package/lib/builder/allocator.spec.js.map +0 -1
  282. package/lib/builder/buildDatafile.spec.d.ts +0 -1
  283. package/lib/builder/buildDatafile.spec.js +0 -233
  284. package/lib/builder/buildDatafile.spec.js.map +0 -1
  285. package/lib/builder/buildScopedConditions.d.ts +0 -5
  286. package/lib/builder/buildScopedConditions.js.map +0 -1
  287. package/lib/builder/buildScopedConditions.spec.d.ts +0 -1
  288. package/lib/builder/buildScopedConditions.spec.js +0 -2167
  289. package/lib/builder/buildScopedConditions.spec.js.map +0 -1
  290. package/lib/builder/buildScopedDatafile.d.ts +0 -2
  291. package/lib/builder/buildScopedDatafile.js.map +0 -1
  292. package/lib/builder/buildScopedDatafile.spec.d.ts +0 -1
  293. package/lib/builder/buildScopedDatafile.spec.js +0 -2277
  294. package/lib/builder/buildScopedDatafile.spec.js.map +0 -1
  295. package/lib/builder/buildScopedSegments.d.ts +0 -5
  296. package/lib/builder/buildScopedSegments.js.map +0 -1
  297. package/lib/builder/buildScopedSegments.spec.d.ts +0 -1
  298. package/lib/builder/buildScopedSegments.spec.js +0 -1062
  299. package/lib/builder/buildScopedSegments.spec.js.map +0 -1
  300. package/lib/builder/convertToV1.d.ts +0 -10
  301. package/lib/builder/convertToV1.js +0 -119
  302. package/lib/builder/convertToV1.js.map +0 -1
  303. package/lib/builder/mutateVariables.spec.d.ts +0 -1
  304. package/lib/builder/mutateVariables.spec.js +0 -1074
  305. package/lib/builder/mutateVariables.spec.js.map +0 -1
  306. package/lib/builder/mutator.spec.d.ts +0 -1
  307. package/lib/builder/mutator.spec.js +0 -368
  308. package/lib/builder/mutator.spec.js.map +0 -1
  309. package/lib/builder/revision.spec.d.ts +0 -1
  310. package/lib/builder/revision.spec.js +0 -21
  311. package/lib/builder/revision.spec.js.map +0 -1
  312. package/lib/builder/traffic.spec.d.ts +0 -1
  313. package/lib/builder/traffic.spec.js +0 -872
  314. package/lib/builder/traffic.spec.js.map +0 -1
  315. package/lib/config/projectConfig.spec.d.ts +0 -1
  316. package/lib/config/projectConfig.spec.js +0 -24
  317. package/lib/config/projectConfig.spec.js.map +0 -1
  318. package/lib/datasource/filesystemAdapter.spec.d.ts +0 -1
  319. package/lib/datasource/filesystemAdapter.spec.js +0 -88
  320. package/lib/datasource/filesystemAdapter.spec.js.map +0 -1
  321. package/lib/generate-code/typescript.spec.d.ts +0 -1
  322. package/lib/generate-code/typescript.spec.js +0 -78
  323. package/lib/generate-code/typescript.spec.js.map +0 -1
  324. package/lib/linter/attributeSchema.spec.d.ts +0 -1
  325. package/lib/linter/attributeSchema.spec.js +0 -266
  326. package/lib/linter/attributeSchema.spec.js.map +0 -1
  327. package/lib/linter/conditionSchema.spec.d.ts +0 -1
  328. package/lib/linter/conditionSchema.spec.js +0 -380
  329. package/lib/linter/conditionSchema.spec.js.map +0 -1
  330. package/lib/linter/featureSchema.spec.d.ts +0 -1
  331. package/lib/linter/featureSchema.spec.js +0 -1552
  332. package/lib/linter/featureSchema.spec.js.map +0 -1
  333. package/lib/linter/lintProject.spec.d.ts +0 -1
  334. package/lib/linter/lintProject.spec.js +0 -211
  335. package/lib/linter/lintProject.spec.js.map +0 -1
  336. package/lib/linter/mutationNotation.spec.d.ts +0 -1
  337. package/lib/linter/mutationNotation.spec.js +0 -598
  338. package/lib/linter/mutationNotation.spec.js.map +0 -1
  339. package/lib/linter/schema.spec.d.ts +0 -1
  340. package/lib/linter/schema.spec.js +0 -535
  341. package/lib/linter/schema.spec.js.map +0 -1
  342. package/lib/linter/segmentSchema.spec.d.ts +0 -1
  343. package/lib/linter/segmentSchema.spec.js +0 -303
  344. package/lib/linter/segmentSchema.spec.js.map +0 -1
  345. package/lib/linter/testSchema.spec.d.ts +0 -1
  346. package/lib/linter/testSchema.spec.js +0 -162
  347. package/lib/linter/testSchema.spec.js.map +0 -1
  348. package/lib/list/matrix.spec.d.ts +0 -1
  349. package/lib/list/matrix.spec.js +0 -42
  350. package/lib/list/matrix.spec.js.map +0 -1
  351. package/lib/site/exportSite.d.ts +0 -2
  352. package/lib/site/exportSite.js +0 -30
  353. package/lib/site/exportSite.js.map +0 -1
  354. package/lib/site/generateHistory.d.ts +0 -3
  355. package/lib/site/generateHistory.js +0 -31
  356. package/lib/site/generateHistory.js.map +0 -1
  357. package/lib/site/generateSiteSearchIndex.d.ts +0 -4
  358. package/lib/site/generateSiteSearchIndex.js +0 -195
  359. package/lib/site/generateSiteSearchIndex.js.map +0 -1
  360. package/lib/site/getLastModifiedFromHistory.d.ts +0 -2
  361. package/lib/site/getLastModifiedFromHistory.js +0 -18
  362. package/lib/site/getLastModifiedFromHistory.js.map +0 -1
  363. package/lib/site/getOwnerAndRepoFromUrl.d.ts +0 -4
  364. package/lib/site/getOwnerAndRepoFromUrl.js +0 -20
  365. package/lib/site/getOwnerAndRepoFromUrl.js.map +0 -1
  366. package/lib/site/getRelativePaths.d.ts +0 -6
  367. package/lib/site/getRelativePaths.js +0 -15
  368. package/lib/site/getRelativePaths.js.map +0 -1
  369. package/lib/site/getRepoDetails.d.ts +0 -8
  370. package/lib/site/getRepoDetails.js +0 -48
  371. package/lib/site/getRepoDetails.js.map +0 -1
  372. package/lib/site/index.d.ts +0 -2
  373. package/lib/site/index.js +0 -43
  374. package/lib/site/index.js.map +0 -1
  375. package/lib/site/serveSite.d.ts +0 -2
  376. package/lib/site/serveSite.js +0 -54
  377. package/lib/site/serveSite.js.map +0 -1
  378. package/lib/tester/helpers.spec.d.ts +0 -1
  379. package/lib/tester/helpers.spec.js +0 -115
  380. package/lib/tester/helpers.spec.js.map +0 -1
  381. package/src/builder/convertToV1.ts +0 -166
  382. package/src/site/exportSite.ts +0 -42
  383. package/src/site/generateHistory.ts +0 -40
  384. package/src/site/generateSiteSearchIndex.ts +0 -258
  385. package/src/site/getLastModifiedFromHistory.ts +0 -21
  386. package/src/site/getOwnerAndRepoFromUrl.ts +0 -17
  387. package/src/site/getRelativePaths.ts +0 -24
  388. package/src/site/getRepoDetails.ts +0 -62
  389. package/src/site/index.ts +0 -46
  390. package/src/site/serveSite.ts +0 -58
@@ -3,15 +3,15 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for builder/traffic.ts</title>
6
+ <title>Code coverage report for src/builder/traffic.ts</title>
7
7
  <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../prettify.css" />
9
- <link rel="stylesheet" href="../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
11
  <meta name="viewport" content="width=device-width, initial-scale=1" />
12
12
  <style type='text/css'>
13
13
  .coverage-summary .sorter {
14
- background-image: url(../sort-arrow-sprite.png);
14
+ background-image: url(../../sort-arrow-sprite.png);
15
15
  }
16
16
  </style>
17
17
  </head>
@@ -19,20 +19,20 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../index.html">All files</a> / <a href="index.html">builder</a> traffic.ts</h1>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/builder</a> traffic.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">91.04% </span>
26
+ <span class="strong">89.55% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>61/67</span>
28
+ <span class='fraction'>60/67</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">81.57% </span>
33
+ <span class="strong">82.69% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>31/38</span>
35
+ <span class='fraction'>43/52</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">90.9% </span>
47
+ <span class="strong">89.39% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>60/66</span>
49
+ <span class='fraction'>59/66</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -263,32 +263,32 @@
263
263
  <span class="cline-any cline-neutral">&nbsp;</span>
264
264
  <span class="cline-any cline-neutral">&nbsp;</span>
265
265
  <span class="cline-any cline-neutral">&nbsp;</span>
266
- <span class="cline-any cline-yes">2x</span>
266
+ <span class="cline-any cline-yes">4x</span>
267
267
  <span class="cline-any cline-neutral">&nbsp;</span>
268
- <span class="cline-any cline-yes">2x</span>
268
+ <span class="cline-any cline-yes">4x</span>
269
269
  <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-yes">2x</span>
270
+ <span class="cline-any cline-no">&nbsp;</span>
271
271
  <span class="cline-any cline-neutral">&nbsp;</span>
272
272
  <span class="cline-any cline-neutral">&nbsp;</span>
273
273
  <span class="cline-any cline-neutral">&nbsp;</span>
274
+ <span class="cline-any cline-yes">26x</span>
274
275
  <span class="cline-any cline-yes">16x</span>
275
- <span class="cline-any cline-yes">7x</span>
276
276
  <span class="cline-any cline-neutral">&nbsp;</span>
277
277
  <span class="cline-any cline-neutral">&nbsp;</span>
278
- <span class="cline-any cline-yes">7x</span>
278
+ <span class="cline-any cline-yes">11x</span>
279
279
  <span class="cline-any cline-neutral">&nbsp;</span>
280
280
  <span class="cline-any cline-neutral">&nbsp;</span>
281
281
  <span class="cline-any cline-neutral">&nbsp;</span>
282
- <span class="cline-any cline-no">&nbsp;</span>
282
+ <span class="cline-any cline-yes">5x</span>
283
283
  <span class="cline-any cline-neutral">&nbsp;</span>
284
284
  <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-yes">9x</span>
286
- <span class="cline-any cline-yes">21x</span>
285
+ <span class="cline-any cline-yes">10x</span>
286
+ <span class="cline-any cline-yes">22x</span>
287
287
  <span class="cline-any cline-neutral">&nbsp;</span>
288
288
  <span class="cline-any cline-neutral">&nbsp;</span>
289
- <span class="cline-any cline-yes">9x</span>
289
+ <span class="cline-any cline-yes">10x</span>
290
290
  <span class="cline-any cline-neutral">&nbsp;</span>
291
- <span class="cline-any cline-yes">22x</span>
291
+ <span class="cline-any cline-yes">23x</span>
292
292
  <span class="cline-any cline-neutral">&nbsp;</span>
293
293
  <span class="cline-any cline-neutral">&nbsp;</span>
294
294
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -296,35 +296,35 @@
296
296
  <span class="cline-any cline-neutral">&nbsp;</span>
297
297
  <span class="cline-any cline-neutral">&nbsp;</span>
298
298
  <span class="cline-any cline-neutral">&nbsp;</span>
299
- <span class="cline-any cline-yes">2x</span>
299
+ <span class="cline-any cline-no">&nbsp;</span>
300
300
  <span class="cline-any cline-neutral">&nbsp;</span>
301
301
  <span class="cline-any cline-neutral">&nbsp;</span>
302
302
  <span class="cline-any cline-neutral">&nbsp;</span>
303
- <span class="cline-any cline-yes">16x</span>
304
- <span class="cline-any cline-yes">7x</span>
303
+ <span class="cline-any cline-yes">26x</span>
304
+ <span class="cline-any cline-yes">14x</span>
305
305
  <span class="cline-any cline-neutral">&nbsp;</span>
306
306
  <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-yes">9x</span>
307
+ <span class="cline-any cline-yes">12x</span>
308
308
  <span class="cline-any cline-neutral">&nbsp;</span>
309
- <span class="cline-any cline-yes">9x</span>
309
+ <span class="cline-any cline-yes">12x</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">2x</span>
312
+ <span class="cline-any cline-no">&nbsp;</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-neutral">&nbsp;</span>
316
- <span class="cline-any cline-yes">16x</span>
317
- <span class="cline-any cline-yes">7x</span>
316
+ <span class="cline-any cline-yes">26x</span>
317
+ <span class="cline-any cline-yes">14x</span>
318
318
  <span class="cline-any cline-neutral">&nbsp;</span>
319
319
  <span class="cline-any cline-neutral">&nbsp;</span>
320
- <span class="cline-any cline-yes">9x</span>
321
- <span class="cline-any cline-yes">9x</span>
320
+ <span class="cline-any cline-yes">12x</span>
321
+ <span class="cline-any cline-yes">12x</span>
322
322
  <span class="cline-any cline-neutral">&nbsp;</span>
323
323
  <span class="cline-any cline-neutral">&nbsp;</span>
324
324
  <span class="cline-any cline-no">&nbsp;</span>
325
325
  <span class="cline-any cline-neutral">&nbsp;</span>
326
326
  <span class="cline-any cline-neutral">&nbsp;</span>
327
- <span class="cline-any cline-yes">2x</span>
327
+ <span class="cline-any cline-yes">25x</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>
@@ -333,16 +333,16 @@
333
333
  <span class="cline-any cline-neutral">&nbsp;</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">16x</span>
336
+ <span class="cline-any cline-yes">24x</span>
337
337
  <span class="cline-any cline-neutral">&nbsp;</span>
338
338
  <span class="cline-any cline-neutral">&nbsp;</span>
339
339
  <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-yes">16x</span>
340
+ <span class="cline-any cline-yes">24x</span>
341
341
  <span class="cline-any cline-neutral">&nbsp;</span>
342
- <span class="cline-any cline-yes">16x</span>
343
- <span class="cline-any cline-yes">16x</span>
342
+ <span class="cline-any cline-yes">24x</span>
343
+ <span class="cline-any cline-yes">26x</span>
344
344
  <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-yes">16x</span>
345
+ <span class="cline-any cline-yes">26x</span>
346
346
  <span class="cline-any cline-neutral">&nbsp;</span>
347
347
  <span class="cline-any cline-neutral">&nbsp;</span>
348
348
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -352,22 +352,22 @@
352
352
  <span class="cline-any cline-neutral">&nbsp;</span>
353
353
  <span class="cline-any cline-neutral">&nbsp;</span>
354
354
  <span class="cline-any cline-neutral">&nbsp;</span>
355
- <span class="cline-any cline-yes">16x</span>
356
- <span class="cline-any cline-yes">2x</span>
355
+ <span class="cline-any cline-yes">26x</span>
356
+ <span class="cline-any cline-yes">7x</span>
357
357
  <span class="cline-any cline-neutral">&nbsp;</span>
358
358
  <span class="cline-any cline-neutral">&nbsp;</span>
359
- <span class="cline-any cline-yes">16x</span>
359
+ <span class="cline-any cline-yes">26x</span>
360
360
  <span class="cline-any cline-no">&nbsp;</span>
361
361
  <span class="cline-any cline-neutral">&nbsp;</span>
362
362
  <span class="cline-any cline-neutral">&nbsp;</span>
363
363
  <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-yes">16x</span>
365
- <span class="cline-any cline-yes">16x</span>
366
- <span class="cline-any cline-yes">16x</span>
367
- <span class="cline-any cline-yes">16x</span>
364
+ <span class="cline-any cline-yes">26x</span>
365
+ <span class="cline-any cline-yes">26x</span>
366
+ <span class="cline-any cline-yes">26x</span>
367
+ <span class="cline-any cline-yes">26x</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">16x</span>
370
+ <span class="cline-any cline-yes">26x</span>
371
371
  <span class="cline-any cline-neutral">&nbsp;</span>
372
372
  <span class="cline-any cline-neutral">&nbsp;</span>
373
373
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -376,76 +376,76 @@
376
376
  <span class="cline-any cline-neutral">&nbsp;</span>
377
377
  <span class="cline-any cline-neutral">&nbsp;</span>
378
378
  <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-yes">16x</span>
379
+ <span class="cline-any cline-yes">26x</span>
380
380
  <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-yes">16x</span>
381
+ <span class="cline-any cline-yes">26x</span>
382
382
  <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-yes">1x</span>
383
+ <span class="cline-any cline-yes">2x</span>
384
384
  <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-yes">1x</span>
386
385
  <span class="cline-any cline-yes">2x</span>
386
+ <span class="cline-any cline-yes">3x</span>
387
387
  <span class="cline-any cline-neutral">&nbsp;</span>
388
388
  <span class="cline-any cline-neutral">&nbsp;</span>
389
389
  <span class="cline-any cline-neutral">&nbsp;</span>
390
390
  <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-yes">2x</span>
391
+ <span class="cline-any cline-yes">3x</span>
392
392
  <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-yes">2x</span>
393
+ <span class="cline-any cline-yes">3x</span>
394
394
  <span class="cline-any cline-neutral">&nbsp;</span>
395
395
  <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-yes">1x</span>
396
+ <span class="cline-any cline-yes">2x</span>
397
397
  <span class="cline-any cline-neutral">&nbsp;</span>
398
398
  <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-yes">16x</span>
400
- <span class="cline-any cline-yes">16x</span>
401
- <span class="cline-any cline-yes">33x</span>
399
+ <span class="cline-any cline-yes">26x</span>
400
+ <span class="cline-any cline-yes">21x</span>
401
+ <span class="cline-any cline-yes">38x</span>
402
402
  <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-yes">33x</span>
403
+ <span class="cline-any cline-yes">38x</span>
404
404
  <span class="cline-any cline-neutral">&nbsp;</span>
405
405
  <span class="cline-any cline-no">&nbsp;</span>
406
406
  <span class="cline-any cline-neutral">&nbsp;</span>
407
407
  <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-yes">33x</span>
408
+ <span class="cline-any cline-yes">38x</span>
409
409
  <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-yes">33x</span>
410
+ <span class="cline-any cline-yes">38x</span>
411
411
  <span class="cline-any cline-neutral">&nbsp;</span>
412
412
  <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-yes">33x</span>
413
+ <span class="cline-any cline-yes">38x</span>
414
414
  <span class="cline-any cline-neutral">&nbsp;</span>
415
+ <span class="cline-any cline-yes">38x</span>
416
+ <span class="cline-any cline-yes">33x</span>
415
417
  <span class="cline-any cline-yes">33x</span>
416
- <span class="cline-any cline-yes">29x</span>
417
- <span class="cline-any cline-yes">29x</span>
418
418
  <span class="cline-any cline-neutral">&nbsp;</span>
419
419
  <span class="cline-any cline-neutral">&nbsp;</span>
420
420
  <span class="cline-any cline-neutral">&nbsp;</span>
421
421
  <span class="cline-any cline-neutral">&nbsp;</span>
422
422
  <span class="cline-any cline-neutral">&nbsp;</span>
423
423
  <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-yes">33x</span>
424
+ <span class="cline-any cline-yes">38x</span>
425
425
  <span class="cline-any cline-neutral">&nbsp;</span>
426
426
  <span class="cline-any cline-neutral">&nbsp;</span>
427
427
  <span class="cline-any cline-neutral">&nbsp;</span>
428
428
  <span class="cline-any cline-neutral">&nbsp;</span>
429
429
  <span class="cline-any cline-neutral">&nbsp;</span>
430
430
  <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">16x</span>
432
- <span class="cline-any cline-yes">16x</span>
433
- <span class="cline-any cline-yes">31x</span>
431
+ <span class="cline-any cline-yes">26x</span>
432
+ <span class="cline-any cline-yes">26x</span>
433
+ <span class="cline-any cline-yes">36x</span>
434
434
  <span class="cline-any cline-no">&nbsp;</span>
435
435
  <span class="cline-any cline-neutral">&nbsp;</span>
436
436
  <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-yes">31x</span>
437
+ <span class="cline-any cline-yes">36x</span>
438
438
  <span class="cline-any cline-neutral">&nbsp;</span>
439
439
  <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-yes">16x</span>
441
- <span class="cline-any cline-no">&nbsp;</span>
440
+ <span class="cline-any cline-yes">26x</span>
441
+ <span class="cline-any cline-yes">5x</span>
442
442
  <span class="cline-any cline-neutral">&nbsp;</span>
443
443
  <span class="cline-any cline-neutral">&nbsp;</span>
444
444
  <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-yes">16x</span>
445
+ <span class="cline-any cline-yes">26x</span>
446
446
  <span class="cline-any cline-neutral">&nbsp;</span>
447
447
  <span class="cline-any cline-neutral">&nbsp;</span>
448
- <span class="cline-any cline-yes">16x</span>
448
+ <span class="cline-any cline-yes">24x</span>
449
449
  <span class="cline-any cline-neutral">&nbsp;</span>
450
450
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import type {
451
451
  Rule,
@@ -459,7 +459,7 @@ import { MAX_BUCKETED_NUMBER } from "@featurevisor/sdk";
459
459
  &nbsp;
460
460
  import { getAllocation, getUpdatedAvailableRangesAfterFilling } from "./allocator";
461
461
  &nbsp;
462
- export function detectIfVariationsChanged(
462
+ export function <span class="cstat-no" title="statement not covered" >detectIfVariationsChanged(</span>
463
463
  yamlVariations: Variation[] | undefined, // as exists in latest YAML
464
464
  existingFeature?: ExistingFeature, // from state file
465
465
  ): boolean {
@@ -471,7 +471,7 @@ export function detectIfVariationsChanged(
471
471
  }
472
472
  &nbsp;
473
473
  // variations didn't exist before, and not even now
474
- <span class="cstat-no" title="statement not covered" > return false;</span>
474
+ return false;
475
475
  }
476
476
  &nbsp;
477
477
  const checkVariations = Array.isArray(yamlVariations)
@@ -488,7 +488,7 @@ export function detectIfVariationsChanged(
488
488
  );
489
489
  }
490
490
  &nbsp;
491
- export function getRulePercentageDiff(
491
+ export function <span class="cstat-no" title="statement not covered" >getRulePercentageDiff(</span>
492
492
  trafficPercentage: Percentage, // 0 to 100k
493
493
  existingTrafficRule,
494
494
  ): number {
@@ -501,7 +501,7 @@ export function getRulePercentageDiff(
501
501
  return trafficPercentage - existingPercentage;
502
502
  }
503
503
  &nbsp;
504
- export function detectIfRangesChanged(
504
+ export function <span class="cstat-no" title="statement not covered" >detectIfRangesChanged(</span>
505
505
  availableRanges: Range[], // as exists in latest YAML
506
506
  existingFeature?: ExistingFeature, // from state file
507
507
  ): boolean {
@@ -509,7 +509,7 @@ export function detectIfRangesChanged(
509
509
  return false;
510
510
  }
511
511
  &nbsp;
512
- if (!existingFeature.ranges) {
512
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (!existingFeature.ranges) {
513
513
  return false;
514
514
  }
515
515
  &nbsp;
@@ -529,7 +529,7 @@ export function getTraffic(
529
529
  &nbsp;
530
530
  // @NOTE: may be pass from builder directly?
531
531
  const availableRanges =
532
- ranges &amp;&amp; ranges.length &gt; 0 ? <span class="branch-0 cbranch-no" title="branch not covered" >ranges </span>: ([[0, MAX_BUCKETED_NUMBER]] as Range[]);
532
+ ranges &amp;&amp; ranges.length &gt; 0 ? <span class="branch-0 cbranch-no" title="branch not covered" >ranges : ([</span>[0, MAX_BUCKETED_NUMBER]] as Range[]);
533
533
  &nbsp;
534
534
  parsedRules.forEach(function (parsedRule) {
535
535
  const rulePercentage = parsedRule.percentage; // 0 - 100
@@ -605,7 +605,7 @@ export function getTraffic(
605
605
  const rangesToFill = getAllocation(updatedAvailableRanges, toFillValue);
606
606
  &nbsp;
607
607
  rangesToFill.forEach(function (range) {
608
- if (traffic.allocation) {
608
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (traffic.allocation) {
609
609
  traffic.allocation.push({
610
610
  variation: variation.value,
611
611
  range,
@@ -620,7 +620,7 @@ export function getTraffic(
620
620
  });
621
621
  }
622
622
  &nbsp;
623
- if (traffic.allocation) {
623
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (traffic.allocation) {
624
624
  traffic.allocation = traffic.allocation.filter((a) =&gt; {
625
625
  <span class="missing-if-branch" title="if path not taken" >I</span>if (a.range &amp;&amp; a.range[0] === a.range[1]) {
626
626
  <span class="cstat-no" title="statement not covered" > return false;</span>
@@ -629,8 +629,8 @@ export function getTraffic(
629
629
  return true;
630
630
  });
631
631
  &nbsp;
632
- <span class="missing-if-branch" title="if path not taken" >I</span>if (traffic.allocation.length === 0) {
633
- <span class="cstat-no" title="statement not covered" > delete traffic.allocation;</span>
632
+ if (traffic.allocation.length === 0) {
633
+ delete traffic.allocation;
634
634
  }
635
635
  }
636
636
  &nbsp;
@@ -646,16 +646,16 @@ export function getTraffic(
646
646
  <div class='footer quiet pad2 space-top1 center small'>
647
647
  Code coverage generated by
648
648
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
649
- at 2026-04-26T16:47:51.164Z
649
+ at 2026-07-12T20:35:50.655Z
650
650
  </div>
651
- <script src="../prettify.js"></script>
651
+ <script src="../../prettify.js"></script>
652
652
  <script>
653
653
  window.onload = function () {
654
654
  prettyPrint();
655
655
  };
656
656
  </script>
657
- <script src="../sorter.js"></script>
658
- <script src="../block-navigation.js"></script>
657
+ <script src="../../sorter.js"></script>
658
+ <script src="../../block-navigation.js"></script>
659
659
  </body>
660
660
  </html>
661
661