@budibase/server 2.1.46-alpha.12 → 2.1.46-alpha.14

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 (393) hide show
  1. package/__mocks__/aws-sdk.ts +19 -0
  2. package/builder/assets/{index.50dfbb5d.js → index.d0383787.js} +194 -194
  3. package/builder/index.html +1 -1
  4. package/coverage/clover.xml +1404 -1399
  5. package/coverage/coverage-final.json +26 -23
  6. package/coverage/lcov-report/index.html +68 -68
  7. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  8. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +1 -1
  9. package/coverage/lcov-report/src/api/controllers/application.ts.html +33 -21
  10. package/coverage/lcov-report/src/api/controllers/auth.ts.html +3 -3
  11. package/coverage/lcov-report/src/api/controllers/automation.ts.html +1 -1
  12. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +27 -15
  14. package/coverage/lcov-report/src/api/controllers/component.ts.html +1 -1
  15. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +1 -1
  16. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +1 -1
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  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 +17 -17
  21. package/coverage/lcov-report/src/api/controllers/integration.ts.html +1 -1
  22. package/coverage/lcov-report/src/api/controllers/layout.ts.html +1 -1
  23. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/permission.ts.html +1 -1
  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 +1 -1
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +27 -12
  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 +1 -1
  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 +1 -1
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +1 -1
  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 +1 -1
  58. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
  59. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +1 -1
  60. package/coverage/lcov-report/src/api/controllers/role.ts.html +1 -1
  61. package/coverage/lcov-report/src/api/controllers/routing.ts.html +1 -1
  62. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +2 -5
  63. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +1 -1
  64. package/coverage/lcov-report/src/api/controllers/row/index.html +1 -1
  65. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  66. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +27 -24
  67. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +1 -1
  68. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +13 -4
  69. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +6 -3
  70. package/coverage/lcov-report/src/api/controllers/screen.ts.html +1 -1
  71. package/coverage/lcov-report/src/api/controllers/script.ts.html +1 -1
  72. package/coverage/lcov-report/src/api/controllers/static/index.html +11 -11
  73. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +13 -25
  74. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +1 -1
  75. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +1 -1
  76. package/coverage/lcov-report/src/api/controllers/table/index.html +1 -1
  77. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +1 -1
  78. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +1 -1
  79. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +1 -1
  80. package/coverage/lcov-report/src/api/controllers/templates.ts.html +1 -1
  81. package/coverage/lcov-report/src/api/controllers/user.ts.html +1 -1
  82. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +1 -1
  83. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  84. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +1 -1
  86. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.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 +1 -1
  89. package/coverage/lcov-report/src/api/index.ts.html +1 -1
  90. package/coverage/lcov-report/src/api/routes/analytics.ts.html +1 -1
  91. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +1 -1
  92. package/coverage/lcov-report/src/api/routes/application.ts.html +1 -1
  93. package/coverage/lcov-report/src/api/routes/auth.ts.html +1 -1
  94. package/coverage/lcov-report/src/api/routes/automation.ts.html +1 -1
  95. package/coverage/lcov-report/src/api/routes/backup.ts.html +1 -1
  96. package/coverage/lcov-report/src/api/routes/cloud.ts.html +1 -1
  97. package/coverage/lcov-report/src/api/routes/component.ts.html +1 -1
  98. package/coverage/lcov-report/src/api/routes/datasource.ts.html +1 -1
  99. package/coverage/lcov-report/src/api/routes/deploy.ts.html +1 -1
  100. package/coverage/lcov-report/src/api/routes/dev.ts.html +1 -1
  101. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  102. package/coverage/lcov-report/src/api/routes/index.ts.html +8 -5
  103. package/coverage/lcov-report/src/api/routes/integration.ts.html +1 -1
  104. package/coverage/lcov-report/src/api/routes/layout.ts.html +1 -1
  105. package/coverage/lcov-report/src/api/routes/metadata.ts.html +1 -1
  106. package/coverage/lcov-report/src/api/routes/migrations.ts.html +1 -1
  107. package/coverage/lcov-report/src/api/routes/permission.ts.html +1 -1
  108. package/coverage/lcov-report/src/api/routes/plugin.ts.html +1 -1
  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/tests/index.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  121. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  122. package/coverage/lcov-report/src/api/routes/query.ts.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/role.ts.html +1 -1
  124. package/coverage/lcov-report/src/api/routes/routing.ts.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/row.ts.html +1 -1
  126. package/coverage/lcov-report/src/api/routes/screen.ts.html +1 -1
  127. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  128. package/coverage/lcov-report/src/api/routes/static.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/table.ts.html +1 -1
  130. package/coverage/lcov-report/src/api/routes/templates.ts.html +1 -1
  131. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +1 -1
  134. package/coverage/lcov-report/src/api/routes/user.ts.html +1 -1
  135. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  136. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +1 -1
  137. package/coverage/lcov-report/src/api/routes/view.ts.html +1 -1
  138. package/coverage/lcov-report/src/api/routes/webhook.ts.html +1 -1
  139. package/coverage/lcov-report/src/app.ts.html +1 -1
  140. package/coverage/lcov-report/src/automations/actions.ts.html +1 -1
  141. package/coverage/lcov-report/src/automations/automationUtils.ts.html +1 -1
  142. package/coverage/lcov-report/src/automations/bullboard.ts.html +1 -1
  143. package/coverage/lcov-report/src/automations/index.html +1 -1
  144. package/coverage/lcov-report/src/automations/index.ts.html +1 -1
  145. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  146. package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
  147. package/coverage/lcov-report/src/automations/steps/bash.ts.html +1 -1
  148. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/delay.ts.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/discord.ts.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/filter.ts.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/loop.ts.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/slack.ts.html +1 -1
  163. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +1 -1
  164. package/coverage/lcov-report/src/automations/steps/utils.ts.html +1 -1
  165. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +1 -1
  166. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  167. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +1 -1
  168. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +1 -1
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +1 -1
  174. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +1 -1
  175. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +1 -1
  176. package/coverage/lcov-report/src/automations/triggers.ts.html +1 -1
  177. package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
  178. package/coverage/lcov-report/src/constants/index.html +1 -1
  179. package/coverage/lcov-report/src/constants/index.ts.html +92 -92
  180. package/coverage/lcov-report/src/constants/layouts.ts.html +1 -1
  181. package/coverage/lcov-report/src/constants/screens.ts.html +1 -1
  182. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +1 -1
  183. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +1 -1
  184. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +1 -1
  185. package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
  186. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +1 -1
  187. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +1 -1
  188. package/coverage/lcov-report/src/db/dynamoClient.ts.html +1 -1
  189. package/coverage/lcov-report/src/db/inMemoryView.ts.html +1 -1
  190. package/coverage/lcov-report/src/db/index.html +1 -1
  191. package/coverage/lcov-report/src/db/index.ts.html +1 -1
  192. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +1 -1
  193. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +1 -1
  194. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  195. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +1 -1
  196. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +1 -1
  197. package/coverage/lcov-report/src/db/newid.ts.html +3 -3
  198. package/coverage/lcov-report/src/db/utils.ts.html +56 -56
  199. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  200. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  201. package/coverage/lcov-report/src/definitions/index.html +1 -1
  202. package/coverage/lcov-report/src/environment.ts.html +43 -28
  203. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +1 -1
  204. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +1 -1
  205. package/coverage/lcov-report/src/events/index.html +1 -1
  206. package/coverage/lcov-report/src/events/index.ts.html +1 -1
  207. package/coverage/lcov-report/src/events/utils.ts.html +1 -1
  208. package/coverage/lcov-report/src/index.html +16 -16
  209. package/coverage/lcov-report/src/index.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  211. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  212. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  213. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/base/sql.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  219. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  220. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  221. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/index.html +5 -5
  223. package/coverage/lcov-report/src/integrations/index.ts.html +5 -17
  224. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  226. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  227. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  228. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  229. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  230. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  232. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  233. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  234. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  235. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  236. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  237. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  238. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  239. package/coverage/lcov-report/src/middleware/authorized.ts.html +1 -1
  240. package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
  241. package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
  242. package/coverage/lcov-report/src/middleware/index.html +1 -1
  243. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  245. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  246. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  247. package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +9 -6
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  268. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +1 -1
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +1 -1
  274. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +1 -1
  275. package/coverage/lcov-report/src/migrations/index.html +1 -1
  276. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  277. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  279. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +1 -1
  282. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +1 -1
  283. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  286. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  287. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  288. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +1 -1
  289. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +9 -21
  290. package/coverage/lcov-report/src/sdk/app/backups/index.html +11 -11
  291. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  292. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  293. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  294. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +1 -1
  295. package/coverage/lcov-report/src/sdk/index.html +1 -1
  296. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  297. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  298. package/coverage/lcov-report/src/sdk/users/index.ts.html +1 -1
  299. package/coverage/lcov-report/src/sdk/users/utils.ts.html +1 -1
  300. package/coverage/lcov-report/src/startup.ts.html +1 -1
  301. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +3 -3
  302. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +1 -1
  303. package/coverage/lcov-report/src/tests/utilities/index.html +1 -1
  304. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  305. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +1 -1
  306. package/coverage/lcov-report/src/threads/automation.ts.html +1 -1
  307. package/coverage/lcov-report/src/threads/index.html +1 -1
  308. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  309. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  310. package/coverage/lcov-report/src/threads/utils.ts.html +1 -1
  311. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +1 -1
  312. package/coverage/lcov-report/src/utilities/centralPath.ts.html +1 -1
  313. package/coverage/lcov-report/src/utilities/csvParser.ts.html +1 -1
  314. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +343 -0
  315. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +2 -2
  316. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +595 -0
  317. package/coverage/lcov-report/src/utilities/fileSystem/index.html +81 -21
  318. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +16 -1045
  319. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +280 -0
  320. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  321. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +193 -0
  322. package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
  323. package/coverage/lcov-report/src/utilities/index.html +19 -34
  324. package/coverage/lcov-report/src/utilities/index.ts.html +31 -163
  325. package/coverage/lcov-report/src/utilities/redis.ts.html +1 -1
  326. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  327. package/coverage/lcov-report/src/utilities/routing/index.ts.html +1 -1
  328. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +19 -19
  329. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +46 -19
  330. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +1 -1
  331. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +1 -1
  332. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +1 -1
  333. package/coverage/lcov-report/src/utilities/security.ts.html +1 -1
  334. package/coverage/lcov-report/src/utilities/statusCodes.ts.html +1 -1
  335. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  336. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +1 -1
  337. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  338. package/coverage/lcov-report/src/utilities/users.ts.html +1 -1
  339. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +1 -1
  340. package/coverage/lcov-report/src/watch.ts.html +1 -1
  341. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  342. package/coverage/lcov.info +2322 -2298
  343. package/dist/api/controllers/application.js +9 -10
  344. package/dist/api/controllers/cloud.js +6 -2
  345. package/dist/api/controllers/plugin/index.js +6 -6
  346. package/dist/api/controllers/row/ExternalRequest.js +0 -1
  347. package/dist/api/controllers/row/internal.js +11 -11
  348. package/dist/api/controllers/row/staticFormula.js +1 -1
  349. package/dist/api/controllers/static/index.js +8 -11
  350. package/dist/environment.js +6 -1
  351. package/dist/integrations/index.js +1 -2
  352. package/dist/migrations/functions/backfill/global/configs.js +4 -4
  353. package/dist/package.json +9 -7
  354. package/dist/sdk/app/backups/imports.js +3 -7
  355. package/dist/tsconfig.build.tsbuildinfo +1 -1
  356. package/dist/utilities/fileSystem/app.js +97 -0
  357. package/dist/utilities/fileSystem/clientLibrary.js +3 -3
  358. package/dist/utilities/fileSystem/filesystem.js +182 -0
  359. package/dist/utilities/fileSystem/index.js +18 -342
  360. package/dist/utilities/fileSystem/plugin.js +63 -0
  361. package/dist/utilities/fileSystem/template.js +44 -0
  362. package/dist/utilities/index.js +1 -44
  363. package/dist/utilities/rowProcessor/index.js +12 -4
  364. package/package.json +10 -8
  365. package/src/api/controllers/application.ts +16 -12
  366. package/src/api/controllers/auth.ts +2 -2
  367. package/src/api/controllers/cloud.ts +10 -6
  368. package/src/api/controllers/plugin/index.ts +14 -9
  369. package/src/api/controllers/row/ExternalRequest.ts +0 -1
  370. package/src/api/controllers/row/internal.ts +23 -22
  371. package/src/api/controllers/row/staticFormula.ts +5 -2
  372. package/src/api/controllers/row/utils.ts +2 -1
  373. package/src/api/controllers/static/index.ts +6 -10
  374. package/src/api/routes/index.ts +4 -3
  375. package/src/api/routes/tests/row.spec.js +4 -2
  376. package/src/api/routes/tests/static.spec.js +2 -17
  377. package/src/environment.ts +6 -1
  378. package/src/integrations/index.ts +1 -5
  379. package/src/migrations/functions/backfill/global/configs.ts +5 -4
  380. package/src/sdk/app/backups/imports.ts +3 -7
  381. package/src/tests/jestSetup.ts +4 -1
  382. package/src/utilities/fileSystem/app.ts +86 -0
  383. package/src/utilities/fileSystem/clientLibrary.ts +1 -1
  384. package/src/utilities/fileSystem/filesystem.ts +170 -0
  385. package/src/utilities/fileSystem/index.ts +5 -348
  386. package/src/utilities/fileSystem/plugin.ts +65 -0
  387. package/src/utilities/fileSystem/template.ts +36 -0
  388. package/src/utilities/index.ts +1 -45
  389. package/src/utilities/rowProcessor/index.ts +17 -8
  390. package/coverage/lcov-report/src/utilities/plugins.ts.html +0 -151
  391. package/dist/utilities/plugins.js +0 -26
  392. package/src/utilities/plugins.ts +0 -22
  393. package/src/utilities/tests/plugins.spec.ts +0 -23
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">81.25% </span>
26
+ <span class="strong">84.84% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>65/80</span>
28
+ <span class='fraction'>56/66</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">53.84% </span>
33
+ <span class="strong">57.89% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>14/26</span>
35
+ <span class='fraction'>11/19</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">94.11% </span>
40
+ <span class="strong">92.85% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>16/17</span>
42
+ <span class='fraction'>13/14</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">81.01% </span>
47
+ <span class="strong">84.61% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>64/79</span>
49
+ <span class='fraction'>55/65</span>
50
50
  </div>
51
51
 
52
52
 
@@ -197,67 +197,22 @@
197
197
  <a name='L132'></a><a href='#L132'>132</a>
198
198
  <a name='L133'></a><a href='#L133'>133</a>
199
199
  <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">62x</span>
245
- <span class="cline-any cline-yes">62x</span>
246
- <span class="cline-any cline-yes">62x</span>
247
- <span class="cline-any cline-yes">62x</span>
248
- <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-yes">62x</span>
250
- <span class="cline-any cline-yes">62x</span>
251
- <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-yes">62x</span>
200
+ <a name='L135'></a><a href='#L135'>135</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">60x</span>
201
+ <span class="cline-any cline-yes">60x</span>
202
+ <span class="cline-any cline-yes">60x</span>
203
+ <span class="cline-any cline-neutral">&nbsp;</span>
204
+ <span class="cline-any cline-yes">60x</span>
205
+ <span class="cline-any cline-yes">60x</span>
206
+ <span class="cline-any cline-neutral">&nbsp;</span>
207
+ <span class="cline-any cline-yes">60x</span>
253
208
  <span class="cline-any cline-yes">3x</span>
254
209
  <span class="cline-any cline-neutral">&nbsp;</span>
255
210
  <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-yes">62x</span>
211
+ <span class="cline-any cline-yes">60x</span>
257
212
  <span class="cline-any cline-neutral">&nbsp;</span>
258
- <span class="cline-any cline-yes">62x</span>
213
+ <span class="cline-any cline-yes">60x</span>
259
214
  <span class="cline-any cline-neutral">&nbsp;</span>
260
- <span class="cline-any cline-yes">62x</span>
215
+ <span class="cline-any cline-yes">60x</span>
261
216
  <span class="cline-any cline-yes">1x</span>
262
217
  <span class="cline-any cline-yes">1x</span>
263
218
  <span class="cline-any cline-yes">1x</span>
@@ -271,54 +226,11 @@
271
226
  <span class="cline-any cline-neutral">&nbsp;</span>
272
227
  <span class="cline-any cline-neutral">&nbsp;</span>
273
228
  <span class="cline-any cline-neutral">&nbsp;</span>
274
- <span class="cline-any cline-yes">62x</span>
275
- <span class="cline-any cline-yes">50x</span>
276
- <span class="cline-any cline-neutral">&nbsp;</span>
277
- <span class="cline-any cline-neutral">&nbsp;</span>
278
- <span class="cline-any cline-neutral">&nbsp;</span>
279
- <span class="cline-any cline-neutral">&nbsp;</span>
280
- <span class="cline-any cline-neutral">&nbsp;</span>
281
- <span class="cline-any cline-neutral">&nbsp;</span>
282
- <span class="cline-any cline-yes">62x</span>
283
- <span class="cline-any cline-yes">2x</span>
284
- <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-yes">2x</span>
286
- <span class="cline-any cline-neutral">&nbsp;</span>
287
- <span class="cline-any cline-no">&nbsp;</span>
288
- <span class="cline-any cline-neutral">&nbsp;</span>
289
- <span class="cline-any cline-neutral">&nbsp;</span>
290
- <span class="cline-any cline-neutral">&nbsp;</span>
291
- <span class="cline-any cline-neutral">&nbsp;</span>
292
- <span class="cline-any cline-neutral">&nbsp;</span>
293
- <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-neutral">&nbsp;</span>
295
- <span class="cline-any cline-neutral">&nbsp;</span>
229
+ <span class="cline-any cline-yes">60x</span>
230
+ <span class="cline-any cline-yes">48x</span>
296
231
  <span class="cline-any cline-neutral">&nbsp;</span>
297
232
  <span class="cline-any cline-neutral">&nbsp;</span>
298
- <span class="cline-any cline-neutral">&nbsp;</span>
299
- <span class="cline-any cline-neutral">&nbsp;</span>
300
- <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-yes">62x</span>
302
- <span class="cline-any cline-yes">6x</span>
303
- <span class="cline-any cline-no">&nbsp;</span>
304
- <span class="cline-any cline-neutral">&nbsp;</span>
305
- <span class="cline-any cline-neutral">&nbsp;</span>
306
- <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-neutral">&nbsp;</span>
308
- <span class="cline-any cline-no">&nbsp;</span>
309
- <span class="cline-any cline-no">&nbsp;</span>
310
- <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-no">&nbsp;</span>
312
- <span class="cline-any cline-neutral">&nbsp;</span>
313
- <span class="cline-any cline-yes">6x</span>
314
- <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-neutral">&nbsp;</span>
316
- <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-yes">62x</span>
318
- <span class="cline-any cline-yes">2x</span>
319
- <span class="cline-any cline-neutral">&nbsp;</span>
320
- <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-yes">62x</span>
233
+ <span class="cline-any cline-yes">60x</span>
322
234
  <span class="cline-any cline-neutral">&nbsp;</span>
323
235
  <span class="cline-any cline-neutral">&nbsp;</span>
324
236
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -347,7 +259,7 @@
347
259
  <span class="cline-any cline-neutral">&nbsp;</span>
348
260
  <span class="cline-any cline-neutral">&nbsp;</span>
349
261
  <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-yes">62x</span>
262
+ <span class="cline-any cline-yes">60x</span>
351
263
  <span class="cline-any cline-neutral">&nbsp;</span>
352
264
  <span class="cline-any cline-neutral">&nbsp;</span>
353
265
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -357,7 +269,7 @@
357
269
  <span class="cline-any cline-neutral">&nbsp;</span>
358
270
  <span class="cline-any cline-neutral">&nbsp;</span>
359
271
  <span class="cline-any cline-neutral">&nbsp;</span>
360
- <span class="cline-any cline-yes">62x</span>
272
+ <span class="cline-any cline-yes">60x</span>
361
273
  <span class="cline-any cline-yes">4x</span>
362
274
  <span class="cline-any cline-yes">4x</span>
363
275
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -374,7 +286,7 @@
374
286
  <span class="cline-any cline-neutral">&nbsp;</span>
375
287
  <span class="cline-any cline-neutral">&nbsp;</span>
376
288
  <span class="cline-any cline-neutral">&nbsp;</span>
377
- <span class="cline-any cline-yes">62x</span>
289
+ <span class="cline-any cline-yes">60x</span>
378
290
  <span class="cline-any cline-no">&nbsp;</span>
379
291
  <span class="cline-any cline-neutral">&nbsp;</span>
380
292
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -384,7 +296,7 @@
384
296
  <span class="cline-any cline-neutral">&nbsp;</span>
385
297
  <span class="cline-any cline-neutral">&nbsp;</span>
386
298
  <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-yes">62x</span>
299
+ <span class="cline-any cline-yes">60x</span>
388
300
  <span class="cline-any cline-yes">2x</span>
389
301
  <span class="cline-any cline-neutral">&nbsp;</span>
390
302
  <span class="cline-any cline-yes">2x</span>
@@ -393,7 +305,7 @@
393
305
  <span class="cline-any cline-neutral">&nbsp;</span>
394
306
  <span class="cline-any cline-neutral">&nbsp;</span>
395
307
  <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-yes">62x</span>
308
+ <span class="cline-any cline-yes">60x</span>
397
309
  <span class="cline-any cline-yes">39x</span>
398
310
  <span class="cline-any cline-yes">39x</span>
399
311
  <span class="cline-any cline-yes">39x</span>
@@ -404,7 +316,7 @@
404
316
  <span class="cline-any cline-yes">39x</span>
405
317
  <span class="cline-any cline-neutral">&nbsp;</span>
406
318
  <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-yes">62x</span>
319
+ <span class="cline-any cline-yes">60x</span>
408
320
  <span class="cline-any cline-yes">1x</span>
409
321
  <span class="cline-any cline-yes">1x</span>
410
322
  <span class="cline-any cline-no">&nbsp;</span>
@@ -412,7 +324,7 @@
412
324
  <span class="cline-any cline-yes">1x</span>
413
325
  <span class="cline-any cline-neutral">&nbsp;</span>
414
326
  <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-yes">62x</span>
327
+ <span class="cline-any cline-yes">60x</span>
416
328
  <span class="cline-any cline-yes">287x</span>
417
329
  <span class="cline-any cline-no">&nbsp;</span>
418
330
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -420,8 +332,7 @@
420
332
  <span class="cline-any cline-neutral">&nbsp;</span>
421
333
  <span class="cline-any cline-neutral">&nbsp;</span>
422
334
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import env from "../environment"
423
- import { OBJ_STORE_DIRECTORY } from "../constants"
424
- import { objectStore, context } from "@budibase/backend-core"
335
+ import { context } from "@budibase/backend-core"
425
336
  import { generateMetadataID } from "../db/utils"
426
337
  import { Document } from "@budibase/types"
427
338
  import stream from "stream"
@@ -453,49 +364,6 @@ export function checkSlashesInUrl(url: string) {
453
364
  return url.replace(/(https?:\/\/)|(\/)+/g, "$1$2")
454
365
  }
455
366
  &nbsp;
456
- /**
457
- * Gets the address of the object store, depending on whether self hosted or in cloud.
458
- * @return {string} The base URL of the object store (MinIO or S3).
459
- */
460
- export function objectStoreUrl() {
461
- if (env.SELF_HOSTED || <span class="branch-1 cbranch-no" title="branch not covered" >env.MINIO_URL)</span> {
462
- // can use a relative url for this as all goes through the proxy (this is hosted in minio)
463
- return OBJ_STORE_DIRECTORY
464
- } else <span class="missing-if-branch" title="else path not taken" >E</span>{
465
- <span class="cstat-no" title="statement not covered" > return env.CDN_URL</span>
466
- }
467
- }
468
- &nbsp;
469
- /**
470
- * In production the client library is stored in the object store, however in development
471
- * we use the symlinked version produced by lerna, located in node modules. We link to this
472
- * via a specific endpoint (under /api/assets/client).
473
- * @param {string} appId In production we need the appId to look up the correct bucket, as the
474
- * version of the client lib may differ between apps.
475
- * @param {string} version The version to retrieve.
476
- * @return {string} The URL to be inserted into appPackage response or server rendered
477
- * app index file.
478
- */
479
- export function clientLibraryPath(appId: string, version: string) {
480
- <span class="missing-if-branch" title="if path not taken" >I</span>if (env.isProd()) {
481
- let url = <span class="cstat-no" title="statement not covered" >`${objectStoreUrl()}/${objectStore.sanitizeKey(</span>
482
- appId
483
- )}/budibase-client.js`
484
- &nbsp;
485
- // append app version to bust the cache
486
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (version) {</span>
487
- <span class="cstat-no" title="statement not covered" > url += `?v=${version}`</span>
488
- }
489
- <span class="cstat-no" title="statement not covered" > return url</span>
490
- } else {
491
- return `/api/assets/client`
492
- }
493
- }
494
- &nbsp;
495
- export function attachmentsRelativeURL(attachmentKey: string) {
496
- return checkSlashesInUrl(`${objectStoreUrl()}/${attachmentKey}`)
497
- }
498
- &nbsp;
499
367
  export async function updateEntityMetadata(
500
368
  type: string,
501
369
  entityId: string,
@@ -604,7 +472,7 @@ export function isQsTrue(param: string) {
604
472
  <div class='footer quiet pad2 space-top1 center small'>
605
473
  Code coverage generated by
606
474
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
607
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
475
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
608
476
  </div>
609
477
  <script src="../../prettify.js"></script>
610
478
  <script>
@@ -328,7 +328,7 @@ export async function clearTestFlag(id: string) {
328
328
  <div class='footer quiet pad2 space-top1 center small'>
329
329
  Code coverage generated by
330
330
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
331
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
331
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
332
332
  </div>
333
333
  <script src="../../prettify.js"></script>
334
334
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -166,7 +166,7 @@ export async function getRoutingInfo(): Promise&lt;ScreenRoutesView[]&gt; {
166
166
  <div class='footer quiet pad2 space-top1 center small'>
167
167
  Code coverage generated by
168
168
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
169
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
169
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
170
170
  </div>
171
171
  <script src="../../../prettify.js"></script>
172
172
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">59.11% </span>
26
+ <span class="strong">60% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>107/181</span>
28
+ <span class='fraction'>111/185</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">53.33% </span>
33
+ <span class="strong">55.55% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>64/120</span>
35
+ <span class='fraction'>70/126</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">52.17% </span>
40
+ <span class="strong">54.16% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>12/23</span>
42
+ <span class='fraction'>13/24</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">61.27% </span>
47
+ <span class="strong">62.14% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>106/173</span>
49
+ <span class='fraction'>110/177</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,17 +80,17 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file medium" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
83
- <td data-value="57.62" class="pic medium">
84
- <div class="chart"><div class="cover-fill" style="width: 57%"></div><div class="cover-empty" style="width: 43%"></div></div>
83
+ <td data-value="59.01" class="pic medium">
84
+ <div class="chart"><div class="cover-fill" style="width: 59%"></div><div class="cover-empty" style="width: 41%"></div></div>
85
85
  </td>
86
- <td data-value="57.62" class="pct medium">57.62%</td>
87
- <td data-value="118" class="abs medium">68/118</td>
88
- <td data-value="47.94" class="pct low">47.94%</td>
89
- <td data-value="73" class="abs low">35/73</td>
90
- <td data-value="42.85" class="pct low">42.85%</td>
91
- <td data-value="14" class="abs low">6/14</td>
92
- <td data-value="60.71" class="pct medium">60.71%</td>
93
- <td data-value="112" class="abs medium">68/112</td>
86
+ <td data-value="59.01" class="pct medium">59.01%</td>
87
+ <td data-value="122" class="abs medium">72/122</td>
88
+ <td data-value="51.89" class="pct medium">51.89%</td>
89
+ <td data-value="79" class="abs medium">41/79</td>
90
+ <td data-value="46.66" class="pct low">46.66%</td>
91
+ <td data-value="15" class="abs low">7/15</td>
92
+ <td data-value="62.06" class="pct medium">62.06%</td>
93
+ <td data-value="116" class="abs medium">72/116</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
134
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
135
135
  </div>
136
136
  <script src="../../../prettify.js"></script>
137
137
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">57.62% </span>
26
+ <span class="strong">59.01% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>68/118</span>
28
+ <span class='fraction'>72/122</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">47.94% </span>
33
+ <span class="strong">51.89% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>35/73</span>
35
+ <span class='fraction'>41/79</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">42.85% </span>
40
+ <span class="strong">46.66% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>6/14</span>
42
+ <span class='fraction'>7/15</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">60.71% </span>
47
+ <span class="strong">62.06% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>68/112</span>
49
+ <span class='fraction'>72/116</span>
50
50
  </div>
51
51
 
52
52
 
@@ -333,8 +333,16 @@
333
333
  <a name='L268'></a><a href='#L268'>268</a>
334
334
  <a name='L269'></a><a href='#L269'>269</a>
335
335
  <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
337
- <span class="cline-any cline-yes">56x</span>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a>
343
+ <a name='L278'></a><a href='#L278'>278</a>
344
+ <a name='L279'></a><a href='#L279'>279</a>
345
+ <a name='L280'></a><a href='#L280'>280</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
338
346
  <span class="cline-any cline-yes">56x</span>
339
347
  <span class="cline-any cline-yes">56x</span>
340
348
  <span class="cline-any cline-yes">56x</span>
@@ -495,6 +503,16 @@
495
503
  <span class="cline-any cline-neutral">&nbsp;</span>
496
504
  <span class="cline-any cline-neutral">&nbsp;</span>
497
505
  <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-yes">199x</span>
507
+ <span class="cline-any cline-yes">4x</span>
508
+ <span class="cline-any cline-yes">4x</span>
509
+ <span class="cline-any cline-yes">1x</span>
510
+ <span class="cline-any cline-yes">1x</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
516
  <span class="cline-any cline-yes">86x</span>
499
517
  <span class="cline-any cline-yes">80x</span>
500
518
  <span class="cline-any cline-yes">80x</span>
@@ -605,13 +623,12 @@
605
623
  <span class="cline-any cline-neutral">&nbsp;</span>
606
624
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import * as linkRows from "../../db/linkedRows"
607
625
  import { FieldTypes, AutoFieldSubTypes } from "../../constants"
608
- import { attachmentsRelativeURL } from "../index"
609
626
  import { processFormulas, fixAutoColumnSubType } from "./utils"
610
627
  import { ObjectStoreBuckets } from "../../constants"
611
628
  import { context, db as dbCore, objectStore } from "@budibase/backend-core"
612
629
  import { InternalTables } from "../../db/utils"
613
630
  import { TYPE_TRANSFORM_MAP } from "./map"
614
- import { Row, Table, ContextUser } from "@budibase/types"
631
+ import { Row, RowAttachment, Table, ContextUser } from "@budibase/types"
615
632
  const { cloneDeep } = require("lodash/fp")
616
633
  export * from "./utils"
617
634
  &nbsp;
@@ -640,7 +657,7 @@ function <span class="fstat-no" title="function not covered" >getRemovedAttachme
640
657
  <span class="cstat-no" title="statement not covered" > return oldKeys</span>
641
658
  }
642
659
  const newKeys = <span class="cstat-no" title="statement not covered" >row[attachmentKey].map(<span class="fstat-no" title="function not covered" >(a</span>ttachment: any) =&gt; <span class="cstat-no" title="statement not covered" >attachment.key)</span></span>
643
- <span class="cstat-no" title="statement not covered" > return oldKeys.filter(<span class="fstat-no" title="function not covered" >(k</span>ey: any) =&gt; <span class="cstat-no" title="statement not covered" >newKeys.indexOf(key) === -1)</span></span>
660
+ <span class="cstat-no" title="statement not covered" > return oldKeys.filter(<span class="fstat-no" title="function not covered" >(k</span>ey: string) =&gt; <span class="cstat-no" title="statement not covered" >newKeys.indexOf(key) === -1)</span></span>
644
661
  }
645
662
  &nbsp;
646
663
  /**
@@ -710,7 +727,7 @@ export function processAutoColumn(
710
727
  * @param {object} type The type fo coerce to
711
728
  * @returns {object} The coerced value
712
729
  */
713
- export function coerce(row: any, type: any) {
730
+ export function coerce(row: any, type: string) {
714
731
  // no coercion specified for type, skip it
715
732
  <span class="missing-if-branch" title="if path not taken" >I</span>if (!TYPE_TRANSFORM_MAP[type]) {
716
733
  <span class="cstat-no" title="statement not covered" > return row</span>
@@ -763,6 +780,16 @@ export function inputProcessing(
763
780
  else {
764
781
  clonedRow[key] = coerce(value, field.type)
765
782
  }
783
+ &nbsp;
784
+ // remove any attachment urls, they are generated on read
785
+ if (field.type === FieldTypes.ATTACHMENT) {
786
+ const attachments = clonedRow[key]
787
+ if (attachments?.length) {
788
+ attachments.forEach((attachment: RowAttachment) =&gt; {
789
+ delete attachment.url
790
+ })
791
+ }
792
+ }
766
793
  }
767
794
  &nbsp;
768
795
  if (!clonedRow._id || !clonedRow._rev) {
@@ -799,15 +826,15 @@ export async function outputProcessing(
799
826
  // process formulas
800
827
  enriched = processFormulas(table, enriched, { dynamic: true }) as Row[]
801
828
  &nbsp;
802
- // update the attachments URL depending on hosting
829
+ // set the attachments URLs
803
830
  for (let [property, column] of Object.entries(table.schema)) {
804
831
  if (column.type === FieldTypes.ATTACHMENT) {
805
832
  for (let row of enriched) {
806
833
  if (row[property] == null || !Array.isArray(row[property])) {
807
834
  continue
808
835
  }
809
- row[property].forEach((attachment: any) =&gt; {
810
- attachment.url = attachmentsRelativeURL(attachment.key)
836
+ row[property].forEach((attachment: RowAttachment) =&gt; {
837
+ attachment.url = objectStore.getAppFileUrl(attachment.key)
811
838
  })
812
839
  }
813
840
  }
@@ -870,7 +897,7 @@ export async function cleanupAttachments(
870
897
  }
871
898
  }
872
899
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (files.length &gt; 0) {</span>
873
- <span class="cstat-no" title="statement not covered" > return objectStore.deleteFiles(ObjectStoreBuckets.APPS, files)</span>
900
+ <span class="cstat-no" title="statement not covered" > await objectStore.deleteFiles(ObjectStoreBuckets.APPS, files)</span>
874
901
  }
875
902
  }
876
903
  &nbsp;</pre></td></tr></table></pre>
@@ -880,7 +907,7 @@ export async function cleanupAttachments(
880
907
  <div class='footer quiet pad2 space-top1 center small'>
881
908
  Code coverage generated by
882
909
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
883
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
910
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
884
911
  </div>
885
912
  <script src="../../../prettify.js"></script>
886
913
  <script>
@@ -358,7 +358,7 @@ export const TYPE_TRANSFORM_MAP: any = {
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
361
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
361
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
362
362
  </div>
363
363
  <script src="../../../prettify.js"></script>
364
364
  <script>
@@ -358,7 +358,7 @@ export function <span class="fstat-no" title="function not covered" >processDate
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
361
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
361
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
362
362
  </div>
363
363
  <script src="../../../prettify.js"></script>
364
364
  <script>
@@ -154,7 +154,7 @@ export = ScriptRunner
154
154
  <div class='footer quiet pad2 space-top1 center small'>
155
155
  Code coverage generated by
156
156
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
157
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
157
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
158
158
  </div>
159
159
  <script src="../../prettify.js"></script>
160
160
  <script>
@@ -265,7 +265,7 @@ export function getBasePermissions(resourceId: string) {
265
265
  <div class='footer quiet pad2 space-top1 center small'>
266
266
  Code coverage generated by
267
267
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
268
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
268
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
269
269
  </div>
270
270
  <script src="../../prettify.js"></script>
271
271
  <script>
@@ -91,7 +91,7 @@
91
91
  <div class='footer quiet pad2 space-top1 center small'>
92
92
  Code coverage generated by
93
93
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
94
- at Wed Dec 14 2022 22:06:49 GMT+0000 (Coordinated Universal Time)
94
+ at Thu Dec 15 2022 11:56:57 GMT+0000 (Coordinated Universal Time)
95
95
  </div>
96
96
  <script src="../../prettify.js"></script>
97
97
  <script>