@budibase/server 1.0.80-alpha.3 → 1.0.80

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 (316) hide show
  1. package/__mocks__/node-fetch.ts +0 -1
  2. package/builder/assets/index.22a39cc9.js +1352 -0
  3. package/builder/assets/{index.c57242d4.css → index.c8d1e8f0.css} +2 -2
  4. package/builder/assets/{vendor.a7c6ad0a.js → vendor.20f80cec.js} +216 -190
  5. package/builder/index.html +3 -3
  6. package/coverage/clover.xml +2327 -2390
  7. package/coverage/coverage-final.json +137 -138
  8. package/coverage/lcov-report/api/controllers/analytics.js.html +6 -6
  9. package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
  10. package/coverage/lcov-report/api/controllers/application.js.html +149 -152
  11. package/coverage/lcov-report/api/controllers/auth.js.html +7 -7
  12. package/coverage/lcov-report/api/controllers/automation.js.html +21 -21
  13. package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
  14. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -11
  15. package/coverage/lcov-report/api/controllers/component.js.html +5 -5
  16. package/coverage/lcov-report/api/controllers/datasource.js.html +16 -16
  17. package/coverage/lcov-report/api/controllers/dev.js.html +19 -19
  18. package/coverage/lcov-report/api/controllers/index.html +16 -16
  19. package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
  20. package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
  21. package/coverage/lcov-report/api/controllers/metadata.js.html +9 -9
  22. package/coverage/lcov-report/api/controllers/migrations.js.html +4 -4
  23. package/coverage/lcov-report/api/controllers/permission.js.html +15 -15
  24. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  25. package/coverage/lcov-report/api/controllers/query/index.js.html +26 -26
  26. package/coverage/lcov-report/api/controllers/query/validation.js.html +10 -10
  27. package/coverage/lcov-report/api/controllers/role.js.html +9 -9
  28. package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
  29. package/coverage/lcov-report/api/controllers/row/external.js.html +16 -16
  30. package/coverage/lcov-report/api/controllers/row/index.html +27 -27
  31. package/coverage/lcov-report/api/controllers/row/index.js.html +46 -46
  32. package/coverage/lcov-report/api/controllers/row/internal.js.html +82 -94
  33. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +204 -204
  34. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -24
  35. package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -29
  36. package/coverage/lcov-report/api/controllers/screen.js.html +7 -7
  37. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  38. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +49 -49
  39. package/coverage/lcov-report/api/controllers/table/external.js.html +12 -12
  40. package/coverage/lcov-report/api/controllers/table/index.html +11 -11
  41. package/coverage/lcov-report/api/controllers/table/index.js.html +44 -47
  42. package/coverage/lcov-report/api/controllers/table/internal.js.html +50 -50
  43. package/coverage/lcov-report/api/controllers/table/utils.js.html +80 -80
  44. package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
  45. package/coverage/lcov-report/api/controllers/user.js.html +19 -19
  46. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  47. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  48. package/coverage/lcov-report/api/controllers/view/index.js.html +14 -14
  49. package/coverage/lcov-report/api/controllers/view/utils.js.html +12 -12
  50. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  51. package/coverage/lcov-report/api/controllers/webhook.js.html +27 -18
  52. package/coverage/lcov-report/api/index.html +10 -10
  53. package/coverage/lcov-report/api/index.js.html +28 -37
  54. package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
  55. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
  56. package/coverage/lcov-report/api/routes/application.js.html +9 -9
  57. package/coverage/lcov-report/api/routes/auth.js.html +6 -6
  58. package/coverage/lcov-report/api/routes/automation.js.html +109 -19
  59. package/coverage/lcov-report/api/routes/backup.js.html +8 -8
  60. package/coverage/lcov-report/api/routes/cloud.js.html +8 -8
  61. package/coverage/lcov-report/api/routes/component.js.html +8 -8
  62. package/coverage/lcov-report/api/routes/datasource.js.html +156 -18
  63. package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
  64. package/coverage/lcov-report/api/routes/dev.js.html +13 -13
  65. package/coverage/lcov-report/api/routes/index.html +35 -35
  66. package/coverage/lcov-report/api/routes/index.js.html +32 -38
  67. package/coverage/lcov-report/api/routes/integration.js.html +8 -8
  68. package/coverage/lcov-report/api/routes/layout.js.html +8 -8
  69. package/coverage/lcov-report/api/routes/metadata.js.html +9 -9
  70. package/coverage/lcov-report/api/routes/migrations.js.html +7 -7
  71. package/coverage/lcov-report/api/routes/permission.js.html +58 -16
  72. package/coverage/lcov-report/api/routes/query.js.html +10 -10
  73. package/coverage/lcov-report/api/routes/role.js.html +78 -15
  74. package/coverage/lcov-report/api/routes/routing.js.html +8 -8
  75. package/coverage/lcov-report/api/routes/row.js.html +14 -17
  76. package/coverage/lcov-report/api/routes/screen.js.html +95 -14
  77. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/static.js.html +13 -13
  79. package/coverage/lcov-report/api/routes/table.js.html +62 -17
  80. package/coverage/lcov-report/api/routes/templates.js.html +8 -8
  81. package/coverage/lcov-report/api/routes/user.js.html +8 -8
  82. package/coverage/lcov-report/api/routes/view.js.html +10 -10
  83. package/coverage/lcov-report/api/routes/webhook.js.html +62 -14
  84. package/coverage/lcov-report/automations/actions.js.html +24 -24
  85. package/coverage/lcov-report/automations/automationUtils.js.html +5 -5
  86. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  87. package/coverage/lcov-report/automations/index.html +1 -1
  88. package/coverage/lcov-report/automations/index.js.html +7 -7
  89. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  90. package/coverage/lcov-report/automations/steps/createRow.js.html +7 -7
  91. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  92. package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
  93. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  94. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  95. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  96. package/coverage/lcov-report/automations/steps/filter.js.html +9 -12
  97. package/coverage/lcov-report/automations/steps/index.html +1 -1
  98. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  99. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  100. package/coverage/lcov-report/automations/steps/queryRows.js.html +11 -11
  101. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  102. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  103. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  104. package/coverage/lcov-report/automations/steps/updateRow.js.html +6 -6
  105. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  106. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  107. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  108. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  109. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  111. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  112. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  113. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  114. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  115. package/coverage/lcov-report/automations/triggers.js.html +26 -26
  116. package/coverage/lcov-report/automations/utils.js.html +35 -35
  117. package/coverage/lcov-report/constants/index.html +5 -5
  118. package/coverage/lcov-report/constants/index.js.html +28 -40
  119. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  120. package/coverage/lcov-report/constants/screens.js.html +4 -4
  121. package/coverage/lcov-report/db/client.js.html +18 -18
  122. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  123. package/coverage/lcov-report/db/index.html +15 -15
  124. package/coverage/lcov-report/db/index.js.html +3 -3
  125. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +21 -21
  126. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  127. package/coverage/lcov-report/db/linkedRows/index.js.html +36 -36
  128. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +30 -30
  129. package/coverage/lcov-report/db/newid.js.html +4 -4
  130. package/coverage/lcov-report/db/utils.js.html +87 -123
  131. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  132. package/coverage/lcov-report/events/index.html +1 -1
  133. package/coverage/lcov-report/events/index.js.html +8 -8
  134. package/coverage/lcov-report/events/utils.js.html +18 -18
  135. package/coverage/lcov-report/index.html +74 -89
  136. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  137. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  138. package/coverage/lcov-report/middleware/appInfo.js.html +5 -5
  139. package/coverage/lcov-report/middleware/authorized.js.html +29 -29
  140. package/coverage/lcov-report/middleware/builder.js.html +16 -16
  141. package/coverage/lcov-report/middleware/currentapp.js.html +44 -44
  142. package/coverage/lcov-report/middleware/index.html +1 -1
  143. package/coverage/lcov-report/middleware/joi-validator.js.html +14 -14
  144. package/coverage/lcov-report/middleware/resourceId.js.html +29 -29
  145. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  146. package/coverage/lcov-report/middleware/usageQuota.js.html +17 -17
  147. package/coverage/lcov-report/middleware/utils.js.html +4 -4
  148. package/coverage/lcov-report/threads/automation.js.html +1 -1
  149. package/coverage/lcov-report/threads/index.html +19 -19
  150. package/coverage/lcov-report/threads/index.js.html +10 -10
  151. package/coverage/lcov-report/threads/query.js.html +39 -123
  152. package/coverage/lcov-report/threads/utils.js.html +14 -14
  153. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  154. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  155. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  156. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  157. package/coverage/lcov-report/utilities/global.js.html +28 -28
  158. package/coverage/lcov-report/utilities/index.html +18 -18
  159. package/coverage/lcov-report/utilities/index.js.html +24 -24
  160. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +9 -9
  161. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  162. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  163. package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
  164. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  165. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +60 -60
  166. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +13 -13
  167. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  168. package/coverage/lcov-report/utilities/security.js.html +8 -8
  169. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  170. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  171. package/coverage/lcov-report/utilities/usageQuota/index.js.html +12 -12
  172. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +8 -8
  173. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  174. package/coverage/lcov-report/utilities/users.js.html +5 -5
  175. package/coverage/lcov-report/utilities/workerRequests.js.html +53 -200
  176. package/coverage/lcov.info +3233 -3332
  177. package/dist/api/controllers/application.js +0 -1
  178. package/dist/api/controllers/row/internal.js +1 -4
  179. package/dist/api/controllers/table/index.js +1 -2
  180. package/dist/api/controllers/webhook.js +5 -3
  181. package/dist/api/index.js +1 -3
  182. package/dist/api/routes/automation.js +31 -3
  183. package/dist/api/routes/datasource.js +50 -3
  184. package/dist/api/routes/index.js +0 -2
  185. package/dist/api/routes/permission.js +14 -4
  186. package/dist/api/routes/role.js +19 -3
  187. package/dist/api/routes/row.js +4 -3
  188. package/dist/api/routes/screen.js +23 -2
  189. package/dist/api/routes/table.js +17 -3
  190. package/dist/api/routes/tests/utilities/index.js +0 -23
  191. package/dist/api/routes/webhook.js +17 -2
  192. package/dist/automations/steps/filter.js +2 -2
  193. package/dist/automations/steps/queryRows.js +1 -1
  194. package/dist/automations/utils.js +2 -2
  195. package/dist/constants/index.js +0 -3
  196. package/dist/db/utils.js +0 -11
  197. package/dist/environment.js +0 -1
  198. package/dist/integrations/base/sql.js +1 -16
  199. package/dist/integrations/base/sqlTable.js +4 -8
  200. package/dist/integrations/googlesheets.js +0 -3
  201. package/dist/integrations/microsoftSqlServer.js +43 -60
  202. package/dist/integrations/mysql.js +0 -3
  203. package/dist/integrations/oracle.js +19 -14
  204. package/dist/integrations/postgres.js +28 -34
  205. package/dist/integrations/utils.js +15 -32
  206. package/dist/package.json +7 -11
  207. package/dist/tests/utilities/TestConfiguration.js +8 -25
  208. package/dist/threads/query.js +8 -33
  209. package/dist/tsconfig.tsbuildinfo +1 -1
  210. package/dist/utilities/workerRequests.js +15 -50
  211. package/package.json +8 -12
  212. package/scripts/integrations/mssql/data/setup.sql +1 -18
  213. package/scripts/integrations/oracle/oracle.md +2 -2
  214. package/scripts/integrations/postgres/init.sql +3 -11
  215. package/scripts/likeCypress.ts +6 -9
  216. package/scripts/proxy/generateProxyConfig.js +70 -0
  217. package/src/api/controllers/application.js +0 -1
  218. package/src/api/controllers/row/ExternalRequest.ts +1 -1
  219. package/src/api/controllers/row/internal.js +0 -4
  220. package/src/api/controllers/table/index.js +1 -2
  221. package/src/api/controllers/webhook.js +6 -3
  222. package/src/api/index.js +1 -4
  223. package/src/api/routes/automation.js +33 -3
  224. package/src/api/routes/datasource.js +52 -6
  225. package/src/api/routes/index.js +0 -2
  226. package/src/api/routes/permission.js +18 -4
  227. package/src/api/routes/role.js +24 -3
  228. package/src/api/routes/row.js +2 -3
  229. package/src/api/routes/screen.js +29 -2
  230. package/src/api/routes/table.js +19 -4
  231. package/src/api/routes/tests/utilities/index.js +0 -24
  232. package/src/api/routes/webhook.js +18 -2
  233. package/src/automations/steps/filter.js +2 -3
  234. package/src/automations/steps/queryRows.js +1 -1
  235. package/src/automations/utils.js +2 -2
  236. package/src/constants/index.js +0 -4
  237. package/src/db/utils.js +0 -12
  238. package/src/definitions/common.ts +0 -4
  239. package/src/definitions/datasource.ts +0 -1
  240. package/src/environment.js +0 -1
  241. package/src/integrations/base/datasourcePlus.ts +0 -3
  242. package/src/integrations/base/sql.ts +1 -16
  243. package/src/integrations/base/sqlTable.ts +7 -11
  244. package/src/integrations/googlesheets.ts +2 -5
  245. package/src/integrations/microsoftSqlServer.ts +61 -86
  246. package/src/integrations/mysql.ts +0 -4
  247. package/src/integrations/oracle.ts +35 -27
  248. package/src/integrations/postgres.ts +26 -33
  249. package/src/integrations/utils.ts +15 -43
  250. package/src/tests/utilities/TestConfiguration.js +2 -23
  251. package/src/threads/query.js +9 -37
  252. package/src/utilities/workerRequests.js +16 -65
  253. package/builder/assets/index.f8c92447.js +0 -1288
  254. package/coverage/lcov-report/api/routes/utils/index.html +0 -111
  255. package/coverage/lcov-report/api/routes/utils/validators.js.html +0 -737
  256. package/dist/api/controllers/public/applications.js +0 -94
  257. package/dist/api/controllers/public/mapping/applications.js +0 -29
  258. package/dist/api/controllers/public/mapping/index.js +0 -11
  259. package/dist/api/controllers/public/mapping/queries.js +0 -36
  260. package/dist/api/controllers/public/mapping/rows.js +0 -24
  261. package/dist/api/controllers/public/mapping/tables.js +0 -23
  262. package/dist/api/controllers/public/mapping/types.js +0 -2
  263. package/dist/api/controllers/public/mapping/users.js +0 -29
  264. package/dist/api/controllers/public/queries.js +0 -38
  265. package/dist/api/controllers/public/rows.js +0 -97
  266. package/dist/api/controllers/public/tables.js +0 -75
  267. package/dist/api/controllers/public/users.js +0 -95
  268. package/dist/api/controllers/public/utils.js +0 -49
  269. package/dist/api/routes/public/applications.js +0 -141
  270. package/dist/api/routes/public/index.js +0 -101
  271. package/dist/api/routes/public/middleware/mapper.js +0 -94
  272. package/dist/api/routes/public/queries.js +0 -77
  273. package/dist/api/routes/public/rows.js +0 -229
  274. package/dist/api/routes/public/tables.js +0 -154
  275. package/dist/api/routes/public/users.js +0 -137
  276. package/dist/api/routes/public/utils/Endpoint.js +0 -36
  277. package/dist/api/routes/utils/validators.js +0 -200
  278. package/dist/definitions/openapi.js +0 -6
  279. package/specs/generate.js +0 -94
  280. package/specs/openapi.json +0 -2232
  281. package/specs/openapi.yaml +0 -1538
  282. package/specs/parameters.js +0 -59
  283. package/specs/resources/application.js +0 -101
  284. package/specs/resources/index.js +0 -24
  285. package/specs/resources/misc.js +0 -12
  286. package/specs/resources/query.js +0 -189
  287. package/specs/resources/row.js +0 -125
  288. package/specs/resources/table.js +0 -191
  289. package/specs/resources/user.js +0 -126
  290. package/specs/resources/utils/Resource.js +0 -26
  291. package/specs/resources/utils/index.js +0 -11
  292. package/specs/security.js +0 -7
  293. package/src/api/controllers/public/applications.ts +0 -74
  294. package/src/api/controllers/public/mapping/applications.ts +0 -32
  295. package/src/api/controllers/public/mapping/index.ts +0 -13
  296. package/src/api/controllers/public/mapping/queries.ts +0 -39
  297. package/src/api/controllers/public/mapping/rows.ts +0 -31
  298. package/src/api/controllers/public/mapping/tables.ts +0 -26
  299. package/src/api/controllers/public/mapping/types.ts +0 -13
  300. package/src/api/controllers/public/mapping/users.ts +0 -32
  301. package/src/api/controllers/public/queries.ts +0 -20
  302. package/src/api/controllers/public/rows.ts +0 -77
  303. package/src/api/controllers/public/tables.ts +0 -56
  304. package/src/api/controllers/public/users.ts +0 -82
  305. package/src/api/controllers/public/utils.ts +0 -38
  306. package/src/api/routes/public/applications.ts +0 -156
  307. package/src/api/routes/public/index.ts +0 -118
  308. package/src/api/routes/public/middleware/mapper.ts +0 -81
  309. package/src/api/routes/public/queries.ts +0 -81
  310. package/src/api/routes/public/rows.ts +0 -242
  311. package/src/api/routes/public/tables.ts +0 -169
  312. package/src/api/routes/public/tests/compare.spec.js +0 -184
  313. package/src/api/routes/public/users.ts +0 -144
  314. package/src/api/routes/public/utils/Endpoint.ts +0 -51
  315. package/src/api/routes/utils/validators.js +0 -219
  316. package/src/definitions/openapi.ts +0 -943
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">50% </span>
26
+ <span class="strong">52.38% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>28/56</span>
28
+ <span class='fraction'>22/42</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">38.46% </span>
33
+ <span class="strong">32% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>10/26</span>
35
+ <span class='fraction'>8/25</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">33.33% </span>
40
+ <span class="strong">50% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>3/9</span>
42
+ <span class='fraction'>2/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">50% </span>
47
+ <span class="strong">52.38% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>28/56</span>
49
+ <span class='fraction'>22/42</span>
50
50
  </div>
51
51
 
52
52
 
@@ -147,119 +147,45 @@
147
147
  <a name='L88'></a><a href='#L88'>88</a>
148
148
  <a name='L89'></a><a href='#L89'>89</a>
149
149
  <a name='L90'></a><a href='#L90'>90</a>
150
- <a name='L91'></a><a href='#L91'>91</a>
151
- <a name='L92'></a><a href='#L92'>92</a>
152
- <a name='L93'></a><a href='#L93'>93</a>
153
- <a name='L94'></a><a href='#L94'>94</a>
154
- <a name='L95'></a><a href='#L95'>95</a>
155
- <a name='L96'></a><a href='#L96'>96</a>
156
- <a name='L97'></a><a href='#L97'>97</a>
157
- <a name='L98'></a><a href='#L98'>98</a>
158
- <a name='L99'></a><a href='#L99'>99</a>
159
- <a name='L100'></a><a href='#L100'>100</a>
160
- <a name='L101'></a><a href='#L101'>101</a>
161
- <a name='L102'></a><a href='#L102'>102</a>
162
- <a name='L103'></a><a href='#L103'>103</a>
163
- <a name='L104'></a><a href='#L104'>104</a>
164
- <a name='L105'></a><a href='#L105'>105</a>
165
- <a name='L106'></a><a href='#L106'>106</a>
166
- <a name='L107'></a><a href='#L107'>107</a>
167
- <a name='L108'></a><a href='#L108'>108</a>
168
- <a name='L109'></a><a href='#L109'>109</a>
169
- <a name='L110'></a><a href='#L110'>110</a>
170
- <a name='L111'></a><a href='#L111'>111</a>
171
- <a name='L112'></a><a href='#L112'>112</a>
172
- <a name='L113'></a><a href='#L113'>113</a>
173
- <a name='L114'></a><a href='#L114'>114</a>
174
- <a name='L115'></a><a href='#L115'>115</a>
175
- <a name='L116'></a><a href='#L116'>116</a>
176
- <a name='L117'></a><a href='#L117'>117</a>
177
- <a name='L118'></a><a href='#L118'>118</a>
178
- <a name='L119'></a><a href='#L119'>119</a>
179
- <a name='L120'></a><a href='#L120'>120</a>
180
- <a name='L121'></a><a href='#L121'>121</a>
181
- <a name='L122'></a><a href='#L122'>122</a>
182
- <a name='L123'></a><a href='#L123'>123</a>
183
- <a name='L124'></a><a href='#L124'>124</a>
184
- <a name='L125'></a><a href='#L125'>125</a>
185
- <a name='L126'></a><a href='#L126'>126</a>
186
- <a name='L127'></a><a href='#L127'>127</a>
187
- <a name='L128'></a><a href='#L128'>128</a>
188
- <a name='L129'></a><a href='#L129'>129</a>
189
- <a name='L130'></a><a href='#L130'>130</a>
190
- <a name='L131'></a><a href='#L131'>131</a>
191
- <a name='L132'></a><a href='#L132'>132</a>
192
- <a name='L133'></a><a href='#L133'>133</a>
193
- <a name='L134'></a><a href='#L134'>134</a>
194
- <a name='L135'></a><a href='#L135'>135</a>
195
- <a name='L136'></a><a href='#L136'>136</a>
196
- <a name='L137'></a><a href='#L137'>137</a>
197
- <a name='L138'></a><a href='#L138'>138</a>
198
- <a name='L139'></a><a href='#L139'>139</a>
199
- <a name='L140'></a><a href='#L140'>140</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">40x</span>
200
- <span class="cline-any cline-yes">40x</span>
201
- <span class="cline-any cline-yes">40x</span>
202
- <span class="cline-any cline-yes">40x</span>
203
- <span class="cline-any cline-yes">40x</span>
204
- <span class="cline-any cline-yes">40x</span>
205
- <span class="cline-any cline-yes">40x</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-yes">12x</span>
209
- <span class="cline-any cline-yes">12x</span>
210
- <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-yes">12x</span>
212
- <span class="cline-any cline-no">&nbsp;</span>
213
- <span class="cline-any cline-no">&nbsp;</span>
214
- <span class="cline-any cline-no">&nbsp;</span>
215
- <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-neutral">&nbsp;</span>
217
- <span class="cline-any cline-yes">12x</span>
218
- <span class="cline-any cline-no">&nbsp;</span>
219
- <span class="cline-any cline-no">&nbsp;</span>
220
- <span class="cline-any cline-neutral">&nbsp;</span>
150
+ <a name='L91'></a><a href='#L91'>91</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
151
+ <span class="cline-any cline-yes">39x</span>
152
+ <span class="cline-any cline-yes">39x</span>
153
+ <span class="cline-any cline-yes">39x</span>
154
+ <span class="cline-any cline-yes">39x</span>
155
+ <span class="cline-any cline-yes">39x</span>
156
+ <span class="cline-any cline-yes">39x</span>
221
157
  <span class="cline-any cline-neutral">&nbsp;</span>
222
158
  <span class="cline-any cline-neutral">&nbsp;</span>
159
+ <span class="cline-any cline-yes">11x</span>
160
+ <span class="cline-any cline-yes">11x</span>
223
161
  <span class="cline-any cline-neutral">&nbsp;</span>
224
- <span class="cline-any cline-yes">12x</span>
225
- <span class="cline-any cline-neutral">&nbsp;</span>
226
- <span class="cline-any cline-yes">12x</span>
227
- <span class="cline-any cline-yes">1x</span>
228
- <span class="cline-any cline-neutral">&nbsp;</span>
229
- <span class="cline-any cline-yes">12x</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-neutral">&nbsp;</span>
233
- <span class="cline-any cline-yes">12x</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
162
+ <span class="cline-any cline-yes">11x</span>
235
163
  <span class="cline-any cline-no">&nbsp;</span>
236
164
  <span class="cline-any cline-no">&nbsp;</span>
237
- <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-no">&nbsp;</span>
239
- <span class="cline-any cline-neutral">&nbsp;</span>
240
165
  <span class="cline-any cline-no">&nbsp;</span>
241
166
  <span class="cline-any cline-neutral">&nbsp;</span>
242
167
  <span class="cline-any cline-neutral">&nbsp;</span>
168
+ <span class="cline-any cline-yes">11x</span>
243
169
  <span class="cline-any cline-no">&nbsp;</span>
244
170
  <span class="cline-any cline-no">&nbsp;</span>
245
171
  <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-no">&nbsp;</span>
247
- <span class="cline-any cline-neutral">&nbsp;</span>
248
172
  <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-yes">12x</span>
250
173
  <span class="cline-any cline-neutral">&nbsp;</span>
251
174
  <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-yes">40x</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-yes">40x</span>
175
+ <span class="cline-any cline-yes">11x</span>
256
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
+ <span class="cline-any cline-yes">11x</span>
257
178
  <span class="cline-any cline-no">&nbsp;</span>
258
179
  <span class="cline-any cline-neutral">&nbsp;</span>
180
+ <span class="cline-any cline-yes">11x</span>
259
181
  <span class="cline-any cline-neutral">&nbsp;</span>
260
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
+ <span class="cline-any cline-yes">39x</span>
261
184
  <span class="cline-any cline-neutral">&nbsp;</span>
262
185
  <span class="cline-any cline-neutral">&nbsp;</span>
186
+ <span class="cline-any cline-yes">39x</span>
187
+ <span class="cline-any cline-neutral">&nbsp;</span>
188
+ <span class="cline-any cline-no">&nbsp;</span>
263
189
  <span class="cline-any cline-neutral">&nbsp;</span>
264
190
  <span class="cline-any cline-neutral">&nbsp;</span>
265
191
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -268,12 +194,8 @@
268
194
  <span class="cline-any cline-neutral">&nbsp;</span>
269
195
  <span class="cline-any cline-neutral">&nbsp;</span>
270
196
  <span class="cline-any cline-neutral">&nbsp;</span>
271
- <span class="cline-any cline-no">&nbsp;</span>
272
197
  <span class="cline-any cline-neutral">&nbsp;</span>
273
198
  <span class="cline-any cline-neutral">&nbsp;</span>
274
- <span class="cline-any cline-yes">40x</span>
275
- <span class="cline-any cline-no">&nbsp;</span>
276
- <span class="cline-any cline-no">&nbsp;</span>
277
199
  <span class="cline-any cline-neutral">&nbsp;</span>
278
200
  <span class="cline-any cline-neutral">&nbsp;</span>
279
201
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -285,56 +207,36 @@
285
207
  <span class="cline-any cline-no">&nbsp;</span>
286
208
  <span class="cline-any cline-neutral">&nbsp;</span>
287
209
  <span class="cline-any cline-neutral">&nbsp;</span>
288
- <span class="cline-any cline-yes">40x</span>
289
- <span class="cline-any cline-yes">12x</span>
290
- <span class="cline-any cline-yes">12x</span>
291
- <span class="cline-any cline-neutral">&nbsp;</span>
292
- <span class="cline-any cline-neutral">&nbsp;</span>
293
- <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-neutral">&nbsp;</span>
295
- <span class="cline-any cline-neutral">&nbsp;</span>
296
- <span class="cline-any cline-yes">12x</span>
297
- <span class="cline-any cline-neutral">&nbsp;</span>
298
- <span class="cline-any cline-neutral">&nbsp;</span>
299
- <span class="cline-any cline-yes">40x</span>
210
+ <span class="cline-any cline-yes">39x</span>
211
+ <span class="cline-any cline-no">&nbsp;</span>
300
212
  <span class="cline-any cline-no">&nbsp;</span>
301
213
  <span class="cline-any cline-neutral">&nbsp;</span>
302
214
  <span class="cline-any cline-neutral">&nbsp;</span>
303
215
  <span class="cline-any cline-neutral">&nbsp;</span>
304
216
  <span class="cline-any cline-neutral">&nbsp;</span>
305
217
  <span class="cline-any cline-no">&nbsp;</span>
306
- <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-neutral">&nbsp;</span>
308
- <span class="cline-any cline-yes">40x</span>
309
218
  <span class="cline-any cline-no">&nbsp;</span>
310
219
  <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
220
  <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-neutral">&nbsp;</span>
316
- <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-yes">40x</span>
318
221
  <span class="cline-any cline-no">&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
222
  <span class="cline-any cline-no">&nbsp;</span>
326
223
  <span class="cline-any cline-neutral">&nbsp;</span>
327
- <span class="cline-any cline-neutral">&nbsp;</span>
328
- <span class="cline-any cline-yes">40x</span>
329
224
  <span class="cline-any cline-no">&nbsp;</span>
330
225
  <span class="cline-any cline-neutral">&nbsp;</span>
331
226
  <span class="cline-any cline-neutral">&nbsp;</span>
227
+ <span class="cline-any cline-yes">39x</span>
228
+ <span class="cline-any cline-yes">11x</span>
229
+ <span class="cline-any cline-yes">11x</span>
230
+ <span class="cline-any cline-neutral">&nbsp;</span>
332
231
  <span class="cline-any cline-neutral">&nbsp;</span>
333
232
  <span class="cline-any cline-neutral">&nbsp;</span>
334
233
  <span class="cline-any cline-neutral">&nbsp;</span>
335
234
  <span class="cline-any cline-neutral">&nbsp;</span>
235
+ <span class="cline-any cline-yes">11x</span>
336
236
  <span class="cline-any cline-no">&nbsp;</span>
337
237
  <span class="cline-any cline-neutral">&nbsp;</span>
238
+ <span class="cline-any cline-yes">11x</span>
239
+ <span class="cline-any cline-neutral">&nbsp;</span>
338
240
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const fetch = require("node-fetch")
339
241
  const env = require("../environment")
340
242
  const { checkSlashesInUrl } = require("./index")
@@ -362,32 +264,12 @@ function request(ctx, request) {
362
264
  } else {
363
265
  delete request.body
364
266
  }
365
- if (ctx &amp;&amp; ctx.headers) {
366
- request.headers = ctx.headers
267
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (ctx &amp;&amp; ctx.headers) {
268
+ <span class="cstat-no" title="statement not covered" > request.headers.cookie = ctx.headers.cookie</span>
367
269
  }
368
270
  return request
369
271
  }
370
272
  &nbsp;
371
- async function checkResponse(response, errorMsg, { ctx } = {}) {
372
- <span class="missing-if-branch" title="if path not taken" >I</span>if (response.status !== 200) {
373
- let error
374
- <span class="cstat-no" title="statement not covered" > try {</span>
375
- <span class="cstat-no" title="statement not covered" > error = await response.json()</span>
376
- } catch (err) {
377
- <span class="cstat-no" title="statement not covered" > error = await response.text()</span>
378
- }
379
- const msg = <span class="cstat-no" title="statement not covered" >`Unable to ${errorMsg} - ${</span>
380
- error.message ? error.message : error
381
- }`
382
- <span class="cstat-no" title="statement not covered" > if (ctx) {</span>
383
- <span class="cstat-no" title="statement not covered" > ctx.throw(400, msg)</span>
384
- } else {
385
- <span class="cstat-no" title="statement not covered" > throw msg</span>
386
- }
387
- }
388
- return response.json()
389
- }
390
- &nbsp;
391
273
  exports.request = request
392
274
  &nbsp;
393
275
  // have to pass in the tenant ID as this could be coming from an automation
@@ -407,17 +289,25 @@ exports.sendSmtpEmail = <span class="fstat-no" title="function not covered" >as<
407
289
  },
408
290
  })
409
291
  )
410
- <span class="cstat-no" title="statement not covered" > return checkResponse(response, "send email")</span>
292
+ &nbsp;
293
+ <span class="cstat-no" title="statement not covered" > if (response.status !== 200) {</span>
294
+ const error = <span class="cstat-no" title="statement not covered" >await response.text()</span>
295
+ <span class="cstat-no" title="statement not covered" > throw `Unable to send email - ${error}`</span>
296
+ }
297
+ <span class="cstat-no" title="statement not covered" > return response.json()</span>
411
298
  }
412
299
  &nbsp;
413
300
  exports.getGlobalSelf = <span class="fstat-no" title="function not covered" >as</span>ync (ctx, appId = <span class="branch-0 cbranch-no" title="branch not covered" >null)</span> =&gt; {
414
- const endpoint = <span class="cstat-no" title="statement not covered" >`/api/global/self`</span>
301
+ const endpoint = <span class="cstat-no" title="statement not covered" >`/api/global/users/self`</span>
415
302
  const response = <span class="cstat-no" title="statement not covered" >await fetch(</span>
416
303
  checkSlashesInUrl(env.WORKER_URL + endpoint),
417
304
  // we don't want to use API key when getting self
418
305
  request(ctx, { method: "GET" })
419
306
  )
420
- let json = <span class="cstat-no" title="statement not covered" >await checkResponse(response, "get self globally", { ctx })</span>
307
+ <span class="cstat-no" title="statement not covered" > if (response.status !== 200) {</span>
308
+ <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Unable to get self globally.")</span>
309
+ }
310
+ let json = <span class="cstat-no" title="statement not covered" >await response.json()</span>
421
311
  <span class="cstat-no" title="statement not covered" > if (appId) {</span>
422
312
  <span class="cstat-no" title="statement not covered" > json = updateAppRole(json)</span>
423
313
  }
@@ -432,47 +322,10 @@ exports.removeAppFromUserRoles = async (ctx, appId) =&gt; {
432
322
  method: "DELETE",
433
323
  })
434
324
  )
435
- return checkResponse(response, "remove app role")
436
- }
437
- &nbsp;
438
- exports.allGlobalUsers = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
439
- const response = <span class="cstat-no" title="statement not covered" >await fetch(</span>
440
- checkSlashesInUrl(env.WORKER_URL + "/api/global/users"),
441
- // we don't want to use API key when getting self
442
- request(ctx, { method: "GET" })
443
- )
444
- <span class="cstat-no" title="statement not covered" > return checkResponse(response, "get users", { ctx })</span>
445
- }
446
- &nbsp;
447
- exports.saveGlobalUser = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
448
- const response = <span class="cstat-no" title="statement not covered" >await fetch(</span>
449
- checkSlashesInUrl(env.WORKER_URL + "/api/global/users"),
450
- // we don't want to use API key when getting self
451
- request(ctx, { method: "POST", body: ctx.request.body })
452
- )
453
- <span class="cstat-no" title="statement not covered" > return checkResponse(response, "save user", { ctx })</span>
454
- }
455
- &nbsp;
456
- exports.deleteGlobalUser = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
457
- const response = <span class="cstat-no" title="statement not covered" >await fetch(</span>
458
- checkSlashesInUrl(
459
- env.WORKER_URL + `/api/global/users/${ctx.params.userId}`
460
- ),
461
- // we don't want to use API key when getting self
462
- request(ctx, { method: "DELETE" })
463
- )
464
- <span class="cstat-no" title="statement not covered" > return checkResponse(response, "delete user", { ctx, body: ctx.request.body })</span>
465
- }
466
- &nbsp;
467
- exports.readGlobalUser = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
468
- const response = <span class="cstat-no" title="statement not covered" >await fetch(</span>
469
- checkSlashesInUrl(
470
- env.WORKER_URL + `/api/global/users/${ctx.params.userId}`
471
- ),
472
- // we don't want to use API key when getting self
473
- request(ctx, { method: "GET" })
474
- )
475
- <span class="cstat-no" title="statement not covered" > return checkResponse(response, "get user", { ctx })</span>
325
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (response.status !== 200) {
326
+ <span class="cstat-no" title="statement not covered" > throw "Unable to remove app role"</span>
327
+ }
328
+ return response.json()
476
329
  }
477
330
  &nbsp;</pre></td></tr></table></pre>
478
331
 
@@ -481,7 +334,7 @@ exports.readGlobalUser = <span class="fstat-no" title="function not covered" >as
481
334
  <div class='footer quiet pad2 space-top1 center small'>
482
335
  Code coverage generated by
483
336
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
484
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
337
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
485
338
  </div>
486
339
  </div>
487
340
  <script src="../prettify.js"></script>