@budibase/server 2.2.26 → 2.2.27

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 (657) hide show
  1. package/Dockerfile +1 -1
  2. package/__mocks__/aws-sdk.ts +19 -0
  3. package/__mocks__/node-fetch.ts +80 -0
  4. package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
  5. package/builder/assets/bg.29e85dd5.png +0 -0
  6. package/builder/assets/bulgaria.bd68393d.png +0 -0
  7. package/builder/assets/covanta.72c46c1e.png +0 -0
  8. package/builder/assets/index.3dd03883.css +6 -0
  9. package/builder/assets/index.56a96240.js +1802 -0
  10. package/builder/assets/schnellecke.cf1837a8.png +0 -0
  11. package/builder/index.html +3 -3
  12. package/coverage/clover.xml +6618 -6528
  13. package/coverage/coverage-final.json +282 -276
  14. package/coverage/lcov-report/index.html +489 -444
  15. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +9 -9
  16. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +6 -6
  17. package/coverage/lcov-report/src/api/controllers/application.ts.html +362 -266
  18. package/coverage/lcov-report/src/api/controllers/auth.ts.html +12 -12
  19. package/coverage/lcov-report/src/api/controllers/automation.ts.html +61 -61
  20. package/coverage/lcov-report/src/api/controllers/backup.ts.html +8 -8
  21. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +93 -81
  22. package/coverage/lcov-report/src/api/controllers/component.ts.html +12 -12
  23. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +122 -98
  24. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +21 -18
  25. package/coverage/lcov-report/src/api/controllers/deploy/index.html +21 -21
  26. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +142 -196
  27. package/coverage/lcov-report/src/api/controllers/dev.ts.html +28 -28
  28. package/coverage/lcov-report/src/api/controllers/index.html +115 -115
  29. package/coverage/lcov-report/src/api/controllers/integration.ts.html +5 -5
  30. package/coverage/lcov-report/src/api/controllers/layout.ts.html +9 -9
  31. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +11 -11
  32. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +6 -6
  33. package/coverage/lcov-report/src/api/controllers/permission.ts.html +14 -14
  34. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +20 -20
  35. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +62 -62
  36. package/coverage/lcov-report/src/api/controllers/plugin/index.html +72 -72
  37. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +150 -135
  38. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +56 -56
  39. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +11 -11
  40. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +18 -18
  41. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +20 -20
  42. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +75 -24
  43. package/coverage/lcov-report/src/api/controllers/public/index.html +58 -58
  44. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +7 -7
  45. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +25 -25
  46. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +9 -9
  47. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +8 -8
  48. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +4 -4
  49. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +4 -4
  50. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +4 -4
  51. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +15 -15
  52. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +21 -21
  53. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +21 -21
  54. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +27 -27
  55. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +8 -8
  56. package/coverage/lcov-report/src/api/controllers/query/import/index.html +8 -8
  57. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +11 -11
  58. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +14 -14
  59. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +14 -14
  60. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +8 -8
  61. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +12 -12
  62. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +23 -23
  63. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +16 -16
  64. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +20 -20
  65. package/coverage/lcov-report/src/api/controllers/query/index.html +20 -20
  66. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +131 -107
  67. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +11 -11
  68. package/coverage/lcov-report/src/api/controllers/role.ts.html +9 -9
  69. package/coverage/lcov-report/src/api/controllers/routing.ts.html +10 -10
  70. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +56 -41
  71. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +87 -57
  72. package/coverage/lcov-report/src/api/controllers/row/index.html +66 -66
  73. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +37 -37
  74. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +181 -106
  75. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +146 -146
  76. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +44 -35
  77. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +156 -39
  78. package/coverage/lcov-report/src/api/controllers/screen.ts.html +31 -31
  79. package/coverage/lcov-report/src/api/controllers/script.ts.html +19 -19
  80. package/coverage/lcov-report/src/api/controllers/static/index.html +18 -18
  81. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +56 -71
  82. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +60 -60
  83. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +56 -50
  84. package/coverage/lcov-report/src/api/controllers/table/index.html +48 -48
  85. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +157 -70
  86. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +58 -61
  87. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +109 -112
  88. package/coverage/lcov-report/src/api/controllers/templates.ts.html +21 -21
  89. package/coverage/lcov-report/src/api/controllers/user.ts.html +159 -135
  90. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +64 -19
  91. package/coverage/lcov-report/src/api/controllers/view/index.html +38 -38
  92. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +97 -133
  93. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +31 -31
  94. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +37 -37
  95. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +69 -63
  96. package/coverage/lcov-report/src/api/index.html +15 -15
  97. package/coverage/lcov-report/src/api/index.ts.html +40 -40
  98. package/coverage/lcov-report/src/api/routes/analytics.ts.html +10 -10
  99. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +11 -11
  100. package/coverage/lcov-report/src/api/routes/application.ts.html +46 -13
  101. package/coverage/lcov-report/src/api/routes/auth.ts.html +9 -9
  102. package/coverage/lcov-report/src/api/routes/automation.ts.html +14 -14
  103. package/coverage/lcov-report/src/api/routes/backup.ts.html +11 -11
  104. package/coverage/lcov-report/src/api/routes/cloud.ts.html +11 -11
  105. package/coverage/lcov-report/src/api/routes/component.ts.html +11 -11
  106. package/coverage/lcov-report/src/api/routes/datasource.ts.html +12 -12
  107. package/coverage/lcov-report/src/api/routes/deploy.ts.html +11 -14
  108. package/coverage/lcov-report/src/api/routes/dev.ts.html +17 -17
  109. package/coverage/lcov-report/src/api/routes/index.html +68 -68
  110. package/coverage/lcov-report/src/api/routes/index.ts.html +49 -40
  111. package/coverage/lcov-report/src/api/routes/integration.ts.html +11 -11
  112. package/coverage/lcov-report/src/api/routes/layout.ts.html +11 -11
  113. package/coverage/lcov-report/src/api/routes/metadata.ts.html +12 -12
  114. package/coverage/lcov-report/src/api/routes/migrations.ts.html +10 -10
  115. package/coverage/lcov-report/src/api/routes/permission.ts.html +12 -12
  116. package/coverage/lcov-report/src/api/routes/plugin.ts.html +10 -10
  117. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +147 -15
  118. package/coverage/lcov-report/src/api/routes/public/index.html +27 -27
  119. package/coverage/lcov-report/src/api/routes/public/index.ts.html +60 -60
  120. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +15 -15
  121. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +28 -16
  122. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +11 -11
  123. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +14 -14
  124. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +14 -14
  125. package/coverage/lcov-report/src/api/routes/public/tests/index.html +7 -7
  126. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +5 -5
  127. package/coverage/lcov-report/src/api/routes/public/users.ts.html +14 -14
  128. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +21 -21
  129. package/coverage/lcov-report/src/api/routes/public/utils/index.html +5 -5
  130. package/coverage/lcov-report/src/api/routes/query.ts.html +14 -14
  131. package/coverage/lcov-report/src/api/routes/role.ts.html +12 -12
  132. package/coverage/lcov-report/src/api/routes/routing.ts.html +11 -11
  133. package/coverage/lcov-report/src/api/routes/row.ts.html +14 -14
  134. package/coverage/lcov-report/src/api/routes/screen.ts.html +12 -12
  135. package/coverage/lcov-report/src/api/routes/script.ts.html +13 -13
  136. package/coverage/lcov-report/src/api/routes/static.ts.html +18 -18
  137. package/coverage/lcov-report/src/api/routes/table.ts.html +29 -98
  138. package/coverage/lcov-report/src/api/routes/templates.ts.html +11 -11
  139. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +27 -27
  140. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +23 -23
  141. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +33 -33
  142. package/coverage/lcov-report/src/api/routes/user.ts.html +12 -12
  143. package/coverage/lcov-report/src/api/routes/utils/index.html +3 -3
  144. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +44 -44
  145. package/coverage/lcov-report/src/api/routes/view.ts.html +13 -13
  146. package/coverage/lcov-report/src/api/routes/webhook.ts.html +13 -13
  147. package/coverage/lcov-report/src/app.ts.html +53 -47
  148. package/coverage/lcov-report/src/automations/actions.ts.html +31 -31
  149. package/coverage/lcov-report/src/automations/automationUtils.ts.html +127 -55
  150. package/coverage/lcov-report/src/automations/bullboard.ts.html +19 -19
  151. package/coverage/lcov-report/src/automations/index.html +54 -54
  152. package/coverage/lcov-report/src/automations/index.ts.html +23 -23
  153. package/coverage/lcov-report/src/automations/logging/index.html +3 -3
  154. package/coverage/lcov-report/src/automations/logging/index.ts.html +15 -15
  155. package/coverage/lcov-report/src/automations/steps/bash.ts.html +34 -34
  156. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +9 -9
  157. package/coverage/lcov-report/src/automations/steps/delay.ts.html +7 -7
  158. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +9 -9
  159. package/coverage/lcov-report/src/automations/steps/discord.ts.html +33 -33
  160. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +35 -35
  161. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +31 -31
  162. package/coverage/lcov-report/src/automations/steps/filter.ts.html +12 -12
  163. package/coverage/lcov-report/src/automations/steps/index.html +129 -129
  164. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +10 -10
  165. package/coverage/lcov-report/src/automations/steps/loop.ts.html +5 -5
  166. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +19 -19
  167. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +43 -43
  168. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +28 -28
  169. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +19 -19
  170. package/coverage/lcov-report/src/automations/steps/slack.ts.html +10 -10
  171. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +12 -12
  172. package/coverage/lcov-report/src/automations/steps/utils.ts.html +18 -18
  173. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +22 -22
  174. package/coverage/lcov-report/src/automations/tests/utilities/index.html +15 -15
  175. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +32 -32
  176. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +6 -6
  177. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +6 -6
  178. package/coverage/lcov-report/src/automations/triggerInfo/index.html +17 -17
  179. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +10 -10
  180. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +6 -6
  181. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +6 -6
  182. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +6 -6
  183. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +6 -6
  184. package/coverage/lcov-report/src/automations/triggers.ts.html +53 -38
  185. package/coverage/lcov-report/src/automations/utils.ts.html +80 -80
  186. package/coverage/lcov-report/src/constants/index.html +19 -19
  187. package/coverage/lcov-report/src/constants/index.ts.html +103 -103
  188. package/coverage/lcov-report/src/constants/layouts.ts.html +9 -9
  189. package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
  190. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -45
  191. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +8 -8
  192. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +8 -8
  193. package/coverage/lcov-report/src/db/defaultData/index.html +43 -43
  194. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +8 -8
  195. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +8 -8
  196. package/coverage/lcov-report/src/db/dynamoClient.ts.html +26 -26
  197. package/coverage/lcov-report/src/db/inMemoryView.ts.html +13 -13
  198. package/coverage/lcov-report/src/db/index.html +34 -34
  199. package/coverage/lcov-report/src/db/index.ts.html +10 -10
  200. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +38 -38
  201. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +7 -7
  202. package/coverage/lcov-report/src/db/linkedRows/index.html +37 -37
  203. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +40 -40
  204. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +25 -25
  205. package/coverage/lcov-report/src/db/newid.ts.html +5 -5
  206. package/coverage/lcov-report/src/db/utils.ts.html +90 -90
  207. package/coverage/lcov-report/src/definitions/automations.ts.html +9 -6
  208. package/coverage/lcov-report/src/definitions/index.html +5 -20
  209. package/coverage/lcov-report/src/environment.ts.html +44 -32
  210. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +14 -14
  211. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +8 -8
  212. package/coverage/lcov-report/src/events/index.html +20 -20
  213. package/coverage/lcov-report/src/events/index.ts.html +7 -7
  214. package/coverage/lcov-report/src/events/utils.ts.html +11 -11
  215. package/coverage/lcov-report/src/index.html +47 -47
  216. package/coverage/lcov-report/src/index.ts.html +8 -8
  217. package/coverage/lcov-report/src/integrations/airtable.ts.html +10 -10
  218. package/coverage/lcov-report/src/integrations/arangodb.ts.html +9 -9
  219. package/coverage/lcov-report/src/integrations/base/index.html +29 -29
  220. package/coverage/lcov-report/src/integrations/base/query.ts.html +15 -9
  221. package/coverage/lcov-report/src/integrations/base/sql.ts.html +38 -38
  222. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +23 -23
  223. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  224. package/coverage/lcov-report/src/integrations/couchdb.ts.html +109 -31
  225. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +17 -17
  226. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +27 -15
  227. package/coverage/lcov-report/src/integrations/firebase.ts.html +12 -12
  228. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +42 -42
  229. package/coverage/lcov-report/src/integrations/index.html +130 -130
  230. package/coverage/lcov-report/src/integrations/index.ts.html +50 -62
  231. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +31 -31
  232. package/coverage/lcov-report/src/integrations/mongodb.ts.html +421 -289
  233. package/coverage/lcov-report/src/integrations/mysql.ts.html +28 -28
  234. package/coverage/lcov-report/src/integrations/oracle.ts.html +31 -31
  235. package/coverage/lcov-report/src/integrations/postgres.ts.html +54 -54
  236. package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
  237. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +24 -159
  238. package/coverage/lcov-report/src/integrations/redis.ts.html +8 -8
  239. package/coverage/lcov-report/src/integrations/rest.ts.html +43 -52
  240. package/coverage/lcov-report/src/integrations/s3.ts.html +17 -17
  241. package/coverage/lcov-report/src/integrations/snowflake.ts.html +15 -15
  242. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  243. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  244. package/coverage/lcov-report/src/integrations/utils.ts.html +54 -54
  245. package/coverage/lcov-report/src/middleware/appInfo.ts.html +11 -11
  246. package/coverage/lcov-report/src/middleware/authorized.ts.html +49 -37
  247. package/coverage/lcov-report/src/middleware/builder.ts.html +26 -26
  248. package/coverage/lcov-report/src/middleware/currentapp.ts.html +50 -47
  249. package/coverage/lcov-report/src/middleware/index.html +40 -40
  250. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +10 -10
  251. package/coverage/lcov-report/src/middleware/publicApi.ts.html +9 -9
  252. package/coverage/lcov-report/src/middleware/resourceId.ts.html +23 -23
  253. package/coverage/lcov-report/src/middleware/selfhost.ts.html +2 -2
  254. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  255. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +6 -6
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +7 -7
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +7 -7
  258. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +31 -31
  259. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +8 -8
  260. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +13 -13
  261. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +7 -7
  262. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +7 -7
  263. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +8 -8
  264. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +21 -21
  265. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +17 -14
  266. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +19 -19
  267. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +9 -9
  268. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +13 -13
  269. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +23 -23
  270. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +26 -26
  271. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +7 -7
  272. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +14 -14
  273. package/coverage/lcov-report/src/migrations/functions/index.html +18 -18
  274. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +8 -8
  275. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +11 -11
  276. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +11 -11
  277. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +3 -3
  278. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +6 -6
  279. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +8 -8
  280. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -7
  281. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
  282. package/coverage/lcov-report/src/migrations/index.html +15 -15
  283. package/coverage/lcov-report/src/migrations/index.ts.html +43 -43
  284. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +4 -4
  285. package/coverage/lcov-report/src/migrations/tests/index.html +6 -6
  286. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +3 -3
  287. package/coverage/lcov-report/src/sdk/app/applications/index.html +20 -20
  288. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +6 -6
  289. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +34 -34
  290. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +15 -15
  291. package/coverage/lcov-report/src/sdk/app/automations/index.html +7 -7
  292. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +5 -5
  293. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +8 -8
  294. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +5 -5
  295. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +30 -30
  296. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +45 -57
  297. package/coverage/lcov-report/src/sdk/app/backups/index.html +42 -42
  298. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +7 -7
  299. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +73 -73
  300. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
  301. package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
  302. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
  303. package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
  304. package/coverage/lcov-report/src/{utilities/statusCodes.ts.html → sdk/app/queries/index.ts.html} +22 -28
  305. package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
  306. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +8 -8
  307. package/coverage/lcov-report/src/sdk/app/rows/index.html +8 -8
  308. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +6 -6
  309. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  310. package/coverage/lcov-report/src/sdk/app/tables/index.html +15 -15
  311. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +29 -20
  312. package/coverage/lcov-report/src/sdk/index.html +7 -7
  313. package/coverage/lcov-report/src/sdk/index.ts.html +24 -12
  314. package/coverage/lcov-report/src/sdk/users/index.html +10 -10
  315. package/coverage/lcov-report/src/sdk/users/index.ts.html +5 -5
  316. package/coverage/lcov-report/src/sdk/users/utils.ts.html +35 -35
  317. package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
  318. package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
  319. package/coverage/lcov-report/src/startup.ts.html +48 -63
  320. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +218 -152
  321. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +20 -20
  322. package/coverage/lcov-report/src/tests/utilities/index.html +33 -33
  323. package/coverage/lcov-report/src/tests/utilities/index.ts.html +2 -2
  324. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +235 -46
  325. package/coverage/lcov-report/src/threads/automation.ts.html +212 -251
  326. package/coverage/lcov-report/src/threads/index.html +46 -46
  327. package/coverage/lcov-report/src/threads/index.ts.html +39 -39
  328. package/coverage/lcov-report/src/threads/query.ts.html +140 -101
  329. package/coverage/lcov-report/src/threads/utils.ts.html +29 -29
  330. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +5 -5
  331. package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
  332. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +343 -0
  333. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +20 -20
  334. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +601 -0
  335. package/coverage/lcov-report/src/utilities/fileSystem/index.html +88 -28
  336. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +20 -1049
  337. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +277 -0
  338. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +9 -9
  339. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +193 -0
  340. package/coverage/lcov-report/src/utilities/global.ts.html +60 -60
  341. package/coverage/lcov-report/src/utilities/index.html +89 -119
  342. package/coverage/lcov-report/src/utilities/index.ts.html +40 -172
  343. package/coverage/lcov-report/src/utilities/redis.ts.html +38 -38
  344. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  345. package/coverage/lcov-report/src/utilities/routing/index.ts.html +5 -5
  346. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +34 -34
  347. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +102 -75
  348. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +9 -9
  349. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +54 -54
  350. package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +174 -234
  351. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +33 -33
  352. package/coverage/lcov-report/src/utilities/security.ts.html +13 -13
  353. package/coverage/lcov-report/src/utilities/usageQuota/index.html +9 -9
  354. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +38 -38
  355. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +3 -3
  356. package/coverage/lcov-report/src/utilities/users.ts.html +7 -7
  357. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +89 -62
  358. package/coverage/lcov-report/src/watch.ts.html +20 -20
  359. package/coverage/lcov-report/src/websocket.ts.html +15 -15
  360. package/coverage/lcov.info +13499 -12800
  361. package/dist/api/controllers/application.js +120 -109
  362. package/dist/api/controllers/cloud.js +6 -2
  363. package/dist/api/controllers/datasource.js +24 -15
  364. package/dist/api/controllers/deploy/index.js +43 -60
  365. package/dist/api/controllers/plugin/index.js +6 -6
  366. package/dist/api/controllers/public/applications.js +22 -1
  367. package/dist/api/controllers/query/index.js +23 -13
  368. package/dist/api/controllers/row/ExternalRequest.js +12 -4
  369. package/dist/api/controllers/row/external.js +20 -13
  370. package/dist/api/controllers/row/internal.js +52 -27
  371. package/dist/api/controllers/row/staticFormula.js +1 -1
  372. package/dist/api/controllers/row/utils.js +35 -3
  373. package/dist/api/controllers/static/index.js +47 -47
  374. package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  375. package/dist/api/controllers/table/external.js +16 -35
  376. package/dist/api/controllers/table/index.js +44 -15
  377. package/dist/api/controllers/table/internal.js +6 -7
  378. package/dist/api/controllers/table/utils.js +9 -9
  379. package/dist/api/controllers/user.js +14 -6
  380. package/dist/api/controllers/view/exporters.js +22 -6
  381. package/dist/api/controllers/view/index.js +23 -58
  382. package/dist/api/controllers/view/viewBuilder.js +15 -2
  383. package/dist/api/controllers/webhook.js +45 -43
  384. package/dist/api/routes/analytics.js +2 -1
  385. package/dist/api/routes/apikeys.js +2 -1
  386. package/dist/api/routes/application.js +5 -1
  387. package/dist/api/routes/auth.js +2 -1
  388. package/dist/api/routes/automation.js +2 -1
  389. package/dist/api/routes/backup.js +2 -1
  390. package/dist/api/routes/cloud.js +2 -1
  391. package/dist/api/routes/component.js +2 -1
  392. package/dist/api/routes/datasource.js +2 -1
  393. package/dist/api/routes/deploy.js +3 -3
  394. package/dist/api/routes/dev.js +2 -1
  395. package/dist/api/routes/index.js +2 -0
  396. package/dist/api/routes/integration.js +2 -1
  397. package/dist/api/routes/layout.js +2 -1
  398. package/dist/api/routes/metadata.js +2 -1
  399. package/dist/api/routes/migrations.js +2 -1
  400. package/dist/api/routes/permission.js +2 -1
  401. package/dist/api/routes/public/applications.js +37 -0
  402. package/dist/api/routes/public/middleware/mapper.js +3 -0
  403. package/dist/api/routes/query.js +2 -1
  404. package/dist/api/routes/role.js +2 -1
  405. package/dist/api/routes/routing.js +2 -1
  406. package/dist/api/routes/row.js +2 -2
  407. package/dist/api/routes/screen.js +2 -1
  408. package/dist/api/routes/script.js +2 -1
  409. package/dist/api/routes/static.js +6 -5
  410. package/dist/api/routes/table.js +8 -38
  411. package/dist/api/routes/templates.js +2 -1
  412. package/dist/api/routes/user.js +2 -1
  413. package/dist/api/routes/utils/validators.js +1 -1
  414. package/dist/api/routes/view.js +2 -1
  415. package/dist/api/routes/webhook.js +2 -1
  416. package/dist/app.js +9 -7
  417. package/dist/automations/automationUtils.js +26 -1
  418. package/dist/automations/logging/index.js +5 -25
  419. package/dist/automations/triggers.js +1 -0
  420. package/dist/db/index.js +5 -2
  421. package/dist/db/linkedRows/LinkController.js +2 -1
  422. package/dist/db/linkedRows/LinkDocument.js +2 -1
  423. package/dist/db/newid.js +4 -2
  424. package/dist/definitions/datasource.js +0 -6
  425. package/dist/environment.js +7 -2
  426. package/dist/events/AutomationEmitter.js +2 -1
  427. package/dist/events/BudibaseEmitter.js +2 -1
  428. package/dist/events/index.js +2 -1
  429. package/dist/index.js +2 -2
  430. package/dist/integrations/base/query.js +7 -2
  431. package/dist/integrations/base/sqlTable.js +14 -14
  432. package/dist/integrations/couchdb.js +34 -8
  433. package/dist/integrations/dynamodb.js +8 -5
  434. package/dist/integrations/elasticsearch.js +7 -3
  435. package/dist/integrations/googlesheets.js +1 -1
  436. package/dist/integrations/index.js +6 -7
  437. package/dist/integrations/mongodb.js +311 -271
  438. package/dist/integrations/mysql.js +2 -2
  439. package/dist/integrations/queries/sql.js +73 -100
  440. package/dist/integrations/rest.js +16 -18
  441. package/dist/middleware/authorized.js +2 -1
  442. package/dist/middleware/builder.js +4 -2
  443. package/dist/middleware/currentapp.js +6 -3
  444. package/dist/middleware/publicApi.js +4 -2
  445. package/dist/middleware/selfhost.js +4 -1
  446. package/dist/migrations/functions/backfill/global/configs.js +4 -4
  447. package/dist/package.json +12 -8
  448. package/dist/sdk/app/backups/imports.js +2 -6
  449. package/dist/sdk/app/datasources/datasources.js +147 -0
  450. package/dist/sdk/app/datasources/index.js +27 -0
  451. package/dist/sdk/app/queries/index.js +27 -0
  452. package/dist/sdk/app/queries/queries.js +60 -0
  453. package/dist/sdk/app/tables/index.js +6 -2
  454. package/dist/sdk/index.js +4 -0
  455. package/dist/sdk/utils/index.js +29 -0
  456. package/dist/startup.js +17 -17
  457. package/dist/threads/automation.js +22 -35
  458. package/dist/threads/index.js +4 -4
  459. package/dist/threads/query.js +27 -13
  460. package/dist/tsconfig.build.tsbuildinfo +1 -1
  461. package/dist/utilities/fileSystem/app.js +97 -0
  462. package/dist/utilities/fileSystem/clientLibrary.js +3 -3
  463. package/dist/utilities/fileSystem/filesystem.js +184 -0
  464. package/dist/utilities/fileSystem/index.js +18 -342
  465. package/dist/utilities/fileSystem/plugin.js +66 -0
  466. package/dist/utilities/fileSystem/template.js +47 -0
  467. package/dist/utilities/index.js +1 -44
  468. package/dist/utilities/rowProcessor/index.js +12 -4
  469. package/dist/utilities/schema.js +108 -0
  470. package/dist/utilities/scriptRunner.js +2 -1
  471. package/dist/utilities/statusCodes.js +2 -1
  472. package/dist/utilities/workerRequests.js +2 -0
  473. package/dist/watch.js +2 -25
  474. package/jest.config.ts +5 -2
  475. package/package.json +13 -9
  476. package/scripts/dev/manage.js +3 -2
  477. package/specs/openapi.json +84 -0
  478. package/specs/openapi.yaml +53 -0
  479. package/specs/resources/application.js +19 -0
  480. package/src/api/controllers/application.ts +142 -110
  481. package/src/api/controllers/auth.ts +2 -2
  482. package/src/api/controllers/cloud.ts +10 -6
  483. package/src/api/controllers/datasource.ts +33 -25
  484. package/src/api/controllers/deploy/Deployment.ts +1 -0
  485. package/src/api/controllers/deploy/index.ts +40 -58
  486. package/src/api/controllers/plugin/index.ts +14 -9
  487. package/src/api/controllers/public/applications.ts +17 -0
  488. package/src/api/controllers/query/index.ts +49 -41
  489. package/src/api/controllers/row/ExternalRequest.ts +8 -3
  490. package/src/api/controllers/row/external.ts +24 -14
  491. package/src/api/controllers/row/internal.ts +66 -41
  492. package/src/api/controllers/row/staticFormula.ts +5 -2
  493. package/src/api/controllers/row/utils.ts +42 -3
  494. package/src/api/controllers/static/index.ts +22 -27
  495. package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
  496. package/src/api/controllers/table/external.ts +18 -16
  497. package/src/api/controllers/table/index.ts +46 -17
  498. package/src/api/controllers/table/internal.ts +6 -7
  499. package/src/api/controllers/table/utils.ts +12 -13
  500. package/src/api/controllers/user.ts +21 -13
  501. package/src/api/controllers/view/exporters.ts +20 -5
  502. package/src/api/controllers/view/index.ts +30 -42
  503. package/src/api/controllers/view/tests/viewBuilder.spec.js +1 -1
  504. package/src/api/controllers/view/viewBuilder.ts +1 -1
  505. package/src/api/controllers/webhook.ts +48 -46
  506. package/src/api/routes/analytics.ts +1 -1
  507. package/src/api/routes/apikeys.ts +1 -1
  508. package/src/api/routes/application.ts +12 -1
  509. package/src/api/routes/auth.ts +1 -1
  510. package/src/api/routes/automation.ts +1 -1
  511. package/src/api/routes/backup.ts +1 -1
  512. package/src/api/routes/cloud.ts +1 -1
  513. package/src/api/routes/component.ts +1 -1
  514. package/src/api/routes/datasource.ts +1 -1
  515. package/src/api/routes/deploy.ts +1 -2
  516. package/src/api/routes/dev.ts +1 -1
  517. package/src/api/routes/index.ts +6 -3
  518. package/src/api/routes/integration.ts +1 -1
  519. package/src/api/routes/layout.ts +1 -1
  520. package/src/api/routes/metadata.ts +1 -1
  521. package/src/api/routes/migrations.ts +1 -1
  522. package/src/api/routes/permission.ts +1 -1
  523. package/src/api/routes/public/applications.ts +44 -0
  524. package/src/api/routes/public/middleware/mapper.ts +4 -0
  525. package/src/api/routes/query.ts +1 -1
  526. package/src/api/routes/role.ts +1 -1
  527. package/src/api/routes/routing.ts +1 -1
  528. package/src/api/routes/row.ts +1 -1
  529. package/src/api/routes/screen.ts +1 -1
  530. package/src/api/routes/script.ts +1 -1
  531. package/src/api/routes/static.ts +2 -2
  532. package/src/api/routes/table.ts +16 -39
  533. package/src/api/routes/templates.ts +1 -1
  534. package/src/api/routes/tests/__snapshots__/{datasource.spec.js.snap → datasource.spec.ts.snap} +0 -0
  535. package/src/api/routes/tests/{application.spec.js → application.spec.ts} +94 -18
  536. package/src/api/routes/tests/{backup.spec.js → backup.spec.ts} +17 -6
  537. package/src/api/routes/tests/cloud.spec.ts +65 -0
  538. package/src/api/routes/tests/data/budibase-component-1.0.1.tgz +0 -0
  539. package/src/api/routes/tests/data/comment-box-1.0.2.tar.gz +0 -0
  540. package/src/api/routes/tests/data/export-test.tar.gz +0 -0
  541. package/src/api/routes/tests/{datasource.spec.js → datasource.spec.ts} +56 -14
  542. package/src/api/routes/tests/misc.spec.js +4 -10
  543. package/src/api/routes/tests/permissions.spec.js +1 -1
  544. package/src/api/routes/tests/plugin.spec.ts +179 -0
  545. package/src/api/routes/tests/routing.spec.js +1 -2
  546. package/src/api/routes/tests/row.spec.js +4 -2
  547. package/src/api/routes/tests/static.spec.js +2 -17
  548. package/src/api/routes/tests/table.spec.js +16 -32
  549. package/src/api/routes/tests/user.spec.js +105 -0
  550. package/src/api/routes/tests/utilities/TestFunctions.ts +1 -1
  551. package/src/api/routes/tests/utilities/index.ts +2 -2
  552. package/src/api/routes/tests/webhook.spec.js +1 -1
  553. package/src/api/routes/user.ts +1 -1
  554. package/src/api/routes/utils/validators.ts +1 -1
  555. package/src/api/routes/view.ts +1 -1
  556. package/src/api/routes/webhook.ts +1 -1
  557. package/src/app.ts +5 -3
  558. package/src/automations/automationUtils.ts +24 -0
  559. package/src/automations/logging/index.ts +1 -1
  560. package/src/automations/tests/bash.spec.js +34 -0
  561. package/src/automations/tests/discord.spec.js +27 -0
  562. package/src/automations/tests/executeQuery.spec.js +49 -0
  563. package/src/automations/tests/executeScript.spec.js +48 -0
  564. package/src/automations/tests/loop.spec.ts +45 -0
  565. package/src/automations/tests/sendSmtpEmail.spec.js +71 -0
  566. package/src/automations/tests/serverLog.spec.js +22 -0
  567. package/src/automations/tests/utilities/index.ts +2 -2
  568. package/src/automations/tests/zapier.spec.js +27 -0
  569. package/src/automations/triggers.ts +6 -1
  570. package/src/automations/unitTests/automationUtils.spec.ts +65 -0
  571. package/src/db/index.ts +1 -1
  572. package/src/db/linkedRows/LinkController.ts +1 -1
  573. package/src/db/linkedRows/LinkDocument.ts +1 -1
  574. package/src/db/newid.ts +1 -1
  575. package/src/db/tests/linkController.spec.js +1 -1
  576. package/src/definitions/automations.ts +1 -0
  577. package/src/definitions/datasource.ts +0 -41
  578. package/src/definitions/openapi.ts +10 -0
  579. package/src/environment.ts +6 -2
  580. package/src/events/AutomationEmitter.ts +1 -1
  581. package/src/events/BudibaseEmitter.ts +1 -1
  582. package/src/events/index.ts +1 -1
  583. package/src/index.ts +1 -1
  584. package/src/integrations/base/query.ts +3 -1
  585. package/src/integrations/base/sqlTable.ts +1 -1
  586. package/src/integrations/couchdb.ts +40 -14
  587. package/src/integrations/dynamodb.ts +3 -3
  588. package/src/integrations/elasticsearch.ts +8 -4
  589. package/src/integrations/googlesheets.ts +1 -1
  590. package/src/integrations/index.ts +5 -9
  591. package/src/integrations/mongodb.ts +315 -271
  592. package/src/integrations/mysql.ts +1 -1
  593. package/src/integrations/queries/sql.ts +5 -50
  594. package/src/integrations/rest.ts +16 -19
  595. package/src/integrations/tests/couchdb.spec.ts +33 -21
  596. package/src/integrations/tests/rest.spec.ts +19 -15
  597. package/src/middleware/authorized.ts +5 -1
  598. package/src/middleware/builder.ts +1 -1
  599. package/src/middleware/currentapp.ts +4 -3
  600. package/src/middleware/publicApi.ts +1 -1
  601. package/src/middleware/selfhost.ts +1 -1
  602. package/src/middleware/tests/authorized.spec.js +1 -1
  603. package/src/middleware/tests/currentapp.spec.js +1 -1
  604. package/src/middleware/tests/selfhost.spec.js +1 -1
  605. package/src/migrations/functions/backfill/global/configs.ts +5 -4
  606. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
  607. package/src/sdk/app/backups/imports.ts +2 -6
  608. package/src/sdk/app/datasources/datasources.ts +136 -0
  609. package/src/sdk/app/datasources/index.ts +5 -0
  610. package/src/sdk/app/queries/index.ts +5 -0
  611. package/src/sdk/app/queries/queries.ts +50 -0
  612. package/src/sdk/app/tables/index.ts +6 -3
  613. package/src/sdk/index.ts +4 -0
  614. package/src/sdk/tests/attachments.spec.ts +1 -4
  615. package/src/sdk/utils/index.ts +16 -0
  616. package/src/startup.ts +3 -8
  617. package/src/tests/jestEnv.ts +13 -0
  618. package/src/tests/jestSetup.ts +4 -15
  619. package/src/tests/utilities/TestConfiguration.ts +38 -16
  620. package/src/tests/utilities/structures.ts +65 -2
  621. package/src/threads/automation.ts +22 -35
  622. package/src/threads/definitions.ts +3 -0
  623. package/src/threads/index.ts +1 -1
  624. package/src/threads/query.ts +28 -15
  625. package/src/utilities/fileSystem/app.ts +86 -0
  626. package/src/utilities/fileSystem/clientLibrary.ts +1 -1
  627. package/src/utilities/fileSystem/filesystem.ts +172 -0
  628. package/src/utilities/fileSystem/index.ts +5 -348
  629. package/src/utilities/fileSystem/plugin.ts +64 -0
  630. package/src/utilities/fileSystem/template.ts +36 -0
  631. package/src/utilities/index.ts +1 -45
  632. package/src/utilities/rowProcessor/index.ts +17 -8
  633. package/src/utilities/rowProcessor/tests/utils.spec.ts +57 -0
  634. package/src/utilities/schema.ts +141 -0
  635. package/src/utilities/scriptRunner.ts +1 -1
  636. package/src/utilities/statusCodes.ts +1 -1
  637. package/src/utilities/workerRequests.ts +10 -1
  638. package/src/watch.ts +1 -1
  639. package/tsconfig.build.json +2 -0
  640. package/tsconfig.json +2 -1
  641. package/builder/assets/index.96b9ffed.css +0 -6
  642. package/builder/assets/index.fae8f9eb.js +0 -1024
  643. package/coverage/lcov-report/src/utilities/plugins.ts.html +0 -151
  644. package/dist/api/routes/tests/utilities/TestFunctions.js +0 -167
  645. package/dist/api/routes/tests/utilities/index.js +0 -131
  646. package/dist/automations/tests/utilities/index.js +0 -81
  647. package/dist/tests/utilities/TestConfiguration.js +0 -562
  648. package/dist/tests/utilities/controllers.js +0 -40
  649. package/dist/tests/utilities/structures.js +0 -168
  650. package/dist/utilities/csvParser.js +0 -152
  651. package/dist/utilities/plugins.js +0 -26
  652. package/src/api/routes/tests/deployment.spec.ts +0 -25
  653. package/src/automations/unitTests/automationUtils.spec.js +0 -17
  654. package/src/utilities/csvParser.ts +0 -161
  655. package/src/utilities/plugins.ts +0 -22
  656. package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
  657. package/src/utilities/tests/csvParser.spec.js +0 -112
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">55.8% </span>
26
+ <span class="strong">58.69% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>101/181</span>
28
+ <span class='fraction'>108/184</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">48.33% </span>
33
+ <span class="strong">50.87% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>58/120</span>
35
+ <span class='fraction'>58/114</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">60.6% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>12/23</span>
42
+ <span class='fraction'>20/33</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">57.8% </span>
47
+ <span class="strong">60.57% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>100/173</span>
49
+ <span class='fraction'>106/175</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,47 +80,47 @@
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">
83
+ <td data-value="57.5" class="pic medium">
84
84
  <div class="chart"><div class="cover-fill" style="width: 57%"></div><div class="cover-empty" style="width: 43%"></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="57.5" class="pct medium">57.5%</td>
87
+ <td data-value="120" class="abs medium">69/120</td>
88
+ <td data-value="43.28" class="pct low">43.28%</td>
89
+ <td data-value="67" class="abs low">29/67</td>
90
+ <td data-value="55" class="pct medium">55%</td>
91
+ <td data-value="20" class="abs medium">11/20</td>
92
+ <td data-value="60.52" class="pct medium">60.52%</td>
93
+ <td data-value="114" class="abs medium">69/114</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
97
97
  <td class="file medium" data-value="map.ts"><a href="map.ts.html">map.ts</a></td>
98
- <td data-value="61.11" class="pic medium">
99
- <div class="chart"><div class="cover-fill" style="width: 61%"></div><div class="cover-empty" style="width: 39%"></div></div>
98
+ <td data-value="63.15" class="pic medium">
99
+ <div class="chart"><div class="cover-fill" style="width: 63%"></div><div class="cover-empty" style="width: 37%"></div></div>
100
100
  </td>
101
- <td data-value="61.11" class="pct medium">61.11%</td>
102
- <td data-value="18" class="abs medium">11/18</td>
101
+ <td data-value="63.15" class="pct medium">63.15%</td>
102
+ <td data-value="19" class="abs medium">12/19</td>
103
103
  <td data-value="70" class="pct medium">70%</td>
104
104
  <td data-value="10" class="abs medium">7/10</td>
105
- <td data-value="66.66" class="pct medium">66.66%</td>
106
- <td data-value="6" class="abs medium">4/6</td>
105
+ <td data-value="71.42" class="pct medium">71.42%</td>
106
+ <td data-value="7" class="abs medium">5/7</td>
107
107
  <td data-value="58.82" class="pct medium">58.82%</td>
108
108
  <td data-value="17" class="abs medium">10/17</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
112
- <td class="file low" data-value="utils.ts"><a href="utils.ts.html">utils.ts</a></td>
113
- <td data-value="48.88" class="pic low">
114
- <div class="chart"><div class="cover-fill" style="width: 48%"></div><div class="cover-empty" style="width: 52%"></div></div>
112
+ <td class="file medium" data-value="utils.ts"><a href="utils.ts.html">utils.ts</a></td>
113
+ <td data-value="60" class="pic medium">
114
+ <div class="chart"><div class="cover-fill" style="width: 60%"></div><div class="cover-empty" style="width: 40%"></div></div>
115
115
  </td>
116
- <td data-value="48.88" class="pct low">48.88%</td>
117
- <td data-value="45" class="abs low">22/45</td>
118
- <td data-value="43.24" class="pct low">43.24%</td>
119
- <td data-value="37" class="abs low">16/37</td>
116
+ <td data-value="60" class="pct medium">60%</td>
117
+ <td data-value="45" class="abs medium">27/45</td>
118
+ <td data-value="59.45" class="pct medium">59.45%</td>
119
+ <td data-value="37" class="abs medium">22/37</td>
120
120
  <td data-value="66.66" class="pct medium">66.66%</td>
121
- <td data-value="3" class="abs medium">2/3</td>
122
- <td data-value="50" class="pct medium">50%</td>
123
- <td data-value="44" class="abs medium">22/44</td>
121
+ <td data-value="6" class="abs medium">4/6</td>
122
+ <td data-value="61.36" class="pct medium">61.36%</td>
123
+ <td data-value="44" class="abs medium">27/44</td>
124
124
  </tr>
125
125
 
126
126
  </tbody>
@@ -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 Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
134
+ at Sun Feb 05 2023 23:58:26 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">57.5% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>68/118</span>
28
+ <span class='fraction'>69/120</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">43.28% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>35/73</span>
35
+ <span class='fraction'>29/67</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">55% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>6/14</span>
42
+ <span class='fraction'>11/20</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">60.52% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>68/112</span>
49
+ <span class='fraction'>69/114</span>
50
50
  </div>
51
51
 
52
52
 
@@ -333,24 +333,32 @@
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">47x</span>
337
- <span class="cline-any cline-yes">47x</span>
338
- <span class="cline-any cline-yes">47x</span>
339
- <span class="cline-any cline-yes">47x</span>
340
- <span class="cline-any cline-yes">47x</span>
341
- <span class="cline-any cline-yes">47x</span>
342
- <span class="cline-any cline-yes">47x</span>
343
- <span class="cline-any cline-yes">47x</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>
346
+ <span class="cline-any cline-yes">56x</span>
347
+ <span class="cline-any cline-yes">56x</span>
344
348
  <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-yes">47x</span>
346
- <span class="cline-any cline-yes">47x</span>
349
+ <span class="cline-any cline-yes">56x</span>
350
+ <span class="cline-any cline-yes">56x</span>
351
+ <span class="cline-any cline-yes">56x</span>
347
352
  <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-yes">56x</span>
348
354
  <span class="cline-any cline-neutral">&nbsp;</span>
349
355
  <span class="cline-any cline-neutral">&nbsp;</span>
350
356
  <span class="cline-any cline-neutral">&nbsp;</span>
351
357
  <span class="cline-any cline-neutral">&nbsp;</span>
352
358
  <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-yes">47x</span>
359
+ <span class="cline-any cline-neutral">&nbsp;</span>
360
+ <span class="cline-any cline-neutral">&nbsp;</span>
361
+ <span class="cline-any cline-yes">56x</span>
354
362
  <span class="cline-any cline-neutral">&nbsp;</span>
355
363
  <span class="cline-any cline-neutral">&nbsp;</span>
356
364
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -383,23 +391,23 @@
383
391
  <span class="cline-any cline-neutral">&nbsp;</span>
384
392
  <span class="cline-any cline-neutral">&nbsp;</span>
385
393
  <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-yes">47x</span>
394
+ <span class="cline-any cline-no">&nbsp;</span>
387
395
  <span class="cline-any cline-neutral">&nbsp;</span>
388
396
  <span class="cline-any cline-neutral">&nbsp;</span>
389
397
  <span class="cline-any cline-neutral">&nbsp;</span>
390
398
  <span class="cline-any cline-neutral">&nbsp;</span>
391
399
  <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-yes">86x</span>
393
- <span class="cline-any cline-yes">86x</span>
394
- <span class="cline-any cline-yes">86x</span>
400
+ <span class="cline-any cline-yes">88x</span>
401
+ <span class="cline-any cline-yes">88x</span>
402
+ <span class="cline-any cline-yes">88x</span>
395
403
  <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-yes">86x</span>
404
+ <span class="cline-any cline-yes">88x</span>
397
405
  <span class="cline-any cline-neutral">&nbsp;</span>
398
406
  <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-yes">86x</span>
400
- <span class="cline-any cline-yes">86x</span>
401
- <span class="cline-any cline-yes">232x</span>
402
- <span class="cline-any cline-yes">232x</span>
407
+ <span class="cline-any cline-yes">88x</span>
408
+ <span class="cline-any cline-yes">88x</span>
409
+ <span class="cline-any cline-yes">236x</span>
410
+ <span class="cline-any cline-yes">236x</span>
403
411
  <span class="cline-any cline-neutral">&nbsp;</span>
404
412
  <span class="cline-any cline-no">&nbsp;</span>
405
413
  <span class="cline-any cline-no">&nbsp;</span>
@@ -431,7 +439,7 @@
431
439
  <span class="cline-any cline-no">&nbsp;</span>
432
440
  <span class="cline-any cline-neutral">&nbsp;</span>
433
441
  <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-yes">86x</span>
442
+ <span class="cline-any cline-yes">88x</span>
435
443
  <span class="cline-any cline-neutral">&nbsp;</span>
436
444
  <span class="cline-any cline-neutral">&nbsp;</span>
437
445
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -440,21 +448,21 @@
440
448
  <span class="cline-any cline-neutral">&nbsp;</span>
441
449
  <span class="cline-any cline-neutral">&nbsp;</span>
442
450
  <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-yes">47x</span>
451
+ <span class="cline-any cline-yes">1x</span>
444
452
  <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-yes">200x</span>
453
+ <span class="cline-any cline-yes">204x</span>
446
454
  <span class="cline-any cline-no">&nbsp;</span>
447
455
  <span class="cline-any cline-neutral">&nbsp;</span>
448
456
  <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-yes">200x</span>
457
+ <span class="cline-any cline-yes">204x</span>
450
458
  <span class="cline-any cline-neutral">&nbsp;</span>
451
459
  <span class="cline-any cline-yes">16x</span>
452
- <span class="cline-any cline-yes">184x</span>
460
+ <span class="cline-any cline-yes">188x</span>
453
461
  <span class="cline-any cline-neutral">&nbsp;</span>
454
462
  <span class="cline-any cline-yes">22x</span>
455
463
  <span class="cline-any cline-neutral">&nbsp;</span>
456
464
  <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-yes">162x</span>
465
+ <span class="cline-any cline-yes">166x</span>
458
466
  <span class="cline-any cline-neutral">&nbsp;</span>
459
467
  <span class="cline-any cline-neutral">&nbsp;</span>
460
468
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -466,43 +474,52 @@
466
474
  <span class="cline-any cline-neutral">&nbsp;</span>
467
475
  <span class="cline-any cline-neutral">&nbsp;</span>
468
476
  <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-yes">47x</span>
477
+ <span class="cline-any cline-yes">88x</span>
470
478
  <span class="cline-any cline-neutral">&nbsp;</span>
471
479
  <span class="cline-any cline-neutral">&nbsp;</span>
472
480
  <span class="cline-any cline-neutral">&nbsp;</span>
473
481
  <span class="cline-any cline-neutral">&nbsp;</span>
474
482
  <span class="cline-any cline-neutral">&nbsp;</span>
475
- <span class="cline-any cline-yes">86x</span>
483
+ <span class="cline-any cline-yes">88x</span>
476
484
  <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-yes">86x</span>
478
- <span class="cline-any cline-yes">86x</span>
479
- <span class="cline-any cline-yes">86x</span>
480
- <span class="cline-any cline-yes">397x</span>
485
+ <span class="cline-any cline-yes">88x</span>
486
+ <span class="cline-any cline-yes">88x</span>
487
+ <span class="cline-any cline-yes">88x</span>
488
+ <span class="cline-any cline-yes">405x</span>
481
489
  <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-yes">397x</span>
483
- <span class="cline-any cline-yes">198x</span>
490
+ <span class="cline-any cline-yes">405x</span>
491
+ <span class="cline-any cline-yes">202x</span>
484
492
  <span class="cline-any cline-yes">13x</span>
485
493
  <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-yes">198x</span>
494
+ <span class="cline-any cline-yes">202x</span>
487
495
  <span class="cline-any cline-neutral">&nbsp;</span>
488
496
  <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-yes">199x</span>
497
+ <span class="cline-any cline-yes">203x</span>
490
498
  <span class="cline-any cline-no">&nbsp;</span>
491
499
  <span class="cline-any cline-neutral">&nbsp;</span>
492
500
  <span class="cline-any cline-neutral">&nbsp;</span>
493
501
  <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-yes">199x</span>
502
+ <span class="cline-any cline-yes">203x</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-neutral">&nbsp;</span>
505
+ <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-yes">203x</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>
495
512
  <span class="cline-any cline-neutral">&nbsp;</span>
496
513
  <span class="cline-any cline-neutral">&nbsp;</span>
497
514
  <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-yes">86x</span>
499
- <span class="cline-any cline-yes">80x</span>
500
- <span class="cline-any cline-yes">80x</span>
501
515
  <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-yes">88x</span>
517
+ <span class="cline-any cline-yes">82x</span>
518
+ <span class="cline-any cline-yes">82x</span>
502
519
  <span class="cline-any cline-neutral">&nbsp;</span>
503
520
  <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-yes">86x</span>
505
521
  <span class="cline-any cline-neutral">&nbsp;</span>
522
+ <span class="cline-any cline-yes">88x</span>
506
523
  <span class="cline-any cline-neutral">&nbsp;</span>
507
524
  <span class="cline-any cline-neutral">&nbsp;</span>
508
525
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -513,25 +530,26 @@
513
530
  <span class="cline-any cline-neutral">&nbsp;</span>
514
531
  <span class="cline-any cline-neutral">&nbsp;</span>
515
532
  <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-yes">47x</span>
517
533
  <span class="cline-any cline-neutral">&nbsp;</span>
534
+ <span class="cline-any cline-yes">130x</span>
518
535
  <span class="cline-any cline-neutral">&nbsp;</span>
519
536
  <span class="cline-any cline-neutral">&nbsp;</span>
520
537
  <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-yes">126x</span>
522
- <span class="cline-any cline-yes">126x</span>
523
- <span class="cline-any cline-yes">106x</span>
524
- <span class="cline-any cline-yes">106x</span>
525
538
  <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-yes">130x</span>
540
+ <span class="cline-any cline-yes">130x</span>
541
+ <span class="cline-any cline-yes">108x</span>
542
+ <span class="cline-any cline-yes">108x</span>
526
543
  <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-yes">126x</span>
528
544
  <span class="cline-any cline-neutral">&nbsp;</span>
545
+ <span class="cline-any cline-yes">130x</span>
529
546
  <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-yes">126x</span>
531
547
  <span class="cline-any cline-neutral">&nbsp;</span>
548
+ <span class="cline-any cline-yes">130x</span>
532
549
  <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-yes">126x</span>
534
- <span class="cline-any cline-yes">351x</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-yes">130x</span>
552
+ <span class="cline-any cline-yes">359x</span>
535
553
  <span class="cline-any cline-yes">8x</span>
536
554
  <span class="cline-any cline-yes">8x</span>
537
555
  <span class="cline-any cline-yes">2x</span>
@@ -542,10 +560,10 @@
542
560
  <span class="cline-any cline-neutral">&nbsp;</span>
543
561
  <span class="cline-any cline-neutral">&nbsp;</span>
544
562
  <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-yes">126x</span>
546
- <span class="cline-any cline-yes">40x</span>
563
+ <span class="cline-any cline-yes">130x</span>
564
+ <span class="cline-any cline-yes">42x</span>
547
565
  <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-yes">126x</span>
566
+ <span class="cline-any cline-yes">128x</span>
549
567
  <span class="cline-any cline-neutral">&nbsp;</span>
550
568
  <span class="cline-any cline-neutral">&nbsp;</span>
551
569
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -558,7 +576,7 @@
558
576
  <span class="cline-any cline-neutral">&nbsp;</span>
559
577
  <span class="cline-any cline-neutral">&nbsp;</span>
560
578
  <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-yes">47x</span>
579
+ <span class="cline-any cline-yes">14x</span>
562
580
  <span class="cline-any cline-neutral">&nbsp;</span>
563
581
  <span class="cline-any cline-neutral">&nbsp;</span>
564
582
  <span class="cline-any cline-neutral">&nbsp;</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
  /**
@@ -653,7 +670,7 @@ function <span class="fstat-no" title="function not covered" >getRemovedAttachme
653
670
  * @returns {{row: Object, table: Object}} The updated row and table, the table may need to be updated
654
671
  * for automatic ID purposes.
655
672
  */
656
- export function processAutoColumn(
673
+ export function <span class="cstat-no" title="statement not covered" >processAutoColumn<span class="fstat-no" title="function not covered" >(</span></span>
657
674
  user: ContextUser | null,
658
675
  table: Table,
659
676
  row: Row,
@@ -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
  }
@@ -847,7 +874,7 @@ export async function cleanupAttachments(
847
874
  }
848
875
  }
849
876
  let files: string[] = <span class="cstat-no" title="statement not covered" >[]</span>
850
- function <span class="fstat-no" title="function not covered" >addFiles(</span>row: Row, key: string) {
877
+ function <span class="fstat-no" title="function not covered" >addFiles(r</span>ow: Row, key: string) {
851
878
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (row[key]) {</span>
852
879
  <span class="cstat-no" title="statement not covered" > files = files.concat(row[key].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>
853
880
  }
@@ -859,18 +886,18 @@ export async function cleanupAttachments(
859
886
  }
860
887
  // old table had this column, new table doesn't - delete it
861
888
  <span class="cstat-no" title="statement not covered" > if (rows &amp;&amp; oldTable &amp;&amp; !table.schema[key]) {</span>
862
- <span class="cstat-no" title="statement not covered" > rows.forEach(<span class="fstat-no" title="function not covered" >row </span>=&gt; <span class="cstat-no" title="statement not covered" >addFiles(row, key))</span></span>
889
+ <span class="cstat-no" title="statement not covered" > rows.forEach(<span class="fstat-no" title="function not covered" >row =&gt; <span class="cstat-no" title="statement not covered" >a</span>ddFiles(row, key))</span></span>
863
890
  } else <span class="cstat-no" title="statement not covered" >if (oldRow &amp;&amp; row) {</span>
864
891
  // if updating, need to manage the differences
865
892
  <span class="cstat-no" title="statement not covered" > files = files.concat(getRemovedAttachmentKeys(oldRow, row, key))</span>
866
893
  } else <span class="cstat-no" title="statement not covered" >if (row) {</span>
867
894
  <span class="cstat-no" title="statement not covered" > addFiles(row, key)</span>
868
895
  } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (rows) {</span>
869
- <span class="cstat-no" title="statement not covered" > rows.forEach(<span class="fstat-no" title="function not covered" >row </span>=&gt; <span class="cstat-no" title="statement not covered" >addFiles(row, key))</span></span>
896
+ <span class="cstat-no" title="statement not covered" > rows.forEach(<span class="fstat-no" title="function not covered" >row =&gt; <span class="cstat-no" title="statement not covered" >a</span>ddFiles(row, key))</span></span>
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 Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
910
+ at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
884
911
  </div>
885
912
  <script src="../../../prettify.js"></script>
886
913
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">61.11% </span>
26
+ <span class="strong">63.15% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>11/18</span>
28
+ <span class='fraction'>12/19</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,9 +37,9 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">66.66% </span>
40
+ <span class="strong">71.42% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>4/6</span>
42
+ <span class='fraction'>5/7</span>
43
43
  </div>
44
44
 
45
45
 
@@ -160,12 +160,12 @@
160
160
  <a name='L95'></a><a href='#L95'>95</a>
161
161
  <a name='L96'></a><a href='#L96'>96</a>
162
162
  <a name='L97'></a><a href='#L97'>97</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
163
- <span class="cline-any cline-yes">47x</span>
163
+ <span class="cline-any cline-yes">56x</span>
164
164
  <span class="cline-any cline-neutral">&nbsp;</span>
165
165
  <span class="cline-any cline-neutral">&nbsp;</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
167
  <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-yes">47x</span>
168
+ <span class="cline-any cline-yes">634x</span>
169
169
  <span class="cline-any cline-neutral">&nbsp;</span>
170
170
  <span class="cline-any cline-neutral">&nbsp;</span>
171
171
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -336,10 +336,10 @@ export const TYPE_TRANSFORM_MAP: any = {
336
336
  false: false,
337
337
  },
338
338
  [FieldTypes.AUTO]: {
339
- parse: <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >undefined,</span>
339
+ parse: <span class="fstat-no" title="function not covered" >() =&gt; <span class="cstat-no" title="statement not covered" >u</span>ndefined,</span>
340
340
  },
341
341
  [FieldTypes.JSON]: {
342
- parse: <span class="fstat-no" title="function not covered" >input </span>=&gt; {
342
+ parse: <span class="fstat-no" title="function not covered" >input =&gt; {</span>
343
343
  <span class="cstat-no" title="statement not covered" > try {</span>
344
344
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (input === "") {</span>
345
345
  <span class="cstat-no" title="statement not covered" > return undefined</span>
@@ -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 Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
361
+ at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
362
362
  </div>
363
363
  <script src="../../../prettify.js"></script>
364
364
  <script>