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

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.9f16f5ff.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 +5114 -4925
  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 +28 -22
  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 +7899 -7539
  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,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">82.87% </span>
26
+ <span class="strong">83.1% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>121/146</span>
28
+ <span class='fraction'>123/148</span>
29
29
  </div>
30
30
 
31
31
 
@@ -360,17 +360,27 @@
360
360
  <a name='L295'></a><a href='#L295'>295</a>
361
361
  <a name='L296'></a><a href='#L296'>296</a>
362
362
  <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
364
- <span class="cline-any cline-yes">55x</span>
365
- <span class="cline-any cline-yes">55x</span>
366
- <span class="cline-any cline-yes">55x</span>
367
- <span class="cline-any cline-yes">55x</span>
368
- <span class="cline-any cline-yes">55x</span>
369
- <span class="cline-any cline-yes">55x</span>
370
- <span class="cline-any cline-yes">55x</span>
371
- <span class="cline-any cline-yes">55x</span>
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">56x</span>
372
+ <span class="cline-any cline-yes">56x</span>
373
+ <span class="cline-any cline-yes">56x</span>
374
+ <span class="cline-any cline-yes">56x</span>
375
+ <span class="cline-any cline-yes">56x</span>
376
+ <span class="cline-any cline-yes">56x</span>
377
+ <span class="cline-any cline-yes">56x</span>
378
+ <span class="cline-any cline-yes">56x</span>
379
+ <span class="cline-any cline-yes">56x</span>
380
+ <span class="cline-any cline-yes">56x</span>
372
381
  <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-yes">55x</span>
382
+ <span class="cline-any cline-neutral">&nbsp;</span>
383
+ <span class="cline-any cline-yes">56x</span>
374
384
  <span class="cline-any cline-neutral">&nbsp;</span>
375
385
  <span class="cline-any cline-neutral">&nbsp;</span>
376
386
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -386,7 +396,7 @@
386
396
  <span class="cline-any cline-yes">6x</span>
387
397
  <span class="cline-any cline-neutral">&nbsp;</span>
388
398
  <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-yes">55x</span>
399
+ <span class="cline-any cline-yes">56x</span>
390
400
  <span class="cline-any cline-yes">3x</span>
391
401
  <span class="cline-any cline-neutral">&nbsp;</span>
392
402
  <span class="cline-any cline-yes">3x</span>
@@ -398,7 +408,7 @@
398
408
  <span class="cline-any cline-yes">3x</span>
399
409
  <span class="cline-any cline-neutral">&nbsp;</span>
400
410
  <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-yes">55x</span>
411
+ <span class="cline-any cline-yes">56x</span>
402
412
  <span class="cline-any cline-no">&nbsp;</span>
403
413
  <span class="cline-any cline-no">&nbsp;</span>
404
414
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -437,9 +447,9 @@
437
447
  <span class="cline-any cline-neutral">&nbsp;</span>
438
448
  <span class="cline-any cline-no">&nbsp;</span>
439
449
  <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-yes">54x</span>
450
+ <span class="cline-any cline-yes">55x</span>
441
451
  <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-yes">91x</span>
452
+ <span class="cline-any cline-yes">92x</span>
443
453
  <span class="cline-any cline-yes">40x</span>
444
454
  <span class="cline-any cline-yes">40x</span>
445
455
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -461,7 +471,7 @@
461
471
  <span class="cline-any cline-yes">40x</span>
462
472
  <span class="cline-any cline-neutral">&nbsp;</span>
463
473
  <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-yes">54x</span>
474
+ <span class="cline-any cline-yes">55x</span>
465
475
  <span class="cline-any cline-yes">3x</span>
466
476
  <span class="cline-any cline-yes">3x</span>
467
477
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -487,10 +497,10 @@
487
497
  <span class="cline-any cline-yes">15x</span>
488
498
  <span class="cline-any cline-neutral">&nbsp;</span>
489
499
  <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-yes">54x</span>
500
+ <span class="cline-any cline-yes">55x</span>
491
501
  <span class="cline-any cline-yes">14x</span>
492
502
  <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-yes">14x</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
504
  <span class="cline-any cline-yes">14x</span>
495
505
  <span class="cline-any cline-neutral">&nbsp;</span>
496
506
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -500,7 +510,6 @@
500
510
  <span class="cline-any cline-neutral">&nbsp;</span>
501
511
  <span class="cline-any cline-yes">14x</span>
502
512
  <span class="cline-any cline-yes">14x</span>
503
- <span class="cline-any cline-yes">14x</span>
504
513
  <span class="cline-any cline-neutral">&nbsp;</span>
505
514
  <span class="cline-any cline-neutral">&nbsp;</span>
506
515
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -514,6 +523,9 @@
514
523
  <span class="cline-any cline-neutral">&nbsp;</span>
515
524
  <span class="cline-any cline-neutral">&nbsp;</span>
516
525
  <span class="cline-any cline-neutral">&nbsp;</span>
526
+ <span class="cline-any cline-neutral">&nbsp;</span>
527
+ <span class="cline-any cline-yes">14x</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
517
529
  <span class="cline-any cline-yes">14x</span>
518
530
  <span class="cline-any cline-neutral">&nbsp;</span>
519
531
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -565,6 +577,8 @@
565
577
  <span class="cline-any cline-yes">3x</span>
566
578
  <span class="cline-any cline-yes">2x</span>
567
579
  <span class="cline-any cline-neutral">&nbsp;</span>
580
+ <span class="cline-any cline-neutral">&nbsp;</span>
581
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
582
  <span class="cline-any cline-yes">2x</span>
569
583
  <span class="cline-any cline-yes">2x</span>
570
584
  <span class="cline-any cline-yes">1x</span>
@@ -582,7 +596,6 @@
582
596
  <span class="cline-any cline-neutral">&nbsp;</span>
583
597
  <span class="cline-any cline-yes">2x</span>
584
598
  <span class="cline-any cline-yes">2x</span>
585
- <span class="cline-any cline-yes">2x</span>
586
599
  <span class="cline-any cline-neutral">&nbsp;</span>
587
600
  <span class="cline-any cline-neutral">&nbsp;</span>
588
601
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -597,6 +610,9 @@
597
610
  <span class="cline-any cline-neutral">&nbsp;</span>
598
611
  <span class="cline-any cline-neutral">&nbsp;</span>
599
612
  <span class="cline-any cline-neutral">&nbsp;</span>
613
+ <span class="cline-any cline-neutral">&nbsp;</span>
614
+ <span class="cline-any cline-yes">2x</span>
615
+ <span class="cline-any cline-neutral">&nbsp;</span>
600
616
  <span class="cline-any cline-yes">2x</span>
601
617
  <span class="cline-any cline-neutral">&nbsp;</span>
602
618
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -614,18 +630,18 @@
614
630
  <span class="cline-any cline-neutral">&nbsp;</span>
615
631
  <span class="cline-any cline-neutral">&nbsp;</span>
616
632
  <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-yes">54x</span>
633
+ <span class="cline-any cline-yes">55x</span>
618
634
  <span class="cline-any cline-yes">1x</span>
619
635
  <span class="cline-any cline-neutral">&nbsp;</span>
620
636
  <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-yes">56x</span>
637
+ <span class="cline-any cline-yes">57x</span>
622
638
  <span class="cline-any cline-neutral">&nbsp;</span>
623
639
  <span class="cline-any cline-neutral">&nbsp;</span>
624
640
  <span class="cline-any cline-neutral">&nbsp;</span>
625
641
  <span class="cline-any cline-yes">2x</span>
626
642
  <span class="cline-any cline-neutral">&nbsp;</span>
627
643
  <span class="cline-any cline-neutral">&nbsp;</span>
628
- <span class="cline-any cline-yes">55x</span>
644
+ <span class="cline-any cline-yes">56x</span>
629
645
  <span class="cline-any cline-yes">2x</span>
630
646
  <span class="cline-any cline-yes">2x</span>
631
647
  <span class="cline-any cline-yes">2x</span>
@@ -646,7 +662,7 @@
646
662
  <span class="cline-any cline-neutral">&nbsp;</span>
647
663
  <span class="cline-any cline-neutral">&nbsp;</span>
648
664
  <span class="cline-any cline-neutral">&nbsp;</span>
649
- <span class="cline-any cline-yes">54x</span>
665
+ <span class="cline-any cline-yes">55x</span>
650
666
  <span class="cline-any cline-yes">2x</span>
651
667
  <span class="cline-any cline-yes">2x</span>
652
668
  <span class="cline-any cline-yes">2x</span>
@@ -666,6 +682,8 @@ import { invalidateDynamicVariables } from "../../../threads/utils"
666
682
  import env from "../../../environment"
667
683
  import { quotas } from "@budibase/pro"
668
684
  import { events, context, utils, constants } from "@budibase/backend-core"
685
+ import sdk from "../../../sdk"
686
+ import { QueryEvent } from "../../../threads/definitions"
669
687
  &nbsp;
670
688
  const Runner = new Thread(ThreadType.QUERY, {
671
689
  timeoutMs: env.QUERY_THREAD_TIMEOUT || 10000,
@@ -740,7 +758,7 @@ export async function save(ctx: any) {
740
758
  const db = context.getAppDB()
741
759
  const query = ctx.request.body
742
760
  &nbsp;
743
- const datasource = await db.get(query.datasourceId)
761
+ const datasource = await sdk.datasources.get(query.datasourceId)
744
762
  &nbsp;
745
763
  let eventFn
746
764
  if (!query._id) {
@@ -785,9 +803,9 @@ function getAuthConfig(ctx: any) {
785
803
  }
786
804
  &nbsp;
787
805
  export async function preview(ctx: any) {
788
- const db = context.getAppDB()
789
- &nbsp;
790
- const datasource = await db.get(ctx.request.body.datasourceId)
806
+ const { datasource, envVars } = await sdk.datasources.getWithEnvVars(
807
+ ctx.request.body.datasourceId
808
+ )
791
809
  const query = ctx.request.body
792
810
  // preview may not have a queryId as it hasn't been saved, but if it does
793
811
  // this stops dynamic variables from calling the same query
@@ -796,20 +814,22 @@ export async function preview(ctx: any) {
796
814
  const authConfigCtx: any = getAuthConfig(ctx)
797
815
  &nbsp;
798
816
  try {
799
- const runFn = () =&gt;
800
- Runner.run({
801
- appId: ctx.appId,
802
- datasource,
803
- queryVerb,
804
- fields,
805
- parameters,
806
- transformer,
807
- queryId,
808
- ctx: {
809
- user: ctx.user,
810
- auth: { ...authConfigCtx },
811
- },
812
- })
817
+ const inputs: QueryEvent = {
818
+ appId: ctx.appId,
819
+ datasource,
820
+ queryVerb,
821
+ fields,
822
+ parameters,
823
+ transformer,
824
+ queryId,
825
+ // have to pass down to the thread runner - can't put into context now
826
+ environmentVariables: envVars,
827
+ ctx: {
828
+ user: ctx.user,
829
+ auth: { ...authConfigCtx },
830
+ },
831
+ }
832
+ const runFn = () =&gt; Runner.run(inputs)
813
833
  &nbsp;
814
834
  const { rows, keys, info, extra } = await quotas.addQuery(runFn, {
815
835
  datasourceId: datasource._id,
@@ -860,7 +880,9 @@ async function execute(
860
880
  const db = context.getAppDB()
861
881
  &nbsp;
862
882
  const query = await db.get(ctx.params.queryId)
863
- const datasource = await db.get(query.datasourceId)
883
+ const { datasource, envVars } = await sdk.datasources.getWithEnvVars(
884
+ query.datasourceId
885
+ )
864
886
  &nbsp;
865
887
  let authConfigCtx: any = {}
866
888
  if (!opts.isAutomation) {
@@ -878,21 +900,23 @@ async function execute(
878
900
  &nbsp;
879
901
  // call the relevant CRUD method on the integration class
880
902
  try {
881
- const runFn = () =&gt;
882
- Runner.run({
883
- appId: ctx.appId,
884
- datasource,
885
- queryVerb: query.queryVerb,
886
- fields: query.fields,
887
- pagination: ctx.request.body.pagination,
888
- parameters: enrichedParameters,
889
- transformer: query.transformer,
890
- queryId: ctx.params.queryId,
891
- ctx: {
892
- user: ctx.user,
893
- auth: { ...authConfigCtx },
894
- },
895
- })
903
+ const inputs: QueryEvent = {
904
+ appId: ctx.appId,
905
+ datasource,
906
+ queryVerb: query.queryVerb,
907
+ fields: query.fields,
908
+ pagination: ctx.request.body.pagination,
909
+ parameters: enrichedParameters,
910
+ transformer: query.transformer,
911
+ queryId: ctx.params.queryId,
912
+ // have to pass down to the thread runner - can't put into context now
913
+ environmentVariables: envVars,
914
+ ctx: {
915
+ user: ctx.user,
916
+ auth: { ...authConfigCtx },
917
+ },
918
+ }
919
+ const runFn = () =&gt; Runner.run(inputs)
896
920
  &nbsp;
897
921
  const { rows, pagination, extra } = await quotas.addQuery(runFn, {
898
922
  datasourceId: datasource._id,
@@ -925,18 +949,18 @@ export async function executeV2(
925
949
  const removeDynamicVariables = async (queryId: any) =&gt; {
926
950
  const db = context.getAppDB()
927
951
  const query = await db.get(queryId)
928
- const datasource = await db.get(query.datasourceId)
929
- const dynamicVariables = datasource.config.dynamicVariables
952
+ const datasource = await sdk.datasources.get(query.datasourceId)
953
+ const dynamicVariables = datasource.config?.dynamicVariables as any[]
930
954
  &nbsp;
931
955
  if (dynamicVariables) {
932
956
  // delete dynamic variables from the datasource
933
- datasource.config.dynamicVariables = dynamicVariables.filter(
957
+ datasource.config!.dynamicVariables = dynamicVariables!.filter(
934
958
  (dv: any) =&gt; dv.queryId !== queryId
935
959
  )
936
960
  await db.put(datasource)
937
961
  &nbsp;
938
962
  // invalidate the deleted variables
939
- const variablesToDelete = dynamicVariables.filter(
963
+ const variablesToDelete = dynamicVariables!.filter(
940
964
  (dv: any) =&gt; dv.queryId === queryId
941
965
  )
942
966
  await invalidateDynamicVariables(variablesToDelete)
@@ -948,7 +972,7 @@ export async function destroy(ctx: any) {
948
972
  const queryId = ctx.params.queryId
949
973
  await removeDynamicVariables(queryId)
950
974
  const query = await db.get(queryId)
951
- const datasource = await db.get(query.datasourceId)
975
+ const datasource = await sdk.datasources.get(query.datasourceId)
952
976
  await db.remove(ctx.params.queryId, ctx.params.revId)
953
977
  ctx.message = `Query deleted.`
954
978
  ctx.status = 200
@@ -961,7 +985,7 @@ export async function destroy(ctx: any) {
961
985
  <div class='footer quiet pad2 space-top1 center small'>
962
986
  Code coverage generated by
963
987
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
964
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
988
+ at Wed Feb 01 2023 18:03:38 GMT+0000 (Coordinated Universal Time)
965
989
  </div>
966
990
  <script src="../../../../prettify.js"></script>
967
991
  <script>
@@ -113,13 +113,13 @@
113
113
  <a name='L48'></a><a href='#L48'>48</a>
114
114
  <a name='L49'></a><a href='#L49'>49</a>
115
115
  <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
117
- <span class="cline-any cline-yes">55x</span>
116
+ <a name='L51'></a><a href='#L51'>51</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
117
+ <span class="cline-any cline-yes">56x</span>
118
118
  <span class="cline-any cline-neutral">&nbsp;</span>
119
- <span class="cline-any cline-yes">55x</span>
119
+ <span class="cline-any cline-yes">56x</span>
120
120
  <span class="cline-any cline-neutral">&nbsp;</span>
121
121
  <span class="cline-any cline-yes">9x</span>
122
- <span class="cline-any cline-yes">63x</span>
122
+ <span class="cline-any cline-yes">64x</span>
123
123
  <span class="cline-any cline-neutral">&nbsp;</span>
124
124
  <span class="cline-any cline-neutral">&nbsp;</span>
125
125
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -140,14 +140,14 @@
140
140
  <span class="cline-any cline-neutral">&nbsp;</span>
141
141
  <span class="cline-any cline-neutral">&nbsp;</span>
142
142
  <span class="cline-any cline-neutral">&nbsp;</span>
143
- <span class="cline-any cline-yes">54x</span>
143
+ <span class="cline-any cline-yes">55x</span>
144
144
  <span class="cline-any cline-neutral">&nbsp;</span>
145
- <span class="cline-any cline-yes">54x</span>
145
+ <span class="cline-any cline-yes">55x</span>
146
146
  <span class="cline-any cline-neutral">&nbsp;</span>
147
147
  <span class="cline-any cline-neutral">&nbsp;</span>
148
- <span class="cline-any cline-yes">54x</span>
148
+ <span class="cline-any cline-yes">55x</span>
149
149
  <span class="cline-any cline-neutral">&nbsp;</span>
150
- <span class="cline-any cline-yes">54x</span>
150
+ <span class="cline-any cline-yes">55x</span>
151
151
  <span class="cline-any cline-neutral">&nbsp;</span>
152
152
  <span class="cline-any cline-neutral">&nbsp;</span>
153
153
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -220,7 +220,7 @@ export function generateQueryPreviewValidation() {
220
220
  <div class='footer quiet pad2 space-top1 center small'>
221
221
  Code coverage generated by
222
222
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
223
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
223
+ at Wed Feb 01 2023 18:03:38 GMT+0000 (Coordinated Universal Time)
224
224
  </div>
225
225
  <script src="../../../../prettify.js"></script>
226
226
  <script>
@@ -167,15 +167,15 @@
167
167
  <a name='L102'></a><a href='#L102'>102</a>
168
168
  <a name='L103'></a><a href='#L103'>103</a>
169
169
  <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">54x</span>
170
+ <a name='L105'></a><a href='#L105'>105</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
171
171
  <span class="cline-any cline-neutral">&nbsp;</span>
172
172
  <span class="cline-any cline-neutral">&nbsp;</span>
173
173
  <span class="cline-any cline-neutral">&nbsp;</span>
174
174
  <span class="cline-any cline-neutral">&nbsp;</span>
175
- <span class="cline-any cline-yes">54x</span>
175
+ <span class="cline-any cline-yes">55x</span>
176
176
  <span class="cline-any cline-neutral">&nbsp;</span>
177
177
  <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-yes">54x</span>
178
+ <span class="cline-any cline-yes">55x</span>
179
179
  <span class="cline-any cline-neutral">&nbsp;</span>
180
180
  <span class="cline-any cline-neutral">&nbsp;</span>
181
181
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -207,15 +207,15 @@
207
207
  <span class="cline-any cline-neutral">&nbsp;</span>
208
208
  <span class="cline-any cline-neutral">&nbsp;</span>
209
209
  <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-yes">54x</span>
210
+ <span class="cline-any cline-yes">55x</span>
211
211
  <span class="cline-any cline-yes">2x</span>
212
212
  <span class="cline-any cline-neutral">&nbsp;</span>
213
213
  <span class="cline-any cline-neutral">&nbsp;</span>
214
- <span class="cline-any cline-yes">54x</span>
214
+ <span class="cline-any cline-yes">55x</span>
215
215
  <span class="cline-any cline-yes">1x</span>
216
216
  <span class="cline-any cline-neutral">&nbsp;</span>
217
217
  <span class="cline-any cline-neutral">&nbsp;</span>
218
- <span class="cline-any cline-yes">58x</span>
218
+ <span class="cline-any cline-yes">59x</span>
219
219
  <span class="cline-any cline-yes">7x</span>
220
220
  <span class="cline-any cline-yes">7x</span>
221
221
  <span class="cline-any cline-yes">7x</span>
@@ -241,7 +241,7 @@
241
241
  <span class="cline-any cline-yes">7x</span>
242
242
  <span class="cline-any cline-neutral">&nbsp;</span>
243
243
  <span class="cline-any cline-neutral">&nbsp;</span>
244
- <span class="cline-any cline-yes">54x</span>
244
+ <span class="cline-any cline-yes">55x</span>
245
245
  <span class="cline-any cline-yes">1x</span>
246
246
  <span class="cline-any cline-yes">1x</span>
247
247
  <span class="cline-any cline-yes">1x</span>
@@ -382,7 +382,7 @@ export async function destroy(ctx: BBContext) {
382
382
  <div class='footer quiet pad2 space-top1 center small'>
383
383
  Code coverage generated by
384
384
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
385
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
385
+ at Wed Feb 01 2023 18:03:38 GMT+0000 (Coordinated Universal Time)
386
386
  </div>
387
387
  <script src="../../../prettify.js"></script>
388
388
  <script>
@@ -158,11 +158,11 @@
158
158
  <a name='L93'></a><a href='#L93'>93</a>
159
159
  <a name='L94'></a><a href='#L94'>94</a>
160
160
  <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">54x</span>
162
- <span class="cline-any cline-yes">54x</span>
161
+ <a name='L96'></a><a href='#L96'>96</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
162
+ <span class="cline-any cline-yes">55x</span>
163
163
  <span class="cline-any cline-neutral">&nbsp;</span>
164
164
  <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-yes">54x</span>
165
+ <span class="cline-any cline-yes">55x</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
167
  <span class="cline-any cline-neutral">&nbsp;</span>
168
168
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -216,11 +216,11 @@
216
216
  <span class="cline-any cline-yes">3x</span>
217
217
  <span class="cline-any cline-neutral">&nbsp;</span>
218
218
  <span class="cline-any cline-neutral">&nbsp;</span>
219
- <span class="cline-any cline-yes">54x</span>
219
+ <span class="cline-any cline-yes">55x</span>
220
220
  <span class="cline-any cline-yes">1x</span>
221
221
  <span class="cline-any cline-neutral">&nbsp;</span>
222
222
  <span class="cline-any cline-neutral">&nbsp;</span>
223
- <span class="cline-any cline-yes">54x</span>
223
+ <span class="cline-any cline-yes">55x</span>
224
224
  <span class="cline-any cline-yes">2x</span>
225
225
  <span class="cline-any cline-yes">2x</span>
226
226
  <span class="cline-any cline-yes">2x</span>
@@ -355,7 +355,7 @@ export async function clientFetch(ctx: BBContext) {
355
355
  <div class='footer quiet pad2 space-top1 center small'>
356
356
  Code coverage generated by
357
357
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
358
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
358
+ at Wed Feb 01 2023 18:03:38 GMT+0000 (Coordinated Universal Time)
359
359
  </div>
360
360
  <script src="../../../prettify.js"></script>
361
361
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">2.74% </span>
26
+ <span class="strong">2.73% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>8/291</span>
28
+ <span class='fraction'>8/293</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/183</span>
35
+ <span class='fraction'>0/186</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">2.76% </span>
47
+ <span class="strong">2.74% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>8/289</span>
49
+ <span class='fraction'>8/291</span>
50
50
  </div>
51
51
 
52
52
 
@@ -797,7 +797,13 @@
797
797
  <a name='L732'></a><a href='#L732'>732</a>
798
798
  <a name='L733'></a><a href='#L733'>733</a>
799
799
  <a name='L734'></a><a href='#L734'>734</a>
800
- <a name='L735'></a><a href='#L735'>735</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
800
+ <a name='L735'></a><a href='#L735'>735</a>
801
+ <a name='L736'></a><a href='#L736'>736</a>
802
+ <a name='L737'></a><a href='#L737'>737</a>
803
+ <a name='L738'></a><a href='#L738'>738</a>
804
+ <a name='L739'></a><a href='#L739'>739</a>
805
+ <a name='L740'></a><a href='#L740'>740</a>
806
+ <a name='L741'></a><a href='#L741'>741</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
801
807
  <span class="cline-any cline-neutral">&nbsp;</span>
802
808
  <span class="cline-any cline-neutral">&nbsp;</span>
803
809
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -809,22 +815,23 @@
809
815
  <span class="cline-any cline-neutral">&nbsp;</span>
810
816
  <span class="cline-any cline-neutral">&nbsp;</span>
811
817
  <span class="cline-any cline-neutral">&nbsp;</span>
812
- <span class="cline-any cline-yes">55x</span>
818
+ <span class="cline-any cline-yes">56x</span>
813
819
  <span class="cline-any cline-neutral">&nbsp;</span>
814
820
  <span class="cline-any cline-neutral">&nbsp;</span>
815
821
  <span class="cline-any cline-neutral">&nbsp;</span>
816
822
  <span class="cline-any cline-neutral">&nbsp;</span>
817
823
  <span class="cline-any cline-neutral">&nbsp;</span>
818
- <span class="cline-any cline-yes">55x</span>
819
- <span class="cline-any cline-yes">55x</span>
820
- <span class="cline-any cline-yes">55x</span>
824
+ <span class="cline-any cline-yes">56x</span>
825
+ <span class="cline-any cline-yes">56x</span>
826
+ <span class="cline-any cline-yes">56x</span>
821
827
  <span class="cline-any cline-neutral">&nbsp;</span>
822
- <span class="cline-any cline-yes">55x</span>
823
- <span class="cline-any cline-yes">55x</span>
824
- <span class="cline-any cline-yes">55x</span>
825
- <span class="cline-any cline-yes">55x</span>
828
+ <span class="cline-any cline-yes">56x</span>
829
+ <span class="cline-any cline-yes">56x</span>
830
+ <span class="cline-any cline-yes">56x</span>
826
831
  <span class="cline-any cline-neutral">&nbsp;</span>
827
832
  <span class="cline-any cline-neutral">&nbsp;</span>
833
+ <span class="cline-any cline-yes">56x</span>
834
+ <span class="cline-any cline-neutral">&nbsp;</span>
828
835
  <span class="cline-any cline-neutral">&nbsp;</span>
829
836
  <span class="cline-any cline-neutral">&nbsp;</span>
830
837
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1466,7 +1473,6 @@
1466
1473
  <span class="cline-any cline-no">&nbsp;</span>
1467
1474
  <span class="cline-any cline-no">&nbsp;</span>
1468
1475
  <span class="cline-any cline-no">&nbsp;</span>
1469
- <span class="cline-any cline-no">&nbsp;</span>
1470
1476
  <span class="cline-any cline-neutral">&nbsp;</span>
1471
1477
  <span class="cline-any cline-no">&nbsp;</span>
1472
1478
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1480,6 +1486,12 @@
1480
1486
  <span class="cline-any cline-neutral">&nbsp;</span>
1481
1487
  <span class="cline-any cline-neutral">&nbsp;</span>
1482
1488
  <span class="cline-any cline-neutral">&nbsp;</span>
1489
+ <span class="cline-any cline-neutral">&nbsp;</span>
1490
+ <span class="cline-any cline-no">&nbsp;</span>
1491
+ <span class="cline-any cline-no">&nbsp;</span>
1492
+ <span class="cline-any cline-no">&nbsp;</span>
1493
+ <span class="cline-any cline-neutral">&nbsp;</span>
1494
+ <span class="cline-any cline-neutral">&nbsp;</span>
1483
1495
  <span class="cline-any cline-no">&nbsp;</span>
1484
1496
  <span class="cline-any cline-no">&nbsp;</span>
1485
1497
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1558,6 +1570,7 @@ import { cloneDeep } from "lodash/fp"
1558
1570
  import { processFormulas, processDates } from "../../../utilities/rowProcessor"
1559
1571
  import { context } from "@budibase/backend-core"
1560
1572
  import { removeKeyNumbering } from "./utils"
1573
+ import sdk from "../../../sdk"
1561
1574
  &nbsp;
1562
1575
  export interface ManyRelationship {
1563
1576
  tableId?: string
@@ -2197,8 +2210,7 @@ export class <span class="cstat-no" title="statement not covered" ><span class="
2197
2210
  <span class="cstat-no" title="statement not covered" > throw "Unable to run without a table name"</span>
2198
2211
  }
2199
2212
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.datasource) {</span>
2200
- const db = <span class="cstat-no" title="statement not covered" >context.getAppDB()</span>
2201
- <span class="cstat-no" title="statement not covered" > this.datasource = await db.get(datasourceId)</span>
2213
+ <span class="cstat-no" title="statement not covered" > this.datasource = await sdk.datasources.get(datasourceId!)</span>
2202
2214
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.datasource || !this.datasource.entities) {</span>
2203
2215
  <span class="cstat-no" title="statement not covered" > throw "No tables found, fetch tables before query."</span>
2204
2216
  }
@@ -2214,6 +2226,12 @@ export class <span class="cstat-no" title="statement not covered" ><span class="
2214
2226
  config,
2215
2227
  table
2216
2228
  )
2229
+ //if the sort column is a formula, remove it
2230
+ <span class="cstat-no" title="statement not covered" > for (let sortColumn of Object.keys(sort || {})) {</span>
2231
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (table.schema[sortColumn]?.type === "formula") {</span>
2232
+ <span class="cstat-no" title="statement not covered" > delete sort?.[sortColumn]</span>
2233
+ }
2234
+ }
2217
2235
  <span class="cstat-no" title="statement not covered" > filters = buildFilters(id, filters || {}, table)</span>
2218
2236
  const relationships = <span class="cstat-no" title="statement not covered" >this.buildRelationships(table)</span>
2219
2237
  // clean up row on ingress using schema
@@ -2272,7 +2290,7 @@ export class <span class="cstat-no" title="statement not covered" ><span class="
2272
2290
  <div class='footer quiet pad2 space-top1 center small'>
2273
2291
  Code coverage generated by
2274
2292
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2275
- at Wed Jan 11 2023 09:50:52 GMT+0000 (Coordinated Universal Time)
2293
+ at Wed Feb 01 2023 18:03:38 GMT+0000 (Coordinated Universal Time)
2276
2294
  </div>
2277
2295
  <script src="../../../../prettify.js"></script>
2278
2296
  <script>