@budibase/server 2.1.32-alpha.1 → 2.1.32-alpha.10

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 (601) hide show
  1. package/builder/assets/{index.7176fd99.css → index.144dddb2.css} +1 -1
  2. package/builder/assets/{index.24cb0a61.js → index.d97a0eb1.js} +290 -290
  3. package/builder/index.html +2 -2
  4. package/coverage/clover.xml +3723 -3691
  5. package/coverage/coverage-final.json +113 -108
  6. package/coverage/lcov-report/index.html +170 -155
  7. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  8. package/coverage/lcov-report/src/api/controllers/{apikeys.js.html → apikeys.ts.html} +19 -19
  9. package/coverage/lcov-report/src/api/controllers/application.ts.html +70 -13
  10. package/coverage/lcov-report/src/api/controllers/auth.ts.html +3 -3
  11. package/coverage/lcov-report/src/api/controllers/{automation.js.html → automation.ts.html} +68 -68
  12. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/{cloud.js.html → cloud.ts.html} +40 -40
  14. package/coverage/lcov-report/src/api/controllers/component.ts.html +6 -3
  15. package/coverage/lcov-report/src/api/controllers/{datasource.js.html → datasource.ts.html} +239 -80
  16. package/coverage/lcov-report/src/api/controllers/deploy/{Deployment.js.html → Deployment.ts.html} +30 -21
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.html +6 -6
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
  20. package/coverage/lcov-report/src/api/controllers/index.html +120 -120
  21. package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
  22. package/coverage/lcov-report/src/api/controllers/{layout.js.html → layout.ts.html} +19 -19
  23. package/coverage/lcov-report/src/api/controllers/{metadata.js.html → metadata.ts.html} +19 -16
  24. package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/{permission.js.html → permission.ts.html} +73 -64
  26. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +1 -1
  27. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +1 -1
  28. package/coverage/lcov-report/src/api/controllers/plugin/index.html +11 -11
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +10 -13
  30. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +1 -1
  31. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +1 -1
  32. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +1 -1
  33. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +1 -1
  34. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
  35. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  36. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
  45. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +3 -3
  46. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
  47. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
  48. package/coverage/lcov-report/src/api/controllers/query/import/index.html +11 -11
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +8 -11
  50. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/index.html +2 -2
  58. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
  59. package/coverage/lcov-report/src/api/controllers/query/{validation.js.html → validation.ts.html} +10 -10
  60. package/coverage/lcov-report/src/api/controllers/{role.js.html → role.ts.html} +37 -49
  61. package/coverage/lcov-report/src/api/controllers/{routing.js.html → routing.ts.html} +58 -49
  62. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +6 -18
  63. package/coverage/lcov-report/src/api/controllers/row/external.js.html +4 -4
  64. package/coverage/lcov-report/src/api/controllers/row/index.html +35 -35
  65. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  66. package/coverage/lcov-report/src/api/controllers/row/internal.js.html +17 -20
  67. package/coverage/lcov-report/src/api/controllers/row/{internalSearch.js.html → internalSearch.ts.html} +175 -103
  68. package/coverage/lcov-report/src/api/controllers/row/{staticFormula.js.html → staticFormula.ts.html} +62 -47
  69. package/coverage/lcov-report/src/api/controllers/row/{utils.js.html → utils.ts.html} +57 -36
  70. package/coverage/lcov-report/src/api/controllers/screen.ts.html +29 -17
  71. package/coverage/lcov-report/src/api/controllers/{script.js.html → script.ts.html} +10 -7
  72. package/coverage/lcov-report/src/api/controllers/static/index.html +10 -10
  73. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +15 -27
  74. package/coverage/lcov-report/src/api/controllers/table/{bulkFormula.js.html → bulkFormula.ts.html} +89 -47
  75. package/coverage/lcov-report/src/api/controllers/table/{external.js.html → external.ts.html} +192 -87
  76. package/coverage/lcov-report/src/api/controllers/table/index.html +41 -41
  77. package/coverage/lcov-report/src/api/controllers/table/{index.js.html → index.ts.html} +28 -28
  78. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +3 -6
  79. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +56 -41
  80. package/coverage/lcov-report/src/api/controllers/{templates.js.html → templates.ts.html} +27 -18
  81. package/coverage/lcov-report/src/api/controllers/{user.js.html → user.ts.html} +72 -78
  82. package/coverage/lcov-report/src/api/controllers/view/{exporters.js.html → exporters.ts.html} +13 -7
  83. package/coverage/lcov-report/src/api/controllers/view/index.html +21 -21
  84. package/coverage/lcov-report/src/api/controllers/view/{index.js.html → index.ts.html} +68 -41
  85. package/coverage/lcov-report/src/api/controllers/view/{utils.js.html → utils.ts.html} +54 -36
  86. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.js.html +1 -1
  87. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +1 -1
  88. package/coverage/lcov-report/src/api/index.html +14 -14
  89. package/coverage/lcov-report/src/api/{index.js.html → index.ts.html} +28 -49
  90. package/coverage/lcov-report/src/api/routes/{analytics.js.html → analytics.ts.html} +7 -7
  91. package/coverage/lcov-report/src/api/routes/{apikeys.js.html → apikeys.ts.html} +11 -11
  92. package/coverage/lcov-report/src/api/routes/application.ts.html +35 -11
  93. package/coverage/lcov-report/src/api/routes/auth.ts.html +3 -3
  94. package/coverage/lcov-report/src/api/routes/{automation.js.html → automation.ts.html} +41 -35
  95. package/coverage/lcov-report/src/api/routes/backup.ts.html +18 -6
  96. package/coverage/lcov-report/src/api/routes/{deploy.js.html → cloud.ts.html} +18 -15
  97. package/coverage/lcov-report/src/api/routes/{component.js.html → component.ts.html} +10 -10
  98. package/coverage/lcov-report/src/api/routes/{datasource.js.html → datasource.ts.html} +53 -26
  99. package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
  100. package/coverage/lcov-report/src/api/routes/{dev.js.html → dev.ts.html} +54 -18
  101. package/coverage/lcov-report/src/api/routes/index.html +41 -41
  102. package/coverage/lcov-report/src/api/routes/index.ts.html +3 -3
  103. package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
  104. package/coverage/lcov-report/src/api/routes/{layout.js.html → layout.ts.html} +11 -11
  105. package/coverage/lcov-report/src/api/routes/{metadata.js.html → metadata.ts.html} +17 -17
  106. package/coverage/lcov-report/src/api/routes/{migrations.js.html → migrations.ts.html} +12 -12
  107. package/coverage/lcov-report/src/api/routes/{permission.js.html → permission.ts.html} +41 -17
  108. package/coverage/lcov-report/src/api/routes/plugin.ts.html +32 -8
  109. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  111. package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  113. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
  115. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
  116. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/{query.js.html → query.ts.html} +24 -33
  121. package/coverage/lcov-report/src/{utilities/routing/index.js.html → api/routes/role.ts.html} +32 -35
  122. package/coverage/lcov-report/src/api/routes/{routing.js.html → routing.ts.html} +10 -10
  123. package/coverage/lcov-report/src/api/routes/row.ts.html +8 -14
  124. package/coverage/lcov-report/src/api/routes/{screen.js.html → screen.ts.html} +29 -14
  125. package/coverage/lcov-report/src/api/routes/{script.js.html → script.ts.html} +10 -10
  126. package/coverage/lcov-report/src/api/routes/static.ts.html +9 -18
  127. package/coverage/lcov-report/src/api/routes/{table.js.html → table.ts.html} +16 -25
  128. package/coverage/lcov-report/src/api/routes/{templates.js.html → templates.ts.html} +11 -11
  129. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +12 -18
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +10 -10
  131. package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/{user.js.html → user.ts.html} +14 -20
  133. package/coverage/lcov-report/src/api/routes/utils/index.html +6 -6
  134. package/coverage/lcov-report/src/api/routes/utils/{validators.js.html → validators.ts.html} +39 -51
  135. package/coverage/lcov-report/src/api/routes/{view.js.html → view.ts.html} +33 -24
  136. package/coverage/lcov-report/src/api/routes/webhook.ts.html +3 -3
  137. package/coverage/lcov-report/src/app.ts.html +9 -12
  138. package/coverage/lcov-report/src/automations/actions.js.html +1 -1
  139. package/coverage/lcov-report/src/automations/automationUtils.js.html +1 -1
  140. package/coverage/lcov-report/src/automations/bullboard.js.html +1 -1
  141. package/coverage/lcov-report/src/automations/index.html +10 -10
  142. package/coverage/lcov-report/src/automations/index.js.html +1 -1
  143. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  144. package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
  145. package/coverage/lcov-report/src/automations/steps/bash.js.html +1 -1
  146. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  147. package/coverage/lcov-report/src/automations/steps/delay.js.html +1 -1
  148. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/discord.js.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/executeQuery.js.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/executeScript.js.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/filter.js.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/integromat.js.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/loop.js.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.js.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/queryRows.js.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.js.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/serverLog.js.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/slack.js.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/updateRow.js.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/utils.js.html +1 -1
  163. package/coverage/lcov-report/src/automations/steps/zapier.js.html +1 -1
  164. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  165. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +1 -1
  166. package/coverage/lcov-report/src/automations/triggerInfo/app.js.html +1 -1
  167. package/coverage/lcov-report/src/automations/triggerInfo/cron.js.html +1 -1
  168. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/index.js.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.js.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.js.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.js.html +1 -1
  173. package/coverage/lcov-report/src/automations/triggerInfo/webhook.js.html +1 -1
  174. package/coverage/lcov-report/src/automations/triggers.js.html +11 -14
  175. package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
  176. package/coverage/lcov-report/src/constants/index.html +5 -5
  177. package/coverage/lcov-report/src/constants/index.js.html +7 -13
  178. package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
  179. package/coverage/lcov-report/src/constants/screens.js.html +3 -3
  180. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +2023 -0
  181. package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +541 -0
  182. package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +427 -0
  183. package/coverage/lcov-report/src/db/defaultData/index.html +176 -0
  184. package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +403 -0
  185. package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +559 -0
  186. package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
  187. package/coverage/lcov-report/src/db/inMemoryView.js.html +4 -4
  188. package/coverage/lcov-report/src/db/index.html +1 -1
  189. package/coverage/lcov-report/src/db/index.js.html +1 -1
  190. package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +13 -151
  191. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +226 -0
  192. package/coverage/lcov-report/src/db/linkedRows/index.html +28 -13
  193. package/coverage/lcov-report/src/db/linkedRows/index.js.html +3 -3
  194. package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +4 -4
  195. package/coverage/lcov-report/src/db/newid.js.html +1 -1
  196. package/coverage/lcov-report/src/db/utils.ts.html +3 -3
  197. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  198. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  199. package/coverage/lcov-report/src/definitions/index.html +1 -1
  200. package/coverage/lcov-report/src/environment.js.html +1 -1
  201. package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
  202. package/coverage/lcov-report/src/events/index.html +1 -1
  203. package/coverage/lcov-report/src/events/index.js.html +1 -1
  204. package/coverage/lcov-report/src/events/utils.js.html +1 -1
  205. package/coverage/lcov-report/src/index.html +17 -32
  206. package/coverage/lcov-report/src/index.ts.html +1 -1
  207. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  208. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  209. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  210. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  211. package/coverage/lcov-report/src/integrations/base/sql.ts.html +2 -2
  212. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +2 -2
  213. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
  219. package/coverage/lcov-report/src/integrations/index.html +4 -4
  220. package/coverage/lcov-report/src/integrations/index.ts.html +58 -46
  221. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  223. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  224. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  226. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  227. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  228. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  229. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  230. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  232. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  233. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  234. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  235. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  236. package/coverage/lcov-report/src/middleware/authorized.ts.html +30 -51
  237. package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
  238. package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
  239. package/coverage/lcov-report/src/middleware/index.html +10 -10
  240. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  241. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  242. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  243. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
  245. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +3 -3
  246. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  247. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +9 -9
  266. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +7 -10
  268. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -10
  270. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
  271. package/coverage/lcov-report/src/migrations/index.html +1 -1
  272. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  274. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  275. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  276. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  277. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  278. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  279. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +16 -10
  281. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +9 -21
  282. package/coverage/lcov-report/src/sdk/app/backups/index.html +16 -16
  283. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/tables/index.html +5 -5
  286. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +4 -4
  287. package/coverage/lcov-report/src/sdk/index.html +1 -1
  288. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  289. package/coverage/lcov-report/src/startup.ts.html +3 -3
  290. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +61 -49
  291. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
  292. package/coverage/lcov-report/src/tests/utilities/index.html +15 -15
  293. package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
  294. package/coverage/lcov-report/src/tests/utilities/structures.js.html +9 -12
  295. package/coverage/lcov-report/src/threads/automation.ts.html +20 -23
  296. package/coverage/lcov-report/src/threads/index.html +24 -24
  297. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  298. package/coverage/lcov-report/src/threads/query.ts.html +18 -33
  299. package/coverage/lcov-report/src/threads/utils.ts.html +10 -13
  300. package/coverage/lcov-report/src/utilities/{budibaseDir.js.html → budibaseDir.ts.html} +5 -5
  301. package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
  302. package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
  303. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +13 -13
  304. package/coverage/lcov-report/src/utilities/fileSystem/index.html +5 -20
  305. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +15 -15
  306. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
  307. package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
  308. package/coverage/lcov-report/src/utilities/index.html +44 -44
  309. package/coverage/lcov-report/src/utilities/{index.js.html → index.ts.html} +70 -46
  310. package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
  311. package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
  312. package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
  313. package/coverage/lcov-report/src/utilities/{redis.js.html → redis.ts.html} +36 -33
  314. package/coverage/lcov-report/src/utilities/routing/index.html +6 -6
  315. package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
  316. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +38 -23
  317. package/coverage/lcov-report/src/utilities/rowProcessor/{index.js.html → index.ts.html} +106 -337
  318. package/coverage/lcov-report/src/utilities/rowProcessor/map.js.html +370 -0
  319. package/coverage/lcov-report/src/utilities/rowProcessor/{utils.js.html → utils.ts.html} +43 -31
  320. package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
  321. package/coverage/lcov-report/src/utilities/{security.js.html → security.ts.html} +49 -67
  322. package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
  323. package/coverage/lcov-report/src/utilities/usageQuota/index.html +18 -18
  324. package/coverage/lcov-report/src/utilities/usageQuota/{rows.js.html → rows.ts.html} +27 -39
  325. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  326. package/coverage/lcov-report/src/utilities/{users.js.html → users.ts.html} +22 -28
  327. package/coverage/lcov-report/src/utilities/{workerRequests.js.html → workerRequests.ts.html} +69 -54
  328. package/coverage/lcov-report/src/watch.ts.html +8 -11
  329. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  330. package/coverage/lcov.info +6619 -6700
  331. package/dist/api/controllers/apikeys.js +12 -9
  332. package/dist/api/controllers/application.js +13 -2
  333. package/dist/api/controllers/automation.js +104 -84
  334. package/dist/api/controllers/cloud.js +84 -71
  335. package/dist/api/controllers/component.js +4 -2
  336. package/dist/api/controllers/datasource.js +144 -92
  337. package/dist/api/controllers/deploy/Deployment.js +10 -6
  338. package/dist/api/controllers/layout.js +18 -15
  339. package/dist/api/controllers/metadata.js +51 -37
  340. package/dist/api/controllers/permission.js +52 -43
  341. package/dist/api/controllers/plugin/index.js +6 -7
  342. package/dist/api/controllers/public/tables.js +29 -9
  343. package/dist/api/controllers/query/import/index.js +1 -2
  344. package/dist/api/controllers/query/validation.js +41 -33
  345. package/dist/api/controllers/role.js +29 -27
  346. package/dist/api/controllers/routing.js +71 -58
  347. package/dist/api/controllers/row/ExternalRequest.js +6 -7
  348. package/dist/api/controllers/row/external.js +3 -3
  349. package/dist/api/controllers/row/internal.js +11 -12
  350. package/dist/api/controllers/row/internalSearch.js +95 -80
  351. package/dist/api/controllers/row/staticFormula.js +85 -75
  352. package/dist/api/controllers/row/utils.js +118 -84
  353. package/dist/api/controllers/screen.js +81 -66
  354. package/dist/api/controllers/script.js +13 -6
  355. package/dist/api/controllers/static/index.js +9 -11
  356. package/dist/api/controllers/table/bulkFormula.js +47 -35
  357. package/dist/api/controllers/table/external.js +67 -54
  358. package/dist/api/controllers/table/index.js +66 -33
  359. package/dist/api/controllers/table/internal.js +1 -2
  360. package/dist/api/controllers/table/utils.js +39 -35
  361. package/dist/api/controllers/templates.js +17 -10
  362. package/dist/api/controllers/user.js +82 -70
  363. package/dist/api/controllers/view/exporters.js +8 -4
  364. package/dist/api/controllers/view/index.js +201 -153
  365. package/dist/api/controllers/view/utils.js +151 -121
  366. package/dist/api/index.js +38 -34
  367. package/dist/api/routes/analytics.js +29 -3
  368. package/dist/api/routes/apikeys.js +33 -7
  369. package/dist/api/routes/application.js +8 -9
  370. package/dist/api/routes/auth.js +1 -2
  371. package/dist/api/routes/automation.js +46 -20
  372. package/dist/api/routes/backup.js +3 -4
  373. package/dist/api/routes/cloud.js +32 -6
  374. package/dist/api/routes/component.js +32 -6
  375. package/dist/api/routes/datasource.js +39 -13
  376. package/dist/api/routes/deploy.js +34 -8
  377. package/dist/api/routes/dev.js +36 -10
  378. package/dist/api/routes/integration.js +10 -7
  379. package/dist/api/routes/layout.js +33 -7
  380. package/dist/api/routes/metadata.js +36 -10
  381. package/dist/api/routes/migrations.js +32 -6
  382. package/dist/api/routes/permission.js +38 -12
  383. package/dist/api/routes/plugin.js +5 -5
  384. package/dist/api/routes/query.js +42 -15
  385. package/dist/api/routes/role.js +36 -10
  386. package/dist/api/routes/routing.js +32 -6
  387. package/dist/api/routes/row.js +2 -1
  388. package/dist/api/routes/screen.js +35 -9
  389. package/dist/api/routes/script.js +32 -6
  390. package/dist/api/routes/static.js +9 -9
  391. package/dist/api/routes/table.js +40 -13
  392. package/dist/api/routes/templates.js +33 -7
  393. package/dist/api/routes/tests/utilities/TestFunctions.js +6 -8
  394. package/dist/api/routes/user.js +40 -13
  395. package/dist/api/routes/utils/validators.js +142 -126
  396. package/dist/api/routes/view.js +38 -12
  397. package/dist/api/routes/webhook.js +1 -2
  398. package/dist/app.js +3 -4
  399. package/dist/automations/triggers.js +5 -6
  400. package/dist/constants/index.js +3 -5
  401. package/dist/constants/screens.js +2 -2
  402. package/dist/db/defaultData/datasource_bb_default.js +565 -0
  403. package/dist/db/defaultData/employeeImport.js +153 -0
  404. package/dist/db/defaultData/expensesImport.js +115 -0
  405. package/dist/db/defaultData/inventoryImport.js +107 -0
  406. package/dist/db/defaultData/jobsImport.js +150 -0
  407. package/dist/db/inMemoryView.js +3 -3
  408. package/dist/db/linkedRows/LinkController.js +4 -31
  409. package/dist/db/linkedRows/LinkDocument.js +32 -0
  410. package/dist/db/linkedRows/index.js +2 -2
  411. package/dist/db/linkedRows/linkUtils.js +3 -3
  412. package/dist/db/utils.js +1 -1
  413. package/dist/db/views/staticViews.js +4 -4
  414. package/dist/integrations/index.js +15 -6
  415. package/dist/middleware/authorized.js +22 -21
  416. package/dist/migrations/functions/appUrls.js +2 -2
  417. package/dist/migrations/functions/usageQuotas/syncApps.js +3 -4
  418. package/dist/migrations/functions/usageQuotas/syncRows.js +3 -4
  419. package/dist/migrations/functions/userEmailViewCasing.js +3 -3
  420. package/dist/package.json +6 -6
  421. package/dist/sdk/app/backups/exports.js +1 -2
  422. package/dist/sdk/app/backups/imports.js +2 -3
  423. package/dist/sdk/app/tables/index.js +1 -1
  424. package/dist/startup.js +4 -4
  425. package/dist/tests/utilities/TestConfiguration.js +27 -35
  426. package/dist/tests/utilities/structures.js +3 -4
  427. package/dist/threads/automation.js +15 -16
  428. package/dist/threads/query.js +17 -19
  429. package/dist/threads/utils.js +11 -9
  430. package/dist/tsconfig.build.tsbuildinfo +1 -1
  431. package/dist/utilities/budibaseDir.js +4 -2
  432. package/dist/utilities/fileSystem/clientLibrary.js +12 -12
  433. package/dist/utilities/fileSystem/index.js +3 -3
  434. package/dist/utilities/index.js +102 -75
  435. package/dist/utilities/redis.js +100 -65
  436. package/dist/utilities/routing/index.js +27 -23
  437. package/dist/utilities/rowProcessor/index.js +124 -191
  438. package/dist/utilities/rowProcessor/map.js +96 -0
  439. package/dist/utilities/rowProcessor/utils.js +35 -26
  440. package/dist/utilities/security.js +39 -35
  441. package/dist/utilities/usageQuota/rows.js +56 -49
  442. package/dist/utilities/users.js +31 -28
  443. package/dist/utilities/workerRequests.js +115 -82
  444. package/dist/watch.js +1 -2
  445. package/package.json +7 -7
  446. package/scripts/exportAppTemplate.js +2 -2
  447. package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
  448. package/src/api/controllers/application.ts +22 -3
  449. package/src/api/controllers/auth.ts +2 -2
  450. package/src/api/controllers/{automation.js → automation.ts} +48 -48
  451. package/src/api/controllers/{cloud.js → cloud.ts} +24 -24
  452. package/src/api/controllers/component.ts +2 -1
  453. package/src/api/controllers/{datasource.js → datasource.ts} +100 -47
  454. package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
  455. package/src/api/controllers/{layout.js → layout.ts} +8 -8
  456. package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
  457. package/src/api/controllers/{permission.js → permission.ts} +49 -46
  458. package/src/api/controllers/plugin/index.ts +4 -5
  459. package/src/api/controllers/public/tables.ts +2 -2
  460. package/src/api/controllers/query/import/index.ts +2 -3
  461. package/src/api/controllers/query/{validation.js → validation.ts} +7 -7
  462. package/src/api/controllers/{role.js → role.ts} +21 -25
  463. package/src/api/controllers/{routing.js → routing.ts} +37 -34
  464. package/src/api/controllers/row/ExternalRequest.ts +4 -8
  465. package/src/api/controllers/row/external.js +3 -3
  466. package/src/api/controllers/row/internal.js +11 -12
  467. package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
  468. package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +28 -23
  469. package/src/api/controllers/row/{utils.js → utils.ts} +25 -18
  470. package/src/api/controllers/screen.ts +10 -6
  471. package/src/api/controllers/script.ts +12 -0
  472. package/src/api/controllers/static/index.ts +9 -13
  473. package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
  474. package/src/api/controllers/table/{external.js → external.ts} +86 -51
  475. package/src/api/controllers/table/{index.js → index.ts} +17 -17
  476. package/src/api/controllers/table/internal.ts +1 -2
  477. package/src/api/controllers/table/utils.ts +26 -21
  478. package/src/api/controllers/{templates.js → templates.ts} +10 -7
  479. package/src/api/controllers/{user.js → user.ts} +47 -49
  480. package/src/api/controllers/view/{exporters.js → exporters.ts} +5 -3
  481. package/src/api/controllers/view/{index.js → index.ts} +36 -27
  482. package/src/api/controllers/view/{utils.js → utils.ts} +26 -20
  483. package/src/api/{index.js → index.ts} +15 -22
  484. package/src/api/routes/analytics.ts +9 -0
  485. package/src/api/routes/apikeys.ts +12 -0
  486. package/src/api/routes/application.ts +17 -9
  487. package/src/api/routes/auth.ts +2 -2
  488. package/src/api/routes/automation.ts +87 -0
  489. package/src/api/routes/backup.ts +8 -4
  490. package/src/api/routes/cloud.ts +18 -0
  491. package/src/api/routes/component.ts +14 -0
  492. package/src/api/routes/datasource.ts +60 -0
  493. package/src/api/routes/deploy.ts +21 -0
  494. package/src/api/routes/dev.ts +38 -0
  495. package/src/api/routes/integration.ts +16 -0
  496. package/src/api/routes/layout.ts +16 -0
  497. package/src/api/routes/{metadata.js → metadata.ts} +13 -13
  498. package/src/api/routes/migrations.ts +14 -0
  499. package/src/api/routes/permission.ts +41 -0
  500. package/src/api/routes/plugin.ts +14 -6
  501. package/src/api/routes/{query.js → query.ts} +17 -20
  502. package/src/api/routes/role.ts +24 -0
  503. package/src/api/routes/routing.ts +14 -0
  504. package/src/api/routes/row.ts +3 -5
  505. package/src/api/routes/screen.ts +23 -0
  506. package/src/api/routes/script.ts +10 -0
  507. package/src/api/routes/static.ts +4 -7
  508. package/src/api/routes/{table.js → table.ts} +9 -12
  509. package/src/api/routes/templates.ts +16 -0
  510. package/src/api/routes/tests/backup.spec.js +9 -1
  511. package/src/api/routes/tests/permissions.spec.js +2 -1
  512. package/src/api/routes/tests/role.spec.js +3 -5
  513. package/src/api/routes/tests/routing.spec.js +2 -1
  514. package/src/api/routes/tests/row.spec.js +3 -4
  515. package/src/api/routes/tests/user.spec.js +2 -1
  516. package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
  517. package/src/api/routes/{user.js → user.ts} +7 -9
  518. package/src/api/routes/utils/{validators.js → validators.ts} +33 -37
  519. package/src/api/routes/view.ts +34 -0
  520. package/src/api/routes/webhook.ts +2 -2
  521. package/src/app.ts +3 -4
  522. package/src/automations/triggers.js +5 -6
  523. package/src/constants/index.js +3 -5
  524. package/src/constants/screens.js +2 -2
  525. package/src/db/defaultData/datasource_bb_default.js +646 -0
  526. package/src/db/defaultData/employeeImport.js +152 -0
  527. package/src/db/defaultData/expensesImport.js +114 -0
  528. package/src/db/defaultData/inventoryImport.js +106 -0
  529. package/src/db/defaultData/jobsImport.js +158 -0
  530. package/src/db/inMemoryView.js +3 -3
  531. package/src/db/linkedRows/LinkController.js +4 -50
  532. package/src/db/linkedRows/LinkDocument.js +47 -0
  533. package/src/db/linkedRows/index.js +2 -2
  534. package/src/db/linkedRows/linkUtils.js +3 -3
  535. package/src/db/utils.ts +2 -2
  536. package/src/db/views/staticViews.js +4 -4
  537. package/src/integrations/base/sql.ts +1 -1
  538. package/src/integrations/base/sqlTable.ts +1 -1
  539. package/src/integrations/index.ts +45 -41
  540. package/src/middleware/authorized.ts +21 -28
  541. package/src/middleware/tests/authorized.spec.js +5 -6
  542. package/src/migrations/functions/appUrls.ts +2 -2
  543. package/src/migrations/functions/tests/appUrls.spec.js +4 -4
  544. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +14 -9
  545. package/src/migrations/functions/usageQuotas/syncApps.ts +3 -4
  546. package/src/migrations/functions/usageQuotas/syncRows.ts +3 -4
  547. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
  548. package/src/migrations/functions/userEmailViewCasing.ts +3 -3
  549. package/src/sdk/app/backups/exports.ts +5 -3
  550. package/src/sdk/app/backups/imports.ts +3 -7
  551. package/src/sdk/app/tables/index.ts +1 -1
  552. package/src/startup.ts +2 -2
  553. package/src/tests/utilities/TestConfiguration.js +39 -35
  554. package/src/tests/utilities/structures.js +3 -4
  555. package/src/threads/automation.ts +14 -15
  556. package/src/threads/query.ts +11 -16
  557. package/src/threads/utils.ts +4 -5
  558. package/src/utilities/budibaseDir.ts +3 -0
  559. package/src/utilities/fileSystem/clientLibrary.js +12 -12
  560. package/src/utilities/fileSystem/index.js +8 -8
  561. package/src/utilities/{index.js → index.ts} +40 -32
  562. package/src/utilities/{redis.js → redis.ts} +21 -20
  563. package/src/utilities/routing/index.ts +32 -0
  564. package/src/utilities/rowProcessor/{index.js → index.ts} +65 -142
  565. package/src/utilities/rowProcessor/map.js +95 -0
  566. package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
  567. package/src/utilities/security.ts +65 -0
  568. package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
  569. package/src/utilities/{users.js → users.ts} +11 -13
  570. package/src/utilities/{workerRequests.js → workerRequests.ts} +43 -38
  571. package/src/watch.ts +2 -3
  572. package/coverage/lcov-report/src/api/routes/cloud.js.html +0 -127
  573. package/coverage/lcov-report/src/api/routes/integration.js.html +0 -121
  574. package/coverage/lcov-report/src/api/routes/role.js.html +0 -130
  575. package/coverage/lcov-report/src/module.d.ts.html +0 -127
  576. package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +0 -193
  577. package/dist/utilities/fileSystem/utilities.js +0 -22
  578. package/src/api/controllers/script.js +0 -11
  579. package/src/api/routes/analytics.js +0 -9
  580. package/src/api/routes/apikeys.js +0 -12
  581. package/src/api/routes/automation.js +0 -85
  582. package/src/api/routes/cloud.js +0 -14
  583. package/src/api/routes/component.js +0 -14
  584. package/src/api/routes/datasource.js +0 -51
  585. package/src/api/routes/deploy.js +0 -17
  586. package/src/api/routes/dev.js +0 -26
  587. package/src/api/routes/integration.js +0 -12
  588. package/src/api/routes/layout.js +0 -16
  589. package/src/api/routes/migrations.js +0 -14
  590. package/src/api/routes/permission.js +0 -33
  591. package/src/api/routes/role.js +0 -15
  592. package/src/api/routes/routing.js +0 -14
  593. package/src/api/routes/screen.js +0 -18
  594. package/src/api/routes/script.js +0 -10
  595. package/src/api/routes/templates.js +0 -16
  596. package/src/api/routes/view.js +0 -31
  597. package/src/module.d.ts +0 -14
  598. package/src/utilities/budibaseDir.js +0 -3
  599. package/src/utilities/fileSystem/utilities.js +0 -36
  600. package/src/utilities/routing/index.js +0 -25
  601. package/src/utilities/security.js +0 -71
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for src/api/controllers/automation.js</title>
6
+ <title>Code coverage report for src/api/controllers/automation.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="../../../prettify.css" />
9
9
  <link rel="stylesheet" href="../../../base.css" />
@@ -19,34 +19,34 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> automation.js</h1>
22
+ <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> automation.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">84.55% </span>
26
+ <span class="strong">83.7% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>115/136</span>
28
+ <span class='fraction'>113/135</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">62.5% </span>
33
+ <span class="strong">54.83% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>25/40</span>
35
+ <span class='fraction'>17/31</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">83.33% </span>
40
+ <span class="strong">80% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>20/24</span>
42
+ <span class='fraction'>20/25</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">83.96% </span>
47
+ <span class="strong">83.72% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>110/131</span>
49
+ <span class='fraction'>108/129</span>
50
50
  </div>
51
51
 
52
52
 
@@ -350,19 +350,12 @@
350
350
  <a name='L285'></a><a href='#L285'>285</a>
351
351
  <a name='L286'></a><a href='#L286'>286</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
352
352
  <span class="cline-any cline-yes">44x</span>
353
- <span class="cline-any cline-neutral">&nbsp;</span>
354
- <span class="cline-any cline-neutral">&nbsp;</span>
355
- <span class="cline-any cline-neutral">&nbsp;</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
353
  <span class="cline-any cline-yes">44x</span>
358
354
  <span class="cline-any cline-neutral">&nbsp;</span>
359
355
  <span class="cline-any cline-neutral">&nbsp;</span>
360
356
  <span class="cline-any cline-neutral">&nbsp;</span>
361
357
  <span class="cline-any cline-neutral">&nbsp;</span>
362
358
  <span class="cline-any cline-yes">44x</span>
363
- <span class="cline-any cline-yes">44x</span>
364
- <span class="cline-any cline-yes">44x</span>
365
- <span class="cline-any cline-yes">44x</span>
366
359
  <span class="cline-any cline-neutral">&nbsp;</span>
367
360
  <span class="cline-any cline-neutral">&nbsp;</span>
368
361
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -371,6 +364,8 @@
371
364
  <span class="cline-any cline-yes">44x</span>
372
365
  <span class="cline-any cline-yes">44x</span>
373
366
  <span class="cline-any cline-yes">44x</span>
367
+ <span class="cline-any cline-yes">44x</span>
368
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
369
  <span class="cline-any cline-neutral">&nbsp;</span>
375
370
  <span class="cline-any cline-yes">44x</span>
376
371
  <span class="cline-any cline-yes">44x</span>
@@ -453,12 +448,18 @@
453
448
  <span class="cline-any cline-neutral">&nbsp;</span>
454
449
  <span class="cline-any cline-neutral">&nbsp;</span>
455
450
  <span class="cline-any cline-yes">44x</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
454
  <span class="cline-any cline-yes">8x</span>
457
455
  <span class="cline-any cline-yes">7x</span>
458
456
  <span class="cline-any cline-neutral">&nbsp;</span>
459
457
  <span class="cline-any cline-neutral">&nbsp;</span>
460
458
  <span class="cline-any cline-yes">44x</span>
461
459
  <span class="cline-any cline-neutral">&nbsp;</span>
460
+ <span class="cline-any cline-neutral">&nbsp;</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
463
  <span class="cline-any cline-yes">6x</span>
463
464
  <span class="cline-any cline-yes">6x</span>
464
465
  <span class="cline-any cline-yes">4x</span>
@@ -501,7 +502,6 @@
501
502
  <span class="cline-any cline-neutral">&nbsp;</span>
502
503
  <span class="cline-any cline-neutral">&nbsp;</span>
503
504
  <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
505
  <span class="cline-any cline-yes">6x</span>
506
506
  <span class="cline-any cline-neutral">&nbsp;</span>
507
507
  <span class="cline-any cline-yes">6x</span>
@@ -633,29 +633,24 @@
633
633
  <span class="cline-any cline-yes">2x</span>
634
634
  <span class="cline-any cline-yes">2x</span>
635
635
  <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const actions = require("../../automations/actions")
637
- const triggers = require("../../automations/triggers")
638
- const {
636
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import actions from "../../automations/actions"
637
+ import triggers from "../../automations/triggers"
638
+ import {
639
639
  getAutomationParams,
640
640
  generateAutomationID,
641
641
  DocumentType,
642
- } = require("../../db/utils")
643
- const {
642
+ } from "../../db/utils"
643
+ import {
644
644
  checkForWebhooks,
645
645
  updateTestHistory,
646
646
  removeDeprecated,
647
- } = require("../../automations/utils")
648
- const { deleteEntityMetadata } = require("../../utilities")
649
- const { MetadataTypes } = require("../../constants")
650
- const { setTestFlag, clearTestFlag } = require("../../utilities/redis")
651
- const {
652
- getAppDB,
653
- getProdAppDB,
654
- doInAppContext,
655
- } = require("@budibase/backend-core/context")
656
- const { events } = require("@budibase/backend-core")
657
- const { app } = require("@budibase/backend-core/cache")
658
- const { automations } = require("@budibase/pro")
647
+ } from "../../automations/utils"
648
+ import { deleteEntityMetadata } from "../../utilities"
649
+ import { MetadataTypes } from "../../constants"
650
+ import { setTestFlag, clearTestFlag } from "../../utilities/redis"
651
+ import { context, cache, events } from "@budibase/backend-core"
652
+ import { automations } from "@budibase/pro"
653
+ import { Automation, BBContext } from "@budibase/types"
659
654
  &nbsp;
660
655
  const ACTION_DEFS = removeDeprecated(actions.ACTION_DEFINITIONS)
661
656
  const TRIGGER_DEFS = removeDeprecated(triggers.TRIGGER_DEFINITIONS)
@@ -666,7 +661,7 @@ const TRIGGER_DEFS = removeDeprecated(triggers.TRIGGER_DEFINITIONS)
666
661
  * *
667
662
  *************************/
668
663
  &nbsp;
669
- async function cleanupAutomationMetadata(automationId) {
664
+ async function cleanupAutomationMetadata(automationId: string) {
670
665
  await deleteEntityMetadata(MetadataTypes.AUTOMATION_TEST_INPUT, automationId)
671
666
  await deleteEntityMetadata(
672
667
  MetadataTypes.AUTOMATION_TEST_HISTORY,
@@ -674,7 +669,7 @@ async function cleanupAutomationMetadata(automationId) {
674
669
  )
675
670
  }
676
671
  &nbsp;
677
- function cleanAutomationInputs(automation) {
672
+ function cleanAutomationInputs(automation: Automation) {
678
673
  <span class="missing-if-branch" title="if path not taken" >I</span>if (automation == null) {
679
674
  <span class="cstat-no" title="statement not covered" > return automation</span>
680
675
  }
@@ -698,14 +693,14 @@ function cleanAutomationInputs(automation) {
698
693
  return automation
699
694
  }
700
695
  &nbsp;
701
- exports.create = async function (ctx) {
702
- const db = getAppDB()
696
+ export async function create(ctx: BBContext) {
697
+ const db = context.getAppDB()
703
698
  let automation = ctx.request.body
704
699
  automation.appId = ctx.appId
705
700
  &nbsp;
706
701
  // call through to update if already exists
707
702
  if (automation._id &amp;&amp; automation._rev) {
708
- return exports.update(ctx)
703
+ return update(ctx)
709
704
  }
710
705
  &nbsp;
711
706
  automation._id = generateAutomationID()
@@ -732,17 +727,23 @@ exports.create = async function (ctx) {
732
727
  }
733
728
  }
734
729
  &nbsp;
735
- const getNewSteps = (oldAutomation, automation) =&gt; {
730
+ export function getNewSteps(oldAutomation: Automation, automation: Automation) {
736
731
  const oldStepIds = oldAutomation.definition.steps.map(s =&gt; s.id)
737
732
  return automation.definition.steps.filter(s =&gt; !oldStepIds.includes(s.id))
738
733
  }
739
734
  &nbsp;
740
- const getDeletedSteps = (oldAutomation, automation) =&gt; {
735
+ export function getDeletedSteps(
736
+ oldAutomation: Automation,
737
+ automation: Automation
738
+ ) {
741
739
  const stepIds = automation.definition.steps.map(s =&gt; s.id)
742
740
  return oldAutomation.definition.steps.filter(s =&gt; !stepIds.includes(s.id))
743
741
  }
744
742
  &nbsp;
745
- const handleStepEvents = async (oldAutomation, automation) =&gt; {
743
+ export async function handleStepEvents(
744
+ oldAutomation: Automation,
745
+ automation: Automation
746
+ ) {
746
747
  // new steps
747
748
  const newSteps = getNewSteps(oldAutomation, automation)
748
749
  for (let step of newSteps) {
@@ -756,8 +757,8 @@ const handleStepEvents = async (oldAutomation, automation) =&gt; {
756
757
  }
757
758
  }
758
759
  &nbsp;
759
- exports.update = async function (ctx) {
760
- const db = getAppDB()
760
+ export async function update(ctx: BBContext) {
761
+ const db = context.getAppDB()
761
762
  let automation = ctx.request.body
762
763
  automation.appId = ctx.appId
763
764
  const oldAutomation = await db.get(automation._id)
@@ -781,9 +782,8 @@ exports.update = async function (ctx) {
781
782
  if (oldAutoTrigger &amp;&amp; oldAutoTrigger.id !== newAutoTrigger.id) {
782
783
  await events.automation.triggerUpdated(automation)
783
784
  await deleteEntityMetadata(
784
- ctx.appId,
785
785
  MetadataTypes.AUTOMATION_TEST_INPUT,
786
- automation._id
786
+ automation._id!
787
787
  )
788
788
  }
789
789
  &nbsp;
@@ -800,8 +800,8 @@ exports.update = async function (ctx) {
800
800
  }
801
801
  }
802
802
  &nbsp;
803
- exports.fetch = async function (ctx) {
804
- const db = getAppDB()
803
+ export async function fetch(ctx: BBContext) {
804
+ const db = context.getAppDB()
805
805
  const response = await db.allDocs(
806
806
  getAutomationParams(null, {
807
807
  include_docs: true,
@@ -810,13 +810,13 @@ exports.fetch = async function (ctx) {
810
810
  ctx.body = response.rows.map(row =&gt; row.doc)
811
811
  }
812
812
  &nbsp;
813
- exports.find = async function (ctx) {
814
- const db = getAppDB()
813
+ export async function find(ctx: BBContext) {
814
+ const db = context.getAppDB()
815
815
  ctx.body = await db.get(ctx.params.id)
816
816
  }
817
817
  &nbsp;
818
- exports.destroy = async function (ctx) {
819
- const db = getAppDB()
818
+ export async function destroy(ctx: BBContext) {
819
+ const db = context.getAppDB()
820
820
  const automationId = ctx.params.id
821
821
  const oldAutomation = await db.get(automationId)
822
822
  await checkForWebhooks({
@@ -828,38 +828,38 @@ exports.destroy = async function (ctx) {
828
828
  await events.automation.deleted(oldAutomation)
829
829
  }
830
830
  &nbsp;
831
- exports.logSearch = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
831
+ export async function <span class="fstat-no" title="function not covered" >logSearch(</span>ctx: BBContext) {
832
832
  <span class="cstat-no" title="statement not covered" > ctx.body = await automations.logs.logSearch(ctx.request.body)</span>
833
833
  }
834
834
  &nbsp;
835
- exports.clearLogError = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
835
+ export async function <span class="fstat-no" title="function not covered" >clearLogError(</span>ctx: BBContext) {
836
836
  const { automationId, appId } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
837
- <span class="cstat-no" title="statement not covered" > await doInAppContext(appId, <span class="fstat-no" title="function not covered" >as</span>ync () =&gt; {</span>
838
- const db = <span class="cstat-no" title="statement not covered" >getProdAppDB()</span>
837
+ <span class="cstat-no" title="statement not covered" > await context.doInAppContext(appId, <span class="fstat-no" title="function not covered" >async () =</span>&gt;<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" > {</span></span></span>
838
+ const db = <span class="cstat-no" title="statement not covered" >context.getProdAppDB()</span>
839
839
  const metadata = <span class="cstat-no" title="statement not covered" >await db.get(DocumentType.APP_METADATA)</span>
840
840
  <span class="cstat-no" title="statement not covered" > if (!automationId) {</span>
841
841
  <span class="cstat-no" title="statement not covered" > delete metadata.automationErrors</span>
842
- } else <span class="cstat-no" title="statement not covered" >if (</span>
842
+ } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
843
843
  metadata.automationErrors &amp;&amp;
844
844
  metadata.automationErrors[automationId]
845
845
  ) {
846
846
  <span class="cstat-no" title="statement not covered" > delete metadata.automationErrors[automationId]</span>
847
847
  }
848
848
  <span class="cstat-no" title="statement not covered" > await db.put(metadata)</span>
849
- <span class="cstat-no" title="statement not covered" > await app.invalidateAppMetadata(metadata.appId, metadata)</span>
849
+ <span class="cstat-no" title="statement not covered" > await cache.app.invalidateAppMetadata(metadata.appId, metadata)</span>
850
850
  <span class="cstat-no" title="statement not covered" > ctx.body = { message: `Error logs cleared.` }</span>
851
851
  })
852
852
  }
853
853
  &nbsp;
854
- exports.getActionList = async function (ctx) {
854
+ export async function getActionList(ctx: BBContext) {
855
855
  ctx.body = ACTION_DEFS
856
856
  }
857
857
  &nbsp;
858
- exports.getTriggerList = async function (ctx) {
858
+ export async function getTriggerList(ctx: BBContext) {
859
859
  ctx.body = TRIGGER_DEFS
860
860
  }
861
861
  &nbsp;
862
- module.exports.getDefinitionList = async function (ctx) {
862
+ export async function getDefinitionList(ctx: BBContext) {
863
863
  ctx.body = {
864
864
  trigger: TRIGGER_DEFS,
865
865
  action: ACTION_DEFS,
@@ -872,8 +872,8 @@ module.exports.getDefinitionList = async function (ctx) {
872
872
  * *
873
873
  *********************/
874
874
  &nbsp;
875
- exports.trigger = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
876
- const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
875
+ export async function <span class="fstat-no" title="function not covered" >trigger(</span>ctx: BBContext) {
876
+ const db = <span class="cstat-no" title="statement not covered" >context.getAppDB()</span>
877
877
  let automation = <span class="cstat-no" title="statement not covered" >await db.get(ctx.params.id)</span>
878
878
  <span class="cstat-no" title="statement not covered" > await triggers.externalTrigger(automation, {</span>
879
879
  ...ctx.request.body,
@@ -885,7 +885,7 @@ exports.trigger = <span class="fstat-no" title="function not covered" >as</span>
885
885
  }
886
886
  }
887
887
  &nbsp;
888
- function prepareTestInput(input) {
888
+ function prepareTestInput(input: any) {
889
889
  // prepare the test parameters
890
890
  <span class="missing-if-branch" title="if path not taken" >I</span>if (input.id &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >input.row)</span> {
891
891
  <span class="cstat-no" title="statement not covered" > input.row._id = input.id</span>
@@ -896,8 +896,8 @@ function prepareTestInput(input) {
896
896
  return input
897
897
  }
898
898
  &nbsp;
899
- exports.test = async function (ctx) {
900
- const db = getAppDB()
899
+ export async function test(ctx: BBContext) {
900
+ const db = context.getAppDB()
901
901
  let automation = await db.get(ctx.params.id)
902
902
  await setTestFlag(automation._id)
903
903
  const testInput = prepareTestInput(ctx.request.body)
@@ -925,7 +925,7 @@ exports.test = async function (ctx) {
925
925
  <div class='footer quiet pad2 space-top1 center small'>
926
926
  Code coverage generated by
927
927
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
928
- at Mon Nov 21 2022 15:55:22 GMT+0000 (Coordinated Universal Time)
928
+ at Fri Nov 25 2022 13:56:07 GMT+0000 (Coordinated Universal Time)
929
929
  </div>
930
930
  <script src="../../../prettify.js"></script>
931
931
  <script>
@@ -133,7 +133,7 @@ export async function exportAppDump(ctx: any) {
133
133
  <div class='footer quiet pad2 space-top1 center small'>
134
134
  Code coverage generated by
135
135
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
136
- at Mon Nov 21 2022 15:55:22 GMT+0000 (Coordinated Universal Time)
136
+ at Fri Nov 25 2022 13:56:07 GMT+0000 (Coordinated Universal Time)
137
137
  </div>
138
138
  <script src="../../../prettify.js"></script>
139
139
  <script>
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for src/api/controllers/cloud.js</title>
6
+ <title>Code coverage report for src/api/controllers/cloud.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="../../../prettify.css" />
9
9
  <link rel="stylesheet" href="../../../base.css" />
@@ -19,20 +19,20 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> cloud.js</h1>
22
+ <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> cloud.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">21.42% </span>
26
+ <span class="strong">20% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>12/56</span>
28
+ <span class='fraction'>11/55</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/25</span>
35
+ <span class='fraction'>0/19</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">21.81% </span>
47
+ <span class="strong">20.37% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>12/55</span>
49
+ <span class='fraction'>11/54</span>
50
50
  </div>
51
51
 
52
52
 
@@ -184,7 +184,7 @@
184
184
  <span class="cline-any cline-yes">44x</span>
185
185
  <span class="cline-any cline-yes">44x</span>
186
186
  <span class="cline-any cline-yes">44x</span>
187
- <span class="cline-any cline-yes">44x</span>
187
+ <span class="cline-any cline-neutral">&nbsp;</span>
188
188
  <span class="cline-any cline-yes">44x</span>
189
189
  <span class="cline-any cline-neutral">&nbsp;</span>
190
190
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -291,17 +291,17 @@
291
291
  <span class="cline-any cline-neutral">&nbsp;</span>
292
292
  <span class="cline-any cline-neutral">&nbsp;</span>
293
293
  <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const env = require("../../environment")
295
- const { getAllApps, getGlobalDBName } = require("@budibase/backend-core/db")
296
- const { getGlobalDB } = require("@budibase/backend-core/tenancy")
297
- const { streamFile } = require("../../utilities/fileSystem")
298
- const { stringToReadStream } = require("../../utilities")
299
- const { getDocParams, DocumentType, isDevAppID } = require("../../db/utils")
300
- const { create } = require("./application")
301
- const { join } = require("path")
302
- const sdk = require("../../sdk")
294
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import env from "../../environment"
295
+ import { db as dbCore, tenancy } from "@budibase/backend-core"
296
+ import { streamFile } from "../../utilities/fileSystem"
297
+ import { stringToReadStream } from "../../utilities"
298
+ import { getDocParams, DocumentType, isDevAppID } from "../../db/utils"
299
+ import { create } from "./application"
300
+ import { join } from "path"
301
+ import { App, BBContext, Database } from "@budibase/types"
302
+ import sdk from "../../sdk"
303
303
  &nbsp;
304
- async function <span class="fstat-no" title="function not covered" >createApp(</span>appName, appDirectory) {
304
+ async function <span class="fstat-no" title="function not covered" >createApp(</span>appName: string, appDirectory: string) {
305
305
  const ctx = <span class="cstat-no" title="statement not covered" >{</span>
306
306
  request: {
307
307
  body: {
@@ -318,28 +318,28 @@ async function <span class="fstat-no" title="function not covered" >createApp(</
318
318
  <span class="cstat-no" title="statement not covered" > return create(ctx)</span>
319
319
  }
320
320
  &nbsp;
321
- async function <span class="fstat-no" title="function not covered" >getAllDocType(</span>db, docType) {
321
+ async function <span class="fstat-no" title="function not covered" >getAllDocType(</span>db: Database, docType: string) {
322
322
  const response = <span class="cstat-no" title="statement not covered" >await db.allDocs(</span>
323
323
  getDocParams(docType, null, {
324
324
  include_docs: true,
325
325
  })
326
326
  )
327
- <span class="cstat-no" title="statement not covered" > return response.rows.map(<span class="fstat-no" title="function not covered" >ro</span>w =&gt; <span class="cstat-no" title="statement not covered" >row.doc)</span></span>
327
+ <span class="cstat-no" title="statement not covered" > return response.rows.map(<span class="fstat-no" title="function not covered" >row </span>=&gt; <span class="cstat-no" title="statement not covered" >row.doc)</span></span>
328
328
  }
329
329
  &nbsp;
330
- exports.exportApps = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
331
- <span class="cstat-no" title="statement not covered" > if (env.SELF_HOSTED || !env.MULTI_TENANCY) {</span>
330
+ export async function <span class="fstat-no" title="function not covered" >exportApps(</span>ctx: BBContext) {
331
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (env.SELF_HOSTED || !env.MULTI_TENANCY) {</span>
332
332
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Exporting only allowed in multi-tenant cloud environments.")</span>
333
333
  }
334
- const apps = <span class="cstat-no" title="statement not covered" >await getAllApps({ all: true })</span>
335
- const globalDBString = <span class="cstat-no" title="statement not covered" >await sdk.backups.exportDB(getGlobalDBName(), {</span>
336
- filter: <span class="fstat-no" title="function not covered" >do</span>c =&gt; <span class="cstat-no" title="statement not covered" >!doc._id.startsWith(DocumentType.USER),</span>
334
+ const apps = (<span class="cstat-no" title="statement not covered" >await dbCore.getAllApps({ all: true }))</span> as App[]
335
+ const globalDBString = <span class="cstat-no" title="statement not covered" >await sdk.backups.exportDB(dbCore.getGlobalDBName(), {</span>
336
+ filter: <span class="fstat-no" title="function not covered" >(d</span>oc: any) =&gt; <span class="cstat-no" title="statement not covered" >!doc._id.startsWith(DocumentType.USER),</span>
337
337
  })
338
338
  // only export the dev apps as they will be the latest, the user can republish the apps
339
339
  // in their self-hosted environment
340
340
  let appMetadata = <span class="cstat-no" title="statement not covered" >apps</span>
341
- .filter(<span class="fstat-no" title="function not covered" >ap</span>p =&gt; <span class="cstat-no" title="statement not covered" >isDevAppID(app.appId || app._id))</span>
342
- .map(<span class="fstat-no" title="function not covered" >ap</span>p =&gt; (<span class="cstat-no" title="statement not covered" >{ appId: app.appId || app._id, name: app.name })</span>)
341
+ .filter(<span class="fstat-no" title="function not covered" >(a</span>pp: App) =&gt; <span class="cstat-no" title="statement not covered" >isDevAppID(app.appId || app._id))</span>
342
+ .map(<span class="fstat-no" title="function not covered" >(a</span>pp: App) =&gt; (<span class="cstat-no" title="statement not covered" >{ appId: (app.appId || app._id)!, name: app.name })</span>)
343
343
  const tmpPath = <span class="cstat-no" title="statement not covered" >await sdk.backups.exportMultipleApps(</span>
344
344
  appMetadata,
345
345
  globalDBString
@@ -349,32 +349,32 @@ exports.exportApps = <span class="fstat-no" title="function not covered" >as</sp
349
349
  <span class="cstat-no" title="statement not covered" > ctx.body = streamFile(tmpPath)</span>
350
350
  }
351
351
  &nbsp;
352
- async function <span class="fstat-no" title="function not covered" >hasBeenImported(</span>) {
353
- <span class="cstat-no" title="statement not covered" > if (!env.SELF_HOSTED || env.MULTI_TENANCY) {</span>
352
+ async function <span class="fstat-no" title="function not covered" >checkHasBeenImported(</span>) {
353
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!env.SELF_HOSTED || env.MULTI_TENANCY) {</span>
354
354
  <span class="cstat-no" title="statement not covered" > return true</span>
355
355
  }
356
- const apps = <span class="cstat-no" title="statement not covered" >await getAllApps({ all: true })</span>
356
+ const apps = <span class="cstat-no" title="statement not covered" >await dbCore.getAllApps({ all: true })</span>
357
357
  <span class="cstat-no" title="statement not covered" > return apps.length !== 0</span>
358
358
  }
359
359
  &nbsp;
360
- exports.hasBeenImported = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
360
+ export async function <span class="fstat-no" title="function not covered" >hasBeenImported(</span>ctx: BBContext) {
361
361
  <span class="cstat-no" title="statement not covered" > ctx.body = {</span>
362
- imported: await hasBeenImported(),
362
+ imported: await checkHasBeenImported(),
363
363
  }
364
364
  }
365
365
  &nbsp;
366
- exports.importApps = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
367
- <span class="cstat-no" title="statement not covered" > if (!env.SELF_HOSTED || env.MULTI_TENANCY) {</span>
366
+ export async function <span class="fstat-no" title="function not covered" >importApps(</span>ctx: BBContext) {
367
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!env.SELF_HOSTED || env.MULTI_TENANCY) {</span>
368
368
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Importing only allowed in self hosted environments.")</span>
369
369
  }
370
- const beenImported = <span class="cstat-no" title="statement not covered" >await hasBeenImported()</span>
371
- <span class="cstat-no" title="statement not covered" > if (beenImported || !ctx.request.files || !ctx.request.files.importFile) {</span>
370
+ const beenImported = <span class="cstat-no" title="statement not covered" >await checkHasBeenImported()</span>
371
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (beenImported || !ctx.request.files || !ctx.request.files.importFile) {</span>
372
372
  <span class="cstat-no" title="statement not covered" > ctx.throw(</span>
373
373
  400,
374
374
  "Import file is required and environment must be fresh to import apps."
375
375
  )
376
376
  }
377
- <span class="cstat-no" title="statement not covered" > if (ctx.request.files.importFile.type !== "application/gzip") {</span>
377
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.request.files.importFile.type !== "application/gzip") {</span>
378
378
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Import file must be a gzipped tarball.")</span>
379
379
  }
380
380
  &nbsp;
@@ -383,7 +383,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
383
383
  const globalDbImport = <span class="cstat-no" title="statement not covered" >sdk.backups.getGlobalDBFile(tmpPath)</span>
384
384
  const appNames = <span class="cstat-no" title="statement not covered" >sdk.backups.getListOfAppsInMulti(tmpPath)</span>
385
385
  &nbsp;
386
- const globalDb = <span class="cstat-no" title="statement not covered" >getGlobalDB()</span>
386
+ const globalDb = <span class="cstat-no" title="statement not covered" >tenancy.getGlobalDB()</span>
387
387
  // load the global db first
388
388
  <span class="cstat-no" title="statement not covered" > await globalDb.load(stringToReadStream(globalDbImport))</span>
389
389
  <span class="cstat-no" title="statement not covered" > for (let appName of appNames) {</span>
@@ -396,7 +396,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
396
396
  <span class="cstat-no" title="statement not covered" > for (let user of users) {</span>
397
397
  <span class="cstat-no" title="statement not covered" > userDeletionPromises.push(globalDb.remove(user._id, user._rev))</span>
398
398
  }
399
- <span class="cstat-no" title="statement not covered" > if (userDeletionPromises.length &gt; 0) {</span>
399
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (userDeletionPromises.length &gt; 0) {</span>
400
400
  <span class="cstat-no" title="statement not covered" > await Promise.all(userDeletionPromises)</span>
401
401
  }
402
402
  &nbsp;
@@ -412,7 +412,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
412
412
  <div class='footer quiet pad2 space-top1 center small'>
413
413
  Code coverage generated by
414
414
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
415
- at Mon Nov 21 2022 15:55:22 GMT+0000 (Coordinated Universal Time)
415
+ at Fri Nov 25 2022 13:56:07 GMT+0000 (Coordinated Universal Time)
416
416
  </div>
417
417
  <script src="../../../prettify.js"></script>
418
418
  <script>
@@ -120,11 +120,13 @@
120
120
  <a name='L55'></a><a href='#L55'>55</a>
121
121
  <a name='L56'></a><a href='#L56'>56</a>
122
122
  <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
124
125
  <span class="cline-any cline-neutral">&nbsp;</span>
125
126
  <span class="cline-any cline-yes">44x</span>
126
127
  <span class="cline-any cline-yes">44x</span>
127
128
  <span class="cline-any cline-neutral">&nbsp;</span>
129
+ <span class="cline-any cline-neutral">&nbsp;</span>
128
130
  <span class="cline-any cline-yes">44x</span>
129
131
  <span class="cline-any cline-yes">1x</span>
130
132
  <span class="cline-any cline-yes">1x</span>
@@ -181,8 +183,9 @@
181
183
  import { Plugin } from "@budibase/types"
182
184
  import { db as dbCore, context, tenancy } from "@budibase/backend-core"
183
185
  import { getComponentLibraryManifest } from "../../utilities/fileSystem"
186
+ import { BBContext } from "@budibase/types"
184
187
  &nbsp;
185
- exports.fetchAppComponentDefinitions = async function (ctx: any) {
188
+ export async function fetchAppComponentDefinitions(ctx: BBContext) {
186
189
  try {
187
190
  const db = context.getAppDB()
188
191
  const app = await db.get(DocumentType.APP_METADATA)
@@ -241,7 +244,7 @@ exports.fetchAppComponentDefinitions = async function (ctx: any) {
241
244
  <div class='footer quiet pad2 space-top1 center small'>
242
245
  Code coverage generated by
243
246
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
244
- at Mon Nov 21 2022 15:55:22 GMT+0000 (Coordinated Universal Time)
247
+ at Fri Nov 25 2022 13:56:07 GMT+0000 (Coordinated Universal Time)
245
248
  </div>
246
249
  <script src="../../../prettify.js"></script>
247
250
  <script>