@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,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">32.75% </span>
26
+ <span class="strong">25.86% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>38/116</span>
28
+ <span class='fraction'>30/116</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">23.8% </span>
40
+ <span class="strong">27.27% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>5/21</span>
42
+ <span class='fraction'>9/33</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">33.04% </span>
47
+ <span class="strong">23.42% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>38/115</span>
49
+ <span class='fraction'>26/111</span>
50
50
  </div>
51
51
 
52
52
 
@@ -380,14 +380,14 @@
380
380
  <a name='L315'></a><a href='#L315'>315</a>
381
381
  <a name='L316'></a><a href='#L316'>316</a>
382
382
  <a name='L317'></a><a href='#L317'>317</a>
383
- <a name='L318'></a><a href='#L318'>318</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
384
- <span class="cline-any cline-yes">55x</span>
385
- <span class="cline-any cline-yes">55x</span>
383
+ <a name='L318'></a><a href='#L318'>318</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">64x</span>
384
+ <span class="cline-any cline-yes">64x</span>
385
+ <span class="cline-any cline-yes">64x</span>
386
386
  <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-yes">55x</span>
388
- <span class="cline-any cline-yes">55x</span>
387
+ <span class="cline-any cline-yes">64x</span>
388
+ <span class="cline-any cline-yes">64x</span>
389
389
  <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-yes">55x</span>
390
+ <span class="cline-any cline-yes">64x</span>
391
391
  <span class="cline-any cline-neutral">&nbsp;</span>
392
392
  <span class="cline-any cline-neutral">&nbsp;</span>
393
393
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -407,7 +407,7 @@
407
407
  <span class="cline-any cline-neutral">&nbsp;</span>
408
408
  <span class="cline-any cline-neutral">&nbsp;</span>
409
409
  <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-yes">55x</span>
410
+ <span class="cline-any cline-yes">64x</span>
411
411
  <span class="cline-any cline-neutral">&nbsp;</span>
412
412
  <span class="cline-any cline-neutral">&nbsp;</span>
413
413
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -415,10 +415,10 @@
415
415
  <span class="cline-any cline-neutral">&nbsp;</span>
416
416
  <span class="cline-any cline-neutral">&nbsp;</span>
417
417
  <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-yes">55x</span>
419
- <span class="cline-any cline-yes">55x</span>
418
+ <span class="cline-any cline-yes">64x</span>
419
+ <span class="cline-any cline-yes">64x</span>
420
420
  <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-yes">55x</span>
421
+ <span class="cline-any cline-yes">64x</span>
422
422
  <span class="cline-any cline-neutral">&nbsp;</span>
423
423
  <span class="cline-any cline-neutral">&nbsp;</span>
424
424
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -431,17 +431,17 @@
431
431
  <span class="cline-any cline-neutral">&nbsp;</span>
432
432
  <span class="cline-any cline-neutral">&nbsp;</span>
433
433
  <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-yes">55x</span>
434
+ <span class="cline-any cline-yes">64x</span>
435
435
  <span class="cline-any cline-neutral">&nbsp;</span>
436
436
  <span class="cline-any cline-neutral">&nbsp;</span>
437
437
  <span class="cline-any cline-neutral">&nbsp;</span>
438
438
  <span class="cline-any cline-neutral">&nbsp;</span>
439
439
  <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-yes">55x</span>
440
+ <span class="cline-any cline-yes">64x</span>
441
441
  <span class="cline-any cline-neutral">&nbsp;</span>
442
442
  <span class="cline-any cline-neutral">&nbsp;</span>
443
443
  <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-yes">55x</span>
444
+ <span class="cline-any cline-yes">64x</span>
445
445
  <span class="cline-any cline-neutral">&nbsp;</span>
446
446
  <span class="cline-any cline-neutral">&nbsp;</span>
447
447
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -449,22 +449,22 @@
449
449
  <span class="cline-any cline-neutral">&nbsp;</span>
450
450
  <span class="cline-any cline-neutral">&nbsp;</span>
451
451
  <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-yes">55x</span>
453
- <span class="cline-any cline-yes">55x</span>
454
- <span class="cline-any cline-yes">55x</span>
455
- <span class="cline-any cline-yes">55x</span>
456
- <span class="cline-any cline-yes">55x</span>
452
+ <span class="cline-any cline-yes">64x</span>
457
453
  <span class="cline-any cline-neutral">&nbsp;</span>
458
454
  <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-yes">55x</span>
460
- <span class="cline-any cline-yes">183x</span>
461
455
  <span class="cline-any cline-neutral">&nbsp;</span>
462
456
  <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">55x</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-yes">189x</span>
460
+ <span class="cline-any cline-yes">189x</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-no">&nbsp;</span>
464
464
  <span class="cline-any cline-no">&nbsp;</span>
465
465
  <span class="cline-any cline-neutral">&nbsp;</span>
466
466
  <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-yes">55x</span>
467
+ <span class="cline-any cline-no">&nbsp;</span>
468
468
  <span class="cline-any cline-no">&nbsp;</span>
469
469
  <span class="cline-any cline-no">&nbsp;</span>
470
470
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -475,7 +475,7 @@
475
475
  <span class="cline-any cline-no">&nbsp;</span>
476
476
  <span class="cline-any cline-neutral">&nbsp;</span>
477
477
  <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-yes">55x</span>
478
+ <span class="cline-any cline-no">&nbsp;</span>
479
479
  <span class="cline-any cline-no">&nbsp;</span>
480
480
  <span class="cline-any cline-no">&nbsp;</span>
481
481
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -485,14 +485,14 @@
485
485
  <span class="cline-any cline-no">&nbsp;</span>
486
486
  <span class="cline-any cline-neutral">&nbsp;</span>
487
487
  <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-yes">55x</span>
488
+ <span class="cline-any cline-no">&nbsp;</span>
489
489
  <span class="cline-any cline-no">&nbsp;</span>
490
490
  <span class="cline-any cline-neutral">&nbsp;</span>
491
491
  <span class="cline-any cline-neutral">&nbsp;</span>
492
492
  <span class="cline-any cline-neutral">&nbsp;</span>
493
493
  <span class="cline-any cline-neutral">&nbsp;</span>
494
494
  <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-yes">55x</span>
495
+ <span class="cline-any cline-no">&nbsp;</span>
496
496
  <span class="cline-any cline-no">&nbsp;</span>
497
497
  <span class="cline-any cline-no">&nbsp;</span>
498
498
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -503,7 +503,7 @@
503
503
  <span class="cline-any cline-neutral">&nbsp;</span>
504
504
  <span class="cline-any cline-neutral">&nbsp;</span>
505
505
  <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-yes">55x</span>
506
+ <span class="cline-any cline-no">&nbsp;</span>
507
507
  <span class="cline-any cline-no">&nbsp;</span>
508
508
  <span class="cline-any cline-no">&nbsp;</span>
509
509
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -520,7 +520,7 @@
520
520
  <span class="cline-any cline-neutral">&nbsp;</span>
521
521
  <span class="cline-any cline-neutral">&nbsp;</span>
522
522
  <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-yes">55x</span>
523
+ <span class="cline-any cline-no">&nbsp;</span>
524
524
  <span class="cline-any cline-no">&nbsp;</span>
525
525
  <span class="cline-any cline-no">&nbsp;</span>
526
526
  <span class="cline-any cline-no">&nbsp;</span>
@@ -543,28 +543,28 @@
543
543
  <span class="cline-any cline-no">&nbsp;</span>
544
544
  <span class="cline-any cline-neutral">&nbsp;</span>
545
545
  <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-yes">55x</span>
547
- <span class="cline-any cline-yes">30x</span>
546
+ <span class="cline-any cline-yes">31x</span>
547
+ <span class="cline-any cline-yes">31x</span>
548
548
  <span class="cline-any cline-no">&nbsp;</span>
549
549
  <span class="cline-any cline-neutral">&nbsp;</span>
550
- <span class="cline-any cline-yes">30x</span>
550
+ <span class="cline-any cline-yes">31x</span>
551
551
  <span class="cline-any cline-neutral">&nbsp;</span>
552
552
  <span class="cline-any cline-neutral">&nbsp;</span>
553
553
  <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-yes">55x</span>
555
- <span class="cline-any cline-yes">21x</span>
554
+ <span class="cline-any cline-yes">22x</span>
555
+ <span class="cline-any cline-yes">22x</span>
556
556
  <span class="cline-any cline-no">&nbsp;</span>
557
557
  <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-yes">21x</span>
558
+ <span class="cline-any cline-yes">22x</span>
559
559
  <span class="cline-any cline-neutral">&nbsp;</span>
560
560
  <span class="cline-any cline-neutral">&nbsp;</span>
561
561
  <span class="cline-any cline-neutral">&nbsp;</span>
562
562
  <span class="cline-any cline-neutral">&nbsp;</span>
563
563
  <span class="cline-any cline-neutral">&nbsp;</span>
564
- <span class="cline-any cline-yes">21x</span>
564
+ <span class="cline-any cline-yes">22x</span>
565
565
  <span class="cline-any cline-neutral">&nbsp;</span>
566
566
  <span class="cline-any cline-neutral">&nbsp;</span>
567
- <span class="cline-any cline-yes">55x</span>
567
+ <span class="cline-any cline-yes">45x</span>
568
568
  <span class="cline-any cline-yes">45x</span>
569
569
  <span class="cline-any cline-yes">45x</span>
570
570
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -665,7 +665,7 @@
665
665
  <span class="cline-any cline-neutral">&nbsp;</span>
666
666
  <span class="cline-any cline-neutral">&nbsp;</span>
667
667
  <span class="cline-any cline-neutral">&nbsp;</span>
668
- <span class="cline-any cline-yes">55x</span>
668
+ <span class="cline-any cline-no">&nbsp;</span>
669
669
  <span class="cline-any cline-neutral">&nbsp;</span>
670
670
  <span class="cline-any cline-neutral">&nbsp;</span>
671
671
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -777,11 +777,11 @@ export function isExternalTable(tableId: string) {
777
777
  return tableId.includes(DocumentType.DATASOURCE)
778
778
  }
779
779
  &nbsp;
780
- export function <span class="fstat-no" title="function not covered" >buildExternalTableId(</span>datasourceId: string, tableName: string) {
780
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >buildExternalTableId<span class="fstat-no" title="function not covered" >(</span></span>d</span>atasourceId: string, tableName: string) {
781
781
  <span class="cstat-no" title="statement not covered" > return `${datasourceId}${DOUBLE_SEPARATOR}${tableName}`</span>
782
782
  }
783
783
  &nbsp;
784
- export function <span class="fstat-no" title="function not covered" >breakExternalTableId(</span>tableId: string | undefined) {
784
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >breakExternalTableId<span class="fstat-no" title="function not covered" >(</span></span>t</span>ableId: string | undefined) {
785
785
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!tableId) {</span>
786
786
  <span class="cstat-no" title="statement not covered" > return {}</span>
787
787
  }
@@ -792,7 +792,7 @@ export function <span class="fstat-no" title="function not covered" >breakExtern
792
792
  <span class="cstat-no" title="statement not covered" > return { datasourceId, tableName }</span>
793
793
  }
794
794
  &nbsp;
795
- export function <span class="fstat-no" title="function not covered" >generateRowIdField(</span>keyProps: any[] = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
795
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >generateRowIdField<span class="fstat-no" title="function not covered" >(</span></span>k</span>eyProps: any[] = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
796
796
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!Array.isArray(keyProps)) {</span>
797
797
  <span class="cstat-no" title="statement not covered" > keyProps = [keyProps]</span>
798
798
  }
@@ -802,14 +802,14 @@ export function <span class="fstat-no" title="function not covered" >generateRow
802
802
  <span class="cstat-no" title="statement not covered" > return encodeURIComponent(JSON.stringify(keyProps).replace(/"/g, "'"))</span>
803
803
  }
804
804
  &nbsp;
805
- export function <span class="fstat-no" title="function not covered" >isRowId(</span>field: any) {
805
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >isRowId<span class="fstat-no" title="function not covered" >(</span></span>f</span>ield: any) {
806
806
  <span class="cstat-no" title="statement not covered" > return (</span>
807
807
  Array.isArray(field) ||
808
808
  (typeof field === "string" &amp;&amp; field.match(ROW_ID_REGEX) != null)
809
809
  )
810
810
  }
811
811
  &nbsp;
812
- export function <span class="fstat-no" title="function not covered" >convertRowId(</span>field: any) {
812
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >convertRowId<span class="fstat-no" title="function not covered" >(</span></span>f</span>ield: any) {
813
813
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(field)) {</span>
814
814
  <span class="cstat-no" title="statement not covered" > return field[0]</span>
815
815
  }
@@ -820,7 +820,7 @@ export function <span class="fstat-no" title="function not covered" >convertRowI
820
820
  }
821
821
  &nbsp;
822
822
  // should always return an array
823
- export function <span class="fstat-no" title="function not covered" >breakRowIdField(</span>_id: string | { _id: string }): any[] {
823
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >breakRowIdField<span class="fstat-no" title="function not covered" >(</span></span>_</span>id: string | { _id: string }): any[] {
824
824
  <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!_id) {</span>
825
825
  <span class="cstat-no" title="statement not covered" > return []</span>
826
826
  }
@@ -837,7 +837,7 @@ export function <span class="fstat-no" title="function not covered" >breakRowIdF
837
837
  }
838
838
  }
839
839
  &nbsp;
840
- export function <span class="fstat-no" title="function not covered" >convertSqlType(</span>type: string) {
840
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >convertSqlType<span class="fstat-no" title="function not covered" >(</span></span>t</span>ype: string) {
841
841
  let foundType = <span class="cstat-no" title="statement not covered" >FieldTypes.STRING</span>
842
842
  const lcType = <span class="cstat-no" title="statement not covered" >type.toLowerCase()</span>
843
843
  let matchingTypes = <span class="cstat-no" title="statement not covered" >[]</span>
@@ -982,7 +982,7 @@ function <span class="fstat-no" title="function not covered" >copyExistingPropsO
982
982
  * @param tables The list of tables that have been retrieved from the external database.
983
983
  * @param entities The old list of tables, if there was any to look for definitions in.
984
984
  */
985
- export function <span class="fstat-no" title="function not covered" >finaliseExternalTables(</span>
985
+ export function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >finaliseExternalTables<span class="fstat-no" title="function not covered" >(</span></span></span>
986
986
  tables: { [key: string]: any },
987
987
  entities: { [key: string]: any }
988
988
  ) {
@@ -990,7 +990,7 @@ export function <span class="fstat-no" title="function not covered" >finaliseExt
990
990
  let finalTables: { [key: string]: any } = <span class="cstat-no" title="statement not covered" >{}</span>
991
991
  const errors: { [key: string]: string } = <span class="cstat-no" title="statement not covered" >{}</span>
992
992
  // @ts-ignore
993
- const tableIds: [string] = <span class="cstat-no" title="statement not covered" >Object.values(tables).map(<span class="fstat-no" title="function not covered" >table </span>=&gt; <span class="cstat-no" title="statement not covered" >table._id)</span></span>
993
+ const tableIds: [string] = <span class="cstat-no" title="statement not covered" >Object.values(tables).map(<span class="fstat-no" title="function not covered" >table =&gt; <span class="cstat-no" title="statement not covered" >t</span>able._id)</span></span>
994
994
  <span class="cstat-no" title="statement not covered" > for (let [name, table] of Object.entries(tables)) {</span>
995
995
  const schemaFields = <span class="cstat-no" title="statement not covered" >Object.keys(table.schema)</span>
996
996
  // make sure every table has a key
@@ -998,7 +998,7 @@ export function <span class="fstat-no" title="function not covered" >finaliseExt
998
998
  <span class="cstat-no" title="statement not covered" > errors[name] = BuildSchemaErrors.NO_KEY</span>
999
999
  <span class="cstat-no" title="statement not covered" > continue</span>
1000
1000
  } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
1001
- schemaFields.find(<span class="fstat-no" title="function not covered" >field </span>=&gt;
1001
+ schemaFields.find(<span class="fstat-no" title="function not covered" >field =&gt;</span>
1002
1002
  <span class="cstat-no" title="statement not covered" > invalidColumns.includes(field as InvalidColumns)</span>
1003
1003
  )
1004
1004
  ) {
@@ -1011,7 +1011,7 @@ export function <span class="fstat-no" title="function not covered" >finaliseExt
1011
1011
  // sort the tables by name
1012
1012
  <span class="cstat-no" title="statement not covered" > finalTables = Object.entries(finalTables)</span>
1013
1013
  .sort(<span class="fstat-no" title="function not covered" >([</span>a], [b]) =&gt; <span class="cstat-no" title="statement not covered" >a.localeCompare(b))</span>
1014
- .reduce(<span class="fstat-no" title="function not covered" >(r</span>, [k, v]) =&gt; <span class="cstat-no" title="statement not covered" >({ ...r, [k]: v }),</span> {})
1014
+ .reduce(<span class="fstat-no" title="function not covered" >(r</span>, [k, v]) =&gt; (<span class="cstat-no" title="statement not covered" >{ ...r, [k]: v }), {</span>})
1015
1015
  <span class="cstat-no" title="statement not covered" > return { tables: finalTables, errors }</span>
1016
1016
  }
1017
1017
  &nbsp;</pre></td></tr></table></pre>
@@ -1021,7 +1021,7 @@ export function <span class="fstat-no" title="function not covered" >finaliseExt
1021
1021
  <div class='footer quiet pad2 space-top1 center small'>
1022
1022
  Code coverage generated by
1023
1023
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1024
- at Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
1024
+ at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
1025
1025
  </div>
1026
1026
  <script src="../../prettify.js"></script>
1027
1027
  <script>
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>3/3</span>
42
+ <span class='fraction'>4/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">83.33% </span>
47
+ <span class="strong">80% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>10/12</span>
49
+ <span class='fraction'>8/10</span>
50
50
  </div>
51
51
 
52
52
 
@@ -83,16 +83,16 @@
83
83
  <a name='L18'></a><a href='#L18'>18</a>
84
84
  <a name='L19'></a><a href='#L19'>19</a>
85
85
  <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">46x</span>
86
+ <a name='L21'></a><a href='#L21'>21</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
87
+ <span class="cline-any cline-neutral">&nbsp;</span>
88
+ <span class="cline-any cline-neutral">&nbsp;</span>
89
+ <span class="cline-any cline-yes">55x</span>
87
90
  <span class="cline-any cline-neutral">&nbsp;</span>
88
91
  <span class="cline-any cline-neutral">&nbsp;</span>
89
- <span class="cline-any cline-yes">46x</span>
90
- <span class="cline-any cline-yes">46x</span>
91
- <span class="cline-any cline-yes">46x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span>
93
93
  <span class="cline-any cline-neutral">&nbsp;</span>
94
- <span class="cline-any cline-yes">46x</span>
95
- <span class="cline-any cline-yes">276x</span>
94
+ <span class="cline-any cline-yes">330x</span>
95
+ <span class="cline-any cline-yes">330x</span>
96
96
  <span class="cline-any cline-yes">7x</span>
97
97
  <span class="cline-any cline-yes">7x</span>
98
98
  <span class="cline-any cline-no">&nbsp;</span>
@@ -117,7 +117,7 @@ export function middleware({ appType }: { appType?: AppType } = <span class="bra
117
117
  <span class="missing-if-branch" title="if path not taken" >I</span>if (appType === AppType.DEV &amp;&amp; appId &amp;&amp; !isDevAppID(appId)) {
118
118
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Only apps in development support this endpoint")</span>
119
119
  }
120
- <span class="missing-if-branch" title="if path not taken" >I</span>if (appType === AppType.PROD &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >appId </span>&amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >!isProdAppID(appId))</span> {
120
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (appType === AppType.PROD &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >appId &amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >!</span>isProdAppID(appId)) {</span>
121
121
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Only apps in production support this endpoint")</span>
122
122
  }
123
123
  return next()
@@ -130,7 +130,7 @@ export function middleware({ appType }: { appType?: AppType } = <span class="bra
130
130
  <div class='footer quiet pad2 space-top1 center small'>
131
131
  Code coverage generated by
132
132
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
133
- at Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
133
+ at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
134
134
  </div>
135
135
  <script src="../../prettify.js"></script>
136
136
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">88.23% </span>
26
+ <span class="strong">87.75% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>45/51</span>
28
+ <span class='fraction'>43/49</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">88.88% </span>
40
+ <span class="strong">85.71% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>8/9</span>
42
+ <span class='fraction'>6/7</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">88% </span>
47
+ <span class="strong">87.5% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>44/50</span>
49
+ <span class='fraction'>42/48</span>
50
50
  </div>
51
51
 
52
52
 
@@ -188,16 +188,20 @@
188
188
  <a name='L123'></a><a href='#L123'>123</a>
189
189
  <a name='L124'></a><a href='#L124'>124</a>
190
190
  <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">47x</span>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
192
196
  <span class="cline-any cline-neutral">&nbsp;</span>
193
- <span class="cline-any cline-yes">47x</span>
194
- <span class="cline-any cline-yes">47x</span>
197
+ <span class="cline-any cline-yes">56x</span>
198
+ <span class="cline-any cline-yes">56x</span>
195
199
  <span class="cline-any cline-neutral">&nbsp;</span>
196
200
  <span class="cline-any cline-neutral">&nbsp;</span>
197
- <span class="cline-any cline-yes">221x</span>
201
+ <span class="cline-any cline-yes">253x</span>
198
202
  <span class="cline-any cline-neutral">&nbsp;</span>
199
203
  <span class="cline-any cline-neutral">&nbsp;</span>
200
- <span class="cline-any cline-yes">47x</span>
204
+ <span class="cline-any cline-yes">56x</span>
201
205
  <span class="cline-any cline-neutral">&nbsp;</span>
202
206
  <span class="cline-any cline-neutral">&nbsp;</span>
203
207
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -205,31 +209,31 @@
205
209
  <span class="cline-any cline-neutral">&nbsp;</span>
206
210
  <span class="cline-any cline-neutral">&nbsp;</span>
207
211
  <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-yes">47x</span>
212
+ <span class="cline-any cline-yes">56x</span>
209
213
  <span class="cline-any cline-neutral">&nbsp;</span>
210
214
  <span class="cline-any cline-neutral">&nbsp;</span>
211
215
  <span class="cline-any cline-neutral">&nbsp;</span>
212
216
  <span class="cline-any cline-neutral">&nbsp;</span>
213
- <span class="cline-any cline-yes">222x</span>
214
217
  <span class="cline-any cline-neutral">&nbsp;</span>
215
- <span class="cline-any cline-yes">222x</span>
216
- <span class="cline-any cline-yes">222x</span>
217
- <span class="cline-any cline-yes">222x</span>
218
+ <span class="cline-any cline-neutral">&nbsp;</span>
219
+ <span class="cline-any cline-yes">254x</span>
220
+ <span class="cline-any cline-yes">254x</span>
221
+ <span class="cline-any cline-yes">254x</span>
218
222
  <span class="cline-any cline-yes">28x</span>
219
223
  <span class="cline-any cline-neutral">&nbsp;</span>
220
224
  <span class="cline-any cline-neutral">&nbsp;</span>
221
225
  <span class="cline-any cline-neutral">&nbsp;</span>
222
- <span class="cline-any cline-yes">194x</span>
226
+ <span class="cline-any cline-yes">226x</span>
223
227
  <span class="cline-any cline-yes">3x</span>
224
228
  <span class="cline-any cline-neutral">&nbsp;</span>
225
229
  <span class="cline-any cline-neutral">&nbsp;</span>
226
230
  <span class="cline-any cline-neutral">&nbsp;</span>
227
- <span class="cline-any cline-yes">47x</span>
231
+ <span class="cline-any cline-yes">56x</span>
232
+ <span class="cline-any cline-neutral">&nbsp;</span>
228
233
  <span class="cline-any cline-neutral">&nbsp;</span>
229
234
  <span class="cline-any cline-neutral">&nbsp;</span>
230
235
  <span class="cline-any cline-neutral">&nbsp;</span>
231
236
  <span class="cline-any cline-neutral">&nbsp;</span>
232
- <span class="cline-any cline-yes">3x</span>
233
237
  <span class="cline-any cline-neutral">&nbsp;</span>
234
238
  <span class="cline-any cline-yes">3x</span>
235
239
  <span class="cline-any cline-yes">3x</span>
@@ -253,31 +257,35 @@
253
257
  <span class="cline-any cline-neutral">&nbsp;</span>
254
258
  <span class="cline-any cline-neutral">&nbsp;</span>
255
259
  <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-yes">47x</span>
257
- <span class="cline-any cline-yes">5581x</span>
260
+ <span class="cline-any cline-yes">6821x</span>
261
+ <span class="cline-any cline-neutral">&nbsp;</span>
258
262
  <span class="cline-any cline-neutral">&nbsp;</span>
259
263
  <span class="cline-any cline-neutral">&nbsp;</span>
260
- <span class="cline-any cline-yes">228x</span>
264
+ <span class="cline-any cline-neutral">&nbsp;</span>
265
+ <span class="cline-any cline-yes">6835x</span>
266
+ <span class="cline-any cline-neutral">&nbsp;</span>
267
+ <span class="cline-any cline-neutral">&nbsp;</span>
268
+ <span class="cline-any cline-yes">260x</span>
261
269
  <span class="cline-any cline-yes">1x</span>
262
270
  <span class="cline-any cline-neutral">&nbsp;</span>
263
271
  <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-yes">227x</span>
272
+ <span class="cline-any cline-yes">259x</span>
265
273
  <span class="cline-any cline-yes">1x</span>
266
274
  <span class="cline-any cline-neutral">&nbsp;</span>
267
275
  <span class="cline-any cline-neutral">&nbsp;</span>
268
276
  <span class="cline-any cline-neutral">&nbsp;</span>
269
277
  <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-yes">226x</span>
278
+ <span class="cline-any cline-yes">258x</span>
271
279
  <span class="cline-any cline-neutral">&nbsp;</span>
272
280
  <span class="cline-any cline-neutral">&nbsp;</span>
273
- <span class="cline-any cline-yes">226x</span>
274
- <span class="cline-any cline-yes">226x</span>
281
+ <span class="cline-any cline-yes">258x</span>
282
+ <span class="cline-any cline-yes">258x</span>
275
283
  <span class="cline-any cline-neutral">&nbsp;</span>
276
- <span class="cline-any cline-yes">226x</span>
284
+ <span class="cline-any cline-yes">258x</span>
277
285
  <span class="cline-any cline-neutral">&nbsp;</span>
278
286
  <span class="cline-any cline-neutral">&nbsp;</span>
279
- <span class="cline-any cline-yes">226x</span>
280
- <span class="cline-any cline-yes">226x</span>
287
+ <span class="cline-any cline-yes">258x</span>
288
+ <span class="cline-any cline-yes">258x</span>
281
289
  <span class="cline-any cline-yes">86x</span>
282
290
  <span class="cline-any cline-yes">86x</span>
283
291
  <span class="cline-any cline-no">&nbsp;</span>
@@ -285,7 +293,7 @@
285
293
  <span class="cline-any cline-neutral">&nbsp;</span>
286
294
  <span class="cline-any cline-neutral">&nbsp;</span>
287
295
  <span class="cline-any cline-neutral">&nbsp;</span>
288
- <span class="cline-any cline-yes">226x</span>
296
+ <span class="cline-any cline-yes">258x</span>
289
297
  <span class="cline-any cline-neutral">&nbsp;</span>
290
298
  <span class="cline-any cline-neutral">&nbsp;</span>
291
299
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -294,13 +302,13 @@
294
302
  <span class="cline-any cline-neutral">&nbsp;</span>
295
303
  <span class="cline-any cline-neutral">&nbsp;</span>
296
304
  <span class="cline-any cline-neutral">&nbsp;</span>
297
- <span class="cline-any cline-yes">225x</span>
305
+ <span class="cline-any cline-yes">257x</span>
298
306
  <span class="cline-any cline-yes">3x</span>
299
307
  <span class="cline-any cline-neutral">&nbsp;</span>
300
308
  <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-yes">222x</span>
309
+ <span class="cline-any cline-yes">254x</span>
302
310
  <span class="cline-any cline-neutral">&nbsp;</span>
303
- <span class="cline-any cline-yes">222x</span>
311
+ <span class="cline-any cline-yes">254x</span>
304
312
  <span class="cline-any cline-neutral">&nbsp;</span>
305
313
  <span class="cline-any cline-neutral">&nbsp;</span>
306
314
  <span class="cline-any cline-yes">27x</span>
@@ -311,7 +319,7 @@
311
319
  <span class="cline-any cline-neutral">&nbsp;</span>
312
320
  <span class="cline-any cline-neutral">&nbsp;</span>
313
321
  <span class="cline-any cline-neutral">&nbsp;</span>
314
- <span class="cline-any cline-yes">195x</span>
322
+ <span class="cline-any cline-yes">227x</span>
315
323
  <span class="cline-any cline-neutral">&nbsp;</span>
316
324
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { roles, permissions, auth, context } from "@budibase/backend-core"
317
325
  import { Role } from "@budibase/types"
@@ -378,7 +386,11 @@ const checkAuthorizedResource = async (
378
386
  }
379
387
  }
380
388
  &nbsp;
381
- export = (permType: any, permLevel: any = null, opts = { schema: false }) =&gt;
389
+ export default (
390
+ permType: any,
391
+ permLevel: any = null,
392
+ opts = { schema: false }
393
+ ) =&gt;
382
394
  async (ctx: any, next: any) =&gt; {
383
395
  // webhooks don't need authentication, each webhook unique
384
396
  // also internal requests (between services) don't need authorized
@@ -428,7 +440,7 @@ export = (permType: any, permLevel: any = null, opts = { schema: false }) =&gt;
428
440
  await checkAuthorized(ctx, resourceRoles, permType, permLevel)
429
441
  } catch (err) {
430
442
  // this is a schema, check if
431
- <span class="missing-if-branch" title="if path not taken" >I</span>if (opts &amp;&amp; opts.schema &amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >permLevel)</span> {
443
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (opts &amp;&amp; opts.schema &amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >permLevel) {</span>
432
444
  <span class="cstat-no" title="statement not covered" > await checkAuthorized(ctx, otherLevelRoles, permType, otherLevel)</span>
433
445
  } else {
434
446
  throw err
@@ -445,7 +457,7 @@ export = (permType: any, permLevel: any = null, opts = { schema: false }) =&gt;
445
457
  <div class='footer quiet pad2 space-top1 center small'>
446
458
  Code coverage generated by
447
459
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
448
- at Thu Feb 02 2023 11:56:48 GMT+0000 (Coordinated Universal Time)
460
+ at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
449
461
  </div>
450
462
  <script src="../../prettify.js"></script>
451
463
  <script>