@budibase/server 1.0.49-alpha.1 → 1.0.49-alpha.13

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 (353) 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.ba78c49d.css → index.83c0944f.css} +1 -1
  8. package/builder/assets/{index.ed1cf508.js → index.f686d3cd.js} +184 -184
  9. package/builder/index.html +2 -2
  10. package/coverage/clover.xml +2656 -2712
  11. package/coverage/coverage-final.json +104 -105
  12. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/application.js.html +157 -136
  15. package/coverage/lcov-report/api/controllers/auth.js.html +11 -14
  16. package/coverage/lcov-report/api/controllers/automation.js.html +39 -69
  17. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  18. package/coverage/lcov-report/api/controllers/cloud.js.html +8 -11
  19. package/coverage/lcov-report/api/controllers/component.js.html +10 -13
  20. package/coverage/lcov-report/api/controllers/datasource.js.html +31 -37
  21. package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
  22. package/coverage/lcov-report/api/controllers/index.html +69 -54
  23. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
  25. package/coverage/lcov-report/api/controllers/metadata.js.html +6 -21
  26. package/coverage/lcov-report/{migrations/usageQuotas/syncApps.js.html → api/controllers/migrations.js.html} +30 -45
  27. package/coverage/lcov-report/api/controllers/permission.js.html +19 -19
  28. package/coverage/lcov-report/api/controllers/query/index.html +10 -10
  29. package/coverage/lcov-report/api/controllers/query/index.js.html +38 -35
  30. package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
  31. package/coverage/lcov-report/api/controllers/role.js.html +16 -16
  32. package/coverage/lcov-report/api/controllers/routing.js.html +7 -10
  33. package/coverage/lcov-report/api/controllers/row/external.js.html +48 -141
  34. package/coverage/lcov-report/api/controllers/row/index.html +28 -28
  35. package/coverage/lcov-report/api/controllers/row/index.js.html +13 -13
  36. package/coverage/lcov-report/api/controllers/row/internal.js.html +60 -105
  37. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +25 -31
  38. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +21 -24
  39. package/coverage/lcov-report/api/controllers/row/utils.js.html +27 -24
  40. package/coverage/lcov-report/api/controllers/screen.js.html +15 -21
  41. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  42. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +27 -57
  43. package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
  44. package/coverage/lcov-report/api/controllers/table/index.html +37 -37
  45. package/coverage/lcov-report/api/controllers/table/index.js.html +20 -20
  46. package/coverage/lcov-report/api/controllers/table/internal.js.html +45 -54
  47. package/coverage/lcov-report/api/controllers/table/utils.js.html +67 -103
  48. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  49. package/coverage/lcov-report/api/controllers/user.js.html +43 -52
  50. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  51. package/coverage/lcov-report/api/controllers/view/index.html +16 -16
  52. package/coverage/lcov-report/api/controllers/view/index.js.html +27 -33
  53. package/coverage/lcov-report/api/controllers/view/utils.js.html +35 -20
  54. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  55. package/coverage/lcov-report/api/controllers/webhook.js.html +34 -28
  56. package/coverage/lcov-report/api/index.html +1 -1
  57. package/coverage/lcov-report/api/index.js.html +3 -3
  58. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/index.html +22 -7
  70. package/coverage/lcov-report/api/routes/index.js.html +10 -4
  71. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  74. package/coverage/lcov-report/{migrations/usageQuotas/index.js.html → api/routes/migrations.js.html} +25 -55
  75. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  81. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  82. package/coverage/lcov-report/api/routes/static.js.html +1 -1
  83. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  84. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  85. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  86. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  87. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  88. package/coverage/lcov-report/automations/actions.js.html +24 -24
  89. package/coverage/lcov-report/automations/automationUtils.js.html +7 -10
  90. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  91. package/coverage/lcov-report/automations/index.html +18 -18
  92. package/coverage/lcov-report/automations/index.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  94. package/coverage/lcov-report/automations/steps/createRow.js.html +7 -10
  95. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  96. package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
  97. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  98. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  99. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  100. package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
  101. package/coverage/lcov-report/automations/steps/index.html +1 -1
  102. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  103. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  104. package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
  105. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  106. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  107. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  108. package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
  109. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  110. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  111. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  112. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  113. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  114. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  115. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  116. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  117. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  118. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  119. package/coverage/lcov-report/automations/triggers.js.html +61 -55
  120. package/coverage/lcov-report/automations/utils.js.html +54 -42
  121. package/coverage/lcov-report/constants/index.html +1 -1
  122. package/coverage/lcov-report/constants/index.js.html +26 -26
  123. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  124. package/coverage/lcov-report/constants/screens.js.html +4 -4
  125. package/coverage/lcov-report/db/client.js.html +18 -18
  126. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  127. package/coverage/lcov-report/db/index.html +1 -1
  128. package/coverage/lcov-report/db/index.js.html +3 -3
  129. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +15 -27
  130. package/coverage/lcov-report/db/linkedRows/index.html +27 -27
  131. package/coverage/lcov-report/db/linkedRows/index.js.html +40 -82
  132. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +40 -40
  133. package/coverage/lcov-report/db/newid.js.html +4 -4
  134. package/coverage/lcov-report/db/utils.js.html +74 -74
  135. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  136. package/coverage/lcov-report/events/index.html +1 -1
  137. package/coverage/lcov-report/events/index.js.html +5 -5
  138. package/coverage/lcov-report/events/utils.js.html +3 -3
  139. package/coverage/lcov-report/index.html +97 -112
  140. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  141. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  142. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  143. package/coverage/lcov-report/middleware/authorized.js.html +21 -15
  144. package/coverage/lcov-report/middleware/builder.js.html +3 -3
  145. package/coverage/lcov-report/middleware/currentapp.js.html +72 -60
  146. package/coverage/lcov-report/middleware/index.html +28 -28
  147. package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
  148. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  149. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  150. package/coverage/lcov-report/middleware/usageQuota.js.html +29 -35
  151. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  152. package/coverage/lcov-report/threads/automation.js.html +30 -24
  153. package/coverage/lcov-report/threads/index.html +25 -25
  154. package/coverage/lcov-report/threads/index.js.html +10 -10
  155. package/coverage/lcov-report/threads/query.js.html +26 -47
  156. package/coverage/lcov-report/threads/utils.js.html +14 -14
  157. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  158. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  159. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  160. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  161. package/coverage/lcov-report/utilities/global.js.html +57 -48
  162. package/coverage/lcov-report/utilities/index.html +27 -27
  163. package/coverage/lcov-report/utilities/index.js.html +42 -72
  164. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
  165. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  166. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  167. package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
  168. package/coverage/lcov-report/utilities/rowProcessor/index.html +11 -11
  169. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +32 -74
  170. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +4 -4
  171. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  172. package/coverage/lcov-report/utilities/security.js.html +8 -8
  173. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  174. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  175. package/coverage/lcov-report/utilities/usageQuota/index.js.html +13 -10
  176. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +5 -2
  177. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  178. package/coverage/lcov-report/utilities/users.js.html +9 -9
  179. package/coverage/lcov-report/utilities/workerRequests.js.html +16 -16
  180. package/coverage/lcov.info +4018 -4092
  181. package/dist/api/controllers/application.js +49 -48
  182. package/dist/api/controllers/auth.js +4 -5
  183. package/dist/api/controllers/automation.js +14 -19
  184. package/dist/api/controllers/cloud.js +2 -3
  185. package/dist/api/controllers/component.js +3 -4
  186. package/dist/api/controllers/datasource.js +9 -10
  187. package/dist/api/controllers/deploy/Deployment.js +3 -6
  188. package/dist/api/controllers/deploy/index.js +12 -13
  189. package/dist/api/controllers/dev.js +5 -5
  190. package/dist/api/controllers/layout.js +3 -3
  191. package/dist/api/controllers/metadata.js +4 -4
  192. package/dist/api/controllers/migrations.js +21 -0
  193. package/dist/api/controllers/permission.js +4 -4
  194. package/dist/api/controllers/query/import/index.js +4 -6
  195. package/dist/api/controllers/query/index.js +11 -10
  196. package/dist/api/controllers/role.js +5 -5
  197. package/dist/api/controllers/routing.js +5 -6
  198. package/dist/api/controllers/row/ExternalRequest.js +90 -67
  199. package/dist/api/controllers/row/external.js +14 -22
  200. package/dist/api/controllers/row/internal.js +29 -44
  201. package/dist/api/controllers/row/internalSearch.js +11 -13
  202. package/dist/api/controllers/row/staticFormula.js +11 -11
  203. package/dist/api/controllers/row/utils.js +7 -6
  204. package/dist/api/controllers/screen.js +5 -7
  205. package/dist/api/controllers/static/index.js +4 -4
  206. package/dist/api/controllers/table/bulkFormula.js +14 -15
  207. package/dist/api/controllers/table/external.js +7 -10
  208. package/dist/api/controllers/table/index.js +5 -5
  209. package/dist/api/controllers/table/internal.js +16 -19
  210. package/dist/api/controllers/table/utils.js +29 -31
  211. package/dist/api/controllers/user.js +16 -20
  212. package/dist/api/controllers/view/index.js +8 -10
  213. package/dist/api/controllers/view/utils.js +9 -4
  214. package/dist/api/controllers/webhook.js +10 -8
  215. package/dist/api/routes/index.js +2 -0
  216. package/dist/api/routes/migrations.js +9 -0
  217. package/dist/api/routes/tests/utilities/TestFunctions.js +37 -17
  218. package/dist/app.js +35 -5
  219. package/dist/automations/automationUtils.js +2 -3
  220. package/dist/automations/steps/createRow.js +1 -1
  221. package/dist/automations/steps/updateRow.js +1 -1
  222. package/dist/automations/triggers.js +27 -25
  223. package/dist/automations/utils.js +10 -5
  224. package/dist/db/linkedRows/LinkController.js +3 -7
  225. package/dist/db/linkedRows/index.js +16 -26
  226. package/dist/db/linkedRows/linkUtils.js +6 -6
  227. package/dist/db/views/staticViews.js +9 -10
  228. package/dist/environment.js +3 -1
  229. package/dist/integrations/base/sql.js +49 -15
  230. package/dist/integrations/utils.js +3 -0
  231. package/dist/middleware/authorized.js +5 -3
  232. package/dist/middleware/builder.js +2 -2
  233. package/dist/middleware/currentapp.js +41 -37
  234. package/dist/middleware/usageQuota.js +2 -4
  235. package/dist/migrations/functions/appUrls.js +46 -0
  236. package/dist/migrations/functions/quotas1.js +50 -0
  237. package/dist/migrations/{usageQuotas → functions/usageQuotas}/index.js +6 -10
  238. package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncApps.js +12 -9
  239. package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncRows.js +16 -12
  240. package/dist/migrations/functions/userEmailViewCasing.js +24 -0
  241. package/dist/migrations/index.js +62 -0
  242. package/dist/package.json +4 -4
  243. package/dist/tests/utilities/TestConfiguration.js +70 -44
  244. package/dist/threads/automation.js +13 -11
  245. package/dist/threads/query.js +13 -19
  246. package/dist/tsconfig.tsbuildinfo +1 -1
  247. package/dist/utilities/fileSystem/index.js +4 -3
  248. package/dist/utilities/global.js +15 -12
  249. package/dist/utilities/index.js +7 -17
  250. package/dist/utilities/routing/index.js +5 -5
  251. package/dist/utilities/rowProcessor/index.js +9 -10
  252. package/dist/utilities/usageQuota/index.js +1 -0
  253. package/dist/utilities/usageQuota/rows.js +1 -0
  254. package/dist/utilities/users.js +3 -3
  255. package/dist/utilities/workerRequests.js +4 -4
  256. package/package.json +5 -5
  257. package/scripts/integrations/mssql/data/Dockerfile +1 -1
  258. package/scripts/integrations/mssql/data/setup.sql +17 -4
  259. package/scripts/integrations/postgres/init.sql +11 -6
  260. package/scripts/likeCypress.ts +1 -1
  261. package/src/api/controllers/application.js +38 -31
  262. package/src/api/controllers/auth.js +4 -5
  263. package/src/api/controllers/automation.js +13 -23
  264. package/src/api/controllers/cloud.js +2 -3
  265. package/src/api/controllers/component.js +3 -4
  266. package/src/api/controllers/datasource.js +9 -11
  267. package/src/api/controllers/deploy/Deployment.js +3 -7
  268. package/src/api/controllers/deploy/index.js +20 -13
  269. package/src/api/controllers/dev.js +5 -5
  270. package/src/api/controllers/layout.js +3 -3
  271. package/src/api/controllers/metadata.js +4 -9
  272. package/src/api/controllers/migrations.js +13 -0
  273. package/src/api/controllers/permission.js +4 -4
  274. package/src/api/controllers/query/import/index.ts +4 -6
  275. package/src/api/controllers/query/import/tests/index.spec.js +2 -1
  276. package/src/api/controllers/query/index.js +11 -10
  277. package/src/api/controllers/role.js +5 -5
  278. package/src/api/controllers/routing.js +5 -6
  279. package/src/api/controllers/row/ExternalRequest.ts +67 -43
  280. package/src/api/controllers/row/external.js +27 -58
  281. package/src/api/controllers/row/internal.js +29 -44
  282. package/src/api/controllers/row/internalSearch.js +11 -13
  283. package/src/api/controllers/row/staticFormula.js +10 -11
  284. package/src/api/controllers/row/utils.js +7 -6
  285. package/src/api/controllers/screen.js +5 -7
  286. package/src/api/controllers/static/index.js +4 -4
  287. package/src/api/controllers/table/bulkFormula.js +13 -23
  288. package/src/api/controllers/table/external.js +7 -10
  289. package/src/api/controllers/table/index.js +5 -5
  290. package/src/api/controllers/table/internal.js +18 -21
  291. package/src/api/controllers/table/utils.js +29 -41
  292. package/src/api/controllers/user.js +17 -20
  293. package/src/api/controllers/view/index.js +8 -10
  294. package/src/api/controllers/view/utils.js +9 -4
  295. package/src/api/controllers/webhook.js +10 -8
  296. package/src/api/routes/index.js +2 -0
  297. package/src/api/routes/migrations.js +14 -0
  298. package/src/api/routes/tests/automation.spec.js +1 -0
  299. package/src/api/routes/tests/misc.spec.js +0 -1
  300. package/src/api/routes/tests/routing.spec.js +21 -12
  301. package/src/api/routes/tests/row.spec.js +7 -4
  302. package/src/api/routes/tests/utilities/TestFunctions.js +39 -17
  303. package/src/app.ts +18 -5
  304. package/src/automations/automationUtils.js +2 -3
  305. package/src/automations/steps/createRow.js +0 -1
  306. package/src/automations/steps/updateRow.js +1 -1
  307. package/src/automations/triggers.js +33 -31
  308. package/src/automations/utils.js +9 -5
  309. package/src/db/linkedRows/LinkController.js +3 -7
  310. package/src/db/linkedRows/index.js +16 -30
  311. package/src/db/linkedRows/linkUtils.js +6 -6
  312. package/src/db/tests/linkController.spec.js +0 -1
  313. package/src/db/tests/linkTests.spec.js +5 -6
  314. package/src/db/views/staticViews.js +8 -10
  315. package/src/environment.js +3 -1
  316. package/src/integrations/base/sql.ts +61 -22
  317. package/src/integrations/utils.ts +4 -1
  318. package/src/middleware/authorized.js +5 -3
  319. package/src/middleware/builder.js +2 -2
  320. package/src/middleware/currentapp.js +50 -46
  321. package/src/middleware/tests/authorized.spec.js +7 -2
  322. package/src/middleware/tests/currentapp.spec.js +6 -0
  323. package/src/middleware/usageQuota.js +2 -4
  324. package/src/migrations/functions/appUrls.ts +34 -0
  325. package/src/migrations/functions/quotas1.ts +20 -0
  326. package/src/migrations/functions/tests/appUrls.spec.js +29 -0
  327. package/src/migrations/{tests/usageQuotas/index.spec.js → functions/tests/quotas1.spec.js} +5 -5
  328. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
  329. package/src/migrations/functions/usageQuotas/index.ts +8 -0
  330. package/src/migrations/{usageQuotas/syncApps.js → functions/usageQuotas/syncApps.ts} +6 -6
  331. package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
  332. package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncApps.spec.js +4 -4
  333. package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncRows.spec.js +4 -4
  334. package/src/migrations/functions/userEmailViewCasing.ts +13 -0
  335. package/src/migrations/index.ts +56 -0
  336. package/src/module.d.ts +3 -0
  337. package/src/tests/utilities/TestConfiguration.js +73 -50
  338. package/src/threads/automation.js +17 -15
  339. package/src/threads/query.js +14 -21
  340. package/src/utilities/fileSystem/index.js +4 -3
  341. package/src/utilities/global.js +15 -12
  342. package/src/utilities/index.js +7 -17
  343. package/src/utilities/routing/index.js +5 -5
  344. package/src/utilities/rowProcessor/index.js +9 -23
  345. package/src/utilities/usageQuota/index.js +1 -0
  346. package/src/utilities/usageQuota/rows.js +1 -0
  347. package/src/utilities/users.js +3 -3
  348. package/src/utilities/workerRequests.js +4 -4
  349. package/tsconfig.json +2 -1
  350. package/coverage/lcov-report/migrations/usageQuotas/index.html +0 -141
  351. package/coverage/lcov-report/migrations/usageQuotas/syncRows.js.html +0 -143
  352. package/src/migrations/usageQuotas/index.js +0 -24
  353. package/src/migrations/usageQuotas/syncRows.js +0 -21
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">60% </span>
26
+ <span class="strong">59.68% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>78/130</span>
28
+ <span class='fraction'>77/129</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">59.68% </span>
47
+ <span class="strong">59.37% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>77/129</span>
49
+ <span class='fraction'>76/128</span>
50
50
  </div>
51
51
 
52
52
 
@@ -316,25 +316,21 @@
316
316
  <a name='L257'></a><a href='#L257'>257</a>
317
317
  <a name='L258'></a><a href='#L258'>258</a>
318
318
  <a name='L259'></a><a href='#L259'>259</a>
319
- <a name='L260'></a><a href='#L260'>260</a>
320
- <a name='L261'></a><a href='#L261'>261</a>
321
- <a name='L262'></a><a href='#L262'>262</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">37x</span>
322
- <span class="cline-any cline-neutral">&nbsp;</span>
323
- <span class="cline-any cline-neutral">&nbsp;</span>
319
+ <a name='L260'></a><a href='#L260'>260</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
324
320
  <span class="cline-any cline-neutral">&nbsp;</span>
325
321
  <span class="cline-any cline-neutral">&nbsp;</span>
326
322
  <span class="cline-any cline-neutral">&nbsp;</span>
327
323
  <span class="cline-any cline-neutral">&nbsp;</span>
328
324
  <span class="cline-any cline-neutral">&nbsp;</span>
329
- <span class="cline-any cline-yes">37x</span>
330
- <span class="cline-any cline-yes">37x</span>
331
- <span class="cline-any cline-yes">37x</span>
332
- <span class="cline-any cline-yes">37x</span>
333
- <span class="cline-any cline-yes">37x</span>
334
325
  <span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-yes">37x</span>
336
- <span class="cline-any cline-yes">2x</span>
326
+ <span class="cline-any cline-yes">39x</span>
327
+ <span class="cline-any cline-yes">39x</span>
328
+ <span class="cline-any cline-yes">39x</span>
329
+ <span class="cline-any cline-yes">39x</span>
330
+ <span class="cline-any cline-yes">39x</span>
331
+ <span class="cline-any cline-yes">39x</span>
337
332
  <span class="cline-any cline-neutral">&nbsp;</span>
333
+ <span class="cline-any cline-yes">39x</span>
338
334
  <span class="cline-any cline-neutral">&nbsp;</span>
339
335
  <span class="cline-any cline-yes">2x</span>
340
336
  <span class="cline-any cline-yes">2x</span>
@@ -368,7 +364,7 @@
368
364
  <span class="cline-any cline-yes">2x</span>
369
365
  <span class="cline-any cline-neutral">&nbsp;</span>
370
366
  <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-yes">37x</span>
367
+ <span class="cline-any cline-yes">39x</span>
372
368
  <span class="cline-any cline-no">&nbsp;</span>
373
369
  <span class="cline-any cline-no">&nbsp;</span>
374
370
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -388,7 +384,7 @@
388
384
  <span class="cline-any cline-neutral">&nbsp;</span>
389
385
  <span class="cline-any cline-neutral">&nbsp;</span>
390
386
  <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-yes">37x</span>
387
+ <span class="cline-any cline-yes">39x</span>
392
388
  <span class="cline-any cline-yes">6x</span>
393
389
  <span class="cline-any cline-yes">6x</span>
394
390
  <span class="cline-any cline-yes">6x</span>
@@ -417,7 +413,7 @@
417
413
  <span class="cline-any cline-yes">1x</span>
418
414
  <span class="cline-any cline-neutral">&nbsp;</span>
419
415
  <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-yes">37x</span>
416
+ <span class="cline-any cline-yes">39x</span>
421
417
  <span class="cline-any cline-yes">6x</span>
422
418
  <span class="cline-any cline-yes">6x</span>
423
419
  <span class="cline-any cline-yes">6x</span>
@@ -445,7 +441,7 @@
445
441
  <span class="cline-any cline-yes">6x</span>
446
442
  <span class="cline-any cline-neutral">&nbsp;</span>
447
443
  <span class="cline-any cline-neutral">&nbsp;</span>
448
- <span class="cline-any cline-yes">37x</span>
444
+ <span class="cline-any cline-yes">39x</span>
449
445
  <span class="cline-any cline-yes">39x</span>
450
446
  <span class="cline-any cline-yes">39x</span>
451
447
  <span class="cline-any cline-yes">39x</span>
@@ -481,7 +477,7 @@
481
477
  <span class="cline-any cline-yes">39x</span>
482
478
  <span class="cline-any cline-neutral">&nbsp;</span>
483
479
  <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-yes">37x</span>
480
+ <span class="cline-any cline-yes">39x</span>
485
481
  <span class="cline-any cline-yes">1x</span>
486
482
  <span class="cline-any cline-neutral">&nbsp;</span>
487
483
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -503,13 +499,13 @@
503
499
  <span class="cline-any cline-yes">1x</span>
504
500
  <span class="cline-any cline-neutral">&nbsp;</span>
505
501
  <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-yes">37x</span>
502
+ <span class="cline-any cline-yes">39x</span>
507
503
  <span class="cline-any cline-yes">1x</span>
508
504
  <span class="cline-any cline-yes">1x</span>
509
505
  <span class="cline-any cline-neutral">&nbsp;</span>
510
506
  <span class="cline-any cline-neutral">&nbsp;</span>
511
507
  <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-yes">37x</span>
508
+ <span class="cline-any cline-yes">39x</span>
513
509
  <span class="cline-any cline-yes">1x</span>
514
510
  <span class="cline-any cline-yes">1x</span>
515
511
  <span class="cline-any cline-yes">1x</span>
@@ -535,7 +531,7 @@
535
531
  <span class="cline-any cline-no">&nbsp;</span>
536
532
  <span class="cline-any cline-neutral">&nbsp;</span>
537
533
  <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-yes">37x</span>
534
+ <span class="cline-any cline-yes">39x</span>
539
535
  <span class="cline-any cline-no">&nbsp;</span>
540
536
  <span class="cline-any cline-neutral">&nbsp;</span>
541
537
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -579,8 +575,7 @@
579
575
  <span class="cline-any cline-neutral">&nbsp;</span>
580
576
  <span class="cline-any cline-no">&nbsp;</span>
581
577
  <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const CouchDB = require("../../db")
583
- const {
578
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const {
584
579
  generateDatasourceID,
585
580
  getDatasourceParams,
586
581
  getQueryParams,
@@ -592,12 +587,11 @@ const { BuildSchemaErrors, InvalidColumns } = require("../../constants")
592
587
  const { integrations } = require("../../integrations")
593
588
  const { getDatasourceAndQuery } = require("./row/utils")
594
589
  const { invalidateDynamicVariables } = require("../../threads/utils")
590
+ const { getAppDB } = require("@budibase/backend-core/context")
595
591
  &nbsp;
596
592
  exports.fetch = async function (ctx) {
597
- const database = new CouchDB(ctx.appId)
598
- &nbsp;
599
593
  // Get internal tables
600
- const db = new CouchDB(ctx.appId)
594
+ const db = getAppDB()
601
595
  const internalTables = await db.allDocs(
602
596
  getTableParams(null, {
603
597
  include_docs: true,
@@ -612,7 +606,7 @@ exports.fetch = async function (ctx) {
612
606
  &nbsp;
613
607
  // Get external datasources
614
608
  const datasources = (
615
- await database.allDocs(
609
+ await db.allDocs(
616
610
  getDatasourceParams(null, {
617
611
  include_docs: true,
618
612
  })
@@ -630,7 +624,7 @@ exports.fetch = async function (ctx) {
630
624
  }
631
625
  &nbsp;
632
626
  exports.buildSchemaFromDb = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
633
- const db = <span class="cstat-no" title="statement not covered" >new CouchDB(ctx.appId)</span>
627
+ const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
634
628
  const datasource = <span class="cstat-no" title="statement not covered" >await db.get(ctx.params.datasourceId)</span>
635
629
  &nbsp;
636
630
  const { tables, error } = <span class="cstat-no" title="statement not covered" >await buildSchemaHelper(datasource)</span>
@@ -679,7 +673,7 @@ const invalidateVariables = async (existingDatasource, updatedDatasource) =&gt;
679
673
  }
680
674
  &nbsp;
681
675
  exports.update = async function (ctx) {
682
- const db = new CouchDB(ctx.appId)
676
+ const db = getAppDB()
683
677
  const datasourceId = ctx.params.datasourceId
684
678
  let datasource = await db.get(datasourceId)
685
679
  const auth = datasource.config.auth
@@ -707,7 +701,7 @@ exports.update = async function (ctx) {
707
701
  }
708
702
  &nbsp;
709
703
  exports.save = async function (ctx) {
710
- const db = new CouchDB(ctx.appId)
704
+ const db = getAppDB()
711
705
  const plus = ctx.request.body.datasource.plus
712
706
  const fetchSchema = ctx.request.body.fetchSchema
713
707
  &nbsp;
@@ -743,7 +737,7 @@ exports.save = async function (ctx) {
743
737
  }
744
738
  &nbsp;
745
739
  exports.destroy = async function (ctx) {
746
- const db = new CouchDB(ctx.appId)
740
+ const db = getAppDB()
747
741
  &nbsp;
748
742
  // Delete all queries for the datasource
749
743
  const queries = await db.allDocs(
@@ -765,7 +759,7 @@ exports.destroy = async function (ctx) {
765
759
  }
766
760
  &nbsp;
767
761
  exports.find = async function (ctx) {
768
- const database = new CouchDB(ctx.appId)
762
+ const database = getAppDB()
769
763
  ctx.body = await database.get(ctx.params.datasourceId)
770
764
  }
771
765
  &nbsp;
@@ -773,7 +767,7 @@ exports.find = async function (ctx) {
773
767
  exports.query = async function (ctx) {
774
768
  const queryJson = ctx.request.body
775
769
  try {
776
- ctx.body = await getDatasourceAndQuery(ctx.appId, queryJson)
770
+ ctx.body = await getDatasourceAndQuery(queryJson)
777
771
  } catch (err) {
778
772
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, err)</span>
779
773
  }
@@ -847,7 +841,7 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
847
841
  <div class='footer quiet pad2 space-top1 center small'>
848
842
  Code coverage generated by
849
843
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
850
- at Mon Jan 31 2022 16:01:47 GMT+0000 (Coordinated Universal Time)
844
+ at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
851
845
  </div>
852
846
  </div>
853
847
  <script src="../../prettify.js"></script>
@@ -302,14 +302,14 @@
302
302
  <span class="cline-any cline-no">&nbsp;</span>
303
303
  <span class="cline-any cline-neutral">&nbsp;</span>
304
304
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const fetch = require("node-fetch")
305
- const CouchDB = require("../../db")
306
305
  const env = require("../../environment")
307
306
  const { checkSlashesInUrl } = require("../../utilities")
308
307
  const { request } = require("../../utilities/workerRequests")
309
308
  const { clearLock } = require("../../utilities/redis")
310
- const { Replication } = require("@budibase/backend-core/db")
309
+ const { Replication, getProdAppID } = require("@budibase/backend-core/db")
311
310
  const { DocumentTypes } = require("../../db/utils")
312
311
  const { app: appCache } = require("@budibase/backend-core/cache")
312
+ const { getProdAppDB, getAppDB } = require("@budibase/backend-core/context")
313
313
  &nbsp;
314
314
  async function <span class="fstat-no" title="function not covered" >redirect(</span>ctx, method, path = <span class="branch-0 cbranch-no" title="branch not covered" >"global")</span> {
315
315
  const { devPath } = <span class="cstat-no" title="statement not covered" >ctx.params</span>
@@ -380,11 +380,11 @@ exports.clearLock = <span class="fstat-no" title="function not covered" >as</spa
380
380
  &nbsp;
381
381
  exports.revert = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
382
382
  const { appId } = <span class="cstat-no" title="statement not covered" >ctx.params</span>
383
- const productionAppId = <span class="cstat-no" title="statement not covered" >appId.replace("_dev", "")</span>
383
+ const productionAppId = <span class="cstat-no" title="statement not covered" >getProdAppID(appId)</span>
384
384
  &nbsp;
385
385
  // App must have been deployed first
386
386
  <span class="cstat-no" title="statement not covered" > try {</span>
387
- const db = <span class="cstat-no" title="statement not covered" >new CouchDB(productionAppId, { skip_setup: true })</span>
387
+ const db = <span class="cstat-no" title="statement not covered" >getProdAppDB({ skip_setup: true })</span>
388
388
  const info = <span class="cstat-no" title="statement not covered" >await db.info()</span>
389
389
  <span class="cstat-no" title="statement not covered" > if (info.error) <span class="cstat-no" title="statement not covered" >throw info.error</span></span>
390
390
  const deploymentDoc = <span class="cstat-no" title="statement not covered" >await db.get(DocumentTypes.DEPLOYMENTS)</span>
@@ -406,7 +406,7 @@ exports.revert = <span class="fstat-no" title="function not covered" >as</span>y
406
406
  &nbsp;
407
407
  <span class="cstat-no" title="statement not covered" > await replication.rollback()</span>
408
408
  // update appID in reverted app to be dev version again
409
- const db = <span class="cstat-no" title="statement not covered" >new CouchDB(appId)</span>
409
+ const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
410
410
  const appDoc = <span class="cstat-no" title="statement not covered" >await db.get(DocumentTypes.APP_METADATA)</span>
411
411
  <span class="cstat-no" title="statement not covered" > appDoc.appId = appId</span>
412
412
  <span class="cstat-no" title="statement not covered" > appDoc.instance._id = appId</span>
@@ -430,7 +430,7 @@ exports.getBudibaseVersion = <span class="fstat-no" title="function not covered"
430
430
  <div class='footer quiet pad2 space-top1 center small'>
431
431
  Code coverage generated by
432
432
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
433
- at Mon Jan 31 2022 16:01:47 GMT+0000 (Coordinated Universal Time)
433
+ at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
434
434
  </div>
435
435
  </div>
436
436
  <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">70.96% </span>
26
+ <span class="strong">70.7% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>787/1109</span>
28
+ <span class='fraction'>787/1113</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">46.04% </span>
33
+ <span class="strong">46.02% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>169/367</span>
35
+ <span class='fraction'>168/365</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">70.58% </span>
40
+ <span class="strong">69.67% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>108/153</span>
42
+ <span class='fraction'>108/155</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">71.06% </span>
47
+ <span class="strong">70.8% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>776/1092</span>
49
+ <span class='fraction'>776/1096</span>
50
50
  </div>
51
51
 
52
52
 
@@ -104,47 +104,47 @@
104
104
 
105
105
  <tr>
106
106
  <td class="file medium" data-value="application.js"><a href="application.js.html">application.js</a></td>
107
- <td data-value="79.41" class="pic medium">
107
+ <td data-value="79.71" class="pic medium">
108
108
  <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
109
109
  </td>
110
- <td data-value="79.41" class="pct medium">79.41%</td>
111
- <td data-value="204" class="abs medium">162/204</td>
110
+ <td data-value="79.71" class="pct medium">79.71%</td>
111
+ <td data-value="207" class="abs medium">165/207</td>
112
112
  <td data-value="55.12" class="pct medium">55.12%</td>
113
113
  <td data-value="78" class="abs medium">43/78</td>
114
114
  <td data-value="88.46" class="pct high">88.46%</td>
115
115
  <td data-value="26" class="abs high">23/26</td>
116
- <td data-value="79.79" class="pct medium">79.79%</td>
117
- <td data-value="198" class="abs medium">158/198</td>
116
+ <td data-value="80.09" class="pct high">80.09%</td>
117
+ <td data-value="201" class="abs high">161/201</td>
118
118
  </tr>
119
119
 
120
120
  <tr>
121
121
  <td class="file high" data-value="auth.js"><a href="auth.js.html">auth.js</a></td>
122
- <td data-value="82.75" class="pic high">
122
+ <td data-value="82.14" class="pic high">
123
123
  <div class="chart"><div class="cover-fill" style="width: 82%"></div><div class="cover-empty" style="width: 18%"></div></div>
124
124
  </td>
125
- <td data-value="82.75" class="pct high">82.75%</td>
126
- <td data-value="29" class="abs high">24/29</td>
125
+ <td data-value="82.14" class="pct high">82.14%</td>
126
+ <td data-value="28" class="abs high">23/28</td>
127
127
  <td data-value="50" class="pct medium">50%</td>
128
128
  <td data-value="8" class="abs medium">4/8</td>
129
129
  <td data-value="100" class="pct high">100%</td>
130
130
  <td data-value="1" class="abs high">1/1</td>
131
- <td data-value="82.75" class="pct high">82.75%</td>
132
- <td data-value="29" class="abs high">24/29</td>
131
+ <td data-value="82.14" class="pct high">82.14%</td>
132
+ <td data-value="28" class="abs high">23/28</td>
133
133
  </tr>
134
134
 
135
135
  <tr>
136
136
  <td class="file high" data-value="automation.js"><a href="automation.js.html">automation.js</a></td>
137
- <td data-value="89.69" class="pic high">
138
- <div class="chart"><div class="cover-fill" style="width: 89%"></div><div class="cover-empty" style="width: 11%"></div></div>
137
+ <td data-value="90.52" class="pic high">
138
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
139
139
  </td>
140
- <td data-value="89.69" class="pct high">89.69%</td>
141
- <td data-value="97" class="abs high">87/97</td>
140
+ <td data-value="90.52" class="pct high">90.52%</td>
141
+ <td data-value="95" class="abs high">86/95</td>
142
142
  <td data-value="71.87" class="pct medium">71.87%</td>
143
143
  <td data-value="32" class="abs medium">23/32</td>
144
144
  <td data-value="92.85" class="pct high">92.85%</td>
145
145
  <td data-value="14" class="abs high">13/14</td>
146
- <td data-value="89.58" class="pct high">89.58%</td>
147
- <td data-value="96" class="abs high">86/96</td>
146
+ <td data-value="90.42" class="pct high">90.42%</td>
147
+ <td data-value="94" class="abs high">85/94</td>
148
148
  </tr>
149
149
 
150
150
  <tr>
@@ -164,17 +164,17 @@
164
164
 
165
165
  <tr>
166
166
  <td class="file low" data-value="cloud.js"><a href="cloud.js.html">cloud.js</a></td>
167
- <td data-value="19.64" class="pic low">
168
- <div class="chart"><div class="cover-fill" style="width: 19%"></div><div class="cover-empty" style="width: 81%"></div></div>
167
+ <td data-value="18.18" class="pic low">
168
+ <div class="chart"><div class="cover-fill" style="width: 18%"></div><div class="cover-empty" style="width: 82%"></div></div>
169
169
  </td>
170
- <td data-value="19.64" class="pct low">19.64%</td>
171
- <td data-value="56" class="abs low">11/56</td>
170
+ <td data-value="18.18" class="pct low">18.18%</td>
171
+ <td data-value="55" class="abs low">10/55</td>
172
172
  <td data-value="0" class="pct low">0%</td>
173
173
  <td data-value="23" class="abs low">0/23</td>
174
174
  <td data-value="0" class="pct low">0%</td>
175
175
  <td data-value="8" class="abs low">0/8</td>
176
- <td data-value="20" class="pct low">20%</td>
177
- <td data-value="55" class="abs low">11/55</td>
176
+ <td data-value="18.51" class="pct low">18.51%</td>
177
+ <td data-value="54" class="abs low">10/54</td>
178
178
  </tr>
179
179
 
180
180
  <tr>
@@ -183,28 +183,28 @@
183
183
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
184
184
  </td>
185
185
  <td data-value="100" class="pct high">100%</td>
186
- <td data-value="18" class="abs high">18/18</td>
187
- <td data-value="75" class="pct medium">75%</td>
188
- <td data-value="4" class="abs medium">3/4</td>
186
+ <td data-value="17" class="abs high">17/17</td>
187
+ <td data-value="100" class="pct high">100%</td>
188
+ <td data-value="2" class="abs high">2/2</td>
189
189
  <td data-value="100" class="pct high">100%</td>
190
190
  <td data-value="2" class="abs high">2/2</td>
191
191
  <td data-value="100" class="pct high">100%</td>
192
- <td data-value="18" class="abs high">18/18</td>
192
+ <td data-value="17" class="abs high">17/17</td>
193
193
  </tr>
194
194
 
195
195
  <tr>
196
196
  <td class="file medium" data-value="datasource.js"><a href="datasource.js.html">datasource.js</a></td>
197
- <td data-value="60" class="pic medium">
198
- <div class="chart"><div class="cover-fill" style="width: 60%"></div><div class="cover-empty" style="width: 40%"></div></div>
197
+ <td data-value="59.68" class="pic medium">
198
+ <div class="chart"><div class="cover-fill" style="width: 59%"></div><div class="cover-empty" style="width: 41%"></div></div>
199
199
  </td>
200
- <td data-value="60" class="pct medium">60%</td>
201
- <td data-value="130" class="abs medium">78/130</td>
200
+ <td data-value="59.68" class="pct medium">59.68%</td>
201
+ <td data-value="129" class="abs medium">77/129</td>
202
202
  <td data-value="37.73" class="pct low">37.73%</td>
203
203
  <td data-value="53" class="abs low">20/53</td>
204
204
  <td data-value="57.89" class="pct medium">57.89%</td>
205
205
  <td data-value="19" class="abs medium">11/19</td>
206
- <td data-value="59.68" class="pct medium">59.68%</td>
207
- <td data-value="129" class="abs medium">77/129</td>
206
+ <td data-value="59.37" class="pct medium">59.37%</td>
207
+ <td data-value="128" class="abs medium">76/128</td>
208
208
  </tr>
209
209
 
210
210
  <tr>
@@ -267,6 +267,21 @@
267
267
  <td data-value="24" class="abs high">21/24</td>
268
268
  </tr>
269
269
 
270
+ <tr>
271
+ <td class="file low" data-value="migrations.js"><a href="migrations.js.html">migrations.js</a></td>
272
+ <td data-value="37.5" class="pic low">
273
+ <div class="chart"><div class="cover-fill" style="width: 37%"></div><div class="cover-empty" style="width: 63%"></div></div>
274
+ </td>
275
+ <td data-value="37.5" class="pct low">37.5%</td>
276
+ <td data-value="8" class="abs low">3/8</td>
277
+ <td data-value="100" class="pct high">100%</td>
278
+ <td data-value="0" class="abs high">0/0</td>
279
+ <td data-value="0" class="pct low">0%</td>
280
+ <td data-value="2" class="abs low">0/2</td>
281
+ <td data-value="37.5" class="pct low">37.5%</td>
282
+ <td data-value="8" class="abs low">3/8</td>
283
+ </tr>
284
+
270
285
  <tr>
271
286
  <td class="file high" data-value="permission.js"><a href="permission.js.html">permission.js</a></td>
272
287
  <td data-value="98.78" class="pic high">
@@ -318,13 +333,13 @@
318
333
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
319
334
  </td>
320
335
  <td data-value="100" class="pct high">100%</td>
321
- <td data-value="23" class="abs high">23/23</td>
336
+ <td data-value="21" class="abs high">21/21</td>
322
337
  <td data-value="50" class="pct medium">50%</td>
323
338
  <td data-value="2" class="abs medium">1/2</td>
324
339
  <td data-value="100" class="pct high">100%</td>
325
340
  <td data-value="4" class="abs high">4/4</td>
326
341
  <td data-value="100" class="pct high">100%</td>
327
- <td data-value="23" class="abs high">23/23</td>
342
+ <td data-value="21" class="abs high">21/21</td>
328
343
  </tr>
329
344
 
330
345
  <tr>
@@ -359,32 +374,32 @@
359
374
 
360
375
  <tr>
361
376
  <td class="file low" data-value="user.js"><a href="user.js.html">user.js</a></td>
362
- <td data-value="32.23" class="pic low">
363
- <div class="chart"><div class="cover-fill" style="width: 32%"></div><div class="cover-empty" style="width: 68%"></div></div>
377
+ <td data-value="31.66" class="pic low">
378
+ <div class="chart"><div class="cover-fill" style="width: 31%"></div><div class="cover-empty" style="width: 69%"></div></div>
364
379
  </td>
365
- <td data-value="32.23" class="pct low">32.23%</td>
366
- <td data-value="121" class="abs low">39/121</td>
380
+ <td data-value="31.66" class="pct low">31.66%</td>
381
+ <td data-value="120" class="abs low">38/120</td>
367
382
  <td data-value="0" class="pct low">0%</td>
368
383
  <td data-value="37" class="abs low">0/37</td>
369
384
  <td data-value="31.25" class="pct low">31.25%</td>
370
385
  <td data-value="16" class="abs low">5/16</td>
371
- <td data-value="32.5" class="pct low">32.5%</td>
372
- <td data-value="120" class="abs low">39/120</td>
386
+ <td data-value="31.93" class="pct low">31.93%</td>
387
+ <td data-value="119" class="abs low">38/119</td>
373
388
  </tr>
374
389
 
375
390
  <tr>
376
391
  <td class="file high" data-value="webhook.js"><a href="webhook.js.html">webhook.js</a></td>
377
- <td data-value="91.37" class="pic high">
392
+ <td data-value="91.66" class="pic high">
378
393
  <div class="chart"><div class="cover-fill" style="width: 91%"></div><div class="cover-empty" style="width: 9%"></div></div>
379
394
  </td>
380
- <td data-value="91.37" class="pct high">91.37%</td>
381
- <td data-value="58" class="abs high">53/58</td>
395
+ <td data-value="91.66" class="pct high">91.66%</td>
396
+ <td data-value="60" class="abs high">55/60</td>
382
397
  <td data-value="40" class="pct low">40%</td>
383
398
  <td data-value="10" class="abs low">4/10</td>
384
399
  <td data-value="100" class="pct high">100%</td>
385
400
  <td data-value="7" class="abs high">7/7</td>
386
- <td data-value="91.22" class="pct high">91.22%</td>
387
- <td data-value="57" class="abs high">52/57</td>
401
+ <td data-value="91.52" class="pct high">91.52%</td>
402
+ <td data-value="59" class="abs high">54/59</td>
388
403
  </tr>
389
404
 
390
405
  </tbody>
@@ -395,7 +410,7 @@
395
410
  <div class='footer quiet pad2 space-top1 center small'>
396
411
  Code coverage generated by
397
412
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
398
- at Mon Jan 31 2022 16:01:47 GMT+0000 (Coordinated Universal Time)
413
+ at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
399
414
  </div>
400
415
  </div>
401
416
  <script src="../../prettify.js"></script>
@@ -100,7 +100,7 @@ exports.find = async function (ctx) {
100
100
  <div class='footer quiet pad2 space-top1 center small'>
101
101
  Code coverage generated by
102
102
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
103
- at Mon Jan 31 2022 16:01:47 GMT+0000 (Coordinated Universal Time)
103
+ at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
104
104
  </div>
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
@@ -111,11 +111,11 @@
111
111
  <a name='L52'></a><a href='#L52'>52</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
112
112
  <span class="cline-any cline-neutral">&nbsp;</span>
113
113
  <span class="cline-any cline-neutral">&nbsp;</span>
114
- <span class="cline-any cline-yes">36x</span>
115
- <span class="cline-any cline-yes">36x</span>
116
- <span class="cline-any cline-yes">36x</span>
114
+ <span class="cline-any cline-yes">38x</span>
115
+ <span class="cline-any cline-yes">38x</span>
116
+ <span class="cline-any cline-yes">38x</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
118
- <span class="cline-any cline-yes">36x</span>
118
+ <span class="cline-any cline-yes">38x</span>
119
119
  <span class="cline-any cline-yes">5x</span>
120
120
  <span class="cline-any cline-yes">5x</span>
121
121
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -135,7 +135,7 @@
135
135
  <span class="cline-any cline-yes">5x</span>
136
136
  <span class="cline-any cline-neutral">&nbsp;</span>
137
137
  <span class="cline-any cline-neutral">&nbsp;</span>
138
- <span class="cline-any cline-yes">36x</span>
138
+ <span class="cline-any cline-yes">38x</span>
139
139
  <span class="cline-any cline-yes">1x</span>
140
140
  <span class="cline-any cline-yes">1x</span>
141
141
  <span class="cline-any cline-yes">1x</span>
@@ -163,11 +163,11 @@
163
163
  EMPTY_LAYOUT,
164
164
  BASE_LAYOUT_PROP_IDS,
165
165
  } = require("../../constants/layouts")
166
- const CouchDB = require("../../db")
167
166
  const { generateLayoutID, getScreenParams } = require("../../db/utils")
167
+ const { getAppDB } = require("@budibase/backend-core/context")
168
168
  &nbsp;
169
169
  exports.save = async function (ctx) {
170
- const db = new CouchDB(ctx.appId)
170
+ const db = getAppDB()
171
171
  let layout = ctx.request.body
172
172
  &nbsp;
173
173
  <span class="missing-if-branch" title="if path not taken" >I</span>if (!layout.props) {
@@ -187,7 +187,7 @@ exports.save = async function (ctx) {
187
187
  }
188
188
  &nbsp;
189
189
  exports.destroy = async function (ctx) {
190
- const db = new CouchDB(ctx.appId)
190
+ const db = getAppDB()
191
191
  const layoutId = ctx.params.layoutId,
192
192
  layoutRev = ctx.params.layoutRev
193
193
  &nbsp;
@@ -217,7 +217,7 @@ exports.destroy = async function (ctx) {
217
217
  <div class='footer quiet pad2 space-top1 center small'>
218
218
  Code coverage generated by
219
219
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
220
- at Mon Jan 31 2022 16:01:47 GMT+0000 (Coordinated Universal Time)
220
+ at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
221
221
  </div>
222
222
  </div>
223
223
  <script src="../../prettify.js"></script>