@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,595 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/Database/DatabaseTransaction.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/Database</a> DatabaseTransaction.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">97.82% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>45/46</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">100% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>13/13</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'>16/16</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">97.56% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>40/41</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>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</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>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a></td><td class="line-coverage quiet"><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>
239
- <span class="cline-any cline-neutral">&nbsp;</span>
240
- <span class="cline-any cline-neutral">&nbsp;</span>
241
- <span class="cline-any cline-neutral">&nbsp;</span>
242
- <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-yes">17x</span>
244
- <span class="cline-any cline-neutral">&nbsp;</span>
245
- <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-neutral">&nbsp;</span>
247
- <span class="cline-any cline-neutral">&nbsp;</span>
248
- <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-neutral">&nbsp;</span>
251
- <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-neutral">&nbsp;</span>
253
- <span class="cline-any cline-neutral">&nbsp;</span>
254
- <span class="cline-any cline-neutral">&nbsp;</span>
255
- <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-neutral">&nbsp;</span>
257
- <span class="cline-any cline-neutral">&nbsp;</span>
258
- <span class="cline-any cline-neutral">&nbsp;</span>
259
- <span class="cline-any cline-neutral">&nbsp;</span>
260
- <span class="cline-any cline-neutral">&nbsp;</span>
261
- <span class="cline-any cline-neutral">&nbsp;</span>
262
- <span class="cline-any cline-neutral">&nbsp;</span>
263
- <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-neutral">&nbsp;</span>
265
- <span class="cline-any cline-neutral">&nbsp;</span>
266
- <span class="cline-any cline-neutral">&nbsp;</span>
267
- <span class="cline-any cline-neutral">&nbsp;</span>
268
- <span class="cline-any cline-neutral">&nbsp;</span>
269
- <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-neutral">&nbsp;</span>
271
- <span class="cline-any cline-neutral">&nbsp;</span>
272
- <span class="cline-any cline-neutral">&nbsp;</span>
273
- <span class="cline-any cline-neutral">&nbsp;</span>
274
- <span class="cline-any cline-neutral">&nbsp;</span>
275
- <span class="cline-any cline-neutral">&nbsp;</span>
276
- <span class="cline-any cline-neutral">&nbsp;</span>
277
- <span class="cline-any cline-neutral">&nbsp;</span>
278
- <span class="cline-any cline-yes">33x</span>
279
- <span class="cline-any cline-yes">33x</span>
280
- <span class="cline-any cline-yes">33x</span>
281
- <span class="cline-any cline-yes">33x</span>
282
- <span class="cline-any cline-neutral">&nbsp;</span>
283
- <span class="cline-any cline-neutral">&nbsp;</span>
284
- <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-neutral">&nbsp;</span>
286
- <span class="cline-any cline-neutral">&nbsp;</span>
287
- <span class="cline-any cline-neutral">&nbsp;</span>
288
- <span class="cline-any cline-neutral">&nbsp;</span>
289
- <span class="cline-any cline-neutral">&nbsp;</span>
290
- <span class="cline-any cline-neutral">&nbsp;</span>
291
- <span class="cline-any cline-yes">33x</span>
292
- <span class="cline-any cline-yes">137x</span>
293
- <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-yes">33x</span>
295
- <span class="cline-any cline-neutral">&nbsp;</span>
296
- <span class="cline-any cline-yes">138x</span>
297
- <span class="cline-any cline-yes">94x</span>
298
- <span class="cline-any cline-yes">44x</span>
299
- <span class="cline-any cline-yes">43x</span>
300
- <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-yes">1x</span>
302
- <span class="cline-any cline-neutral">&nbsp;</span>
303
- <span class="cline-any cline-neutral">&nbsp;</span>
304
- <span class="cline-any cline-yes">1x</span>
305
- <span class="cline-any cline-yes">1x</span>
306
- <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-no">&nbsp;</span>
308
- <span class="cline-any cline-neutral">&nbsp;</span>
309
- <span class="cline-any cline-neutral">&nbsp;</span>
310
- <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-neutral">&nbsp;</span>
312
- <span class="cline-any cline-neutral">&nbsp;</span>
313
- <span class="cline-any cline-neutral">&nbsp;</span>
314
- <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-neutral">&nbsp;</span>
316
- <span class="cline-any cline-yes">33x</span>
317
- <span class="cline-any cline-yes">29x</span>
318
- <span class="cline-any cline-neutral">&nbsp;</span>
319
- <span class="cline-any cline-neutral">&nbsp;</span>
320
- <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-neutral">&nbsp;</span>
322
- <span class="cline-any cline-neutral">&nbsp;</span>
323
- <span class="cline-any cline-neutral">&nbsp;</span>
324
- <span class="cline-any cline-neutral">&nbsp;</span>
325
- <span class="cline-any cline-yes">43x</span>
326
- <span class="cline-any cline-yes">43x</span>
327
- <span class="cline-any cline-yes">4x</span>
328
- <span class="cline-any cline-neutral">&nbsp;</span>
329
- <span class="cline-any cline-yes">39x</span>
330
- <span class="cline-any cline-yes">39x</span>
331
- <span class="cline-any cline-neutral">&nbsp;</span>
332
- <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-neutral">&nbsp;</span>
334
- <span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-yes">33x</span>
340
- <span class="cline-any cline-yes">19x</span>
341
- <span class="cline-any cline-yes">4x</span>
342
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
346
- <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
- <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-neutral">&nbsp;</span>
352
- <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-yes">33x</span>
354
- <span class="cline-any cline-yes">11x</span>
355
- <span class="cline-any cline-yes">2x</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-yes">9x</span>
358
- <span class="cline-any cline-yes">9x</span>
359
- <span class="cline-any cline-neutral">&nbsp;</span>
360
- <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-neutral">&nbsp;</span>
363
- <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-neutral">&nbsp;</span>
365
- <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-neutral">&nbsp;</span>
367
- <span class="cline-any cline-yes">33x</span>
368
- <span class="cline-any cline-yes">5x</span>
369
- <span class="cline-any cline-yes">2x</span>
370
- <span class="cline-any cline-yes">1x</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-yes">1x</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-neutral">&nbsp;</span>
376
- <span class="cline-any cline-neutral">&nbsp;</span>
377
- <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-neutral">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-yes">33x</span>
382
- <span class="cline-any cline-yes">3x</span>
383
- <span class="cline-any cline-yes">1x</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
397
- <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-neutral">&nbsp;</span>
400
- <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-neutral">&nbsp;</span>
402
- <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Database } from './Database'
407
- &nbsp;
408
- /**
409
- * Abstract class representing a database transaction.
410
- * Warning: These need to be arrow functions!
411
- * @class DatabaseTransaction
412
- */
413
- export abstract class DatabaseTransaction extends Function {
414
- /**
415
- * A boolean flag indicating whether a certain feature is open or closed.
416
- * @type {boolean}
417
- */
418
- protected _isOpen: boolean
419
- /**
420
- * A property representing a writer object.
421
- * @type {any}
422
- */
423
- public readonly writer: any
424
- /**
425
- * A property representing a reader object.
426
- * @type {any}
427
- */
428
- public readonly reader: any
429
- /**
430
- * A protected property representing a transaction.
431
- * @type {any}
432
- */
433
- protected transaction: any
434
- /**
435
- * A protected property representing a database of type Database&lt;any&gt;.
436
- * This property is accessible within the class and its subclasses.
437
- */
438
- protected database: Database&lt;any&gt;
439
- &nbsp;
440
- /**
441
- * Constructor for a class that interacts with a database using a writer and reader.
442
- * @param {any} writer - The object responsible for writing to the database.
443
- * @param {Database&lt;any&gt;} database - The database to interact with.
444
- * @param {any} [reader] - The object responsible for reading from the database (optional).
445
- * @returns None
446
- */
447
- protected constructor(writer: any, database: Database&lt;any&gt;, reader?: any) {
448
- super('...args', 'return this.transaction(...args)')
449
- this.writer = writer
450
- this.database = database
451
- this.reader = reader
452
- }
453
- &nbsp;
454
- /**
455
- * Creates a proxy instance for the given subclass of DatabaseTransaction.
456
- * The proxy handles method binding and transaction execution based on the subclass state.
457
- * @param {T} subclass - The subclass of DatabaseTransaction to proxy.
458
- * @returns A proxied instance of the subclass with method binding and transaction execution logic.
459
- */
460
- protected static proxyInstance&lt;T extends DatabaseTransaction&gt;(subclass: T): T {
461
- const bind = (target: any, key: string | symbol) =&gt;
462
- typeof target[key] === 'function' ? target[key].bind(target) : target[key]
463
- &nbsp;
464
- return new Proxy&lt;T&gt;(subclass, {
465
- get(target: T, p: string | symbol): any {
466
- if (target[p] !== undefined) {
467
- return bind(target, p)
468
- } else if (target._isOpen) {
469
- return bind(target.transaction, p)
470
- }
471
- return undefined
472
- },
473
- apply(target: T, thisArg: any, argArray: any[]): any {
474
- if (target._isOpen) {
475
- return target.transaction(...argArray)
476
- }
477
- <span class="cstat-no" title="statement not covered" > throw new Error('Transaction is closed!')</span>
478
- },
479
- })
480
- }
481
- &nbsp;
482
- /**
483
- * Check if the object is open.
484
- * @returns {boolean} - true if the object is open, false otherwise.
485
- */
486
- public isOpen = (): boolean =&gt; {
487
- return this._isOpen
488
- }
489
- &nbsp;
490
- /**
491
- * Begins a transaction asynchronously.
492
- * @returns {Promise&lt;void&gt;} A Promise that resolves when the transaction has begun.
493
- * @throws {Error} If the transaction is already open.
494
- */
495
- public begin = async (): Promise&lt;void&gt; =&gt; {
496
- if (this._isOpen) {
497
- throw new Error('Cannot begin, transaction is already opened!')
498
- }
499
- await this.doBegin()
500
- this._isOpen = true
501
- }
502
- &nbsp;
503
- /**
504
- * Asynchronously commits the transaction.
505
- * If the transaction is already closed, an error is thrown.
506
- * @returns Promise&lt;void&gt;
507
- * @throws Error if the transaction is already closed
508
- */
509
- public commit = async (): Promise&lt;void&gt; =&gt; {
510
- if (!this._isOpen) {
511
- throw new Error('Cannot commit, transaction is already closed!')
512
- }
513
- await this.doCommit()
514
- this._isOpen = false
515
- }
516
- &nbsp;
517
- /**
518
- * Rollback the transaction by reverting any changes made within the transaction.
519
- * If the transaction is already closed, an error is thrown.
520
- * @returns Promise&lt;void&gt;
521
- * @throws Error if the transaction is already closed.
522
- */
523
- public rollback = async (): Promise&lt;void&gt; =&gt; {
524
- if (!this._isOpen) {
525
- throw new Error('Cannot rollback, transaction is already closed!')
526
- }
527
- await this.doRollback()
528
- this._isOpen = false
529
- }
530
- &nbsp;
531
- /**
532
- * Closes the success modal, committing or rolling back changes based on the autoCommit setting.
533
- * If the modal is open and autoCommit is enabled, it will commit the changes.
534
- * If autoCommit is disabled, it will rollback the changes.
535
- * @returns {Promise&lt;void&gt;} A promise that resolves once the commit or rollback operation is completed.
536
- */
537
- public closeSuccess = async () =&gt; {
538
- if (this._isOpen) {
539
- if (this.database.config.autoCommit) {
540
- await this.doCommit()
541
- } else {
542
- await this.doRollback()
543
- }
544
- }
545
- }
546
- &nbsp;
547
- /**
548
- * Closes the failure by performing a rollback if the failure is currently open.
549
- * @returns {Promise&lt;void&gt;} A promise that resolves once the rollback is completed.
550
- */
551
- public closeFailure = async () =&gt; {
552
- if (this._isOpen) {
553
- await this.doRollback()
554
- }
555
- }
556
- &nbsp;
557
- /**
558
- * Abstract method that should be implemented by subclasses to perform a commit operation.
559
- * @returns A Promise that resolves when the commit operation is completed.
560
- */
561
- protected abstract doCommit: () =&gt; Promise&lt;any&gt;
562
- &nbsp;
563
- /**
564
- * An abstract method that defines the rollback functionality.
565
- * This method should be implemented by subclasses to perform the actual rollback operation.
566
- * @returns A Promise that resolves when the rollback operation is completed.
567
- */
568
- protected abstract doRollback: () =&gt; Promise&lt;any&gt;
569
- &nbsp;
570
- /**
571
- * Abstract method that defines the beginning of an asynchronous operation.
572
- * @returns A Promise that resolves when the operation begins.
573
- */
574
- protected abstract doBegin: () =&gt; Promise&lt;any&gt;
575
- }
576
- &nbsp;</pre></td></tr></table></pre>
577
-
578
- <div class='push'></div><!-- for sticky footer -->
579
- </div><!-- /wrapper -->
580
- <div class='footer quiet pad2 space-top1 center small'>
581
- Code coverage generated by
582
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
583
- at 2024-04-29T19:32:33.683Z
584
- </div>
585
- <script src="../../prettify.js"></script>
586
- <script>
587
- window.onload = function () {
588
- prettyPrint();
589
- };
590
- </script>
591
- <script src="../../sorter.js"></script>
592
- <script src="../../block-navigation.js"></script>
593
- </body>
594
- </html>
595
-