@creator.co/wapi 1.7.1-alpha3 → 1.7.1-alpha4

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 (73) hide show
  1. package/dist/package-lock.json +2 -2
  2. package/dist/package.json +1 -1
  3. package/package.json +1 -1
  4. package/coverage/clover.xml +0 -1088
  5. package/coverage/coverage/coverage.txt +0 -40
  6. package/coverage/coverage-final.json +0 -37
  7. package/coverage/coverage-summary.json +0 -38
  8. package/coverage/coverage.txt +0 -59
  9. package/coverage/lcov-report/base.css +0 -224
  10. package/coverage/lcov-report/block-navigation.js +0 -87
  11. package/coverage/lcov-report/favicon.png +0 -0
  12. package/coverage/lcov-report/index.html +0 -371
  13. package/coverage/lcov-report/prettify.css +0 -1
  14. package/coverage/lcov-report/prettify.js +0 -2
  15. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  16. package/coverage/lcov-report/sorter.js +0 -196
  17. package/coverage/lcov-report/src/API/Request.ts.html +0 -727
  18. package/coverage/lcov-report/src/API/Response.ts.html +0 -1189
  19. package/coverage/lcov-report/src/API/Utils.ts.html +0 -313
  20. package/coverage/lcov-report/src/API/index.html +0 -131
  21. package/coverage/lcov-report/src/BaseEvent/EventProcessor.ts.html +0 -496
  22. package/coverage/lcov-report/src/BaseEvent/Process.ts.html +0 -346
  23. package/coverage/lcov-report/src/BaseEvent/Transaction.ts.html +0 -1015
  24. package/coverage/lcov-report/src/BaseEvent/index.html +0 -146
  25. package/coverage/lcov-report/src/Cache/Redis.ts.html +0 -367
  26. package/coverage/lcov-report/src/Cache/index.html +0 -116
  27. package/coverage/lcov-report/src/Config/Configuration.ts.html +0 -700
  28. package/coverage/lcov-report/src/Config/EnvironmentVar.ts.html +0 -526
  29. package/coverage/lcov-report/src/Config/index.html +0 -131
  30. package/coverage/lcov-report/src/Crypto/Crypto.ts.html +0 -352
  31. package/coverage/lcov-report/src/Crypto/JWT.ts.html +0 -337
  32. package/coverage/lcov-report/src/Crypto/index.html +0 -131
  33. package/coverage/lcov-report/src/Database/Database.ts.html +0 -151
  34. package/coverage/lcov-report/src/Database/DatabaseManager.ts.html +0 -289
  35. package/coverage/lcov-report/src/Database/DatabaseTransaction.ts.html +0 -595
  36. package/coverage/lcov-report/src/Database/index.html +0 -161
  37. package/coverage/lcov-report/src/Database/index.ts.html +0 -169
  38. package/coverage/lcov-report/src/Database/integrations/knex/KnexDatabase.ts.html +0 -283
  39. package/coverage/lcov-report/src/Database/integrations/knex/KnexTransaction.ts.html +0 -337
  40. package/coverage/lcov-report/src/Database/integrations/knex/index.html +0 -131
  41. package/coverage/lcov-report/src/Database/integrations/kysely/KyselyDatabase.ts.html +0 -376
  42. package/coverage/lcov-report/src/Database/integrations/kysely/KyselyTransaction.ts.html +0 -601
  43. package/coverage/lcov-report/src/Database/integrations/kysely/index.html +0 -131
  44. package/coverage/lcov-report/src/Database/integrations/pgsql/PostgresDatabase.ts.html +0 -250
  45. package/coverage/lcov-report/src/Database/integrations/pgsql/PostgresTransaction.ts.html +0 -346
  46. package/coverage/lcov-report/src/Database/integrations/pgsql/index.html +0 -131
  47. package/coverage/lcov-report/src/Database/types.d.ts.html +0 -232
  48. package/coverage/lcov-report/src/Globals.ts.html +0 -394
  49. package/coverage/lcov-report/src/Logger/Logger.ts.html +0 -1138
  50. package/coverage/lcov-report/src/Logger/index.html +0 -116
  51. package/coverage/lcov-report/src/Mailer/Mailer.ts.html +0 -754
  52. package/coverage/lcov-report/src/Mailer/index.html +0 -116
  53. package/coverage/lcov-report/src/Publisher/Publisher.ts.html +0 -460
  54. package/coverage/lcov-report/src/Publisher/index.html +0 -116
  55. package/coverage/lcov-report/src/Server/RouteResolver.ts.html +0 -442
  56. package/coverage/lcov-report/src/Server/Router.ts.html +0 -616
  57. package/coverage/lcov-report/src/Server/index.html +0 -131
  58. package/coverage/lcov-report/src/Server/lib/ContainerServer.ts.html +0 -280
  59. package/coverage/lcov-report/src/Server/lib/Server.ts.html +0 -403
  60. package/coverage/lcov-report/src/Server/lib/container/GenericHandler.ts.html +0 -331
  61. package/coverage/lcov-report/src/Server/lib/container/GenericHandlerEvent.ts.html +0 -547
  62. package/coverage/lcov-report/src/Server/lib/container/HealthHandler.ts.html +0 -118
  63. package/coverage/lcov-report/src/Server/lib/container/Proxy.ts.html +0 -619
  64. package/coverage/lcov-report/src/Server/lib/container/Utils.ts.html +0 -184
  65. package/coverage/lcov-report/src/Server/lib/container/index.html +0 -176
  66. package/coverage/lcov-report/src/Server/lib/index.html +0 -131
  67. package/coverage/lcov-report/src/Util/AsyncSingleton.ts.html +0 -343
  68. package/coverage/lcov-report/src/Util/Utils.ts.html +0 -313
  69. package/coverage/lcov-report/src/Util/index.html +0 -131
  70. package/coverage/lcov-report/src/Validation/Validator.ts.html +0 -217
  71. package/coverage/lcov-report/src/Validation/index.html +0 -116
  72. package/coverage/lcov-report/src/index.html +0 -116
  73. package/coverage/lcov.info +0 -2326
@@ -1,343 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/Util/AsyncSingleton.ts</title>
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" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/Util</a> AsyncSingleton.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">86.66% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>26/30</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">80% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>4/5</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">77.77% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>7/9</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">89.28% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>25/28</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
153
- <span class="cline-any cline-neutral">&nbsp;</span>
154
- <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-neutral">&nbsp;</span>
156
- <span class="cline-any cline-neutral">&nbsp;</span>
157
- <span class="cline-any cline-yes">2x</span>
158
- <span class="cline-any cline-neutral">&nbsp;</span>
159
- <span class="cline-any cline-neutral">&nbsp;</span>
160
- <span class="cline-any cline-neutral">&nbsp;</span>
161
- <span class="cline-any cline-yes">2x</span>
162
- <span class="cline-any cline-yes">2x</span>
163
- <span class="cline-any cline-neutral">&nbsp;</span>
164
- <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-neutral">&nbsp;</span>
166
- <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-neutral">&nbsp;</span>
170
- <span class="cline-any cline-neutral">&nbsp;</span>
171
- <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-neutral">&nbsp;</span>
173
- <span class="cline-any cline-no">&nbsp;</span>
174
- <span class="cline-any cline-neutral">&nbsp;</span>
175
- <span class="cline-any cline-yes">2x</span>
176
- <span class="cline-any cline-yes">2x</span>
177
- <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-neutral">&nbsp;</span>
179
- <span class="cline-any cline-neutral">&nbsp;</span>
180
- <span class="cline-any cline-neutral">&nbsp;</span>
181
- <span class="cline-any cline-neutral">&nbsp;</span>
182
- <span class="cline-any cline-neutral">&nbsp;</span>
183
- <span class="cline-any cline-neutral">&nbsp;</span>
184
- <span class="cline-any cline-yes">16x</span>
185
- <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-yes">10x</span>
187
- <span class="cline-any cline-yes">2x</span>
188
- <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-yes">8x</span>
191
- <span class="cline-any cline-neutral">&nbsp;</span>
192
- <span class="cline-any cline-neutral">&nbsp;</span>
193
- <span class="cline-any cline-neutral">&nbsp;</span>
194
- <span class="cline-any cline-neutral">&nbsp;</span>
195
- <span class="cline-any cline-neutral">&nbsp;</span>
196
- <span class="cline-any cline-neutral">&nbsp;</span>
197
- <span class="cline-any cline-yes">8x</span>
198
- <span class="cline-any cline-neutral">&nbsp;</span>
199
- <span class="cline-any cline-neutral">&nbsp;</span>
200
- <span class="cline-any cline-neutral">&nbsp;</span>
201
- <span class="cline-any cline-neutral">&nbsp;</span>
202
- <span class="cline-any cline-neutral">&nbsp;</span>
203
- <span class="cline-any cline-neutral">&nbsp;</span>
204
- <span class="cline-any cline-yes">6x</span>
205
- <span class="cline-any cline-yes">6x</span>
206
- <span class="cline-any cline-no">&nbsp;</span>
207
- <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-yes">6x</span>
209
- <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-neutral">&nbsp;</span>
212
- <span class="cline-any cline-yes">8x</span>
213
- <span class="cline-any cline-yes">8x</span>
214
- <span class="cline-any cline-yes">8x</span>
215
- <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-yes">8x</span>
217
- <span class="cline-any cline-yes">2x</span>
218
- <span class="cline-any cline-neutral">&nbsp;</span>
219
- <span class="cline-any cline-neutral">&nbsp;</span>
220
- <span class="cline-any cline-yes">8x</span>
221
- <span class="cline-any cline-neutral">&nbsp;</span>
222
- <span class="cline-any cline-yes">8x</span>
223
- <span class="cline-any cline-neutral">&nbsp;</span>
224
- <span class="cline-any cline-yes">8x</span>
225
- <span class="cline-any cline-no">&nbsp;</span>
226
- <span class="cline-any cline-neutral">&nbsp;</span>
227
- <span class="cline-any cline-yes">8x</span>
228
- <span class="cline-any cline-neutral">&nbsp;</span>
229
- <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-neutral">&nbsp;</span>
231
- <span class="cline-any cline-neutral">&nbsp;</span>
232
- <span class="cline-any cline-yes">2x</span>
233
- <span class="cline-any cline-yes">2x</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
235
- <span class="cline-any cline-yes">2x</span>
236
- <span class="cline-any cline-neutral">&nbsp;</span>
237
- <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">type ResolveReject = [(value: void | PromiseLike&lt;void&gt;) =&gt; void, (reason?: any) =&gt; void]
239
- &nbsp;
240
- /**
241
- * Represents a class that can be used to create a singleton instance of a class that is created asynchronously.
242
- */
243
- export default class AsyncSingleton&lt;T, R&gt; {
244
- private readonly factory: (r: R) =&gt; Promise&lt;T&gt;
245
- private readonly checker: (value: T) =&gt; Promise&lt;boolean&gt;
246
- &nbsp;
247
- private queue: ResolveReject[] = []
248
- private instantiating: boolean = false
249
- &nbsp;
250
- private value?: T
251
- &nbsp;
252
- /**
253
- * Creates a new instance of the AsyncSingleton class.
254
- * @param factory The factory function that creates the instance.
255
- * @param checker The function that checks if the instance is valid.
256
- */
257
- public constructor(
258
- factory: (r: R) =&gt; Promise&lt;T&gt;,
259
- checker: (value: T) =&gt; Promise&lt;boolean&gt; = <span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >async () =</span>&gt;<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" > <span class="cstat-no" title="statement not covered" >t</span>rue</span></span></span>
260
- ) {
261
- this.factory = factory
262
- this.checker = checker
263
- }
264
- &nbsp;
265
- /**
266
- * Gets the instance of the class.
267
- * @param r The configuration object for creating the instance.
268
- */
269
- public async instance(r: R): Promise&lt;T&gt; {
270
- if (this.value &amp;&amp; (await this.checker(this.value))) return this.value
271
- &nbsp;
272
- if (this.instantiating) {
273
- return await this.awaitOtherInit()
274
- }
275
- &nbsp;
276
- return await this.initHere(r)
277
- }
278
- &nbsp;
279
- /**
280
- * Gets the current value, may be undefined or invalid.
281
- */
282
- public getValue(): T | undefined {
283
- return this.value
284
- }
285
- &nbsp;
286
- /**
287
- * Clears the current value and rejects all pending promises.
288
- */
289
- public clear() {
290
- this.value = undefined
291
- for (const [, rej] of this.queue) {
292
- <span class="cstat-no" title="statement not covered" > rej()</span>
293
- }
294
- this.queue = []
295
- }
296
- &nbsp;
297
- private async initHere(r: R): Promise&lt;T&gt; {
298
- try {
299
- this.instantiating = true
300
- this.value = await this.factory(r)
301
- &nbsp;
302
- for (const [res] of this.queue) {
303
- res()
304
- }
305
- &nbsp;
306
- this.queue = []
307
- &nbsp;
308
- return this.value
309
- } finally {
310
- for (const [, rej] of this.queue) {
311
- <span class="cstat-no" title="statement not covered" > rej()</span>
312
- }
313
- this.instantiating = false
314
- }
315
- }
316
- &nbsp;
317
- private async awaitOtherInit(): Promise&lt;T&gt; {
318
- await new Promise&lt;void&gt;((res, rej) =&gt; {
319
- this.queue.push([res, rej])
320
- })
321
- return this.value!
322
- }
323
- }
324
- &nbsp;</pre></td></tr></table></pre>
325
-
326
- <div class='push'></div><!-- for sticky footer -->
327
- </div><!-- /wrapper -->
328
- <div class='footer quiet pad2 space-top1 center small'>
329
- Code coverage generated by
330
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
331
- at 2024-04-29T19:32:33.683Z
332
- </div>
333
- <script src="../../prettify.js"></script>
334
- <script>
335
- window.onload = function () {
336
- prettyPrint();
337
- };
338
- </script>
339
- <script src="../../sorter.js"></script>
340
- <script src="../../block-navigation.js"></script>
341
- </body>
342
- </html>
343
-
@@ -1,313 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/Util/Utils.ts</title>
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" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/Util</a> Utils.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">100% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>23/23</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">95.23% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>20/21</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">100% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>7/7</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">100% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>19/19</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
143
- <span class="cline-any cline-neutral">&nbsp;</span>
144
- <span class="cline-any cline-neutral">&nbsp;</span>
145
- <span class="cline-any cline-yes">17x</span>
146
- <span class="cline-any cline-neutral">&nbsp;</span>
147
- <span class="cline-any cline-neutral">&nbsp;</span>
148
- <span class="cline-any cline-neutral">&nbsp;</span>
149
- <span class="cline-any cline-neutral">&nbsp;</span>
150
- <span class="cline-any cline-neutral">&nbsp;</span>
151
- <span class="cline-any cline-yes">723x</span>
152
- <span class="cline-any cline-neutral">&nbsp;</span>
153
- <span class="cline-any cline-neutral">&nbsp;</span>
154
- <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-neutral">&nbsp;</span>
156
- <span class="cline-any cline-neutral">&nbsp;</span>
157
- <span class="cline-any cline-neutral">&nbsp;</span>
158
- <span class="cline-any cline-neutral">&nbsp;</span>
159
- <span class="cline-any cline-neutral">&nbsp;</span>
160
- <span class="cline-any cline-yes">8x</span>
161
- <span class="cline-any cline-neutral">&nbsp;</span>
162
- <span class="cline-any cline-neutral">&nbsp;</span>
163
- <span class="cline-any cline-neutral">&nbsp;</span>
164
- <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-neutral">&nbsp;</span>
166
- <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-yes">32x</span>
170
- <span class="cline-any cline-yes">32x</span>
171
- <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-neutral">&nbsp;</span>
173
- <span class="cline-any cline-neutral">&nbsp;</span>
174
- <span class="cline-any cline-neutral">&nbsp;</span>
175
- <span class="cline-any cline-neutral">&nbsp;</span>
176
- <span class="cline-any cline-neutral">&nbsp;</span>
177
- <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-neutral">&nbsp;</span>
179
- <span class="cline-any cline-neutral">&nbsp;</span>
180
- <span class="cline-any cline-yes">57x</span>
181
- <span class="cline-any cline-yes">57x</span>
182
- <span class="cline-any cline-yes">57x</span>
183
- <span class="cline-any cline-yes">54x</span>
184
- <span class="cline-any cline-neutral">&nbsp;</span>
185
- <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-neutral">&nbsp;</span>
187
- <span class="cline-any cline-yes">57x</span>
188
- <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-neutral">&nbsp;</span>
191
- <span class="cline-any cline-neutral">&nbsp;</span>
192
- <span class="cline-any cline-neutral">&nbsp;</span>
193
- <span class="cline-any cline-neutral">&nbsp;</span>
194
- <span class="cline-any cline-neutral">&nbsp;</span>
195
- <span class="cline-any cline-neutral">&nbsp;</span>
196
- <span class="cline-any cline-yes">7x</span>
197
- <span class="cline-any cline-yes">7x</span>
198
- <span class="cline-any cline-yes">7x</span>
199
- <span class="cline-any cline-neutral">&nbsp;</span>
200
- <span class="cline-any cline-yes">1x</span>
201
- <span class="cline-any cline-neutral">&nbsp;</span>
202
- <span class="cline-any cline-yes">7x</span>
203
- <span class="cline-any cline-neutral">&nbsp;</span>
204
- <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-neutral">&nbsp;</span>
206
- <span class="cline-any cline-neutral">&nbsp;</span>
207
- <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-neutral">&nbsp;</span>
209
- <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-neutral">&nbsp;</span>
212
- <span class="cline-any cline-yes">42x</span>
213
- <span class="cline-any cline-yes">26x</span>
214
- <span class="cline-any cline-yes">26x</span>
215
- <span class="cline-any cline-yes">7x</span>
216
- <span class="cline-any cline-neutral">&nbsp;</span>
217
- <span class="cline-any cline-neutral">&nbsp;</span>
218
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/**
219
- * Utility class containing various static methods for common operations.
220
- */
221
- export default class Utils {
222
- /**
223
- * Checks if the application is running in a hybridless container.
224
- * @returns {boolean} - True if the application is running in a hybridless container, false otherwise.
225
- */
226
- public static isHybridlessContainer(): boolean {
227
- return process.env.HYBRIDLESS_RUNTIME == 'true'
228
- }
229
- &nbsp;
230
- /**
231
- * Checks if a given string is valid.
232
- * @param {string} string - The string to check.
233
- * @returns {boolean} - True if the string is valid, false otherwise.
234
- */
235
- public static isValidString(string: string): boolean {
236
- return string<span class="branch-0 cbranch-no" title="branch not covered" >?.l</span>ength &gt; 0 &amp;&amp; !Array.isArray(string)
237
- }
238
- &nbsp;
239
- /**
240
- * Parses a string into an integer and returns null if the string is not a valid number.
241
- * @param {string} str - The string to parse into an integer.
242
- * @returns {number | null} - The parsed integer or null if the string is not a valid number.
243
- */
244
- public static parseIntNullIfNaN(str?: string): number | null {
245
- const n = parseInt(str || '')
246
- return isNaN(n) ? null : n
247
- }
248
- &nbsp;
249
- /**
250
- * Parses a JSON string and returns the resulting object. If the string is empty or
251
- * cannot be parsed, null is returned.
252
- * @param {string} string - The JSON string to parse.
253
- * @returns {any | null} - The parsed object or null if the string is empty or invalid.
254
- */
255
- public static parseObjectNullIfEmpty(string: string | undefined): any | null {
256
- let o = null
257
- try {
258
- o = string ? JSON.parse(string) : null
259
- if (o &amp;&amp; Object.keys(o).length &lt;= 0) o = null
260
- } catch (e) {
261
- /* empty */
262
- }
263
- return o
264
- }
265
- &nbsp;
266
- /**
267
- * Checks if a given value is a valid number.
268
- * @param {string} number - The value to be checked.
269
- * @returns {boolean} - True if the value is a valid number, false otherwise.
270
- */
271
- public static isValidNumber(number: string): boolean {
272
- let validNumb = NaN
273
- try {
274
- validNumb = parseInt(number + '')
275
- } catch (e) {
276
- console.error('Error while validating number', e)
277
- }
278
- return !isNaN(validNumb) &amp;&amp; !Array.isArray(number)
279
- }
280
- &nbsp;
281
- /**
282
- * Retrieves the value from an object using a case-insensitive key lookup.
283
- * @param {any} obj - The object to search for the key.
284
- * @param {string} key - The key to search for in the object.
285
- * @returns {any | null} The value associated with the key, or null if the key is not found.
286
- */
287
- public static caseInsensitiveObjectForKey(obj: any, key: string): any | null {
288
- if (!obj) return null
289
- const insensitiveKey = Object.keys(obj).find(k =&gt; k.toLowerCase() === key.toLowerCase())
290
- if (insensitiveKey &amp;&amp; insensitiveKey != '') return obj[insensitiveKey]
291
- return null
292
- }
293
- }
294
- &nbsp;</pre></td></tr></table></pre>
295
-
296
- <div class='push'></div><!-- for sticky footer -->
297
- </div><!-- /wrapper -->
298
- <div class='footer quiet pad2 space-top1 center small'>
299
- Code coverage generated by
300
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
301
- at 2024-04-29T19:32:33.683Z
302
- </div>
303
- <script src="../../prettify.js"></script>
304
- <script>
305
- window.onload = function () {
306
- prettyPrint();
307
- };
308
- </script>
309
- <script src="../../sorter.js"></script>
310
- <script src="../../block-navigation.js"></script>
311
- </body>
312
- </html>
313
-