@budibase/server 1.0.47 → 1.0.49-alpha.10

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 (379) hide show
  1. package/__mocks__/arangojs.ts +1 -1
  2. package/__mocks__/aws-sdk.ts +4 -4
  3. package/__mocks__/mongodb.ts +4 -5
  4. package/__mocks__/mssql.ts +3 -3
  5. package/__mocks__/node-fetch.ts +2 -1
  6. package/__mocks__/pg.ts +3 -5
  7. package/builder/assets/{index.937b2767.js → index.506eca43.js} +249 -246
  8. package/builder/assets/index.83c0944f.css +1 -0
  9. package/builder/assets/{vendor.f9faf6ab.js → vendor.d526bfe8.js} +12 -12
  10. package/builder/index.html +3 -3
  11. package/coverage/clover.xml +3069 -2773
  12. package/coverage/coverage-final.json +106 -101
  13. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/application.js.html +257 -152
  16. package/coverage/lcov-report/api/controllers/auth.js.html +22 -13
  17. package/coverage/lcov-report/api/controllers/automation.js.html +39 -69
  18. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/cloud.js.html +8 -11
  20. package/coverage/lcov-report/api/controllers/component.js.html +13 -16
  21. package/coverage/lcov-report/api/controllers/datasource.js.html +81 -51
  22. package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
  23. package/coverage/lcov-report/api/controllers/index.html +76 -76
  24. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
  26. package/coverage/lcov-report/api/controllers/metadata.js.html +6 -21
  27. package/coverage/lcov-report/api/controllers/migrations.js.html +119 -0
  28. package/coverage/lcov-report/api/controllers/permission.js.html +19 -19
  29. package/coverage/lcov-report/api/controllers/query/index.html +10 -10
  30. package/coverage/lcov-report/api/controllers/query/index.js.html +38 -35
  31. package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
  32. package/coverage/lcov-report/api/controllers/role.js.html +16 -16
  33. package/coverage/lcov-report/api/controllers/routing.js.html +7 -10
  34. package/coverage/lcov-report/api/controllers/row/external.js.html +48 -141
  35. package/coverage/lcov-report/api/controllers/row/index.html +55 -40
  36. package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
  37. package/coverage/lcov-report/api/controllers/row/internal.js.html +118 -226
  38. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +52 -34
  39. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +548 -0
  40. package/coverage/lcov-report/api/controllers/row/utils.js.html +47 -62
  41. package/coverage/lcov-report/api/controllers/screen.js.html +15 -21
  42. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  43. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +599 -0
  44. package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
  45. package/coverage/lcov-report/api/controllers/table/index.html +58 -43
  46. package/coverage/lcov-report/api/controllers/table/index.js.html +58 -82
  47. package/coverage/lcov-report/api/controllers/table/internal.js.html +81 -66
  48. package/coverage/lcov-report/api/controllers/table/utils.js.html +282 -111
  49. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  50. package/coverage/lcov-report/api/controllers/user.js.html +47 -50
  51. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  52. package/coverage/lcov-report/api/controllers/view/index.html +16 -16
  53. package/coverage/lcov-report/api/controllers/view/index.js.html +27 -33
  54. package/coverage/lcov-report/api/controllers/view/utils.js.html +35 -20
  55. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  56. package/coverage/lcov-report/api/controllers/webhook.js.html +34 -28
  57. package/coverage/lcov-report/api/index.html +1 -1
  58. package/coverage/lcov-report/api/index.js.html +8 -8
  59. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/index.html +18 -18
  71. package/coverage/lcov-report/api/routes/index.js.html +3 -3
  72. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/{hosting.js.html → migrations.js.html} +17 -14
  76. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  81. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  82. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  83. package/coverage/lcov-report/api/routes/static.js.html +17 -2
  84. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  85. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  86. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  87. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  88. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  89. package/coverage/lcov-report/automations/actions.js.html +24 -24
  90. package/coverage/lcov-report/automations/automationUtils.js.html +7 -10
  91. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  92. package/coverage/lcov-report/automations/index.html +18 -18
  93. package/coverage/lcov-report/automations/index.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  95. package/coverage/lcov-report/automations/steps/createRow.js.html +13 -22
  96. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  97. package/coverage/lcov-report/automations/steps/deleteRow.js.html +11 -20
  98. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  99. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  100. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  101. package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
  102. package/coverage/lcov-report/automations/steps/index.html +13 -13
  103. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  104. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  105. package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
  106. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  107. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  108. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  109. package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
  110. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  111. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  112. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  113. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  114. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  115. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  116. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  117. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  118. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  119. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  120. package/coverage/lcov-report/automations/triggers.js.html +61 -55
  121. package/coverage/lcov-report/automations/utils.js.html +54 -42
  122. package/coverage/lcov-report/constants/index.html +11 -11
  123. package/coverage/lcov-report/constants/index.js.html +68 -32
  124. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  125. package/coverage/lcov-report/constants/screens.js.html +4 -4
  126. package/coverage/lcov-report/db/client.js.html +18 -18
  127. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  128. package/coverage/lcov-report/db/index.html +15 -15
  129. package/coverage/lcov-report/db/index.js.html +3 -3
  130. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +25 -37
  131. package/coverage/lcov-report/db/linkedRows/index.html +27 -27
  132. package/coverage/lcov-report/db/linkedRows/index.js.html +51 -96
  133. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +42 -42
  134. package/coverage/lcov-report/db/newid.js.html +4 -4
  135. package/coverage/lcov-report/db/utils.js.html +87 -87
  136. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  137. package/coverage/lcov-report/events/index.html +1 -1
  138. package/coverage/lcov-report/events/index.js.html +5 -5
  139. package/coverage/lcov-report/events/utils.js.html +3 -3
  140. package/coverage/lcov-report/index.html +138 -123
  141. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  142. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  143. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  144. package/coverage/lcov-report/middleware/authorized.js.html +173 -65
  145. package/coverage/lcov-report/middleware/builder.js.html +10 -10
  146. package/coverage/lcov-report/middleware/currentapp.js.html +95 -83
  147. package/coverage/lcov-report/middleware/index.html +38 -38
  148. package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
  149. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  150. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  151. package/coverage/lcov-report/middleware/usageQuota.js.html +281 -53
  152. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  153. package/coverage/lcov-report/threads/automation.js.html +30 -24
  154. package/coverage/lcov-report/threads/index.html +26 -26
  155. package/coverage/lcov-report/threads/index.js.html +10 -10
  156. package/coverage/lcov-report/threads/query.js.html +36 -42
  157. package/coverage/lcov-report/threads/utils.js.html +14 -14
  158. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  159. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  160. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  161. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  162. package/coverage/lcov-report/utilities/global.js.html +58 -49
  163. package/coverage/lcov-report/utilities/index.html +37 -37
  164. package/coverage/lcov-report/utilities/index.js.html +43 -73
  165. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
  166. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  167. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  168. package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
  169. package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
  170. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +97 -103
  171. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +75 -27
  172. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  173. package/coverage/lcov-report/utilities/security.js.html +8 -8
  174. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  175. package/coverage/lcov-report/utilities/usageQuota/index.html +141 -0
  176. package/coverage/lcov-report/utilities/usageQuota/index.js.html +359 -0
  177. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +305 -0
  178. package/coverage/lcov-report/{api/controllers/hosting.js.html → utilities/usageQuota/usageQuoteReset.js.html} +36 -48
  179. package/coverage/lcov-report/utilities/users.js.html +9 -9
  180. package/coverage/lcov-report/utilities/workerRequests.js.html +43 -112
  181. package/coverage/lcov.info +4989 -4390
  182. package/dist/api/controllers/application.js +90 -60
  183. package/dist/api/controllers/auth.js +8 -5
  184. package/dist/api/controllers/automation.js +14 -19
  185. package/dist/api/controllers/cloud.js +2 -3
  186. package/dist/api/controllers/component.js +3 -4
  187. package/dist/api/controllers/datasource.js +20 -10
  188. package/dist/api/controllers/deploy/Deployment.js +3 -6
  189. package/dist/api/controllers/deploy/index.js +12 -13
  190. package/dist/api/controllers/dev.js +5 -5
  191. package/dist/api/controllers/layout.js +3 -3
  192. package/dist/api/controllers/metadata.js +4 -4
  193. package/dist/api/controllers/migrations.js +21 -0
  194. package/dist/api/controllers/permission.js +4 -4
  195. package/dist/api/controllers/query/import/index.js +4 -6
  196. package/dist/api/controllers/query/index.js +11 -10
  197. package/dist/api/controllers/role.js +5 -5
  198. package/dist/api/controllers/routing.js +5 -6
  199. package/dist/api/controllers/row/ExternalRequest.js +89 -65
  200. package/dist/api/controllers/row/external.js +14 -22
  201. package/dist/api/controllers/row/internal.js +55 -93
  202. package/dist/api/controllers/row/internalSearch.js +23 -17
  203. package/dist/api/controllers/row/staticFormula.js +147 -0
  204. package/dist/api/controllers/row/utils.js +13 -14
  205. package/dist/api/controllers/screen.js +5 -7
  206. package/dist/api/controllers/static/index.js +61 -12
  207. package/dist/api/controllers/table/bulkFormula.js +159 -0
  208. package/dist/api/controllers/table/external.js +7 -10
  209. package/dist/api/controllers/table/index.js +16 -13
  210. package/dist/api/controllers/table/internal.js +22 -16
  211. package/dist/api/controllers/table/utils.js +77 -37
  212. package/dist/api/controllers/user.js +18 -20
  213. package/dist/api/controllers/view/index.js +8 -10
  214. package/dist/api/controllers/view/utils.js +9 -4
  215. package/dist/api/controllers/webhook.js +10 -8
  216. package/dist/api/routes/index.js +2 -2
  217. package/dist/api/routes/migrations.js +9 -0
  218. package/dist/api/routes/static.js +2 -1
  219. package/dist/api/routes/tests/utilities/TestFunctions.js +37 -17
  220. package/dist/app.js +35 -5
  221. package/dist/automations/automationUtils.js +2 -3
  222. package/dist/automations/steps/createRow.js +3 -5
  223. package/dist/automations/steps/deleteRow.js +1 -4
  224. package/dist/automations/steps/updateRow.js +1 -1
  225. package/dist/automations/triggers.js +27 -25
  226. package/dist/automations/utils.js +10 -5
  227. package/dist/constants/index.js +12 -5
  228. package/dist/db/linkedRows/LinkController.js +3 -7
  229. package/dist/db/linkedRows/index.js +16 -27
  230. package/dist/db/linkedRows/linkUtils.js +6 -6
  231. package/dist/db/views/staticViews.js +9 -10
  232. package/dist/definitions/datasource.js +1 -0
  233. package/dist/environment.js +4 -1
  234. package/dist/integrations/base/sql.js +56 -14
  235. package/dist/integrations/googlesheets.js +340 -0
  236. package/dist/integrations/index.js +3 -0
  237. package/dist/integrations/utils.js +60 -8
  238. package/dist/middleware/authorized.js +57 -30
  239. package/dist/middleware/builder.js +2 -2
  240. package/dist/middleware/currentapp.js +41 -37
  241. package/dist/middleware/usageQuota.js +82 -15
  242. package/dist/migrations/functions/appUrls.js +46 -0
  243. package/dist/migrations/functions/quotas1.js +50 -0
  244. package/dist/migrations/functions/usageQuotas/index.js +20 -0
  245. package/dist/migrations/functions/usageQuotas/syncApps.js +29 -0
  246. package/dist/migrations/functions/usageQuotas/syncRows.js +33 -0
  247. package/dist/migrations/functions/userEmailViewCasing.js +24 -0
  248. package/dist/migrations/index.js +62 -0
  249. package/dist/package.json +8 -5
  250. package/dist/tests/utilities/TestConfiguration.js +80 -50
  251. package/dist/threads/automation.js +13 -11
  252. package/dist/threads/query.js +17 -19
  253. package/dist/tsconfig.tsbuildinfo +1 -1
  254. package/dist/utilities/fileSystem/index.js +4 -3
  255. package/dist/utilities/global.js +15 -12
  256. package/dist/utilities/index.js +7 -17
  257. package/dist/utilities/routing/index.js +5 -5
  258. package/dist/utilities/rowProcessor/index.js +23 -17
  259. package/dist/utilities/rowProcessor/utils.js +14 -4
  260. package/dist/utilities/{usageQuota.js → usageQuota/index.js} +45 -31
  261. package/dist/utilities/usageQuota/rows.js +78 -0
  262. package/dist/utilities/usageQuota/usageQuoteReset.js +16 -0
  263. package/dist/utilities/users.js +3 -3
  264. package/dist/utilities/workerRequests.js +4 -24
  265. package/nodemon.json +1 -1
  266. package/package.json +9 -6
  267. package/scripts/integrations/postgres/init.sql +11 -6
  268. package/scripts/likeCypress.ts +1 -1
  269. package/src/api/controllers/application.js +85 -50
  270. package/src/api/controllers/auth.js +8 -5
  271. package/src/api/controllers/automation.js +13 -23
  272. package/src/api/controllers/cloud.js +2 -3
  273. package/src/api/controllers/component.js +3 -4
  274. package/src/api/controllers/datasource.js +21 -11
  275. package/src/api/controllers/deploy/Deployment.js +3 -7
  276. package/src/api/controllers/deploy/index.js +20 -13
  277. package/src/api/controllers/dev.js +5 -5
  278. package/src/api/controllers/layout.js +3 -3
  279. package/src/api/controllers/metadata.js +4 -9
  280. package/src/api/controllers/migrations.js +13 -0
  281. package/src/api/controllers/permission.js +4 -4
  282. package/src/api/controllers/query/import/index.ts +4 -6
  283. package/src/api/controllers/query/import/tests/index.spec.js +2 -1
  284. package/src/api/controllers/query/index.js +11 -10
  285. package/src/api/controllers/role.js +5 -5
  286. package/src/api/controllers/routing.js +5 -6
  287. package/src/api/controllers/row/ExternalRequest.ts +66 -42
  288. package/src/api/controllers/row/external.js +27 -58
  289. package/src/api/controllers/row/internal.js +54 -90
  290. package/src/api/controllers/row/internalSearch.js +23 -17
  291. package/src/api/controllers/row/staticFormula.js +156 -0
  292. package/src/api/controllers/row/utils.js +13 -18
  293. package/src/api/controllers/screen.js +5 -7
  294. package/src/api/controllers/static/index.js +65 -12
  295. package/src/api/controllers/table/bulkFormula.js +173 -0
  296. package/src/api/controllers/table/external.js +7 -10
  297. package/src/api/controllers/table/index.js +20 -28
  298. package/src/api/controllers/table/internal.js +24 -19
  299. package/src/api/controllers/table/utils.js +101 -44
  300. package/src/api/controllers/user.js +19 -20
  301. package/src/api/controllers/view/index.js +8 -10
  302. package/src/api/controllers/view/utils.js +9 -4
  303. package/src/api/controllers/webhook.js +10 -8
  304. package/src/api/routes/index.js +2 -2
  305. package/src/api/routes/migrations.js +14 -0
  306. package/src/api/routes/static.js +5 -0
  307. package/src/api/routes/tests/application.spec.js +2 -2
  308. package/src/api/routes/tests/auth.spec.js +1 -2
  309. package/src/api/routes/tests/automation.spec.js +1 -0
  310. package/src/api/routes/tests/misc.spec.js +0 -1
  311. package/src/api/routes/tests/routing.spec.js +21 -12
  312. package/src/api/routes/tests/row.spec.js +7 -4
  313. package/src/api/routes/tests/static.spec.js +98 -0
  314. package/src/api/routes/tests/utilities/TestFunctions.js +39 -17
  315. package/src/app.ts +18 -5
  316. package/src/automations/automationUtils.js +2 -3
  317. package/src/automations/steps/createRow.js +2 -5
  318. package/src/automations/steps/deleteRow.js +1 -4
  319. package/src/automations/steps/updateRow.js +1 -1
  320. package/src/automations/triggers.js +33 -31
  321. package/src/automations/utils.js +9 -5
  322. package/src/constants/index.js +17 -5
  323. package/src/db/linkedRows/LinkController.js +3 -7
  324. package/src/db/linkedRows/index.js +16 -31
  325. package/src/db/linkedRows/linkUtils.js +6 -6
  326. package/src/db/tests/linkController.spec.js +0 -1
  327. package/src/db/tests/linkTests.spec.js +5 -6
  328. package/src/db/views/staticViews.js +8 -10
  329. package/src/definitions/common.ts +3 -0
  330. package/src/definitions/datasource.ts +3 -0
  331. package/src/environment.js +4 -1
  332. package/src/integrations/base/sql.ts +69 -21
  333. package/src/integrations/googlesheets.ts +353 -0
  334. package/src/integrations/index.ts +3 -0
  335. package/src/integrations/tests/sql.spec.js +16 -0
  336. package/src/integrations/utils.ts +75 -11
  337. package/src/middleware/authorized.js +66 -30
  338. package/src/middleware/builder.js +2 -2
  339. package/src/middleware/currentapp.js +50 -46
  340. package/src/middleware/tests/authorized.spec.js +13 -6
  341. package/src/middleware/tests/currentapp.spec.js +6 -0
  342. package/src/middleware/tests/usageQuota.spec.js +18 -24
  343. package/src/middleware/usageQuota.js +93 -17
  344. package/src/migrations/functions/appUrls.ts +34 -0
  345. package/src/migrations/functions/quotas1.ts +20 -0
  346. package/src/migrations/functions/tests/appUrls.spec.js +29 -0
  347. package/src/migrations/functions/tests/quotas1.spec.js +27 -0
  348. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
  349. package/src/migrations/functions/usageQuotas/index.ts +8 -0
  350. package/src/migrations/functions/usageQuotas/syncApps.ts +18 -0
  351. package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
  352. package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +37 -0
  353. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +43 -0
  354. package/src/migrations/functions/userEmailViewCasing.ts +13 -0
  355. package/src/migrations/index.ts +56 -0
  356. package/src/module.d.ts +3 -0
  357. package/src/tests/utilities/TestConfiguration.js +82 -55
  358. package/src/threads/automation.js +17 -15
  359. package/src/threads/query.js +19 -21
  360. package/src/utilities/fileSystem/index.js +4 -3
  361. package/src/utilities/global.js +15 -12
  362. package/src/utilities/index.js +7 -17
  363. package/src/utilities/routing/index.js +5 -5
  364. package/src/utilities/rowProcessor/index.js +25 -27
  365. package/src/utilities/rowProcessor/utils.js +23 -7
  366. package/src/utilities/tests/usageQuota/usageQuota.spec.js +72 -0
  367. package/src/utilities/usageQuota/index.js +93 -0
  368. package/src/utilities/usageQuota/rows.js +75 -0
  369. package/src/utilities/usageQuota/usageQuoteReset.js +18 -0
  370. package/src/utilities/users.js +3 -3
  371. package/src/utilities/workerRequests.js +4 -27
  372. package/tsconfig.json +2 -1
  373. package/builder/assets/index.39e01193.css +0 -1
  374. package/dist/api/controllers/hosting.js +0 -30
  375. package/dist/api/routes/hosting.js +0 -11
  376. package/src/api/controllers/hosting.js +0 -22
  377. package/src/api/routes/hosting.js +0 -13
  378. package/src/api/routes/tests/hosting.spec.js +0 -36
  379. package/src/utilities/usageQuota.js +0 -73
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">84.55% </span>
26
+ <span class="strong">84.43% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>219/259</span>
28
+ <span class='fraction'>217/257</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">63.71% </span>
33
+ <span class="strong">63.96% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>72/113</span>
35
+ <span class='fraction'>71/111</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">91.89% </span>
40
+ <span class="strong">92.3% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>34/37</span>
42
+ <span class='fraction'>36/39</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">85.03% </span>
47
+ <span class="strong">84.92% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>216/254</span>
49
+ <span class='fraction'>214/252</span>
50
50
  </div>
51
51
 
52
52
 
@@ -74,17 +74,17 @@
74
74
  </thead>
75
75
  <tbody><tr>
76
76
  <td class="file high" data-value="automation.js"><a href="automation.js.html">automation.js</a></td>
77
- <td data-value="84.21" class="pic high">
77
+ <td data-value="84.41" class="pic high">
78
78
  <div class="chart"><div class="cover-fill" style="width: 84%"></div><div class="cover-empty" style="width: 16%"></div></div>
79
79
  </td>
80
- <td data-value="84.21" class="pct high">84.21%</td>
81
- <td data-value="76" class="abs high">64/76</td>
80
+ <td data-value="84.41" class="pct high">84.41%</td>
81
+ <td data-value="77" class="abs high">65/77</td>
82
82
  <td data-value="56.52" class="pct medium">56.52%</td>
83
83
  <td data-value="23" class="abs medium">13/23</td>
84
- <td data-value="90" class="pct high">90%</td>
85
- <td data-value="10" class="abs high">9/10</td>
86
- <td data-value="84.21" class="pct high">84.21%</td>
87
- <td data-value="76" class="abs high">64/76</td>
84
+ <td data-value="90.9" class="pct high">90.9%</td>
85
+ <td data-value="11" class="abs high">10/11</td>
86
+ <td data-value="84.41" class="pct high">84.41%</td>
87
+ <td data-value="77" class="abs high">65/77</td>
88
88
  </tr>
89
89
 
90
90
  <tr>
@@ -104,17 +104,17 @@
104
104
 
105
105
  <tr>
106
106
  <td class="file high" data-value="query.js"><a href="query.js.html">query.js</a></td>
107
- <td data-value="87.06" class="pic high">
108
- <div class="chart"><div class="cover-fill" style="width: 87%"></div><div class="cover-empty" style="width: 13%"></div></div>
107
+ <td data-value="86.72" class="pic high">
108
+ <div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
109
109
  </td>
110
- <td data-value="87.06" class="pct high">87.06%</td>
111
- <td data-value="116" class="abs high">101/116</td>
112
- <td data-value="68.96" class="pct medium">68.96%</td>
113
- <td data-value="58" class="abs medium">40/58</td>
114
- <td data-value="92.3" class="pct high">92.3%</td>
115
- <td data-value="13" class="abs high">12/13</td>
116
- <td data-value="87.5" class="pct high">87.5%</td>
117
- <td data-value="112" class="abs high">98/112</td>
110
+ <td data-value="86.72" class="pct high">86.72%</td>
111
+ <td data-value="113" class="abs high">98/113</td>
112
+ <td data-value="69.64" class="pct medium">69.64%</td>
113
+ <td data-value="56" class="abs medium">39/56</td>
114
+ <td data-value="92.85" class="pct high">92.85%</td>
115
+ <td data-value="14" class="abs high">13/14</td>
116
+ <td data-value="87.15" class="pct high">87.15%</td>
117
+ <td data-value="109" class="abs high">95/109</td>
118
118
  </tr>
119
119
 
120
120
  <tr>
@@ -140,7 +140,7 @@
140
140
  <div class='footer quiet pad2 space-top1 center small'>
141
141
  Code coverage generated by
142
142
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
143
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
143
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
144
144
  </div>
145
145
  </div>
146
146
  <script src="../prettify.js"></script>
@@ -123,10 +123,10 @@
123
123
  <a name='L64'></a><a href='#L64'>64</a>
124
124
  <a name='L65'></a><a href='#L65'>65</a>
125
125
  <a name='L66'></a><a href='#L66'>66</a>
126
- <a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
127
- <span class="cline-any cline-yes">34x</span>
126
+ <a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
127
+ <span class="cline-any cline-yes">39x</span>
128
128
  <span class="cline-any cline-neutral">&nbsp;</span>
129
- <span class="cline-any cline-yes">34x</span>
129
+ <span class="cline-any cline-yes">39x</span>
130
130
  <span class="cline-any cline-neutral">&nbsp;</span>
131
131
  <span class="cline-any cline-neutral">&nbsp;</span>
132
132
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -148,14 +148,14 @@
148
148
  <span class="cline-any cline-neutral">&nbsp;</span>
149
149
  <span class="cline-any cline-neutral">&nbsp;</span>
150
150
  <span class="cline-any cline-neutral">&nbsp;</span>
151
- <span class="cline-any cline-yes">67x</span>
152
- <span class="cline-any cline-yes">67x</span>
153
- <span class="cline-any cline-yes">67x</span>
151
+ <span class="cline-any cline-yes">77x</span>
152
+ <span class="cline-any cline-yes">77x</span>
153
+ <span class="cline-any cline-yes">77x</span>
154
154
  <span class="cline-any cline-neutral">&nbsp;</span>
155
155
  <span class="cline-any cline-neutral">&nbsp;</span>
156
156
  <span class="cline-any cline-neutral">&nbsp;</span>
157
157
  <span class="cline-any cline-neutral">&nbsp;</span>
158
- <span class="cline-any cline-yes">67x</span>
158
+ <span class="cline-any cline-yes">77x</span>
159
159
  <span class="cline-any cline-no">&nbsp;</span>
160
160
  <span class="cline-any cline-neutral">&nbsp;</span>
161
161
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -187,8 +187,8 @@
187
187
  <span class="cline-any cline-neutral">&nbsp;</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
189
  <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-yes">34x</span>
191
- <span class="cline-any cline-yes">34x</span>
190
+ <span class="cline-any cline-yes">39x</span>
191
+ <span class="cline-any cline-yes">39x</span>
192
192
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const workerFarm = require("worker-farm")
193
193
  const env = require("../environment")
194
194
  &nbsp;
@@ -262,7 +262,7 @@ module.exports.ThreadType = ThreadType
262
262
  <div class='footer quiet pad2 space-top1 center small'>
263
263
  Code coverage generated by
264
264
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
265
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
265
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
266
266
  </div>
267
267
  </div>
268
268
  <script src="../prettify.js"></script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">87.06% </span>
26
+ <span class="strong">86.72% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>101/116</span>
28
+ <span class='fraction'>98/113</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">68.96% </span>
33
+ <span class="strong">69.64% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>40/58</span>
35
+ <span class='fraction'>39/56</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">92.3% </span>
40
+ <span class="strong">92.85% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>12/13</span>
42
+ <span class='fraction'>13/14</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">87.5% </span>
47
+ <span class="strong">87.15% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>98/112</span>
49
+ <span class='fraction'>95/109</span>
50
50
  </div>
51
51
 
52
52
 
@@ -284,18 +284,13 @@
284
284
  <a name='L225'></a><a href='#L225'>225</a>
285
285
  <a name='L226'></a><a href='#L226'>226</a>
286
286
  <a name='L227'></a><a href='#L227'>227</a>
287
- <a name='L228'></a><a href='#L228'>228</a>
288
- <a name='L229'></a><a href='#L229'>229</a>
289
- <a name='L230'></a><a href='#L230'>230</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
287
+ <a name='L228'></a><a href='#L228'>228</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
290
288
  <span class="cline-any cline-yes">2x</span>
291
289
  <span class="cline-any cline-yes">2x</span>
292
290
  <span class="cline-any cline-yes">2x</span>
293
291
  <span class="cline-any cline-yes">2x</span>
294
292
  <span class="cline-any cline-yes">2x</span>
295
293
  <span class="cline-any cline-neutral">&nbsp;</span>
296
- <span class="cline-any cline-yes">2x</span>
297
- <span class="cline-any cline-yes">2x</span>
298
- <span class="cline-any cline-neutral">&nbsp;</span>
299
294
  <span class="cline-any cline-neutral">&nbsp;</span>
300
295
  <span class="cline-any cline-neutral">&nbsp;</span>
301
296
  <span class="cline-any cline-yes">15x</span>
@@ -307,7 +302,6 @@
307
302
  <span class="cline-any cline-yes">15x</span>
308
303
  <span class="cline-any cline-yes">15x</span>
309
304
  <span class="cline-any cline-yes">15x</span>
310
- <span class="cline-any cline-yes">15x</span>
311
305
  <span class="cline-any cline-neutral">&nbsp;</span>
312
306
  <span class="cline-any cline-neutral">&nbsp;</span>
313
307
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -368,6 +362,11 @@
368
362
  <span class="cline-any cline-neutral">&nbsp;</span>
369
363
  <span class="cline-any cline-neutral">&nbsp;</span>
370
364
  <span class="cline-any cline-yes">13x</span>
365
+ <span class="cline-any cline-no">&nbsp;</span>
366
+ <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-neutral">&nbsp;</span>
368
+ <span class="cline-any cline-neutral">&nbsp;</span>
369
+ <span class="cline-any cline-yes">13x</span>
371
370
  <span class="cline-any cline-yes">11x</span>
372
371
  <span class="cline-any cline-neutral">&nbsp;</span>
373
372
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -403,7 +402,6 @@
403
402
  <span class="cline-any cline-neutral">&nbsp;</span>
404
403
  <span class="cline-any cline-neutral">&nbsp;</span>
405
404
  <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
405
  <span class="cline-any cline-yes">6x</span>
408
406
  <span class="cline-any cline-yes">6x</span>
409
407
  <span class="cline-any cline-yes">6x</span>
@@ -475,10 +473,6 @@
475
473
  <span class="cline-any cline-neutral">&nbsp;</span>
476
474
  <span class="cline-any cline-yes">19x</span>
477
475
  <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-yes">19x</span>
479
- <span class="cline-any cline-no">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-yes">19x</span>
482
476
  <span class="cline-any cline-neutral">&nbsp;</span>
483
477
  <span class="cline-any cline-neutral">&nbsp;</span>
484
478
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -508,6 +502,7 @@
508
502
  <span class="cline-any cline-yes">2x</span>
509
503
  <span class="cline-any cline-yes">10x</span>
510
504
  <span class="cline-any cline-yes">10x</span>
505
+ <span class="cline-any cline-yes">10x</span>
511
506
  <span class="cline-any cline-neutral">&nbsp;</span>
512
507
  <span class="cline-any cline-yes">8x</span>
513
508
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -515,19 +510,16 @@
515
510
  <span class="cline-any cline-yes">2x</span>
516
511
  <span class="cline-any cline-neutral">&nbsp;</span>
517
512
  <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
518
514
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const threadUtils = require("./utils")
519
515
  threadUtils.threadSetup()
520
516
  const ScriptRunner = require("../utilities/scriptRunner")
521
517
  const { integrations } = require("../integrations")
522
518
  const { processStringSync } = require("@budibase/string-templates")
523
- const CouchDB = require("../db")
524
- &nbsp;
525
- const IS_TRIPLE_BRACE = new RegExp(/^{{3}.*}{3}$/)
526
- const IS_HANDLEBARS = new RegExp(/^{{2}.*}{2}$/)
519
+ const { doInAppContext, getAppDB } = require("@budibase/backend-core/context")
527
520
  &nbsp;
528
521
  class QueryRunner {
529
522
  constructor(input, flags = { noRecursiveQuery: false }) {
530
- this.appId = input.appId
531
523
  this.datasource = input.datasource
532
524
  this.queryVerb = input.queryVerb
533
525
  this.fields = input.fields
@@ -594,6 +586,11 @@ class QueryRunner {
594
586
  await threadUtils.invalidateDynamicVariables(this.cachedVariables)
595
587
  return this.execute()
596
588
  }
589
+ &nbsp;
590
+ // check for undefined response
591
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!rows) {
592
+ <span class="cstat-no" title="statement not covered" > rows = []</span>
593
+ }
597
594
  &nbsp;
598
595
  // needs to an array for next step
599
596
  if (!Array.isArray(rows)) {
@@ -616,12 +613,11 @@ class QueryRunner {
616
613
  }
617
614
  &nbsp;
618
615
  async runAnotherQuery(queryId, parameters) {
619
- const db = new CouchDB(this.appId)
616
+ const db = getAppDB()
620
617
  const query = await db.get(queryId)
621
618
  const datasource = await db.get(query.datasourceId)
622
619
  return new QueryRunner(
623
620
  {
624
- appId: this.appId,
625
621
  datasource,
626
622
  queryVerb: query.queryVerb,
627
623
  fields: query.fields,
@@ -702,12 +698,8 @@ class QueryRunner {
702
698
  <span class="cstat-no" title="statement not covered" > enrichedQuery[key] = this.enrichQueryFields(fields[key], parameters)</span>
703
699
  } else if (typeof fields[key] === "string") {
704
700
  // enrich string value as normal
705
- let value = fields[key]
706
- // add triple brace to avoid escaping e.g. '=' in cookie header
707
- <span class="missing-if-branch" title="if path not taken" >I</span>if (IS_HANDLEBARS.test(value) &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >!IS_TRIPLE_BRACE.test(value))</span> {
708
- <span class="cstat-no" title="statement not covered" > value = `{${value}}`</span>
709
- }
710
- enrichedQuery[key] = processStringSync(value, parameters, {
701
+ enrichedQuery[key] = processStringSync(fields[key], parameters, {
702
+ noEscaping: true,
711
703
  noHelpers: true,
712
704
  })
713
705
  } else <span class="missing-if-branch" title="else path not taken" >E</span>{
@@ -735,14 +727,16 @@ class QueryRunner {
735
727
  }
736
728
  &nbsp;
737
729
  module.exports = (input, callback) =&gt; {
738
- const Runner = new QueryRunner(input)
739
- Runner.execute()
740
- .then(response =&gt; {
741
- callback(null, response)
742
- })
743
- .catch(err =&gt; {
744
- callback(err)
745
- })
730
+ doInAppContext(input.appId, () =&gt; {
731
+ const Runner = new QueryRunner(input)
732
+ Runner.execute()
733
+ .then(response =&gt; {
734
+ callback(null, response)
735
+ })
736
+ .catch(err =&gt; {
737
+ callback(err)
738
+ })
739
+ })
746
740
  }
747
741
  &nbsp;</pre></td></tr></table></pre>
748
742
 
@@ -751,7 +745,7 @@ module.exports = (input, callback) =&gt; {
751
745
  <div class='footer quiet pad2 space-top1 center small'>
752
746
  Code coverage generated by
753
747
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
754
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
748
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
755
749
  </div>
756
750
  </div>
757
751
  <script src="../prettify.js"></script>
@@ -135,13 +135,13 @@
135
135
  <a name='L76'></a><a href='#L76'>76</a>
136
136
  <a name='L77'></a><a href='#L77'>77</a>
137
137
  <a name='L78'></a><a href='#L78'>78</a>
138
- <a name='L79'></a><a href='#L79'>79</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
139
- <span class="cline-any cline-yes">34x</span>
140
- <span class="cline-any cline-yes">34x</span>
141
- <span class="cline-any cline-yes">34x</span>
142
- <span class="cline-any cline-yes">34x</span>
138
+ <a name='L79'></a><a href='#L79'>79</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
139
+ <span class="cline-any cline-yes">39x</span>
140
+ <span class="cline-any cline-yes">39x</span>
141
+ <span class="cline-any cline-yes">39x</span>
142
+ <span class="cline-any cline-yes">39x</span>
143
143
  <span class="cline-any cline-neutral">&nbsp;</span>
144
- <span class="cline-any cline-yes">34x</span>
144
+ <span class="cline-any cline-yes">39x</span>
145
145
  <span class="cline-any cline-neutral">&nbsp;</span>
146
146
  <span class="cline-any cline-neutral">&nbsp;</span>
147
147
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -151,11 +151,11 @@
151
151
  <span class="cline-any cline-yes">19x</span>
152
152
  <span class="cline-any cline-neutral">&nbsp;</span>
153
153
  <span class="cline-any cline-neutral">&nbsp;</span>
154
- <span class="cline-any cline-yes">34x</span>
154
+ <span class="cline-any cline-yes">39x</span>
155
155
  <span class="cline-any cline-no">&nbsp;</span>
156
156
  <span class="cline-any cline-neutral">&nbsp;</span>
157
157
  <span class="cline-any cline-neutral">&nbsp;</span>
158
- <span class="cline-any cline-yes">34x</span>
158
+ <span class="cline-any cline-yes">39x</span>
159
159
  <span class="cline-any cline-neutral">&nbsp;</span>
160
160
  <span class="cline-any cline-yes">6x</span>
161
161
  <span class="cline-any cline-yes">6x</span>
@@ -169,12 +169,12 @@
169
169
  <span class="cline-any cline-yes">19x</span>
170
170
  <span class="cline-any cline-neutral">&nbsp;</span>
171
171
  <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-yes">34x</span>
172
+ <span class="cline-any cline-yes">39x</span>
173
173
  <span class="cline-any cline-yes">11x</span>
174
174
  <span class="cline-any cline-yes">11x</span>
175
175
  <span class="cline-any cline-neutral">&nbsp;</span>
176
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
- <span class="cline-any cline-yes">34x</span>
177
+ <span class="cline-any cline-yes">39x</span>
178
178
  <span class="cline-any cline-yes">3x</span>
179
179
  <span class="cline-any cline-yes">3x</span>
180
180
  <span class="cline-any cline-yes">3x</span>
@@ -185,7 +185,7 @@
185
185
  <span class="cline-any cline-yes">3x</span>
186
186
  <span class="cline-any cline-neutral">&nbsp;</span>
187
187
  <span class="cline-any cline-neutral">&nbsp;</span>
188
- <span class="cline-any cline-yes">34x</span>
188
+ <span class="cline-any cline-yes">39x</span>
189
189
  <span class="cline-any cline-yes">5x</span>
190
190
  <span class="cline-any cline-yes">5x</span>
191
191
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -194,7 +194,7 @@
194
194
  <span class="cline-any cline-neutral">&nbsp;</span>
195
195
  <span class="cline-any cline-neutral">&nbsp;</span>
196
196
  <span class="cline-any cline-neutral">&nbsp;</span>
197
- <span class="cline-any cline-yes">34x</span>
197
+ <span class="cline-any cline-yes">39x</span>
198
198
  <span class="cline-any cline-yes">14x</span>
199
199
  <span class="cline-any cline-no">&nbsp;</span>
200
200
  <span class="cline-any cline-no">&nbsp;</span>
@@ -205,7 +205,7 @@
205
205
  <span class="cline-any cline-yes">14x</span>
206
206
  <span class="cline-any cline-neutral">&nbsp;</span>
207
207
  <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-yes">34x</span>
208
+ <span class="cline-any cline-yes">39x</span>
209
209
  <span class="cline-any cline-yes">14x</span>
210
210
  <span class="cline-any cline-neutral">&nbsp;</span>
211
211
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -298,7 +298,7 @@ exports.hasExtraData = response =&gt; {
298
298
  <div class='footer quiet pad2 space-top1 center small'>
299
299
  Code coverage generated by
300
300
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
301
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
301
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
302
302
  </div>
303
303
  </div>
304
304
  <script src="../prettify.js"></script>
@@ -109,7 +109,7 @@ const SALT_ROUNDS = <span class="cstat-no" title="statement not covered" >env.SA
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">istanbul</a>
112
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
112
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
113
113
  </div>
114
114
  </div>
115
115
  <script src="../prettify.js"></script>
@@ -67,16 +67,16 @@
67
67
  <a name='L8'></a><a href='#L8'>8</a>
68
68
  <a name='L9'></a><a href='#L9'>9</a>
69
69
  <a name='L10'></a><a href='#L10'>10</a>
70
- <a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
71
- <span class="cline-any cline-yes">34x</span>
72
- <span class="cline-any cline-yes">34x</span>
73
- <span class="cline-any cline-yes">34x</span>
70
+ <a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
71
+ <span class="cline-any cline-yes">39x</span>
72
+ <span class="cline-any cline-yes">39x</span>
73
+ <span class="cline-any cline-yes">39x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">34x</span>
75
+ <span class="cline-any cline-yes">39x</span>
76
76
  <span class="cline-any cline-no">&nbsp;</span>
77
77
  <span class="cline-any cline-neutral">&nbsp;</span>
78
78
  <span class="cline-any cline-neutral">&nbsp;</span>
79
- <span class="cline-any cline-yes">34x</span>
79
+ <span class="cline-any cline-yes">39x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { join } = require("./centralPath")
81
81
  const { homedir } = require("os")
82
82
  const env = require("../environment")
@@ -94,7 +94,7 @@ module.exports.budibaseTempDir = budibaseTempDir
94
94
  <div class='footer quiet pad2 space-top1 center small'>
95
95
  Code coverage generated by
96
96
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
97
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
97
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
98
98
  </div>
99
99
  </div>
100
100
  <script src="../prettify.js"></script>
@@ -79,7 +79,7 @@
79
79
  <a name='L20'></a><a href='#L20'>20</a>
80
80
  <a name='L21'></a><a href='#L21'>21</a>
81
81
  <a name='L22'></a><a href='#L22'>22</a>
82
- <a name='L23'></a><a href='#L23'>23</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
82
+ <a name='L23'></a><a href='#L23'>23</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
83
83
  <span class="cline-any cline-neutral">&nbsp;</span>
84
84
  <span class="cline-any cline-neutral">&nbsp;</span>
85
85
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -89,7 +89,7 @@
89
89
  <span class="cline-any cline-neutral">&nbsp;</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span>
91
91
  <span class="cline-any cline-neutral">&nbsp;</span>
92
- <span class="cline-any cline-yes">34x</span>
92
+ <span class="cline-any cline-yes">39x</span>
93
93
  <span class="cline-any cline-no">&nbsp;</span>
94
94
  <span class="cline-any cline-neutral">&nbsp;</span>
95
95
  <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">34x</span>
101
+ <span class="cline-any cline-yes">39x</span>
102
102
  <span class="cline-any cline-no">&nbsp;</span>
103
103
  <span class="cline-any cline-neutral">&nbsp;</span>
104
104
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const path = require("path")
@@ -130,7 +130,7 @@ exports.resolve = <span class="fstat-no" title="function not covered" >fu</span>
130
130
  <div class='footer quiet pad2 space-top1 center small'>
131
131
  Code coverage generated by
132
132
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
133
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
133
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
134
134
  </div>
135
135
  </div>
136
136
  <script src="../prettify.js"></script>
@@ -201,10 +201,10 @@
201
201
  <a name='L142'></a><a href='#L142'>142</a>
202
202
  <a name='L143'></a><a href='#L143'>143</a>
203
203
  <a name='L144'></a><a href='#L144'>144</a>
204
- <a name='L145'></a><a href='#L145'>145</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">35x</span>
205
- <span class="cline-any cline-yes">35x</span>
204
+ <a name='L145'></a><a href='#L145'>145</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">40x</span>
205
+ <span class="cline-any cline-yes">40x</span>
206
206
  <span class="cline-any cline-neutral">&nbsp;</span>
207
- <span class="cline-any cline-yes">35x</span>
207
+ <span class="cline-any cline-yes">40x</span>
208
208
  <span class="cline-any cline-no">&nbsp;</span>
209
209
  <span class="cline-any cline-no">&nbsp;</span>
210
210
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -223,7 +223,7 @@
223
223
  <span class="cline-any cline-neutral">&nbsp;</span>
224
224
  <span class="cline-any cline-neutral">&nbsp;</span>
225
225
  <span class="cline-any cline-neutral">&nbsp;</span>
226
- <span class="cline-any cline-yes">35x</span>
226
+ <span class="cline-any cline-yes">40x</span>
227
227
  <span class="cline-any cline-neutral">&nbsp;</span>
228
228
  <span class="cline-any cline-yes">3x</span>
229
229
  <span class="cline-any cline-no">&nbsp;</span>
@@ -340,7 +340,7 @@
340
340
  <span class="cline-any cline-neutral">&nbsp;</span>
341
341
  <span class="cline-any cline-neutral">&nbsp;</span>
342
342
  <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-yes">35x</span>
343
+ <span class="cline-any cline-yes">40x</span>
344
344
  <span class="cline-any cline-neutral">&nbsp;</span>
345
345
  <span class="cline-any cline-neutral">&nbsp;</span>
346
346
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -496,7 +496,7 @@ module.exports = {
496
496
  <div class='footer quiet pad2 space-top1 center small'>
497
497
  Code coverage generated by
498
498
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
499
- at Mon Jan 24 2022 15:48:00 GMT+0000 (Coordinated Universal Time)
499
+ at Fri Feb 04 2022 10:32:19 GMT+0000 (Coordinated Universal Time)
500
500
  </div>
501
501
  </div>
502
502
  <script src="../prettify.js"></script>