@budibase/server 2.2.12-alpha.44 → 2.2.12-alpha.46

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 (423) hide show
  1. package/__mocks__/node-fetch.ts +2 -0
  2. package/builder/assets/{index.80229ab4.css → index.a6babe89.css} +2 -2
  3. package/builder/assets/{index.94c085f6.js → index.abb0b327.js} +392 -386
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +1872 -1762
  6. package/coverage/coverage-final.json +83 -78
  7. package/coverage/lcov-report/index.html +141 -96
  8. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  9. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +1 -1
  10. package/coverage/lcov-report/src/api/controllers/application.ts.html +158 -137
  11. package/coverage/lcov-report/src/api/controllers/auth.ts.html +1 -1
  12. package/coverage/lcov-report/src/api/controllers/automation.ts.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  14. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +1 -1
  15. package/coverage/lcov-report/src/api/controllers/component.ts.html +1 -1
  16. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +99 -75
  17. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +12 -12
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +69 -69
  20. package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
  21. package/coverage/lcov-report/src/api/controllers/index.html +24 -24
  22. package/coverage/lcov-report/src/api/controllers/integration.ts.html +1 -1
  23. package/coverage/lcov-report/src/api/controllers/layout.ts.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +1 -1
  26. package/coverage/lcov-report/src/api/controllers/permission.ts.html +1 -1
  27. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  28. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.html +1 -1
  30. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +14 -14
  31. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  32. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  33. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  34. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  35. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
  36. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
  45. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
  46. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +1 -1
  47. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
  48. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +1 -1
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
  58. package/coverage/lcov-report/src/api/controllers/query/index.html +7 -7
  59. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +70 -46
  60. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +1 -1
  61. package/coverage/lcov-report/src/api/controllers/role.ts.html +1 -1
  62. package/coverage/lcov-report/src/api/controllers/routing.ts.html +1 -1
  63. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +9 -9
  64. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +11 -14
  65. package/coverage/lcov-report/src/api/controllers/row/index.html +15 -15
  66. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  67. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +1 -1
  68. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +1 -1
  69. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +1 -1
  70. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +4 -4
  71. package/coverage/lcov-report/src/api/controllers/screen.ts.html +1 -1
  72. package/coverage/lcov-report/src/api/controllers/script.ts.html +1 -1
  73. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  74. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +21 -24
  75. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +1 -1
  76. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +21 -15
  77. package/coverage/lcov-report/src/api/controllers/table/index.html +13 -13
  78. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +1 -1
  79. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +1 -1
  80. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +1 -1
  81. package/coverage/lcov-report/src/api/controllers/templates.ts.html +1 -1
  82. package/coverage/lcov-report/src/api/controllers/user.ts.html +1 -1
  83. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +1 -1
  84. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +1 -1
  86. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +1 -1
  87. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +1 -1
  88. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +57 -51
  89. package/coverage/lcov-report/src/api/index.html +1 -1
  90. package/coverage/lcov-report/src/api/index.ts.html +7 -7
  91. package/coverage/lcov-report/src/api/routes/analytics.ts.html +1 -1
  92. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +1 -1
  93. package/coverage/lcov-report/src/api/routes/application.ts.html +1 -1
  94. package/coverage/lcov-report/src/api/routes/auth.ts.html +1 -1
  95. package/coverage/lcov-report/src/api/routes/automation.ts.html +1 -1
  96. package/coverage/lcov-report/src/api/routes/backup.ts.html +1 -1
  97. package/coverage/lcov-report/src/api/routes/cloud.ts.html +1 -1
  98. package/coverage/lcov-report/src/api/routes/component.ts.html +1 -1
  99. package/coverage/lcov-report/src/api/routes/datasource.ts.html +1 -1
  100. package/coverage/lcov-report/src/api/routes/deploy.ts.html +1 -1
  101. package/coverage/lcov-report/src/api/routes/dev.ts.html +1 -1
  102. package/coverage/lcov-report/src/api/routes/index.html +5 -5
  103. package/coverage/lcov-report/src/api/routes/index.ts.html +10 -4
  104. package/coverage/lcov-report/src/api/routes/integration.ts.html +1 -1
  105. package/coverage/lcov-report/src/api/routes/layout.ts.html +1 -1
  106. package/coverage/lcov-report/src/api/routes/metadata.ts.html +1 -1
  107. package/coverage/lcov-report/src/api/routes/migrations.ts.html +1 -1
  108. package/coverage/lcov-report/src/api/routes/permission.ts.html +1 -1
  109. package/coverage/lcov-report/src/api/routes/plugin.ts.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
  111. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
  113. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
  115. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
  116. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/tests/index.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  121. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  122. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/query.ts.html +1 -1
  124. package/coverage/lcov-report/src/api/routes/role.ts.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/routing.ts.html +1 -1
  126. package/coverage/lcov-report/src/api/routes/row.ts.html +2 -2
  127. package/coverage/lcov-report/src/api/routes/screen.ts.html +1 -1
  128. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/static.ts.html +1 -1
  130. package/coverage/lcov-report/src/api/routes/table.ts.html +1 -1
  131. package/coverage/lcov-report/src/api/routes/templates.ts.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  134. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +1 -1
  135. package/coverage/lcov-report/src/api/routes/user.ts.html +1 -1
  136. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  137. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +1 -1
  138. package/coverage/lcov-report/src/api/routes/view.ts.html +1 -1
  139. package/coverage/lcov-report/src/api/routes/webhook.ts.html +1 -1
  140. package/coverage/lcov-report/src/app.ts.html +1 -1
  141. package/coverage/lcov-report/src/automations/actions.ts.html +1 -1
  142. package/coverage/lcov-report/src/automations/automationUtils.ts.html +1 -1
  143. package/coverage/lcov-report/src/automations/bullboard.ts.html +2 -2
  144. package/coverage/lcov-report/src/automations/index.html +15 -15
  145. package/coverage/lcov-report/src/automations/index.ts.html +1 -1
  146. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  147. package/coverage/lcov-report/src/automations/logging/index.ts.html +4 -4
  148. package/coverage/lcov-report/src/automations/steps/bash.ts.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/delay.ts.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/discord.ts.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/filter.ts.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/loop.ts.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +1 -1
  163. package/coverage/lcov-report/src/automations/steps/slack.ts.html +1 -1
  164. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +1 -1
  165. package/coverage/lcov-report/src/automations/steps/utils.ts.html +1 -1
  166. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +1 -1
  167. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  168. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +2 -2
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +1 -1
  174. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +1 -1
  175. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +1 -1
  176. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +1 -1
  177. package/coverage/lcov-report/src/automations/triggers.ts.html +1 -1
  178. package/coverage/lcov-report/src/automations/utils.ts.html +21 -21
  179. package/coverage/lcov-report/src/constants/index.html +1 -1
  180. package/coverage/lcov-report/src/constants/index.ts.html +2 -2
  181. package/coverage/lcov-report/src/constants/layouts.ts.html +1 -1
  182. package/coverage/lcov-report/src/constants/screens.ts.html +1 -1
  183. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +1 -1
  184. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +1 -1
  185. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +1 -1
  186. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  187. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +1 -1
  188. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +1 -1
  189. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  190. package/coverage/lcov-report/src/db/inMemoryView.ts.html +1 -1
  191. package/coverage/lcov-report/src/db/index.html +1 -1
  192. package/coverage/lcov-report/src/db/index.ts.html +1 -1
  193. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +1 -1
  194. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +1 -1
  195. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  196. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +1 -1
  197. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +1 -1
  198. package/coverage/lcov-report/src/db/newid.ts.html +3 -3
  199. package/coverage/lcov-report/src/db/utils.ts.html +17 -17
  200. package/coverage/lcov-report/src/definitions/automations.ts.html +5 -2
  201. package/coverage/lcov-report/src/definitions/datasource.ts.html +2 -2
  202. package/coverage/lcov-report/src/definitions/index.html +1 -1
  203. package/coverage/lcov-report/src/environment.ts.html +9 -9
  204. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +1 -1
  205. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +1 -1
  206. package/coverage/lcov-report/src/events/index.html +1 -1
  207. package/coverage/lcov-report/src/events/index.ts.html +1 -1
  208. package/coverage/lcov-report/src/events/utils.ts.html +1 -1
  209. package/coverage/lcov-report/src/index.html +7 -7
  210. package/coverage/lcov-report/src/index.ts.html +5 -5
  211. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  212. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  213. package/coverage/lcov-report/src/integrations/base/index.html +11 -11
  214. package/coverage/lcov-report/src/integrations/base/query.ts.html +13 -7
  215. package/coverage/lcov-report/src/integrations/base/sql.ts.html +12 -12
  216. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +8 -8
  217. package/coverage/lcov-report/src/integrations/base/utils.ts.html +2 -2
  218. package/coverage/lcov-report/src/integrations/couchdb.ts.html +5 -5
  219. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +9 -9
  220. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +5 -5
  221. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  222. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  223. package/coverage/lcov-report/src/integrations/index.html +1 -1
  224. package/coverage/lcov-report/src/integrations/index.ts.html +37 -37
  225. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  226. package/coverage/lcov-report/src/integrations/mongodb.ts.html +11 -11
  227. package/coverage/lcov-report/src/integrations/mysql.ts.html +11 -11
  228. package/coverage/lcov-report/src/integrations/oracle.ts.html +13 -13
  229. package/coverage/lcov-report/src/integrations/postgres.ts.html +10 -10
  230. package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
  231. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +15 -150
  232. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  233. package/coverage/lcov-report/src/integrations/rest.ts.html +24 -24
  234. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  235. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  236. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  237. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  238. package/coverage/lcov-report/src/integrations/utils.ts.html +2 -2
  239. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  240. package/coverage/lcov-report/src/middleware/authorized.ts.html +19 -19
  241. package/coverage/lcov-report/src/middleware/builder.ts.html +13 -13
  242. package/coverage/lcov-report/src/middleware/currentapp.ts.html +33 -33
  243. package/coverage/lcov-report/src/middleware/index.html +1 -1
  244. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  245. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  246. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  247. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  248. package/coverage/lcov-report/src/middleware/utils.ts.html +3 -3
  249. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  268. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  274. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +1 -1
  275. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +1 -1
  276. package/coverage/lcov-report/src/migrations/index.html +1 -1
  277. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  279. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  280. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  282. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +1 -1
  283. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +18 -18
  284. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +7 -7
  285. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  286. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  287. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  288. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  289. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +1 -1
  290. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +1 -1
  291. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  292. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  293. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  294. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +379 -0
  295. package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
  296. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
  297. package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
  298. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +100 -0
  299. package/coverage/lcov-report/src/sdk/app/queries/queries.ts.html +235 -0
  300. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +1 -1
  301. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  302. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +1 -1
  303. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +1 -1
  304. package/coverage/lcov-report/src/sdk/app/tables/index.html +11 -11
  305. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +18 -9
  306. package/coverage/lcov-report/src/sdk/index.html +5 -5
  307. package/coverage/lcov-report/src/sdk/index.ts.html +17 -5
  308. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  309. package/coverage/lcov-report/src/sdk/users/index.ts.html +1 -1
  310. package/coverage/lcov-report/src/sdk/users/utils.ts.html +20 -20
  311. package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
  312. package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
  313. package/coverage/lcov-report/src/startup.ts.html +1 -1
  314. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +89 -80
  315. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +4 -4
  316. package/coverage/lcov-report/src/tests/utilities/index.html +5 -5
  317. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  318. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +4 -4
  319. package/coverage/lcov-report/src/threads/automation.ts.html +42 -24
  320. package/coverage/lcov-report/src/threads/index.html +28 -28
  321. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  322. package/coverage/lcov-report/src/threads/query.ts.html +68 -29
  323. package/coverage/lcov-report/src/threads/utils.ts.html +1 -1
  324. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +2 -2
  325. package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
  326. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +8 -8
  327. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +1 -1
  328. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +18 -12
  329. package/coverage/lcov-report/src/utilities/fileSystem/index.html +17 -17
  330. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +1 -1
  331. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +5 -8
  332. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  333. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +3 -3
  334. package/coverage/lcov-report/src/utilities/global.ts.html +33 -33
  335. package/coverage/lcov-report/src/utilities/index.html +16 -16
  336. package/coverage/lcov-report/src/utilities/index.ts.html +12 -12
  337. package/coverage/lcov-report/src/utilities/redis.ts.html +1 -1
  338. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  339. package/coverage/lcov-report/src/utilities/routing/index.ts.html +1 -1
  340. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  341. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +1 -1
  342. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +1 -1
  343. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +1 -1
  344. package/coverage/lcov-report/src/utilities/schema.ts.html +1 -1
  345. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +1 -1
  346. package/coverage/lcov-report/src/utilities/security.ts.html +1 -1
  347. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  348. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +1 -1
  349. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  350. package/coverage/lcov-report/src/utilities/users.ts.html +1 -1
  351. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +1 -1
  352. package/coverage/lcov-report/src/watch.ts.html +1 -1
  353. package/coverage/lcov-report/src/websocket.ts.html +3 -3
  354. package/coverage/lcov.info +2986 -2796
  355. package/dist/api/controllers/application.js +73 -74
  356. package/dist/api/controllers/datasource.js +24 -15
  357. package/dist/api/controllers/query/index.js +18 -11
  358. package/dist/api/controllers/row/ExternalRequest.js +5 -3
  359. package/dist/api/controllers/row/external.js +6 -5
  360. package/dist/api/controllers/row/utils.js +5 -2
  361. package/dist/api/controllers/static/index.js +38 -38
  362. package/dist/api/controllers/table/external.js +8 -5
  363. package/dist/api/controllers/webhook.js +45 -43
  364. package/dist/api/routes/index.js +2 -0
  365. package/dist/api/routes/row.js +2 -2
  366. package/dist/index.js +2 -2
  367. package/dist/integrations/base/query.js +7 -2
  368. package/dist/integrations/base/sqlTable.js +14 -14
  369. package/dist/integrations/dynamodb.js +8 -5
  370. package/dist/integrations/mysql.js +2 -2
  371. package/dist/integrations/queries/sql.js +73 -100
  372. package/dist/integrations/rest.js +14 -14
  373. package/dist/package.json +6 -6
  374. package/dist/sdk/app/datasources/datasources.js +113 -0
  375. package/dist/sdk/app/datasources/index.js +27 -0
  376. package/dist/sdk/app/queries/index.js +27 -0
  377. package/dist/sdk/app/queries/queries.js +60 -0
  378. package/dist/sdk/app/tables/index.js +6 -2
  379. package/dist/sdk/index.js +4 -0
  380. package/dist/sdk/utils/index.js +29 -0
  381. package/dist/threads/automation.js +9 -2
  382. package/dist/threads/query.js +27 -13
  383. package/dist/tsconfig.build.tsbuildinfo +1 -1
  384. package/dist/utilities/fileSystem/filesystem.js +36 -34
  385. package/dist/utilities/fileSystem/plugin.js +17 -14
  386. package/dist/utilities/fileSystem/template.js +7 -4
  387. package/package.json +7 -7
  388. package/scripts/dev/manage.js +1 -0
  389. package/src/api/controllers/application.ts +81 -74
  390. package/src/api/controllers/datasource.ts +33 -25
  391. package/src/api/controllers/query/index.ts +47 -39
  392. package/src/api/controllers/row/ExternalRequest.ts +2 -2
  393. package/src/api/controllers/row/external.ts +3 -4
  394. package/src/api/controllers/row/utils.ts +2 -2
  395. package/src/api/controllers/static/index.ts +17 -18
  396. package/src/api/controllers/table/external.ts +8 -6
  397. package/src/api/controllers/webhook.ts +48 -46
  398. package/src/api/routes/index.ts +2 -0
  399. package/src/api/routes/row.ts +1 -1
  400. package/src/api/routes/tests/datasource.spec.ts +35 -1
  401. package/src/definitions/automations.ts +1 -0
  402. package/src/index.ts +1 -1
  403. package/src/integrations/base/query.ts +3 -1
  404. package/src/integrations/base/sqlTable.ts +1 -1
  405. package/src/integrations/dynamodb.ts +3 -3
  406. package/src/integrations/mysql.ts +1 -1
  407. package/src/integrations/queries/sql.ts +5 -50
  408. package/src/integrations/rest.ts +8 -8
  409. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
  410. package/src/sdk/app/datasources/datasources.ts +98 -0
  411. package/src/sdk/app/datasources/index.ts +5 -0
  412. package/src/sdk/app/queries/index.ts +5 -0
  413. package/src/sdk/app/queries/queries.ts +50 -0
  414. package/src/sdk/app/tables/index.ts +6 -3
  415. package/src/sdk/index.ts +4 -0
  416. package/src/sdk/utils/index.ts +16 -0
  417. package/src/tests/utilities/TestConfiguration.ts +15 -12
  418. package/src/threads/automation.ts +9 -3
  419. package/src/threads/definitions.ts +3 -0
  420. package/src/threads/query.ts +28 -15
  421. package/src/utilities/fileSystem/filesystem.ts +6 -4
  422. package/src/utilities/fileSystem/plugin.ts +3 -4
  423. package/src/utilities/fileSystem/template.ts +2 -2
@@ -0,0 +1,379 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/sdk/app/datasources/datasources.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/sdk/app/datasources</a> datasources.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">92.45% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>49/53</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">75% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>9/12</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">92.85% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>13/14</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">94.23% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>49/52</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">59x</span>
165
+ <span class="cline-any cline-yes">59x</span>
166
+ <span class="cline-any cline-neutral">&nbsp;</span>
167
+ <span class="cline-any cline-neutral">&nbsp;</span>
168
+ <span class="cline-any cline-neutral">&nbsp;</span>
169
+ <span class="cline-any cline-neutral">&nbsp;</span>
170
+ <span class="cline-any cline-neutral">&nbsp;</span>
171
+ <span class="cline-any cline-yes">59x</span>
172
+ <span class="cline-any cline-yes">59x</span>
173
+ <span class="cline-any cline-yes">59x</span>
174
+ <span class="cline-any cline-yes">59x</span>
175
+ <span class="cline-any cline-neutral">&nbsp;</span>
176
+ <span class="cline-any cline-yes">59x</span>
177
+ <span class="cline-any cline-yes">59x</span>
178
+ <span class="cline-any cline-neutral">&nbsp;</span>
179
+ <span class="cline-any cline-neutral">&nbsp;</span>
180
+ <span class="cline-any cline-yes">25x</span>
181
+ <span class="cline-any cline-yes">25x</span>
182
+ <span class="cline-any cline-yes">25x</span>
183
+ <span class="cline-any cline-yes">25x</span>
184
+ <span class="cline-any cline-neutral">&nbsp;</span>
185
+ <span class="cline-any cline-neutral">&nbsp;</span>
186
+ <span class="cline-any cline-neutral">&nbsp;</span>
187
+ <span class="cline-any cline-neutral">&nbsp;</span>
188
+ <span class="cline-any cline-neutral">&nbsp;</span>
189
+ <span class="cline-any cline-yes">59x</span>
190
+ <span class="cline-any cline-yes">1x</span>
191
+ <span class="cline-any cline-yes">1x</span>
192
+ <span class="cline-any cline-neutral">&nbsp;</span>
193
+ <span class="cline-any cline-neutral">&nbsp;</span>
194
+ <span class="cline-any cline-yes">59x</span>
195
+ <span class="cline-any cline-neutral">&nbsp;</span>
196
+ <span class="cline-any cline-neutral">&nbsp;</span>
197
+ <span class="cline-any cline-neutral">&nbsp;</span>
198
+ <span class="cline-any cline-yes">63x</span>
199
+ <span class="cline-any cline-yes">63x</span>
200
+ <span class="cline-any cline-yes">62x</span>
201
+ <span class="cline-any cline-yes">8x</span>
202
+ <span class="cline-any cline-neutral">&nbsp;</span>
203
+ <span class="cline-any cline-yes">54x</span>
204
+ <span class="cline-any cline-neutral">&nbsp;</span>
205
+ <span class="cline-any cline-neutral">&nbsp;</span>
206
+ <span class="cline-any cline-neutral">&nbsp;</span>
207
+ <span class="cline-any cline-yes">59x</span>
208
+ <span class="cline-any cline-yes">16x</span>
209
+ <span class="cline-any cline-yes">16x</span>
210
+ <span class="cline-any cline-yes">16x</span>
211
+ <span class="cline-any cline-neutral">&nbsp;</span>
212
+ <span class="cline-any cline-neutral">&nbsp;</span>
213
+ <span class="cline-any cline-yes">59x</span>
214
+ <span class="cline-any cline-yes">80x</span>
215
+ <span class="cline-any cline-yes">80x</span>
216
+ <span class="cline-any cline-yes">81x</span>
217
+ <span class="cline-any cline-yes">81x</span>
218
+ <span class="cline-any cline-neutral">&nbsp;</span>
219
+ <span class="cline-any cline-yes">81x</span>
220
+ <span class="cline-any cline-no">&nbsp;</span>
221
+ <span class="cline-any cline-neutral">&nbsp;</span>
222
+ <span class="cline-any cline-neutral">&nbsp;</span>
223
+ <span class="cline-any cline-yes">81x</span>
224
+ <span class="cline-any cline-yes">10x</span>
225
+ <span class="cline-any cline-yes">7x</span>
226
+ <span class="cline-any cline-neutral">&nbsp;</span>
227
+ <span class="cline-any cline-yes">3x</span>
228
+ <span class="cline-any cline-neutral">&nbsp;</span>
229
+ <span class="cline-any cline-yes">3x</span>
230
+ <span class="cline-any cline-yes">3x</span>
231
+ <span class="cline-any cline-neutral">&nbsp;</span>
232
+ <span class="cline-any cline-neutral">&nbsp;</span>
233
+ <span class="cline-any cline-neutral">&nbsp;</span>
234
+ <span class="cline-any cline-yes">3x</span>
235
+ <span class="cline-any cline-neutral">&nbsp;</span>
236
+ <span class="cline-any cline-neutral">&nbsp;</span>
237
+ <span class="cline-any cline-neutral">&nbsp;</span>
238
+ <span class="cline-any cline-neutral">&nbsp;</span>
239
+ <span class="cline-any cline-yes">80x</span>
240
+ <span class="cline-any cline-neutral">&nbsp;</span>
241
+ <span class="cline-any cline-neutral">&nbsp;</span>
242
+ <span class="cline-any cline-yes">59x</span>
243
+ <span class="cline-any cline-yes">78x</span>
244
+ <span class="cline-any cline-neutral">&nbsp;</span>
245
+ <span class="cline-any cline-neutral">&nbsp;</span>
246
+ <span class="cline-any cline-yes">59x</span>
247
+ <span class="cline-any cline-yes">7x</span>
248
+ <span class="cline-any cline-no">&nbsp;</span>
249
+ <span class="cline-any cline-neutral">&nbsp;</span>
250
+ <span class="cline-any cline-yes">7x</span>
251
+ <span class="cline-any cline-yes">6x</span>
252
+ <span class="cline-any cline-yes">5x</span>
253
+ <span class="cline-any cline-neutral">&nbsp;</span>
254
+ <span class="cline-any cline-yes">1x</span>
255
+ <span class="cline-any cline-yes">1x</span>
256
+ <span class="cline-any cline-neutral">&nbsp;</span>
257
+ <span class="cline-any cline-no">&nbsp;</span>
258
+ <span class="cline-any cline-neutral">&nbsp;</span>
259
+ <span class="cline-any cline-neutral">&nbsp;</span>
260
+ <span class="cline-any cline-yes">7x</span>
261
+ <span class="cline-any cline-neutral">&nbsp;</span>
262
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { context } from "@budibase/backend-core"
263
+ import { processObjectSync, findHBSBlocks } from "@budibase/string-templates"
264
+ import {
265
+ Datasource,
266
+ DatasourceFieldType,
267
+ Integration,
268
+ PASSWORD_REPLACEMENT,
269
+ } from "@budibase/types"
270
+ import { cloneDeep } from "lodash/fp"
271
+ import { getEnvironmentVariables } from "../../utils"
272
+ import { getDefinitions } from "../../../integrations"
273
+ &nbsp;
274
+ const ENV_VAR_PREFIX = "env."
275
+ const USER_PREFIX = "user"
276
+ &nbsp;
277
+ async function enrichDatasourceWithValues(datasource: Datasource) {
278
+ const cloned = cloneDeep(datasource)
279
+ const env = await getEnvironmentVariables()
280
+ const processed = processObjectSync(cloned, { env }, { onlyFound: true })
281
+ return {
282
+ datasource: processed as Datasource,
283
+ envVars: env as Record&lt;string, string&gt;,
284
+ }
285
+ }
286
+ &nbsp;
287
+ export async function enrich(datasource: Datasource) {
288
+ const { datasource: response } = await enrichDatasourceWithValues(datasource)
289
+ return response
290
+ }
291
+ &nbsp;
292
+ export async function get(
293
+ datasourceId: string,
294
+ opts?: { enriched: boolean }
295
+ ): Promise&lt;Datasource&gt; {
296
+ const appDb = context.getAppDB()
297
+ const datasource = await appDb.get(datasourceId)
298
+ if (opts?.enriched) {
299
+ return (await enrichDatasourceWithValues(datasource)).datasource
300
+ } else {
301
+ return datasource
302
+ }
303
+ }
304
+ &nbsp;
305
+ export async function getWithEnvVars(datasourceId: string) {
306
+ const appDb = context.getAppDB()
307
+ const datasource = await appDb.get(datasourceId)
308
+ return enrichDatasourceWithValues(datasource)
309
+ }
310
+ &nbsp;
311
+ export async function removeSecrets(datasources: Datasource[]) {
312
+ const definitions = await getDefinitions()
313
+ for (let datasource of datasources) {
314
+ const schema = definitions[datasource.source]
315
+ if (datasource.config) {
316
+ // strip secrets from response, so they don't show in the network request
317
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (datasource.config.auth) {
318
+ <span class="cstat-no" title="statement not covered" > delete datasource.config.auth</span>
319
+ }
320
+ // remove passwords
321
+ for (let key of Object.keys(datasource.config)) {
322
+ if (typeof datasource.config[key] !== "string") {
323
+ continue
324
+ }
325
+ const blocks = findHBSBlocks(datasource.config[key] as string)
326
+ const usesEnvVars =
327
+ blocks.find(<span class="fstat-no" title="function not covered" >block =&gt; <span class="cstat-no" title="statement not covered" >b</span>lock.includes(ENV_VAR_PREFIX)) != n</span>ull
328
+ if (
329
+ !usesEnvVars &amp;&amp;
330
+ schema.datasource?.[key]?.type === DatasourceFieldType.PASSWORD
331
+ ) {
332
+ datasource.config[key] = PASSWORD_REPLACEMENT
333
+ }
334
+ }
335
+ }
336
+ }
337
+ return datasources
338
+ }
339
+ &nbsp;
340
+ export async function removeSecretSingle(datasource: Datasource) {
341
+ return (await removeSecrets([datasource]))[0]
342
+ }
343
+ &nbsp;
344
+ export function mergeConfigs(update: Datasource, old: Datasource) {
345
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!update.config) {
346
+ <span class="cstat-no" title="statement not covered" > return update</span>
347
+ }
348
+ for (let [key, value] of Object.entries(update.config)) {
349
+ if (value !== PASSWORD_REPLACEMENT) {
350
+ continue
351
+ }
352
+ if (old.config?.[key]) {
353
+ update.config[key] = old.config?.[key]
354
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>{
355
+ <span class="cstat-no" title="statement not covered" > delete update.config[key]</span>
356
+ }
357
+ }
358
+ return update
359
+ }
360
+ &nbsp;</pre></td></tr></table></pre>
361
+
362
+ <div class='push'></div><!-- for sticky footer -->
363
+ </div><!-- /wrapper -->
364
+ <div class='footer quiet pad2 space-top1 center small'>
365
+ Code coverage generated by
366
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
367
+ at Tue Jan 31 2023 08:34:07 GMT+0000 (Coordinated Universal Time)
368
+ </div>
369
+ <script src="../../../../prettify.js"></script>
370
+ <script>
371
+ window.onload = function () {
372
+ prettyPrint();
373
+ };
374
+ </script>
375
+ <script src="../../../../sorter.js"></script>
376
+ <script src="../../../../block-navigation.js"></script>
377
+ </body>
378
+ </html>
379
+
@@ -0,0 +1,131 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/sdk/app/datasources</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../../index.html">All files</a> src/sdk/app/datasources</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">92.85% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>52/56</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">75% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>9/12</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">93.33% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>14/15</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">94.44% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>51/54</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <div class="pad1">
66
+ <table class="coverage-summary">
67
+ <thead>
68
+ <tr>
69
+ <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
70
+ <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
71
+ <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
72
+ <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
73
+ <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
74
+ <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
75
+ <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
76
+ <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
77
+ <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
78
+ <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
79
+ </tr>
80
+ </thead>
81
+ <tbody><tr>
82
+ <td class="file high" data-value="datasources.ts"><a href="datasources.ts.html">datasources.ts</a></td>
83
+ <td data-value="92.45" class="pic high">
84
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
85
+ </td>
86
+ <td data-value="92.45" class="pct high">92.45%</td>
87
+ <td data-value="53" class="abs high">49/53</td>
88
+ <td data-value="75" class="pct medium">75%</td>
89
+ <td data-value="12" class="abs medium">9/12</td>
90
+ <td data-value="92.85" class="pct high">92.85%</td>
91
+ <td data-value="14" class="abs high">13/14</td>
92
+ <td data-value="94.23" class="pct high">94.23%</td>
93
+ <td data-value="52" class="abs high">49/52</td>
94
+ </tr>
95
+
96
+ <tr>
97
+ <td class="file high" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
98
+ <td data-value="100" class="pic high">
99
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
100
+ </td>
101
+ <td data-value="100" class="pct high">100%</td>
102
+ <td data-value="3" class="abs high">3/3</td>
103
+ <td data-value="100" class="pct high">100%</td>
104
+ <td data-value="0" class="abs high">0/0</td>
105
+ <td data-value="100" class="pct high">100%</td>
106
+ <td data-value="1" class="abs high">1/1</td>
107
+ <td data-value="100" class="pct high">100%</td>
108
+ <td data-value="2" class="abs high">2/2</td>
109
+ </tr>
110
+
111
+ </tbody>
112
+ </table>
113
+ </div>
114
+ <div class='push'></div><!-- for sticky footer -->
115
+ </div><!-- /wrapper -->
116
+ <div class='footer quiet pad2 space-top1 center small'>
117
+ Code coverage generated by
118
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
+ at Tue Jan 31 2023 08:34:07 GMT+0000 (Coordinated Universal Time)
120
+ </div>
121
+ <script src="../../../../prettify.js"></script>
122
+ <script>
123
+ window.onload = function () {
124
+ prettyPrint();
125
+ };
126
+ </script>
127
+ <script src="../../../../sorter.js"></script>
128
+ <script src="../../../../block-navigation.js"></script>
129
+ </body>
130
+ </html>
131
+
@@ -0,0 +1,100 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/sdk/app/datasources/index.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/sdk/app/datasources</a> index.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>3/3</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/0</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>1/1</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>2/2</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">59x</span>
72
+ <span class="cline-any cline-neutral">&nbsp;</span>
73
+ <span class="cline-any cline-yes">59x</span>
74
+ <span class="cline-any cline-neutral">&nbsp;</span>
75
+ <span class="cline-any cline-neutral">&nbsp;</span>
76
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import * as datasources from "./datasources"
77
+ &nbsp;
78
+ export default {
79
+ ...datasources,
80
+ }
81
+ &nbsp;</pre></td></tr></table></pre>
82
+
83
+ <div class='push'></div><!-- for sticky footer -->
84
+ </div><!-- /wrapper -->
85
+ <div class='footer quiet pad2 space-top1 center small'>
86
+ Code coverage generated by
87
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
88
+ at Tue Jan 31 2023 08:34:07 GMT+0000 (Coordinated Universal Time)
89
+ </div>
90
+ <script src="../../../../prettify.js"></script>
91
+ <script>
92
+ window.onload = function () {
93
+ prettyPrint();
94
+ };
95
+ </script>
96
+ <script src="../../../../sorter.js"></script>
97
+ <script src="../../../../block-navigation.js"></script>
98
+ </body>
99
+ </html>
100
+