@budibase/server 2.2.12-alpha.6 → 2.2.12-alpha.60

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 (483) hide show
  1. package/__mocks__/node-fetch.ts +2 -0
  2. package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
  3. package/builder/assets/bg.c1563288.png +0 -0
  4. package/builder/assets/bulgaria.bd68393d.png +0 -0
  5. package/builder/assets/covanta.72c46c1e.png +0 -0
  6. package/builder/assets/index.426b225d.js +1798 -0
  7. package/builder/assets/index.f87b8d33.css +6 -0
  8. package/builder/assets/schnellecke.cf1837a8.png +0 -0
  9. package/builder/index.html +3 -3
  10. package/coverage/clover.xml +5112 -4923
  11. package/coverage/coverage-final.json +268 -264
  12. package/coverage/lcov-report/index.html +202 -157
  13. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  14. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  15. package/coverage/lcov-report/src/api/controllers/application.ts.html +185 -164
  16. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  17. package/coverage/lcov-report/src/api/controllers/automation.ts.html +24 -24
  18. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  19. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +15 -15
  20. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  21. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +112 -88
  22. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  23. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +80 -80
  25. package/coverage/lcov-report/src/api/controllers/dev.ts.html +17 -17
  26. package/coverage/lcov-report/src/api/controllers/index.html +36 -36
  27. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  28. package/coverage/lcov-report/src/api/controllers/layout.ts.html +6 -6
  29. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  30. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  31. package/coverage/lcov-report/src/api/controllers/permission.ts.html +13 -13
  32. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  33. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  34. package/coverage/lcov-report/src/api/controllers/plugin/index.html +19 -19
  35. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +29 -29
  36. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  37. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  38. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  39. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  40. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +6 -6
  41. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +2 -2
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +7 -7
  45. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  46. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  47. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  48. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  49. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  50. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  51. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  52. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  53. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  54. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +7 -7
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +3 -3
  58. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  59. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  60. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  61. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +9 -9
  62. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  63. package/coverage/lcov-report/src/api/controllers/query/index.html +7 -7
  64. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +89 -65
  65. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  66. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  67. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  68. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +36 -18
  69. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +60 -30
  70. package/coverage/lcov-report/src/api/controllers/row/index.html +40 -40
  71. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +34 -34
  72. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +142 -70
  73. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +120 -120
  74. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  75. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +152 -38
  76. package/coverage/lcov-report/src/api/controllers/screen.ts.html +7 -7
  77. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  78. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  79. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +39 -42
  80. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +52 -52
  81. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +43 -37
  82. package/coverage/lcov-report/src/api/controllers/table/index.html +34 -34
  83. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +155 -68
  84. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +47 -47
  85. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +66 -69
  86. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  87. package/coverage/lcov-report/src/api/controllers/user.ts.html +99 -75
  88. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +62 -17
  89. package/coverage/lcov-report/src/api/controllers/view/index.html +29 -29
  90. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +53 -92
  91. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  92. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +6 -6
  93. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +69 -63
  94. package/coverage/lcov-report/src/api/index.html +1 -1
  95. package/coverage/lcov-report/src/api/index.ts.html +27 -27
  96. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  97. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  98. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  99. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  100. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  101. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  102. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  103. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  104. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  105. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  106. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  107. package/coverage/lcov-report/src/api/routes/index.html +5 -5
  108. package/coverage/lcov-report/src/api/routes/index.ts.html +42 -36
  109. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  110. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  111. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  112. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  113. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  114. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  115. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +14 -14
  116. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/index.ts.html +52 -52
  118. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +4 -4
  120. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  121. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  122. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  123. package/coverage/lcov-report/src/api/routes/public/tests/index.html +1 -1
  124. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  126. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  127. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  128. package/coverage/lcov-report/src/api/routes/query.ts.html +11 -11
  129. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  130. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  131. package/coverage/lcov-report/src/api/routes/row.ts.html +12 -12
  132. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  133. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  134. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  135. package/coverage/lcov-report/src/api/routes/table.ts.html +26 -95
  136. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  137. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  138. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  139. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +1 -1
  140. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  141. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  142. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +43 -43
  143. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  144. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  145. package/coverage/lcov-report/src/app.ts.html +13 -7
  146. package/coverage/lcov-report/src/automations/actions.ts.html +27 -27
  147. package/coverage/lcov-report/src/automations/automationUtils.ts.html +59 -59
  148. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  149. package/coverage/lcov-report/src/automations/index.html +30 -30
  150. package/coverage/lcov-report/src/automations/index.ts.html +10 -10
  151. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  152. package/coverage/lcov-report/src/automations/logging/index.ts.html +7 -7
  153. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  154. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  155. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  156. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  157. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  158. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  159. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  160. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  161. package/coverage/lcov-report/src/automations/steps/index.html +15 -15
  162. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  163. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  164. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  165. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +38 -38
  166. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  167. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +7 -7
  168. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  169. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  170. package/coverage/lcov-report/src/automations/steps/utils.ts.html +10 -10
  171. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  172. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  173. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +13 -13
  174. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +3 -3
  175. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  176. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  177. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  178. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  179. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  180. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  181. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  182. package/coverage/lcov-report/src/automations/triggers.ts.html +52 -37
  183. package/coverage/lcov-report/src/automations/utils.ts.html +52 -52
  184. package/coverage/lcov-report/src/constants/index.html +1 -1
  185. package/coverage/lcov-report/src/constants/index.ts.html +2 -2
  186. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  187. package/coverage/lcov-report/src/constants/screens.ts.html +3 -3
  188. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +22 -22
  189. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  190. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  191. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  192. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  193. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  194. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  195. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  196. package/coverage/lcov-report/src/db/index.html +1 -1
  197. package/coverage/lcov-report/src/db/index.ts.html +9 -9
  198. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +18 -18
  199. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  200. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  201. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +27 -27
  202. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +13 -13
  203. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  204. package/coverage/lcov-report/src/db/utils.ts.html +40 -40
  205. package/coverage/lcov-report/src/definitions/automations.ts.html +6 -3
  206. package/coverage/lcov-report/src/definitions/index.html +5 -20
  207. package/coverage/lcov-report/src/environment.ts.html +10 -10
  208. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +8 -8
  209. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +5 -5
  210. package/coverage/lcov-report/src/events/index.html +1 -1
  211. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  212. package/coverage/lcov-report/src/events/utils.ts.html +1 -1
  213. package/coverage/lcov-report/src/index.html +13 -13
  214. package/coverage/lcov-report/src/index.ts.html +5 -5
  215. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  216. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/base/index.html +11 -11
  218. package/coverage/lcov-report/src/integrations/base/query.ts.html +14 -8
  219. package/coverage/lcov-report/src/integrations/base/sql.ts.html +12 -12
  220. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +8 -8
  221. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  222. package/coverage/lcov-report/src/integrations/couchdb.ts.html +113 -32
  223. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +9 -9
  224. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +26 -14
  225. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  226. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  227. package/coverage/lcov-report/src/integrations/index.html +47 -47
  228. package/coverage/lcov-report/src/integrations/index.ts.html +49 -49
  229. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  230. package/coverage/lcov-report/src/integrations/mongodb.ts.html +417 -285
  231. package/coverage/lcov-report/src/integrations/mysql.ts.html +11 -11
  232. package/coverage/lcov-report/src/integrations/oracle.ts.html +13 -13
  233. package/coverage/lcov-report/src/integrations/postgres.ts.html +10 -10
  234. package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
  235. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +15 -150
  236. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  237. package/coverage/lcov-report/src/integrations/rest.ts.html +36 -45
  238. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  239. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  240. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  241. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  242. package/coverage/lcov-report/src/integrations/utils.ts.html +18 -18
  243. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  244. package/coverage/lcov-report/src/middleware/authorized.ts.html +27 -27
  245. package/coverage/lcov-report/src/middleware/builder.ts.html +17 -17
  246. package/coverage/lcov-report/src/middleware/currentapp.ts.html +45 -42
  247. package/coverage/lcov-report/src/middleware/index.html +1 -1
  248. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  249. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  250. package/coverage/lcov-report/src/middleware/resourceId.ts.html +21 -21
  251. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  252. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  253. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  258. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  259. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  260. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  261. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  262. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  263. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  264. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  266. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  267. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  268. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  270. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  271. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  272. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  273. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  274. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  275. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  276. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  277. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  278. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  279. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  280. package/coverage/lcov-report/src/migrations/index.html +1 -1
  281. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  282. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  283. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  284. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  286. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  287. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  288. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  289. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  290. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  291. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +3 -3
  292. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  293. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +17 -17
  294. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  295. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  296. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  297. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  298. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
  299. package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
  300. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
  301. package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
  302. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +100 -0
  303. package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
  304. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  305. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  306. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  307. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  308. package/coverage/lcov-report/src/sdk/app/tables/index.html +11 -11
  309. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +27 -18
  310. package/coverage/lcov-report/src/sdk/index.html +5 -5
  311. package/coverage/lcov-report/src/sdk/index.ts.html +23 -11
  312. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  313. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  314. package/coverage/lcov-report/src/sdk/users/utils.ts.html +28 -28
  315. package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
  316. package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
  317. package/coverage/lcov-report/src/startup.ts.html +34 -34
  318. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +134 -125
  319. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  320. package/coverage/lcov-report/src/tests/utilities/index.html +21 -21
  321. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  322. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +213 -24
  323. package/coverage/lcov-report/src/threads/automation.ts.html +216 -186
  324. package/coverage/lcov-report/src/threads/index.html +30 -30
  325. package/coverage/lcov-report/src/threads/index.ts.html +24 -24
  326. package/coverage/lcov-report/src/threads/query.ts.html +68 -29
  327. package/coverage/lcov-report/src/threads/utils.ts.html +9 -9
  328. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +2 -2
  329. package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
  330. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +9 -9
  331. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +1 -1
  332. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +27 -21
  333. package/coverage/lcov-report/src/utilities/fileSystem/index.html +21 -21
  334. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +1 -1
  335. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +5 -8
  336. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  337. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +3 -3
  338. package/coverage/lcov-report/src/utilities/global.ts.html +40 -40
  339. package/coverage/lcov-report/src/utilities/index.html +39 -39
  340. package/coverage/lcov-report/src/utilities/index.ts.html +12 -12
  341. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  342. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  343. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  344. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  345. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +50 -50
  346. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  347. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +14 -14
  348. package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +173 -233
  349. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  350. package/coverage/lcov-report/src/utilities/security.ts.html +4 -4
  351. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  352. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +4 -4
  353. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  354. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  355. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +38 -11
  356. package/coverage/lcov-report/src/watch.ts.html +7 -7
  357. package/coverage/lcov-report/src/websocket.ts.html +3 -3
  358. package/coverage/lcov.info +7897 -7537
  359. package/dist/api/controllers/application.js +73 -74
  360. package/dist/api/controllers/cloud.js +1 -1
  361. package/dist/api/controllers/datasource.js +24 -15
  362. package/dist/api/controllers/query/index.js +18 -11
  363. package/dist/api/controllers/row/ExternalRequest.js +12 -3
  364. package/dist/api/controllers/row/external.js +20 -13
  365. package/dist/api/controllers/row/internal.js +40 -15
  366. package/dist/api/controllers/row/utils.js +35 -3
  367. package/dist/api/controllers/static/index.js +38 -38
  368. package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  369. package/dist/api/controllers/table/external.js +16 -35
  370. package/dist/api/controllers/table/index.js +44 -15
  371. package/dist/api/controllers/table/internal.js +4 -4
  372. package/dist/api/controllers/table/utils.js +9 -9
  373. package/dist/api/controllers/user.js +14 -6
  374. package/dist/api/controllers/view/exporters.js +22 -6
  375. package/dist/api/controllers/view/index.js +20 -56
  376. package/dist/api/controllers/webhook.js +45 -43
  377. package/dist/api/routes/index.js +2 -0
  378. package/dist/api/routes/row.js +2 -2
  379. package/dist/api/routes/table.js +6 -37
  380. package/dist/api/routes/utils/validators.js +1 -1
  381. package/dist/app.js +1 -0
  382. package/dist/automations/triggers.js +1 -0
  383. package/dist/definitions/datasource.js +0 -6
  384. package/dist/index.js +2 -2
  385. package/dist/integrations/base/query.js +7 -2
  386. package/dist/integrations/base/sqlTable.js +14 -14
  387. package/dist/integrations/couchdb.js +34 -8
  388. package/dist/integrations/dynamodb.js +8 -5
  389. package/dist/integrations/elasticsearch.js +7 -3
  390. package/dist/integrations/index.js +5 -5
  391. package/dist/integrations/mongodb.js +311 -271
  392. package/dist/integrations/mysql.js +2 -2
  393. package/dist/integrations/queries/sql.js +73 -100
  394. package/dist/integrations/rest.js +16 -18
  395. package/dist/middleware/currentapp.js +4 -2
  396. package/dist/package.json +7 -7
  397. package/dist/sdk/app/datasources/datasources.js +147 -0
  398. package/dist/sdk/app/datasources/index.js +27 -0
  399. package/dist/sdk/app/queries/index.js +27 -0
  400. package/dist/sdk/app/queries/queries.js +60 -0
  401. package/dist/sdk/app/tables/index.js +6 -2
  402. package/dist/sdk/index.js +4 -0
  403. package/dist/sdk/utils/index.js +29 -0
  404. package/dist/threads/automation.js +18 -7
  405. package/dist/threads/query.js +27 -13
  406. package/dist/tsconfig.build.tsbuildinfo +1 -1
  407. package/dist/utilities/fileSystem/filesystem.js +36 -34
  408. package/dist/utilities/fileSystem/plugin.js +17 -14
  409. package/dist/utilities/fileSystem/template.js +7 -4
  410. package/dist/utilities/schema.js +108 -0
  411. package/dist/utilities/workerRequests.js +2 -0
  412. package/package.json +8 -8
  413. package/scripts/dev/manage.js +1 -0
  414. package/src/api/controllers/application.ts +81 -74
  415. package/src/api/controllers/cloud.ts +1 -1
  416. package/src/api/controllers/datasource.ts +33 -25
  417. package/src/api/controllers/query/index.ts +47 -39
  418. package/src/api/controllers/row/ExternalRequest.ts +8 -2
  419. package/src/api/controllers/row/external.ts +24 -14
  420. package/src/api/controllers/row/internal.ts +42 -18
  421. package/src/api/controllers/row/utils.ts +40 -2
  422. package/src/api/controllers/static/index.ts +17 -18
  423. package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  424. package/src/api/controllers/table/external.ts +18 -16
  425. package/src/api/controllers/table/index.ts +46 -17
  426. package/src/api/controllers/table/internal.ts +4 -4
  427. package/src/api/controllers/table/utils.ts +12 -13
  428. package/src/api/controllers/user.ts +21 -13
  429. package/src/api/controllers/view/exporters.ts +20 -5
  430. package/src/api/controllers/view/index.ts +22 -35
  431. package/src/api/controllers/webhook.ts +48 -46
  432. package/src/api/routes/index.ts +2 -0
  433. package/src/api/routes/row.ts +1 -1
  434. package/src/api/routes/table.ts +15 -38
  435. package/src/api/routes/tests/datasource.spec.ts +35 -1
  436. package/src/api/routes/tests/misc.spec.js +4 -10
  437. package/src/api/routes/tests/table.spec.js +8 -30
  438. package/src/api/routes/tests/user.spec.js +20 -1
  439. package/src/api/routes/utils/validators.ts +1 -1
  440. package/src/app.ts +3 -1
  441. package/src/automations/tests/loop.spec.ts +45 -0
  442. package/src/automations/triggers.ts +6 -1
  443. package/src/definitions/automations.ts +1 -0
  444. package/src/definitions/datasource.ts +0 -41
  445. package/src/index.ts +1 -1
  446. package/src/integrations/base/query.ts +3 -1
  447. package/src/integrations/base/sqlTable.ts +1 -1
  448. package/src/integrations/couchdb.ts +41 -14
  449. package/src/integrations/dynamodb.ts +3 -3
  450. package/src/integrations/elasticsearch.ts +8 -4
  451. package/src/integrations/index.ts +4 -4
  452. package/src/integrations/mongodb.ts +315 -271
  453. package/src/integrations/mysql.ts +1 -1
  454. package/src/integrations/queries/sql.ts +5 -50
  455. package/src/integrations/rest.ts +16 -19
  456. package/src/integrations/tests/couchdb.spec.ts +33 -21
  457. package/src/integrations/tests/rest.spec.ts +4 -2
  458. package/src/middleware/currentapp.ts +3 -2
  459. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
  460. package/src/sdk/app/datasources/datasources.ts +136 -0
  461. package/src/sdk/app/datasources/index.ts +5 -0
  462. package/src/sdk/app/queries/index.ts +5 -0
  463. package/src/sdk/app/queries/queries.ts +50 -0
  464. package/src/sdk/app/tables/index.ts +6 -3
  465. package/src/sdk/index.ts +4 -0
  466. package/src/sdk/utils/index.ts +16 -0
  467. package/src/tests/utilities/TestConfiguration.ts +15 -12
  468. package/src/tests/utilities/structures.ts +65 -2
  469. package/src/threads/automation.ts +18 -8
  470. package/src/threads/definitions.ts +3 -0
  471. package/src/threads/query.ts +28 -15
  472. package/src/utilities/fileSystem/filesystem.ts +6 -4
  473. package/src/utilities/fileSystem/plugin.ts +3 -4
  474. package/src/utilities/fileSystem/template.ts +2 -2
  475. package/src/utilities/schema.ts +141 -0
  476. package/src/utilities/workerRequests.ts +10 -1
  477. package/tsconfig.json +2 -1
  478. package/builder/assets/index.0b010a07.js +0 -1023
  479. package/builder/assets/index.fa480d5b.css +0 -6
  480. package/dist/utilities/csvParser.js +0 -152
  481. package/src/utilities/csvParser.ts +0 -161
  482. package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
  483. package/src/utilities/tests/csvParser.spec.js +0 -112
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">86.27% </span>
26
+ <span class="strong">87.71% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>44/51</span>
28
+ <span class='fraction'>50/57</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">75% </span>
33
+ <span class="strong">77.77% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>6/8</span>
35
+ <span class='fraction'>7/9</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">86.48% </span>
40
+ <span class="strong">87.17% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>32/37</span>
42
+ <span class='fraction'>34/39</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">86% </span>
47
+ <span class="strong">87.5% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>43/50</span>
49
+ <span class='fraction'>49/56</span>
50
50
  </div>
51
51
 
52
52
 
@@ -257,17 +257,86 @@
257
257
  <a name='L192'></a><a href='#L192'>192</a>
258
258
  <a name='L193'></a><a href='#L193'>193</a>
259
259
  <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">54x</span>
261
- <span class="cline-any cline-yes">54x</span>
262
- <span class="cline-any cline-yes">54x</span>
263
- <span class="cline-any cline-yes">54x</span>
264
- <span class="cline-any cline-yes">54x</span>
265
- <span class="cline-any cline-yes">54x</span>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
324
+ <span class="cline-any cline-yes">55x</span>
325
+ <span class="cline-any cline-yes">55x</span>
326
+ <span class="cline-any cline-yes">55x</span>
327
+ <span class="cline-any cline-yes">55x</span>
266
328
  <span class="cline-any cline-neutral">&nbsp;</span>
267
- <span class="cline-any cline-yes">3330x</span>
268
329
  <span class="cline-any cline-neutral">&nbsp;</span>
269
- <span class="cline-any cline-yes">97x</span>
270
- <span class="cline-any cline-yes">101x</span>
330
+ <span class="cline-any cline-neutral">&nbsp;</span>
331
+ <span class="cline-any cline-neutral">&nbsp;</span>
332
+ <span class="cline-any cline-yes">55x</span>
333
+ <span class="cline-any cline-neutral">&nbsp;</span>
334
+ <span class="cline-any cline-yes">55x</span>
335
+ <span class="cline-any cline-neutral">&nbsp;</span>
336
+ <span class="cline-any cline-yes">3384x</span>
337
+ <span class="cline-any cline-neutral">&nbsp;</span>
338
+ <span class="cline-any cline-yes">99x</span>
339
+ <span class="cline-any cline-yes">103x</span>
271
340
  <span class="cline-any cline-neutral">&nbsp;</span>
272
341
  <span class="cline-any cline-neutral">&nbsp;</span>
273
342
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -375,8 +444,65 @@
375
444
  <span class="cline-any cline-neutral">&nbsp;</span>
376
445
  <span class="cline-any cline-neutral">&nbsp;</span>
377
446
  <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-yes">35x</span>
379
- <span class="cline-any cline-yes">71x</span>
447
+ <span class="cline-any cline-yes">2x</span>
448
+ <span class="cline-any cline-yes">2x</span>
449
+ <span class="cline-any cline-yes">1x</span>
450
+ <span class="cline-any cline-neutral">&nbsp;</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
+ <span class="cline-any cline-neutral">&nbsp;</span>
454
+ <span class="cline-any cline-yes">2x</span>
455
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
+ <span class="cline-any cline-neutral">&nbsp;</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-neutral">&nbsp;</span>
460
+ <span class="cline-any cline-neutral">&nbsp;</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
+ <span class="cline-any cline-neutral">&nbsp;</span>
467
+ <span class="cline-any cline-neutral">&nbsp;</span>
468
+ <span class="cline-any cline-neutral">&nbsp;</span>
469
+ <span class="cline-any cline-neutral">&nbsp;</span>
470
+ <span class="cline-any cline-neutral">&nbsp;</span>
471
+ <span class="cline-any cline-neutral">&nbsp;</span>
472
+ <span class="cline-any cline-neutral">&nbsp;</span>
473
+ <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-neutral">&nbsp;</span>
475
+ <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-neutral">&nbsp;</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-neutral">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-neutral">&nbsp;</span>
486
+ <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-neutral">&nbsp;</span>
490
+ <span class="cline-any cline-neutral">&nbsp;</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-neutral">&nbsp;</span>
493
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
+ <span class="cline-any cline-neutral">&nbsp;</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-yes">2x</span>
502
+ <span class="cline-any cline-neutral">&nbsp;</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-yes">37x</span>
505
+ <span class="cline-any cline-yes">73x</span>
380
506
  <span class="cline-any cline-neutral">&nbsp;</span>
381
507
  <span class="cline-any cline-neutral">&nbsp;</span>
382
508
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -403,8 +529,8 @@
403
529
  <span class="cline-any cline-neutral">&nbsp;</span>
404
530
  <span class="cline-any cline-neutral">&nbsp;</span>
405
531
  <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-yes">63x</span>
407
- <span class="cline-any cline-yes">63x</span>
532
+ <span class="cline-any cline-yes">65x</span>
533
+ <span class="cline-any cline-yes">67x</span>
408
534
  <span class="cline-any cline-neutral">&nbsp;</span>
409
535
  <span class="cline-any cline-neutral">&nbsp;</span>
410
536
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -451,11 +577,17 @@
451
577
  <span class="cline-any cline-neutral">&nbsp;</span>
452
578
  <span class="cline-any cline-neutral">&nbsp;</span>
453
579
  <span class="cline-any cline-neutral">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { roles, permissions } from "@budibase/backend-core"
580
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { permissions, roles } from "@budibase/backend-core"
455
581
  import { createHomeScreen } from "../../constants/screens"
456
582
  import { EMPTY_LAYOUT } from "../../constants/layouts"
457
583
  import { cloneDeep } from "lodash/fp"
458
- import { TRIGGER_DEFINITIONS, ACTION_DEFINITIONS } from "../../automations"
584
+ import { ACTION_DEFINITIONS, TRIGGER_DEFINITIONS } from "../../automations"
585
+ import {
586
+ Automation,
587
+ AutomationActionStepId,
588
+ AutomationTriggerStepId,
589
+ } from "@budibase/types"
590
+ &nbsp;
459
591
  const { v4: uuidv4 } = require("uuid")
460
592
  &nbsp;
461
593
  export const TENANT_ID = "default"
@@ -569,6 +701,63 @@ export function basicAutomation() {
569
701
  }
570
702
  }
571
703
  &nbsp;
704
+ export function loopAutomation(tableId: string, loopOpts?: any): Automation {
705
+ if (!loopOpts) {
706
+ loopOpts = {
707
+ option: "Array",
708
+ binding: "{{ steps.1.rows }}",
709
+ }
710
+ }
711
+ const automation: any = {
712
+ name: "looping",
713
+ type: "automation",
714
+ definition: {
715
+ steps: [
716
+ {
717
+ id: "b",
718
+ type: "ACTION",
719
+ stepId: AutomationActionStepId.QUERY_ROWS,
720
+ internal: true,
721
+ inputs: {
722
+ tableId,
723
+ },
724
+ schema: ACTION_DEFINITIONS.QUERY_ROWS.schema,
725
+ },
726
+ {
727
+ id: "c",
728
+ type: "ACTION",
729
+ stepId: AutomationActionStepId.LOOP,
730
+ internal: true,
731
+ inputs: loopOpts,
732
+ blockToLoop: "d",
733
+ schema: ACTION_DEFINITIONS.LOOP.schema,
734
+ },
735
+ {
736
+ id: "d",
737
+ type: "ACTION",
738
+ internal: true,
739
+ stepId: AutomationActionStepId.SERVER_LOG,
740
+ inputs: {
741
+ text: "log statement",
742
+ },
743
+ schema: ACTION_DEFINITIONS.SERVER_LOG.schema,
744
+ },
745
+ ],
746
+ trigger: {
747
+ id: "a",
748
+ type: "TRIGGER",
749
+ event: "row:save",
750
+ stepId: AutomationTriggerStepId.ROW_SAVED,
751
+ inputs: {
752
+ tableId,
753
+ },
754
+ schema: TRIGGER_DEFINITIONS.ROW_SAVED.schema,
755
+ },
756
+ },
757
+ }
758
+ return automation as Automation
759
+ }
760
+ &nbsp;
572
761
  export function basicRow(tableId: string) {
573
762
  return {
574
763
  name: "Test Contact",
@@ -652,7 +841,7 @@ export function basicWebhook(automationId: string) {
652
841
  <div class='footer quiet pad2 space-top1 center small'>
653
842
  Code coverage generated by
654
843
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
655
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
844
+ at Wed Feb 01 2023 16:52:04 GMT+0000 (Coordinated Universal Time)
656
845
  </div>
657
846
  <script src="../../../prettify.js"></script>
658
847
  <script>