@md2do/cli 0.3.1 → 0.5.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 +55 -0
- package/README.md +25 -0
- package/coverage/coverage-final.json +5 -4
- package/coverage/index.html +11 -11
- package/coverage/lcov-report/index.html +11 -11
- package/coverage/lcov-report/src/cli.ts.html +10 -4
- package/coverage/lcov-report/src/commands/config.ts.html +2269 -0
- package/coverage/lcov-report/src/commands/index.html +24 -9
- package/coverage/lcov-report/src/commands/index.ts.html +7 -4
- package/coverage/lcov-report/src/commands/list.ts.html +103 -22
- package/coverage/lcov-report/src/commands/stats.ts.html +1 -1
- package/coverage/lcov-report/src/commands/todoist.ts.html +1 -1
- package/coverage/lcov-report/src/formatters/index.html +1 -1
- package/coverage/lcov-report/src/formatters/json.ts.html +1 -1
- package/coverage/lcov-report/src/formatters/pretty.ts.html +1 -1
- package/coverage/lcov-report/src/index.html +7 -7
- package/coverage/lcov-report/src/index.ts.html +1 -1
- package/coverage/lcov-report/src/scanner.ts.html +87 -6
- package/coverage/lcov.info +817 -20
- package/coverage/src/cli.ts.html +10 -4
- package/coverage/src/commands/config.ts.html +2269 -0
- package/coverage/src/commands/index.html +24 -9
- package/coverage/src/commands/index.ts.html +7 -4
- package/coverage/src/commands/list.ts.html +103 -22
- package/coverage/src/commands/stats.ts.html +1 -1
- package/coverage/src/commands/todoist.ts.html +1 -1
- package/coverage/src/formatters/index.html +1 -1
- package/coverage/src/formatters/json.ts.html +1 -1
- package/coverage/src/formatters/pretty.ts.html +1 -1
- package/coverage/src/index.html +7 -7
- package/coverage/src/index.ts.html +1 -1
- package/coverage/src/scanner.ts.html +87 -6
- package/dist/cli.js +488 -12
- package/dist/index.d.ts +6 -1
- package/dist/index.js +483 -6
- package/package.json +7 -4
- package/src/cli.ts +2 -0
- package/src/commands/config.ts +731 -0
- package/src/commands/index.ts +1 -0
- package/src/commands/list.ts +16 -5
- package/src/scanner.ts +23 -1
|
@@ -25,28 +25,28 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/2131</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/5</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/
|
|
42
|
+
<span class='fraction'>0/5</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/2131</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -79,18 +79,33 @@
|
|
|
79
79
|
</tr>
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
|
+
<td class="file low" data-value="config.ts"><a href="config.ts.html">config.ts</a></td>
|
|
83
|
+
<td data-value="0" class="pic low">
|
|
84
|
+
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
|
+
</td>
|
|
86
|
+
<td data-value="0" class="pct low">0%</td>
|
|
87
|
+
<td data-value="728" class="abs low">0/728</td>
|
|
88
|
+
<td data-value="0" class="pct low">0%</td>
|
|
89
|
+
<td data-value="1" class="abs low">0/1</td>
|
|
90
|
+
<td data-value="0" class="pct low">0%</td>
|
|
91
|
+
<td data-value="1" class="abs low">0/1</td>
|
|
92
|
+
<td data-value="0" class="pct low">0%</td>
|
|
93
|
+
<td data-value="728" class="abs low">0/728</td>
|
|
94
|
+
</tr>
|
|
95
|
+
|
|
96
|
+
<tr>
|
|
82
97
|
<td class="file low" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
|
83
98
|
<td data-value="0" class="pic low">
|
|
84
99
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
100
|
</td>
|
|
86
101
|
<td data-value="0" class="pct low">0%</td>
|
|
87
|
-
<td data-value="
|
|
102
|
+
<td data-value="5" class="abs low">0/5</td>
|
|
88
103
|
<td data-value="0" class="pct low">0%</td>
|
|
89
104
|
<td data-value="1" class="abs low">0/1</td>
|
|
90
105
|
<td data-value="0" class="pct low">0%</td>
|
|
91
106
|
<td data-value="1" class="abs low">0/1</td>
|
|
92
107
|
<td data-value="0" class="pct low">0%</td>
|
|
93
|
-
<td data-value="
|
|
108
|
+
<td data-value="5" class="abs low">0/5</td>
|
|
94
109
|
</tr>
|
|
95
110
|
|
|
96
111
|
<tr>
|
|
@@ -99,13 +114,13 @@
|
|
|
99
114
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
100
115
|
</td>
|
|
101
116
|
<td data-value="0" class="pct low">0%</td>
|
|
102
|
-
<td data-value="
|
|
117
|
+
<td data-value="271" class="abs low">0/271</td>
|
|
103
118
|
<td data-value="0" class="pct low">0%</td>
|
|
104
119
|
<td data-value="1" class="abs low">0/1</td>
|
|
105
120
|
<td data-value="0" class="pct low">0%</td>
|
|
106
121
|
<td data-value="1" class="abs low">0/1</td>
|
|
107
122
|
<td data-value="0" class="pct low">0%</td>
|
|
108
|
-
<td data-value="
|
|
123
|
+
<td data-value="271" class="abs low">0/271</td>
|
|
109
124
|
</tr>
|
|
110
125
|
|
|
111
126
|
<tr>
|
|
@@ -146,7 +161,7 @@
|
|
|
146
161
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
147
162
|
Code coverage generated by
|
|
148
163
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
149
|
-
at 2026-
|
|
164
|
+
at 2026-02-06T04:15:03.422Z
|
|
150
165
|
</div>
|
|
151
166
|
<script src="../../prettify.js"></script>
|
|
152
167
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/5</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/5</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -67,7 +67,9 @@
|
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
68
|
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
69
|
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
-
<a name='L5'></a><a href='#L5'>5</a
|
|
70
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
+
<a name='L6'></a><a href='#L6'>6</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
72
|
+
<span class="cline-any cline-no"> </span>
|
|
71
73
|
<span class="cline-any cline-no"> </span>
|
|
72
74
|
<span class="cline-any cline-no"> </span>
|
|
73
75
|
<span class="cline-any cline-no"> </span>
|
|
@@ -75,6 +77,7 @@
|
|
|
75
77
|
<span class="cstat-no" title="statement not covered" >export { createListCommand } from './list.js';</span>
|
|
76
78
|
<span class="cstat-no" title="statement not covered" >export { createStatsCommand } from './stats.js';</span>
|
|
77
79
|
<span class="cstat-no" title="statement not covered" >export { createTodoistCommand } from './todoist.js';</span>
|
|
80
|
+
<span class="cstat-no" title="statement not covered" >export { createConfigCommand } from './config.js';</span>
|
|
78
81
|
</pre></td></tr></table></pre>
|
|
79
82
|
|
|
80
83
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -82,7 +85,7 @@
|
|
|
82
85
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
83
86
|
Code coverage generated by
|
|
84
87
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
85
|
-
at 2026-
|
|
88
|
+
at 2026-02-06T04:15:03.422Z
|
|
86
89
|
</div>
|
|
87
90
|
<script src="../../prettify.js"></script>
|
|
88
91
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/271</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/271</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -307,7 +307,61 @@
|
|
|
307
307
|
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
308
|
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
309
|
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a
|
|
310
|
+
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
+
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
+
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
+
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
+
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
+
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
+
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
+
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
+
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
+
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
+
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
+
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
+
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
+
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
+
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
+
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
+
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
+
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
+
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
+
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
+
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
+
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
+
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
+
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
+
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
+
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
+
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
+
<a name='L272'></a><a href='#L272'>272</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
338
|
+
<span class="cline-any cline-no"> </span>
|
|
339
|
+
<span class="cline-any cline-no"> </span>
|
|
340
|
+
<span class="cline-any cline-no"> </span>
|
|
341
|
+
<span class="cline-any cline-no"> </span>
|
|
342
|
+
<span class="cline-any cline-no"> </span>
|
|
343
|
+
<span class="cline-any cline-no"> </span>
|
|
344
|
+
<span class="cline-any cline-no"> </span>
|
|
345
|
+
<span class="cline-any cline-no"> </span>
|
|
346
|
+
<span class="cline-any cline-no"> </span>
|
|
347
|
+
<span class="cline-any cline-no"> </span>
|
|
348
|
+
<span class="cline-any cline-no"> </span>
|
|
349
|
+
<span class="cline-any cline-no"> </span>
|
|
350
|
+
<span class="cline-any cline-no"> </span>
|
|
351
|
+
<span class="cline-any cline-no"> </span>
|
|
352
|
+
<span class="cline-any cline-no"> </span>
|
|
353
|
+
<span class="cline-any cline-no"> </span>
|
|
354
|
+
<span class="cline-any cline-no"> </span>
|
|
355
|
+
<span class="cline-any cline-no"> </span>
|
|
356
|
+
<span class="cline-any cline-no"> </span>
|
|
357
|
+
<span class="cline-any cline-no"> </span>
|
|
358
|
+
<span class="cline-any cline-no"> </span>
|
|
359
|
+
<span class="cline-any cline-no"> </span>
|
|
360
|
+
<span class="cline-any cline-no"> </span>
|
|
361
|
+
<span class="cline-any cline-no"> </span>
|
|
362
|
+
<span class="cline-any cline-no"> </span>
|
|
363
|
+
<span class="cline-any cline-no"> </span>
|
|
364
|
+
<span class="cline-any cline-no"> </span>
|
|
311
365
|
<span class="cline-any cline-no"> </span>
|
|
312
366
|
<span class="cline-any cline-no"> </span>
|
|
313
367
|
<span class="cline-any cline-no"> </span>
|
|
@@ -552,7 +606,8 @@
|
|
|
552
606
|
<span class="cline-any cline-no"> </span>
|
|
553
607
|
<span class="cline-any cline-no"> </span>
|
|
554
608
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { Command } from 'commander';<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
|
555
|
-
<span class="cstat-no" title="statement not covered" >import { filters, sorting } from '@md2do/core';</span>
|
|
609
|
+
<span class="cstat-no" title="statement not covered" >import { filters, sorting, filterWarnings } from '@md2do/core';</span>
|
|
610
|
+
<span class="cstat-no" title="statement not covered" >import { loadConfig, DEFAULT_CONFIG } from '@md2do/config';</span>
|
|
556
611
|
<span class="cstat-no" title="statement not covered" >import { scanMarkdownFiles } from '../scanner.js';</span>
|
|
557
612
|
<span class="cstat-no" title="statement not covered" >import { formatAsPretty, formatAsTable } from '../formatters/pretty.js';</span>
|
|
558
613
|
<span class="cstat-no" title="statement not covered" >import { formatAsJson } from '../formatters/json.js';</span>
|
|
@@ -638,11 +693,25 @@
|
|
|
638
693
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
639
694
|
<span class="cstat-no" title="statement not covered" > .action(async (options: ListCommandOptions) => {</span>
|
|
640
695
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
641
|
-
<span class="cstat-no" title="statement not covered" > //
|
|
696
|
+
<span class="cstat-no" title="statement not covered" > // Load config first to get workday settings</span>
|
|
697
|
+
<span class="cstat-no" title="statement not covered" > const config = await loadConfig({</span>
|
|
698
|
+
<span class="cstat-no" title="statement not covered" > cwd: options.path || process.cwd(),</span>
|
|
699
|
+
<span class="cstat-no" title="statement not covered" > });</span>
|
|
700
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
701
|
+
<span class="cstat-no" title="statement not covered" > // Scan markdown files with workday config</span>
|
|
642
702
|
<span class="cstat-no" title="statement not covered" > const scanResult = await scanMarkdownFiles({</span>
|
|
643
703
|
<span class="cstat-no" title="statement not covered" > root: options.path || process.cwd(),</span>
|
|
644
704
|
<span class="cstat-no" title="statement not covered" > ...(options.pattern !== undefined && { pattern: options.pattern }),</span>
|
|
645
705
|
<span class="cstat-no" title="statement not covered" > ...(options.exclude !== undefined && { exclude: options.exclude }),</span>
|
|
706
|
+
<span class="cstat-no" title="statement not covered" > ...(config.workday?.startTime && {</span>
|
|
707
|
+
<span class="cstat-no" title="statement not covered" > workdayStartTime: config.workday.startTime,</span>
|
|
708
|
+
<span class="cstat-no" title="statement not covered" > }),</span>
|
|
709
|
+
<span class="cstat-no" title="statement not covered" > ...(config.workday?.endTime && {</span>
|
|
710
|
+
<span class="cstat-no" title="statement not covered" > workdayEndTime: config.workday.endTime,</span>
|
|
711
|
+
<span class="cstat-no" title="statement not covered" > }),</span>
|
|
712
|
+
<span class="cstat-no" title="statement not covered" > ...(config.workday?.defaultDueTime && {</span>
|
|
713
|
+
<span class="cstat-no" title="statement not covered" > defaultDueTime: config.workday.defaultDueTime,</span>
|
|
714
|
+
<span class="cstat-no" title="statement not covered" > }),</span>
|
|
646
715
|
<span class="cstat-no" title="statement not covered" > });</span>
|
|
647
716
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
648
717
|
<span class="cstat-no" title="statement not covered" > let tasks = scanResult.tasks;</span>
|
|
@@ -764,27 +833,39 @@
|
|
|
764
833
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
765
834
|
<span class="cstat-no" title="statement not covered" > console.log(output);</span>
|
|
766
835
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
767
|
-
<span class="cstat-no" title="statement not covered" > //
|
|
768
|
-
<span class="cstat-no" title="statement not covered" > if (options.warnings !== false
|
|
769
|
-
<span class="cstat-no" title="statement not covered" >
|
|
770
|
-
<span class="cstat-no" title="statement not covered" > `\n⚠️ ${scanResult.warnings.length} warning${scanResult.warnings.length > 1 ? 's' : ''} encountered during scanning`,</span>
|
|
771
|
-
<span class="cstat-no" title="statement not covered" > );</span>
|
|
836
|
+
<span class="cstat-no" title="statement not covered" > // Apply warning filters (unless --no-warnings overrides)</span>
|
|
837
|
+
<span class="cstat-no" title="statement not covered" > if (options.warnings !== false) {</span>
|
|
838
|
+
<span class="cstat-no" title="statement not covered" > const warningConfig = config.warnings ?? DEFAULT_CONFIG.warnings;</span>
|
|
772
839
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
773
|
-
<span class="cstat-no" title="statement not covered" > //
|
|
774
|
-
<span class="cstat-no" title="statement not covered" > const
|
|
775
|
-
<span class="cstat-no" title="statement not covered" >
|
|
776
|
-
<span class="cstat-no" title="statement not covered" >
|
|
840
|
+
<span class="cstat-no" title="statement not covered" > // Apply config-based filtering</span>
|
|
841
|
+
<span class="cstat-no" title="statement not covered" > const filteredWarnings = filterWarnings(</span>
|
|
842
|
+
<span class="cstat-no" title="statement not covered" > scanResult.warnings,</span>
|
|
843
|
+
<span class="cstat-no" title="statement not covered" > warningConfig ?? {},</span>
|
|
844
|
+
<span class="cstat-no" title="statement not covered" > );</span>
|
|
777
845
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
778
|
-
<span class="cstat-no" title="statement not covered" >
|
|
846
|
+
<span class="cstat-no" title="statement not covered" > // Show warnings if any remain after filtering</span>
|
|
847
|
+
<span class="cstat-no" title="statement not covered" > if (filteredWarnings.length > 0) {</span>
|
|
779
848
|
<span class="cstat-no" title="statement not covered" > console.error(</span>
|
|
780
|
-
<span class="cstat-no" title="statement not covered" >
|
|
849
|
+
<span class="cstat-no" title="statement not covered" > `\n⚠️ ${filteredWarnings.length} warning${filteredWarnings.length > 1 ? 's' : ''} encountered during scanning`,</span>
|
|
781
850
|
<span class="cstat-no" title="statement not covered" > );</span>
|
|
782
|
-
<span class="cstat-no" title="statement not covered" > }</span>
|
|
783
851
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
784
|
-
<span class="cstat-no" title="statement not covered" >
|
|
785
|
-
<span class="cstat-no" title="statement not covered" >
|
|
786
|
-
<span class="cstat-no" title="statement not covered" >
|
|
787
|
-
<span class="cstat-no" title="statement not covered" >
|
|
852
|
+
<span class="cstat-no" title="statement not covered" > // Show all warnings if --all-warnings, otherwise show first 5</span>
|
|
853
|
+
<span class="cstat-no" title="statement not covered" > const warningsToShow = options.allWarnings</span>
|
|
854
|
+
<span class="cstat-no" title="statement not covered" > ? filteredWarnings</span>
|
|
855
|
+
<span class="cstat-no" title="statement not covered" > : filteredWarnings.slice(0, 5);</span>
|
|
856
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
857
|
+
<span class="cstat-no" title="statement not covered" > for (const warning of warningsToShow) {</span>
|
|
858
|
+
<span class="cstat-no" title="statement not covered" > // Use message field (new) or fallback to reason (legacy)</span>
|
|
859
|
+
<span class="cstat-no" title="statement not covered" > const message =</span>
|
|
860
|
+
<span class="cstat-no" title="statement not covered" > warning.message || warning.reason || 'Unknown warning';</span>
|
|
861
|
+
<span class="cstat-no" title="statement not covered" > console.error(` ${warning.file}:${warning.line} - ${message}`);</span>
|
|
862
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
863
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
864
|
+
<span class="cstat-no" title="statement not covered" > if (!options.allWarnings && filteredWarnings.length > 5) {</span>
|
|
865
|
+
<span class="cstat-no" title="statement not covered" > console.error(</span>
|
|
866
|
+
<span class="cstat-no" title="statement not covered" > ` ... and ${filteredWarnings.length - 5} more warning${filteredWarnings.length - 5 > 1 ? 's' : ''} (use --all-warnings to see all)`,</span>
|
|
867
|
+
<span class="cstat-no" title="statement not covered" > );</span>
|
|
868
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
788
869
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
789
870
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
790
871
|
<span class="cstat-no" title="statement not covered" > } catch (error) {</span>
|
|
@@ -802,7 +883,7 @@
|
|
|
802
883
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
803
884
|
Code coverage generated by
|
|
804
885
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
805
|
-
at 2026-
|
|
886
|
+
at 2026-02-06T04:15:03.422Z
|
|
806
887
|
</div>
|
|
807
888
|
<script src="../../prettify.js"></script>
|
|
808
889
|
<script>
|
|
@@ -1153,7 +1153,7 @@
|
|
|
1153
1153
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1154
1154
|
Code coverage generated by
|
|
1155
1155
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1156
|
-
at 2026-
|
|
1156
|
+
at 2026-02-06T04:15:03.422Z
|
|
1157
1157
|
</div>
|
|
1158
1158
|
<script src="../../prettify.js"></script>
|
|
1159
1159
|
<script>
|
|
@@ -2368,7 +2368,7 @@
|
|
|
2368
2368
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
2369
2369
|
Code coverage generated by
|
|
2370
2370
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
2371
|
-
at 2026-
|
|
2371
|
+
at 2026-02-06T04:15:03.422Z
|
|
2372
2372
|
</div>
|
|
2373
2373
|
<script src="../../prettify.js"></script>
|
|
2374
2374
|
<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 2026-
|
|
119
|
+
at 2026-02-06T04:15:03.422Z
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -265,7 +265,7 @@
|
|
|
265
265
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
266
266
|
Code coverage generated by
|
|
267
267
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
268
|
-
at 2026-
|
|
268
|
+
at 2026-02-06T04:15:03.422Z
|
|
269
269
|
</div>
|
|
270
270
|
<script src="../../prettify.js"></script>
|
|
271
271
|
<script>
|
|
@@ -940,7 +940,7 @@
|
|
|
940
940
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
941
941
|
Code coverage generated by
|
|
942
942
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
943
|
-
at 2026-
|
|
943
|
+
at 2026-02-06T04:15:03.422Z
|
|
944
944
|
</div>
|
|
945
945
|
<script src="../../prettify.js"></script>
|
|
946
946
|
<script>
|
package/coverage/src/index.html
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/178</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/178</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -84,13 +84,13 @@
|
|
|
84
84
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
85
|
</td>
|
|
86
86
|
<td data-value="0" class="pct low">0%</td>
|
|
87
|
-
<td data-value="
|
|
87
|
+
<td data-value="44" class="abs low">0/44</td>
|
|
88
88
|
<td data-value="0" class="pct low">0%</td>
|
|
89
89
|
<td data-value="1" class="abs low">0/1</td>
|
|
90
90
|
<td data-value="0" class="pct low">0%</td>
|
|
91
91
|
<td data-value="1" class="abs low">0/1</td>
|
|
92
92
|
<td data-value="0" class="pct low">0%</td>
|
|
93
|
-
<td data-value="
|
|
93
|
+
<td data-value="44" class="abs low">0/44</td>
|
|
94
94
|
</tr>
|
|
95
95
|
|
|
96
96
|
<tr>
|
|
@@ -114,13 +114,13 @@
|
|
|
114
114
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
115
115
|
</td>
|
|
116
116
|
<td data-value="0" class="pct low">0%</td>
|
|
117
|
-
<td data-value="
|
|
117
|
+
<td data-value="132" class="abs low">0/132</td>
|
|
118
118
|
<td data-value="0" class="pct low">0%</td>
|
|
119
119
|
<td data-value="1" class="abs low">0/1</td>
|
|
120
120
|
<td data-value="0" class="pct low">0%</td>
|
|
121
121
|
<td data-value="1" class="abs low">0/1</td>
|
|
122
122
|
<td data-value="0" class="pct low">0%</td>
|
|
123
|
-
<td data-value="
|
|
123
|
+
<td data-value="132" class="abs low">0/132</td>
|
|
124
124
|
</tr>
|
|
125
125
|
|
|
126
126
|
</tbody>
|
|
@@ -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 2026-
|
|
134
|
+
at 2026-02-06T04:15:03.422Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
77
77
|
Code coverage generated by
|
|
78
78
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
79
|
-
at 2026-
|
|
79
|
+
at 2026-02-06T04:15:03.422Z
|
|
80
80
|
</div>
|
|
81
81
|
<script src="../prettify.js"></script>
|
|
82
82
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/132</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/132</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -168,7 +168,61 @@
|
|
|
168
168
|
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
169
|
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
170
|
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a
|
|
171
|
+
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
+
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
+
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
+
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
+
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
+
<a name='L111'></a><a href='#L111'>111</a>
|
|
177
|
+
<a name='L112'></a><a href='#L112'>112</a>
|
|
178
|
+
<a name='L113'></a><a href='#L113'>113</a>
|
|
179
|
+
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
|
+
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
|
+
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
+
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
+
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
+
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
+
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
+
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
+
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
+
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
+
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
+
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
+
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
+
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
+
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
+
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
+
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
+
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
+
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
+
<a name='L133'></a><a href='#L133'>133</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
199
|
+
<span class="cline-any cline-no"> </span>
|
|
200
|
+
<span class="cline-any cline-no"> </span>
|
|
201
|
+
<span class="cline-any cline-no"> </span>
|
|
202
|
+
<span class="cline-any cline-no"> </span>
|
|
203
|
+
<span class="cline-any cline-no"> </span>
|
|
204
|
+
<span class="cline-any cline-no"> </span>
|
|
205
|
+
<span class="cline-any cline-no"> </span>
|
|
206
|
+
<span class="cline-any cline-no"> </span>
|
|
207
|
+
<span class="cline-any cline-no"> </span>
|
|
208
|
+
<span class="cline-any cline-no"> </span>
|
|
209
|
+
<span class="cline-any cline-no"> </span>
|
|
210
|
+
<span class="cline-any cline-no"> </span>
|
|
211
|
+
<span class="cline-any cline-no"> </span>
|
|
212
|
+
<span class="cline-any cline-no"> </span>
|
|
213
|
+
<span class="cline-any cline-no"> </span>
|
|
214
|
+
<span class="cline-any cline-no"> </span>
|
|
215
|
+
<span class="cline-any cline-no"> </span>
|
|
216
|
+
<span class="cline-any cline-no"> </span>
|
|
217
|
+
<span class="cline-any cline-no"> </span>
|
|
218
|
+
<span class="cline-any cline-no"> </span>
|
|
219
|
+
<span class="cline-any cline-no"> </span>
|
|
220
|
+
<span class="cline-any cline-no"> </span>
|
|
221
|
+
<span class="cline-any cline-no"> </span>
|
|
222
|
+
<span class="cline-any cline-no"> </span>
|
|
223
|
+
<span class="cline-any cline-no"> </span>
|
|
224
|
+
<span class="cline-any cline-no"> </span>
|
|
225
|
+
<span class="cline-any cline-no"> </span>
|
|
172
226
|
<span class="cline-any cline-no"> </span>
|
|
173
227
|
<span class="cline-any cline-no"> </span>
|
|
174
228
|
<span class="cline-any cline-no"> </span>
|
|
@@ -297,6 +351,21 @@
|
|
|
297
351
|
<span class="cstat-no" title="statement not covered" > * Whether to follow symbolic links (defaults to false)</span>
|
|
298
352
|
<span class="cstat-no" title="statement not covered" > */</span>
|
|
299
353
|
<span class="cstat-no" title="statement not covered" > followSymlinks?: boolean;</span>
|
|
354
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
355
|
+
<span class="cstat-no" title="statement not covered" > /**</span>
|
|
356
|
+
<span class="cstat-no" title="statement not covered" > * Workday start time for default due times (e.g., "08:00")</span>
|
|
357
|
+
<span class="cstat-no" title="statement not covered" > */</span>
|
|
358
|
+
<span class="cstat-no" title="statement not covered" > workdayStartTime?: string;</span>
|
|
359
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
360
|
+
<span class="cstat-no" title="statement not covered" > /**</span>
|
|
361
|
+
<span class="cstat-no" title="statement not covered" > * Workday end time for default due times (e.g., "17:00")</span>
|
|
362
|
+
<span class="cstat-no" title="statement not covered" > */</span>
|
|
363
|
+
<span class="cstat-no" title="statement not covered" > workdayEndTime?: string;</span>
|
|
364
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
365
|
+
<span class="cstat-no" title="statement not covered" > /**</span>
|
|
366
|
+
<span class="cstat-no" title="statement not covered" > * Default due time to use when no time is specified ("start" or "end")</span>
|
|
367
|
+
<span class="cstat-no" title="statement not covered" > */</span>
|
|
368
|
+
<span class="cstat-no" title="statement not covered" > defaultDueTime?: 'start' | 'end';</span>
|
|
300
369
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
301
370
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
302
371
|
<span class="cstat-no" title="statement not covered" >export interface ScanResult {</span>
|
|
@@ -331,6 +400,9 @@
|
|
|
331
400
|
<span class="cstat-no" title="statement not covered" > '**/.next/**',</span>
|
|
332
401
|
<span class="cstat-no" title="statement not covered" > ],</span>
|
|
333
402
|
<span class="cstat-no" title="statement not covered" > followSymlinks = false,</span>
|
|
403
|
+
<span class="cstat-no" title="statement not covered" > workdayStartTime,</span>
|
|
404
|
+
<span class="cstat-no" title="statement not covered" > workdayEndTime,</span>
|
|
405
|
+
<span class="cstat-no" title="statement not covered" > defaultDueTime,</span>
|
|
334
406
|
<span class="cstat-no" title="statement not covered" > } = options;</span>
|
|
335
407
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
336
408
|
<span class="cstat-no" title="statement not covered" > // Find all markdown files</span>
|
|
@@ -352,16 +424,25 @@
|
|
|
352
424
|
<span class="cstat-no" title="statement not covered" > const fullPath = `${root}/${file}`;</span>
|
|
353
425
|
<span class="cstat-no" title="statement not covered" > const content = await readFile(fullPath, 'utf-8');</span>
|
|
354
426
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
355
|
-
<span class="cstat-no" title="statement not covered" > const result = scanner.scanFile(file, content
|
|
427
|
+
<span class="cstat-no" title="statement not covered" > const result = scanner.scanFile(file, content, {</span>
|
|
428
|
+
<span class="cstat-no" title="statement not covered" > ...(workdayStartTime && { workdayStartTime }),</span>
|
|
429
|
+
<span class="cstat-no" title="statement not covered" > ...(workdayEndTime && { workdayEndTime }),</span>
|
|
430
|
+
<span class="cstat-no" title="statement not covered" > ...(defaultDueTime && { defaultDueTime }),</span>
|
|
431
|
+
<span class="cstat-no" title="statement not covered" > });</span>
|
|
356
432
|
<span class="cstat-no" title="statement not covered" > allTasks.push(...result.tasks);</span>
|
|
357
433
|
<span class="cstat-no" title="statement not covered" > allWarnings.push(...result.warnings);</span>
|
|
358
434
|
<span class="cstat-no" title="statement not covered" > } catch (error) {</span>
|
|
359
435
|
<span class="cstat-no" title="statement not covered" > // Add warning for files that couldn't be read</span>
|
|
436
|
+
<span class="cstat-no" title="statement not covered" > const message = `Failed to read file: ${error instanceof Error ? error.message : 'Unknown error'}`;</span>
|
|
360
437
|
<span class="cstat-no" title="statement not covered" > allWarnings.push({</span>
|
|
438
|
+
<span class="cstat-no" title="statement not covered" > severity: 'error',</span>
|
|
439
|
+
<span class="cstat-no" title="statement not covered" > source: 'md2do',</span>
|
|
440
|
+
<span class="cstat-no" title="statement not covered" > ruleId: 'file-read-error',</span>
|
|
361
441
|
<span class="cstat-no" title="statement not covered" > file,</span>
|
|
362
442
|
<span class="cstat-no" title="statement not covered" > line: 0,</span>
|
|
363
443
|
<span class="cstat-no" title="statement not covered" > text: '',</span>
|
|
364
|
-
<span class="cstat-no" title="statement not covered" >
|
|
444
|
+
<span class="cstat-no" title="statement not covered" > message,</span>
|
|
445
|
+
<span class="cstat-no" title="statement not covered" > reason: message,</span>
|
|
365
446
|
<span class="cstat-no" title="statement not covered" > });</span>
|
|
366
447
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
367
448
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
@@ -385,7 +466,7 @@
|
|
|
385
466
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
386
467
|
Code coverage generated by
|
|
387
468
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
388
|
-
at 2026-
|
|
469
|
+
at 2026-02-06T04:15:03.422Z
|
|
389
470
|
</div>
|
|
390
471
|
<script src="../prettify.js"></script>
|
|
391
472
|
<script>
|