@budibase/server 2.3.2-alpha.3 → 2.3.3

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 (543) hide show
  1. package/__mocks__/aws-sdk.ts +1 -1
  2. package/builder/assets/{index.584d49b4.css → index.4488f38d.css} +1 -1
  3. package/builder/assets/{index.bef36368.js → index.ef71e5c7.js} +199 -199
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +6527 -11196
  6. package/coverage/coverage-final.json +269 -353
  7. package/coverage/lcov-report/index.html +180 -405
  8. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  9. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  10. package/coverage/lcov-report/src/api/controllers/application.ts.html +140 -140
  11. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  12. package/coverage/lcov-report/src/api/controllers/automation.ts.html +47 -47
  13. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  14. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +26 -26
  15. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  16. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +37 -37
  17. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  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 +81 -81
  20. package/coverage/lcov-report/src/api/controllers/dev.ts.html +26 -26
  21. package/coverage/lcov-report/src/api/controllers/index.html +37 -37
  22. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  23. package/coverage/lcov-report/src/api/controllers/layout.ts.html +15 -15
  24. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  25. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  26. package/coverage/lcov-report/src/api/controllers/permission.ts.html +34 -34
  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 +18 -18
  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 +6 -6
  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 +2 -2
  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 +7 -7
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  44. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  45. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  46. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  47. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  48. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  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 +7 -7
  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 +3 -3
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  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 +9 -9
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  58. package/coverage/lcov-report/src/api/controllers/query/index.html +1 -1
  59. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +33 -33
  60. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  61. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  62. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  63. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +419 -431
  64. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +175 -211
  65. package/coverage/lcov-report/src/api/controllers/row/index.html +42 -42
  66. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +78 -78
  67. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +34 -34
  68. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +6 -6
  69. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  70. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +31 -31
  71. package/coverage/lcov-report/src/api/controllers/screen.ts.html +26 -26
  72. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  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 +22 -22
  75. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +51 -51
  76. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +195 -198
  77. package/coverage/lcov-report/src/api/controllers/table/index.html +47 -47
  78. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +42 -42
  79. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +61 -61
  80. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +63 -63
  81. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  82. package/coverage/lcov-report/src/api/controllers/user.ts.html +28 -28
  83. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +2 -2
  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 +16 -16
  86. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  87. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +7 -7
  88. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +25 -25
  89. package/coverage/lcov-report/src/api/index.html +1 -1
  90. package/coverage/lcov-report/src/api/index.ts.html +27 -27
  91. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  92. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  93. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  94. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  95. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  96. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  97. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  98. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  99. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  100. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  101. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  102. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  103. package/coverage/lcov-report/src/api/routes/index.ts.html +35 -35
  104. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  105. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  106. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  107. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  108. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  109. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  110. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +17 -14
  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 +52 -52
  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 +4 -4
  115. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  116. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  117. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  118. package/coverage/lcov-report/src/api/routes/public/tests/index.html +12 -42
  119. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +27 -78
  120. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  121. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  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 +11 -11
  124. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  125. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  126. package/coverage/lcov-report/src/api/routes/row.ts.html +11 -11
  127. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  128. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  130. package/coverage/lcov-report/src/api/routes/table.ts.html +11 -11
  131. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +41 -110
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +19 -19
  134. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +17 -23
  135. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  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 +42 -42
  138. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  139. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  140. package/coverage/lcov-report/src/app.ts.html +35 -38
  141. package/coverage/lcov-report/src/automations/actions.ts.html +24 -24
  142. package/coverage/lcov-report/src/automations/automationUtils.ts.html +4 -4
  143. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  144. package/coverage/lcov-report/src/automations/index.html +27 -27
  145. package/coverage/lcov-report/src/automations/index.ts.html +9 -9
  146. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  147. package/coverage/lcov-report/src/automations/logging/index.ts.html +10 -10
  148. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  149. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  150. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  151. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  152. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  153. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  154. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  155. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  156. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  158. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  159. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  160. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +13 -13
  161. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  162. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +4 -4
  163. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  164. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  165. package/coverage/lcov-report/src/automations/steps/utils.ts.html +1 -1
  166. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  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 +3 -3
  170. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  171. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  174. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  175. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  176. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  177. package/coverage/lcov-report/src/automations/triggers.ts.html +46 -46
  178. package/coverage/lcov-report/src/automations/utils.ts.html +63 -63
  179. package/coverage/lcov-report/src/constants/index.html +16 -16
  180. package/coverage/lcov-report/src/constants/index.ts.html +99 -33
  181. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  182. package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
  183. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -33
  184. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  185. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  186. package/coverage/lcov-report/src/db/defaultData/index.html +11 -11
  187. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  188. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  189. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  190. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  191. package/coverage/lcov-report/src/db/index.html +16 -16
  192. package/coverage/lcov-report/src/db/index.ts.html +19 -19
  193. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +23 -26
  194. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  195. package/coverage/lcov-report/src/db/linkedRows/index.html +10 -10
  196. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +23 -23
  197. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +10 -10
  198. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  199. package/coverage/lcov-report/src/db/utils.ts.html +52 -52
  200. package/coverage/lcov-report/src/definitions/automations.ts.html +2 -2
  201. package/coverage/lcov-report/src/definitions/index.html +1 -1
  202. package/coverage/lcov-report/src/environment.ts.html +32 -32
  203. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +6 -6
  204. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +6 -6
  205. package/coverage/lcov-report/src/events/index.html +1 -1
  206. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  207. package/coverage/lcov-report/src/events/utils.ts.html +10 -10
  208. package/coverage/lcov-report/src/index.html +16 -16
  209. package/coverage/lcov-report/src/index.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  211. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  212. package/coverage/lcov-report/src/integrations/base/index.html +30 -30
  213. package/coverage/lcov-report/src/integrations/base/query.ts.html +9 -9
  214. package/coverage/lcov-report/src/integrations/base/sql.ts.html +187 -217
  215. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +107 -107
  216. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/couchdb.ts.html +5 -5
  218. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +6 -6
  219. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +5 -5
  220. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  221. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  222. package/coverage/lcov-report/src/integrations/index.html +27 -27
  223. package/coverage/lcov-report/src/integrations/index.ts.html +37 -37
  224. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  225. package/coverage/lcov-report/src/integrations/mongodb.ts.html +11 -11
  226. package/coverage/lcov-report/src/integrations/mysql.ts.html +10 -10
  227. package/coverage/lcov-report/src/integrations/oracle.ts.html +14 -14
  228. package/coverage/lcov-report/src/integrations/postgres.ts.html +65 -65
  229. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  230. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  232. package/coverage/lcov-report/src/integrations/rest.ts.html +15 -15
  233. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  234. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  235. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  236. package/coverage/lcov-report/src/integrations/tests/index.html +5 -230
  237. package/coverage/lcov-report/src/integrations/utils.ts.html +74 -74
  238. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  239. package/coverage/lcov-report/src/middleware/authorized.ts.html +29 -29
  240. package/coverage/lcov-report/src/middleware/builder.ts.html +17 -17
  241. package/coverage/lcov-report/src/middleware/currentapp.ts.html +53 -53
  242. package/coverage/lcov-report/src/middleware/index.html +15 -15
  243. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  245. package/coverage/lcov-report/src/middleware/resourceId.ts.html +28 -28
  246. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  247. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  248. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  263. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  265. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  266. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  268. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  274. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  275. package/coverage/lcov-report/src/migrations/index.html +1 -1
  276. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  277. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/index.html +8 -23
  279. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  282. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  283. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  284. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  286. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +10 -10
  287. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  288. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +23 -41
  289. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  290. package/coverage/lcov-report/src/sdk/app/backups/index.html +10 -10
  291. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  292. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  293. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +39 -39
  294. package/coverage/lcov-report/src/sdk/app/datasources/index.html +1 -1
  295. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +3 -3
  296. package/coverage/lcov-report/src/sdk/app/queries/index.html +1 -1
  297. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +3 -3
  298. package/coverage/lcov-report/src/sdk/app/queries/queries.ts.html +4 -4
  299. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  300. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  301. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  302. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  303. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  304. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +10 -10
  305. package/coverage/lcov-report/src/sdk/index.html +1 -1
  306. package/coverage/lcov-report/src/sdk/index.ts.html +11 -11
  307. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  308. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  309. package/coverage/lcov-report/src/sdk/users/utils.ts.html +31 -31
  310. package/coverage/lcov-report/src/sdk/utils/index.html +1 -1
  311. package/coverage/lcov-report/src/sdk/utils/index.ts.html +11 -11
  312. package/coverage/lcov-report/src/startup.ts.html +42 -42
  313. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +189 -387
  314. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  315. package/coverage/lcov-report/src/tests/utilities/index.html +18 -18
  316. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  317. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +27 -33
  318. package/coverage/lcov-report/src/threads/automation.ts.html +22 -22
  319. package/coverage/lcov-report/src/threads/index.html +1 -1
  320. package/coverage/lcov-report/src/threads/index.ts.html +10 -10
  321. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  322. package/coverage/lcov-report/src/threads/utils.ts.html +9 -9
  323. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +3 -3
  324. package/coverage/lcov-report/src/utilities/centralPath.ts.html +2 -2
  325. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +17 -17
  326. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +8 -8
  327. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +25 -25
  328. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  329. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +6 -6
  330. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +8 -8
  331. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  332. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +7 -7
  333. package/coverage/lcov-report/src/utilities/global.ts.html +40 -40
  334. package/coverage/lcov-report/src/utilities/index.html +19 -34
  335. package/coverage/lcov-report/src/utilities/index.ts.html +26 -26
  336. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  337. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  338. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  339. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +19 -19
  340. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +49 -49
  341. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  342. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +38 -38
  343. package/coverage/lcov-report/src/utilities/schema.ts.html +3 -3
  344. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  345. package/coverage/lcov-report/src/utilities/security.ts.html +22 -22
  346. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  347. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +35 -35
  348. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  349. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  350. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +15 -15
  351. package/coverage/lcov-report/src/watch.ts.html +7 -7
  352. package/coverage/lcov-report/src/websocket.ts.html +5 -5
  353. package/coverage/lcov.info +11292 -18907
  354. package/dist/api/controllers/row/ExternalRequest.js +2 -4
  355. package/dist/api/controllers/row/external.js +1 -12
  356. package/dist/api/controllers/table/external.js +8 -8
  357. package/dist/api/routes/public/tests/utils.js +2 -29
  358. package/dist/app.js +1 -1
  359. package/dist/constants/index.js +24 -4
  360. package/dist/db/defaultData/datasource_bb_default.js +5 -6
  361. package/dist/db/linkedRows/LinkController.js +8 -9
  362. package/dist/integrations/base/sql.js +3 -10
  363. package/dist/package.json +6 -8
  364. package/dist/sdk/app/backups/exports.js +2 -8
  365. package/dist/tsconfig.build.tsbuildinfo +1 -1
  366. package/jest.config.ts +11 -28
  367. package/package.json +7 -9
  368. package/specs/openapi.json +6 -6
  369. package/specs/openapi.yaml +3 -3
  370. package/src/api/controllers/query/import/tests/index.spec.js +1 -1
  371. package/src/api/controllers/row/ExternalRequest.ts +2 -6
  372. package/src/api/controllers/row/external.ts +1 -13
  373. package/src/api/controllers/table/external.ts +2 -3
  374. package/src/api/routes/public/applications.ts +1 -0
  375. package/src/api/routes/public/tests/compare.spec.js +1 -1
  376. package/src/api/routes/public/tests/users.spec.js +1 -1
  377. package/src/api/routes/public/tests/utils.ts +8 -25
  378. package/src/api/routes/tests/__snapshots__/datasource.spec.ts.snap +1 -1
  379. package/src/api/routes/tests/analytics.spec.js +1 -4
  380. package/src/api/routes/tests/apikeys.spec.js +1 -1
  381. package/src/api/routes/tests/application.spec.ts +6 -20
  382. package/src/api/routes/tests/auth.spec.js +2 -2
  383. package/src/api/routes/tests/automation.spec.js +2 -6
  384. package/src/api/routes/tests/backup.spec.ts +13 -4
  385. package/src/api/routes/tests/{cloud.seq.spec.ts → cloud.spec.ts} +15 -11
  386. package/src/api/routes/tests/component.spec.js +1 -1
  387. package/src/api/routes/tests/datasource.spec.ts +3 -20
  388. package/src/api/routes/tests/dev.spec.js +1 -1
  389. package/src/api/routes/tests/integration.spec.js +1 -1
  390. package/src/api/routes/tests/layout.spec.js +1 -1
  391. package/src/api/routes/tests/metadata.spec.js +1 -1
  392. package/src/api/routes/tests/misc.spec.js +1 -1
  393. package/src/api/routes/tests/permissions.spec.js +1 -4
  394. package/src/api/routes/tests/{query.seq.spec.js → query.spec.js} +1 -21
  395. package/src/api/routes/tests/role.spec.js +1 -6
  396. package/src/api/routes/tests/routing.spec.js +1 -1
  397. package/src/api/routes/tests/row.spec.js +3 -11
  398. package/src/api/routes/tests/screen.spec.js +1 -1
  399. package/src/api/routes/tests/static.spec.js +1 -2
  400. package/src/api/routes/tests/table.spec.js +1 -1
  401. package/src/api/routes/tests/templates.spec.js +1 -1
  402. package/src/api/routes/tests/user.spec.js +0 -3
  403. package/src/api/routes/tests/utilities/TestFunctions.ts +2 -25
  404. package/src/api/routes/tests/utilities/index.ts +3 -5
  405. package/src/api/routes/tests/view.spec.js +1 -4
  406. package/src/api/routes/tests/webhook.spec.js +2 -11
  407. package/src/app.ts +1 -2
  408. package/src/automations/tests/automation.spec.js +4 -4
  409. package/src/automations/tests/bash.spec.js +1 -1
  410. package/src/automations/tests/discord.spec.js +1 -1
  411. package/src/automations/tests/executeQuery.spec.js +3 -2
  412. package/src/automations/tests/executeScript.spec.js +1 -1
  413. package/src/automations/tests/outgoingWebhook.spec.js +1 -1
  414. package/src/automations/tests/sendSmtpEmail.spec.js +1 -1
  415. package/src/automations/tests/serverLog.spec.js +1 -1
  416. package/src/automations/tests/updateRow.spec.js +1 -1
  417. package/src/automations/tests/zapier.spec.js +1 -1
  418. package/src/constants/index.ts +23 -1
  419. package/src/db/defaultData/datasource_bb_default.ts +10 -6
  420. package/src/db/linkedRows/LinkController.ts +1 -2
  421. package/src/db/tests/linkController.spec.js +1 -4
  422. package/src/db/tests/linkTests.spec.js +1 -1
  423. package/src/integrations/base/sql.ts +5 -15
  424. package/src/integrations/oracle.ts +1 -1
  425. package/src/migrations/functions/tests/appUrls.spec.js +1 -1
  426. package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
  427. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
  428. package/src/migrations/tests/index.spec.ts +2 -3
  429. package/src/sdk/app/backups/exports.ts +2 -8
  430. package/src/tests/jestEnv.ts +6 -2
  431. package/src/tests/jestSetup.ts +6 -5
  432. package/src/tests/utilities/TestConfiguration.ts +46 -112
  433. package/src/tests/utilities/structures.ts +2 -4
  434. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +0 -391
  435. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +0 -116
  436. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +0 -116
  437. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +0 -796
  438. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +0 -116
  439. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +0 -805
  440. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +0 -116
  441. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +0 -568
  442. package/coverage/lcov-report/src/api/controllers/view/tests/index.html +0 -116
  443. package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +0 -277
  444. package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +0 -583
  445. package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +0 -199
  446. package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +0 -271
  447. package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +0 -259
  448. package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +0 -1066
  449. package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +0 -154
  450. package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +0 -1123
  451. package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +0 -223
  452. package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +0 -268
  453. package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +0 -178
  454. package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +0 -799
  455. package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +0 -202
  456. package/coverage/lcov-report/src/api/routes/tests/index.html +0 -521
  457. package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +0 -238
  458. package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +0 -670
  459. package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +0 -259
  460. package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +0 -280
  461. package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +0 -358
  462. package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +0 -484
  463. package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +0 -622
  464. package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +0 -1696
  465. package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +0 -478
  466. package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +0 -430
  467. package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +0 -1804
  468. package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +0 -391
  469. package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +0 -541
  470. package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +0 -991
  471. package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +0 -154
  472. package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +0 -688
  473. package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +0 -1342
  474. package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +0 -484
  475. package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +0 -337
  476. package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +0 -187
  477. package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +0 -223
  478. package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +0 -133
  479. package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +0 -250
  480. package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +0 -166
  481. package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +0 -229
  482. package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +0 -229
  483. package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +0 -232
  484. package/coverage/lcov-report/src/automations/tests/index.html +0 -341
  485. package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +0 -220
  486. package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +0 -202
  487. package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +0 -436
  488. package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +0 -298
  489. package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +0 -151
  490. package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +0 -217
  491. package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +0 -166
  492. package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +0 -280
  493. package/coverage/lcov-report/src/automations/unitTests/index.html +0 -116
  494. package/coverage/lcov-report/src/db/tests/index.html +0 -131
  495. package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +0 -793
  496. package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +0 -277
  497. package/coverage/lcov-report/src/integration-test/index.html +0 -116
  498. package/coverage/lcov-report/src/integration-test/postgres.spec.ts.html +0 -2341
  499. package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +0 -310
  500. package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +0 -199
  501. package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +0 -349
  502. package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +0 -550
  503. package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +0 -331
  504. package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +0 -376
  505. package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +0 -253
  506. package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +0 -1087
  507. package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +0 -484
  508. package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +0 -373
  509. package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +0 -328
  510. package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +0 -337
  511. package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +0 -1870
  512. package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +0 -421
  513. package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +0 -1753
  514. package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +0 -574
  515. package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +0 -814
  516. package/coverage/lcov-report/src/middleware/tests/index.html +0 -161
  517. package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +0 -397
  518. package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +0 -214
  519. package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +0 -163
  520. package/coverage/lcov-report/src/migrations/functions/tests/index.html +0 -161
  521. package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +0 -163
  522. package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +0 -517
  523. package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +0 -190
  524. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +0 -131
  525. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +0 -190
  526. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +0 -244
  527. package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +0 -535
  528. package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +0 -313
  529. package/coverage/lcov-report/src/sdk/tests/index.html +0 -116
  530. package/coverage/lcov-report/src/utilities/retry.ts.html +0 -139
  531. package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +0 -116
  532. package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +0 -256
  533. package/dist/api/routes/tests/utilities/index.js +0 -131
  534. package/dist/tests/utilities/TestConfiguration.js +0 -618
  535. package/dist/tests/utilities/controllers.js +0 -40
  536. package/dist/tests/utilities/structures.js +0 -226
  537. package/dist/utilities/retry.js +0 -30
  538. package/jest-testcontainers-config.js +0 -8
  539. package/scripts/load/create-many-apps.js +0 -24
  540. package/scripts/load/create-many-rows.js +0 -30
  541. package/scripts/load/utils.js +0 -66
  542. package/src/integration-test/postgres.spec.ts +0 -752
  543. package/src/utilities/retry.ts +0 -18
package/jest.config.ts CHANGED
@@ -1,13 +1,16 @@
1
1
  import { Config } from "@jest/types"
2
-
3
2
  import * as fs from "fs"
4
- const preset = require("ts-jest/jest-preset")
5
3
 
6
- const baseConfig: Config.InitialProjectOptions = {
7
- ...preset,
8
- preset: "@trendyol/jest-testcontainers",
4
+ const config: Config.InitialOptions = {
5
+ testEnvironment: "node",
9
6
  setupFiles: ["./src/tests/jestEnv.ts"],
10
7
  setupFilesAfterEnv: ["./src/tests/jestSetup.ts"],
8
+ collectCoverageFrom: [
9
+ "src/**/*.{js,ts}",
10
+ // The use of coverage with couchdb view functions breaks tests
11
+ "!src/db/views/staticViews.*",
12
+ ],
13
+ coverageReporters: ["lcov", "json", "clover"],
11
14
  transform: {
12
15
  "^.+\\.ts?$": "@swc/jest",
13
16
  },
@@ -15,39 +18,19 @@ const baseConfig: Config.InitialProjectOptions = {
15
18
 
16
19
  if (!process.env.CI) {
17
20
  // use sources when not in CI
18
- baseConfig.moduleNameMapper = {
21
+ config.moduleNameMapper = {
19
22
  "@budibase/backend-core/(.*)": "<rootDir>/../backend-core/$1",
20
23
  "@budibase/backend-core": "<rootDir>/../backend-core/src",
21
24
  "@budibase/types": "<rootDir>/../types/src",
25
+ "^axios.*$": "<rootDir>/node_modules/axios/lib/axios.js",
22
26
  }
23
27
  // add pro sources if they exist
24
28
  if (fs.existsSync("../../../budibase-pro")) {
25
- baseConfig.moduleNameMapper["@budibase/pro"] =
29
+ config.moduleNameMapper["@budibase/pro"] =
26
30
  "<rootDir>/../../../budibase-pro/packages/pro/src"
27
31
  }
28
32
  } else {
29
33
  console.log("Running tests with compiled dependency sources")
30
34
  }
31
35
 
32
- const config: Config.InitialOptions = {
33
- projects: [
34
- {
35
- ...baseConfig,
36
- displayName: "sequential test",
37
- testMatch: ["<rootDir>/**/*.seq.spec.[jt]s"],
38
- runner: "jest-serial-runner",
39
- },
40
- {
41
- ...baseConfig,
42
- testMatch: ["<rootDir>/**/!(*.seq).spec.[jt]s"],
43
- },
44
- ],
45
- collectCoverageFrom: [
46
- "src/**/*.{js,ts}",
47
- // The use of coverage with couchdb view functions breaks tests
48
- "!src/db/views/staticViews.*",
49
- ],
50
- coverageReporters: ["lcov", "json", "clover"],
51
- }
52
-
53
36
  export default config
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/server",
3
3
  "email": "hi@budibase.com",
4
- "version": "2.3.2-alpha.3",
4
+ "version": "2.3.3",
5
5
  "description": "Budibase Web Server",
6
6
  "main": "src/index.ts",
7
7
  "repository": {
@@ -43,11 +43,11 @@
43
43
  "license": "GPL-3.0",
44
44
  "dependencies": {
45
45
  "@apidevtools/swagger-parser": "10.0.3",
46
- "@budibase/backend-core": "2.3.2-alpha.3",
47
- "@budibase/client": "2.3.2-alpha.3",
48
- "@budibase/pro": "2.3.2-alpha.2",
49
- "@budibase/string-templates": "2.3.2-alpha.3",
50
- "@budibase/types": "2.3.2-alpha.3",
46
+ "@budibase/backend-core": "^2.3.3",
47
+ "@budibase/client": "^2.3.3",
48
+ "@budibase/pro": "2.3.2",
49
+ "@budibase/string-templates": "^2.3.3",
50
+ "@budibase/types": "^2.3.3",
51
51
  "@bull-board/api": "3.7.0",
52
52
  "@bull-board/koa": "3.9.4",
53
53
  "@elastic/elasticsearch": "7.10.0",
@@ -125,7 +125,6 @@
125
125
  "@jest/test-sequencer": "24.9.0",
126
126
  "@swc/core": "^1.3.25",
127
127
  "@swc/jest": "^0.2.24",
128
- "@trendyol/jest-testcontainers": "^2.1.1",
129
128
  "@types/apidoc": "0.50.0",
130
129
  "@types/bson": "4.2.0",
131
130
  "@types/global-agent": "2.1.1",
@@ -152,7 +151,6 @@
152
151
  "is-wsl": "2.2.0",
153
152
  "jest": "28.1.1",
154
153
  "jest-openapi": "0.14.2",
155
- "jest-serial-runner": "^1.2.1",
156
154
  "nodemon": "2.0.15",
157
155
  "openapi-types": "9.3.1",
158
156
  "openapi-typescript": "5.2.0",
@@ -171,5 +169,5 @@
171
169
  "optionalDependencies": {
172
170
  "oracledb": "5.3.0"
173
171
  },
174
- "gitHead": "eb1989dc207d5c5e1898d2c77e2e3f9f63e754fa"
172
+ "gitHead": "f4b7ca6d7f22545138d9418213b5d40e19219472"
175
173
  }
@@ -817,6 +817,7 @@
817
817
  "type": "string",
818
818
  "enum": [
819
819
  "string",
820
+ "barcodeqr",
820
821
  "longform",
821
822
  "options",
822
823
  "number",
@@ -828,8 +829,7 @@
828
829
  "formula",
829
830
  "auto",
830
831
  "json",
831
- "internal",
832
- "barcodeqr"
832
+ "internal"
833
833
  ],
834
834
  "description": "Defines the type of the column, most explain themselves, a link column is a relationship."
835
835
  },
@@ -1021,6 +1021,7 @@
1021
1021
  "type": "string",
1022
1022
  "enum": [
1023
1023
  "string",
1024
+ "barcodeqr",
1024
1025
  "longform",
1025
1026
  "options",
1026
1027
  "number",
@@ -1032,8 +1033,7 @@
1032
1033
  "formula",
1033
1034
  "auto",
1034
1035
  "json",
1035
- "internal",
1036
- "barcodeqr"
1036
+ "internal"
1037
1037
  ],
1038
1038
  "description": "Defines the type of the column, most explain themselves, a link column is a relationship."
1039
1039
  },
@@ -1236,6 +1236,7 @@
1236
1236
  "type": "string",
1237
1237
  "enum": [
1238
1238
  "string",
1239
+ "barcodeqr",
1239
1240
  "longform",
1240
1241
  "options",
1241
1242
  "number",
@@ -1247,8 +1248,7 @@
1247
1248
  "formula",
1248
1249
  "auto",
1249
1250
  "json",
1250
- "internal",
1251
- "barcodeqr"
1251
+ "internal"
1252
1252
  ],
1253
1253
  "description": "Defines the type of the column, most explain themselves, a link column is a relationship."
1254
1254
  },
@@ -603,6 +603,7 @@ components:
603
603
  type: string
604
604
  enum:
605
605
  - string
606
+ - barcodeqr
606
607
  - longform
607
608
  - options
608
609
  - number
@@ -615,7 +616,6 @@ components:
615
616
  - auto
616
617
  - json
617
618
  - internal
618
- - barcodeqr
619
619
  description: Defines the type of the column, most explain themselves, a link
620
620
  column is a relationship.
621
621
  constraints:
@@ -766,6 +766,7 @@ components:
766
766
  type: string
767
767
  enum:
768
768
  - string
769
+ - barcodeqr
769
770
  - longform
770
771
  - options
771
772
  - number
@@ -778,7 +779,6 @@ components:
778
779
  - auto
779
780
  - json
780
781
  - internal
781
- - barcodeqr
782
782
  description: Defines the type of the column, most explain themselves, a link
783
783
  column is a relationship.
784
784
  constraints:
@@ -936,6 +936,7 @@ components:
936
936
  type: string
937
937
  enum:
938
938
  - string
939
+ - barcodeqr
939
940
  - longform
940
941
  - options
941
942
  - number
@@ -948,7 +949,6 @@ components:
948
949
  - auto
949
950
  - json
950
951
  - internal
951
- - barcodeqr
952
952
  description: Defines the type of the column, most explain themselves, a link
953
953
  column is a relationship.
954
954
  constraints:
@@ -41,7 +41,7 @@ const datasets = {
41
41
  describe("Rest Importer", () => {
42
42
  const config = new TestConfig(false)
43
43
 
44
- beforeAll(async () => {
44
+ beforeEach(async () => {
45
45
  await config.init()
46
46
  })
47
47
 
@@ -10,7 +10,6 @@ import {
10
10
  FieldSchema,
11
11
  Row,
12
12
  Table,
13
- RelationshipTypes,
14
13
  } from "@budibase/types"
15
14
  import {
16
15
  breakRowIdField,
@@ -19,7 +18,7 @@ import {
19
18
  convertRowId,
20
19
  } from "../../../integrations/utils"
21
20
  import { getDatasourceAndQuery } from "./utils"
22
- import { FieldTypes } from "../../../constants"
21
+ import { FieldTypes, RelationshipTypes } from "../../../constants"
23
22
  import { breakExternalTableId, isSQL } from "../../../integrations/utils"
24
23
  import { processObjectSync } from "@budibase/string-templates"
25
24
  import { cloneDeep } from "lodash/fp"
@@ -45,7 +44,6 @@ export interface RunConfig {
45
44
  row?: Row
46
45
  rows?: Row[]
47
46
  tables?: Record<string, Table>
48
- includeSqlRelationships?: IncludeRelationship
49
47
  }
50
48
 
51
49
  function buildFilters(
@@ -708,9 +706,7 @@ export class ExternalRequest {
708
706
  },
709
707
  resource: {
710
708
  // have to specify the fields to avoid column overlap (for SQL)
711
- fields: isSql
712
- ? this.buildFields(table, config.includeSqlRelationships)
713
- : [],
709
+ fields: isSql ? this.buildFields(table) : [],
714
710
  },
715
711
  filters,
716
712
  sort,
@@ -18,7 +18,6 @@ import {
18
18
  PaginationJson,
19
19
  Table,
20
20
  Datasource,
21
- IncludeRelationship,
22
21
  } from "@budibase/types"
23
22
  import sdk from "../../../sdk"
24
23
 
@@ -58,7 +57,6 @@ export async function patch(ctx: BBContext) {
58
57
  return handleRequest(Operation.UPDATE, tableId, {
59
58
  id: breakRowIdField(id),
60
59
  row: inputs,
61
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
62
60
  })
63
61
  }
64
62
 
@@ -67,7 +65,6 @@ export async function save(ctx: BBContext) {
67
65
  const tableId = ctx.params.tableId
68
66
  return handleRequest(Operation.CREATE, tableId, {
69
67
  row: inputs,
70
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
71
68
  })
72
69
  }
73
70
 
@@ -81,9 +78,7 @@ export async function fetchView(ctx: BBContext) {
81
78
 
82
79
  export async function fetch(ctx: BBContext) {
83
80
  const tableId = ctx.params.tableId
84
- return handleRequest(Operation.READ, tableId, {
85
- includeSqlRelationships: IncludeRelationship.INCLUDE,
86
- })
81
+ return handleRequest(Operation.READ, tableId)
87
82
  }
88
83
 
89
84
  export async function find(ctx: BBContext) {
@@ -91,7 +86,6 @@ export async function find(ctx: BBContext) {
91
86
  const tableId = ctx.params.tableId
92
87
  const response = (await handleRequest(Operation.READ, tableId, {
93
88
  id: breakRowIdField(id),
94
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
95
89
  })) as Row[]
96
90
  return response ? response[0] : response
97
91
  }
@@ -101,7 +95,6 @@ export async function destroy(ctx: BBContext) {
101
95
  const id = ctx.request.body._id
102
96
  const { row } = (await handleRequest(Operation.DELETE, tableId, {
103
97
  id: breakRowIdField(id),
104
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
105
98
  })) as { row: Row }
106
99
  return { response: { ok: true }, row }
107
100
  }
@@ -114,7 +107,6 @@ export async function bulkDestroy(ctx: BBContext) {
114
107
  promises.push(
115
108
  handleRequest(Operation.DELETE, tableId, {
116
109
  id: breakRowIdField(row._id),
117
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
118
110
  })
119
111
  )
120
112
  }
@@ -157,7 +149,6 @@ export async function search(ctx: BBContext) {
157
149
  filters: query,
158
150
  sort,
159
151
  paginate: paginateObj as PaginationJson,
160
- includeSqlRelationships: IncludeRelationship.INCLUDE,
161
152
  })) as Row[]
162
153
  let hasNextPage = false
163
154
  if (paginate && rows.length === limit) {
@@ -168,7 +159,6 @@ export async function search(ctx: BBContext) {
168
159
  limit: 1,
169
160
  page: bookmark * limit + 1,
170
161
  },
171
- includeSqlRelationships: IncludeRelationship.INCLUDE,
172
162
  })) as Row[]
173
163
  hasNextPage = nextRows.length > 0
174
164
  }
@@ -257,7 +247,6 @@ export async function fetchEnrichedRow(ctx: BBContext) {
257
247
  const response = (await handleRequest(Operation.READ, tableId, {
258
248
  id,
259
249
  datasource,
260
- includeSqlRelationships: IncludeRelationship.INCLUDE,
261
250
  })) as Row[]
262
251
  const table: Table = tables[tableName]
263
252
  const row = response[0]
@@ -285,7 +274,6 @@ export async function fetchEnrichedRow(ctx: BBContext) {
285
274
  [primaryLink]: linkedIds,
286
275
  },
287
276
  },
288
- includeSqlRelationships: IncludeRelationship.INCLUDE,
289
277
  })
290
278
  }
291
279
  return row
@@ -8,7 +8,7 @@ import {
8
8
  foreignKeyStructure,
9
9
  hasTypeChanged,
10
10
  } from "./utils"
11
- import { FieldTypes } from "../../../constants"
11
+ import { FieldTypes, RelationshipTypes } from "../../../constants"
12
12
  import { makeExternalQuery } from "../../../integrations/base/query"
13
13
  import { handleRequest } from "../row/external"
14
14
  import { events, context } from "@budibase/backend-core"
@@ -22,7 +22,6 @@ import {
22
22
  FieldSchema,
23
23
  BBContext,
24
24
  TableRequest,
25
- RelationshipTypes,
26
25
  } from "@budibase/types"
27
26
  import sdk from "../../../sdk"
28
27
  const { cloneDeep } = require("lodash/fp")
@@ -147,7 +146,7 @@ function generateLinkSchema(
147
146
  column: FieldSchema,
148
147
  table: Table,
149
148
  relatedTable: Table,
150
- type: RelationshipTypes
149
+ type: string
151
150
  ) {
152
151
  if (!table.primary || !relatedTable.primary) {
153
152
  throw new Error("Unable to generate link schema, no primary keys")
@@ -1,6 +1,7 @@
1
1
  import controller from "../../controllers/public/applications"
2
2
  import Endpoint from "./utils/Endpoint"
3
3
  const { nameValidator, applicationValidator } = require("../utils/validators")
4
+ import { db } from "@budibase/backend-core"
4
5
 
5
6
  const read = [],
6
7
  write = []
@@ -13,7 +13,7 @@ beforeAll(async () => {
13
13
  app = await config.init()
14
14
  table = await config.updateTable()
15
15
  apiKey = await config.generateApiKey()
16
- makeRequest = generateMakeRequest(apiKey)
16
+ makeRequest = generateMakeRequest(apiKey, setup)
17
17
  })
18
18
 
19
19
  afterAll(setup.afterAll)
@@ -10,7 +10,7 @@ beforeAll(async () => {
10
10
  await config.init()
11
11
  globalUser = await config.globalUser()
12
12
  apiKey = await config.generateApiKey(globalUser._id)
13
- makeRequest = generateMakeRequest(apiKey)
13
+ makeRequest = generateMakeRequest(apiKey, setup)
14
14
  workerRequests.readGlobalUser.mockReturnValue(globalUser)
15
15
  })
16
16
 
@@ -1,27 +1,13 @@
1
- import * as setup from "../../tests/utilities"
2
1
  import { checkSlashesInUrl } from "../../../../utilities"
3
- import supertest from "supertest"
4
2
 
5
- export type HttpMethod = "post" | "get" | "put" | "delete" | "patch"
6
-
7
- export type MakeRequestResponse = (
8
- method: HttpMethod,
9
- endpoint: string,
10
- body?: any,
11
- intAppId?: string
12
- ) => Promise<supertest.Response>
13
-
14
- export function generateMakeRequest(
15
- apiKey: string,
16
- isInternal = false
17
- ): MakeRequestResponse {
18
- const request = setup.getRequest()!
19
- const config = setup.getConfig()!
3
+ export function generateMakeRequest(apiKey: string, setup: any) {
4
+ const request = setup.getRequest()
5
+ const config = setup.getConfig()
20
6
  return async (
21
- method: HttpMethod,
7
+ method: string,
22
8
  endpoint: string,
23
9
  body?: any,
24
- intAppId: string | null = config.getAppId()
10
+ intAppId: string = config.getAppId()
25
11
  ) => {
26
12
  const extraHeaders: any = {
27
13
  "x-budibase-api-key": apiKey,
@@ -29,12 +15,9 @@ export function generateMakeRequest(
29
15
  if (intAppId) {
30
16
  extraHeaders["x-budibase-app-id"] = intAppId
31
17
  }
32
-
33
- const url = isInternal
34
- ? endpoint
35
- : checkSlashesInUrl(`/api/public/v1/${endpoint}`)
36
-
37
- const req = request[method](url).set(config.defaultHeaders(extraHeaders))
18
+ const req = request[method](
19
+ checkSlashesInUrl(`/api/public/v1/${endpoint}`)
20
+ ).set(config.defaultHeaders(extraHeaders))
38
21
  if (body) {
39
22
  req.send(body)
40
23
  }
@@ -7,7 +7,7 @@ Array [
7
7
  "entities": Array [
8
8
  Object {
9
9
  "_id": "ta_users",
10
- "_rev": "1-2375e1bc58aeec664dc1b1f04ad43e44",
10
+ "_rev": "1-6f4013e796887f1771bf7837598d87e7",
11
11
  "createdAt": "2020-01-01T00:00:00.000Z",
12
12
  "name": "Users",
13
13
  "primaryDisplay": "email",
@@ -10,11 +10,8 @@ describe("/static", () => {
10
10
 
11
11
  afterAll(setup.afterAll)
12
12
 
13
- beforeAll(async () => {
13
+ beforeEach(async () => {
14
14
  app = await config.init()
15
- })
16
-
17
- beforeEach(()=>{
18
15
  jest.clearAllMocks()
19
16
  })
20
17
 
@@ -7,7 +7,7 @@ describe("/api/keys", () => {
7
7
 
8
8
  afterAll(setup.afterAll)
9
9
 
10
- beforeAll(async () => {
10
+ beforeEach(async () => {
11
11
  await config.init()
12
12
  })
13
13
 
@@ -14,22 +14,18 @@ jest.mock("../../../utilities/redis", () => ({
14
14
  import { clearAllApps, checkBuilderEndpoint } from "./utilities/TestFunctions"
15
15
  import * as setup from "./utilities"
16
16
  import { AppStatus } from "../../../db/utils"
17
- import { events, utils } from "@budibase/backend-core"
17
+ import { events } from "@budibase/backend-core"
18
18
  import env from "../../../environment"
19
19
 
20
- jest.setTimeout(15000)
21
-
22
20
  describe("/applications", () => {
23
21
  let request = setup.getRequest()
24
22
  let config = setup.getConfig()
25
23
 
26
24
  afterAll(setup.afterAll)
27
25
 
28
- beforeAll(async () => {
29
- await config.init()
30
- })
31
-
32
26
  beforeEach(async () => {
27
+ await clearAllApps()
28
+ await config.init()
33
29
  jest.clearAllMocks()
34
30
  })
35
31
 
@@ -37,7 +33,7 @@ describe("/applications", () => {
37
33
  it("creates empty app", async () => {
38
34
  const res = await request
39
35
  .post("/api/applications")
40
- .field("name", utils.newid())
36
+ .field("name", "My App")
41
37
  .set(config.defaultHeaders())
42
38
  .expect("Content-Type", /json/)
43
39
  .expect(200)
@@ -48,7 +44,7 @@ describe("/applications", () => {
48
44
  it("creates app from template", async () => {
49
45
  const res = await request
50
46
  .post("/api/applications")
51
- .field("name", utils.newid())
47
+ .field("name", "My App")
52
48
  .field("useTemplate", "true")
53
49
  .field("templateKey", "test")
54
50
  .field("templateString", "{}") // override the file download
@@ -63,7 +59,7 @@ describe("/applications", () => {
63
59
  it("creates app from file", async () => {
64
60
  const res = await request
65
61
  .post("/api/applications")
66
- .field("name", utils.newid())
62
+ .field("name", "My App")
67
63
  .field("useTemplate", "true")
68
64
  .set(config.defaultHeaders())
69
65
  .attach("templateFile", "src/api/routes/tests/data/export.txt")
@@ -110,11 +106,6 @@ describe("/applications", () => {
110
106
  })
111
107
 
112
108
  describe("fetch", () => {
113
- beforeEach(async () => {
114
- // Clean all apps but the onde from config
115
- await clearAllApps(config.getTenantId(), [config.getAppId()!])
116
- })
117
-
118
109
  it("lists all applications", async () => {
119
110
  await config.createApp("app1")
120
111
  await config.createApp("app2")
@@ -275,11 +266,6 @@ describe("/applications", () => {
275
266
  })
276
267
 
277
268
  describe("unpublish", () => {
278
- beforeEach(async () => {
279
- // We want to republish as the unpublish will delete the prod app
280
- await config.publish()
281
- })
282
-
283
269
  it("should unpublish app with dev app ID", async () => {
284
270
  const appId = config.getAppId()
285
271
  await request
@@ -7,7 +7,7 @@ describe("/authenticate", () => {
7
7
 
8
8
  afterAll(setup.afterAll)
9
9
 
10
- beforeAll(async () => {
10
+ beforeEach(async () => {
11
11
  await config.init()
12
12
  })
13
13
 
@@ -18,7 +18,7 @@ describe("/authenticate", () => {
18
18
  .set(config.defaultHeaders())
19
19
  .expect("Content-Type", /json/)
20
20
  .expect(200)
21
- expect(res.body._id).toEqual(generateUserMetadataID(config.user._id))
21
+ expect(res.body._id).toEqual(generateUserMetadataID("us_uuid1"))
22
22
  })
23
23
  })
24
24
  })
@@ -10,16 +10,12 @@ const MAX_RETRIES = 4
10
10
  const { TRIGGER_DEFINITIONS, ACTION_DEFINITIONS } = require("../../../automations")
11
11
  const { events } = require("@budibase/backend-core")
12
12
 
13
-
14
- jest.setTimeout(30000)
15
-
16
13
  describe("/automations", () => {
17
14
  let request = setup.getRequest()
18
15
  let config = setup.getConfig()
19
16
 
20
17
  afterAll(setup.afterAll)
21
18
 
22
- // For some reason this cannot be a beforeAll or the test "tests the automation successfully" fail
23
19
  beforeEach(async () => {
24
20
  await config.init()
25
21
  })
@@ -149,7 +145,7 @@ describe("/automations", () => {
149
145
  let elements = await getAllTableRows(config)
150
146
  // don't test it unless there are values to test
151
147
  if (elements.length > 1) {
152
- expect(elements.length).toBeGreaterThanOrEqual(MAX_RETRIES)
148
+ expect(elements.length).toEqual(5)
153
149
  expect(elements[0].name).toEqual("Test")
154
150
  expect(elements[0].description).toEqual("TEST")
155
151
  return
@@ -309,7 +305,7 @@ describe("/automations", () => {
309
305
  .expect('Content-Type', /json/)
310
306
  .expect(200)
311
307
 
312
- expect(res.body[0]).toEqual(expect.objectContaining(autoConfig))
308
+ expect(res.body[0]).toEqual(expect.objectContaining(autoConfig))
313
309
  })
314
310
 
315
311
  it("should apply authorization to endpoint", async () => {
@@ -1,8 +1,17 @@
1
+ jest.mock("@budibase/backend-core", () => {
2
+ const core = jest.requireActual("@budibase/backend-core")
3
+ return {
4
+ ...core,
5
+ objectStore: {
6
+ budibaseTempDir: core.objectStore.budibaseTempDir,
7
+ },
8
+ }
9
+ })
10
+
1
11
  import * as setup from "./utilities"
2
12
  import { events } from "@budibase/backend-core"
3
13
  import sdk from "../../../sdk"
4
14
  import { checkBuilderEndpoint } from "./utilities/TestFunctions"
5
-
6
15
  describe("/backups", () => {
7
16
  let request = setup.getRequest()
8
17
  let config = setup.getConfig()
@@ -35,9 +44,9 @@ describe("/backups", () => {
35
44
 
36
45
  describe("calculateBackupStats", () => {
37
46
  it("should be able to calculate the backup statistics", async () => {
38
- await config.createAutomation()
39
- await config.createScreen()
40
- let res = await sdk.backups.calculateBackupStats(config.getAppId()!)
47
+ config.createAutomation()
48
+ config.createScreen()
49
+ let res = await sdk.backups.calculateBackupStats(config.getAppId())
41
50
  expect(res.automations).toEqual(1)
42
51
  expect(res.datasources).toEqual(1)
43
52
  expect(res.screens).toEqual(1)