@adaptivestone/framework 4.8.0 → 4.8.2

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 (75) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/Cli.js +2 -0
  3. package/commands/migration/Create.js +4 -3
  4. package/coverage/clover.xml +2820 -2789
  5. package/coverage/coverage-final.json +43 -43
  6. package/coverage/framework/config/auth.js.html +6 -6
  7. package/coverage/framework/config/http.js.html +10 -10
  8. package/coverage/framework/config/i18n.js.html +13 -13
  9. package/coverage/framework/config/index.html +1 -1
  10. package/coverage/framework/config/log.js.html +23 -23
  11. package/coverage/framework/config/mail.js.html +30 -30
  12. package/coverage/framework/config/mongo.js.html +4 -4
  13. package/coverage/framework/config/rateLimiter.js.html +17 -17
  14. package/coverage/framework/config/redis.js.html +5 -5
  15. package/coverage/framework/config/validate.js.html +4 -4
  16. package/coverage/framework/controllers/Auth.js.html +90 -90
  17. package/coverage/framework/controllers/Home.js.html +39 -39
  18. package/coverage/framework/controllers/index.html +17 -17
  19. package/coverage/framework/controllers/index.js.html +54 -54
  20. package/coverage/framework/controllers/test/SomeController.js.html +106 -106
  21. package/coverage/framework/controllers/test/index.html +19 -19
  22. package/coverage/framework/helpers/files.js.html +66 -66
  23. package/coverage/framework/helpers/index.html +1 -1
  24. package/coverage/framework/helpers/logger.js.html +14 -14
  25. package/coverage/framework/helpers/redis/clearNamespace.js.html +28 -28
  26. package/coverage/framework/helpers/redis/index.html +17 -17
  27. package/coverage/framework/index.html +19 -19
  28. package/coverage/framework/models/Migration.js.html +16 -16
  29. package/coverage/framework/models/Sequence.js.html +39 -39
  30. package/coverage/framework/models/User.js.html +192 -192
  31. package/coverage/framework/models/index.html +28 -28
  32. package/coverage/framework/modules/AbstractController.js.html +478 -478
  33. package/coverage/framework/modules/AbstractModel.js.html +54 -54
  34. package/coverage/framework/modules/Base.js.html +52 -52
  35. package/coverage/framework/modules/index.html +21 -21
  36. package/coverage/framework/server.js.html +478 -385
  37. package/coverage/framework/services/cache/Cache.js.html +216 -216
  38. package/coverage/framework/services/cache/index.html +20 -20
  39. package/coverage/framework/services/documentation/DocumentationGenerator.js.html +17 -17
  40. package/coverage/framework/services/documentation/index.html +1 -1
  41. package/coverage/framework/services/http/HttpServer.js.html +90 -90
  42. package/coverage/framework/services/http/index.html +1 -1
  43. package/coverage/framework/services/http/middleware/AbstractMiddleware.js.html +60 -60
  44. package/coverage/framework/services/http/middleware/Auth.js.html +16 -16
  45. package/coverage/framework/services/http/middleware/GetUserByToken.js.html +60 -60
  46. package/coverage/framework/services/http/middleware/I18n.js.html +129 -129
  47. package/coverage/framework/services/http/middleware/Pagination.js.html +95 -95
  48. package/coverage/framework/services/http/middleware/PrepareAppInfo.js.html +27 -27
  49. package/coverage/framework/services/http/middleware/RateLimiter.js.html +166 -166
  50. package/coverage/framework/services/http/middleware/RequestLogger.js.html +21 -21
  51. package/coverage/framework/services/http/middleware/RequestParser.js.html +47 -47
  52. package/coverage/framework/services/http/middleware/Role.js.html +55 -55
  53. package/coverage/framework/services/http/middleware/index.html +99 -99
  54. package/coverage/framework/services/http/middleware/test/CheckFlag.js.html +36 -36
  55. package/coverage/framework/services/http/middleware/test/index.html +19 -19
  56. package/coverage/framework/services/messaging/email/index.html +1 -1
  57. package/coverage/framework/services/messaging/email/index.js.html +67 -67
  58. package/coverage/framework/services/messaging/index.html +1 -1
  59. package/coverage/framework/services/messaging/index.js.html +6 -6
  60. package/coverage/framework/services/validate/ValidateService.js.html +202 -202
  61. package/coverage/framework/services/validate/drivers/AbstractValidator.js.html +24 -24
  62. package/coverage/framework/services/validate/drivers/CustomValidator.js.html +14 -14
  63. package/coverage/framework/services/validate/drivers/YupValidator.js.html +55 -55
  64. package/coverage/framework/services/validate/drivers/index.html +1 -1
  65. package/coverage/framework/services/validate/index.html +21 -21
  66. package/coverage/index.html +110 -110
  67. package/models/User.test.js +3 -3
  68. package/package.json +2 -1
  69. package/server.d.ts +9 -1
  70. package/server.js +50 -19
  71. package/services/http/middleware/I18n.test.js +1 -1
  72. package/services/http/middleware/RateLimiter.test.js +7 -7
  73. package/services/validate/ValidateService.test.js +3 -3
  74. package/tests/setup.js +3 -1
  75. package/tests/setupVitest.js +3 -5
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">88.88% </span>
26
+ <span class="strong">44.44% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>16/18</span>
28
+ <span class='fraction'>8/18</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">66.66% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>2/3</span>
35
+ <span class='fraction'>1/1</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">100% </span>
40
+ <span class="strong">0% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>1/1</span>
42
+ <span class='fraction'>0/1</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">88.88% </span>
47
+ <span class="strong">44.44% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>16/18</span>
49
+ <span class='fraction'>8/18</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line high'></div>
64
+ <div class='status-line low'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -81,39 +81,39 @@
81
81
  <a name='L16'></a><a href='#L16'>16</a>
82
82
  <a name='L17'></a><a href='#L17'>17</a>
83
83
  <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">15x</span>
85
- <span class="cline-any cline-yes">15x</span>
86
- <span class="cline-any cline-yes">15x</span>
87
- <span class="cline-any cline-yes">15x</span>
88
- <span class="cline-any cline-yes">15x</span>
89
- <span class="cline-any cline-yes">1x</span>
90
- <span class="cline-any cline-yes">1x</span>
91
- <span class="cline-any cline-yes">1x</span>
92
- <span class="cline-any cline-yes">1x</span>
93
- <span class="cline-any cline-yes">1x</span>
94
- <span class="cline-any cline-yes">1x</span>
95
- <span class="cline-any cline-yes">1x</span>
84
+ <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
85
+ <span class="cline-any cline-yes">2x</span>
86
+ <span class="cline-any cline-yes">2x</span>
87
+ <span class="cline-any cline-yes">2x</span>
88
+ <span class="cline-any cline-yes">2x</span>
89
+ <span class="cline-any cline-no">&nbsp;</span>
90
+ <span class="cline-any cline-no">&nbsp;</span>
91
+ <span class="cline-any cline-no">&nbsp;</span>
96
92
  <span class="cline-any cline-no">&nbsp;</span>
97
93
  <span class="cline-any cline-no">&nbsp;</span>
98
- <span class="cline-any cline-yes">1x</span>
99
- <span class="cline-any cline-yes">15x</span>
100
- <span class="cline-any cline-yes">15x</span>
101
- <span class="cline-any cline-yes">15x</span>
94
+ <span class="cline-any cline-no">&nbsp;</span>
95
+ <span class="cline-any cline-no">&nbsp;</span>
96
+ <span class="cline-any cline-no">&nbsp;</span>
97
+ <span class="cline-any cline-no">&nbsp;</span>
98
+ <span class="cline-any cline-no">&nbsp;</span>
99
+ <span class="cline-any cline-yes">2x</span>
100
+ <span class="cline-any cline-yes">2x</span>
101
+ <span class="cline-any cline-yes">2x</span>
102
102
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const AbstractMiddleware = require('../AbstractMiddleware');
103
103
  &nbsp;
104
104
  class CheckFlag extends AbstractMiddleware {
105
105
  // eslint-disable-next-line class-methods-use-this
106
- async middleware(req, res, next) {
107
- const { flag } = req.body;
108
- &nbsp;
109
- if (!flag) {
110
- return res.status(400).json({
111
- msg: `Flag is off`,
112
- });
113
- }
114
- <span class="cstat-no" title="statement not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span>
106
+ <span class="fstat-no" title="function not covered" > async middleware(req, res, next) {</span>
107
+ <span class="cstat-no" title="statement not covered" > const { flag } = req.body;</span>
108
+ <span class="cstat-no" title="statement not covered" ></span>
109
+ <span class="cstat-no" title="statement not covered" > if (!flag) {</span>
110
+ <span class="cstat-no" title="statement not covered" > return res.status(400).json({</span>
111
+ <span class="cstat-no" title="statement not covered" > msg: `Flag is off`,</span>
112
+ <span class="cstat-no" title="statement not covered" > });</span>
113
+ <span class="cstat-no" title="statement not covered" > }</span>
114
+ <span class="cstat-no" title="statement not covered" ></span>
115
115
  <span class="cstat-no" title="statement not covered" > return next();</span>
116
- }
116
+ <span class="cstat-no" title="statement not covered" > }</span>
117
117
  }
118
118
  &nbsp;
119
119
  module.exports = CheckFlag;
@@ -124,7 +124,7 @@ module.exports = CheckFlag;
124
124
  <div class='footer quiet pad2 space-top1 center small'>
125
125
  Code coverage generated by
126
126
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
127
- at 2023-09-21T04:47:08.309Z
127
+ at 2023-09-21T12:04:18.148Z
128
128
  </div>
129
129
  <script src="../../../../../prettify.js"></script>
130
130
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">88.88% </span>
26
+ <span class="strong">44.44% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>16/18</span>
28
+ <span class='fraction'>8/18</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">66.66% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>2/3</span>
35
+ <span class='fraction'>1/1</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">100% </span>
40
+ <span class="strong">0% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>1/1</span>
42
+ <span class='fraction'>0/1</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">88.88% </span>
47
+ <span class="strong">44.44% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>16/18</span>
49
+ <span class='fraction'>8/18</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line high'></div>
64
+ <div class='status-line low'></div>
65
65
  <div class="pad1">
66
66
  <table class="coverage-summary">
67
67
  <thead>
@@ -79,18 +79,18 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file high" data-value="CheckFlag.js"><a href="CheckFlag.js.html">CheckFlag.js</a></td>
83
- <td data-value="88.88" class="pic high">
84
- <div class="chart"><div class="cover-fill" style="width: 88%"></div><div class="cover-empty" style="width: 12%"></div></div>
82
+ <td class="file low" data-value="CheckFlag.js"><a href="CheckFlag.js.html">CheckFlag.js</a></td>
83
+ <td data-value="44.44" class="pic low">
84
+ <div class="chart"><div class="cover-fill" style="width: 44%"></div><div class="cover-empty" style="width: 56%"></div></div>
85
85
  </td>
86
- <td data-value="88.88" class="pct high">88.88%</td>
87
- <td data-value="18" class="abs high">16/18</td>
88
- <td data-value="66.66" class="pct medium">66.66%</td>
89
- <td data-value="3" class="abs medium">2/3</td>
86
+ <td data-value="44.44" class="pct low">44.44%</td>
87
+ <td data-value="18" class="abs low">8/18</td>
90
88
  <td data-value="100" class="pct high">100%</td>
91
89
  <td data-value="1" class="abs high">1/1</td>
92
- <td data-value="88.88" class="pct high">88.88%</td>
93
- <td data-value="18" class="abs high">16/18</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="44.44" class="pct low">44.44%</td>
93
+ <td data-value="18" class="abs low">8/18</td>
94
94
  </tr>
95
95
 
96
96
  </tbody>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2023-09-21T04:47:08.309Z
104
+ at 2023-09-21T12:04:18.148Z
105
105
  </div>
106
106
  <script src="../../../../../prettify.js"></script>
107
107
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2023-09-21T04:47:08.309Z
104
+ at 2023-09-21T12:04:18.148Z
105
105
  </div>
106
106
  <script src="../../../../prettify.js"></script>
107
107
  <script>
@@ -281,32 +281,32 @@
281
281
  <a name='L216'></a><a href='#L216'>216</a>
282
282
  <a name='L217'></a><a href='#L217'>217</a>
283
283
  <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">15x</span>
285
- <span class="cline-any cline-yes">15x</span>
286
- <span class="cline-any cline-yes">15x</span>
287
- <span class="cline-any cline-yes">15x</span>
288
- <span class="cline-any cline-yes">15x</span>
289
- <span class="cline-any cline-yes">15x</span>
290
- <span class="cline-any cline-yes">15x</span>
291
- <span class="cline-any cline-yes">15x</span>
292
- <span class="cline-any cline-yes">15x</span>
293
- <span class="cline-any cline-yes">15x</span>
294
- <span class="cline-any cline-yes">15x</span>
295
- <span class="cline-any cline-yes">15x</span>
296
- <span class="cline-any cline-yes">15x</span>
297
- <span class="cline-any cline-yes">15x</span>
298
- <span class="cline-any cline-yes">15x</span>
299
- <span class="cline-any cline-yes">15x</span>
300
- <span class="cline-any cline-yes">15x</span>
301
- <span class="cline-any cline-yes">15x</span>
302
- <span class="cline-any cline-yes">15x</span>
303
- <span class="cline-any cline-yes">15x</span>
304
- <span class="cline-any cline-yes">15x</span>
305
- <span class="cline-any cline-yes">15x</span>
306
- <span class="cline-any cline-yes">15x</span>
307
- <span class="cline-any cline-yes">15x</span>
308
- <span class="cline-any cline-yes">15x</span>
309
- <span class="cline-any cline-yes">15x</span>
284
+ <a name='L219'></a><a href='#L219'>219</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
285
+ <span class="cline-any cline-yes">2x</span>
286
+ <span class="cline-any cline-yes">2x</span>
287
+ <span class="cline-any cline-yes">2x</span>
288
+ <span class="cline-any cline-yes">2x</span>
289
+ <span class="cline-any cline-yes">2x</span>
290
+ <span class="cline-any cline-yes">2x</span>
291
+ <span class="cline-any cline-yes">2x</span>
292
+ <span class="cline-any cline-yes">2x</span>
293
+ <span class="cline-any cline-yes">2x</span>
294
+ <span class="cline-any cline-yes">2x</span>
295
+ <span class="cline-any cline-yes">2x</span>
296
+ <span class="cline-any cline-yes">2x</span>
297
+ <span class="cline-any cline-yes">2x</span>
298
+ <span class="cline-any cline-yes">2x</span>
299
+ <span class="cline-any cline-yes">2x</span>
300
+ <span class="cline-any cline-yes">2x</span>
301
+ <span class="cline-any cline-yes">2x</span>
302
+ <span class="cline-any cline-yes">2x</span>
303
+ <span class="cline-any cline-yes">2x</span>
304
+ <span class="cline-any cline-yes">2x</span>
305
+ <span class="cline-any cline-yes">2x</span>
306
+ <span class="cline-any cline-yes">2x</span>
307
+ <span class="cline-any cline-yes">2x</span>
308
+ <span class="cline-any cline-yes">2x</span>
309
+ <span class="cline-any cline-yes">2x</span>
310
310
  <span class="cline-any cline-yes">4x</span>
311
311
  <span class="cline-any cline-yes">4x</span>
312
312
  <span class="cline-any cline-yes">4x</span>
@@ -335,14 +335,14 @@
335
335
  <span class="cline-any cline-yes">4x</span>
336
336
  <span class="cline-any cline-yes">4x</span>
337
337
  <span class="cline-any cline-yes">4x</span>
338
- <span class="cline-any cline-yes">15x</span>
339
- <span class="cline-any cline-yes">15x</span>
340
- <span class="cline-any cline-yes">15x</span>
341
- <span class="cline-any cline-yes">15x</span>
342
- <span class="cline-any cline-yes">15x</span>
343
- <span class="cline-any cline-yes">15x</span>
344
- <span class="cline-any cline-yes">15x</span>
345
- <span class="cline-any cline-yes">15x</span>
338
+ <span class="cline-any cline-yes">2x</span>
339
+ <span class="cline-any cline-yes">2x</span>
340
+ <span class="cline-any cline-yes">2x</span>
341
+ <span class="cline-any cline-yes">2x</span>
342
+ <span class="cline-any cline-yes">2x</span>
343
+ <span class="cline-any cline-yes">2x</span>
344
+ <span class="cline-any cline-yes">2x</span>
345
+ <span class="cline-any cline-yes">2x</span>
346
346
  <span class="cline-any cline-yes">16x</span>
347
347
  <span class="cline-any cline-yes">4x</span>
348
348
  <span class="cline-any cline-yes">4x</span>
@@ -360,12 +360,12 @@
360
360
  <span class="cline-any cline-no">&nbsp;</span>
361
361
  <span class="cline-any cline-yes">16x</span>
362
362
  <span class="cline-any cline-yes">16x</span>
363
- <span class="cline-any cline-yes">15x</span>
364
- <span class="cline-any cline-yes">15x</span>
365
- <span class="cline-any cline-yes">15x</span>
366
- <span class="cline-any cline-yes">15x</span>
367
- <span class="cline-any cline-yes">15x</span>
368
- <span class="cline-any cline-yes">15x</span>
363
+ <span class="cline-any cline-yes">2x</span>
364
+ <span class="cline-any cline-yes">2x</span>
365
+ <span class="cline-any cline-yes">2x</span>
366
+ <span class="cline-any cline-yes">2x</span>
367
+ <span class="cline-any cline-yes">2x</span>
368
+ <span class="cline-any cline-yes">2x</span>
369
369
  <span class="cline-any cline-yes">4x</span>
370
370
  <span class="cline-any cline-yes">4x</span>
371
371
  <span class="cline-any cline-yes">4x</span>
@@ -423,15 +423,15 @@
423
423
  <span class="cline-any cline-yes">4x</span>
424
424
  <span class="cline-any cline-yes">4x</span>
425
425
  <span class="cline-any cline-yes">4x</span>
426
- <span class="cline-any cline-yes">15x</span>
427
- <span class="cline-any cline-yes">15x</span>
428
- <span class="cline-any cline-yes">15x</span>
429
- <span class="cline-any cline-yes">15x</span>
430
- <span class="cline-any cline-yes">15x</span>
431
- <span class="cline-any cline-yes">15x</span>
432
- <span class="cline-any cline-yes">15x</span>
433
- <span class="cline-any cline-yes">15x</span>
434
- <span class="cline-any cline-yes">15x</span>
426
+ <span class="cline-any cline-yes">2x</span>
427
+ <span class="cline-any cline-yes">2x</span>
428
+ <span class="cline-any cline-yes">2x</span>
429
+ <span class="cline-any cline-yes">2x</span>
430
+ <span class="cline-any cline-yes">2x</span>
431
+ <span class="cline-any cline-yes">2x</span>
432
+ <span class="cline-any cline-yes">2x</span>
433
+ <span class="cline-any cline-yes">2x</span>
434
+ <span class="cline-any cline-yes">2x</span>
435
435
  <span class="cline-any cline-yes">4x</span>
436
436
  <span class="cline-any cline-yes">4x</span>
437
437
  <span class="cline-any cline-yes">4x</span>
@@ -444,18 +444,18 @@
444
444
  <span class="cline-any cline-yes">4x</span>
445
445
  <span class="cline-any cline-yes">4x</span>
446
446
  <span class="cline-any cline-yes">4x</span>
447
- <span class="cline-any cline-yes">15x</span>
448
- <span class="cline-any cline-yes">15x</span>
449
- <span class="cline-any cline-yes">15x</span>
450
- <span class="cline-any cline-yes">15x</span>
451
- <span class="cline-any cline-yes">15x</span>
452
- <span class="cline-any cline-yes">15x</span>
453
- <span class="cline-any cline-yes">15x</span>
454
- <span class="cline-any cline-yes">15x</span>
455
- <span class="cline-any cline-yes">15x</span>
456
- <span class="cline-any cline-yes">15x</span>
457
- <span class="cline-any cline-yes">15x</span>
458
- <span class="cline-any cline-yes">15x</span>
447
+ <span class="cline-any cline-yes">2x</span>
448
+ <span class="cline-any cline-yes">2x</span>
449
+ <span class="cline-any cline-yes">2x</span>
450
+ <span class="cline-any cline-yes">2x</span>
451
+ <span class="cline-any cline-yes">2x</span>
452
+ <span class="cline-any cline-yes">2x</span>
453
+ <span class="cline-any cline-yes">2x</span>
454
+ <span class="cline-any cline-yes">2x</span>
455
+ <span class="cline-any cline-yes">2x</span>
456
+ <span class="cline-any cline-yes">2x</span>
457
+ <span class="cline-any cline-yes">2x</span>
458
+ <span class="cline-any cline-yes">2x</span>
459
459
  <span class="cline-any cline-yes">4x</span>
460
460
  <span class="cline-any cline-yes">4x</span>
461
461
  <span class="cline-any cline-yes">4x</span>
@@ -492,13 +492,13 @@
492
492
  <span class="cline-any cline-yes">4x</span>
493
493
  <span class="cline-any cline-yes">4x</span>
494
494
  <span class="cline-any cline-yes">4x</span>
495
- <span class="cline-any cline-yes">15x</span>
496
- <span class="cline-any cline-yes">15x</span>
495
+ <span class="cline-any cline-yes">2x</span>
496
+ <span class="cline-any cline-yes">2x</span>
497
497
  <span class="cline-any cline-no">&nbsp;</span>
498
498
  <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-yes">15x</span>
500
- <span class="cline-any cline-yes">15x</span>
501
- <span class="cline-any cline-yes">15x</span>
499
+ <span class="cline-any cline-yes">2x</span>
500
+ <span class="cline-any cline-yes">2x</span>
501
+ <span class="cline-any cline-yes">2x</span>
502
502
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const fs = require('node:fs');
503
503
  const path = require('node:path');
504
504
  const { promisify } = require('node:util');
@@ -724,7 +724,7 @@ module.exports = Mail;
724
724
  <div class='footer quiet pad2 space-top1 center small'>
725
725
  Code coverage generated by
726
726
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
727
- at 2023-09-21T04:47:08.309Z
727
+ at 2023-09-21T12:04:18.148Z
728
728
  </div>
729
729
  <script src="../../../../prettify.js"></script>
730
730
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2023-09-21T04:47:08.309Z
104
+ at 2023-09-21T12:04:18.148Z
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -68,11 +68,11 @@
68
68
  <a name='L3'></a><a href='#L3'>3</a>
69
69
  <a name='L4'></a><a href='#L4'>4</a>
70
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-yes">15x</span>
72
- <span class="cline-any cline-yes">15x</span>
73
- <span class="cline-any cline-yes">15x</span>
74
- <span class="cline-any cline-yes">15x</span>
75
- <span class="cline-any cline-yes">15x</span>
71
+ <a name='L6'></a><a href='#L6'>6</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
72
+ <span class="cline-any cline-yes">2x</span>
73
+ <span class="cline-any cline-yes">2x</span>
74
+ <span class="cline-any cline-yes">2x</span>
75
+ <span class="cline-any cline-yes">2x</span>
76
76
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const email = require('./email');
77
77
  &nbsp;
78
78
  module.exports = {
@@ -85,7 +85,7 @@ module.exports = {
85
85
  <div class='footer quiet pad2 space-top1 center small'>
86
86
  Code coverage generated by
87
87
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
88
- at 2023-09-21T04:47:08.309Z
88
+ at 2023-09-21T12:04:18.148Z
89
89
  </div>
90
90
  <script src="../../../prettify.js"></script>
91
91
  <script>