@budibase/server 2.2.12-alpha.39 → 2.2.12-alpha.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/builder/assets/{index.1bbd8be0.js → index.b8f2b884.js} +182 -182
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +3085 -3072
  4. package/coverage/coverage-final.json +262 -262
  5. package/coverage/lcov-report/index.html +45 -45
  6. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  7. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  8. package/coverage/lcov-report/src/api/controllers/application.ts.html +84 -84
  9. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  10. package/coverage/lcov-report/src/api/controllers/automation.ts.html +24 -24
  11. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  12. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +12 -12
  13. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  14. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +15 -15
  15. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  16. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +80 -80
  18. package/coverage/lcov-report/src/api/controllers/dev.ts.html +17 -17
  19. package/coverage/lcov-report/src/api/controllers/index.html +1 -1
  20. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  21. package/coverage/lcov-report/src/api/controllers/layout.ts.html +6 -6
  22. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  23. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  24. package/coverage/lcov-report/src/api/controllers/permission.ts.html +13 -13
  25. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  26. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  27. package/coverage/lcov-report/src/api/controllers/plugin/index.html +1 -1
  28. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +11 -11
  29. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  30. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  31. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  32. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  33. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +6 -6
  34. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  35. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +2 -2
  36. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +7 -7
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  42. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  43. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  44. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  45. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  46. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  47. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  48. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +7 -7
  49. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +3 -3
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +9 -9
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  56. package/coverage/lcov-report/src/api/controllers/query/index.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +21 -21
  58. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  59. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  60. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  61. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +9 -9
  62. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +8 -8
  63. package/coverage/lcov-report/src/api/controllers/row/index.html +1 -1
  64. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +34 -34
  65. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +43 -43
  66. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +120 -120
  67. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  68. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +24 -24
  69. package/coverage/lcov-report/src/api/controllers/screen.ts.html +7 -7
  70. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  71. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  72. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +21 -21
  73. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +52 -52
  74. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +11 -11
  75. package/coverage/lcov-report/src/api/controllers/table/index.html +1 -1
  76. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +35 -35
  77. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +43 -43
  78. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +46 -46
  79. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  80. package/coverage/lcov-report/src/api/controllers/user.ts.html +14 -14
  81. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +2 -2
  82. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  83. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +15 -15
  84. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  85. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +6 -6
  86. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +14 -14
  87. package/coverage/lcov-report/src/api/index.html +1 -1
  88. package/coverage/lcov-report/src/api/index.ts.html +23 -23
  89. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  90. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  91. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  92. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  93. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  94. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  95. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  96. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  97. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  98. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  99. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  100. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  101. package/coverage/lcov-report/src/api/routes/index.ts.html +34 -34
  102. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  103. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  104. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  105. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  106. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  107. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  108. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +14 -14
  109. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/index.ts.html +52 -52
  111. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +4 -4
  113. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  114. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  115. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  116. package/coverage/lcov-report/src/api/routes/public/tests/index.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  119. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  120. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  121. package/coverage/lcov-report/src/api/routes/query.ts.html +11 -11
  122. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  123. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  124. package/coverage/lcov-report/src/api/routes/row.ts.html +11 -11
  125. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  126. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  127. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  128. package/coverage/lcov-report/src/api/routes/table.ts.html +11 -11
  129. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  131. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +1 -1
  133. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  134. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  135. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +42 -42
  136. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  137. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  138. package/coverage/lcov-report/src/app.ts.html +1 -1
  139. package/coverage/lcov-report/src/automations/actions.ts.html +27 -27
  140. package/coverage/lcov-report/src/automations/automationUtils.ts.html +59 -59
  141. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  142. package/coverage/lcov-report/src/automations/index.html +24 -24
  143. package/coverage/lcov-report/src/automations/index.ts.html +10 -10
  144. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  145. package/coverage/lcov-report/src/automations/logging/index.ts.html +7 -7
  146. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  147. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  148. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  149. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  150. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  151. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  152. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  153. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  154. package/coverage/lcov-report/src/automations/steps/index.html +15 -15
  155. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  156. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  157. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  158. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +38 -38
  159. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  160. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +7 -7
  161. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  162. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  163. package/coverage/lcov-report/src/automations/steps/utils.ts.html +10 -10
  164. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  165. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  166. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +13 -13
  167. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +3 -3
  168. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  169. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  171. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  172. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  174. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  175. package/coverage/lcov-report/src/automations/triggers.ts.html +52 -37
  176. package/coverage/lcov-report/src/automations/utils.ts.html +42 -42
  177. package/coverage/lcov-report/src/constants/index.html +1 -1
  178. package/coverage/lcov-report/src/constants/index.ts.html +25 -25
  179. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  180. package/coverage/lcov-report/src/constants/screens.ts.html +3 -3
  181. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +22 -22
  182. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  183. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  184. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  185. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  186. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  187. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  188. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  189. package/coverage/lcov-report/src/db/index.html +1 -1
  190. package/coverage/lcov-report/src/db/index.ts.html +9 -9
  191. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +18 -18
  192. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  193. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  194. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +27 -27
  195. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +13 -13
  196. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  197. package/coverage/lcov-report/src/db/utils.ts.html +36 -36
  198. package/coverage/lcov-report/src/definitions/automations.ts.html +2 -2
  199. package/coverage/lcov-report/src/definitions/datasource.ts.html +2 -2
  200. package/coverage/lcov-report/src/definitions/index.html +1 -1
  201. package/coverage/lcov-report/src/environment.ts.html +21 -21
  202. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +8 -8
  203. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +5 -5
  204. package/coverage/lcov-report/src/events/index.html +1 -1
  205. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  206. package/coverage/lcov-report/src/events/utils.ts.html +1 -1
  207. package/coverage/lcov-report/src/index.html +1 -1
  208. package/coverage/lcov-report/src/index.ts.html +1 -1
  209. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  210. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  211. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  212. package/coverage/lcov-report/src/integrations/base/query.ts.html +2 -2
  213. package/coverage/lcov-report/src/integrations/base/sql.ts.html +12 -12
  214. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +7 -7
  215. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  216. package/coverage/lcov-report/src/integrations/couchdb.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +6 -6
  218. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +5 -5
  219. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  220. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  221. package/coverage/lcov-report/src/integrations/index.html +1 -1
  222. package/coverage/lcov-report/src/integrations/index.ts.html +29 -29
  223. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  224. package/coverage/lcov-report/src/integrations/mongodb.ts.html +11 -11
  225. package/coverage/lcov-report/src/integrations/mysql.ts.html +10 -10
  226. package/coverage/lcov-report/src/integrations/oracle.ts.html +13 -13
  227. package/coverage/lcov-report/src/integrations/postgres.ts.html +10 -10
  228. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  229. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  230. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  231. package/coverage/lcov-report/src/integrations/rest.ts.html +16 -16
  232. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  233. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  234. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  235. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  236. package/coverage/lcov-report/src/integrations/utils.ts.html +17 -17
  237. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  238. package/coverage/lcov-report/src/middleware/authorized.ts.html +9 -9
  239. package/coverage/lcov-report/src/middleware/builder.ts.html +5 -5
  240. package/coverage/lcov-report/src/middleware/currentapp.ts.html +7 -7
  241. package/coverage/lcov-report/src/middleware/index.html +1 -1
  242. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  243. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  244. package/coverage/lcov-report/src/middleware/resourceId.ts.html +21 -21
  245. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  246. package/coverage/lcov-report/src/middleware/utils.ts.html +2 -2
  247. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  248. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  257. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  262. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  264. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  265. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  267. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  268. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  273. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  274. package/coverage/lcov-report/src/migrations/index.html +1 -1
  275. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  276. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  277. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  279. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  281. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  282. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  283. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  285. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +3 -3
  286. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  287. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +17 -17
  288. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  289. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  290. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  291. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  292. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  293. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  294. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  295. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  296. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  297. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +11 -11
  298. package/coverage/lcov-report/src/sdk/index.html +1 -1
  299. package/coverage/lcov-report/src/sdk/index.ts.html +9 -9
  300. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  301. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  302. package/coverage/lcov-report/src/sdk/users/utils.ts.html +26 -26
  303. package/coverage/lcov-report/src/startup.ts.html +34 -34
  304. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +93 -93
  305. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +14 -14
  306. package/coverage/lcov-report/src/tests/utilities/index.html +19 -19
  307. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  308. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +211 -22
  309. package/coverage/lcov-report/src/threads/automation.ts.html +193 -181
  310. package/coverage/lcov-report/src/threads/index.html +20 -20
  311. package/coverage/lcov-report/src/threads/index.ts.html +24 -24
  312. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  313. package/coverage/lcov-report/src/threads/utils.ts.html +9 -9
  314. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +3 -3
  315. package/coverage/lcov-report/src/utilities/centralPath.ts.html +4 -4
  316. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +17 -17
  317. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +8 -8
  318. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +25 -25
  319. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  320. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +6 -6
  321. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +8 -8
  322. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  323. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +7 -7
  324. package/coverage/lcov-report/src/utilities/global.ts.html +27 -27
  325. package/coverage/lcov-report/src/utilities/index.html +1 -1
  326. package/coverage/lcov-report/src/utilities/index.ts.html +12 -12
  327. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  328. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  329. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  330. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  331. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +50 -50
  332. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  333. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +14 -14
  334. package/coverage/lcov-report/src/utilities/schema.ts.html +3 -3
  335. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  336. package/coverage/lcov-report/src/utilities/security.ts.html +4 -4
  337. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  338. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +4 -4
  339. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  340. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  341. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +6 -6
  342. package/coverage/lcov-report/src/watch.ts.html +7 -7
  343. package/coverage/lcov-report/src/websocket.ts.html +3 -3
  344. package/coverage/lcov.info +4306 -4287
  345. package/dist/automations/triggers.js +1 -0
  346. package/dist/package.json +6 -6
  347. package/dist/threads/automation.js +9 -5
  348. package/dist/tsconfig.build.tsbuildinfo +1 -1
  349. package/package.json +7 -7
  350. package/src/automations/tests/loop.spec.ts +45 -0
  351. package/src/automations/triggers.ts +6 -1
  352. package/src/tests/utilities/structures.ts +65 -2
  353. package/src/threads/automation.ts +9 -5
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/server",
3
3
  "email": "hi@budibase.com",
4
- "version": "2.2.12-alpha.39",
4
+ "version": "2.2.12-alpha.40",
5
5
  "description": "Budibase Web Server",
6
6
  "main": "src/index.ts",
7
7
  "repository": {
@@ -43,11 +43,11 @@
43
43
  "license": "GPL-3.0",
44
44
  "dependencies": {
45
45
  "@apidevtools/swagger-parser": "10.0.3",
46
- "@budibase/backend-core": "2.2.12-alpha.39",
47
- "@budibase/client": "2.2.12-alpha.39",
48
- "@budibase/pro": "2.2.12-alpha.38",
49
- "@budibase/string-templates": "2.2.12-alpha.39",
50
- "@budibase/types": "2.2.12-alpha.39",
46
+ "@budibase/backend-core": "2.2.12-alpha.40",
47
+ "@budibase/client": "2.2.12-alpha.40",
48
+ "@budibase/pro": "2.2.12-alpha.39",
49
+ "@budibase/string-templates": "2.2.12-alpha.40",
50
+ "@budibase/types": "2.2.12-alpha.40",
51
51
  "@bull-board/api": "3.7.0",
52
52
  "@bull-board/koa": "3.9.4",
53
53
  "@elastic/elasticsearch": "7.10.0",
@@ -169,5 +169,5 @@
169
169
  "optionalDependencies": {
170
170
  "oracledb": "5.3.0"
171
171
  },
172
- "gitHead": "3bbff691de1a4375e396f63692dbad1a10527fcc"
172
+ "gitHead": "362a03b4de1f26f867c800a9afc8721d10d5ca89"
173
173
  }
@@ -0,0 +1,45 @@
1
+ import * as automation from "../index"
2
+ import * as triggers from "../triggers"
3
+ import { loopAutomation } from "../../tests/utilities/structures"
4
+ import { context } from "@budibase/backend-core"
5
+ import * as setup from "./utilities"
6
+
7
+ describe("Attempt to run a basic loop automation", () => {
8
+ let config = setup.getConfig(),
9
+ table: any,
10
+ row: any
11
+
12
+ beforeEach(async () => {
13
+ await automation.init()
14
+ await config.init()
15
+ table = await config.createTable()
16
+ row = await config.createRow()
17
+ })
18
+
19
+ afterAll(setup.afterAll)
20
+
21
+ async function runLoop(loopOpts?: any) {
22
+ const appId = config.getAppId()
23
+ return await context.doInAppContext(appId, async () => {
24
+ const params = { fields: { appId } }
25
+ return await triggers.externalTrigger(
26
+ loopAutomation(table._id, loopOpts),
27
+ params,
28
+ { getResponses: true }
29
+ )
30
+ })
31
+ }
32
+
33
+ it("attempt to run a basic loop", async () => {
34
+ const resp = await runLoop()
35
+ expect(resp.steps[2].outputs.iterations).toBe(1)
36
+ })
37
+
38
+ it("test a loop with a string", async () => {
39
+ const resp = await runLoop({
40
+ type: "String",
41
+ binding: "a,b,c",
42
+ })
43
+ expect(resp.steps[2].outputs.iterations).toBe(3)
44
+ })
45
+ })
@@ -109,8 +109,13 @@ export async function externalTrigger(
109
109
  }
110
110
  params.fields = coercedFields
111
111
  }
112
- const data = { automation, event: params }
112
+ const data: Record<string, any> = { automation, event: params }
113
113
  if (getResponses) {
114
+ data.event = {
115
+ ...data.event,
116
+ appId: context.getAppId(),
117
+ automation,
118
+ }
114
119
  return utils.processEvent({ data })
115
120
  } else {
116
121
  return automationQueue.add(data, JOB_OPTS)
@@ -1,8 +1,14 @@
1
- import { roles, permissions } from "@budibase/backend-core"
1
+ import { permissions, roles } from "@budibase/backend-core"
2
2
  import { createHomeScreen } from "../../constants/screens"
3
3
  import { EMPTY_LAYOUT } from "../../constants/layouts"
4
4
  import { cloneDeep } from "lodash/fp"
5
- import { TRIGGER_DEFINITIONS, ACTION_DEFINITIONS } from "../../automations"
5
+ import { ACTION_DEFINITIONS, TRIGGER_DEFINITIONS } from "../../automations"
6
+ import {
7
+ Automation,
8
+ AutomationActionStepId,
9
+ AutomationTriggerStepId,
10
+ } from "@budibase/types"
11
+
6
12
  const { v4: uuidv4 } = require("uuid")
7
13
 
8
14
  export const TENANT_ID = "default"
@@ -116,6 +122,63 @@ export function basicAutomation() {
116
122
  }
117
123
  }
118
124
 
125
+ export function loopAutomation(tableId: string, loopOpts?: any): Automation {
126
+ if (!loopOpts) {
127
+ loopOpts = {
128
+ option: "Array",
129
+ binding: "{{ steps.1.rows }}",
130
+ }
131
+ }
132
+ const automation: any = {
133
+ name: "looping",
134
+ type: "automation",
135
+ definition: {
136
+ steps: [
137
+ {
138
+ id: "b",
139
+ type: "ACTION",
140
+ stepId: AutomationActionStepId.QUERY_ROWS,
141
+ internal: true,
142
+ inputs: {
143
+ tableId,
144
+ },
145
+ schema: ACTION_DEFINITIONS.QUERY_ROWS.schema,
146
+ },
147
+ {
148
+ id: "c",
149
+ type: "ACTION",
150
+ stepId: AutomationActionStepId.LOOP,
151
+ internal: true,
152
+ inputs: loopOpts,
153
+ blockToLoop: "d",
154
+ schema: ACTION_DEFINITIONS.LOOP.schema,
155
+ },
156
+ {
157
+ id: "d",
158
+ type: "ACTION",
159
+ internal: true,
160
+ stepId: AutomationActionStepId.SERVER_LOG,
161
+ inputs: {
162
+ text: "log statement",
163
+ },
164
+ schema: ACTION_DEFINITIONS.SERVER_LOG.schema,
165
+ },
166
+ ],
167
+ trigger: {
168
+ id: "a",
169
+ type: "TRIGGER",
170
+ event: "row:save",
171
+ stepId: AutomationTriggerStepId.ROW_SAVED,
172
+ inputs: {
173
+ tableId,
174
+ },
175
+ schema: TRIGGER_DEFINITIONS.ROW_SAVED.schema,
176
+ },
177
+ },
178
+ }
179
+ return automation as Automation
180
+ }
181
+
119
182
  export function basicRow(tableId: string) {
120
183
  return {
121
184
  name: "Test Contact",
@@ -37,9 +37,13 @@ function getLoopIterations(loopStep: LoopStep, input: LoopInput) {
37
37
  if (!loopStep || !binding) {
38
38
  return 1
39
39
  }
40
- return Array.isArray(binding)
41
- ? binding.length
42
- : automationUtils.stringSplit(binding).length
40
+ if (Array.isArray(binding)) {
41
+ return binding.length
42
+ }
43
+ if (typeof binding === "string") {
44
+ return automationUtils.stringSplit(binding).length
45
+ }
46
+ return 1
43
47
  }
44
48
 
45
49
  /**
@@ -280,13 +284,13 @@ class Orchestrator {
280
284
  break
281
285
  }
282
286
 
283
- let item
287
+ let item = []
284
288
  if (
285
289
  typeof loopStep.inputs.binding === "string" &&
286
290
  loopStep.inputs.option === "String"
287
291
  ) {
288
292
  item = automationUtils.stringSplit(newInput.binding)
289
- } else {
293
+ } else if (Array.isArray(loopStep.inputs.binding)) {
290
294
  item = loopStep.inputs.binding
291
295
  }
292
296
  this._context.steps[loopStepNumber] = {