@budibase/worker 2.1.22-alpha.5 → 2.1.22-alpha.6

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 (156) hide show
  1. package/__mocks__/oauth.ts +57 -0
  2. package/coverage/clover.xml +1093 -1033
  3. package/coverage/coverage-final.json +77 -72
  4. package/coverage/lcov-report/index.html +83 -83
  5. package/coverage/lcov-report/src/api/controllers/global/auth.ts.html +70 -70
  6. package/coverage/lcov-report/src/api/controllers/global/configs.js.html +35 -35
  7. package/coverage/lcov-report/src/api/controllers/global/email.js.html +4 -4
  8. package/coverage/lcov-report/src/api/controllers/global/index.html +38 -38
  9. package/coverage/lcov-report/src/api/controllers/global/license.ts.html +7 -7
  10. package/coverage/lcov-report/src/api/controllers/global/roles.js.html +10 -10
  11. package/coverage/lcov-report/src/api/controllers/global/self.ts.html +58 -58
  12. package/coverage/lcov-report/src/api/controllers/global/templates.ts.html +11 -11
  13. package/coverage/lcov-report/src/api/controllers/global/users.ts.html +75 -69
  14. package/coverage/lcov-report/src/api/controllers/global/workspaces.js.html +7 -7
  15. package/coverage/lcov-report/src/api/controllers/system/accounts.ts.html +4 -4
  16. package/coverage/lcov-report/src/api/controllers/system/{environment.js.html → environment.ts.html} +21 -18
  17. package/coverage/lcov-report/src/api/controllers/system/index.html +63 -63
  18. package/coverage/lcov-report/src/api/controllers/system/migrations.ts.html +23 -23
  19. package/coverage/lcov-report/src/api/controllers/system/restore.ts.html +22 -22
  20. package/coverage/lcov-report/src/api/controllers/system/{status.js.html → status.ts.html} +29 -26
  21. package/coverage/lcov-report/src/api/controllers/system/tenants.ts.html +34 -163
  22. package/coverage/lcov-report/src/api/index.html +11 -11
  23. package/coverage/lcov-report/src/api/index.ts.html +113 -44
  24. package/coverage/lcov-report/src/api/routes/global/auth.js.html +38 -89
  25. package/coverage/lcov-report/src/api/routes/global/configs.js.html +17 -17
  26. package/coverage/lcov-report/src/api/routes/global/email.js.html +11 -11
  27. package/coverage/lcov-report/src/api/routes/global/index.html +11 -11
  28. package/coverage/lcov-report/src/api/routes/global/license.ts.html +6 -6
  29. package/coverage/lcov-report/src/api/routes/global/roles.js.html +7 -7
  30. package/coverage/lcov-report/src/api/routes/global/self.ts.html +8 -8
  31. package/coverage/lcov-report/src/api/routes/global/templates.ts.html +11 -11
  32. package/coverage/lcov-report/src/api/routes/global/users.js.html +17 -17
  33. package/coverage/lcov-report/src/api/routes/global/workspaces.js.html +10 -10
  34. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  35. package/coverage/lcov-report/src/api/routes/index.ts.html +19 -19
  36. package/coverage/lcov-report/src/api/routes/system/accounts.ts.html +7 -7
  37. package/coverage/lcov-report/src/api/routes/system/{environment.js.html → environment.ts.html} +11 -11
  38. package/coverage/lcov-report/src/api/routes/system/index.html +4 -4
  39. package/coverage/lcov-report/src/api/routes/system/migrations.ts.html +7 -7
  40. package/coverage/lcov-report/src/api/routes/system/restore.ts.html +6 -6
  41. package/coverage/lcov-report/src/api/routes/system/{status.js.html → status.ts.html} +11 -11
  42. package/coverage/lcov-report/src/api/routes/system/{tenants.js.html → tenants.ts.html} +20 -17
  43. package/coverage/lcov-report/src/api/routes/validation/index.html +1 -1
  44. package/coverage/lcov-report/src/api/routes/validation/index.ts.html +2 -2
  45. package/coverage/lcov-report/src/api/routes/validation/users.ts.html +13 -13
  46. package/coverage/lcov-report/src/constants/index.html +1 -1
  47. package/coverage/lcov-report/src/constants/index.js.html +18 -18
  48. package/coverage/lcov-report/src/constants/templates/index.html +1 -1
  49. package/coverage/lcov-report/src/constants/templates/index.js.html +10 -10
  50. package/coverage/lcov-report/src/db/index.html +1 -1
  51. package/coverage/lcov-report/src/db/index.ts.html +8 -8
  52. package/coverage/lcov-report/src/environment.ts.html +15 -15
  53. package/coverage/lcov-report/src/index.html +1 -1
  54. package/coverage/lcov-report/src/index.ts.html +40 -40
  55. package/coverage/lcov-report/src/middleware/cloudRestricted.js.html +22 -22
  56. package/coverage/lcov-report/src/middleware/index.html +21 -21
  57. package/coverage/lcov-report/src/migrations/functions/globalInfoSyncUsers.ts.html +3 -3
  58. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  59. package/coverage/lcov-report/src/migrations/index.html +1 -1
  60. package/coverage/lcov-report/src/migrations/index.ts.html +17 -17
  61. package/coverage/lcov-report/src/sdk/accounts/accounts.ts.html +6 -6
  62. package/coverage/lcov-report/src/sdk/accounts/index.html +1 -1
  63. package/coverage/lcov-report/src/sdk/accounts/index.ts.html +2 -2
  64. package/coverage/lcov-report/src/sdk/index.html +1 -1
  65. package/coverage/lcov-report/src/sdk/index.ts.html +4 -4
  66. package/coverage/lcov-report/src/sdk/users/events.ts.html +43 -43
  67. package/coverage/lcov-report/src/sdk/users/index.html +19 -19
  68. package/coverage/lcov-report/src/sdk/users/index.ts.html +2 -2
  69. package/coverage/lcov-report/src/sdk/users/users.ts.html +99 -99
  70. package/coverage/lcov-report/src/tests/TestConfiguration.ts.html +261 -123
  71. package/coverage/lcov-report/src/tests/api/accounts.ts.html +12 -21
  72. package/coverage/lcov-report/src/tests/api/auth.ts.html +11 -20
  73. package/coverage/lcov-report/src/tests/api/base.ts.html +133 -0
  74. package/coverage/lcov-report/src/tests/api/configs.ts.html +44 -23
  75. package/coverage/lcov-report/src/tests/api/email.ts.html +9 -18
  76. package/coverage/lcov-report/src/tests/api/environment.ts.html +130 -0
  77. package/coverage/lcov-report/src/tests/api/index.html +106 -16
  78. package/coverage/lcov-report/src/tests/api/index.ts.html +62 -17
  79. package/coverage/lcov-report/src/tests/{structures/accounts.ts.html → api/migrations.ts.html} +31 -37
  80. package/coverage/lcov-report/src/tests/api/restore.ts.html +127 -0
  81. package/coverage/lcov-report/src/tests/api/self.ts.html +31 -16
  82. package/coverage/lcov-report/src/tests/api/status.ts.html +121 -0
  83. package/coverage/lcov-report/src/tests/api/tenants.ts.html +130 -0
  84. package/coverage/lcov-report/src/tests/api/users.ts.html +121 -25
  85. package/coverage/lcov-report/src/tests/controllers.js.html +2 -2
  86. package/coverage/lcov-report/src/tests/index.html +20 -20
  87. package/coverage/lcov-report/src/tests/index.ts.html +21 -9
  88. package/coverage/lcov-report/src/tests/mocks/email.js.html +2 -2
  89. package/coverage/lcov-report/src/tests/mocks/index.html +1 -1
  90. package/coverage/lcov-report/src/tests/mocks/index.ts.html +4 -4
  91. package/coverage/lcov-report/src/tests/structures/configs.js.html +8 -8
  92. package/coverage/lcov-report/src/tests/structures/groups.ts.html +2 -2
  93. package/coverage/lcov-report/src/tests/structures/index.html +9 -24
  94. package/coverage/lcov-report/src/tests/structures/index.ts.html +21 -15
  95. package/coverage/lcov-report/src/tests/structures/users.ts.html +13 -10
  96. package/coverage/lcov-report/src/utilities/appService.js.html +11 -11
  97. package/coverage/lcov-report/src/utilities/email.js.html +16 -16
  98. package/coverage/lcov-report/src/utilities/fileSystem.js.html +4 -4
  99. package/coverage/lcov-report/src/utilities/index.html +1 -1
  100. package/coverage/lcov-report/src/utilities/index.js.html +2 -2
  101. package/coverage/lcov-report/src/utilities/redis.js.html +13 -13
  102. package/coverage/lcov-report/src/utilities/templates.js.html +7 -7
  103. package/coverage/lcov-report/src/utilities/users.js.html +8 -8
  104. package/coverage/lcov.info +1685 -1511
  105. package/package.json +8 -6
  106. package/scripts/localdomain.js +33 -7
  107. package/src/api/controllers/global/auth.ts +1 -1
  108. package/src/api/controllers/global/users.ts +3 -1
  109. package/src/api/controllers/system/{environment.js → environment.ts} +3 -2
  110. package/src/api/controllers/system/{status.js → status.ts} +4 -3
  111. package/src/api/controllers/system/tenants.ts +8 -51
  112. package/src/api/index.ts +29 -6
  113. package/src/api/routes/global/auth.js +22 -39
  114. package/src/api/routes/global/tests/auth.spec.ts +134 -64
  115. package/src/api/routes/global/tests/configs.spec.ts +5 -6
  116. package/src/api/routes/global/tests/email.spec.ts +4 -3
  117. package/src/api/routes/global/tests/license.spec.ts +31 -0
  118. package/src/api/routes/global/tests/realEmail.spec.ts +2 -3
  119. package/src/api/routes/global/tests/roles.spec.ts +27 -0
  120. package/src/api/routes/global/tests/self.spec.ts +3 -4
  121. package/src/api/routes/global/tests/templates.spec.ts +35 -0
  122. package/src/api/routes/global/tests/users.spec.ts +51 -43
  123. package/src/api/routes/global/tests/workspaces.spec.ts +29 -0
  124. package/src/api/routes/system/environment.ts +8 -0
  125. package/src/api/routes/system/status.ts +8 -0
  126. package/src/api/routes/system/tenants.ts +13 -0
  127. package/src/api/routes/system/tests/accounts.spec.ts +5 -6
  128. package/src/api/routes/system/tests/environment.spec.ts +29 -0
  129. package/src/api/routes/system/tests/migrations.spec.ts +63 -0
  130. package/src/api/routes/system/tests/restore.spec.ts +36 -0
  131. package/src/api/routes/system/tests/status.spec.ts +48 -0
  132. package/src/api/routes/system/tests/tenants.spec.ts +61 -0
  133. package/src/middleware/tests/tenancy.spec.ts +73 -0
  134. package/src/tests/TestConfiguration.ts +88 -42
  135. package/src/tests/api/accounts.ts +5 -8
  136. package/src/tests/api/auth.ts +3 -6
  137. package/src/tests/api/base.ts +16 -0
  138. package/src/tests/api/configs.ts +15 -8
  139. package/src/tests/api/email.ts +3 -6
  140. package/src/tests/api/environment.ts +15 -0
  141. package/src/tests/api/index.ts +15 -0
  142. package/src/tests/api/migrations.ts +22 -0
  143. package/src/tests/api/restore.ts +14 -0
  144. package/src/tests/api/self.ts +11 -6
  145. package/src/tests/api/status.ts +12 -0
  146. package/src/tests/api/tenants.ts +15 -0
  147. package/src/tests/api/users.ts +38 -6
  148. package/src/tests/index.ts +4 -0
  149. package/src/tests/jestSetup.ts +7 -1
  150. package/src/tests/structures/index.ts +4 -2
  151. package/src/tests/structures/users.ts +1 -0
  152. package/__mocks__/node-fetch.ts +0 -1
  153. package/src/api/routes/system/environment.js +0 -8
  154. package/src/api/routes/system/status.js +0 -8
  155. package/src/api/routes/system/tenants.js +0 -12
  156. package/src/tests/structures/accounts.ts +0 -24
@@ -25,28 +25,28 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>14/14</span>
28
+ <span class='fraction'>10/10</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">50% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>1/2</span>
35
+ <span class='fraction'>0/0</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>4/4</span>
42
+ <span class='fraction'>3/3</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>14/14</span>
49
+ <span class='fraction'>10/10</span>
50
50
  </div>
51
51
 
52
52
 
@@ -151,67 +151,37 @@
151
151
  <a name='L86'></a><a href='#L86'>86</a>
152
152
  <a name='L87'></a><a href='#L87'>87</a>
153
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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
172
- <span class="cline-any cline-yes">7x</span>
173
- <span class="cline-any cline-yes">7x</span>
174
- <span class="cline-any cline-yes">7x</span>
175
- <span class="cline-any cline-yes">7x</span>
176
- <span class="cline-any cline-neutral">&nbsp;</span>
177
- <span class="cline-any cline-yes">7x</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-yes">7x</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-neutral">&nbsp;</span>
185
- <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-neutral">&nbsp;</span>
154
+ <a name='L89'></a><a href='#L89'>89</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
155
+ <span class="cline-any cline-yes">17x</span>
156
+ <span class="cline-any cline-yes">17x</span>
157
+ <span class="cline-any cline-yes">17x</span>
187
158
  <span class="cline-any cline-neutral">&nbsp;</span>
159
+ <span class="cline-any cline-yes">17x</span>
188
160
  <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-yes">7x</span>
190
161
  <span class="cline-any cline-neutral">&nbsp;</span>
191
162
  <span class="cline-any cline-neutral">&nbsp;</span>
163
+ <span class="cline-any cline-yes">17x</span>
192
164
  <span class="cline-any cline-neutral">&nbsp;</span>
193
165
  <span class="cline-any cline-neutral">&nbsp;</span>
194
166
  <span class="cline-any cline-neutral">&nbsp;</span>
195
167
  <span class="cline-any cline-neutral">&nbsp;</span>
196
- <span class="cline-any cline-yes">7x</span>
197
168
  <span class="cline-any cline-neutral">&nbsp;</span>
198
169
  <span class="cline-any cline-neutral">&nbsp;</span>
199
170
  <span class="cline-any cline-neutral">&nbsp;</span>
171
+ <span class="cline-any cline-yes">17x</span>
200
172
  <span class="cline-any cline-neutral">&nbsp;</span>
201
173
  <span class="cline-any cline-neutral">&nbsp;</span>
202
174
  <span class="cline-any cline-neutral">&nbsp;</span>
203
- <span class="cline-any cline-yes">5x</span>
204
- <span class="cline-any cline-yes">5x</span>
205
175
  <span class="cline-any cline-neutral">&nbsp;</span>
206
- <span class="cline-any cline-yes">5x</span>
207
176
  <span class="cline-any cline-neutral">&nbsp;</span>
208
177
  <span class="cline-any cline-neutral">&nbsp;</span>
209
- <span class="cline-any cline-yes">7x</span>
178
+ <span class="cline-any cline-yes">17x</span>
210
179
  <span class="cline-any cline-neutral">&nbsp;</span>
211
180
  <span class="cline-any cline-neutral">&nbsp;</span>
212
181
  <span class="cline-any cline-neutral">&nbsp;</span>
213
182
  <span class="cline-any cline-neutral">&nbsp;</span>
214
183
  <span class="cline-any cline-neutral">&nbsp;</span>
184
+ <span class="cline-any cline-yes">17x</span>
215
185
  <span class="cline-any cline-neutral">&nbsp;</span>
216
186
  <span class="cline-any cline-neutral">&nbsp;</span>
217
187
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -268,16 +238,11 @@
268
238
  <span class="cline-any cline-neutral">&nbsp;</span>
269
239
  <span class="cline-any cline-neutral">&nbsp;</span>
270
240
  <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-yes">7x</span>
241
+ <span class="cline-any cline-yes">17x</span>
276
242
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
277
243
  const authController = require("../../controllers/global/auth")
278
244
  const { joiValidator } = require("@budibase/backend-core/auth")
279
245
  const Joi = require("joi")
280
- const { updateTenantId } = require("@budibase/backend-core/tenancy")
281
246
  &nbsp;
282
247
  const router = new Router()
283
248
  &nbsp;
@@ -304,77 +269,61 @@ function buildResetUpdateValidation() {
304
269
  }).required().unknown(false))
305
270
  }
306
271
  &nbsp;
307
- function updateTenant(ctx, next) {
308
- <span class="missing-if-branch" title="else path not taken" >E</span>if (ctx.params) {
309
- updateTenantId(ctx.params.tenantId)
310
- }
311
- return next()
312
- }
313
- &nbsp;
314
272
  router
273
+ // PASSWORD
315
274
  .post(
316
275
  "/api/global/auth/:tenantId/login",
317
276
  buildAuthValidation(),
318
- updateTenant,
319
277
  authController.authenticate
320
278
  )
279
+ .post("/api/global/auth/logout", authController.logout)
321
280
  .post(
322
281
  "/api/global/auth/:tenantId/reset",
323
282
  buildResetValidation(),
324
- updateTenant,
325
283
  authController.reset
326
284
  )
327
285
  .post(
328
286
  "/api/global/auth/:tenantId/reset/update",
329
287
  buildResetUpdateValidation(),
330
- updateTenant,
331
288
  authController.resetUpdate
332
289
  )
333
- .post("/api/global/auth/logout", authController.logout)
290
+ // INIT
334
291
  .post("/api/global/auth/init", authController.setInitInfo)
335
292
  .get("/api/global/auth/init", authController.getInitInfo)
336
- .get(
337
- "/api/global/auth/:tenantId/google",
338
- updateTenant,
339
- authController.googlePreAuth
340
- )
293
+ &nbsp;
294
+ // DATASOURCE - MULTI TENANT
341
295
  .get(
342
296
  "/api/global/auth/:tenantId/datasource/:provider",
343
- updateTenant,
344
297
  authController.datasourcePreAuth
345
298
  )
346
- // single tenancy endpoint
347
- .get("/api/global/auth/google/callback", authController.googleAuth)
348
299
  .get(
349
- "/api/global/auth/datasource/:provider/callback",
300
+ "/api/global/auth/:tenantId/datasource/:provider/callback",
350
301
  authController.datasourceAuth
351
302
  )
352
- // multi-tenancy endpoint
353
- .get(
354
- "/api/global/auth/:tenantId/google/callback",
355
- updateTenant,
356
- authController.googleAuth
357
- )
303
+ &nbsp;
304
+ // DATASOURCE - SINGLE TENANT - DEPRECATED
358
305
  .get(
359
- "/api/global/auth/:tenantId/datasource/:provider/callback",
360
- updateTenant,
306
+ "/api/global/auth/datasource/:provider/callback",
361
307
  authController.datasourceAuth
362
308
  )
309
+ &nbsp;
310
+ // GOOGLE - MULTI TENANT
311
+ .get("/api/global/auth/:tenantId/google", authController.googlePreAuth)
312
+ .get("/api/global/auth/:tenantId/google/callback", authController.googleAuth)
313
+ &nbsp;
314
+ // GOOGLE - SINGLE TENANT - DEPRECATED
315
+ .get("/api/global/auth/google/callback", authController.googleAuth)
316
+ .get("/api/admin/auth/google/callback", authController.googleAuth)
317
+ &nbsp;
318
+ // OIDC - MULTI TENANT
363
319
  .get(
364
320
  "/api/global/auth/:tenantId/oidc/configs/:configId",
365
- updateTenant,
366
321
  authController.oidcPreAuth
367
322
  )
368
- // single tenancy endpoint
323
+ .get("/api/global/auth/:tenantId/oidc/callback", authController.oidcAuth)
324
+ &nbsp;
325
+ // OIDC - SINGLE TENANT - DEPRECATED
369
326
  .get("/api/global/auth/oidc/callback", authController.oidcAuth)
370
- // multi-tenancy endpoint
371
- .get(
372
- "/api/global/auth/:tenantId/oidc/callback",
373
- updateTenant,
374
- authController.oidcAuth
375
- )
376
- // deprecated - used by the default system before tenancy
377
- .get("/api/admin/auth/google/callback", authController.googleAuth)
378
327
  .get("/api/admin/auth/oidc/callback", authController.oidcAuth)
379
328
  &nbsp;
380
329
  module.exports = router
@@ -385,7 +334,7 @@ module.exports = router
385
334
  <div class='footer quiet pad2 space-top1 center small'>
386
335
  Code coverage generated by
387
336
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
388
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
337
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
389
338
  </div>
390
339
  <script src="../../../../prettify.js"></script>
391
340
  <script>
@@ -188,18 +188,18 @@
188
188
  <a name='L123'></a><a href='#L123'>123</a>
189
189
  <a name='L124'></a><a href='#L124'>124</a>
190
190
  <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
192
- <span class="cline-any cline-yes">7x</span>
193
- <span class="cline-any cline-yes">7x</span>
194
- <span class="cline-any cline-yes">7x</span>
195
- <span class="cline-any cline-yes">7x</span>
196
- <span class="cline-any cline-yes">7x</span>
191
+ <a name='L126'></a><a href='#L126'>126</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
192
+ <span class="cline-any cline-yes">17x</span>
193
+ <span class="cline-any cline-yes">17x</span>
194
+ <span class="cline-any cline-yes">17x</span>
195
+ <span class="cline-any cline-yes">17x</span>
196
+ <span class="cline-any cline-yes">17x</span>
197
197
  <span class="cline-any cline-neutral">&nbsp;</span>
198
- <span class="cline-any cline-yes">7x</span>
198
+ <span class="cline-any cline-yes">17x</span>
199
199
  <span class="cline-any cline-neutral">&nbsp;</span>
200
200
  <span class="cline-any cline-neutral">&nbsp;</span>
201
201
  <span class="cline-any cline-neutral">&nbsp;</span>
202
- <span class="cline-any cline-yes">7x</span>
202
+ <span class="cline-any cline-yes">17x</span>
203
203
  <span class="cline-any cline-neutral">&nbsp;</span>
204
204
  <span class="cline-any cline-neutral">&nbsp;</span>
205
205
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -214,7 +214,7 @@
214
214
  <span class="cline-any cline-neutral">&nbsp;</span>
215
215
  <span class="cline-any cline-neutral">&nbsp;</span>
216
216
  <span class="cline-any cline-neutral">&nbsp;</span>
217
- <span class="cline-any cline-yes">7x</span>
217
+ <span class="cline-any cline-yes">17x</span>
218
218
  <span class="cline-any cline-neutral">&nbsp;</span>
219
219
  <span class="cline-any cline-neutral">&nbsp;</span>
220
220
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -224,7 +224,7 @@
224
224
  <span class="cline-any cline-neutral">&nbsp;</span>
225
225
  <span class="cline-any cline-neutral">&nbsp;</span>
226
226
  <span class="cline-any cline-neutral">&nbsp;</span>
227
- <span class="cline-any cline-yes">7x</span>
227
+ <span class="cline-any cline-yes">17x</span>
228
228
  <span class="cline-any cline-neutral">&nbsp;</span>
229
229
  <span class="cline-any cline-neutral">&nbsp;</span>
230
230
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -233,7 +233,7 @@
233
233
  <span class="cline-any cline-neutral">&nbsp;</span>
234
234
  <span class="cline-any cline-neutral">&nbsp;</span>
235
235
  <span class="cline-any cline-neutral">&nbsp;</span>
236
- <span class="cline-any cline-yes">7x</span>
236
+ <span class="cline-any cline-yes">17x</span>
237
237
  <span class="cline-any cline-neutral">&nbsp;</span>
238
238
  <span class="cline-any cline-neutral">&nbsp;</span>
239
239
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -251,7 +251,7 @@
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
252
  <span class="cline-any cline-neutral">&nbsp;</span>
253
253
  <span class="cline-any cline-neutral">&nbsp;</span>
254
- <span class="cline-any cline-yes">7x</span>
254
+ <span class="cline-any cline-yes">17x</span>
255
255
  <span class="cline-any cline-neutral">&nbsp;</span>
256
256
  <span class="cline-any cline-neutral">&nbsp;</span>
257
257
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -274,7 +274,7 @@
274
274
  <span class="cline-any cline-neutral">&nbsp;</span>
275
275
  <span class="cline-any cline-neutral">&nbsp;</span>
276
276
  <span class="cline-any cline-neutral">&nbsp;</span>
277
- <span class="cline-any cline-yes">7x</span>
277
+ <span class="cline-any cline-yes">17x</span>
278
278
  <span class="cline-any cline-neutral">&nbsp;</span>
279
279
  <span class="cline-any cline-neutral">&nbsp;</span>
280
280
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -282,12 +282,12 @@
282
282
  <span class="cline-any cline-neutral">&nbsp;</span>
283
283
  <span class="cline-any cline-neutral">&nbsp;</span>
284
284
  <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-yes">14x</span>
285
+ <span class="cline-any cline-yes">34x</span>
286
286
  <span class="cline-any cline-neutral">&nbsp;</span>
287
287
  <span class="cline-any cline-neutral">&nbsp;</span>
288
288
  <span class="cline-any cline-neutral">&nbsp;</span>
289
289
  <span class="cline-any cline-neutral">&nbsp;</span>
290
- <span class="cline-any cline-yes">7x</span>
290
+ <span class="cline-any cline-yes">17x</span>
291
291
  <span class="cline-any cline-neutral">&nbsp;</span>
292
292
  <span class="cline-any cline-neutral">&nbsp;</span>
293
293
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -312,7 +312,7 @@
312
312
  <span class="cline-any cline-neutral">&nbsp;</span>
313
313
  <span class="cline-any cline-neutral">&nbsp;</span>
314
314
  <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-yes">7x</span>
315
+ <span class="cline-any cline-yes">17x</span>
316
316
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
317
317
  const controller = require("../../controllers/global/configs")
318
318
  const { joiValidator } = require("@budibase/backend-core/auth")
@@ -445,7 +445,7 @@ module.exports = router
445
445
  <div class='footer quiet pad2 space-top1 center small'>
446
446
  Code coverage generated by
447
447
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
448
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
448
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
449
449
  </div>
450
450
  <script src="../../../../prettify.js"></script>
451
451
  <script>
@@ -100,18 +100,18 @@
100
100
  <a name='L35'></a><a href='#L35'>35</a>
101
101
  <a name='L36'></a><a href='#L36'>36</a>
102
102
  <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
104
- <span class="cline-any cline-yes">7x</span>
105
- <span class="cline-any cline-yes">7x</span>
106
- <span class="cline-any cline-yes">7x</span>
107
- <span class="cline-any cline-yes">7x</span>
108
- <span class="cline-any cline-yes">7x</span>
103
+ <a name='L38'></a><a href='#L38'>38</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
104
+ <span class="cline-any cline-yes">17x</span>
105
+ <span class="cline-any cline-yes">17x</span>
106
+ <span class="cline-any cline-yes">17x</span>
107
+ <span class="cline-any cline-yes">17x</span>
108
+ <span class="cline-any cline-yes">17x</span>
109
109
  <span class="cline-any cline-neutral">&nbsp;</span>
110
- <span class="cline-any cline-yes">7x</span>
110
+ <span class="cline-any cline-yes">17x</span>
111
111
  <span class="cline-any cline-neutral">&nbsp;</span>
112
112
  <span class="cline-any cline-neutral">&nbsp;</span>
113
113
  <span class="cline-any cline-neutral">&nbsp;</span>
114
- <span class="cline-any cline-yes">7x</span>
114
+ <span class="cline-any cline-yes">17x</span>
115
115
  <span class="cline-any cline-neutral">&nbsp;</span>
116
116
  <span class="cline-any cline-neutral">&nbsp;</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -129,14 +129,14 @@
129
129
  <span class="cline-any cline-neutral">&nbsp;</span>
130
130
  <span class="cline-any cline-neutral">&nbsp;</span>
131
131
  <span class="cline-any cline-neutral">&nbsp;</span>
132
- <span class="cline-any cline-yes">7x</span>
132
+ <span class="cline-any cline-yes">17x</span>
133
133
  <span class="cline-any cline-neutral">&nbsp;</span>
134
134
  <span class="cline-any cline-neutral">&nbsp;</span>
135
135
  <span class="cline-any cline-neutral">&nbsp;</span>
136
136
  <span class="cline-any cline-neutral">&nbsp;</span>
137
137
  <span class="cline-any cline-neutral">&nbsp;</span>
138
138
  <span class="cline-any cline-neutral">&nbsp;</span>
139
- <span class="cline-any cline-yes">7x</span>
139
+ <span class="cline-any cline-yes">17x</span>
140
140
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
141
141
  const controller = require("../../controllers/global/email")
142
142
  const { EmailTemplatePurpose } = require("../../../constants")
@@ -181,7 +181,7 @@ module.exports = router
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
184
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
184
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  <script src="../../../../prettify.js"></script>
187
187
  <script>
@@ -25,28 +25,28 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>93/93</span>
28
+ <span class='fraction'>89/89</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">50% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>1/2</span>
35
+ <span class='fraction'>0/0</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>18/18</span>
42
+ <span class='fraction'>17/17</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>93/93</span>
49
+ <span class='fraction'>89/89</span>
50
50
  </div>
51
51
 
52
52
 
@@ -84,13 +84,13 @@
84
84
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
86
  <td data-value="100" class="pct high">100%</td>
87
- <td data-value="14" class="abs high">14/14</td>
88
- <td data-value="50" class="pct medium">50%</td>
89
- <td data-value="2" class="abs medium">1/2</td>
87
+ <td data-value="10" class="abs high">10/10</td>
90
88
  <td data-value="100" class="pct high">100%</td>
91
- <td data-value="4" class="abs high">4/4</td>
89
+ <td data-value="0" class="abs high">0/0</td>
90
+ <td data-value="100" class="pct high">100%</td>
91
+ <td data-value="3" class="abs high">3/3</td>
92
92
  <td data-value="100" class="pct high">100%</td>
93
- <td data-value="14" class="abs high">14/14</td>
93
+ <td data-value="10" class="abs high">10/10</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -221,7 +221,7 @@
221
221
  <div class='footer quiet pad2 space-top1 center small'>
222
222
  Code coverage generated by
223
223
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
224
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
224
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
225
225
  </div>
226
226
  <script src="../../../../prettify.js"></script>
227
227
  <script>
@@ -76,19 +76,19 @@
76
76
  <a name='L11'></a><a href='#L11'>11</a>
77
77
  <a name='L12'></a><a href='#L12'>12</a>
78
78
  <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
80
- <span class="cline-any cline-yes">7x</span>
79
+ <a name='L14'></a><a href='#L14'>14</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
80
+ <span class="cline-any cline-yes">17x</span>
81
81
  <span class="cline-any cline-neutral">&nbsp;</span>
82
- <span class="cline-any cline-yes">7x</span>
82
+ <span class="cline-any cline-yes">17x</span>
83
83
  <span class="cline-any cline-neutral">&nbsp;</span>
84
- <span class="cline-any cline-yes">7x</span>
84
+ <span class="cline-any cline-yes">17x</span>
85
85
  <span class="cline-any cline-neutral">&nbsp;</span>
86
86
  <span class="cline-any cline-neutral">&nbsp;</span>
87
87
  <span class="cline-any cline-neutral">&nbsp;</span>
88
88
  <span class="cline-any cline-neutral">&nbsp;</span>
89
89
  <span class="cline-any cline-neutral">&nbsp;</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span>
91
- <span class="cline-any cline-yes">7x</span>
91
+ <span class="cline-any cline-yes">17x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Router from "@koa/router"
93
93
  import * as controller from "../../controllers/global/license"
94
94
  &nbsp;
@@ -109,7 +109,7 @@ export = router
109
109
  <div class='footer quiet pad2 space-top1 center small'>
110
110
  Code coverage generated by
111
111
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
112
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
112
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
113
113
  </div>
114
114
  <script src="../../../../prettify.js"></script>
115
115
  <script>
@@ -75,18 +75,18 @@
75
75
  <a name='L10'></a><a href='#L10'>10</a>
76
76
  <a name='L11'></a><a href='#L11'>11</a>
77
77
  <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
79
- <span class="cline-any cline-yes">7x</span>
80
- <span class="cline-any cline-yes">7x</span>
78
+ <a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
79
+ <span class="cline-any cline-yes">17x</span>
80
+ <span class="cline-any cline-yes">17x</span>
81
81
  <span class="cline-any cline-neutral">&nbsp;</span>
82
- <span class="cline-any cline-yes">7x</span>
82
+ <span class="cline-any cline-yes">17x</span>
83
83
  <span class="cline-any cline-neutral">&nbsp;</span>
84
- <span class="cline-any cline-yes">7x</span>
84
+ <span class="cline-any cline-yes">17x</span>
85
85
  <span class="cline-any cline-neutral">&nbsp;</span>
86
86
  <span class="cline-any cline-neutral">&nbsp;</span>
87
87
  <span class="cline-any cline-neutral">&nbsp;</span>
88
88
  <span class="cline-any cline-neutral">&nbsp;</span>
89
- <span class="cline-any cline-yes">7x</span>
89
+ <span class="cline-any cline-yes">17x</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
91
91
  const controller = require("../../controllers/global/roles")
92
92
  const { builderOrAdmin } = require("@budibase/backend-core/auth")
@@ -106,7 +106,7 @@ module.exports = router
106
106
  <div class='footer quiet pad2 space-top1 center small'>
107
107
  Code coverage generated by
108
108
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
109
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
109
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
110
110
  </div>
111
111
  <script src="../../../../prettify.js"></script>
112
112
  <script>
@@ -81,14 +81,14 @@
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">7x</span>
85
- <span class="cline-any cline-yes">7x</span>
86
- <span class="cline-any cline-yes">7x</span>
87
- <span class="cline-any cline-yes">7x</span>
84
+ <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
85
+ <span class="cline-any cline-yes">17x</span>
86
+ <span class="cline-any cline-yes">17x</span>
87
+ <span class="cline-any cline-yes">17x</span>
88
88
  <span class="cline-any cline-neutral">&nbsp;</span>
89
- <span class="cline-any cline-yes">7x</span>
89
+ <span class="cline-any cline-yes">17x</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span>
91
- <span class="cline-any cline-yes">7x</span>
91
+ <span class="cline-any cline-yes">17x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span>
93
93
  <span class="cline-any cline-neutral">&nbsp;</span>
94
94
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -98,7 +98,7 @@
98
98
  <span class="cline-any cline-neutral">&nbsp;</span>
99
99
  <span class="cline-any cline-neutral">&nbsp;</span>
100
100
  <span class="cline-any cline-neutral">&nbsp;</span>
101
- <span class="cline-any cline-yes">7x</span>
101
+ <span class="cline-any cline-yes">17x</span>
102
102
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Router from "@koa/router"
103
103
  import * as controller from "../../controllers/global/self"
104
104
  import { auth } from "@budibase/backend-core"
@@ -124,7 +124,7 @@ export default router as any
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 Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
127
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
128
128
  </div>
129
129
  <script src="../../../../prettify.js"></script>
130
130
  <script>
@@ -100,18 +100,18 @@
100
100
  <a name='L35'></a><a href='#L35'>35</a>
101
101
  <a name='L36'></a><a href='#L36'>36</a>
102
102
  <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">7x</span>
104
- <span class="cline-any cline-yes">7x</span>
105
- <span class="cline-any cline-yes">7x</span>
106
- <span class="cline-any cline-yes">7x</span>
107
- <span class="cline-any cline-yes">7x</span>
108
- <span class="cline-any cline-yes">7x</span>
103
+ <a name='L38'></a><a href='#L38'>38</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
104
+ <span class="cline-any cline-yes">17x</span>
105
+ <span class="cline-any cline-yes">17x</span>
106
+ <span class="cline-any cline-yes">17x</span>
107
+ <span class="cline-any cline-yes">17x</span>
108
+ <span class="cline-any cline-yes">17x</span>
109
109
  <span class="cline-any cline-neutral">&nbsp;</span>
110
- <span class="cline-any cline-yes">7x</span>
110
+ <span class="cline-any cline-yes">17x</span>
111
111
  <span class="cline-any cline-neutral">&nbsp;</span>
112
112
  <span class="cline-any cline-neutral">&nbsp;</span>
113
113
  <span class="cline-any cline-neutral">&nbsp;</span>
114
- <span class="cline-any cline-yes">7x</span>
114
+ <span class="cline-any cline-yes">17x</span>
115
115
  <span class="cline-any cline-neutral">&nbsp;</span>
116
116
  <span class="cline-any cline-neutral">&nbsp;</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -122,7 +122,7 @@
122
122
  <span class="cline-any cline-neutral">&nbsp;</span>
123
123
  <span class="cline-any cline-neutral">&nbsp;</span>
124
124
  <span class="cline-any cline-neutral">&nbsp;</span>
125
- <span class="cline-any cline-yes">7x</span>
125
+ <span class="cline-any cline-yes">17x</span>
126
126
  <span class="cline-any cline-neutral">&nbsp;</span>
127
127
  <span class="cline-any cline-neutral">&nbsp;</span>
128
128
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -136,7 +136,7 @@
136
136
  <span class="cline-any cline-neutral">&nbsp;</span>
137
137
  <span class="cline-any cline-neutral">&nbsp;</span>
138
138
  <span class="cline-any cline-neutral">&nbsp;</span>
139
- <span class="cline-any cline-yes">7x</span>
139
+ <span class="cline-any cline-yes">17x</span>
140
140
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Router from "@koa/router"
141
141
  import * as controller from "../../controllers/global/templates"
142
142
  import { TemplatePurpose, TemplateTypes } from "../../../constants"
@@ -181,7 +181,7 @@ export default router
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
184
- at Wed Nov 16 2022 12:02:15 GMT+0000 (Coordinated Universal Time)
184
+ at Wed Nov 16 2022 13:31:07 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  <script src="../../../../prettify.js"></script>
187
187
  <script>