@budibase/server 2.2.12-alpha.7 → 2.2.12-alpha.71

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 (484) hide show
  1. package/Dockerfile +1 -1
  2. package/__mocks__/node-fetch.ts +2 -0
  3. package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
  4. package/builder/assets/bg.29e85dd5.png +0 -0
  5. package/builder/assets/bulgaria.bd68393d.png +0 -0
  6. package/builder/assets/covanta.72c46c1e.png +0 -0
  7. package/builder/assets/index.4389672b.js +1798 -0
  8. package/builder/assets/index.80bd6b61.css +6 -0
  9. package/builder/assets/schnellecke.cf1837a8.png +0 -0
  10. package/builder/index.html +3 -3
  11. package/coverage/clover.xml +5113 -4924
  12. package/coverage/coverage-final.json +268 -264
  13. package/coverage/lcov-report/index.html +202 -157
  14. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  15. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  16. package/coverage/lcov-report/src/api/controllers/application.ts.html +185 -164
  17. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  18. package/coverage/lcov-report/src/api/controllers/automation.ts.html +24 -24
  19. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  20. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +15 -15
  21. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  22. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +112 -88
  23. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  24. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +80 -80
  26. package/coverage/lcov-report/src/api/controllers/dev.ts.html +17 -17
  27. package/coverage/lcov-report/src/api/controllers/index.html +36 -36
  28. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  29. package/coverage/lcov-report/src/api/controllers/layout.ts.html +6 -6
  30. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  31. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  32. package/coverage/lcov-report/src/api/controllers/permission.ts.html +13 -13
  33. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  34. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  35. package/coverage/lcov-report/src/api/controllers/plugin/index.html +19 -19
  36. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +29 -29
  37. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  38. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  39. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  40. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  41. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +6 -6
  42. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +2 -2
  44. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  45. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +7 -7
  46. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  47. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  48. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  49. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  50. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  51. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  52. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  53. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  54. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  55. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +7 -7
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  58. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +3 -3
  59. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  60. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  61. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  62. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +9 -9
  63. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  64. package/coverage/lcov-report/src/api/controllers/query/index.html +7 -7
  65. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +89 -65
  66. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  67. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  68. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  69. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +36 -18
  70. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +60 -30
  71. package/coverage/lcov-report/src/api/controllers/row/index.html +40 -40
  72. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +34 -34
  73. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +142 -70
  74. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +120 -120
  75. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  76. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +152 -38
  77. package/coverage/lcov-report/src/api/controllers/screen.ts.html +7 -7
  78. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  79. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  80. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +39 -42
  81. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +52 -52
  82. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +43 -37
  83. package/coverage/lcov-report/src/api/controllers/table/index.html +34 -34
  84. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +155 -68
  85. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +47 -47
  86. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +66 -69
  87. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  88. package/coverage/lcov-report/src/api/controllers/user.ts.html +99 -75
  89. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +62 -17
  90. package/coverage/lcov-report/src/api/controllers/view/index.html +29 -29
  91. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +53 -92
  92. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  93. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +6 -6
  94. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +69 -63
  95. package/coverage/lcov-report/src/api/index.html +1 -1
  96. package/coverage/lcov-report/src/api/index.ts.html +27 -27
  97. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  98. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  99. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  100. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  101. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  102. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  103. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  104. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  105. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  106. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  107. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  108. package/coverage/lcov-report/src/api/routes/index.html +5 -5
  109. package/coverage/lcov-report/src/api/routes/index.ts.html +42 -36
  110. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  111. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  112. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  113. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  114. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  115. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  116. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +14 -14
  117. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/index.ts.html +52 -52
  119. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +4 -4
  121. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  122. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  123. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  124. package/coverage/lcov-report/src/api/routes/public/tests/index.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +1 -1
  126. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  127. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  128. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/query.ts.html +11 -11
  130. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  131. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  132. package/coverage/lcov-report/src/api/routes/row.ts.html +12 -12
  133. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  134. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  135. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  136. package/coverage/lcov-report/src/api/routes/table.ts.html +26 -95
  137. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  138. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  139. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  140. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +1 -1
  141. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  142. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  143. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +43 -43
  144. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  145. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  146. package/coverage/lcov-report/src/app.ts.html +13 -7
  147. package/coverage/lcov-report/src/automations/actions.ts.html +27 -27
  148. package/coverage/lcov-report/src/automations/automationUtils.ts.html +59 -59
  149. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  150. package/coverage/lcov-report/src/automations/index.html +30 -30
  151. package/coverage/lcov-report/src/automations/index.ts.html +10 -10
  152. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  153. package/coverage/lcov-report/src/automations/logging/index.ts.html +7 -7
  154. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  155. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  156. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  157. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  158. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  159. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  160. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  161. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  162. package/coverage/lcov-report/src/automations/steps/index.html +15 -15
  163. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  164. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  165. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  166. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +38 -38
  167. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  168. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +7 -7
  169. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  170. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  171. package/coverage/lcov-report/src/automations/steps/utils.ts.html +10 -10
  172. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  173. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  174. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +13 -13
  175. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +3 -3
  176. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  177. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  178. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  179. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  180. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  181. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  182. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  183. package/coverage/lcov-report/src/automations/triggers.ts.html +52 -37
  184. package/coverage/lcov-report/src/automations/utils.ts.html +52 -52
  185. package/coverage/lcov-report/src/constants/index.html +1 -1
  186. package/coverage/lcov-report/src/constants/index.ts.html +2 -2
  187. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  188. package/coverage/lcov-report/src/constants/screens.ts.html +3 -3
  189. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +22 -22
  190. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  191. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  192. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  193. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  194. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  195. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  196. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  197. package/coverage/lcov-report/src/db/index.html +1 -1
  198. package/coverage/lcov-report/src/db/index.ts.html +9 -9
  199. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +18 -18
  200. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  201. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  202. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +27 -27
  203. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +13 -13
  204. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  205. package/coverage/lcov-report/src/db/utils.ts.html +40 -40
  206. package/coverage/lcov-report/src/definitions/automations.ts.html +6 -3
  207. package/coverage/lcov-report/src/definitions/index.html +5 -20
  208. package/coverage/lcov-report/src/environment.ts.html +10 -10
  209. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +8 -8
  210. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +5 -5
  211. package/coverage/lcov-report/src/events/index.html +1 -1
  212. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  213. package/coverage/lcov-report/src/events/utils.ts.html +1 -1
  214. package/coverage/lcov-report/src/index.html +13 -13
  215. package/coverage/lcov-report/src/index.ts.html +5 -5
  216. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  218. package/coverage/lcov-report/src/integrations/base/index.html +11 -11
  219. package/coverage/lcov-report/src/integrations/base/query.ts.html +14 -8
  220. package/coverage/lcov-report/src/integrations/base/sql.ts.html +12 -12
  221. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +8 -8
  222. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  223. package/coverage/lcov-report/src/integrations/couchdb.ts.html +110 -32
  224. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +9 -9
  225. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +26 -14
  226. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  227. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  228. package/coverage/lcov-report/src/integrations/index.html +47 -47
  229. package/coverage/lcov-report/src/integrations/index.ts.html +49 -49
  230. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  231. package/coverage/lcov-report/src/integrations/mongodb.ts.html +417 -285
  232. package/coverage/lcov-report/src/integrations/mysql.ts.html +11 -11
  233. package/coverage/lcov-report/src/integrations/oracle.ts.html +13 -13
  234. package/coverage/lcov-report/src/integrations/postgres.ts.html +10 -10
  235. package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
  236. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +15 -150
  237. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  238. package/coverage/lcov-report/src/integrations/rest.ts.html +36 -45
  239. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  240. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  241. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  242. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  243. package/coverage/lcov-report/src/integrations/utils.ts.html +18 -18
  244. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  245. package/coverage/lcov-report/src/middleware/authorized.ts.html +27 -27
  246. package/coverage/lcov-report/src/middleware/builder.ts.html +17 -17
  247. package/coverage/lcov-report/src/middleware/currentapp.ts.html +45 -42
  248. package/coverage/lcov-report/src/middleware/index.html +1 -1
  249. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  250. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  251. package/coverage/lcov-report/src/middleware/resourceId.ts.html +21 -21
  252. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  253. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  254. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  259. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  260. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  261. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  262. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  263. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  264. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  265. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  267. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  268. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  269. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  271. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  272. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  273. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  274. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  275. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  276. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  277. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  278. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  279. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  280. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  281. package/coverage/lcov-report/src/migrations/index.html +1 -1
  282. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  283. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  284. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  285. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  286. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  287. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  288. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  289. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  290. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  291. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  292. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +3 -3
  293. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  294. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +17 -17
  295. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  296. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  297. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  298. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  299. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
  300. package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
  301. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
  302. package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
  303. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +100 -0
  304. package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
  305. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  306. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  307. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  308. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  309. package/coverage/lcov-report/src/sdk/app/tables/index.html +11 -11
  310. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +27 -18
  311. package/coverage/lcov-report/src/sdk/index.html +5 -5
  312. package/coverage/lcov-report/src/sdk/index.ts.html +23 -11
  313. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  314. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  315. package/coverage/lcov-report/src/sdk/users/utils.ts.html +28 -28
  316. package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
  317. package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
  318. package/coverage/lcov-report/src/startup.ts.html +34 -34
  319. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +134 -125
  320. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  321. package/coverage/lcov-report/src/tests/utilities/index.html +21 -21
  322. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  323. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +213 -24
  324. package/coverage/lcov-report/src/threads/automation.ts.html +216 -186
  325. package/coverage/lcov-report/src/threads/index.html +30 -30
  326. package/coverage/lcov-report/src/threads/index.ts.html +24 -24
  327. package/coverage/lcov-report/src/threads/query.ts.html +68 -29
  328. package/coverage/lcov-report/src/threads/utils.ts.html +9 -9
  329. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +2 -2
  330. package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
  331. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +9 -9
  332. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +1 -1
  333. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +27 -21
  334. package/coverage/lcov-report/src/utilities/fileSystem/index.html +21 -21
  335. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +1 -1
  336. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +5 -8
  337. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  338. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +3 -3
  339. package/coverage/lcov-report/src/utilities/global.ts.html +40 -40
  340. package/coverage/lcov-report/src/utilities/index.html +39 -39
  341. package/coverage/lcov-report/src/utilities/index.ts.html +12 -12
  342. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  343. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  344. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  345. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  346. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +50 -50
  347. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  348. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +14 -14
  349. package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +173 -233
  350. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  351. package/coverage/lcov-report/src/utilities/security.ts.html +4 -4
  352. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  353. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +4 -4
  354. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  355. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  356. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +38 -11
  357. package/coverage/lcov-report/src/watch.ts.html +7 -7
  358. package/coverage/lcov-report/src/websocket.ts.html +3 -3
  359. package/coverage/lcov.info +7892 -7532
  360. package/dist/api/controllers/application.js +73 -74
  361. package/dist/api/controllers/cloud.js +1 -1
  362. package/dist/api/controllers/datasource.js +24 -15
  363. package/dist/api/controllers/query/index.js +18 -11
  364. package/dist/api/controllers/row/ExternalRequest.js +12 -3
  365. package/dist/api/controllers/row/external.js +20 -13
  366. package/dist/api/controllers/row/internal.js +40 -15
  367. package/dist/api/controllers/row/utils.js +35 -3
  368. package/dist/api/controllers/static/index.js +38 -38
  369. package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  370. package/dist/api/controllers/table/external.js +16 -35
  371. package/dist/api/controllers/table/index.js +44 -15
  372. package/dist/api/controllers/table/internal.js +4 -4
  373. package/dist/api/controllers/table/utils.js +9 -9
  374. package/dist/api/controllers/user.js +14 -6
  375. package/dist/api/controllers/view/exporters.js +22 -6
  376. package/dist/api/controllers/view/index.js +20 -56
  377. package/dist/api/controllers/webhook.js +45 -43
  378. package/dist/api/routes/index.js +2 -0
  379. package/dist/api/routes/row.js +2 -2
  380. package/dist/api/routes/table.js +6 -37
  381. package/dist/api/routes/utils/validators.js +1 -1
  382. package/dist/app.js +1 -0
  383. package/dist/automations/triggers.js +1 -0
  384. package/dist/definitions/datasource.js +0 -6
  385. package/dist/index.js +2 -2
  386. package/dist/integrations/base/query.js +7 -2
  387. package/dist/integrations/base/sqlTable.js +14 -14
  388. package/dist/integrations/couchdb.js +34 -8
  389. package/dist/integrations/dynamodb.js +8 -5
  390. package/dist/integrations/elasticsearch.js +7 -3
  391. package/dist/integrations/index.js +5 -5
  392. package/dist/integrations/mongodb.js +311 -271
  393. package/dist/integrations/mysql.js +2 -2
  394. package/dist/integrations/queries/sql.js +73 -100
  395. package/dist/integrations/rest.js +16 -18
  396. package/dist/middleware/currentapp.js +4 -2
  397. package/dist/package.json +7 -7
  398. package/dist/sdk/app/datasources/datasources.js +147 -0
  399. package/dist/sdk/app/datasources/index.js +27 -0
  400. package/dist/sdk/app/queries/index.js +27 -0
  401. package/dist/sdk/app/queries/queries.js +60 -0
  402. package/dist/sdk/app/tables/index.js +6 -2
  403. package/dist/sdk/index.js +4 -0
  404. package/dist/sdk/utils/index.js +29 -0
  405. package/dist/threads/automation.js +18 -7
  406. package/dist/threads/query.js +27 -13
  407. package/dist/tsconfig.build.tsbuildinfo +1 -1
  408. package/dist/utilities/fileSystem/filesystem.js +36 -34
  409. package/dist/utilities/fileSystem/plugin.js +17 -14
  410. package/dist/utilities/fileSystem/template.js +7 -4
  411. package/dist/utilities/schema.js +108 -0
  412. package/dist/utilities/workerRequests.js +2 -0
  413. package/package.json +8 -8
  414. package/scripts/dev/manage.js +3 -2
  415. package/src/api/controllers/application.ts +81 -74
  416. package/src/api/controllers/cloud.ts +1 -1
  417. package/src/api/controllers/datasource.ts +33 -25
  418. package/src/api/controllers/query/index.ts +47 -39
  419. package/src/api/controllers/row/ExternalRequest.ts +8 -2
  420. package/src/api/controllers/row/external.ts +24 -14
  421. package/src/api/controllers/row/internal.ts +42 -18
  422. package/src/api/controllers/row/utils.ts +40 -2
  423. package/src/api/controllers/static/index.ts +17 -18
  424. package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  425. package/src/api/controllers/table/external.ts +18 -16
  426. package/src/api/controllers/table/index.ts +46 -17
  427. package/src/api/controllers/table/internal.ts +4 -4
  428. package/src/api/controllers/table/utils.ts +12 -13
  429. package/src/api/controllers/user.ts +21 -13
  430. package/src/api/controllers/view/exporters.ts +20 -5
  431. package/src/api/controllers/view/index.ts +22 -35
  432. package/src/api/controllers/webhook.ts +48 -46
  433. package/src/api/routes/index.ts +2 -0
  434. package/src/api/routes/row.ts +1 -1
  435. package/src/api/routes/table.ts +15 -38
  436. package/src/api/routes/tests/datasource.spec.ts +35 -1
  437. package/src/api/routes/tests/misc.spec.js +4 -10
  438. package/src/api/routes/tests/table.spec.js +8 -30
  439. package/src/api/routes/tests/user.spec.js +20 -1
  440. package/src/api/routes/utils/validators.ts +1 -1
  441. package/src/app.ts +3 -1
  442. package/src/automations/tests/loop.spec.ts +45 -0
  443. package/src/automations/triggers.ts +6 -1
  444. package/src/definitions/automations.ts +1 -0
  445. package/src/definitions/datasource.ts +0 -41
  446. package/src/index.ts +1 -1
  447. package/src/integrations/base/query.ts +3 -1
  448. package/src/integrations/base/sqlTable.ts +1 -1
  449. package/src/integrations/couchdb.ts +40 -14
  450. package/src/integrations/dynamodb.ts +3 -3
  451. package/src/integrations/elasticsearch.ts +8 -4
  452. package/src/integrations/index.ts +4 -4
  453. package/src/integrations/mongodb.ts +315 -271
  454. package/src/integrations/mysql.ts +1 -1
  455. package/src/integrations/queries/sql.ts +5 -50
  456. package/src/integrations/rest.ts +16 -19
  457. package/src/integrations/tests/couchdb.spec.ts +33 -21
  458. package/src/integrations/tests/rest.spec.ts +4 -2
  459. package/src/middleware/currentapp.ts +3 -2
  460. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
  461. package/src/sdk/app/datasources/datasources.ts +136 -0
  462. package/src/sdk/app/datasources/index.ts +5 -0
  463. package/src/sdk/app/queries/index.ts +5 -0
  464. package/src/sdk/app/queries/queries.ts +50 -0
  465. package/src/sdk/app/tables/index.ts +6 -3
  466. package/src/sdk/index.ts +4 -0
  467. package/src/sdk/utils/index.ts +16 -0
  468. package/src/tests/utilities/TestConfiguration.ts +15 -12
  469. package/src/tests/utilities/structures.ts +65 -2
  470. package/src/threads/automation.ts +18 -8
  471. package/src/threads/definitions.ts +3 -0
  472. package/src/threads/query.ts +28 -15
  473. package/src/utilities/fileSystem/filesystem.ts +6 -4
  474. package/src/utilities/fileSystem/plugin.ts +3 -4
  475. package/src/utilities/fileSystem/template.ts +2 -2
  476. package/src/utilities/schema.ts +141 -0
  477. package/src/utilities/workerRequests.ts +10 -1
  478. package/tsconfig.json +2 -1
  479. package/builder/assets/index.e386f2c1.js +0 -1023
  480. package/builder/assets/index.fa480d5b.css +0 -6
  481. package/dist/utilities/csvParser.js +0 -152
  482. package/src/utilities/csvParser.ts +0 -161
  483. package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
  484. 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">57.6% </span>
26
+ <span class="strong">65.7% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>250/434</span>
28
+ <span class='fraction'>297/452</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">36.07% </span>
33
+ <span class="strong">49.68% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>57/158</span>
35
+ <span class='fraction'>80/161</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">66.12% </span>
40
+ <span class="strong">68.75% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>41/62</span>
42
+ <span class='fraction'>44/64</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">56.94% </span>
47
+ <span class="strong">65.23% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>242/425</span>
49
+ <span class='fraction'>289/443</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,18 +79,18 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file low" data-value="automation.ts"><a href="automation.ts.html">automation.ts</a></td>
83
- <td data-value="41.78" class="pic low">
84
- <div class="chart"><div class="cover-fill" style="width: 41%"></div><div class="cover-empty" style="width: 59%"></div></div>
82
+ <td class="file medium" data-value="automation.ts"><a href="automation.ts.html">automation.ts</a></td>
83
+ <td data-value="58.74" class="pic medium">
84
+ <div class="chart"><div class="cover-fill" style="width: 58%"></div><div class="cover-empty" style="width: 42%"></div></div>
85
85
  </td>
86
- <td data-value="41.78" class="pct low">41.78%</td>
87
- <td data-value="213" class="abs low">89/213</td>
88
- <td data-value="19.51" class="pct low">19.51%</td>
89
- <td data-value="82" class="abs low">16/82</td>
90
- <td data-value="50" class="pct medium">50%</td>
91
- <td data-value="18" class="abs medium">9/18</td>
92
- <td data-value="41.23" class="pct low">41.23%</td>
93
- <td data-value="211" class="abs low">87/211</td>
86
+ <td data-value="58.74" class="pct medium">58.74%</td>
87
+ <td data-value="223" class="abs medium">131/223</td>
88
+ <td data-value="45.78" class="pct low">45.78%</td>
89
+ <td data-value="83" class="abs low">38/83</td>
90
+ <td data-value="52.63" class="pct medium">52.63%</td>
91
+ <td data-value="19" class="abs medium">10/19</td>
92
+ <td data-value="58.37" class="pct medium">58.37%</td>
93
+ <td data-value="221" class="abs medium">129/221</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -110,17 +110,17 @@
110
110
 
111
111
  <tr>
112
112
  <td class="file medium" data-value="query.ts"><a href="query.ts.html">query.ts</a></td>
113
- <td data-value="79.69" class="pic medium">
114
- <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
113
+ <td data-value="78.72" class="pic medium">
114
+ <div class="chart"><div class="cover-fill" style="width: 78%"></div><div class="cover-empty" style="width: 22%"></div></div>
115
115
  </td>
116
- <td data-value="79.69" class="pct medium">79.69%</td>
117
- <td data-value="133" class="abs medium">106/133</td>
118
- <td data-value="53.48" class="pct medium">53.48%</td>
119
- <td data-value="43" class="abs medium">23/43</td>
120
- <td data-value="76.92" class="pct medium">76.92%</td>
121
- <td data-value="13" class="abs medium">10/13</td>
122
- <td data-value="80" class="pct high">80%</td>
123
- <td data-value="130" class="abs high">104/130</td>
116
+ <td data-value="78.72" class="pct medium">78.72%</td>
117
+ <td data-value="141" class="abs medium">111/141</td>
118
+ <td data-value="53.33" class="pct medium">53.33%</td>
119
+ <td data-value="45" class="abs medium">24/45</td>
120
+ <td data-value="85.71" class="pct high">85.71%</td>
121
+ <td data-value="14" class="abs high">12/14</td>
122
+ <td data-value="78.98" class="pct medium">78.98%</td>
123
+ <td data-value="138" class="abs medium">109/138</td>
124
124
  </tr>
125
125
 
126
126
  <tr>
@@ -146,7 +146,7 @@
146
146
  <div class='footer quiet pad2 space-top1 center small'>
147
147
  Code coverage generated by
148
148
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
149
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
149
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
150
150
  </div>
151
151
  <script src="../../prettify.js"></script>
152
152
  <script>
@@ -174,31 +174,31 @@
174
174
  <a name='L109'></a><a href='#L109'>109</a>
175
175
  <a name='L110'></a><a href='#L110'>110</a>
176
176
  <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
178
- <span class="cline-any cline-yes">55x</span>
177
+ <a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
178
+ <span class="cline-any cline-yes">56x</span>
179
179
  <span class="cline-any cline-neutral">&nbsp;</span>
180
- <span class="cline-any cline-yes">110x</span>
180
+ <span class="cline-any cline-yes">112x</span>
181
181
  <span class="cline-any cline-neutral">&nbsp;</span>
182
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
183
  <span class="cline-any cline-neutral">&nbsp;</span>
184
184
  <span class="cline-any cline-neutral">&nbsp;</span>
185
185
  <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-yes">25x</span>
187
- <span class="cline-any cline-yes">25x</span>
186
+ <span class="cline-any cline-yes">27x</span>
187
+ <span class="cline-any cline-yes">27x</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
189
  <span class="cline-any cline-yes">16x</span>
190
190
  <span class="cline-any cline-yes">16x</span>
191
191
  <span class="cline-any cline-neutral">&nbsp;</span>
192
- <span class="cline-any cline-yes">9x</span>
193
- <span class="cline-any cline-yes">9x</span>
192
+ <span class="cline-any cline-yes">11x</span>
193
+ <span class="cline-any cline-yes">11x</span>
194
194
  <span class="cline-any cline-neutral">&nbsp;</span>
195
195
  <span class="cline-any cline-no">&nbsp;</span>
196
196
  <span class="cline-any cline-neutral">&nbsp;</span>
197
197
  <span class="cline-any cline-neutral">&nbsp;</span>
198
- <span class="cline-any cline-yes">25x</span>
198
+ <span class="cline-any cline-yes">27x</span>
199
199
  <span class="cline-any cline-neutral">&nbsp;</span>
200
200
  <span class="cline-any cline-neutral">&nbsp;</span>
201
- <span class="cline-any cline-yes">110x</span>
201
+ <span class="cline-any cline-yes">112x</span>
202
202
  <span class="cline-any cline-neutral">&nbsp;</span>
203
203
  <span class="cline-any cline-neutral">&nbsp;</span>
204
204
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -208,10 +208,10 @@
208
208
  <span class="cline-any cline-neutral">&nbsp;</span>
209
209
  <span class="cline-any cline-neutral">&nbsp;</span>
210
210
  <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-yes">110x</span>
212
- <span class="cline-any cline-yes">110x</span>
213
- <span class="cline-any cline-yes">110x</span>
214
- <span class="cline-any cline-yes">110x</span>
211
+ <span class="cline-any cline-yes">112x</span>
212
+ <span class="cline-any cline-yes">112x</span>
213
+ <span class="cline-any cline-yes">112x</span>
214
+ <span class="cline-any cline-yes">112x</span>
215
215
  <span class="cline-any cline-no">&nbsp;</span>
216
216
  <span class="cline-any cline-neutral">&nbsp;</span>
217
217
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -226,7 +226,7 @@
226
226
  <span class="cline-any cline-neutral">&nbsp;</span>
227
227
  <span class="cline-any cline-neutral">&nbsp;</span>
228
228
  <span class="cline-any cline-neutral">&nbsp;</span>
229
- <span class="cline-any cline-yes">110x</span>
229
+ <span class="cline-any cline-yes">112x</span>
230
230
  <span class="cline-any cline-neutral">&nbsp;</span>
231
231
  <span class="cline-any cline-neutral">&nbsp;</span>
232
232
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -235,25 +235,25 @@
235
235
  <span class="cline-any cline-neutral">&nbsp;</span>
236
236
  <span class="cline-any cline-neutral">&nbsp;</span>
237
237
  <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-yes">25x</span>
239
- <span class="cline-any cline-yes">25x</span>
238
+ <span class="cline-any cline-yes">27x</span>
239
+ <span class="cline-any cline-yes">27x</span>
240
240
  <span class="cline-any cline-neutral">&nbsp;</span>
241
- <span class="cline-any cline-yes">25x</span>
242
- <span class="cline-any cline-yes">22x</span>
241
+ <span class="cline-any cline-yes">27x</span>
242
+ <span class="cline-any cline-yes">24x</span>
243
243
  <span class="cline-any cline-no">&nbsp;</span>
244
244
  <span class="cline-any cline-neutral">&nbsp;</span>
245
245
  <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-yes">22x</span>
246
+ <span class="cline-any cline-yes">24x</span>
247
247
  <span class="cline-any cline-no">&nbsp;</span>
248
248
  <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-yes">22x</span>
249
+ <span class="cline-any cline-yes">24x</span>
250
250
  <span class="cline-any cline-neutral">&nbsp;</span>
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
252
  <span class="cline-any cline-neutral">&nbsp;</span>
253
253
  <span class="cline-any cline-neutral">&nbsp;</span>
254
- <span class="cline-any cline-yes">25x</span>
255
- <span class="cline-any cline-yes">25x</span>
256
- <span class="cline-any cline-yes">25x</span>
254
+ <span class="cline-any cline-yes">27x</span>
255
+ <span class="cline-any cline-yes">27x</span>
256
+ <span class="cline-any cline-yes">27x</span>
257
257
  <span class="cline-any cline-neutral">&nbsp;</span>
258
258
  <span class="cline-any cline-neutral">&nbsp;</span>
259
259
  <span class="cline-any cline-no">&nbsp;</span>
@@ -403,7 +403,7 @@ export class Thread {
403
403
  <div class='footer quiet pad2 space-top1 center small'>
404
404
  Code coverage generated by
405
405
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
406
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
406
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
407
407
  </div>
408
408
  <script src="../../prettify.js"></script>
409
409
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">79.69% </span>
26
+ <span class="strong">78.72% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>106/133</span>
28
+ <span class='fraction'>111/141</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">53.48% </span>
33
+ <span class="strong">53.33% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>23/43</span>
35
+ <span class='fraction'>24/45</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">76.92% </span>
40
+ <span class="strong">85.71% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>10/13</span>
42
+ <span class='fraction'>12/14</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">80% </span>
47
+ <span class="strong">78.98% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>104/130</span>
49
+ <span class='fraction'>109/138</span>
50
50
  </div>
51
51
 
52
52
 
@@ -355,7 +355,20 @@
355
355
  <a name='L290'></a><a href='#L290'>290</a>
356
356
  <a name='L291'></a><a href='#L291'>291</a>
357
357
  <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
358
+ <a name='L293'></a><a href='#L293'>293</a>
359
+ <a name='L294'></a><a href='#L294'>294</a>
360
+ <a name='L295'></a><a href='#L295'>295</a>
361
+ <a name='L296'></a><a href='#L296'>296</a>
362
+ <a name='L297'></a><a href='#L297'>297</a>
363
+ <a name='L298'></a><a href='#L298'>298</a>
364
+ <a name='L299'></a><a href='#L299'>299</a>
365
+ <a name='L300'></a><a href='#L300'>300</a>
366
+ <a name='L301'></a><a href='#L301'>301</a>
367
+ <a name='L302'></a><a href='#L302'>302</a>
368
+ <a name='L303'></a><a href='#L303'>303</a>
369
+ <a name='L304'></a><a href='#L304'>304</a>
370
+ <a name='L305'></a><a href='#L305'>305</a>
371
+ <a name='L306'></a><a href='#L306'>306</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
359
372
  <span class="cline-any cline-yes">3x</span>
360
373
  <span class="cline-any cline-neutral">&nbsp;</span>
361
374
  <span class="cline-any cline-yes">3x</span>
@@ -364,11 +377,9 @@
364
377
  <span class="cline-any cline-yes">3x</span>
365
378
  <span class="cline-any cline-yes">3x</span>
366
379
  <span class="cline-any cline-yes">3x</span>
367
- <span class="cline-any cline-neutral">&nbsp;</span>
368
380
  <span class="cline-any cline-yes">3x</span>
369
381
  <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-yes">3x</span>
372
383
  <span class="cline-any cline-yes">3x</span>
373
384
  <span class="cline-any cline-neutral">&nbsp;</span>
374
385
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -420,9 +431,10 @@
420
431
  <span class="cline-any cline-neutral">&nbsp;</span>
421
432
  <span class="cline-any cline-yes">22x</span>
422
433
  <span class="cline-any cline-no">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
434
+ <span class="cline-any cline-no">&nbsp;</span>
424
435
  <span class="cline-any cline-no">&nbsp;</span>
425
436
  <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-no">&nbsp;</span>
426
438
  <span class="cline-any cline-neutral">&nbsp;</span>
427
439
  <span class="cline-any cline-neutral">&nbsp;</span>
428
440
  <span class="cline-any cline-yes">22x</span>
@@ -433,6 +445,9 @@
433
445
  <span class="cline-any cline-neutral">&nbsp;</span>
434
446
  <span class="cline-any cline-neutral">&nbsp;</span>
435
447
  <span class="cline-any cline-yes">22x</span>
448
+ <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-neutral">&nbsp;</span>
450
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
451
  <span class="cline-any cline-yes">22x</span>
437
452
  <span class="cline-any cline-neutral">&nbsp;</span>
438
453
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -524,6 +539,8 @@
524
539
  <span class="cline-any cline-yes">5x</span>
525
540
  <span class="cline-any cline-yes">5x</span>
526
541
  <span class="cline-any cline-yes">5x</span>
542
+ <span class="cline-any cline-neutral">&nbsp;</span>
543
+ <span class="cline-any cline-neutral">&nbsp;</span>
527
544
  <span class="cline-any cline-yes">5x</span>
528
545
  <span class="cline-any cline-neutral">&nbsp;</span>
529
546
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -646,6 +663,15 @@
646
663
  <span class="cline-any cline-no">&nbsp;</span>
647
664
  <span class="cline-any cline-neutral">&nbsp;</span>
648
665
  <span class="cline-any cline-neutral">&nbsp;</span>
666
+ <span class="cline-any cline-yes">16x</span>
667
+ <span class="cline-any cline-yes">16x</span>
668
+ <span class="cline-any cline-yes">16x</span>
669
+ <span class="cline-any cline-yes">16x</span>
670
+ <span class="cline-any cline-neutral">&nbsp;</span>
671
+ <span class="cline-any cline-neutral">&nbsp;</span>
672
+ <span class="cline-any cline-no">&nbsp;</span>
673
+ <span class="cline-any cline-neutral">&nbsp;</span>
674
+ <span class="cline-any cline-neutral">&nbsp;</span>
649
675
  <span class="cline-any cline-neutral">&nbsp;</span>
650
676
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { default as threadUtils } from "./utils"
651
677
  threadUtils.threadSetup()
@@ -655,13 +681,11 @@ import { getIntegration } from "../integrations"
655
681
  import { processStringSync } from "@budibase/string-templates"
656
682
  import { context, cache, auth } from "@budibase/backend-core"
657
683
  import { getGlobalIDFromUserMetadataID } from "../db/utils"
684
+ import sdk from "../sdk"
658
685
  import { cloneDeep } from "lodash/fp"
659
686
  &nbsp;
660
- const { isSQL } = require("../integrations/utils")
661
- const {
662
- enrichQueryFields,
663
- interpolateSQL,
664
- } = require("../integrations/queries/sql")
687
+ import { isSQL } from "../integrations/utils"
688
+ import { interpolateSQL } from "../integrations/queries/sql"
665
689
  &nbsp;
666
690
  class QueryRunner {
667
691
  datasource: any
@@ -711,10 +735,11 @@ class QueryRunner {
711
735
  }
712
736
  &nbsp;
713
737
  <span class="missing-if-branch" title="if path not taken" >I</span>if (datasourceClone.config.authConfigs) {
714
- <span class="cstat-no" title="statement not covered" > datasourceClone.config.authConfigs =</span>
715
- datasourceClone.config.authConfigs.map(<span class="fstat-no" title="function not covered" >(c</span>onfig: any) =&gt; {
716
- <span class="cstat-no" title="statement not covered" > return enrichQueryFields(config, this.ctx)</span>
717
- })
738
+ const updatedConfigs = <span class="cstat-no" title="statement not covered" >[]</span>
739
+ <span class="cstat-no" title="statement not covered" > for (let config of datasourceClone.config.authConfigs) {</span>
740
+ <span class="cstat-no" title="statement not covered" > updatedConfigs.push(await sdk.queries.enrichContext(config, this.ctx))</span>
741
+ }
742
+ <span class="cstat-no" title="statement not covered" > datasourceClone.config.authConfigs = updatedConfigs</span>
718
743
  }
719
744
  &nbsp;
720
745
  const integration = new Integration(datasourceClone.config)
@@ -724,12 +749,15 @@ class QueryRunner {
724
749
  &nbsp;
725
750
  // Enrich the parameters with the addition context items.
726
751
  // 'user' is now a reserved variable key in mapping parameters
727
- const enrichedParameters = enrichQueryFields(parameters, this.ctx)
752
+ const enrichedParameters = await sdk.queries.enrichContext(
753
+ parameters,
754
+ this.ctx
755
+ )
728
756
  const enrichedContext = { ...enrichedParameters, ...this.ctx }
729
757
  &nbsp;
730
758
  // Parse global headers
731
759
  if (datasourceClone.config.defaultHeaders) {
732
- datasourceClone.config.defaultHeaders = enrichQueryFields(
760
+ datasourceClone.config.defaultHeaders = await sdk.queries.enrichContext(
733
761
  datasourceClone.config.defaultHeaders,
734
762
  enrichedContext
735
763
  )
@@ -738,9 +766,9 @@ class QueryRunner {
738
766
  let query
739
767
  // handle SQL injections by interpolating the variables
740
768
  if (isSQL(datasourceClone)) {
741
- query = interpolateSQL(fieldsClone, enrichedParameters, integration)
769
+ query = await interpolateSQL(fieldsClone, enrichedParameters, integration)
742
770
  } else {
743
- query = enrichQueryFields(fieldsClone, enrichedContext)
771
+ query = await sdk.queries.enrichContext(fieldsClone, enrichedContext)
744
772
  }
745
773
  &nbsp;
746
774
  // Add pagination values for REST queries
@@ -815,7 +843,9 @@ class QueryRunner {
815
843
  async runAnotherQuery(queryId: string, parameters: any) {
816
844
  const db = context.getAppDB()
817
845
  const query = await db.get(queryId)
818
- const datasource = await db.get(query.datasourceId)
846
+ const datasource = await sdk.datasources.get(query.datasourceId, {
847
+ enriched: true,
848
+ })
819
849
  return new QueryRunner(
820
850
  {
821
851
  datasource,
@@ -929,7 +959,7 @@ class QueryRunner {
929
959
  }
930
960
  &nbsp;
931
961
  export function execute(input: QueryEvent, callback: WorkerCallback) {
932
- context.doInAppContext(input.appId!, async () =&gt; {
962
+ const run = async () =&gt; {
933
963
  const Runner = new QueryRunner(input)
934
964
  try {
935
965
  const response = await Runner.execute()
@@ -937,6 +967,15 @@ export function execute(input: QueryEvent, callback: WorkerCallback) {
937
967
  } catch (err) {
938
968
  <span class="cstat-no" title="statement not covered" > callback(err)</span>
939
969
  }
970
+ }
971
+ context.doInAppContext(input.appId!, async () =&gt; {
972
+ if (input.environmentVariables) {
973
+ return context.doInEnvironmentContext(input.environmentVariables, () =&gt; {
974
+ return run()
975
+ })
976
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>{
977
+ <span class="cstat-no" title="statement not covered" > return run()</span>
978
+ }
940
979
  })
941
980
  }
942
981
  &nbsp;</pre></td></tr></table></pre>
@@ -946,7 +985,7 @@ export function execute(input: QueryEvent, callback: WorkerCallback) {
946
985
  <div class='footer quiet pad2 space-top1 center small'>
947
986
  Code coverage generated by
948
987
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
949
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
988
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
950
989
  </div>
951
990
  <script src="../../prettify.js"></script>
952
991
  <script>
@@ -160,11 +160,11 @@
160
160
  <a name='L95'></a><a href='#L95'>95</a>
161
161
  <a name='L96'></a><a href='#L96'>96</a>
162
162
  <a name='L97'></a><a href='#L97'>97</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
163
- <span class="cline-any cline-yes">55x</span>
164
- <span class="cline-any cline-yes">55x</span>
165
- <span class="cline-any cline-yes">55x</span>
163
+ <span class="cline-any cline-yes">56x</span>
164
+ <span class="cline-any cline-yes">56x</span>
165
+ <span class="cline-any cline-yes">56x</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-yes">55x</span>
167
+ <span class="cline-any cline-yes">56x</span>
168
168
  <span class="cline-any cline-neutral">&nbsp;</span>
169
169
  <span class="cline-any cline-neutral">&nbsp;</span>
170
170
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -174,7 +174,7 @@
174
174
  <span class="cline-any cline-yes">19x</span>
175
175
  <span class="cline-any cline-neutral">&nbsp;</span>
176
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
- <span class="cline-any cline-yes">55x</span>
177
+ <span class="cline-any cline-yes">56x</span>
178
178
  <span class="cline-any cline-no">&nbsp;</span>
179
179
  <span class="cline-any cline-no">&nbsp;</span>
180
180
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -186,8 +186,8 @@
186
186
  <span class="cline-any cline-neutral">&nbsp;</span>
187
187
  <span class="cline-any cline-no">&nbsp;</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-yes">57x</span>
190
- <span class="cline-any cline-yes">57x</span>
189
+ <span class="cline-any cline-yes">58x</span>
190
+ <span class="cline-any cline-yes">58x</span>
191
191
  <span class="cline-any cline-neutral">&nbsp;</span>
192
192
  <span class="cline-any cline-neutral">&nbsp;</span>
193
193
  <span class="cline-any cline-no">&nbsp;</span>
@@ -247,7 +247,7 @@
247
247
  <span class="cline-any cline-neutral">&nbsp;</span>
248
248
  <span class="cline-any cline-neutral">&nbsp;</span>
249
249
  <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-yes">113x</span>
250
+ <span class="cline-any cline-yes">114x</span>
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
252
  <span class="cline-any cline-neutral">&nbsp;</span>
253
253
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -358,7 +358,7 @@ export default {
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
361
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
361
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
362
362
  </div>
363
363
  <script src="../../prettify.js"></script>
364
364
  <script>
@@ -68,7 +68,7 @@
68
68
  <a name='L3'></a><a href='#L3'>3</a>
69
69
  <a name='L4'></a><a href='#L4'>4</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">59x</span>
70
70
  <span class="cline-any cline-neutral">&nbsp;</span>
71
- <span class="cline-any cline-yes">628x</span>
71
+ <span class="cline-any cline-yes">702x</span>
72
72
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { objectStore } from "@budibase/backend-core"
73
73
  &nbsp;
74
74
  export const budibaseTempDir = objectStore.budibaseTempDir
@@ -79,7 +79,7 @@ export const budibaseTempDir = objectStore.budibaseTempDir
79
79
  <div class='footer quiet pad2 space-top1 center small'>
80
80
  Code coverage generated by
81
81
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
82
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
82
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
83
83
  </div>
84
84
  <script src="../../prettify.js"></script>
85
85
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">80% </span>
26
+ <span class="strong">60% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>4/5</span>
28
+ <span class='fraction'>3/5</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">75% </span>
40
+ <span class="strong">50% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>3/4</span>
42
+ <span class='fraction'>2/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">80% </span>
47
+ <span class="strong">60% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>4/5</span>
49
+ <span class='fraction'>3/5</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line high'></div>
64
+ <div class='status-line medium'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -95,7 +95,7 @@
95
95
  <span class="cline-any cline-neutral">&nbsp;</span>
96
96
  <span class="cline-any cline-neutral">&nbsp;</span>
97
97
  <span class="cline-any cline-neutral">&nbsp;</span>
98
- <span class="cline-any cline-yes">54x</span>
98
+ <span class="cline-any cline-no">&nbsp;</span>
99
99
  <span class="cline-any cline-no">&nbsp;</span>
100
100
  <span class="cline-any cline-neutral">&nbsp;</span>
101
101
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -104,7 +104,7 @@
104
104
  <span class="cline-any cline-neutral">&nbsp;</span>
105
105
  <span class="cline-any cline-neutral">&nbsp;</span>
106
106
  <span class="cline-any cline-neutral">&nbsp;</span>
107
- <span class="cline-any cline-yes">54x</span>
107
+ <span class="cline-any cline-yes">1x</span>
108
108
  <span class="cline-any cline-yes">1x</span>
109
109
  <span class="cline-any cline-neutral">&nbsp;</span>
110
110
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import path from "path"
@@ -117,7 +117,7 @@
117
117
  * @param args Any number of string arguments to add to a path
118
118
  * @returns {string} The final path ready to use
119
119
  */
120
- export function <span class="fstat-no" title="function not covered" >join(</span>...args: any) {
120
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >join<span class="fstat-no" title="function not covered" >(</span></span>.</span>..args: any) {
121
121
  <span class="cstat-no" title="statement not covered" > return path.join(...args)</span>
122
122
  }
123
123
  &nbsp;
@@ -136,7 +136,7 @@ export function resolve(...args: any) {
136
136
  <div class='footer quiet pad2 space-top1 center small'>
137
137
  Code coverage generated by
138
138
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
- at Wed Jan 11 2023 10:34:19 GMT+0000 (Coordinated Universal Time)
139
+ at Fri Feb 03 2023 15:03:24 GMT+0000 (Coordinated Universal Time)
140
140
  </div>
141
141
  <script src="../../prettify.js"></script>
142
142
  <script>