@budibase/server 1.0.198 → 1.0.199-alpha.0

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 (281) hide show
  1. package/Dockerfile +2 -0
  2. package/builder/assets/index.330d0d68.js +1315 -0
  3. package/builder/index.html +1 -1
  4. package/coverage/clover.xml +2089 -2001
  5. package/coverage/coverage-final.json +121 -122
  6. package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
  7. package/coverage/lcov-report/api/controllers/auth.js.html +7 -7
  8. package/coverage/lcov-report/api/controllers/automation.js.html +174 -72
  9. package/coverage/lcov-report/api/controllers/backup.js.html +30 -6
  10. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -11
  11. package/coverage/lcov-report/api/controllers/component.js.html +5 -5
  12. package/coverage/lcov-report/api/controllers/datasource.js.html +53 -41
  13. package/coverage/lcov-report/api/controllers/dev.js.html +94 -70
  14. package/coverage/lcov-report/api/controllers/index.html +57 -72
  15. package/coverage/lcov-report/api/controllers/integration.js.html +8 -8
  16. package/coverage/lcov-report/api/controllers/layout.js.html +28 -19
  17. package/coverage/lcov-report/api/controllers/metadata.js.html +9 -9
  18. package/coverage/lcov-report/api/controllers/migrations.js.html +4 -4
  19. package/coverage/lcov-report/api/controllers/permission.js.html +15 -15
  20. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  21. package/coverage/lcov-report/api/controllers/query/validation.js.html +10 -10
  22. package/coverage/lcov-report/api/controllers/role.js.html +78 -48
  23. package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
  24. package/coverage/lcov-report/api/controllers/row/external.js.html +19 -19
  25. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  26. package/coverage/lcov-report/api/controllers/row/internal.js.html +54 -54
  27. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +9 -9
  28. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -24
  29. package/coverage/lcov-report/api/controllers/row/utils.js.html +24 -24
  30. package/coverage/lcov-report/api/controllers/screen.js.html +56 -20
  31. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  32. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +49 -49
  33. package/coverage/lcov-report/api/controllers/table/external.js.html +23 -17
  34. package/coverage/lcov-report/api/controllers/table/index.html +26 -26
  35. package/coverage/lcov-report/api/controllers/table/index.js.html +85 -49
  36. package/coverage/lcov-report/api/controllers/templates.js.html +6 -6
  37. package/coverage/lcov-report/api/controllers/user.js.html +19 -19
  38. package/coverage/lcov-report/api/controllers/view/exporters.js.html +11 -11
  39. package/coverage/lcov-report/api/controllers/view/index.html +21 -21
  40. package/coverage/lcov-report/api/controllers/view/index.js.html +275 -65
  41. package/coverage/lcov-report/api/controllers/view/utils.js.html +23 -23
  42. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +40 -40
  43. package/coverage/lcov-report/api/controllers/webhook.js.html +17 -17
  44. package/coverage/lcov-report/api/index.html +15 -15
  45. package/coverage/lcov-report/api/index.js.html +39 -45
  46. package/coverage/lcov-report/api/routes/analytics.js.html +7 -13
  47. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
  48. package/coverage/lcov-report/api/routes/auth.js.html +6 -6
  49. package/coverage/lcov-report/api/routes/automation.js.html +11 -11
  50. package/coverage/lcov-report/api/routes/backup.js.html +8 -8
  51. package/coverage/lcov-report/api/routes/cloud.js.html +8 -8
  52. package/coverage/lcov-report/api/routes/component.js.html +8 -8
  53. package/coverage/lcov-report/api/routes/datasource.js.html +9 -9
  54. package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
  55. package/coverage/lcov-report/api/routes/dev.js.html +13 -13
  56. package/coverage/lcov-report/api/routes/index.html +1 -1
  57. package/coverage/lcov-report/api/routes/integration.js.html +8 -8
  58. package/coverage/lcov-report/api/routes/layout.js.html +8 -8
  59. package/coverage/lcov-report/api/routes/metadata.js.html +9 -9
  60. package/coverage/lcov-report/api/routes/migrations.js.html +7 -7
  61. package/coverage/lcov-report/api/routes/permission.js.html +9 -9
  62. package/coverage/lcov-report/api/routes/query.js.html +10 -10
  63. package/coverage/lcov-report/api/routes/role.js.html +9 -9
  64. package/coverage/lcov-report/api/routes/routing.js.html +8 -8
  65. package/coverage/lcov-report/api/routes/screen.js.html +9 -9
  66. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/table.js.html +10 -10
  68. package/coverage/lcov-report/api/routes/templates.js.html +8 -8
  69. package/coverage/lcov-report/api/routes/user.js.html +8 -8
  70. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  71. package/coverage/lcov-report/api/routes/utils/validators.js.html +36 -36
  72. package/coverage/lcov-report/api/routes/view.js.html +10 -10
  73. package/coverage/lcov-report/api/routes/webhook.js.html +9 -9
  74. package/coverage/lcov-report/automations/actions.js.html +25 -25
  75. package/coverage/lcov-report/automations/automationUtils.js.html +8 -8
  76. package/coverage/lcov-report/automations/bullboard.js.html +35 -35
  77. package/coverage/lcov-report/automations/index.html +29 -29
  78. package/coverage/lcov-report/automations/index.js.html +29 -17
  79. package/coverage/lcov-report/automations/steps/bash.js.html +7 -7
  80. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  81. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  82. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  83. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  84. package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
  85. package/coverage/lcov-report/automations/steps/index.html +1 -1
  86. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  87. package/coverage/lcov-report/automations/steps/loop.js.html +2 -2
  88. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  89. package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
  90. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  91. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  92. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  93. package/coverage/lcov-report/automations/steps/updateRow.js.html +6 -6
  94. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  95. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  96. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  97. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  98. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  100. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  101. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  102. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  103. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  104. package/coverage/lcov-report/automations/triggers.js.html +18 -18
  105. package/coverage/lcov-report/constants/index.html +1 -1
  106. package/coverage/lcov-report/constants/index.js.html +30 -30
  107. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  108. package/coverage/lcov-report/constants/screens.js.html +4 -4
  109. package/coverage/lcov-report/db/inMemoryView.js.html +5 -5
  110. package/coverage/lcov-report/db/index.html +1 -1
  111. package/coverage/lcov-report/db/index.js.html +9 -9
  112. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +17 -17
  113. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  114. package/coverage/lcov-report/db/linkedRows/index.js.html +36 -36
  115. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +19 -19
  116. package/coverage/lcov-report/db/newid.js.html +4 -4
  117. package/coverage/lcov-report/db/utils.js.html +81 -81
  118. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  119. package/coverage/lcov-report/events/index.html +1 -1
  120. package/coverage/lcov-report/events/index.js.html +7 -7
  121. package/coverage/lcov-report/events/utils.js.html +10 -10
  122. package/coverage/lcov-report/index.html +74 -74
  123. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  124. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  125. package/coverage/lcov-report/middleware/appInfo.js.html +5 -5
  126. package/coverage/lcov-report/middleware/builder.js.html +20 -20
  127. package/coverage/lcov-report/middleware/currentapp.js.html +49 -49
  128. package/coverage/lcov-report/middleware/index.html +1 -1
  129. package/coverage/lcov-report/middleware/joi-validator.js.html +14 -14
  130. package/coverage/lcov-report/middleware/publicApi.js.html +5 -5
  131. package/coverage/lcov-report/middleware/resourceId.js.html +29 -29
  132. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  133. package/coverage/lcov-report/middleware/utils.js.html +4 -4
  134. package/coverage/lcov-report/threads/automation.js.html +1 -1
  135. package/coverage/lcov-report/threads/index.html +1 -1
  136. package/coverage/lcov-report/threads/query.js.html +1 -1
  137. package/coverage/lcov-report/threads/utils.js.html +13 -13
  138. package/coverage/lcov-report/utilities/budibaseDir.js.html +3 -3
  139. package/coverage/lcov-report/utilities/centralPath.js.html +14 -14
  140. package/coverage/lcov-report/utilities/csvParser.js.html +34 -34
  141. package/coverage/lcov-report/utilities/global.js.html +28 -28
  142. package/coverage/lcov-report/utilities/index.html +25 -25
  143. package/coverage/lcov-report/utilities/index.js.html +41 -41
  144. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +18 -18
  145. package/coverage/lcov-report/utilities/queue/index.html +15 -15
  146. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  147. package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
  148. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  149. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +59 -59
  150. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +15 -15
  151. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  152. package/coverage/lcov-report/utilities/security.js.html +8 -8
  153. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  154. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  155. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +30 -30
  156. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  157. package/coverage/lcov-report/utilities/users.js.html +7 -7
  158. package/coverage/lcov-report/utilities/workerRequests.js.html +29 -29
  159. package/coverage/lcov.info +2903 -2762
  160. package/dist/api/controllers/analytics.js +7 -30
  161. package/dist/api/controllers/application.js +56 -16
  162. package/dist/api/controllers/automation.js +31 -2
  163. package/dist/api/controllers/backup.js +7 -0
  164. package/dist/api/controllers/datasource.js +8 -2
  165. package/dist/api/controllers/deploy/index.js +6 -2
  166. package/dist/api/controllers/dev.js +9 -2
  167. package/dist/api/controllers/layout.js +3 -0
  168. package/dist/api/controllers/query/import/index.js +12 -2
  169. package/dist/api/controllers/query/import/sources/curl.js +3 -0
  170. package/dist/api/controllers/query/import/sources/openapi2.js +3 -0
  171. package/dist/api/controllers/query/import/sources/openapi3.js +3 -0
  172. package/dist/api/controllers/query/index.js +16 -2
  173. package/dist/api/controllers/role.js +11 -0
  174. package/dist/api/controllers/screen.js +10 -1
  175. package/dist/api/controllers/static/index.js +29 -15
  176. package/dist/api/controllers/table/external.js +2 -0
  177. package/dist/api/controllers/table/index.js +12 -0
  178. package/dist/api/controllers/table/utils.js +3 -3
  179. package/dist/api/controllers/view/index.js +62 -6
  180. package/dist/api/index.js +2 -4
  181. package/dist/api/routes/analytics.js +1 -3
  182. package/dist/app.js +16 -8
  183. package/dist/automations/index.js +4 -0
  184. package/dist/environment.js +4 -2
  185. package/dist/migrations/functions/backfill/app/automations.js +31 -0
  186. package/dist/migrations/functions/backfill/app/datasources.js +28 -0
  187. package/dist/migrations/functions/backfill/app/layouts.js +33 -0
  188. package/dist/migrations/functions/backfill/app/queries.js +32 -0
  189. package/dist/migrations/functions/backfill/app/roles.js +28 -0
  190. package/dist/migrations/functions/backfill/app/screens.js +28 -0
  191. package/dist/migrations/functions/backfill/app/tables.js +40 -0
  192. package/dist/migrations/functions/backfill/app.js +175 -0
  193. package/dist/migrations/functions/backfill/global/configs.js +61 -0
  194. package/dist/migrations/functions/backfill/global/quotas.js +60 -0
  195. package/dist/migrations/functions/backfill/global/users.js +50 -0
  196. package/dist/migrations/functions/backfill/global.js +189 -0
  197. package/dist/migrations/functions/backfill/index.js +32 -0
  198. package/dist/migrations/functions/backfill/installation.js +81 -0
  199. package/dist/migrations/index.js +95 -31
  200. package/dist/migrations/tests/helpers.js +72 -0
  201. package/dist/migrations/tests/structures.js +37 -0
  202. package/dist/package.json +79 -69
  203. package/dist/tests/utilities/TestConfiguration.js +121 -93
  204. package/dist/tests/utilities/structures.js +45 -0
  205. package/dist/tsconfig.build.tsbuildinfo +1 -1
  206. package/nodemon.json +1 -1
  207. package/package.json +80 -70
  208. package/scripts/dev/manage.js +2 -0
  209. package/scripts/jestSetup.js +7 -0
  210. package/scripts/likeCypress.ts +1 -1
  211. package/src/api/controllers/analytics.ts +8 -0
  212. package/src/api/controllers/application.ts +60 -18
  213. package/src/api/controllers/automation.js +36 -2
  214. package/src/api/controllers/backup.js +8 -0
  215. package/src/api/controllers/datasource.js +8 -4
  216. package/src/api/controllers/deploy/index.ts +6 -2
  217. package/src/api/controllers/dev.js +10 -2
  218. package/src/api/controllers/layout.js +3 -0
  219. package/src/api/controllers/query/import/index.ts +16 -3
  220. package/src/api/controllers/query/import/sources/base/index.ts +2 -1
  221. package/src/api/controllers/query/import/sources/curl.ts +4 -0
  222. package/src/api/controllers/query/import/sources/openapi2.ts +4 -0
  223. package/src/api/controllers/query/import/sources/openapi3.ts +4 -0
  224. package/src/api/controllers/query/import/tests/index.spec.js +20 -7
  225. package/src/api/controllers/query/index.ts +16 -3
  226. package/src/api/controllers/role.js +10 -0
  227. package/src/api/controllers/screen.js +13 -1
  228. package/src/api/controllers/static/index.js +28 -15
  229. package/src/api/controllers/table/external.js +2 -0
  230. package/src/api/controllers/table/index.js +12 -0
  231. package/src/api/controllers/table/utils.ts +4 -4
  232. package/src/api/controllers/view/index.js +76 -6
  233. package/src/api/index.js +2 -4
  234. package/src/api/routes/analytics.js +1 -3
  235. package/src/api/routes/public/utils/Endpoint.ts +1 -1
  236. package/src/api/routes/tests/__snapshots__/datasource.spec.js.snap +5 -1
  237. package/src/api/routes/tests/application.spec.js +64 -4
  238. package/src/api/routes/tests/automation.spec.js +168 -60
  239. package/src/api/routes/tests/backup.spec.js +2 -0
  240. package/src/api/routes/tests/data/export.txt +1 -0
  241. package/src/api/routes/tests/datasource.spec.js +5 -0
  242. package/src/api/routes/tests/deployment.spec.js +25 -0
  243. package/src/api/routes/tests/dev.spec.js +40 -0
  244. package/src/api/routes/tests/layout.spec.js +4 -0
  245. package/src/api/routes/tests/query.spec.js +56 -13
  246. package/src/api/routes/tests/role.spec.js +40 -7
  247. package/src/api/routes/tests/row.spec.js +2 -3
  248. package/src/api/routes/tests/screen.spec.js +30 -4
  249. package/src/api/routes/tests/static.spec.js +120 -54
  250. package/src/api/routes/tests/table.spec.js +102 -38
  251. package/src/api/routes/tests/view.spec.js +222 -43
  252. package/src/app.ts +18 -9
  253. package/src/automations/index.js +4 -0
  254. package/src/automations/tests/delay.spec.js +4 -0
  255. package/src/environment.js +5 -2
  256. package/src/migrations/functions/backfill/app/automations.ts +26 -0
  257. package/src/migrations/functions/backfill/app/datasources.ts +22 -0
  258. package/src/migrations/functions/backfill/app/layouts.ts +29 -0
  259. package/src/migrations/functions/backfill/app/queries.ts +33 -0
  260. package/src/migrations/functions/backfill/app/roles.ts +22 -0
  261. package/src/migrations/functions/backfill/app/screens.ts +22 -0
  262. package/src/migrations/functions/backfill/app/tables.ts +36 -0
  263. package/src/migrations/functions/backfill/app.ts +148 -0
  264. package/src/migrations/functions/backfill/global/configs.ts +66 -0
  265. package/src/migrations/functions/backfill/global/quotas.ts +60 -0
  266. package/src/migrations/functions/backfill/global/users.ts +49 -0
  267. package/src/migrations/functions/backfill/global.ts +194 -0
  268. package/src/migrations/functions/backfill/index.ts +7 -0
  269. package/src/migrations/functions/backfill/installation.ts +51 -0
  270. package/src/migrations/index.ts +120 -51
  271. package/src/migrations/tests/helpers.ts +40 -0
  272. package/src/migrations/tests/index.spec.ts +132 -0
  273. package/src/migrations/tests/structures.ts +66 -0
  274. package/src/module.d.ts +0 -1
  275. package/src/tests/utilities/TestConfiguration.js +138 -90
  276. package/src/tests/utilities/structures.js +71 -0
  277. package/tsconfig.build.json +20 -5
  278. package/tsconfig.json +22 -17
  279. package/builder/assets/index.753ce79d.js +0 -1315
  280. package/coverage/lcov-report/api/controllers/analytics.js.html +0 -202
  281. package/src/api/controllers/analytics.js +0 -39
@@ -176,20 +176,20 @@
176
176
  <a name='L111'></a><a href='#L111'>111</a>
177
177
  <a name='L112'></a><a href='#L112'>112</a>
178
178
  <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
180
- <span class="cline-any cline-yes">24x</span>
179
+ <a name='L114'></a><a href='#L114'>114</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">27x</span>
180
+ <span class="cline-any cline-yes">27x</span>
181
181
  <span class="cline-any cline-neutral">&nbsp;</span>
182
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
183
  <span class="cline-any cline-neutral">&nbsp;</span>
184
184
  <span class="cline-any cline-neutral">&nbsp;</span>
185
- <span class="cline-any cline-yes">24x</span>
186
- <span class="cline-any cline-yes">24x</span>
185
+ <span class="cline-any cline-yes">27x</span>
186
+ <span class="cline-any cline-yes">27x</span>
187
187
  <span class="cline-any cline-neutral">&nbsp;</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
189
  <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-yes">24x</span>
191
- <span class="cline-any cline-yes">24x</span>
192
- <span class="cline-any cline-yes">24x</span>
190
+ <span class="cline-any cline-yes">27x</span>
191
+ <span class="cline-any cline-yes">27x</span>
192
+ <span class="cline-any cline-yes">27x</span>
193
193
  <span class="cline-any cline-neutral">&nbsp;</span>
194
194
  <span class="cline-any cline-neutral">&nbsp;</span>
195
195
  <span class="cline-any cline-no">&nbsp;</span>
@@ -203,7 +203,7 @@
203
203
  <span class="cline-any cline-no">&nbsp;</span>
204
204
  <span class="cline-any cline-neutral">&nbsp;</span>
205
205
  <span class="cline-any cline-neutral">&nbsp;</span>
206
- <span class="cline-any cline-yes">24x</span>
206
+ <span class="cline-any cline-yes">27x</span>
207
207
  <span class="cline-any cline-no">&nbsp;</span>
208
208
  <span class="cline-any cline-no">&nbsp;</span>
209
209
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -244,13 +244,13 @@
244
244
  <span class="cline-any cline-no">&nbsp;</span>
245
245
  <span class="cline-any cline-neutral">&nbsp;</span>
246
246
  <span class="cline-any cline-neutral">&nbsp;</span>
247
- <span class="cline-any cline-yes">24x</span>
247
+ <span class="cline-any cline-yes">27x</span>
248
248
  <span class="cline-any cline-no">&nbsp;</span>
249
249
  <span class="cline-any cline-neutral">&nbsp;</span>
250
250
  <span class="cline-any cline-neutral">&nbsp;</span>
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
252
  <span class="cline-any cline-neutral">&nbsp;</span>
253
- <span class="cline-any cline-yes">24x</span>
253
+ <span class="cline-any cline-yes">27x</span>
254
254
  <span class="cline-any cline-no">&nbsp;</span>
255
255
  <span class="cline-any cline-no">&nbsp;</span>
256
256
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -409,7 +409,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
409
409
  <div class='footer quiet pad2 space-top1 center small'>
410
410
  Code coverage generated by
411
411
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
412
- at Wed Jun 08 2022 12:05:51 GMT+0000 (Coordinated Universal Time)
412
+ at Mon Jun 13 2022 10:34:07 GMT+0000 (Coordinated Universal Time)
413
413
  </div>
414
414
  <script src="../../prettify.js"></script>
415
415
  <script>
@@ -97,11 +97,11 @@
97
97
  <a name='L32'></a><a href='#L32'>32</a>
98
98
  <a name='L33'></a><a href='#L33'>33</a>
99
99
  <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
101
- <span class="cline-any cline-yes">24x</span>
102
- <span class="cline-any cline-yes">24x</span>
100
+ <a name='L35'></a><a href='#L35'>35</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">27x</span>
101
+ <span class="cline-any cline-yes">27x</span>
102
+ <span class="cline-any cline-yes">27x</span>
103
103
  <span class="cline-any cline-neutral">&nbsp;</span>
104
- <span class="cline-any cline-yes">24x</span>
104
+ <span class="cline-any cline-yes">27x</span>
105
105
  <span class="cline-any cline-yes">1x</span>
106
106
  <span class="cline-any cline-yes">1x</span>
107
107
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -172,7 +172,7 @@ exports.fetchAppComponentDefinitions = async function (ctx) {
172
172
  <div class='footer quiet pad2 space-top1 center small'>
173
173
  Code coverage generated by
174
174
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
175
- at Wed Jun 08 2022 12:05:51 GMT+0000 (Coordinated Universal Time)
175
+ at Mon Jun 13 2022 10:34:07 GMT+0000 (Coordinated Universal Time)
176
176
  </div>
177
177
  <script src="../../prettify.js"></script>
178
178
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">59.68% </span>
26
+ <span class="strong">61.48% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>77/129</span>
28
+ <span class='fraction'>83/135</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.37% </span>
47
+ <span class="strong">61.19% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>76/128</span>
49
+ <span class='fraction'>82/134</span>
50
50
  </div>
51
51
 
52
52
 
@@ -322,21 +322,26 @@
322
322
  <a name='L257'></a><a href='#L257'>257</a>
323
323
  <a name='L258'></a><a href='#L258'>258</a>
324
324
  <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
326
330
  <span class="cline-any cline-neutral">&nbsp;</span>
327
331
  <span class="cline-any cline-neutral">&nbsp;</span>
328
332
  <span class="cline-any cline-neutral">&nbsp;</span>
329
333
  <span class="cline-any cline-neutral">&nbsp;</span>
330
334
  <span class="cline-any cline-neutral">&nbsp;</span>
331
335
  <span class="cline-any cline-neutral">&nbsp;</span>
332
- <span class="cline-any cline-yes">41x</span>
333
- <span class="cline-any cline-yes">41x</span>
334
- <span class="cline-any cline-yes">41x</span>
335
- <span class="cline-any cline-yes">41x</span>
336
- <span class="cline-any cline-yes">41x</span>
337
- <span class="cline-any cline-yes">41x</span>
336
+ <span class="cline-any cline-yes">44x</span>
337
+ <span class="cline-any cline-yes">44x</span>
338
+ <span class="cline-any cline-yes">44x</span>
339
+ <span class="cline-any cline-yes">44x</span>
340
+ <span class="cline-any cline-yes">44x</span>
341
+ <span class="cline-any cline-yes">44x</span>
342
+ <span class="cline-any cline-yes">44x</span>
338
343
  <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-yes">41x</span>
344
+ <span class="cline-any cline-yes">44x</span>
340
345
  <span class="cline-any cline-neutral">&nbsp;</span>
341
346
  <span class="cline-any cline-yes">2x</span>
342
347
  <span class="cline-any cline-yes">2x</span>
@@ -370,7 +375,7 @@
370
375
  <span class="cline-any cline-yes">2x</span>
371
376
  <span class="cline-any cline-neutral">&nbsp;</span>
372
377
  <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-yes">41x</span>
378
+ <span class="cline-any cline-yes">44x</span>
374
379
  <span class="cline-any cline-no">&nbsp;</span>
375
380
  <span class="cline-any cline-no">&nbsp;</span>
376
381
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -390,7 +395,7 @@
390
395
  <span class="cline-any cline-neutral">&nbsp;</span>
391
396
  <span class="cline-any cline-neutral">&nbsp;</span>
392
397
  <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-yes">41x</span>
398
+ <span class="cline-any cline-yes">44x</span>
394
399
  <span class="cline-any cline-yes">6x</span>
395
400
  <span class="cline-any cline-yes">6x</span>
396
401
  <span class="cline-any cline-yes">6x</span>
@@ -419,7 +424,7 @@
419
424
  <span class="cline-any cline-yes">1x</span>
420
425
  <span class="cline-any cline-neutral">&nbsp;</span>
421
426
  <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-yes">41x</span>
427
+ <span class="cline-any cline-yes">44x</span>
423
428
  <span class="cline-any cline-yes">6x</span>
424
429
  <span class="cline-any cline-yes">6x</span>
425
430
  <span class="cline-any cline-yes">6x</span>
@@ -433,6 +438,7 @@
433
438
  <span class="cline-any cline-neutral">&nbsp;</span>
434
439
  <span class="cline-any cline-yes">6x</span>
435
440
  <span class="cline-any cline-yes">6x</span>
441
+ <span class="cline-any cline-yes">6x</span>
436
442
  <span class="cline-any cline-neutral">&nbsp;</span>
437
443
  <span class="cline-any cline-neutral">&nbsp;</span>
438
444
  <span class="cline-any cline-yes">6x</span>
@@ -447,51 +453,52 @@
447
453
  <span class="cline-any cline-yes">6x</span>
448
454
  <span class="cline-any cline-neutral">&nbsp;</span>
449
455
  <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-yes">41x</span>
451
- <span class="cline-any cline-yes">39x</span>
452
- <span class="cline-any cline-yes">39x</span>
453
- <span class="cline-any cline-yes">39x</span>
456
+ <span class="cline-any cline-yes">44x</span>
457
+ <span class="cline-any cline-yes">52x</span>
458
+ <span class="cline-any cline-yes">52x</span>
459
+ <span class="cline-any cline-yes">52x</span>
454
460
  <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-yes">39x</span>
461
+ <span class="cline-any cline-yes">52x</span>
456
462
  <span class="cline-any cline-neutral">&nbsp;</span>
457
463
  <span class="cline-any cline-neutral">&nbsp;</span>
458
464
  <span class="cline-any cline-neutral">&nbsp;</span>
459
465
  <span class="cline-any cline-neutral">&nbsp;</span>
460
466
  <span class="cline-any cline-neutral">&nbsp;</span>
461
- <span class="cline-any cline-yes">39x</span>
462
- <span class="cline-any cline-yes">39x</span>
467
+ <span class="cline-any cline-yes">52x</span>
468
+ <span class="cline-any cline-yes">52x</span>
463
469
  <span class="cline-any cline-no">&nbsp;</span>
464
470
  <span class="cline-any cline-no">&nbsp;</span>
465
471
  <span class="cline-any cline-no">&nbsp;</span>
466
472
  <span class="cline-any cline-neutral">&nbsp;</span>
467
473
  <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-yes">39x</span>
469
- <span class="cline-any cline-yes">39x</span>
474
+ <span class="cline-any cline-yes">52x</span>
475
+ <span class="cline-any cline-yes">52x</span>
476
+ <span class="cline-any cline-yes">52x</span>
470
477
  <span class="cline-any cline-neutral">&nbsp;</span>
471
478
  <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-yes">39x</span>
473
- <span class="cline-any cline-yes">39x</span>
474
- <span class="cline-any cline-yes">39x</span>
479
+ <span class="cline-any cline-yes">52x</span>
480
+ <span class="cline-any cline-yes">52x</span>
481
+ <span class="cline-any cline-yes">52x</span>
475
482
  <span class="cline-any cline-no">&nbsp;</span>
476
483
  <span class="cline-any cline-neutral">&nbsp;</span>
477
484
  <span class="cline-any cline-neutral">&nbsp;</span>
478
485
  <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-yes">39x</span>
480
- <span class="cline-any cline-yes">39x</span>
486
+ <span class="cline-any cline-yes">52x</span>
487
+ <span class="cline-any cline-yes">52x</span>
481
488
  <span class="cline-any cline-no">&nbsp;</span>
482
489
  <span class="cline-any cline-neutral">&nbsp;</span>
483
- <span class="cline-any cline-yes">39x</span>
490
+ <span class="cline-any cline-yes">52x</span>
484
491
  <span class="cline-any cline-neutral">&nbsp;</span>
485
492
  <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-yes">41x</span>
493
+ <span class="cline-any cline-yes">44x</span>
487
494
  <span class="cline-any cline-yes">1x</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
495
  <span class="cline-any cline-yes">1x</span>
491
496
  <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-yes">1x</span>
492
498
  <span class="cline-any cline-neutral">&nbsp;</span>
493
499
  <span class="cline-any cline-yes">1x</span>
494
500
  <span class="cline-any cline-yes">1x</span>
501
+ <span class="cline-any cline-yes">1x</span>
495
502
  <span class="cline-any cline-neutral">&nbsp;</span>
496
503
  <span class="cline-any cline-neutral">&nbsp;</span>
497
504
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -500,18 +507,19 @@
500
507
  <span class="cline-any cline-neutral">&nbsp;</span>
501
508
  <span class="cline-any cline-neutral">&nbsp;</span>
502
509
  <span class="cline-any cline-yes">1x</span>
510
+ <span class="cline-any cline-yes">1x</span>
503
511
  <span class="cline-any cline-neutral">&nbsp;</span>
504
512
  <span class="cline-any cline-yes">1x</span>
505
513
  <span class="cline-any cline-yes">1x</span>
506
514
  <span class="cline-any cline-neutral">&nbsp;</span>
507
515
  <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-yes">41x</span>
516
+ <span class="cline-any cline-yes">44x</span>
509
517
  <span class="cline-any cline-yes">1x</span>
510
518
  <span class="cline-any cline-yes">1x</span>
511
519
  <span class="cline-any cline-neutral">&nbsp;</span>
512
520
  <span class="cline-any cline-neutral">&nbsp;</span>
513
521
  <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-yes">41x</span>
522
+ <span class="cline-any cline-yes">44x</span>
515
523
  <span class="cline-any cline-yes">1x</span>
516
524
  <span class="cline-any cline-yes">1x</span>
517
525
  <span class="cline-any cline-yes">1x</span>
@@ -537,7 +545,7 @@
537
545
  <span class="cline-any cline-no">&nbsp;</span>
538
546
  <span class="cline-any cline-neutral">&nbsp;</span>
539
547
  <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-yes">41x</span>
548
+ <span class="cline-any cline-yes">44x</span>
541
549
  <span class="cline-any cline-no">&nbsp;</span>
542
550
  <span class="cline-any cline-neutral">&nbsp;</span>
543
551
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -594,6 +602,7 @@ const { integrations } = require("../../integrations")
594
602
  const { getDatasourceAndQuery } = require("./row/utils")
595
603
  const { invalidateDynamicVariables } = require("../../threads/utils")
596
604
  const { getAppDB } = require("@budibase/backend-core/context")
605
+ const { events } = require("@budibase/backend-core")
597
606
  &nbsp;
598
607
  exports.fetch = async function (ctx) {
599
608
  // Get internal tables
@@ -691,6 +700,7 @@ exports.update = async function (ctx) {
691
700
  }
692
701
  &nbsp;
693
702
  const response = await db.put(datasource)
703
+ await events.datasource.updated(datasource)
694
704
  datasource._rev = response.rev
695
705
  &nbsp;
696
706
  // Drain connection pools when configuration is changed
@@ -725,6 +735,7 @@ exports.save = async function (ctx) {
725
735
  }
726
736
  &nbsp;
727
737
  const dbResp = await db.put(datasource)
738
+ await events.datasource.created(datasource)
728
739
  datasource._rev = dbResp.rev
729
740
  &nbsp;
730
741
  // Drain connection pools when configuration is changed
@@ -744,11 +755,11 @@ exports.save = async function (ctx) {
744
755
  &nbsp;
745
756
  exports.destroy = async function (ctx) {
746
757
  const db = getAppDB()
758
+ const datasourceId = ctx.params.datasourceId
747
759
  &nbsp;
760
+ const datasource = await db.get(datasourceId)
748
761
  // Delete all queries for the datasource
749
- const queries = await db.allDocs(
750
- getQueryParams(ctx.params.datasourceId, null)
751
- )
762
+ const queries = await db.allDocs(getQueryParams(datasourceId, null))
752
763
  await db.bulkDocs(
753
764
  queries.rows.map(row =&gt; ({
754
765
  _id: row.id,
@@ -758,7 +769,8 @@ exports.destroy = async function (ctx) {
758
769
  )
759
770
  &nbsp;
760
771
  // delete the datasource
761
- await db.remove(ctx.params.datasourceId, ctx.params.revId)
772
+ await db.remove(datasourceId, ctx.params.revId)
773
+ await events.datasource.deleted(datasource)
762
774
  &nbsp;
763
775
  ctx.message = `Datasource deleted.`
764
776
  ctx.status = 200
@@ -847,7 +859,7 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
847
859
  <div class='footer quiet pad2 space-top1 center small'>
848
860
  Code coverage generated by
849
861
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
850
- at Wed Jun 08 2022 12:05:51 GMT+0000 (Coordinated Universal Time)
862
+ at Mon Jun 13 2022 10:34:07 GMT+0000 (Coordinated Universal Time)
851
863
  </div>
852
864
  <script src="../../prettify.js"></script>
853
865
  <script>