@budibase/server 2.1.32-alpha.5 → 2.1.32-alpha.7

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 (583) hide show
  1. package/builder/assets/{index.192baaa3.js → index.e0fdcf54.js} +184 -184
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +3112 -3177
  4. package/coverage/coverage-final.json +105 -106
  5. package/coverage/lcov-report/index.html +145 -145
  6. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  7. package/coverage/lcov-report/src/api/controllers/{apikeys.js.html → apikeys.ts.html} +19 -19
  8. package/coverage/lcov-report/src/api/controllers/application.ts.html +1 -1
  9. package/coverage/lcov-report/src/api/controllers/auth.ts.html +3 -3
  10. package/coverage/lcov-report/src/api/controllers/{automation.js.html → automation.ts.html} +68 -68
  11. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  12. package/coverage/lcov-report/src/api/controllers/{cloud.js.html → cloud.ts.html} +40 -40
  13. package/coverage/lcov-report/src/api/controllers/component.ts.html +6 -3
  14. package/coverage/lcov-report/src/api/controllers/{datasource.js.html → datasource.ts.html} +100 -79
  15. package/coverage/lcov-report/src/api/controllers/deploy/{Deployment.js.html → Deployment.ts.html} +30 -21
  16. package/coverage/lcov-report/src/api/controllers/deploy/index.html +6 -6
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +1 -1
  18. package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/index.html +108 -108
  20. package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
  21. package/coverage/lcov-report/src/api/controllers/{layout.js.html → layout.ts.html} +19 -19
  22. package/coverage/lcov-report/src/api/controllers/{metadata.js.html → metadata.ts.html} +19 -16
  23. package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/{permission.js.html → permission.ts.html} +73 -64
  25. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +1 -1
  26. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +1 -1
  27. package/coverage/lcov-report/src/api/controllers/plugin/index.html +11 -11
  28. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +10 -13
  29. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +1 -1
  30. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +1 -1
  31. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +1 -1
  32. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +1 -1
  33. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
  34. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  35. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
  36. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +3 -3
  45. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
  46. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
  47. package/coverage/lcov-report/src/api/controllers/query/import/index.html +11 -11
  48. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +8 -11
  49. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/index.html +2 -2
  57. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
  58. package/coverage/lcov-report/src/api/controllers/query/{validation.js.html → validation.ts.html} +10 -10
  59. package/coverage/lcov-report/src/api/controllers/{role.js.html → role.ts.html} +37 -49
  60. package/coverage/lcov-report/src/api/controllers/{routing.js.html → routing.ts.html} +58 -49
  61. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +6 -18
  62. package/coverage/lcov-report/src/api/controllers/row/external.js.html +4 -4
  63. package/coverage/lcov-report/src/api/controllers/row/index.html +35 -35
  64. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  65. package/coverage/lcov-report/src/api/controllers/row/internal.js.html +17 -20
  66. package/coverage/lcov-report/src/api/controllers/row/{internalSearch.js.html → internalSearch.ts.html} +175 -103
  67. package/coverage/lcov-report/src/api/controllers/row/{staticFormula.js.html → staticFormula.ts.html} +62 -47
  68. package/coverage/lcov-report/src/api/controllers/row/{utils.js.html → utils.ts.html} +57 -36
  69. package/coverage/lcov-report/src/api/controllers/screen.ts.html +29 -17
  70. package/coverage/lcov-report/src/api/controllers/{script.js.html → script.ts.html} +10 -7
  71. package/coverage/lcov-report/src/api/controllers/static/index.html +10 -10
  72. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +15 -27
  73. package/coverage/lcov-report/src/api/controllers/table/{bulkFormula.js.html → bulkFormula.ts.html} +89 -47
  74. package/coverage/lcov-report/src/api/controllers/table/{external.js.html → external.ts.html} +192 -87
  75. package/coverage/lcov-report/src/api/controllers/table/index.html +39 -39
  76. package/coverage/lcov-report/src/api/controllers/table/{index.js.html → index.ts.html} +28 -28
  77. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +3 -6
  78. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +18 -18
  79. package/coverage/lcov-report/src/api/controllers/{templates.js.html → templates.ts.html} +27 -18
  80. package/coverage/lcov-report/src/api/controllers/{user.js.html → user.ts.html} +72 -78
  81. package/coverage/lcov-report/src/api/controllers/view/{exporters.js.html → exporters.ts.html} +13 -7
  82. package/coverage/lcov-report/src/api/controllers/view/index.html +21 -21
  83. package/coverage/lcov-report/src/api/controllers/view/{index.js.html → index.ts.html} +68 -41
  84. package/coverage/lcov-report/src/api/controllers/view/{utils.js.html → utils.ts.html} +54 -36
  85. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.js.html +1 -1
  86. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +1 -1
  87. package/coverage/lcov-report/src/api/index.html +14 -14
  88. package/coverage/lcov-report/src/api/{index.js.html → index.ts.html} +28 -49
  89. package/coverage/lcov-report/src/api/routes/{analytics.js.html → analytics.ts.html} +7 -7
  90. package/coverage/lcov-report/src/api/routes/{apikeys.js.html → apikeys.ts.html} +11 -11
  91. package/coverage/lcov-report/src/api/routes/application.ts.html +35 -11
  92. package/coverage/lcov-report/src/api/routes/auth.ts.html +3 -3
  93. package/coverage/lcov-report/src/api/routes/{automation.js.html → automation.ts.html} +41 -35
  94. package/coverage/lcov-report/src/api/routes/backup.ts.html +18 -6
  95. package/coverage/lcov-report/src/api/routes/{deploy.js.html → cloud.ts.html} +18 -15
  96. package/coverage/lcov-report/src/api/routes/{component.js.html → component.ts.html} +10 -10
  97. package/coverage/lcov-report/src/api/routes/{datasource.js.html → datasource.ts.html} +53 -26
  98. package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
  99. package/coverage/lcov-report/src/api/routes/{dev.js.html → dev.ts.html} +54 -18
  100. package/coverage/lcov-report/src/api/routes/index.html +41 -41
  101. package/coverage/lcov-report/src/api/routes/index.ts.html +3 -3
  102. package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
  103. package/coverage/lcov-report/src/api/routes/{layout.js.html → layout.ts.html} +11 -11
  104. package/coverage/lcov-report/src/api/routes/{metadata.js.html → metadata.ts.html} +17 -17
  105. package/coverage/lcov-report/src/api/routes/{migrations.js.html → migrations.ts.html} +12 -12
  106. package/coverage/lcov-report/src/api/routes/{permission.js.html → permission.ts.html} +41 -17
  107. package/coverage/lcov-report/src/api/routes/plugin.ts.html +32 -8
  108. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
  109. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
  111. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
  113. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
  115. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
  116. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/{query.js.html → query.ts.html} +24 -33
  120. package/coverage/lcov-report/src/{utilities/routing/index.js.html → api/routes/role.ts.html} +32 -35
  121. package/coverage/lcov-report/src/api/routes/{routing.js.html → routing.ts.html} +10 -10
  122. package/coverage/lcov-report/src/api/routes/row.ts.html +8 -14
  123. package/coverage/lcov-report/src/api/routes/{screen.js.html → screen.ts.html} +29 -14
  124. package/coverage/lcov-report/src/api/routes/{script.js.html → script.ts.html} +10 -10
  125. package/coverage/lcov-report/src/api/routes/static.ts.html +9 -18
  126. package/coverage/lcov-report/src/api/routes/{table.js.html → table.ts.html} +16 -25
  127. package/coverage/lcov-report/src/api/routes/{templates.js.html → templates.ts.html} +11 -11
  128. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +12 -18
  129. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +10 -10
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +1 -1
  131. package/coverage/lcov-report/src/api/routes/{user.js.html → user.ts.html} +14 -20
  132. package/coverage/lcov-report/src/api/routes/utils/index.html +6 -6
  133. package/coverage/lcov-report/src/api/routes/utils/{validators.js.html → validators.ts.html} +39 -51
  134. package/coverage/lcov-report/src/api/routes/{view.js.html → view.ts.html} +33 -24
  135. package/coverage/lcov-report/src/api/routes/webhook.ts.html +3 -3
  136. package/coverage/lcov-report/src/app.ts.html +9 -12
  137. package/coverage/lcov-report/src/automations/actions.js.html +1 -1
  138. package/coverage/lcov-report/src/automations/automationUtils.js.html +1 -1
  139. package/coverage/lcov-report/src/automations/bullboard.js.html +1 -1
  140. package/coverage/lcov-report/src/automations/index.html +10 -10
  141. package/coverage/lcov-report/src/automations/index.js.html +1 -1
  142. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  143. package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
  144. package/coverage/lcov-report/src/automations/steps/bash.js.html +1 -1
  145. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  146. package/coverage/lcov-report/src/automations/steps/delay.js.html +1 -1
  147. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  148. package/coverage/lcov-report/src/automations/steps/discord.js.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/executeQuery.js.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/executeScript.js.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/filter.js.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/integromat.js.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/loop.js.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.js.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/queryRows.js.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.js.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/serverLog.js.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/slack.js.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/updateRow.js.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/utils.js.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/zapier.js.html +1 -1
  163. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  164. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +1 -1
  165. package/coverage/lcov-report/src/automations/triggerInfo/app.js.html +1 -1
  166. package/coverage/lcov-report/src/automations/triggerInfo/cron.js.html +1 -1
  167. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  168. package/coverage/lcov-report/src/automations/triggerInfo/index.js.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.js.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.js.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.js.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/webhook.js.html +1 -1
  173. package/coverage/lcov-report/src/automations/triggers.js.html +11 -14
  174. package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
  175. package/coverage/lcov-report/src/constants/index.html +5 -5
  176. package/coverage/lcov-report/src/constants/index.js.html +7 -13
  177. package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
  178. package/coverage/lcov-report/src/constants/screens.js.html +3 -3
  179. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +1 -1
  180. package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +1 -1
  181. package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +1 -1
  182. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  183. package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +1 -1
  184. package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +1 -1
  185. package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
  186. package/coverage/lcov-report/src/db/inMemoryView.js.html +4 -4
  187. package/coverage/lcov-report/src/db/index.html +1 -1
  188. package/coverage/lcov-report/src/db/index.js.html +1 -1
  189. package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +3 -3
  190. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +1 -1
  191. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  192. package/coverage/lcov-report/src/db/linkedRows/index.js.html +3 -3
  193. package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +4 -4
  194. package/coverage/lcov-report/src/db/newid.js.html +1 -1
  195. package/coverage/lcov-report/src/db/utils.ts.html +2 -2
  196. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  197. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  198. package/coverage/lcov-report/src/definitions/index.html +1 -1
  199. package/coverage/lcov-report/src/environment.js.html +1 -1
  200. package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
  201. package/coverage/lcov-report/src/events/index.html +1 -1
  202. package/coverage/lcov-report/src/events/index.js.html +1 -1
  203. package/coverage/lcov-report/src/events/utils.js.html +1 -1
  204. package/coverage/lcov-report/src/index.html +17 -32
  205. package/coverage/lcov-report/src/index.ts.html +1 -1
  206. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  207. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  208. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  209. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/base/sql.ts.html +2 -2
  211. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +2 -2
  212. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  213. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/index.html +4 -4
  219. package/coverage/lcov-report/src/integrations/index.ts.html +58 -46
  220. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  221. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  223. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  224. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  226. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  227. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  228. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  229. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  230. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  232. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  233. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  234. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  235. package/coverage/lcov-report/src/middleware/authorized.ts.html +30 -51
  236. package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
  237. package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
  238. package/coverage/lcov-report/src/middleware/index.html +10 -10
  239. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  240. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  241. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  242. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  243. package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
  244. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +3 -3
  245. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  246. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  247. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +9 -9
  265. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +7 -10
  267. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  268. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -10
  269. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
  270. package/coverage/lcov-report/src/migrations/index.html +1 -1
  271. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  272. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  274. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  275. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  276. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  277. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  278. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  279. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +16 -10
  280. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +9 -21
  281. package/coverage/lcov-report/src/sdk/app/backups/index.html +16 -16
  282. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  283. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +1 -1
  286. package/coverage/lcov-report/src/sdk/index.html +1 -1
  287. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  288. package/coverage/lcov-report/src/startup.ts.html +3 -3
  289. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +61 -49
  290. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
  291. package/coverage/lcov-report/src/tests/utilities/index.html +15 -15
  292. package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
  293. package/coverage/lcov-report/src/tests/utilities/structures.js.html +9 -12
  294. package/coverage/lcov-report/src/threads/automation.ts.html +20 -23
  295. package/coverage/lcov-report/src/threads/index.html +24 -24
  296. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  297. package/coverage/lcov-report/src/threads/query.ts.html +18 -33
  298. package/coverage/lcov-report/src/threads/utils.ts.html +10 -13
  299. package/coverage/lcov-report/src/utilities/{budibaseDir.js.html → budibaseDir.ts.html} +5 -5
  300. package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
  301. package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
  302. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +13 -13
  303. package/coverage/lcov-report/src/utilities/fileSystem/index.html +5 -20
  304. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +16 -16
  305. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
  306. package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
  307. package/coverage/lcov-report/src/utilities/index.html +44 -44
  308. package/coverage/lcov-report/src/utilities/{index.js.html → index.ts.html} +68 -44
  309. package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
  310. package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
  311. package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
  312. package/coverage/lcov-report/src/utilities/{redis.js.html → redis.ts.html} +36 -33
  313. package/coverage/lcov-report/src/utilities/routing/index.html +6 -6
  314. package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
  315. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +38 -23
  316. package/coverage/lcov-report/src/utilities/rowProcessor/{index.js.html → index.ts.html} +106 -337
  317. package/coverage/lcov-report/src/utilities/rowProcessor/map.js.html +370 -0
  318. package/coverage/lcov-report/src/utilities/rowProcessor/{utils.js.html → utils.ts.html} +43 -31
  319. package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
  320. package/coverage/lcov-report/src/utilities/{security.js.html → security.ts.html} +49 -67
  321. package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
  322. package/coverage/lcov-report/src/utilities/usageQuota/index.html +18 -18
  323. package/coverage/lcov-report/src/utilities/usageQuota/{rows.js.html → rows.ts.html} +27 -39
  324. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  325. package/coverage/lcov-report/src/utilities/{users.js.html → users.ts.html} +22 -28
  326. package/coverage/lcov-report/src/utilities/{workerRequests.js.html → workerRequests.ts.html} +69 -54
  327. package/coverage/lcov-report/src/watch.ts.html +8 -11
  328. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  329. package/coverage/lcov.info +5519 -5768
  330. package/dist/api/controllers/apikeys.js +12 -9
  331. package/dist/api/controllers/automation.js +104 -84
  332. package/dist/api/controllers/cloud.js +84 -71
  333. package/dist/api/controllers/component.js +4 -2
  334. package/dist/api/controllers/datasource.js +125 -111
  335. package/dist/api/controllers/deploy/Deployment.js +10 -6
  336. package/dist/api/controllers/layout.js +18 -15
  337. package/dist/api/controllers/metadata.js +51 -37
  338. package/dist/api/controllers/permission.js +52 -43
  339. package/dist/api/controllers/plugin/index.js +6 -7
  340. package/dist/api/controllers/public/tables.js +29 -9
  341. package/dist/api/controllers/query/import/index.js +1 -2
  342. package/dist/api/controllers/query/validation.js +41 -33
  343. package/dist/api/controllers/role.js +29 -27
  344. package/dist/api/controllers/routing.js +71 -58
  345. package/dist/api/controllers/row/ExternalRequest.js +6 -7
  346. package/dist/api/controllers/row/external.js +3 -3
  347. package/dist/api/controllers/row/internal.js +11 -12
  348. package/dist/api/controllers/row/internalSearch.js +95 -80
  349. package/dist/api/controllers/row/staticFormula.js +85 -75
  350. package/dist/api/controllers/row/utils.js +118 -84
  351. package/dist/api/controllers/screen.js +81 -66
  352. package/dist/api/controllers/script.js +13 -6
  353. package/dist/api/controllers/static/index.js +9 -11
  354. package/dist/api/controllers/table/bulkFormula.js +47 -35
  355. package/dist/api/controllers/table/external.js +67 -54
  356. package/dist/api/controllers/table/index.js +66 -33
  357. package/dist/api/controllers/table/internal.js +1 -2
  358. package/dist/api/controllers/table/utils.js +8 -9
  359. package/dist/api/controllers/templates.js +17 -10
  360. package/dist/api/controllers/user.js +82 -70
  361. package/dist/api/controllers/view/exporters.js +8 -4
  362. package/dist/api/controllers/view/index.js +201 -153
  363. package/dist/api/controllers/view/utils.js +151 -121
  364. package/dist/api/index.js +38 -34
  365. package/dist/api/routes/analytics.js +29 -3
  366. package/dist/api/routes/apikeys.js +33 -7
  367. package/dist/api/routes/application.js +8 -9
  368. package/dist/api/routes/auth.js +1 -2
  369. package/dist/api/routes/automation.js +46 -20
  370. package/dist/api/routes/backup.js +3 -4
  371. package/dist/api/routes/cloud.js +32 -6
  372. package/dist/api/routes/component.js +32 -6
  373. package/dist/api/routes/datasource.js +39 -13
  374. package/dist/api/routes/deploy.js +34 -8
  375. package/dist/api/routes/dev.js +36 -10
  376. package/dist/api/routes/integration.js +10 -7
  377. package/dist/api/routes/layout.js +33 -7
  378. package/dist/api/routes/metadata.js +36 -10
  379. package/dist/api/routes/migrations.js +32 -6
  380. package/dist/api/routes/permission.js +38 -12
  381. package/dist/api/routes/plugin.js +5 -5
  382. package/dist/api/routes/query.js +42 -15
  383. package/dist/api/routes/role.js +36 -10
  384. package/dist/api/routes/routing.js +32 -6
  385. package/dist/api/routes/row.js +2 -1
  386. package/dist/api/routes/screen.js +35 -9
  387. package/dist/api/routes/script.js +32 -6
  388. package/dist/api/routes/static.js +9 -9
  389. package/dist/api/routes/table.js +40 -13
  390. package/dist/api/routes/templates.js +33 -7
  391. package/dist/api/routes/tests/utilities/TestFunctions.js +6 -8
  392. package/dist/api/routes/user.js +40 -13
  393. package/dist/api/routes/utils/validators.js +142 -126
  394. package/dist/api/routes/view.js +38 -12
  395. package/dist/api/routes/webhook.js +1 -2
  396. package/dist/app.js +3 -4
  397. package/dist/automations/triggers.js +5 -6
  398. package/dist/constants/index.js +3 -5
  399. package/dist/constants/screens.js +2 -2
  400. package/dist/db/inMemoryView.js +3 -3
  401. package/dist/db/linkedRows/LinkController.js +2 -2
  402. package/dist/db/linkedRows/index.js +2 -2
  403. package/dist/db/linkedRows/linkUtils.js +3 -3
  404. package/dist/db/views/staticViews.js +4 -4
  405. package/dist/integrations/index.js +15 -6
  406. package/dist/middleware/authorized.js +22 -21
  407. package/dist/migrations/functions/appUrls.js +2 -2
  408. package/dist/migrations/functions/usageQuotas/syncApps.js +3 -4
  409. package/dist/migrations/functions/usageQuotas/syncRows.js +3 -4
  410. package/dist/migrations/functions/userEmailViewCasing.js +3 -3
  411. package/dist/package.json +6 -6
  412. package/dist/sdk/app/backups/exports.js +1 -2
  413. package/dist/sdk/app/backups/imports.js +2 -3
  414. package/dist/startup.js +4 -4
  415. package/dist/tests/utilities/TestConfiguration.js +27 -35
  416. package/dist/tests/utilities/structures.js +3 -4
  417. package/dist/threads/automation.js +15 -16
  418. package/dist/threads/query.js +17 -19
  419. package/dist/threads/utils.js +11 -9
  420. package/dist/tsconfig.build.tsbuildinfo +1 -1
  421. package/dist/utilities/budibaseDir.js +4 -2
  422. package/dist/utilities/fileSystem/clientLibrary.js +12 -12
  423. package/dist/utilities/fileSystem/index.js +3 -3
  424. package/dist/utilities/index.js +102 -75
  425. package/dist/utilities/redis.js +100 -65
  426. package/dist/utilities/routing/index.js +27 -23
  427. package/dist/utilities/rowProcessor/index.js +124 -191
  428. package/dist/utilities/rowProcessor/map.js +96 -0
  429. package/dist/utilities/rowProcessor/utils.js +35 -26
  430. package/dist/utilities/security.js +39 -35
  431. package/dist/utilities/usageQuota/rows.js +56 -49
  432. package/dist/utilities/users.js +31 -28
  433. package/dist/utilities/workerRequests.js +115 -82
  434. package/dist/watch.js +1 -2
  435. package/package.json +7 -7
  436. package/scripts/exportAppTemplate.js +2 -2
  437. package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
  438. package/src/api/controllers/auth.ts +2 -2
  439. package/src/api/controllers/{automation.js → automation.ts} +48 -48
  440. package/src/api/controllers/{cloud.js → cloud.ts} +24 -24
  441. package/src/api/controllers/component.ts +2 -1
  442. package/src/api/controllers/{datasource.js → datasource.ts} +55 -48
  443. package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
  444. package/src/api/controllers/{layout.js → layout.ts} +8 -8
  445. package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
  446. package/src/api/controllers/{permission.js → permission.ts} +49 -46
  447. package/src/api/controllers/plugin/index.ts +4 -5
  448. package/src/api/controllers/public/tables.ts +2 -2
  449. package/src/api/controllers/query/import/index.ts +2 -3
  450. package/src/api/controllers/query/{validation.js → validation.ts} +7 -7
  451. package/src/api/controllers/{role.js → role.ts} +21 -25
  452. package/src/api/controllers/{routing.js → routing.ts} +37 -34
  453. package/src/api/controllers/row/ExternalRequest.ts +4 -8
  454. package/src/api/controllers/row/external.js +3 -3
  455. package/src/api/controllers/row/internal.js +11 -12
  456. package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
  457. package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +28 -23
  458. package/src/api/controllers/row/{utils.js → utils.ts} +25 -18
  459. package/src/api/controllers/screen.ts +10 -6
  460. package/src/api/controllers/script.ts +12 -0
  461. package/src/api/controllers/static/index.ts +9 -13
  462. package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
  463. package/src/api/controllers/table/{external.js → external.ts} +86 -51
  464. package/src/api/controllers/table/{index.js → index.ts} +17 -17
  465. package/src/api/controllers/table/internal.ts +1 -2
  466. package/src/api/controllers/table/utils.ts +10 -10
  467. package/src/api/controllers/{templates.js → templates.ts} +10 -7
  468. package/src/api/controllers/{user.js → user.ts} +47 -49
  469. package/src/api/controllers/view/{exporters.js → exporters.ts} +5 -3
  470. package/src/api/controllers/view/{index.js → index.ts} +36 -27
  471. package/src/api/controllers/view/{utils.js → utils.ts} +26 -20
  472. package/src/api/{index.js → index.ts} +15 -22
  473. package/src/api/routes/analytics.ts +9 -0
  474. package/src/api/routes/apikeys.ts +12 -0
  475. package/src/api/routes/application.ts +17 -9
  476. package/src/api/routes/auth.ts +2 -2
  477. package/src/api/routes/automation.ts +87 -0
  478. package/src/api/routes/backup.ts +8 -4
  479. package/src/api/routes/cloud.ts +18 -0
  480. package/src/api/routes/component.ts +14 -0
  481. package/src/api/routes/datasource.ts +60 -0
  482. package/src/api/routes/deploy.ts +21 -0
  483. package/src/api/routes/dev.ts +38 -0
  484. package/src/api/routes/integration.ts +16 -0
  485. package/src/api/routes/layout.ts +16 -0
  486. package/src/api/routes/{metadata.js → metadata.ts} +13 -13
  487. package/src/api/routes/migrations.ts +14 -0
  488. package/src/api/routes/permission.ts +41 -0
  489. package/src/api/routes/plugin.ts +14 -6
  490. package/src/api/routes/{query.js → query.ts} +17 -20
  491. package/src/api/routes/role.ts +24 -0
  492. package/src/api/routes/routing.ts +14 -0
  493. package/src/api/routes/row.ts +3 -5
  494. package/src/api/routes/screen.ts +23 -0
  495. package/src/api/routes/script.ts +10 -0
  496. package/src/api/routes/static.ts +4 -7
  497. package/src/api/routes/{table.js → table.ts} +9 -12
  498. package/src/api/routes/templates.ts +16 -0
  499. package/src/api/routes/tests/backup.spec.js +9 -1
  500. package/src/api/routes/tests/permissions.spec.js +2 -1
  501. package/src/api/routes/tests/role.spec.js +3 -5
  502. package/src/api/routes/tests/routing.spec.js +2 -1
  503. package/src/api/routes/tests/row.spec.js +3 -4
  504. package/src/api/routes/tests/user.spec.js +2 -1
  505. package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
  506. package/src/api/routes/{user.js → user.ts} +7 -9
  507. package/src/api/routes/utils/{validators.js → validators.ts} +33 -37
  508. package/src/api/routes/view.ts +34 -0
  509. package/src/api/routes/webhook.ts +2 -2
  510. package/src/app.ts +3 -4
  511. package/src/automations/triggers.js +5 -6
  512. package/src/constants/index.js +3 -5
  513. package/src/constants/screens.js +2 -2
  514. package/src/db/inMemoryView.js +3 -3
  515. package/src/db/linkedRows/LinkController.js +2 -2
  516. package/src/db/linkedRows/index.js +2 -2
  517. package/src/db/linkedRows/linkUtils.js +3 -3
  518. package/src/db/utils.ts +1 -1
  519. package/src/db/views/staticViews.js +4 -4
  520. package/src/integrations/base/sql.ts +1 -1
  521. package/src/integrations/base/sqlTable.ts +1 -1
  522. package/src/integrations/index.ts +45 -41
  523. package/src/middleware/authorized.ts +21 -28
  524. package/src/middleware/tests/authorized.spec.js +5 -6
  525. package/src/migrations/functions/appUrls.ts +2 -2
  526. package/src/migrations/functions/tests/appUrls.spec.js +4 -4
  527. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +14 -9
  528. package/src/migrations/functions/usageQuotas/syncApps.ts +3 -4
  529. package/src/migrations/functions/usageQuotas/syncRows.ts +3 -4
  530. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
  531. package/src/migrations/functions/userEmailViewCasing.ts +3 -3
  532. package/src/sdk/app/backups/exports.ts +5 -3
  533. package/src/sdk/app/backups/imports.ts +3 -7
  534. package/src/startup.ts +2 -2
  535. package/src/tests/utilities/TestConfiguration.js +39 -35
  536. package/src/tests/utilities/structures.js +3 -4
  537. package/src/threads/automation.ts +14 -15
  538. package/src/threads/query.ts +11 -16
  539. package/src/threads/utils.ts +4 -5
  540. package/src/utilities/budibaseDir.ts +3 -0
  541. package/src/utilities/fileSystem/clientLibrary.js +12 -12
  542. package/src/utilities/fileSystem/index.js +8 -8
  543. package/src/utilities/{index.js → index.ts} +40 -32
  544. package/src/utilities/{redis.js → redis.ts} +21 -20
  545. package/src/utilities/routing/index.ts +32 -0
  546. package/src/utilities/rowProcessor/{index.js → index.ts} +65 -142
  547. package/src/utilities/rowProcessor/map.js +95 -0
  548. package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
  549. package/src/utilities/security.ts +65 -0
  550. package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
  551. package/src/utilities/{users.js → users.ts} +11 -13
  552. package/src/utilities/{workerRequests.js → workerRequests.ts} +43 -38
  553. package/src/watch.ts +2 -3
  554. package/coverage/lcov-report/src/api/routes/cloud.js.html +0 -127
  555. package/coverage/lcov-report/src/api/routes/integration.js.html +0 -121
  556. package/coverage/lcov-report/src/api/routes/role.js.html +0 -130
  557. package/coverage/lcov-report/src/module.d.ts.html +0 -127
  558. package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +0 -193
  559. package/dist/utilities/fileSystem/utilities.js +0 -22
  560. package/src/api/controllers/script.js +0 -11
  561. package/src/api/routes/analytics.js +0 -9
  562. package/src/api/routes/apikeys.js +0 -12
  563. package/src/api/routes/automation.js +0 -85
  564. package/src/api/routes/cloud.js +0 -14
  565. package/src/api/routes/component.js +0 -14
  566. package/src/api/routes/datasource.js +0 -51
  567. package/src/api/routes/deploy.js +0 -17
  568. package/src/api/routes/dev.js +0 -26
  569. package/src/api/routes/integration.js +0 -12
  570. package/src/api/routes/layout.js +0 -16
  571. package/src/api/routes/migrations.js +0 -14
  572. package/src/api/routes/permission.js +0 -33
  573. package/src/api/routes/role.js +0 -15
  574. package/src/api/routes/routing.js +0 -14
  575. package/src/api/routes/screen.js +0 -18
  576. package/src/api/routes/script.js +0 -10
  577. package/src/api/routes/templates.js +0 -16
  578. package/src/api/routes/view.js +0 -31
  579. package/src/module.d.ts +0 -14
  580. package/src/utilities/budibaseDir.js +0 -3
  581. package/src/utilities/fileSystem/utilities.js +0 -36
  582. package/src/utilities/routing/index.js +0 -25
  583. package/src/utilities/security.js +0 -71
@@ -1,5 +1,4 @@
1
1
  require("../../db").init()
2
- const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
3
2
  const env = require("../../environment")
4
3
  const {
5
4
  basicTable,
@@ -13,18 +12,21 @@ const {
13
12
  basicWebhook,
14
13
  TENANT_ID,
15
14
  } = require("./structures")
15
+ const {
16
+ constants,
17
+ tenancy,
18
+ sessions,
19
+ cache,
20
+ context,
21
+ db: dbCore,
22
+ encryption,
23
+ auth,
24
+ roles,
25
+ } = require("@budibase/backend-core")
16
26
  const controllers = require("./controllers")
17
27
  const supertest = require("supertest")
18
28
  const { cleanup } = require("../../utilities/fileSystem")
19
- const { Cookie, Header } = require("@budibase/backend-core/constants")
20
- const { jwt } = require("@budibase/backend-core/auth")
21
- const { doInTenant, doWithGlobalDB } = require("@budibase/backend-core/tenancy")
22
- const { createASession } = require("@budibase/backend-core/sessions")
23
- const { user: userCache } = require("@budibase/backend-core/cache")
24
29
  const newid = require("../../db/newid")
25
- const context = require("@budibase/backend-core/context")
26
- const { generateDevInfoID, SEPARATOR } = require("@budibase/backend-core/db")
27
- const { encrypt } = require("@budibase/backend-core/encryption")
28
30
  const { DocumentType, generateUserMetadataID } = require("../../db/utils")
29
31
  const { startup } = require("../../startup")
30
32
 
@@ -83,7 +85,7 @@ class TestConfiguration {
83
85
  if (!appId) {
84
86
  appId = this.appId
85
87
  }
86
- return doInTenant(TENANT_ID, () => {
88
+ return tenancy.doInTenant(TENANT_ID, () => {
87
89
  // check if already in a context
88
90
  if (context.getAppId() == null && appId !== null) {
89
91
  return context.doInAppContext(appId, async () => {
@@ -155,7 +157,7 @@ class TestConfiguration {
155
157
  email = EMAIL,
156
158
  roles,
157
159
  } = {}) {
158
- return doWithGlobalDB(TENANT_ID, async db => {
160
+ return tenancy.doWithGlobalDB(TENANT_ID, async db => {
159
161
  let existing
160
162
  try {
161
163
  existing = await db.get(id)
@@ -170,7 +172,7 @@ class TestConfiguration {
170
172
  firstName,
171
173
  lastName,
172
174
  }
173
- await createASession(id, {
175
+ await sessions.createASession(id, {
174
176
  sessionId: "sessionid",
175
177
  tenantId: TENANT_ID,
176
178
  csrfToken: CSRF_TOKEN,
@@ -212,7 +214,7 @@ class TestConfiguration {
212
214
  admin,
213
215
  roles,
214
216
  })
215
- await userCache.invalidateUser(globalId)
217
+ await cache.user.invalidateUser(globalId)
216
218
  return {
217
219
  ...resp,
218
220
  globalId,
@@ -227,19 +229,19 @@ class TestConfiguration {
227
229
  throw "Server has not been opened, cannot login."
228
230
  }
229
231
  // make sure the user exists in the global DB
230
- if (roleId !== BUILTIN_ROLE_IDS.PUBLIC) {
232
+ if (roleId !== roles.BUILTIN_ROLE_IDS.PUBLIC) {
231
233
  await this.globalUser({
232
234
  id: userId,
233
235
  builder,
234
236
  roles: { [this.prodAppId]: roleId },
235
237
  })
236
238
  }
237
- await createASession(userId, {
239
+ await sessions.createASession(userId, {
238
240
  sessionId: "sessionid",
239
241
  tenantId: TENANT_ID,
240
242
  })
241
243
  // have to fake this
242
- const auth = {
244
+ const authObj = {
243
245
  userId,
244
246
  sessionId: "sessionid",
245
247
  tenantId: TENANT_ID,
@@ -248,45 +250,45 @@ class TestConfiguration {
248
250
  roleId: roleId,
249
251
  appId,
250
252
  }
251
- const authToken = jwt.sign(auth, env.JWT_SECRET)
252
- const appToken = jwt.sign(app, env.JWT_SECRET)
253
+ const authToken = auth.jwt.sign(authObj, env.JWT_SECRET)
254
+ const appToken = auth.jwt.sign(app, env.JWT_SECRET)
253
255
 
254
256
  // returning necessary request headers
255
- await userCache.invalidateUser(userId)
257
+ await cache.user.invalidateUser(userId)
256
258
  return {
257
259
  Accept: "application/json",
258
260
  Cookie: [
259
- `${Cookie.Auth}=${authToken}`,
260
- `${Cookie.CurrentApp}=${appToken}`,
261
+ `${constants.Cookie.Auth}=${authToken}`,
262
+ `${constants.Cookie.CurrentApp}=${appToken}`,
261
263
  ],
262
- [Header.APP_ID]: appId,
264
+ [constants.Header.APP_ID]: appId,
263
265
  }
264
266
  })
265
267
  }
266
268
 
267
269
  defaultHeaders(extras = {}) {
268
- const auth = {
270
+ const authObj = {
269
271
  userId: GLOBAL_USER_ID,
270
272
  sessionId: "sessionid",
271
273
  tenantId: TENANT_ID,
272
274
  }
273
275
  const app = {
274
- roleId: BUILTIN_ROLE_IDS.ADMIN,
276
+ roleId: roles.BUILTIN_ROLE_IDS.ADMIN,
275
277
  appId: this.appId,
276
278
  }
277
- const authToken = jwt.sign(auth, env.JWT_SECRET)
278
- const appToken = jwt.sign(app, env.JWT_SECRET)
279
+ const authToken = auth.jwt.sign(authObj, env.JWT_SECRET)
280
+ const appToken = auth.jwt.sign(app, env.JWT_SECRET)
279
281
  const headers = {
280
282
  Accept: "application/json",
281
283
  Cookie: [
282
- `${Cookie.Auth}=${authToken}`,
283
- `${Cookie.CurrentApp}=${appToken}`,
284
+ `${constants.Cookie.Auth}=${authToken}`,
285
+ `${constants.Cookie.CurrentApp}=${appToken}`,
284
286
  ],
285
- [Header.CSRF_TOKEN]: CSRF_TOKEN,
287
+ [constants.Header.CSRF_TOKEN]: CSRF_TOKEN,
286
288
  ...extras,
287
289
  }
288
290
  if (this.appId) {
289
- headers[Header.APP_ID] = this.appId
291
+ headers[constants.Header.APP_ID] = this.appId
290
292
  }
291
293
  return headers
292
294
  }
@@ -298,14 +300,14 @@ class TestConfiguration {
298
300
  Accept: "application/json",
299
301
  }
300
302
  if (appId) {
301
- headers[Header.APP_ID] = appId
303
+ headers[constants.Header.APP_ID] = appId
302
304
  }
303
305
  return headers
304
306
  }
305
307
 
306
308
  async roleHeaders({
307
309
  email = EMAIL,
308
- roleId = BUILTIN_ROLE_IDS.ADMIN,
310
+ roleId = roles.BUILTIN_ROLE_IDS.ADMIN,
309
311
  builder = false,
310
312
  prodApp = true,
311
313
  } = {}) {
@@ -315,15 +317,17 @@ class TestConfiguration {
315
317
  // API
316
318
 
317
319
  async generateApiKey(userId = GLOBAL_USER_ID) {
318
- return doWithGlobalDB(TENANT_ID, async db => {
319
- const id = generateDevInfoID(userId)
320
+ return tenancy.doWithGlobalDB(TENANT_ID, async db => {
321
+ const id = dbCore.generateDevInfoID(userId)
320
322
  let devInfo
321
323
  try {
322
324
  devInfo = await db.get(id)
323
325
  } catch (err) {
324
326
  devInfo = { _id: id, userId }
325
327
  }
326
- devInfo.apiKey = encrypt(`${TENANT_ID}${SEPARATOR}${newid()}`)
328
+ devInfo.apiKey = encryption.encrypt(
329
+ `${TENANT_ID}${dbCore.SEPARATOR}${newid()}`
330
+ )
327
331
  await db.put(devInfo)
328
332
  return devInfo.apiKey
329
333
  })
@@ -1,5 +1,4 @@
1
- const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
2
- const { BuiltinPermissionID } = require("@budibase/backend-core/permissions")
1
+ const { roles, permissions } = require("@budibase/backend-core")
3
2
  const { createHomeScreen } = require("../../constants/screens")
4
3
  const { EMPTY_LAYOUT } = require("../../constants/layouts")
5
4
  const { cloneDeep } = require("lodash/fp")
@@ -134,8 +133,8 @@ exports.basicLinkedRow = (tableId, linkedRowId, linkField = "link") => {
134
133
  exports.basicRole = () => {
135
134
  return {
136
135
  name: "NewRole",
137
- inherits: BUILTIN_ROLE_IDS.BASIC,
138
- permissionId: BuiltinPermissionID.READ_ONLY,
136
+ inherits: roles.BUILTIN_ROLE_IDS.BASIC,
137
+ permissionId: permissions.BuiltinPermissionID.READ_ONLY,
139
138
  }
140
139
  }
141
140
 
@@ -23,15 +23,14 @@ import {
23
23
  AutomationMetadata,
24
24
  } from "../definitions/automations"
25
25
  import { WorkerCallback } from "./definitions"
26
- const { doInAppContext, getAppDB } = require("@budibase/backend-core/context")
27
- const { logAlertWithInfo, logWarn } = require("@budibase/backend-core/logging")
28
- const { processObject } = require("@budibase/string-templates")
26
+ import { context, logging } from "@budibase/backend-core"
27
+ import { processObject } from "@budibase/string-templates"
28
+ import { cloneDeep } from "lodash/fp"
29
+ import env from "../environment"
29
30
  const FILTER_STEP_ID = actions.ACTION_DEFINITIONS.FILTER.stepId
30
31
  const LOOP_STEP_ID = actions.ACTION_DEFINITIONS.LOOP.stepId
31
32
  const CRON_STEP_ID = triggerDefs.CRON.stepId
32
33
  const STOPPED_STATUS = { success: true, status: AutomationStatus.STOPPED }
33
- const { cloneDeep } = require("lodash/fp")
34
- const env = require("../environment")
35
34
 
36
35
  function typecastForLooping(loopStep: LoopStep, input: LoopInput) {
37
36
  if (!input || !input.binding) {
@@ -121,7 +120,7 @@ class Orchestrator {
121
120
 
122
121
  async getMetadata(): Promise<AutomationMetadata> {
123
122
  const metadataId = generateAutomationMetadataID(this._automation._id!)
124
- const db = getAppDB()
123
+ const db = context.getAppDB()
125
124
  let metadata: AutomationMetadata
126
125
  try {
127
126
  metadata = await db.get(metadataId)
@@ -138,7 +137,7 @@ class Orchestrator {
138
137
  if (!this._job.opts.repeat) {
139
138
  return
140
139
  }
141
- logWarn(
140
+ logging.logWarn(
142
141
  `CRON disabled reason=${reason} - ${this._appId}/${this._automation._id}`
143
142
  )
144
143
  const automation = this._automation
@@ -184,14 +183,14 @@ class Orchestrator {
184
183
  } else {
185
184
  metadata.errorCount = 0
186
185
  }
187
- const db = getAppDB()
186
+ const db = context.getAppDB()
188
187
  try {
189
188
  await db.put(metadata)
190
189
  } catch (err) {
191
- logAlertWithInfo(
190
+ logging.logAlertWithInfo(
192
191
  "Failed to write automation metadata",
193
192
  db.name,
194
- automation._id,
193
+ automation._id!,
195
194
  err
196
195
  )
197
196
  }
@@ -265,7 +264,7 @@ class Orchestrator {
265
264
 
266
265
  for (let step of automation.definition.steps) {
267
266
  stepCount++
268
- let input,
267
+ let input: any,
269
268
  iterations = 1,
270
269
  iterationCount = 0
271
270
 
@@ -283,7 +282,7 @@ class Orchestrator {
283
282
  let originalStepInput = cloneDeep(step.inputs)
284
283
  // Handle if the user has set a max iteration count or if it reaches the max limit set by us
285
284
  if (loopStep && input.binding) {
286
- let newInput = await processObject(
285
+ let newInput: any = await processObject(
287
286
  loopStep.inputs,
288
287
  cloneDeep(this._context)
289
288
  )
@@ -352,7 +351,7 @@ class Orchestrator {
352
351
  }
353
352
  }
354
353
  if (
355
- index === env.AUTOMATION_MAX_ITERATION ||
354
+ index === env.AUTOMATION_MAX_ITERATIONS ||
356
355
  index === parseInt(loopStep.inputs.iterations)
357
356
  ) {
358
357
  this.updateContextAndOutput(loopStepNumber, step, tempOutput, {
@@ -481,7 +480,7 @@ export function execute(job: Job, callback: WorkerCallback) {
481
480
  if (!appId) {
482
481
  throw new Error("Unable to execute, event doesn't contain app ID.")
483
482
  }
484
- doInAppContext(appId, async () => {
483
+ return context.doInAppContext(appId, async () => {
485
484
  const automationOrchestrator = new Orchestrator(job)
486
485
  try {
487
486
  const response = await automationOrchestrator.execute()
@@ -497,7 +496,7 @@ export const removeStalled = async (job: Job) => {
497
496
  if (!appId) {
498
497
  throw new Error("Unable to execute, event doesn't contain app ID.")
499
498
  }
500
- await doInAppContext(appId, async () => {
499
+ await context.doInAppContext(appId, async () => {
501
500
  const automationOrchestrator = new Orchestrator(job)
502
501
  await automationOrchestrator.stopCron("stalled")
503
502
  })
@@ -1,17 +1,12 @@
1
1
  import { default as threadUtils } from "./utils"
2
2
  threadUtils.threadSetup()
3
3
  import { WorkerCallback, QueryEvent, QueryVariable } from "./definitions"
4
- const ScriptRunner = require("../utilities/scriptRunner")
5
- const { getIntegration } = require("../integrations")
6
- const { processStringSync } = require("@budibase/string-templates")
7
- const { doInAppContext, getAppDB } = require("@budibase/backend-core/context")
8
- const {
9
- refreshOAuthToken,
10
- updateUserOAuth,
11
- } = require("@budibase/backend-core/auth")
12
- const { user: userCache } = require("@budibase/backend-core/cache")
13
- const { getGlobalIDFromUserMetadataID } = require("../db/utils")
14
- const { cloneDeep } = require("lodash/fp")
4
+ import ScriptRunner from "../utilities/scriptRunner"
5
+ import { getIntegration } from "../integrations"
6
+ import { processStringSync } from "@budibase/string-templates"
7
+ import { context, cache, auth } from "@budibase/backend-core"
8
+ import { getGlobalIDFromUserMetadataID } from "../db/utils"
9
+ import { cloneDeep } from "lodash/fp"
15
10
 
16
11
  const { isSQL } = require("../integrations/utils")
17
12
  const {
@@ -170,7 +165,7 @@ class QueryRunner {
170
165
  }
171
166
 
172
167
  async runAnotherQuery(queryId: string, parameters: any) {
173
- const db = getAppDB()
168
+ const db = context.getAppDB()
174
169
  const query = await db.get(queryId)
175
170
  const datasource = await db.get(query.datasourceId)
176
171
  return new QueryRunner(
@@ -194,7 +189,7 @@ class QueryRunner {
194
189
  throw new Error("No refresh token found for authenticated user")
195
190
  }
196
191
 
197
- const resp = await refreshOAuthToken(
192
+ const resp: any = await auth.refreshOAuthToken(
198
193
  oauth2.refreshToken,
199
194
  providerType,
200
195
  configId
@@ -204,8 +199,8 @@ class QueryRunner {
204
199
  // There are several other properties available in 'resp'
205
200
  if (!resp.err) {
206
201
  const globalUserId = getGlobalIDFromUserMetadataID(_id)
207
- await updateUserOAuth(globalUserId, resp)
208
- this.ctx.user = await userCache.getUser(globalUserId)
202
+ await auth.updateUserOAuth(globalUserId, resp)
203
+ this.ctx.user = await cache.user.getUser(globalUserId)
209
204
  } else {
210
205
  // In this event the user may have oAuth issues that
211
206
  // could require re-authenticating with their provider.
@@ -285,7 +280,7 @@ class QueryRunner {
285
280
  }
286
281
 
287
282
  export function execute(input: QueryEvent, callback: WorkerCallback) {
288
- doInAppContext(input.appId, async () => {
283
+ context.doInAppContext(input.appId!, async () => {
289
284
  const Runner = new QueryRunner(input)
290
285
  try {
291
286
  const response = await Runner.execute()
@@ -1,8 +1,7 @@
1
1
  import { QueryVariable } from "./definitions"
2
- const env = require("../environment")
3
- const db = require("../db")
4
- const redis = require("@budibase/backend-core/redis")
5
- const { SEPARATOR } = require("@budibase/backend-core/db")
2
+ import env from "../environment"
3
+ import db from "../db"
4
+ import { redis, db as dbCore } from "@budibase/backend-core"
6
5
 
7
6
  const VARIABLE_TTL_SECONDS = 3600
8
7
  let client: any
@@ -21,7 +20,7 @@ process.on("exit", async () => {
21
20
  })
22
21
 
23
22
  function makeVariableKey(queryId: string, variable: string) {
24
- return `${queryId}${SEPARATOR}${variable}`
23
+ return `${queryId}${dbCore.SEPARATOR}${variable}`
25
24
  }
26
25
 
27
26
  export function threadSetup() {
@@ -0,0 +1,3 @@
1
+ import { objectStore } from "@budibase/backend-core"
2
+
3
+ export const budibaseTempDir = objectStore.budibaseTempDir
@@ -1,7 +1,7 @@
1
1
  const { join } = require("path")
2
2
  const { ObjectStoreBuckets } = require("../../constants")
3
3
  const fs = require("fs")
4
- const { upload, retrieveToTmp, streamUpload } = require("./utilities")
4
+ const { objectStore } = require("@budibase/backend-core")
5
5
  const { resolve } = require("../centralPath")
6
6
  const env = require("../../environment")
7
7
  const TOP_LEVEL_PATH = join(__dirname, "..", "..", "..")
@@ -38,13 +38,13 @@ exports.backupClientLibrary = async appId => {
38
38
  let tmpManifestPath
39
39
  try {
40
40
  // Try to load the manifest from the new file location
41
- tmpManifestPath = await retrieveToTmp(
41
+ tmpManifestPath = await objectStore.retrieveToTmp(
42
42
  ObjectStoreBuckets.APPS,
43
43
  join(appId, "manifest.json")
44
44
  )
45
45
  } catch (error) {
46
46
  // Fallback to loading it from the old location for old apps
47
- tmpManifestPath = await retrieveToTmp(
47
+ tmpManifestPath = await objectStore.retrieveToTmp(
48
48
  ObjectStoreBuckets.APPS,
49
49
  join(
50
50
  appId,
@@ -58,19 +58,19 @@ exports.backupClientLibrary = async appId => {
58
58
  }
59
59
 
60
60
  // Copy existing client lib to tmp
61
- const tmpClientPath = await retrieveToTmp(
61
+ const tmpClientPath = await objectStore.retrieveToTmp(
62
62
  ObjectStoreBuckets.APPS,
63
63
  join(appId, "budibase-client.js")
64
64
  )
65
65
 
66
66
  // Upload manifest and client library as backups
67
- const manifestUpload = upload({
67
+ const manifestUpload = objectStore.upload({
68
68
  bucket: ObjectStoreBuckets.APPS,
69
69
  filename: join(appId, "manifest.json.bak"),
70
70
  path: tmpManifestPath,
71
71
  type: "application/json",
72
72
  })
73
- const clientUpload = upload({
73
+ const clientUpload = objectStore.upload({
74
74
  bucket: ObjectStoreBuckets.APPS,
75
75
  filename: join(appId, "budibase-client.js.bak"),
76
76
  path: tmpClientPath,
@@ -99,7 +99,7 @@ exports.updateClientLibrary = async appId => {
99
99
  }
100
100
 
101
101
  // Upload latest manifest and client library
102
- const manifestUpload = streamUpload(
102
+ const manifestUpload = objectStore.streamUpload(
103
103
  ObjectStoreBuckets.APPS,
104
104
  join(appId, "manifest.json"),
105
105
  fs.createReadStream(manifest),
@@ -107,7 +107,7 @@ exports.updateClientLibrary = async appId => {
107
107
  ContentType: "application/json",
108
108
  }
109
109
  )
110
- const clientUpload = streamUpload(
110
+ const clientUpload = objectStore.streamUpload(
111
111
  ObjectStoreBuckets.APPS,
112
112
  join(appId, "budibase-client.js"),
113
113
  fs.createReadStream(client),
@@ -126,25 +126,25 @@ exports.updateClientLibrary = async appId => {
126
126
  */
127
127
  exports.revertClientLibrary = async appId => {
128
128
  // Copy backups manifest to tmp directory
129
- const tmpManifestPath = await retrieveToTmp(
129
+ const tmpManifestPath = await objectStore.retrieveToTmp(
130
130
  ObjectStoreBuckets.APPS,
131
131
  join(appId, "manifest.json.bak")
132
132
  )
133
133
 
134
134
  // Copy backup client lib to tmp
135
- const tmpClientPath = await retrieveToTmp(
135
+ const tmpClientPath = await objectStore.retrieveToTmp(
136
136
  ObjectStoreBuckets.APPS,
137
137
  join(appId, "budibase-client.js.bak")
138
138
  )
139
139
 
140
140
  // Upload backups as new versions
141
- const manifestUpload = upload({
141
+ const manifestUpload = objectStore.upload({
142
142
  bucket: ObjectStoreBuckets.APPS,
143
143
  filename: join(appId, "manifest.json"),
144
144
  path: tmpManifestPath,
145
145
  type: "application/json",
146
146
  })
147
- const clientUpload = upload({
147
+ const clientUpload = objectStore.upload({
148
148
  bucket: ObjectStoreBuckets.APPS,
149
149
  filename: join(appId, "budibase-client.js"),
150
150
  path: tmpClientPath,
@@ -2,7 +2,13 @@ const { budibaseTempDir } = require("../budibaseDir")
2
2
  const fs = require("fs")
3
3
  const { join } = require("path")
4
4
  const uuid = require("uuid/v4")
5
+ const { context, objectStore } = require("@budibase/backend-core")
5
6
  const { ObjectStoreBuckets } = require("../../constants")
7
+ const { updateClientLibrary } = require("./clientLibrary")
8
+ const { checkSlashesInUrl } = require("../")
9
+ const env = require("../../environment")
10
+ const tar = require("tar")
11
+ const fetch = require("node-fetch")
6
12
  const {
7
13
  upload,
8
14
  retrieve,
@@ -11,13 +17,7 @@ const {
11
17
  downloadTarball,
12
18
  downloadTarballDirect,
13
19
  deleteFiles,
14
- } = require("./utilities")
15
- const { updateClientLibrary } = require("./clientLibrary")
16
- const { checkSlashesInUrl } = require("../")
17
- const env = require("../../environment")
18
- const { getAppId } = require("@budibase/backend-core/context")
19
- const tar = require("tar")
20
- const fetch = require("node-fetch")
20
+ } = objectStore
21
21
 
22
22
  const TOP_LEVEL_PATH = join(__dirname, "..", "..", "..")
23
23
  const NODE_MODULES_PATH = join(TOP_LEVEL_PATH, "node_modules")
@@ -165,7 +165,7 @@ exports.downloadTemplate = async (type, name) => {
165
165
  * Retrieves component libraries from object store (or tmp symlink if in local)
166
166
  */
167
167
  exports.getComponentLibraryManifest = async library => {
168
- const appId = getAppId()
168
+ const appId = context.getAppId()
169
169
  const filename = "manifest.json"
170
170
  /* istanbul ignore next */
171
171
  // when testing in cypress and so on we need to get the package