@budibase/server 0.9.125-alpha.4 → 0.9.125-alpha.8

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 (270) hide show
  1. package/builder/assets/{index.dc48c234.js → index.cf133375.js} +2 -2
  2. package/builder/assets/{vendor.4af73c18.js → vendor.d8e1ee7b.js} +1 -1
  3. package/builder/index.html +2 -2
  4. package/coverage/clover.xml +1659 -1493
  5. package/coverage/coverage-final.json +101 -87
  6. package/coverage/lcov-report/api/controllers/analytics.js.html +3 -3
  7. package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
  8. package/coverage/lcov-report/api/controllers/application.js.html +39 -39
  9. package/coverage/lcov-report/api/controllers/auth.js.html +6 -6
  10. package/coverage/lcov-report/api/controllers/automation.js.html +151 -361
  11. package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
  12. package/coverage/lcov-report/api/controllers/component.js.html +5 -5
  13. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/dev.js.html +15 -15
  15. package/coverage/lcov-report/api/controllers/hosting.js.html +8 -8
  16. package/coverage/lcov-report/api/controllers/index.html +39 -24
  17. package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
  18. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/metadata.js.html +218 -0
  20. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/query.js.html +6 -12
  22. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
  24. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/row/index.html +20 -20
  26. package/coverage/lcov-report/api/controllers/row/index.js.html +14 -14
  27. package/coverage/lcov-report/api/controllers/row/internal.js.html +95 -62
  28. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/utils.js.html +10 -10
  30. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  33. package/coverage/lcov-report/api/controllers/table/index.js.html +24 -24
  34. package/coverage/lcov-report/api/controllers/table/utils.js.html +32 -32
  35. package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
  36. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  39. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  40. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  42. package/coverage/lcov-report/api/index.html +1 -1
  43. package/coverage/lcov-report/api/index.js.html +23 -23
  44. package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
  45. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
  46. package/coverage/lcov-report/api/routes/application.js.html +8 -8
  47. package/coverage/lcov-report/api/routes/auth.js.html +6 -6
  48. package/coverage/lcov-report/api/routes/automation.js.html +41 -26
  49. package/coverage/lcov-report/api/routes/backup.js.html +8 -8
  50. package/coverage/lcov-report/api/routes/component.js.html +8 -8
  51. package/coverage/lcov-report/api/routes/datasource.js.html +13 -13
  52. package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
  53. package/coverage/lcov-report/api/routes/dev.js.html +11 -11
  54. package/coverage/lcov-report/api/routes/hosting.js.html +8 -8
  55. package/coverage/lcov-report/api/routes/index.html +24 -9
  56. package/coverage/lcov-report/api/routes/index.js.html +36 -30
  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 +194 -0
  60. package/coverage/lcov-report/api/routes/permission.js.html +12 -12
  61. package/coverage/lcov-report/api/routes/query.js.html +13 -13
  62. package/coverage/lcov-report/api/routes/role.js.html +12 -12
  63. package/coverage/lcov-report/api/routes/routing.js.html +8 -8
  64. package/coverage/lcov-report/api/routes/row.js.html +10 -10
  65. package/coverage/lcov-report/api/routes/screen.js.html +11 -11
  66. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/static.js.html +13 -13
  68. package/coverage/lcov-report/api/routes/table.js.html +12 -12
  69. package/coverage/lcov-report/api/routes/templates.js.html +8 -8
  70. package/coverage/lcov-report/api/routes/user.js.html +9 -9
  71. package/coverage/lcov-report/api/routes/view.js.html +11 -11
  72. package/coverage/lcov-report/api/routes/webhook.js.html +11 -11
  73. package/coverage/lcov-report/automations/actions.js.html +38 -107
  74. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  75. package/coverage/lcov-report/automations/bullboard.js.html +46 -16
  76. package/coverage/lcov-report/automations/index.html +67 -67
  77. package/coverage/lcov-report/automations/index.js.html +26 -128
  78. package/coverage/lcov-report/automations/steps/bash.js.html +33 -12
  79. package/coverage/lcov-report/automations/steps/createRow.js.html +8 -8
  80. package/coverage/lcov-report/automations/steps/delay.js.html +45 -6
  81. package/coverage/lcov-report/automations/steps/deleteRow.js.html +8 -8
  82. package/coverage/lcov-report/automations/steps/discord.js.html +329 -0
  83. package/coverage/lcov-report/automations/steps/executeQuery.js.html +19 -31
  84. package/coverage/lcov-report/automations/steps/executeScript.js.html +18 -30
  85. package/coverage/lcov-report/automations/steps/filter.js.html +22 -19
  86. package/coverage/lcov-report/automations/steps/index.html +125 -65
  87. package/coverage/lcov-report/automations/steps/integromat.js.html +341 -0
  88. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +26 -32
  89. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +9 -9
  90. package/coverage/lcov-report/automations/steps/serverLog.js.html +20 -8
  91. package/coverage/lcov-report/automations/steps/{sendgridEmail.js.html → slack.js.html} +57 -87
  92. package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
  93. package/coverage/lcov-report/automations/steps/utils.js.html +188 -0
  94. package/coverage/lcov-report/automations/steps/zapier.js.html +332 -0
  95. package/coverage/lcov-report/automations/thread.js.html +79 -76
  96. package/coverage/lcov-report/automations/triggerInfo/app.js.html +173 -0
  97. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +173 -0
  98. package/coverage/lcov-report/automations/triggerInfo/index.html +201 -0
  99. package/coverage/lcov-report/automations/triggerInfo/index.js.html +125 -0
  100. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +176 -0
  101. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +200 -0
  102. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +200 -0
  103. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +188 -0
  104. package/coverage/lcov-report/automations/triggers.js.html +54 -819
  105. package/coverage/lcov-report/automations/utils.js.html +557 -0
  106. package/coverage/lcov-report/constants/index.html +5 -5
  107. package/coverage/lcov-report/constants/index.js.html +19 -4
  108. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  109. package/coverage/lcov-report/constants/screens.js.html +2 -2
  110. package/coverage/lcov-report/db/client.js.html +1 -1
  111. package/coverage/lcov-report/db/index.html +19 -19
  112. package/coverage/lcov-report/db/index.js.html +1 -1
  113. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +73 -73
  114. package/coverage/lcov-report/db/linkedRows/index.html +17 -17
  115. package/coverage/lcov-report/db/linkedRows/index.js.html +79 -115
  116. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +31 -31
  117. package/coverage/lcov-report/db/newid.js.html +2 -2
  118. package/coverage/lcov-report/db/utils.js.html +79 -28
  119. package/coverage/lcov-report/events/AutomationEmitter.js.html +7 -7
  120. package/coverage/lcov-report/events/index.html +1 -1
  121. package/coverage/lcov-report/events/index.js.html +2 -2
  122. package/coverage/lcov-report/events/utils.js.html +1 -1
  123. package/coverage/lcov-report/index.html +115 -100
  124. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  125. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  126. package/coverage/lcov-report/{automations/logic.js.html → middleware/appInfo.js.html} +35 -38
  127. package/coverage/lcov-report/middleware/authorized.js.html +16 -16
  128. package/coverage/lcov-report/middleware/builder.js.html +15 -15
  129. package/coverage/lcov-report/middleware/currentapp.js.html +33 -33
  130. package/coverage/lcov-report/middleware/index.html +23 -8
  131. package/coverage/lcov-report/middleware/joi-validator.js.html +6 -6
  132. package/coverage/lcov-report/middleware/resourceId.js.html +28 -28
  133. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  134. package/coverage/lcov-report/middleware/usageQuota.js.html +8 -8
  135. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  136. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  137. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  138. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  139. package/coverage/lcov-report/utilities/global.js.html +21 -21
  140. package/coverage/lcov-report/utilities/index.html +18 -18
  141. package/coverage/lcov-report/utilities/index.js.html +167 -14
  142. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +12 -12
  143. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  144. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  145. package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
  146. package/coverage/lcov-report/utilities/rowProcessor/index.html +14 -14
  147. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +87 -51
  148. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +8 -8
  149. package/coverage/lcov-report/utilities/security.js.html +2 -2
  150. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  151. package/coverage/lcov-report/utilities/users.js.html +1 -1
  152. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  153. package/coverage/lcov.info +2641 -2357
  154. package/dist/api/controllers/automation.js +49 -127
  155. package/dist/api/controllers/deploy/index.js +17 -1
  156. package/dist/api/controllers/metadata.js +49 -0
  157. package/dist/api/controllers/query.js +0 -2
  158. package/dist/api/controllers/row/internal.js +33 -23
  159. package/dist/api/routes/automation.js +4 -5
  160. package/dist/api/routes/index.js +2 -0
  161. package/dist/api/routes/metadata.js +13 -0
  162. package/dist/api/routes/tests/utilities/TestFunctions.js +13 -0
  163. package/dist/app.js +1 -1
  164. package/dist/automations/actions.js +26 -46
  165. package/dist/automations/bullboard.js +10 -2
  166. package/dist/automations/index.js +11 -48
  167. package/dist/automations/steps/bash.js +11 -5
  168. package/dist/automations/steps/createRow.js +4 -4
  169. package/dist/automations/steps/delay.js +15 -2
  170. package/dist/automations/steps/deleteRow.js +4 -4
  171. package/dist/automations/steps/discord.js +91 -0
  172. package/dist/automations/steps/executeQuery.js +11 -14
  173. package/dist/automations/steps/executeScript.js +11 -14
  174. package/dist/automations/steps/filter.js +18 -17
  175. package/dist/automations/steps/integromat.js +94 -0
  176. package/dist/automations/steps/outgoingWebhook.js +12 -16
  177. package/dist/automations/steps/sendSmtpEmail.js +3 -3
  178. package/dist/automations/steps/serverLog.js +6 -2
  179. package/dist/automations/steps/slack.js +73 -0
  180. package/dist/automations/steps/updateRow.js +3 -3
  181. package/dist/automations/steps/utils.js +46 -0
  182. package/dist/automations/steps/zapier.js +91 -0
  183. package/dist/automations/tests/utilities/index.js +2 -12
  184. package/dist/automations/thread.js +23 -25
  185. package/dist/automations/triggerInfo/app.js +32 -0
  186. package/dist/automations/triggerInfo/cron.js +32 -0
  187. package/dist/automations/triggerInfo/index.js +15 -0
  188. package/dist/automations/triggerInfo/rowDeleted.js +33 -0
  189. package/dist/automations/triggerInfo/rowSaved.js +41 -0
  190. package/dist/automations/triggerInfo/rowUpdated.js +41 -0
  191. package/dist/automations/triggerInfo/webhook.js +37 -0
  192. package/dist/automations/triggers.js +27 -284
  193. package/dist/automations/utils.js +143 -0
  194. package/dist/constants/index.js +4 -0
  195. package/dist/db/linkedRows/index.js +14 -26
  196. package/dist/db/utils.js +14 -1
  197. package/dist/environment.js +1 -0
  198. package/dist/integrations/mysql.js +1 -1
  199. package/dist/middleware/appInfo.js +17 -0
  200. package/dist/middleware/usageQuota.js +1 -1
  201. package/dist/package.json +7 -6
  202. package/dist/tsconfig.tsbuildinfo +1 -1
  203. package/dist/utilities/fileSystem/index.js +0 -26
  204. package/dist/utilities/index.js +54 -0
  205. package/dist/utilities/redis.js +16 -1
  206. package/dist/utilities/rowProcessor/index.js +7 -4
  207. package/package.json +8 -7
  208. package/scripts/selfhost.js +8 -0
  209. package/src/api/controllers/automation.js +75 -145
  210. package/src/api/controllers/deploy/index.js +23 -1
  211. package/src/api/controllers/metadata.js +46 -0
  212. package/src/api/controllers/query.js +0 -2
  213. package/src/api/controllers/row/internal.js +34 -23
  214. package/src/api/routes/automation.js +16 -11
  215. package/src/api/routes/index.js +2 -0
  216. package/src/api/routes/metadata.js +38 -0
  217. package/src/api/routes/tests/automation.spec.js +4 -26
  218. package/src/api/routes/tests/metadata.spec.js +65 -0
  219. package/src/api/routes/tests/utilities/TestFunctions.js +14 -0
  220. package/src/app.ts +1 -1
  221. package/src/automations/actions.js +26 -49
  222. package/src/automations/bullboard.js +12 -2
  223. package/src/automations/index.js +11 -45
  224. package/src/automations/steps/bash.js +12 -5
  225. package/src/automations/steps/createRow.js +4 -4
  226. package/src/automations/steps/delay.js +15 -2
  227. package/src/automations/steps/deleteRow.js +4 -4
  228. package/src/automations/steps/discord.js +83 -0
  229. package/src/automations/steps/executeQuery.js +11 -15
  230. package/src/automations/steps/executeScript.js +11 -15
  231. package/src/automations/steps/filter.js +18 -17
  232. package/src/automations/steps/integromat.js +87 -0
  233. package/src/automations/steps/outgoingWebhook.js +12 -14
  234. package/src/automations/steps/sendSmtpEmail.js +3 -3
  235. package/src/automations/steps/serverLog.js +6 -2
  236. package/src/automations/steps/slack.js +64 -0
  237. package/src/automations/steps/updateRow.js +3 -3
  238. package/src/automations/steps/utils.js +36 -0
  239. package/src/automations/steps/zapier.js +84 -0
  240. package/src/automations/tests/automation.spec.js +3 -66
  241. package/src/automations/tests/delay.spec.js +1 -1
  242. package/src/automations/tests/filter.spec.js +13 -13
  243. package/src/automations/tests/utilities/index.js +2 -13
  244. package/src/automations/thread.js +27 -26
  245. package/src/automations/triggerInfo/app.js +31 -0
  246. package/src/automations/triggerInfo/cron.js +31 -0
  247. package/src/automations/triggerInfo/index.js +15 -0
  248. package/src/automations/triggerInfo/rowDeleted.js +32 -0
  249. package/src/automations/triggerInfo/rowSaved.js +40 -0
  250. package/src/automations/triggerInfo/rowUpdated.js +40 -0
  251. package/src/automations/triggerInfo/webhook.js +36 -0
  252. package/src/automations/triggers.js +33 -288
  253. package/src/automations/utils.js +159 -0
  254. package/src/constants/index.js +5 -0
  255. package/src/db/linkedRows/index.js +15 -27
  256. package/src/db/tests/linkTests.spec.js +0 -12
  257. package/src/db/utils.js +17 -0
  258. package/src/environment.js +1 -0
  259. package/src/integrations/mysql.ts +1 -1
  260. package/src/middleware/appInfo.js +19 -0
  261. package/src/middleware/usageQuota.js +1 -1
  262. package/src/utilities/fileSystem/index.js +0 -30
  263. package/src/utilities/index.js +51 -0
  264. package/src/utilities/redis.js +18 -1
  265. package/src/utilities/rowProcessor/index.js +16 -4
  266. package/dist/automations/logic.js +0 -17
  267. package/dist/automations/steps/sendgridEmail.js +0 -85
  268. package/src/automations/logic.js +0 -20
  269. package/src/automations/steps/sendgridEmail.js +0 -74
  270. package/src/automations/tests/sendEmail.spec.js +0 -36
@@ -361,7 +361,7 @@ exports.trigger = async ctx => {
361
361
  <div class='footer quiet pad2 space-top1 center small'>
362
362
  Code coverage generated by
363
363
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
364
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
364
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
365
365
  </div>
366
366
  </div>
367
367
  <script src="../../prettify.js"></script>
@@ -95,7 +95,7 @@
95
95
  <div class='footer quiet pad2 space-top1 center small'>
96
96
  Code coverage generated by
97
97
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
98
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
98
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
99
99
  </div>
100
100
  </div>
101
101
  <script src="../prettify.js"></script>
@@ -146,23 +146,23 @@
146
146
  <a name='L87'></a><a href='#L87'>87</a>
147
147
  <a name='L88'></a><a href='#L88'>88</a>
148
148
  <a name='L89'></a><a href='#L89'>89</a>
149
- <a name='L90'></a><a href='#L90'>90</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
149
+ <a name='L90'></a><a href='#L90'>90</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
150
150
  <span class="cline-any cline-neutral">&nbsp;</span>
151
151
  <span class="cline-any cline-neutral">&nbsp;</span>
152
152
  <span class="cline-any cline-neutral">&nbsp;</span>
153
153
  <span class="cline-any cline-neutral">&nbsp;</span>
154
154
  <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-yes">22x</span>
156
- <span class="cline-any cline-yes">22x</span>
157
- <span class="cline-any cline-yes">22x</span>
158
- <span class="cline-any cline-yes">22x</span>
159
- <span class="cline-any cline-yes">22x</span>
160
- <span class="cline-any cline-yes">22x</span>
161
- <span class="cline-any cline-yes">22x</span>
155
+ <span class="cline-any cline-yes">23x</span>
156
+ <span class="cline-any cline-yes">23x</span>
157
+ <span class="cline-any cline-yes">23x</span>
158
+ <span class="cline-any cline-yes">23x</span>
159
+ <span class="cline-any cline-yes">23x</span>
160
+ <span class="cline-any cline-yes">23x</span>
161
+ <span class="cline-any cline-yes">23x</span>
162
162
  <span class="cline-any cline-neutral">&nbsp;</span>
163
- <span class="cline-any cline-yes">22x</span>
163
+ <span class="cline-any cline-yes">23x</span>
164
164
  <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-yes">22x</span>
165
+ <span class="cline-any cline-yes">23x</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
167
  <span class="cline-any cline-neutral">&nbsp;</span>
168
168
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -176,11 +176,11 @@
176
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
177
  <span class="cline-any cline-neutral">&nbsp;</span>
178
178
  <span class="cline-any cline-neutral">&nbsp;</span>
179
- <span class="cline-any cline-yes">150x</span>
179
+ <span class="cline-any cline-yes">155x</span>
180
180
  <span class="cline-any cline-neutral">&nbsp;</span>
181
181
  <span class="cline-any cline-neutral">&nbsp;</span>
182
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
- <span class="cline-any cline-yes">150x</span>
183
+ <span class="cline-any cline-yes">155x</span>
184
184
  <span class="cline-any cline-neutral">&nbsp;</span>
185
185
  <span class="cline-any cline-yes">1x</span>
186
186
  <span class="cline-any cline-yes">1x</span>
@@ -205,9 +205,9 @@
205
205
  <span class="cline-any cline-neutral">&nbsp;</span>
206
206
  <span class="cline-any cline-neutral">&nbsp;</span>
207
207
  <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-yes">22x</span>
209
- <span class="cline-any cline-yes">148x</span>
210
- <span class="cline-any cline-yes">148x</span>
208
+ <span class="cline-any cline-yes">23x</span>
209
+ <span class="cline-any cline-yes">153x</span>
210
+ <span class="cline-any cline-yes">153x</span>
211
211
  <span class="cline-any cline-neutral">&nbsp;</span>
212
212
  <span class="cline-any cline-yes">37x</span>
213
213
  <span class="cline-any cline-yes">37x</span>
@@ -222,19 +222,19 @@
222
222
  <span class="cline-any cline-neutral">&nbsp;</span>
223
223
  <span class="cline-any cline-neutral">&nbsp;</span>
224
224
  <span class="cline-any cline-neutral">&nbsp;</span>
225
- <span class="cline-any cline-yes">22x</span>
225
+ <span class="cline-any cline-yes">23x</span>
226
226
  <span class="cline-any cline-neutral">&nbsp;</span>
227
227
  <span class="cline-any cline-neutral">&nbsp;</span>
228
- <span class="cline-any cline-yes">22x</span>
229
- <span class="cline-any cline-yes">528x</span>
230
- <span class="cline-any cline-yes">528x</span>
228
+ <span class="cline-any cline-yes">23x</span>
229
+ <span class="cline-any cline-yes">575x</span>
230
+ <span class="cline-any cline-yes">575x</span>
231
231
  <span class="cline-any cline-neutral">&nbsp;</span>
232
232
  <span class="cline-any cline-neutral">&nbsp;</span>
233
233
  <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-yes">22x</span>
235
- <span class="cline-any cline-yes">22x</span>
234
+ <span class="cline-any cline-yes">23x</span>
235
+ <span class="cline-any cline-yes">23x</span>
236
236
  <span class="cline-any cline-neutral">&nbsp;</span>
237
- <span class="cline-any cline-yes">22x</span>
237
+ <span class="cline-any cline-yes">23x</span>
238
238
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
239
239
  const {
240
240
  buildAuthMiddleware,
@@ -331,7 +331,7 @@ module.exports = router
331
331
  <div class='footer quiet pad2 space-top1 center small'>
332
332
  Code coverage generated by
333
333
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
334
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
334
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
335
335
  </div>
336
336
  </div>
337
337
  <script src="../prettify.js"></script>
@@ -65,14 +65,14 @@
65
65
  <a name='L6'></a><a href='#L6'>6</a>
66
66
  <a name='L7'></a><a href='#L7'>7</a>
67
67
  <a name='L8'></a><a href='#L8'>8</a>
68
- <a name='L9'></a><a href='#L9'>9</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
69
- <span class="cline-any cline-yes">22x</span>
68
+ <a name='L9'></a><a href='#L9'>9</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
69
+ <span class="cline-any cline-yes">23x</span>
70
70
  <span class="cline-any cline-neutral">&nbsp;</span>
71
- <span class="cline-any cline-yes">22x</span>
71
+ <span class="cline-any cline-yes">23x</span>
72
72
  <span class="cline-any cline-neutral">&nbsp;</span>
73
- <span class="cline-any cline-yes">22x</span>
73
+ <span class="cline-any cline-yes">23x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">22x</span>
75
+ <span class="cline-any cline-yes">23x</span>
76
76
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
77
77
  const controller = require("../controllers/analytics")
78
78
  &nbsp;
@@ -88,7 +88,7 @@ module.exports = router
88
88
  <div class='footer quiet pad2 space-top1 center small'>
89
89
  Code coverage generated by
90
90
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
91
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
91
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
92
92
  </div>
93
93
  </div>
94
94
  <script src="../../prettify.js"></script>
@@ -69,18 +69,18 @@
69
69
  <a name='L10'></a><a href='#L10'>10</a>
70
70
  <a name='L11'></a><a href='#L11'>11</a>
71
71
  <a name='L12'></a><a href='#L12'>12</a>
72
- <a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
73
- <span class="cline-any cline-yes">22x</span>
74
- <span class="cline-any cline-yes">22x</span>
75
- <span class="cline-any cline-yes">22x</span>
72
+ <a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
73
+ <span class="cline-any cline-yes">23x</span>
74
+ <span class="cline-any cline-yes">23x</span>
75
+ <span class="cline-any cline-yes">23x</span>
76
76
  <span class="cline-any cline-neutral">&nbsp;</span>
77
- <span class="cline-any cline-yes">22x</span>
77
+ <span class="cline-any cline-yes">23x</span>
78
78
  <span class="cline-any cline-neutral">&nbsp;</span>
79
- <span class="cline-any cline-yes">22x</span>
79
+ <span class="cline-any cline-yes">23x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span>
81
81
  <span class="cline-any cline-neutral">&nbsp;</span>
82
82
  <span class="cline-any cline-neutral">&nbsp;</span>
83
- <span class="cline-any cline-yes">22x</span>
83
+ <span class="cline-any cline-yes">23x</span>
84
84
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
85
85
  const controller = require("../controllers/apikeys")
86
86
  const authorized = require("../../middleware/authorized")
@@ -100,7 +100,7 @@ module.exports = router
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 Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
103
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
104
104
  </div>
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
@@ -83,14 +83,14 @@
83
83
  <a name='L24'></a><a href='#L24'>24</a>
84
84
  <a name='L25'></a><a href='#L25'>25</a>
85
85
  <a name='L26'></a><a href='#L26'>26</a>
86
- <a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
87
- <span class="cline-any cline-yes">22x</span>
88
- <span class="cline-any cline-yes">22x</span>
89
- <span class="cline-any cline-yes">22x</span>
86
+ <a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
87
+ <span class="cline-any cline-yes">23x</span>
88
+ <span class="cline-any cline-yes">23x</span>
89
+ <span class="cline-any cline-yes">23x</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span>
91
- <span class="cline-any cline-yes">22x</span>
91
+ <span class="cline-any cline-yes">23x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span>
93
- <span class="cline-any cline-yes">22x</span>
93
+ <span class="cline-any cline-yes">23x</span>
94
94
  <span class="cline-any cline-neutral">&nbsp;</span>
95
95
  <span class="cline-any cline-neutral">&nbsp;</span>
96
96
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -108,7 +108,7 @@
108
108
  <span class="cline-any cline-neutral">&nbsp;</span>
109
109
  <span class="cline-any cline-neutral">&nbsp;</span>
110
110
  <span class="cline-any cline-neutral">&nbsp;</span>
111
- <span class="cline-any cline-yes">22x</span>
111
+ <span class="cline-any cline-yes">23x</span>
112
112
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
113
113
  const controller = require("../controllers/application")
114
114
  const authorized = require("../../middleware/authorized")
@@ -142,7 +142,7 @@ module.exports = router
142
142
  <div class='footer quiet pad2 space-top1 center small'>
143
143
  Code coverage generated by
144
144
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
145
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
145
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
146
146
  </div>
147
147
  </div>
148
148
  <script src="../../prettify.js"></script>
@@ -65,14 +65,14 @@
65
65
  <a name='L6'></a><a href='#L6'>6</a>
66
66
  <a name='L7'></a><a href='#L7'>7</a>
67
67
  <a name='L8'></a><a href='#L8'>8</a>
68
- <a name='L9'></a><a href='#L9'>9</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
69
- <span class="cline-any cline-yes">22x</span>
68
+ <a name='L9'></a><a href='#L9'>9</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
69
+ <span class="cline-any cline-yes">23x</span>
70
70
  <span class="cline-any cline-neutral">&nbsp;</span>
71
- <span class="cline-any cline-yes">22x</span>
71
+ <span class="cline-any cline-yes">23x</span>
72
72
  <span class="cline-any cline-neutral">&nbsp;</span>
73
- <span class="cline-any cline-yes">22x</span>
73
+ <span class="cline-any cline-yes">23x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">22x</span>
75
+ <span class="cline-any cline-yes">23x</span>
76
76
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
77
77
  const controller = require("../controllers/auth")
78
78
  &nbsp;
@@ -88,7 +88,7 @@ module.exports = router
88
88
  <div class='footer quiet pad2 space-top1 center small'>
89
89
  Code coverage generated by
90
90
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
91
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
91
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
92
92
  </div>
93
93
  </div>
94
94
  <script src="../../prettify.js"></script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>12/12</span>
28
+ <span class='fraction'>13/13</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>12/12</span>
49
+ <span class='fraction'>13/13</span>
50
50
  </div>
51
51
 
52
52
 
@@ -157,26 +157,32 @@
157
157
  <a name='L98'></a><a href='#L98'>98</a>
158
158
  <a name='L99'></a><a href='#L99'>99</a>
159
159
  <a name='L100'></a><a href='#L100'>100</a>
160
- <a name='L101'></a><a href='#L101'>101</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
161
- <span class="cline-any cline-yes">22x</span>
162
- <span class="cline-any cline-yes">22x</span>
163
- <span class="cline-any cline-yes">22x</span>
160
+ <a name='L101'></a><a href='#L101'>101</a>
161
+ <a name='L102'></a><a href='#L102'>102</a>
162
+ <a name='L103'></a><a href='#L103'>103</a>
163
+ <a name='L104'></a><a href='#L104'>104</a>
164
+ <a name='L105'></a><a href='#L105'>105</a>
165
+ <a name='L106'></a><a href='#L106'>106</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
166
+ <span class="cline-any cline-yes">23x</span>
167
+ <span class="cline-any cline-yes">23x</span>
168
+ <span class="cline-any cline-yes">23x</span>
164
169
  <span class="cline-any cline-neutral">&nbsp;</span>
165
170
  <span class="cline-any cline-neutral">&nbsp;</span>
166
171
  <span class="cline-any cline-neutral">&nbsp;</span>
167
172
  <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-yes">22x</span>
169
- <span class="cline-any cline-yes">22x</span>
170
- <span class="cline-any cline-yes">22x</span>
173
+ <span class="cline-any cline-yes">23x</span>
174
+ <span class="cline-any cline-yes">23x</span>
175
+ <span class="cline-any cline-yes">23x</span>
171
176
  <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-yes">22x</span>
173
177
  <span class="cline-any cline-neutral">&nbsp;</span>
174
178
  <span class="cline-any cline-neutral">&nbsp;</span>
179
+ <span class="cline-any cline-yes">23x</span>
175
180
  <span class="cline-any cline-neutral">&nbsp;</span>
176
- <span class="cline-any cline-yes">88x</span>
181
+ <span class="cline-any cline-yes">23x</span>
177
182
  <span class="cline-any cline-neutral">&nbsp;</span>
178
183
  <span class="cline-any cline-neutral">&nbsp;</span>
179
184
  <span class="cline-any cline-neutral">&nbsp;</span>
185
+ <span class="cline-any cline-yes">92x</span>
180
186
  <span class="cline-any cline-neutral">&nbsp;</span>
181
187
  <span class="cline-any cline-neutral">&nbsp;</span>
182
188
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -189,9 +195,9 @@
189
195
  <span class="cline-any cline-neutral">&nbsp;</span>
190
196
  <span class="cline-any cline-neutral">&nbsp;</span>
191
197
  <span class="cline-any cline-neutral">&nbsp;</span>
192
- <span class="cline-any cline-yes">44x</span>
193
198
  <span class="cline-any cline-neutral">&nbsp;</span>
194
199
  <span class="cline-any cline-neutral">&nbsp;</span>
200
+ <span class="cline-any cline-yes">46x</span>
195
201
  <span class="cline-any cline-neutral">&nbsp;</span>
196
202
  <span class="cline-any cline-neutral">&nbsp;</span>
197
203
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -202,8 +208,8 @@
202
208
  <span class="cline-any cline-neutral">&nbsp;</span>
203
209
  <span class="cline-any cline-neutral">&nbsp;</span>
204
210
  <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-yes">22x</span>
206
211
  <span class="cline-any cline-neutral">&nbsp;</span>
212
+ <span class="cline-any cline-yes">23x</span>
207
213
  <span class="cline-any cline-neutral">&nbsp;</span>
208
214
  <span class="cline-any cline-neutral">&nbsp;</span>
209
215
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -256,7 +262,11 @@
256
262
  <span class="cline-any cline-neutral">&nbsp;</span>
257
263
  <span class="cline-any cline-neutral">&nbsp;</span>
258
264
  <span class="cline-any cline-neutral">&nbsp;</span>
259
- <span class="cline-any cline-yes">22x</span>
265
+ <span class="cline-any cline-neutral">&nbsp;</span>
266
+ <span class="cline-any cline-neutral">&nbsp;</span>
267
+ <span class="cline-any cline-neutral">&nbsp;</span>
268
+ <span class="cline-any cline-neutral">&nbsp;</span>
269
+ <span class="cline-any cline-yes">23x</span>
260
270
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
261
271
  const controller = require("../controllers/automation")
262
272
  const authorized = require("../../middleware/authorized")
@@ -268,6 +278,10 @@ const {
268
278
  } = require("@budibase/auth/permissions")
269
279
  const Joi = require("joi")
270
280
  const { bodyResource, paramResource } = require("../../middleware/resourceId")
281
+ const {
282
+ middleware: appInfoMiddleware,
283
+ AppType,
284
+ } = require("../../middleware/appInfo")
271
285
  &nbsp;
272
286
  const router = Router()
273
287
  &nbsp;
@@ -281,7 +295,6 @@ function generateStepSchema(allowStepTypes) {
281
295
  tagline: Joi.string().required(),
282
296
  icon: Joi.string().required(),
283
297
  params: Joi.object(),
284
- // TODO: validate args a bit more deeply
285
298
  args: Joi.object(),
286
299
  type: Joi.string().required().valid(...allowStepTypes),
287
300
  }).unknown(true)
@@ -290,7 +303,6 @@ function generateStepSchema(allowStepTypes) {
290
303
  function generateValidator(existing = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span> {
291
304
  // prettier-ignore
292
305
  return joiValidator.body(Joi.object({
293
- live: Joi.bool(),
294
306
  _id: existing ? Joi.string().required() : Joi.string(),
295
307
  _rev: existing ? Joi.string().required() : Joi.string(),
296
308
  name: Joi.string().required(),
@@ -313,11 +325,6 @@ router
313
325
  authorized(BUILDER),
314
326
  controller.getActionList
315
327
  )
316
- .get(
317
- "/api/automations/logic/list",
318
- authorized(BUILDER),
319
- controller.getLogicList
320
- )
321
328
  .get(
322
329
  "/api/automations/definitions/list",
323
330
  authorized(BUILDER),
@@ -343,17 +350,25 @@ router
343
350
  generateValidator(false),
344
351
  controller.create
345
352
  )
353
+ .delete(
354
+ "/api/automations/:id/:rev",
355
+ paramResource("id"),
356
+ authorized(BUILDER),
357
+ controller.destroy
358
+ )
346
359
  .post(
347
360
  "/api/automations/:id/trigger",
361
+ appInfoMiddleware({ appType: AppType.PROD }),
348
362
  paramResource("id"),
349
363
  authorized(PermissionTypes.AUTOMATION, PermissionLevels.EXECUTE),
350
364
  controller.trigger
351
365
  )
352
- .delete(
353
- "/api/automations/:id/:rev",
366
+ .post(
367
+ "/api/automations/:id/test",
368
+ appInfoMiddleware({ appType: AppType.DEV }),
354
369
  paramResource("id"),
355
- authorized(BUILDER),
356
- controller.destroy
370
+ authorized(PermissionTypes.AUTOMATION, PermissionLevels.EXECUTE),
371
+ controller.test
357
372
  )
358
373
  &nbsp;
359
374
  module.exports = router
@@ -364,7 +379,7 @@ module.exports = router
364
379
  <div class='footer quiet pad2 space-top1 center small'>
365
380
  Code coverage generated by
366
381
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
367
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
382
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
368
383
  </div>
369
384
  </div>
370
385
  <script src="../../prettify.js"></script>
@@ -67,16 +67,16 @@
67
67
  <a name='L8'></a><a href='#L8'>8</a>
68
68
  <a name='L9'></a><a href='#L9'>9</a>
69
69
  <a name='L10'></a><a href='#L10'>10</a>
70
- <a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">22x</span>
71
- <span class="cline-any cline-yes">22x</span>
72
- <span class="cline-any cline-yes">22x</span>
73
- <span class="cline-any cline-yes">22x</span>
70
+ <a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
71
+ <span class="cline-any cline-yes">23x</span>
72
+ <span class="cline-any cline-yes">23x</span>
73
+ <span class="cline-any cline-yes">23x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">22x</span>
75
+ <span class="cline-any cline-yes">23x</span>
76
76
  <span class="cline-any cline-neutral">&nbsp;</span>
77
- <span class="cline-any cline-yes">22x</span>
77
+ <span class="cline-any cline-yes">23x</span>
78
78
  <span class="cline-any cline-neutral">&nbsp;</span>
79
- <span class="cline-any cline-yes">22x</span>
79
+ <span class="cline-any cline-yes">23x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
81
81
  const controller = require("../controllers/backup")
82
82
  const authorized = require("../../middleware/authorized")
@@ -94,7 +94,7 @@ module.exports = router
94
94
  <div class='footer quiet pad2 space-top1 center small'>
95
95
  Code coverage generated by
96
96
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
97
- at Tue Sep 14 2021 10:25:14 GMT+0000 (Coordinated Universal Time)
97
+ at Wed Sep 15 2021 15:55:32 GMT+0000 (Coordinated Universal Time)
98
98
  </div>
99
99
  </div>
100
100
  <script src="../../prettify.js"></script>