@budibase/server 1.0.49-alpha.6 → 1.0.49

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 (376) hide show
  1. package/__mocks__/arangojs.ts +1 -1
  2. package/__mocks__/aws-sdk.ts +4 -4
  3. package/__mocks__/mongodb.ts +5 -4
  4. package/__mocks__/mssql.ts +3 -3
  5. package/__mocks__/node-fetch.ts +1 -2
  6. package/__mocks__/pg.ts +5 -3
  7. package/builder/assets/{index.1b905242.js → index.2c37968e.js} +231 -234
  8. package/builder/assets/index.39e01193.css +1 -0
  9. package/builder/assets/{vendor.d526bfe8.js → vendor.f9faf6ab.js} +12 -12
  10. package/builder/index.html +3 -3
  11. package/coverage/clover.xml +2816 -3119
  12. package/coverage/coverage-final.json +101 -106
  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 +152 -257
  16. package/coverage/lcov-report/api/controllers/auth.js.html +13 -22
  17. package/coverage/lcov-report/api/controllers/automation.js.html +69 -39
  18. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -8
  20. package/coverage/lcov-report/api/controllers/component.js.html +16 -13
  21. package/coverage/lcov-report/api/controllers/datasource.js.html +51 -81
  22. package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
  23. package/coverage/lcov-report/{utilities/usageQuota/usageQuoteReset.js.html → api/controllers/hosting.js.html} +48 -36
  24. package/coverage/lcov-report/api/controllers/index.html +76 -76
  25. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  26. package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
  27. package/coverage/lcov-report/api/controllers/metadata.js.html +21 -6
  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 +35 -38
  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 +10 -7
  34. package/coverage/lcov-report/api/controllers/row/external.js.html +27 -21
  35. package/coverage/lcov-report/api/controllers/row/index.html +34 -49
  36. package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
  37. package/coverage/lcov-report/api/controllers/row/internal.js.html +226 -118
  38. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +34 -52
  39. package/coverage/lcov-report/api/controllers/row/utils.js.html +62 -47
  40. package/coverage/lcov-report/api/controllers/screen.js.html +21 -15
  41. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  42. package/coverage/lcov-report/api/controllers/table/external.js.html +34 -25
  43. package/coverage/lcov-report/api/controllers/table/index.html +43 -58
  44. package/coverage/lcov-report/api/controllers/table/index.js.html +82 -58
  45. package/coverage/lcov-report/api/controllers/table/internal.js.html +66 -81
  46. package/coverage/lcov-report/api/controllers/table/utils.js.html +110 -218
  47. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  48. package/coverage/lcov-report/api/controllers/user.js.html +50 -47
  49. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  50. package/coverage/lcov-report/api/controllers/view/index.html +16 -16
  51. package/coverage/lcov-report/api/controllers/view/index.js.html +33 -27
  52. package/coverage/lcov-report/api/controllers/view/utils.js.html +20 -35
  53. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  54. package/coverage/lcov-report/api/controllers/webhook.js.html +28 -34
  55. package/coverage/lcov-report/api/index.html +1 -1
  56. package/coverage/lcov-report/api/index.js.html +8 -8
  57. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/{migrations.js.html → hosting.js.html} +14 -17
  69. package/coverage/lcov-report/api/routes/index.html +18 -18
  70. package/coverage/lcov-report/api/routes/index.js.html +3 -3
  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/api/routes/permission.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  81. package/coverage/lcov-report/api/routes/static.js.html +2 -17
  82. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  83. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  84. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  85. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  86. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  87. package/coverage/lcov-report/automations/actions.js.html +24 -24
  88. package/coverage/lcov-report/automations/automationUtils.js.html +10 -7
  89. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  90. package/coverage/lcov-report/automations/index.html +18 -18
  91. package/coverage/lcov-report/automations/index.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  93. package/coverage/lcov-report/automations/steps/createRow.js.html +22 -13
  94. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  95. package/coverage/lcov-report/automations/steps/deleteRow.js.html +20 -11
  96. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  97. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  98. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  99. package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
  100. package/coverage/lcov-report/automations/steps/index.html +13 -13
  101. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  102. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  103. package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
  104. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  105. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  106. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  107. package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
  108. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  109. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  110. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  111. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  112. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  113. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  114. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  115. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  116. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  117. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  118. package/coverage/lcov-report/automations/triggers.js.html +55 -61
  119. package/coverage/lcov-report/automations/utils.js.html +42 -54
  120. package/coverage/lcov-report/constants/index.html +5 -5
  121. package/coverage/lcov-report/constants/index.js.html +26 -53
  122. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  123. package/coverage/lcov-report/constants/screens.js.html +4 -4
  124. package/coverage/lcov-report/db/client.js.html +18 -18
  125. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  126. package/coverage/lcov-report/db/index.html +15 -15
  127. package/coverage/lcov-report/db/index.js.html +3 -3
  128. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +37 -25
  129. package/coverage/lcov-report/db/linkedRows/index.html +27 -27
  130. package/coverage/lcov-report/db/linkedRows/index.js.html +96 -51
  131. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +42 -42
  132. package/coverage/lcov-report/db/newid.js.html +4 -4
  133. package/coverage/lcov-report/db/utils.js.html +87 -87
  134. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  135. package/coverage/lcov-report/events/index.html +1 -1
  136. package/coverage/lcov-report/events/index.js.html +5 -5
  137. package/coverage/lcov-report/events/utils.js.html +3 -3
  138. package/coverage/lcov-report/index.html +120 -135
  139. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  140. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  141. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  142. package/coverage/lcov-report/middleware/authorized.js.html +65 -173
  143. package/coverage/lcov-report/middleware/builder.js.html +10 -10
  144. package/coverage/lcov-report/middleware/currentapp.js.html +83 -95
  145. package/coverage/lcov-report/middleware/index.html +38 -38
  146. package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
  147. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  148. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  149. package/coverage/lcov-report/middleware/usageQuota.js.html +53 -281
  150. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  151. package/coverage/lcov-report/threads/automation.js.html +24 -30
  152. package/coverage/lcov-report/threads/index.html +26 -26
  153. package/coverage/lcov-report/threads/index.js.html +10 -10
  154. package/coverage/lcov-report/threads/query.js.html +26 -62
  155. package/coverage/lcov-report/threads/utils.js.html +14 -14
  156. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  157. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  158. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  159. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  160. package/coverage/lcov-report/utilities/global.js.html +49 -58
  161. package/coverage/lcov-report/utilities/index.html +37 -37
  162. package/coverage/lcov-report/utilities/index.js.html +73 -43
  163. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
  164. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  165. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  166. package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
  167. package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
  168. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +103 -97
  169. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +27 -75
  170. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  171. package/coverage/lcov-report/utilities/security.js.html +8 -8
  172. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  173. package/coverage/lcov-report/utilities/users.js.html +9 -9
  174. package/coverage/lcov-report/utilities/workerRequests.js.html +112 -43
  175. package/coverage/lcov.info +4423 -5022
  176. package/dist/api/controllers/application.js +60 -90
  177. package/dist/api/controllers/auth.js +5 -8
  178. package/dist/api/controllers/automation.js +19 -14
  179. package/dist/api/controllers/cloud.js +3 -2
  180. package/dist/api/controllers/component.js +4 -3
  181. package/dist/api/controllers/datasource.js +10 -20
  182. package/dist/api/controllers/deploy/Deployment.js +6 -3
  183. package/dist/api/controllers/deploy/index.js +13 -12
  184. package/dist/api/controllers/dev.js +5 -5
  185. package/dist/api/controllers/hosting.js +30 -0
  186. package/dist/api/controllers/layout.js +3 -3
  187. package/dist/api/controllers/metadata.js +4 -4
  188. package/dist/api/controllers/permission.js +4 -4
  189. package/dist/api/controllers/query/import/index.js +6 -4
  190. package/dist/api/controllers/query/index.js +10 -11
  191. package/dist/api/controllers/role.js +5 -5
  192. package/dist/api/controllers/routing.js +6 -5
  193. package/dist/api/controllers/row/ExternalRequest.js +63 -76
  194. package/dist/api/controllers/row/external.js +4 -4
  195. package/dist/api/controllers/row/internal.js +93 -55
  196. package/dist/api/controllers/row/internalSearch.js +17 -23
  197. package/dist/api/controllers/row/utils.js +14 -13
  198. package/dist/api/controllers/screen.js +7 -5
  199. package/dist/api/controllers/static/index.js +12 -61
  200. package/dist/api/controllers/table/external.js +10 -7
  201. package/dist/api/controllers/table/index.js +13 -16
  202. package/dist/api/controllers/table/internal.js +16 -22
  203. package/dist/api/controllers/table/utils.js +35 -62
  204. package/dist/api/controllers/user.js +20 -18
  205. package/dist/api/controllers/view/index.js +10 -8
  206. package/dist/api/controllers/view/utils.js +4 -9
  207. package/dist/api/controllers/webhook.js +8 -10
  208. package/dist/api/routes/hosting.js +11 -0
  209. package/dist/api/routes/index.js +2 -2
  210. package/dist/api/routes/static.js +1 -2
  211. package/dist/api/routes/tests/utilities/TestFunctions.js +17 -37
  212. package/dist/app.js +5 -35
  213. package/dist/automations/automationUtils.js +3 -2
  214. package/dist/automations/steps/createRow.js +5 -3
  215. package/dist/automations/steps/deleteRow.js +4 -1
  216. package/dist/automations/steps/updateRow.js +1 -1
  217. package/dist/automations/triggers.js +25 -27
  218. package/dist/automations/utils.js +5 -10
  219. package/dist/constants/index.js +0 -7
  220. package/dist/db/linkedRows/LinkController.js +7 -3
  221. package/dist/db/linkedRows/index.js +27 -16
  222. package/dist/db/linkedRows/linkUtils.js +6 -6
  223. package/dist/db/views/staticViews.js +10 -9
  224. package/dist/definitions/datasource.js +0 -1
  225. package/dist/environment.js +1 -4
  226. package/dist/integrations/base/sql.js +6 -13
  227. package/dist/integrations/index.js +0 -3
  228. package/dist/integrations/utils.js +9 -60
  229. package/dist/middleware/authorized.js +30 -57
  230. package/dist/middleware/builder.js +2 -2
  231. package/dist/middleware/currentapp.js +37 -41
  232. package/dist/middleware/usageQuota.js +15 -82
  233. package/dist/package.json +5 -8
  234. package/dist/tests/utilities/TestConfiguration.js +50 -80
  235. package/dist/threads/automation.js +11 -13
  236. package/dist/threads/query.js +13 -23
  237. package/dist/tsconfig.tsbuildinfo +1 -1
  238. package/dist/utilities/fileSystem/index.js +3 -4
  239. package/dist/utilities/global.js +12 -15
  240. package/dist/utilities/index.js +17 -7
  241. package/dist/utilities/routing/index.js +5 -5
  242. package/dist/utilities/rowProcessor/index.js +17 -23
  243. package/dist/utilities/rowProcessor/utils.js +4 -14
  244. package/dist/utilities/{usageQuota/index.js → usageQuota.js} +31 -45
  245. package/dist/utilities/users.js +3 -3
  246. package/dist/utilities/workerRequests.js +24 -4
  247. package/nodemon.json +1 -1
  248. package/package.json +6 -9
  249. package/scripts/likeCypress.ts +1 -1
  250. package/src/api/controllers/application.js +50 -85
  251. package/src/api/controllers/auth.js +5 -8
  252. package/src/api/controllers/automation.js +23 -13
  253. package/src/api/controllers/cloud.js +3 -2
  254. package/src/api/controllers/component.js +4 -3
  255. package/src/api/controllers/datasource.js +11 -21
  256. package/src/api/controllers/deploy/Deployment.js +7 -3
  257. package/src/api/controllers/deploy/index.js +13 -20
  258. package/src/api/controllers/dev.js +5 -5
  259. package/src/api/controllers/hosting.js +22 -0
  260. package/src/api/controllers/layout.js +3 -3
  261. package/src/api/controllers/metadata.js +9 -4
  262. package/src/api/controllers/permission.js +4 -4
  263. package/src/api/controllers/query/import/index.ts +6 -4
  264. package/src/api/controllers/query/import/tests/index.spec.js +1 -2
  265. package/src/api/controllers/query/index.js +10 -11
  266. package/src/api/controllers/role.js +5 -5
  267. package/src/api/controllers/routing.js +6 -5
  268. package/src/api/controllers/row/ExternalRequest.ts +42 -53
  269. package/src/api/controllers/row/external.js +6 -4
  270. package/src/api/controllers/row/internal.js +90 -54
  271. package/src/api/controllers/row/internalSearch.js +17 -23
  272. package/src/api/controllers/row/utils.js +18 -13
  273. package/src/api/controllers/screen.js +7 -5
  274. package/src/api/controllers/static/index.js +12 -65
  275. package/src/api/controllers/table/external.js +10 -7
  276. package/src/api/controllers/table/index.js +28 -20
  277. package/src/api/controllers/table/internal.js +19 -24
  278. package/src/api/controllers/table/utils.js +42 -78
  279. package/src/api/controllers/user.js +20 -19
  280. package/src/api/controllers/view/index.js +10 -8
  281. package/src/api/controllers/view/utils.js +4 -9
  282. package/src/api/controllers/webhook.js +8 -10
  283. package/src/api/routes/hosting.js +13 -0
  284. package/src/api/routes/index.js +2 -2
  285. package/src/api/routes/static.js +0 -5
  286. package/src/api/routes/tests/application.spec.js +2 -2
  287. package/src/api/routes/tests/auth.spec.js +2 -1
  288. package/src/api/routes/tests/automation.spec.js +0 -1
  289. package/src/api/routes/tests/hosting.spec.js +36 -0
  290. package/src/api/routes/tests/misc.spec.js +1 -0
  291. package/src/api/routes/tests/routing.spec.js +12 -21
  292. package/src/api/routes/tests/row.spec.js +4 -7
  293. package/src/api/routes/tests/utilities/TestFunctions.js +17 -39
  294. package/src/app.ts +5 -18
  295. package/src/automations/automationUtils.js +3 -2
  296. package/src/automations/steps/createRow.js +5 -2
  297. package/src/automations/steps/deleteRow.js +4 -1
  298. package/src/automations/steps/updateRow.js +1 -1
  299. package/src/automations/triggers.js +31 -33
  300. package/src/automations/utils.js +5 -9
  301. package/src/constants/index.js +0 -9
  302. package/src/db/linkedRows/LinkController.js +7 -3
  303. package/src/db/linkedRows/index.js +31 -16
  304. package/src/db/linkedRows/linkUtils.js +6 -6
  305. package/src/db/tests/linkController.spec.js +1 -0
  306. package/src/db/tests/linkTests.spec.js +6 -5
  307. package/src/db/views/staticViews.js +10 -8
  308. package/src/definitions/common.ts +0 -3
  309. package/src/definitions/datasource.ts +0 -3
  310. package/src/environment.js +1 -4
  311. package/src/integrations/base/sql.ts +7 -14
  312. package/src/integrations/index.ts +0 -3
  313. package/src/integrations/tests/sql.spec.js +0 -16
  314. package/src/integrations/utils.ts +12 -75
  315. package/src/middleware/authorized.js +30 -66
  316. package/src/middleware/builder.js +2 -2
  317. package/src/middleware/currentapp.js +46 -50
  318. package/src/middleware/tests/authorized.spec.js +6 -13
  319. package/src/middleware/tests/currentapp.spec.js +0 -6
  320. package/src/middleware/tests/usageQuota.spec.js +24 -18
  321. package/src/middleware/usageQuota.js +17 -93
  322. package/src/tests/utilities/TestConfiguration.js +55 -82
  323. package/src/threads/automation.js +15 -17
  324. package/src/threads/query.js +14 -26
  325. package/src/utilities/fileSystem/index.js +3 -4
  326. package/src/utilities/global.js +12 -15
  327. package/src/utilities/index.js +17 -7
  328. package/src/utilities/routing/index.js +5 -5
  329. package/src/utilities/rowProcessor/index.js +27 -25
  330. package/src/utilities/rowProcessor/utils.js +7 -23
  331. package/src/utilities/usageQuota.js +73 -0
  332. package/src/utilities/users.js +3 -3
  333. package/src/utilities/workerRequests.js +27 -4
  334. package/builder/assets/index.83c0944f.css +0 -1
  335. package/coverage/lcov-report/api/controllers/migrations.js.html +0 -119
  336. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +0 -548
  337. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +0 -599
  338. package/coverage/lcov-report/utilities/usageQuota/index.html +0 -141
  339. package/coverage/lcov-report/utilities/usageQuota/index.js.html +0 -359
  340. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +0 -305
  341. package/dist/api/controllers/migrations.js +0 -21
  342. package/dist/api/controllers/row/staticFormula.js +0 -147
  343. package/dist/api/controllers/table/bulkFormula.js +0 -159
  344. package/dist/api/routes/migrations.js +0 -9
  345. package/dist/integrations/googlesheets.js +0 -340
  346. package/dist/migrations/functions/appUrls.js +0 -46
  347. package/dist/migrations/functions/quotas1.js +0 -50
  348. package/dist/migrations/functions/usageQuotas/index.js +0 -20
  349. package/dist/migrations/functions/usageQuotas/syncApps.js +0 -30
  350. package/dist/migrations/functions/usageQuotas/syncRows.js +0 -33
  351. package/dist/migrations/functions/userEmailViewCasing.js +0 -24
  352. package/dist/migrations/index.js +0 -62
  353. package/dist/utilities/usageQuota/rows.js +0 -78
  354. package/dist/utilities/usageQuota/usageQuoteReset.js +0 -16
  355. package/src/api/controllers/migrations.js +0 -13
  356. package/src/api/controllers/row/staticFormula.js +0 -156
  357. package/src/api/controllers/table/bulkFormula.js +0 -173
  358. package/src/api/routes/migrations.js +0 -14
  359. package/src/api/routes/tests/static.spec.js +0 -98
  360. package/src/integrations/googlesheets.ts +0 -353
  361. package/src/migrations/functions/appUrls.ts +0 -34
  362. package/src/migrations/functions/quotas1.ts +0 -20
  363. package/src/migrations/functions/tests/appUrls.spec.js +0 -29
  364. package/src/migrations/functions/tests/quotas1.spec.js +0 -27
  365. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +0 -25
  366. package/src/migrations/functions/usageQuotas/index.ts +0 -8
  367. package/src/migrations/functions/usageQuotas/syncApps.ts +0 -19
  368. package/src/migrations/functions/usageQuotas/syncRows.ts +0 -22
  369. package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +0 -37
  370. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +0 -43
  371. package/src/migrations/functions/userEmailViewCasing.ts +0 -13
  372. package/src/migrations/index.ts +0 -56
  373. package/src/utilities/tests/usageQuota/usageQuota.spec.js +0 -72
  374. package/src/utilities/usageQuota/index.js +0 -93
  375. package/src/utilities/usageQuota/rows.js +0 -75
  376. package/src/utilities/usageQuota/usageQuoteReset.js +0 -18
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">70.7% </span>
26
+ <span class="strong">70.99% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>787/1113</span>
28
+ <span class='fraction'>776/1093</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">46.02% </span>
33
+ <span class="strong">46.21% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>168/365</span>
35
+ <span class='fraction'>165/357</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">69.67% </span>
40
+ <span class="strong">69.12% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>108/155</span>
42
+ <span class='fraction'>103/149</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">70.8% </span>
47
+ <span class="strong">71.2% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>776/1096</span>
49
+ <span class='fraction'>769/1080</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.71" class="pic medium">
108
- <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
107
+ <td data-value="78.02" class="pic medium">
108
+ <div class="chart"><div class="cover-fill" style="width: 78%"></div><div class="cover-empty" style="width: 22%"></div></div>
109
109
  </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
- <td data-value="55.12" class="pct medium">55.12%</td>
113
- <td data-value="78" class="abs medium">43/78</td>
114
- <td data-value="88.46" class="pct high">88.46%</td>
115
- <td data-value="26" class="abs high">23/26</td>
116
- <td data-value="80.09" class="pct high">80.09%</td>
117
- <td data-value="201" class="abs high">161/201</td>
110
+ <td data-value="78.02" class="pct medium">78.02%</td>
111
+ <td data-value="182" class="abs medium">142/182</td>
112
+ <td data-value="56.94" class="pct medium">56.94%</td>
113
+ <td data-value="72" class="abs medium">41/72</td>
114
+ <td data-value="85" class="pct high">85%</td>
115
+ <td data-value="20" class="abs high">17/20</td>
116
+ <td data-value="78.88" class="pct medium">78.88%</td>
117
+ <td data-value="180" class="abs medium">142/180</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.14" class="pic high">
123
- <div class="chart"><div class="cover-fill" style="width: 82%"></div><div class="cover-empty" style="width: 18%"></div></div>
122
+ <td data-value="85.18" class="pic high">
123
+ <div class="chart"><div class="cover-fill" style="width: 85%"></div><div class="cover-empty" style="width: 15%"></div></div>
124
124
  </td>
125
- <td data-value="82.14" class="pct high">82.14%</td>
126
- <td data-value="28" class="abs high">23/28</td>
125
+ <td data-value="85.18" class="pct high">85.18%</td>
126
+ <td data-value="27" class="abs high">23/27</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.14" class="pct high">82.14%</td>
132
- <td data-value="28" class="abs high">23/28</td>
131
+ <td data-value="85.18" class="pct high">85.18%</td>
132
+ <td data-value="27" class="abs high">23/27</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="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>
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>
139
139
  </td>
140
- <td data-value="90.52" class="pct high">90.52%</td>
141
- <td data-value="95" class="abs high">86/95</td>
140
+ <td data-value="89.69" class="pct high">89.69%</td>
141
+ <td data-value="97" class="abs high">87/97</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="90.42" class="pct high">90.42%</td>
147
- <td data-value="94" class="abs high">85/94</td>
146
+ <td data-value="89.58" class="pct high">89.58%</td>
147
+ <td data-value="96" class="abs high">86/96</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="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>
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>
169
169
  </td>
170
- <td data-value="18.18" class="pct low">18.18%</td>
171
- <td data-value="55" class="abs low">10/55</td>
170
+ <td data-value="19.64" class="pct low">19.64%</td>
171
+ <td data-value="56" class="abs low">11/56</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="18.51" class="pct low">18.51%</td>
177
- <td data-value="54" class="abs low">10/54</td>
176
+ <td data-value="20" class="pct low">20%</td>
177
+ <td data-value="55" class="abs low">11/55</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="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>
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>
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="17" class="abs high">17/17</td>
192
+ <td data-value="18" class="abs high">18/18</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="59.68" class="pic medium">
197
+ <td data-value="59.67" class="pic medium">
198
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="59.68" class="pct medium">59.68%</td>
201
- <td data-value="129" class="abs medium">77/129</td>
202
- <td data-value="37.73" class="pct low">37.73%</td>
203
- <td data-value="53" class="abs low">20/53</td>
200
+ <td data-value="59.67" class="pct medium">59.67%</td>
201
+ <td data-value="124" class="abs medium">74/124</td>
202
+ <td data-value="33.33" class="pct low">33.33%</td>
203
+ <td data-value="45" class="abs low">15/45</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.37" class="pct medium">59.37%</td>
207
- <td data-value="128" class="abs medium">76/128</td>
206
+ <td data-value="59.34" class="pct medium">59.34%</td>
207
+ <td data-value="123" class="abs medium">73/123</td>
208
208
  </tr>
209
209
 
210
210
  <tr>
@@ -222,6 +222,21 @@
222
222
  <td data-value="63" class="abs low">18/63</td>
223
223
  </tr>
224
224
 
225
+ <tr>
226
+ <td class="file high" data-value="hosting.js"><a href="hosting.js.html">hosting.js</a></td>
227
+ <td data-value="93.33" class="pic high">
228
+ <div class="chart"><div class="cover-fill" style="width: 93%"></div><div class="cover-empty" style="width: 7%"></div></div>
229
+ </td>
230
+ <td data-value="93.33" class="pct high">93.33%</td>
231
+ <td data-value="15" class="abs high">14/15</td>
232
+ <td data-value="75" class="pct medium">75%</td>
233
+ <td data-value="4" class="abs medium">3/4</td>
234
+ <td data-value="50" class="pct medium">50%</td>
235
+ <td data-value="2" class="abs medium">1/2</td>
236
+ <td data-value="93.33" class="pct high">93.33%</td>
237
+ <td data-value="15" class="abs high">14/15</td>
238
+ </tr>
239
+
225
240
  <tr>
226
241
  <td class="file high" data-value="integration.js"><a href="integration.js.html">integration.js</a></td>
227
242
  <td data-value="100" class="pic high">
@@ -267,21 +282,6 @@
267
282
  <td data-value="24" class="abs high">21/24</td>
268
283
  </tr>
269
284
 
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
-
285
285
  <tr>
286
286
  <td class="file high" data-value="permission.js"><a href="permission.js.html">permission.js</a></td>
287
287
  <td data-value="98.78" class="pic high">
@@ -333,13 +333,13 @@
333
333
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
334
334
  </td>
335
335
  <td data-value="100" class="pct high">100%</td>
336
- <td data-value="21" class="abs high">21/21</td>
336
+ <td data-value="23" class="abs high">23/23</td>
337
337
  <td data-value="50" class="pct medium">50%</td>
338
338
  <td data-value="2" class="abs medium">1/2</td>
339
339
  <td data-value="100" class="pct high">100%</td>
340
340
  <td data-value="4" class="abs high">4/4</td>
341
341
  <td data-value="100" class="pct high">100%</td>
342
- <td data-value="21" class="abs high">21/21</td>
342
+ <td data-value="23" class="abs high">23/23</td>
343
343
  </tr>
344
344
 
345
345
  <tr>
@@ -374,32 +374,32 @@
374
374
 
375
375
  <tr>
376
376
  <td class="file low" data-value="user.js"><a href="user.js.html">user.js</a></td>
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>
377
+ <td data-value="32.5" class="pic low">
378
+ <div class="chart"><div class="cover-fill" style="width: 32%"></div><div class="cover-empty" style="width: 68%"></div></div>
379
379
  </td>
380
- <td data-value="31.66" class="pct low">31.66%</td>
381
- <td data-value="120" class="abs low">38/120</td>
380
+ <td data-value="32.5" class="pct low">32.5%</td>
381
+ <td data-value="120" class="abs low">39/120</td>
382
382
  <td data-value="0" class="pct low">0%</td>
383
383
  <td data-value="37" class="abs low">0/37</td>
384
384
  <td data-value="31.25" class="pct low">31.25%</td>
385
385
  <td data-value="16" class="abs low">5/16</td>
386
- <td data-value="31.93" class="pct low">31.93%</td>
387
- <td data-value="119" class="abs low">38/119</td>
386
+ <td data-value="32.77" class="pct low">32.77%</td>
387
+ <td data-value="119" class="abs low">39/119</td>
388
388
  </tr>
389
389
 
390
390
  <tr>
391
391
  <td class="file high" data-value="webhook.js"><a href="webhook.js.html">webhook.js</a></td>
392
- <td data-value="91.66" class="pic high">
392
+ <td data-value="91.37" class="pic high">
393
393
  <div class="chart"><div class="cover-fill" style="width: 91%"></div><div class="cover-empty" style="width: 9%"></div></div>
394
394
  </td>
395
- <td data-value="91.66" class="pct high">91.66%</td>
396
- <td data-value="60" class="abs high">55/60</td>
395
+ <td data-value="91.37" class="pct high">91.37%</td>
396
+ <td data-value="58" class="abs high">53/58</td>
397
397
  <td data-value="40" class="pct low">40%</td>
398
398
  <td data-value="10" class="abs low">4/10</td>
399
399
  <td data-value="100" class="pct high">100%</td>
400
400
  <td data-value="7" class="abs high">7/7</td>
401
- <td data-value="91.52" class="pct high">91.52%</td>
402
- <td data-value="59" class="abs high">54/59</td>
401
+ <td data-value="91.22" class="pct high">91.22%</td>
402
+ <td data-value="57" class="abs high">52/57</td>
403
403
  </tr>
404
404
 
405
405
  </tbody>
@@ -410,7 +410,7 @@
410
410
  <div class='footer quiet pad2 space-top1 center small'>
411
411
  Code coverage generated by
412
412
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
413
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
413
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
414
414
  </div>
415
415
  </div>
416
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 Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
103
+ at Fri Feb 04 2022 12:19:28 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">38x</span>
115
- <span class="cline-any cline-yes">38x</span>
116
- <span class="cline-any cline-yes">38x</span>
114
+ <span class="cline-any cline-yes">33x</span>
115
+ <span class="cline-any cline-yes">33x</span>
116
+ <span class="cline-any cline-yes">33x</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
118
- <span class="cline-any cline-yes">38x</span>
118
+ <span class="cline-any cline-yes">33x</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">38x</span>
138
+ <span class="cline-any cline-yes">33x</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")
166
167
  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 = getAppDB()
170
+ const db = new CouchDB(ctx.appId)
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 = getAppDB()
190
+ const db = new CouchDB(ctx.appId)
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 Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
220
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
221
221
  </div>
222
222
  </div>
223
223
  <script src="../../prettify.js"></script>
@@ -98,7 +98,12 @@
98
98
  <a name='L39'></a><a href='#L39'>39</a>
99
99
  <a name='L40'></a><a href='#L40'>40</a>
100
100
  <a name='L41'></a><a href='#L41'>41</a>
101
- <a name='L42'></a><a href='#L42'>42</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
101
+ <a name='L42'></a><a href='#L42'>42</a>
102
+ <a name='L43'></a><a href='#L43'>43</a>
103
+ <a name='L44'></a><a href='#L44'>44</a>
104
+ <a name='L45'></a><a href='#L45'>45</a>
105
+ <a name='L46'></a><a href='#L46'>46</a>
106
+ <a name='L47'></a><a href='#L47'>47</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
102
107
  <span class="cline-any cline-yes">23x</span>
103
108
  <span class="cline-any cline-yes">23x</span>
104
109
  <span class="cline-any cline-yes">23x</span>
@@ -117,6 +122,11 @@
117
122
  <span class="cline-any cline-yes">1x</span>
118
123
  <span class="cline-any cline-neutral">&nbsp;</span>
119
124
  <span class="cline-any cline-neutral">&nbsp;</span>
125
+ <span class="cline-any cline-neutral">&nbsp;</span>
126
+ <span class="cline-any cline-neutral">&nbsp;</span>
127
+ <span class="cline-any cline-neutral">&nbsp;</span>
128
+ <span class="cline-any cline-neutral">&nbsp;</span>
129
+ <span class="cline-any cline-neutral">&nbsp;</span>
120
130
  <span class="cline-any cline-yes">23x</span>
121
131
  <span class="cline-any cline-yes">1x</span>
122
132
  <span class="cline-any cline-yes">1x</span>
@@ -140,9 +150,9 @@
140
150
  <span class="cline-any cline-neutral">&nbsp;</span>
141
151
  <span class="cline-any cline-neutral">&nbsp;</span>
142
152
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { MetadataTypes } = require("../../constants")
153
+ const CouchDB = require("../../db")
143
154
  const { generateMetadataID } = require("../../db/utils")
144
155
  const { saveEntityMetadata, deleteEntityMetadata } = require("../../utilities")
145
- const { getAppDB } = require("@budibase/backend-core/context")
146
156
  &nbsp;
147
157
  exports.getTypes = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
148
158
  <span class="cstat-no" title="statement not covered" > ctx.body = {</span>
@@ -155,12 +165,17 @@ exports.saveMetadata = async ctx =&gt; {
155
165
  <span class="missing-if-branch" title="if path not taken" >I</span>if (type === MetadataTypes.AUTOMATION_TEST_HISTORY) {
156
166
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Cannot save automation history type")</span>
157
167
  }
158
- ctx.body = await saveEntityMetadata(type, entityId, ctx.request.body)
168
+ ctx.body = await saveEntityMetadata(
169
+ ctx.appId,
170
+ type,
171
+ entityId,
172
+ ctx.request.body
173
+ )
159
174
  }
160
175
  &nbsp;
161
176
  exports.deleteMetadata = async ctx =&gt; {
162
177
  const { type, entityId } = ctx.params
163
- await deleteEntityMetadata(type, entityId)
178
+ await deleteEntityMetadata(ctx.appId, type, entityId)
164
179
  ctx.body = {
165
180
  message: "Metadata deleted successfully",
166
181
  }
@@ -168,7 +183,7 @@ exports.deleteMetadata = async ctx =&gt; {
168
183
  &nbsp;
169
184
  exports.getMetadata = async ctx =&gt; {
170
185
  const { type, entityId } = ctx.params
171
- const db = getAppDB()
186
+ const db = new CouchDB(ctx.appId)
172
187
  const id = generateMetadataID(type, entityId)
173
188
  try {
174
189
  ctx.body = await db.get(id)
@@ -187,7 +202,7 @@ exports.getMetadata = async ctx =&gt; {
187
202
  <div class='footer quiet pad2 space-top1 center small'>
188
203
  Code coverage generated by
189
204
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
190
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
205
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
191
206
  </div>
192
207
  </div>
193
208
  <script src="../../prettify.js"></script>
@@ -232,27 +232,27 @@
232
232
  <a name='L173'></a><a href='#L173'>173</a>
233
233
  <a name='L174'></a><a href='#L174'>174</a>
234
234
  <a name='L175'></a><a href='#L175'>175</a>
235
- <a name='L176'></a><a href='#L176'>176</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">38x</span>
235
+ <a name='L176'></a><a href='#L176'>176</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
236
236
  <span class="cline-any cline-neutral">&nbsp;</span>
237
237
  <span class="cline-any cline-neutral">&nbsp;</span>
238
238
  <span class="cline-any cline-neutral">&nbsp;</span>
239
239
  <span class="cline-any cline-neutral">&nbsp;</span>
240
240
  <span class="cline-any cline-neutral">&nbsp;</span>
241
- <span class="cline-any cline-yes">38x</span>
242
- <span class="cline-any cline-yes">38x</span>
241
+ <span class="cline-any cline-yes">33x</span>
242
+ <span class="cline-any cline-yes">33x</span>
243
+ <span class="cline-any cline-yes">33x</span>
243
244
  <span class="cline-any cline-neutral">&nbsp;</span>
244
245
  <span class="cline-any cline-neutral">&nbsp;</span>
245
246
  <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-yes">38x</span>
247
- <span class="cline-any cline-yes">38x</span>
248
- <span class="cline-any cline-yes">38x</span>
247
+ <span class="cline-any cline-yes">33x</span>
248
+ <span class="cline-any cline-yes">33x</span>
249
249
  <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-yes">38x</span>
250
+ <span class="cline-any cline-yes">33x</span>
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
252
  <span class="cline-any cline-neutral">&nbsp;</span>
253
253
  <span class="cline-any cline-neutral">&nbsp;</span>
254
254
  <span class="cline-any cline-neutral">&nbsp;</span>
255
- <span class="cline-any cline-yes">38x</span>
255
+ <span class="cline-any cline-yes">33x</span>
256
256
  <span class="cline-any cline-neutral">&nbsp;</span>
257
257
  <span class="cline-any cline-neutral">&nbsp;</span>
258
258
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -330,16 +330,16 @@
330
330
  <span class="cline-any cline-neutral">&nbsp;</span>
331
331
  <span class="cline-any cline-neutral">&nbsp;</span>
332
332
  <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-yes">38x</span>
333
+ <span class="cline-any cline-yes">33x</span>
334
334
  <span class="cline-any cline-yes">1x</span>
335
335
  <span class="cline-any cline-neutral">&nbsp;</span>
336
336
  <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-yes">38x</span>
337
+ <span class="cline-any cline-yes">33x</span>
338
338
  <span class="cline-any cline-neutral">&nbsp;</span>
339
339
  <span class="cline-any cline-yes">1x</span>
340
340
  <span class="cline-any cline-neutral">&nbsp;</span>
341
341
  <span class="cline-any cline-neutral">&nbsp;</span>
342
- <span class="cline-any cline-yes">38x</span>
342
+ <span class="cline-any cline-yes">33x</span>
343
343
  <span class="cline-any cline-yes">1x</span>
344
344
  <span class="cline-any cline-yes">1x</span>
345
345
  <span class="cline-any cline-yes">1x</span>
@@ -365,7 +365,7 @@
365
365
  <span class="cline-any cline-yes">1x</span>
366
366
  <span class="cline-any cline-neutral">&nbsp;</span>
367
367
  <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-yes">38x</span>
368
+ <span class="cline-any cline-yes">33x</span>
369
369
  <span class="cline-any cline-yes">3x</span>
370
370
  <span class="cline-any cline-yes">3x</span>
371
371
  <span class="cline-any cline-yes">3x</span>
@@ -392,7 +392,7 @@
392
392
  <span class="cline-any cline-yes">3x</span>
393
393
  <span class="cline-any cline-neutral">&nbsp;</span>
394
394
  <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-yes">38x</span>
395
+ <span class="cline-any cline-yes">33x</span>
396
396
  <span class="cline-any cline-yes">10x</span>
397
397
  <span class="cline-any cline-neutral">&nbsp;</span>
398
398
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -400,7 +400,7 @@
400
400
  <span class="cline-any cline-neutral">&nbsp;</span>
401
401
  <span class="cline-any cline-neutral">&nbsp;</span>
402
402
  <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-yes">38x</span>
403
+ <span class="cline-any cline-yes">33x</span>
404
404
  <span class="cline-any cline-yes">1x</span>
405
405
  <span class="cline-any cline-neutral">&nbsp;</span>
406
406
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -415,12 +415,12 @@ const {
415
415
  getBuiltinRoles,
416
416
  } = require("@budibase/backend-core/roles")
417
417
  const { getRoleParams } = require("../../db/utils")
418
+ const CouchDB = require("../../db")
418
419
  const {
419
420
  CURRENTLY_SUPPORTED_LEVELS,
420
421
  getBasePermissions,
421
422
  } = require("../../utilities/security")
422
423
  const { removeFromArray } = require("../../utilities")
423
- const { getAppDB } = require("@budibase/backend-core/context")
424
424
  &nbsp;
425
425
  const PermissionUpdateType = {
426
426
  REMOVE: "remove",
@@ -444,7 +444,7 @@ async function updatePermissionOnRole(
444
444
  { roleId, resourceId, level },
445
445
  updateType
446
446
  ) {
447
- const db = getAppDB()
447
+ const db = new CouchDB(appId)
448
448
  const remove = updateType === PermissionUpdateType.REMOVE
449
449
  const isABuiltin = isBuiltin(roleId)
450
450
  const dbRoleId = getDBRoleID(roleId)
@@ -515,7 +515,7 @@ exports.fetchLevels = function (ctx) {
515
515
  }
516
516
  &nbsp;
517
517
  exports.fetch = async function (ctx) {
518
- const db = getAppDB()
518
+ const db = new CouchDB(ctx.appId)
519
519
  const roles = await getAllDBRoles(db)
520
520
  let permissions = {}
521
521
  // create an object with structure role ID -&gt; resource ID -&gt; level
@@ -542,7 +542,7 @@ exports.fetch = async function (ctx) {
542
542
  &nbsp;
543
543
  exports.getResourcePerms = async function (ctx) {
544
544
  const resourceId = ctx.params.resourceId
545
- const db = getAppDB()
545
+ const db = new CouchDB(ctx.appId)
546
546
  const body = await db.allDocs(
547
547
  getRoleParams(null, {
548
548
  include_docs: true,
@@ -589,7 +589,7 @@ exports.removePermission = async function (ctx) {
589
589
  <div class='footer quiet pad2 space-top1 center small'>
590
590
  Code coverage generated by
591
591
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
592
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
592
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
593
593
  </div>
594
594
  </div>
595
595
  <script src="../../prettify.js"></script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">81.73% </span>
26
+ <span class="strong">81.55% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>85/104</span>
28
+ <span class='fraction'>84/103</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">81.55% </span>
47
+ <span class="strong">81.37% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>84/103</span>
49
+ <span class='fraction'>83/102</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="index.js"><a href="index.js.html">index.js</a></td>
77
- <td data-value="80.2" class="pic high">
77
+ <td data-value="80" class="pic high">
78
78
  <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
79
79
  </td>
80
- <td data-value="80.2" class="pct high">80.2%</td>
81
- <td data-value="96" class="abs high">77/96</td>
80
+ <td data-value="80" class="pct high">80%</td>
81
+ <td data-value="95" class="abs high">76/95</td>
82
82
  <td data-value="65.51" class="pct medium">65.51%</td>
83
83
  <td data-value="29" class="abs medium">19/29</td>
84
84
  <td data-value="85.71" class="pct high">85.71%</td>
85
85
  <td data-value="14" class="abs high">12/14</td>
86
- <td data-value="80" class="pct high">80%</td>
87
- <td data-value="95" class="abs high">76/95</td>
86
+ <td data-value="79.78" class="pct medium">79.78%</td>
87
+ <td data-value="94" class="abs medium">75/94</td>
88
88
  </tr>
89
89
 
90
90
  <tr>
@@ -110,7 +110,7 @@
110
110
  <div class='footer quiet pad2 space-top1 center small'>
111
111
  Code coverage generated by
112
112
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
113
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
113
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
114
114
  </div>
115
115
  </div>
116
116
  <script src="../../../prettify.js"></script>