@budibase/server 2.3.11-alpha.0 → 2.3.11

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 (549) hide show
  1. package/__mocks__/aws-sdk.ts +1 -1
  2. package/builder/assets/{index.a534ca24.css → index.4488f38d.css} +1 -1
  3. package/builder/assets/{index.a7877207.js → index.98af4a37.js} +207 -207
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +6591 -11327
  6. package/coverage/coverage-final.json +271 -356
  7. package/coverage/lcov-report/index.html +195 -420
  8. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +6 -6
  9. package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +5 -5
  10. package/coverage/lcov-report/src/api/controllers/application.ts.html +140 -140
  11. package/coverage/lcov-report/src/api/controllers/auth.ts.html +9 -9
  12. package/coverage/lcov-report/src/api/controllers/automation.ts.html +47 -47
  13. package/coverage/lcov-report/src/api/controllers/backup.ts.html +6 -6
  14. package/coverage/lcov-report/src/api/controllers/cloud.ts.html +26 -26
  15. package/coverage/lcov-report/src/api/controllers/component.ts.html +5 -5
  16. package/coverage/lcov-report/src/api/controllers/datasource.ts.html +37 -37
  17. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +14 -14
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +81 -81
  20. package/coverage/lcov-report/src/api/controllers/dev.ts.html +26 -26
  21. package/coverage/lcov-report/src/api/controllers/index.html +37 -37
  22. package/coverage/lcov-report/src/api/controllers/integration.ts.html +4 -4
  23. package/coverage/lcov-report/src/api/controllers/layout.ts.html +15 -15
  24. package/coverage/lcov-report/src/api/controllers/metadata.ts.html +9 -9
  25. package/coverage/lcov-report/src/api/controllers/migrations.ts.html +4 -4
  26. package/coverage/lcov-report/src/api/controllers/permission.ts.html +34 -34
  27. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +2 -2
  28. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +4 -4
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.html +1 -1
  30. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +18 -18
  31. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +5 -5
  32. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +5 -5
  33. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +3 -3
  34. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +3 -3
  35. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +6 -6
  36. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +2 -2
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +7 -7
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +2 -2
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +2 -2
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +2 -2
  43. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +2 -2
  44. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +4 -4
  45. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +5 -5
  46. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +4 -4
  47. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +6 -6
  48. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +4 -4
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +7 -7
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +3 -3
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +5 -5
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +7 -7
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +9 -9
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +13 -13
  58. package/coverage/lcov-report/src/api/controllers/query/index.html +10 -10
  59. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +55 -61
  60. package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +9 -9
  61. package/coverage/lcov-report/src/api/controllers/role.ts.html +8 -8
  62. package/coverage/lcov-report/src/api/controllers/routing.ts.html +6 -6
  63. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +419 -431
  64. package/coverage/lcov-report/src/api/controllers/row/external.ts.html +175 -211
  65. package/coverage/lcov-report/src/api/controllers/row/index.html +42 -42
  66. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +79 -79
  67. package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +34 -34
  68. package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +6 -6
  69. package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +22 -22
  70. package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +31 -31
  71. package/coverage/lcov-report/src/api/controllers/screen.ts.html +26 -26
  72. package/coverage/lcov-report/src/api/controllers/script.ts.html +2 -2
  73. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  74. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +22 -22
  75. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +51 -51
  76. package/coverage/lcov-report/src/api/controllers/table/external.ts.html +195 -198
  77. package/coverage/lcov-report/src/api/controllers/table/index.html +47 -47
  78. package/coverage/lcov-report/src/api/controllers/table/index.ts.html +42 -42
  79. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +61 -61
  80. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +63 -63
  81. package/coverage/lcov-report/src/api/controllers/templates.ts.html +7 -7
  82. package/coverage/lcov-report/src/api/controllers/user.ts.html +28 -28
  83. package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +2 -2
  84. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/index.ts.html +16 -16
  86. package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +5 -5
  87. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +7 -7
  88. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +25 -25
  89. package/coverage/lcov-report/src/api/index.html +1 -1
  90. package/coverage/lcov-report/src/api/index.ts.html +27 -27
  91. package/coverage/lcov-report/src/api/routes/analytics.ts.html +7 -7
  92. package/coverage/lcov-report/src/api/routes/apikeys.ts.html +8 -8
  93. package/coverage/lcov-report/src/api/routes/application.ts.html +10 -10
  94. package/coverage/lcov-report/src/api/routes/auth.ts.html +6 -6
  95. package/coverage/lcov-report/src/api/routes/automation.ts.html +11 -11
  96. package/coverage/lcov-report/src/api/routes/backup.ts.html +8 -8
  97. package/coverage/lcov-report/src/api/routes/cloud.ts.html +8 -8
  98. package/coverage/lcov-report/src/api/routes/component.ts.html +8 -8
  99. package/coverage/lcov-report/src/api/routes/datasource.ts.html +9 -9
  100. package/coverage/lcov-report/src/api/routes/deploy.ts.html +8 -8
  101. package/coverage/lcov-report/src/api/routes/dev.ts.html +13 -13
  102. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  103. package/coverage/lcov-report/src/api/routes/index.ts.html +35 -35
  104. package/coverage/lcov-report/src/api/routes/integration.ts.html +8 -8
  105. package/coverage/lcov-report/src/api/routes/layout.ts.html +8 -8
  106. package/coverage/lcov-report/src/api/routes/metadata.ts.html +9 -9
  107. package/coverage/lcov-report/src/api/routes/migrations.ts.html +7 -7
  108. package/coverage/lcov-report/src/api/routes/permission.ts.html +9 -9
  109. package/coverage/lcov-report/src/api/routes/plugin.ts.html +8 -8
  110. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +17 -14
  111. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/index.ts.html +52 -52
  113. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +4 -4
  115. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +9 -9
  116. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +12 -12
  117. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +12 -12
  118. package/coverage/lcov-report/src/api/routes/public/tests/index.html +12 -42
  119. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +27 -78
  120. package/coverage/lcov-report/src/api/routes/public/users.ts.html +12 -12
  121. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +19 -19
  122. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/query.ts.html +11 -11
  124. package/coverage/lcov-report/src/api/routes/role.ts.html +9 -9
  125. package/coverage/lcov-report/src/api/routes/routing.ts.html +8 -8
  126. package/coverage/lcov-report/src/api/routes/row.ts.html +11 -11
  127. package/coverage/lcov-report/src/api/routes/screen.ts.html +9 -9
  128. package/coverage/lcov-report/src/api/routes/script.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/static.ts.html +14 -14
  130. package/coverage/lcov-report/src/api/routes/table.ts.html +11 -11
  131. package/coverage/lcov-report/src/api/routes/templates.ts.html +8 -8
  132. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +41 -110
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +19 -19
  134. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +23 -29
  135. package/coverage/lcov-report/src/api/routes/user.ts.html +9 -9
  136. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  137. package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +42 -42
  138. package/coverage/lcov-report/src/api/routes/view.ts.html +10 -10
  139. package/coverage/lcov-report/src/api/routes/webhook.ts.html +10 -10
  140. package/coverage/lcov-report/src/app.ts.html +35 -38
  141. package/coverage/lcov-report/src/automations/actions.ts.html +24 -24
  142. package/coverage/lcov-report/src/automations/automationUtils.ts.html +4 -4
  143. package/coverage/lcov-report/src/automations/bullboard.ts.html +9 -9
  144. package/coverage/lcov-report/src/automations/index.html +27 -27
  145. package/coverage/lcov-report/src/automations/index.ts.html +5 -5
  146. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  147. package/coverage/lcov-report/src/automations/logging/index.ts.html +10 -10
  148. package/coverage/lcov-report/src/automations/steps/bash.ts.html +8 -8
  149. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +7 -7
  150. package/coverage/lcov-report/src/automations/steps/delay.ts.html +5 -5
  151. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +7 -7
  152. package/coverage/lcov-report/src/automations/steps/discord.ts.html +8 -8
  153. package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +7 -7
  154. package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +7 -7
  155. package/coverage/lcov-report/src/automations/steps/filter.ts.html +6 -6
  156. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/integromat.ts.html +6 -6
  158. package/coverage/lcov-report/src/automations/steps/loop.ts.html +3 -3
  159. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +9 -9
  160. package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +13 -13
  161. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +6 -6
  162. package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +4 -4
  163. package/coverage/lcov-report/src/automations/steps/slack.ts.html +6 -6
  164. package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +7 -7
  165. package/coverage/lcov-report/src/automations/steps/utils.ts.html +1 -1
  166. package/coverage/lcov-report/src/automations/steps/zapier.ts.html +6 -6
  167. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  168. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +3 -3
  170. package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +3 -3
  171. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +8 -8
  173. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +3 -3
  174. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +3 -3
  175. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +3 -3
  176. package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +3 -3
  177. package/coverage/lcov-report/src/automations/triggers.ts.html +44 -44
  178. package/coverage/lcov-report/src/automations/utils.ts.html +63 -63
  179. package/coverage/lcov-report/src/constants/index.html +16 -16
  180. package/coverage/lcov-report/src/constants/index.ts.html +99 -33
  181. package/coverage/lcov-report/src/constants/layouts.ts.html +4 -4
  182. package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
  183. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -33
  184. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +2 -2
  185. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +2 -2
  186. package/coverage/lcov-report/src/db/defaultData/index.html +11 -11
  187. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +2 -2
  188. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +2 -2
  189. package/coverage/lcov-report/src/db/dynamoClient.ts.html +15 -15
  190. package/coverage/lcov-report/src/db/inMemoryView.ts.html +4 -4
  191. package/coverage/lcov-report/src/db/index.html +16 -16
  192. package/coverage/lcov-report/src/db/index.ts.html +19 -19
  193. package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +23 -26
  194. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +4 -4
  195. package/coverage/lcov-report/src/db/linkedRows/index.html +10 -10
  196. package/coverage/lcov-report/src/db/linkedRows/index.ts.html +23 -23
  197. package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +10 -10
  198. package/coverage/lcov-report/src/db/newid.ts.html +4 -4
  199. package/coverage/lcov-report/src/db/utils.ts.html +52 -52
  200. package/coverage/lcov-report/src/definitions/automations.ts.html +2 -2
  201. package/coverage/lcov-report/src/definitions/index.html +1 -1
  202. package/coverage/lcov-report/src/environment.ts.html +31 -31
  203. package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +6 -6
  204. package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +6 -6
  205. package/coverage/lcov-report/src/events/index.html +1 -1
  206. package/coverage/lcov-report/src/events/index.ts.html +4 -4
  207. package/coverage/lcov-report/src/events/utils.ts.html +10 -10
  208. package/coverage/lcov-report/src/index.html +16 -16
  209. package/coverage/lcov-report/src/index.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/airtable.ts.html +5 -5
  211. package/coverage/lcov-report/src/integrations/arangodb.ts.html +5 -5
  212. package/coverage/lcov-report/src/integrations/base/index.html +30 -30
  213. package/coverage/lcov-report/src/integrations/base/query.ts.html +9 -9
  214. package/coverage/lcov-report/src/integrations/base/sql.ts.html +187 -217
  215. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +107 -107
  216. package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
  217. package/coverage/lcov-report/src/integrations/couchdb.ts.html +5 -5
  218. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +6 -6
  219. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +5 -5
  220. package/coverage/lcov-report/src/integrations/firebase.ts.html +5 -5
  221. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +11 -11
  222. package/coverage/lcov-report/src/integrations/index.html +27 -27
  223. package/coverage/lcov-report/src/integrations/index.ts.html +40 -40
  224. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +8 -8
  225. package/coverage/lcov-report/src/integrations/mongodb.ts.html +11 -11
  226. package/coverage/lcov-report/src/integrations/mysql.ts.html +10 -10
  227. package/coverage/lcov-report/src/integrations/oracle.ts.html +14 -14
  228. package/coverage/lcov-report/src/integrations/postgres.ts.html +68 -68
  229. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  230. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +8 -8
  231. package/coverage/lcov-report/src/integrations/redis.ts.html +5 -5
  232. package/coverage/lcov-report/src/integrations/rest.ts.html +15 -15
  233. package/coverage/lcov-report/src/integrations/s3.ts.html +6 -6
  234. package/coverage/lcov-report/src/integrations/snowflake.ts.html +5 -5
  235. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  236. package/coverage/lcov-report/src/integrations/tests/index.html +5 -230
  237. package/coverage/lcov-report/src/integrations/utils.ts.html +77 -77
  238. package/coverage/lcov-report/src/middleware/appInfo.ts.html +5 -5
  239. package/coverage/lcov-report/src/middleware/authorized.ts.html +29 -29
  240. package/coverage/lcov-report/src/middleware/builder.ts.html +17 -17
  241. package/coverage/lcov-report/src/middleware/currentapp.ts.html +53 -53
  242. package/coverage/lcov-report/src/middleware/index.html +15 -15
  243. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/publicApi.ts.html +4 -4
  245. package/coverage/lcov-report/src/middleware/resourceId.ts.html +28 -28
  246. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  247. package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
  248. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +4 -4
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +5 -5
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +5 -5
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +5 -5
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +7 -7
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +5 -5
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +5 -5
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +4 -4
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +19 -19
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +6 -6
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +7 -7
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +6 -6
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +15 -15
  263. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +5 -5
  265. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +8 -8
  266. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +6 -6
  268. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +6 -6
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  270. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +2 -2
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +5 -5
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +4 -4
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +6 -6
  274. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +3 -3
  275. package/coverage/lcov-report/src/migrations/index.html +1 -1
  276. package/coverage/lcov-report/src/migrations/index.ts.html +32 -32
  277. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  278. package/coverage/lcov-report/src/migrations/tests/index.html +8 -23
  279. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/applications/index.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +4 -4
  282. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +22 -22
  283. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +9 -9
  284. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +3 -3
  286. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +10 -10
  287. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +3 -3
  288. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +23 -41
  289. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +18 -18
  290. package/coverage/lcov-report/src/sdk/app/backups/index.html +10 -10
  291. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +5 -5
  292. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +7 -7
  293. package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +60 -69
  294. package/coverage/lcov-report/src/sdk/app/datasources/index.html +19 -19
  295. package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +3 -3
  296. package/coverage/lcov-report/src/sdk/app/queries/index.html +1 -1
  297. package/coverage/lcov-report/src/sdk/app/queries/index.ts.html +3 -3
  298. package/coverage/lcov-report/src/sdk/app/queries/queries.ts.html +11 -11
  299. package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +6 -6
  300. package/coverage/lcov-report/src/sdk/app/rows/index.html +1 -1
  301. package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +4 -4
  302. package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
  303. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  304. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +10 -10
  305. package/coverage/lcov-report/src/sdk/index.html +1 -1
  306. package/coverage/lcov-report/src/sdk/index.ts.html +11 -11
  307. package/coverage/lcov-report/src/sdk/users/index.html +1 -1
  308. package/coverage/lcov-report/src/sdk/users/index.ts.html +3 -3
  309. package/coverage/lcov-report/src/sdk/users/utils.ts.html +31 -31
  310. package/coverage/lcov-report/src/sdk/utils/index.html +1 -1
  311. package/coverage/lcov-report/src/sdk/utils/index.ts.html +11 -11
  312. package/coverage/lcov-report/src/startup.ts.html +42 -42
  313. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +193 -421
  314. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  315. package/coverage/lcov-report/src/tests/utilities/index.html +28 -28
  316. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  317. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +35 -77
  318. package/coverage/lcov-report/src/threads/automation.ts.html +22 -22
  319. package/coverage/lcov-report/src/threads/index.html +1 -1
  320. package/coverage/lcov-report/src/threads/index.ts.html +24 -24
  321. package/coverage/lcov-report/src/threads/query.ts.html +76 -76
  322. package/coverage/lcov-report/src/threads/utils.ts.html +12 -12
  323. package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +3 -3
  324. package/coverage/lcov-report/src/utilities/centralPath.ts.html +2 -2
  325. package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +17 -17
  326. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +8 -8
  327. package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +25 -25
  328. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  329. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +6 -6
  330. package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +8 -8
  331. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +1 -1
  332. package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +7 -7
  333. package/coverage/lcov-report/src/utilities/global.ts.html +40 -40
  334. package/coverage/lcov-report/src/utilities/index.html +19 -34
  335. package/coverage/lcov-report/src/utilities/index.ts.html +26 -26
  336. package/coverage/lcov-report/src/utilities/redis.ts.html +12 -12
  337. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  338. package/coverage/lcov-report/src/utilities/routing/index.ts.html +4 -4
  339. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +19 -19
  340. package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +49 -49
  341. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +3 -3
  342. package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +38 -38
  343. package/coverage/lcov-report/src/utilities/schema.ts.html +3 -3
  344. package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +5 -5
  345. package/coverage/lcov-report/src/utilities/security.ts.html +22 -22
  346. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  347. package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +35 -35
  348. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +1 -1
  349. package/coverage/lcov-report/src/utilities/users.ts.html +4 -4
  350. package/coverage/lcov-report/src/utilities/workerRequests.ts.html +15 -15
  351. package/coverage/lcov-report/src/watch.ts.html +7 -7
  352. package/coverage/lcov-report/src/websocket.ts.html +5 -5
  353. package/coverage/lcov.info +11906 -19632
  354. package/dist/api/controllers/query/index.js +0 -2
  355. package/dist/api/controllers/row/ExternalRequest.js +2 -4
  356. package/dist/api/controllers/row/external.js +1 -12
  357. package/dist/api/controllers/table/external.js +8 -8
  358. package/dist/api/routes/public/tests/utils.js +2 -29
  359. package/dist/app.js +1 -1
  360. package/dist/constants/index.js +24 -4
  361. package/dist/db/defaultData/datasource_bb_default.js +5 -6
  362. package/dist/db/linkedRows/LinkController.js +8 -9
  363. package/dist/integrations/base/sql.js +3 -10
  364. package/dist/package.json +0 -2
  365. package/dist/sdk/app/backups/exports.js +2 -8
  366. package/dist/sdk/app/datasources/datasources.js +0 -3
  367. package/dist/tsconfig.build.tsbuildinfo +1 -1
  368. package/jest.config.ts +11 -28
  369. package/package.json +6 -8
  370. package/specs/openapi.json +6 -6
  371. package/specs/openapi.yaml +3 -3
  372. package/src/api/controllers/query/import/tests/index.spec.js +1 -1
  373. package/src/api/controllers/query/index.ts +0 -2
  374. package/src/api/controllers/row/ExternalRequest.ts +2 -6
  375. package/src/api/controllers/row/external.ts +1 -13
  376. package/src/api/controllers/table/external.ts +2 -3
  377. package/src/api/routes/public/applications.ts +1 -0
  378. package/src/api/routes/public/tests/compare.spec.js +1 -1
  379. package/src/api/routes/public/tests/users.spec.js +1 -1
  380. package/src/api/routes/public/tests/utils.ts +8 -25
  381. package/src/api/routes/tests/__snapshots__/datasource.spec.ts.snap +1 -1
  382. package/src/api/routes/tests/analytics.spec.js +1 -4
  383. package/src/api/routes/tests/apikeys.spec.js +1 -1
  384. package/src/api/routes/tests/application.spec.ts +6 -20
  385. package/src/api/routes/tests/auth.spec.js +2 -2
  386. package/src/api/routes/tests/automation.spec.js +2 -6
  387. package/src/api/routes/tests/backup.spec.ts +13 -4
  388. package/src/api/routes/tests/{cloud.seq.spec.ts → cloud.spec.ts} +15 -11
  389. package/src/api/routes/tests/component.spec.js +1 -1
  390. package/src/api/routes/tests/datasource.spec.ts +3 -20
  391. package/src/api/routes/tests/dev.spec.js +1 -1
  392. package/src/api/routes/tests/integration.spec.js +1 -1
  393. package/src/api/routes/tests/layout.spec.js +1 -1
  394. package/src/api/routes/tests/metadata.spec.js +1 -1
  395. package/src/api/routes/tests/misc.spec.js +1 -1
  396. package/src/api/routes/tests/permissions.spec.js +1 -4
  397. package/src/api/routes/tests/{query.seq.spec.js → query.spec.js} +1 -22
  398. package/src/api/routes/tests/role.spec.js +1 -6
  399. package/src/api/routes/tests/routing.spec.js +1 -1
  400. package/src/api/routes/tests/row.spec.js +3 -11
  401. package/src/api/routes/tests/screen.spec.js +1 -1
  402. package/src/api/routes/tests/static.spec.js +1 -2
  403. package/src/api/routes/tests/table.spec.js +1 -1
  404. package/src/api/routes/tests/templates.spec.js +1 -1
  405. package/src/api/routes/tests/user.spec.js +12 -12
  406. package/src/api/routes/tests/utilities/TestFunctions.ts +2 -25
  407. package/src/api/routes/tests/utilities/index.ts +3 -5
  408. package/src/api/routes/tests/view.spec.js +1 -4
  409. package/src/api/routes/tests/webhook.spec.js +2 -11
  410. package/src/app.ts +1 -2
  411. package/src/automations/tests/automation.spec.js +4 -4
  412. package/src/automations/tests/bash.spec.js +1 -1
  413. package/src/automations/tests/discord.spec.js +1 -1
  414. package/src/automations/tests/executeQuery.spec.js +3 -2
  415. package/src/automations/tests/executeScript.spec.js +1 -1
  416. package/src/automations/tests/outgoingWebhook.spec.js +1 -1
  417. package/src/automations/tests/sendSmtpEmail.spec.js +1 -1
  418. package/src/automations/tests/serverLog.spec.js +1 -1
  419. package/src/automations/tests/updateRow.spec.js +1 -1
  420. package/src/automations/tests/zapier.spec.js +1 -1
  421. package/src/constants/index.ts +23 -1
  422. package/src/db/defaultData/datasource_bb_default.ts +10 -6
  423. package/src/db/linkedRows/LinkController.ts +1 -2
  424. package/src/db/tests/linkController.spec.js +1 -4
  425. package/src/db/tests/linkTests.spec.js +1 -1
  426. package/src/integrations/base/sql.ts +5 -15
  427. package/src/integrations/oracle.ts +1 -1
  428. package/src/migrations/functions/tests/appUrls.spec.js +1 -1
  429. package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
  430. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
  431. package/src/migrations/tests/index.spec.ts +20 -13
  432. package/src/sdk/app/backups/exports.ts +2 -8
  433. package/src/sdk/app/datasources/datasources.ts +0 -3
  434. package/src/tests/jestEnv.ts +6 -2
  435. package/src/tests/jestSetup.ts +7 -8
  436. package/src/tests/utilities/TestConfiguration.ts +50 -126
  437. package/src/tests/utilities/structures.ts +2 -16
  438. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +0 -391
  439. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +0 -116
  440. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +0 -116
  441. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +0 -796
  442. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +0 -116
  443. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +0 -805
  444. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +0 -116
  445. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +0 -568
  446. package/coverage/lcov-report/src/api/controllers/view/tests/index.html +0 -116
  447. package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +0 -277
  448. package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +0 -583
  449. package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +0 -199
  450. package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +0 -271
  451. package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +0 -259
  452. package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +0 -1066
  453. package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +0 -154
  454. package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +0 -1123
  455. package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +0 -223
  456. package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +0 -268
  457. package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +0 -178
  458. package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +0 -799
  459. package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +0 -202
  460. package/coverage/lcov-report/src/api/routes/tests/environmentVariables.spec.ts.html +0 -517
  461. package/coverage/lcov-report/src/api/routes/tests/index.html +0 -536
  462. package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +0 -238
  463. package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +0 -670
  464. package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +0 -259
  465. package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +0 -280
  466. package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +0 -358
  467. package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +0 -484
  468. package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +0 -622
  469. package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +0 -1699
  470. package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +0 -478
  471. package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +0 -430
  472. package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +0 -1804
  473. package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +0 -391
  474. package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +0 -541
  475. package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +0 -991
  476. package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +0 -154
  477. package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +0 -679
  478. package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +0 -1342
  479. package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +0 -484
  480. package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +0 -337
  481. package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +0 -187
  482. package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +0 -223
  483. package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +0 -133
  484. package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +0 -250
  485. package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +0 -166
  486. package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +0 -229
  487. package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +0 -229
  488. package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +0 -232
  489. package/coverage/lcov-report/src/automations/tests/index.html +0 -341
  490. package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +0 -220
  491. package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +0 -202
  492. package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +0 -436
  493. package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +0 -298
  494. package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +0 -151
  495. package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +0 -217
  496. package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +0 -166
  497. package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +0 -280
  498. package/coverage/lcov-report/src/automations/unitTests/index.html +0 -116
  499. package/coverage/lcov-report/src/db/tests/index.html +0 -131
  500. package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +0 -793
  501. package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +0 -277
  502. package/coverage/lcov-report/src/integration-test/index.html +0 -116
  503. package/coverage/lcov-report/src/integration-test/postgres.spec.ts.html +0 -2341
  504. package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +0 -310
  505. package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +0 -199
  506. package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +0 -349
  507. package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +0 -550
  508. package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +0 -331
  509. package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +0 -376
  510. package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +0 -253
  511. package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +0 -1087
  512. package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +0 -484
  513. package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +0 -373
  514. package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +0 -328
  515. package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +0 -337
  516. package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +0 -1870
  517. package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +0 -421
  518. package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +0 -1753
  519. package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +0 -574
  520. package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +0 -814
  521. package/coverage/lcov-report/src/middleware/tests/index.html +0 -161
  522. package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +0 -397
  523. package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +0 -214
  524. package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +0 -163
  525. package/coverage/lcov-report/src/migrations/functions/tests/index.html +0 -161
  526. package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +0 -163
  527. package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +0 -517
  528. package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +0 -190
  529. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +0 -131
  530. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +0 -190
  531. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +0 -244
  532. package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +0 -511
  533. package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +0 -313
  534. package/coverage/lcov-report/src/sdk/tests/index.html +0 -116
  535. package/coverage/lcov-report/src/utilities/retry.ts.html +0 -139
  536. package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +0 -116
  537. package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +0 -256
  538. package/dist/api/routes/tests/utilities/index.js +0 -131
  539. package/dist/tests/utilities/TestConfiguration.js +0 -626
  540. package/dist/tests/utilities/controllers.js +0 -40
  541. package/dist/tests/utilities/structures.js +0 -234
  542. package/dist/utilities/retry.js +0 -30
  543. package/jest-testcontainers-config.js +0 -8
  544. package/scripts/load/create-many-apps.js +0 -24
  545. package/scripts/load/create-many-rows.js +0 -30
  546. package/scripts/load/utils.js +0 -66
  547. package/src/api/routes/tests/environmentVariables.spec.ts +0 -144
  548. package/src/integration-test/postgres.spec.ts +0 -752
  549. package/src/utilities/retry.ts +0 -18
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">65.9% </span>
26
+ <span class="strong">6.06% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>87/132</span>
28
+ <span class='fraction'>8/132</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">50% </span>
33
+ <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>24/48</span>
35
+ <span class='fraction'>0/48</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">70.37% </span>
40
+ <span class="strong">0% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>19/27</span>
42
+ <span class='fraction'>0/27</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">65.89% </span>
47
+ <span class="strong">6.2% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>85/129</span>
49
+ <span class='fraction'>8/129</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line medium'></div>
64
+ <div class='status-line low'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -345,31 +345,19 @@
345
345
  <a name='L280'></a><a href='#L280'>280</a>
346
346
  <a name='L281'></a><a href='#L281'>281</a>
347
347
  <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
348
+ <a name='L283'></a><a href='#L283'>283</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
361
349
  <span class="cline-any cline-neutral">&nbsp;</span>
362
350
  <span class="cline-any cline-neutral">&nbsp;</span>
363
351
  <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-yes">58x</span>
352
+ <span class="cline-any cline-yes">56x</span>
365
353
  <span class="cline-any cline-neutral">&nbsp;</span>
366
354
  <span class="cline-any cline-neutral">&nbsp;</span>
367
355
  <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-yes">58x</span>
369
- <span class="cline-any cline-yes">58x</span>
356
+ <span class="cline-any cline-yes">56x</span>
357
+ <span class="cline-any cline-yes">56x</span>
370
358
  <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-yes">58x</span>
372
- <span class="cline-any cline-yes">58x</span>
359
+ <span class="cline-any cline-yes">56x</span>
360
+ <span class="cline-any cline-yes">56x</span>
373
361
  <span class="cline-any cline-neutral">&nbsp;</span>
374
362
  <span class="cline-any cline-neutral">&nbsp;</span>
375
363
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -377,11 +365,10 @@
377
365
  <span class="cline-any cline-neutral">&nbsp;</span>
378
366
  <span class="cline-any cline-neutral">&nbsp;</span>
379
367
  <span class="cline-any cline-neutral">&nbsp;</span>
368
+ <span class="cline-any cline-yes">56x</span>
369
+ <span class="cline-any cline-yes">56x</span>
380
370
  <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-yes">58x</span>
382
- <span class="cline-any cline-yes">58x</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-yes">58x</span>
371
+ <span class="cline-any cline-yes">56x</span>
385
372
  <span class="cline-any cline-neutral">&nbsp;</span>
386
373
  <span class="cline-any cline-no">&nbsp;</span>
387
374
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -389,43 +376,41 @@
389
376
  <span class="cline-any cline-neutral">&nbsp;</span>
390
377
  <span class="cline-any cline-neutral">&nbsp;</span>
391
378
  <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-yes">132x</span>
393
- <span class="cline-any cline-yes">2x</span>
394
- <span class="cline-any cline-yes">12x</span>
395
- <span class="cline-any cline-yes">11x</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-no">&nbsp;</span>
380
+ <span class="cline-any cline-no">&nbsp;</span>
381
+ <span class="cline-any cline-no">&nbsp;</span>
382
+ <span class="cline-any cline-no">&nbsp;</span>
397
383
  <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-yes">1x</span>
399
- <span class="cline-any cline-yes">1x</span>
400
384
  <span class="cline-any cline-neutral">&nbsp;</span>
401
385
  <span class="cline-any cline-no">&nbsp;</span>
386
+ <span class="cline-any cline-no">&nbsp;</span>
402
387
  <span class="cline-any cline-neutral">&nbsp;</span>
388
+ <span class="cline-any cline-no">&nbsp;</span>
403
389
  <span class="cline-any cline-neutral">&nbsp;</span>
404
390
  <span class="cline-any cline-neutral">&nbsp;</span>
405
391
  <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-yes">132x</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
392
  <span class="cline-any cline-neutral">&nbsp;</span>
393
+ <span class="cline-any cline-no">&nbsp;</span>
409
394
  <span class="cline-any cline-neutral">&nbsp;</span>
410
395
  <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-yes">1x</span>
412
- <span class="cline-any cline-yes">1x</span>
413
- <span class="cline-any cline-yes">1x</span>
414
- <span class="cline-any cline-yes">1x</span>
415
396
  <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-yes">1x</span>
417
- <span class="cline-any cline-yes">1x</span>
418
397
  <span class="cline-any cline-neutral">&nbsp;</span>
398
+ <span class="cline-any cline-no">&nbsp;</span>
399
+ <span class="cline-any cline-no">&nbsp;</span>
400
+ <span class="cline-any cline-no">&nbsp;</span>
401
+ <span class="cline-any cline-no">&nbsp;</span>
419
402
  <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-no">&nbsp;</span>
404
+ <span class="cline-any cline-no">&nbsp;</span>
420
405
  <span class="cline-any cline-neutral">&nbsp;</span>
421
406
  <span class="cline-any cline-neutral">&nbsp;</span>
422
407
  <span class="cline-any cline-neutral">&nbsp;</span>
423
408
  <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-yes">105x</span>
425
- <span class="cline-any cline-yes">105x</span>
426
- <span class="cline-any cline-yes">105x</span>
427
- <span class="cline-any cline-yes">105x</span>
428
409
  <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-no">&nbsp;</span>
411
+ <span class="cline-any cline-no">&nbsp;</span>
412
+ <span class="cline-any cline-no">&nbsp;</span>
413
+ <span class="cline-any cline-no">&nbsp;</span>
429
414
  <span class="cline-any cline-neutral">&nbsp;</span>
430
415
  <span class="cline-any cline-neutral">&nbsp;</span>
431
416
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -438,90 +423,83 @@
438
423
  <span class="cline-any cline-no">&nbsp;</span>
439
424
  <span class="cline-any cline-neutral">&nbsp;</span>
440
425
  <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-yes">7x</span>
442
- <span class="cline-any cline-yes">7x</span>
443
- <span class="cline-any cline-yes">7x</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-neutral">&nbsp;</span>
448
- <span class="cline-any cline-yes">4x</span>
449
- <span class="cline-any cline-yes">4x</span>
450
- <span class="cline-any cline-yes">4x</span>
451
- <span class="cline-any cline-yes">4x</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
426
+ <span class="cline-any cline-no">&nbsp;</span>
427
+ <span class="cline-any cline-no">&nbsp;</span>
428
+ <span class="cline-any cline-no">&nbsp;</span>
453
429
  <span class="cline-any cline-neutral">&nbsp;</span>
454
430
  <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-yes">4x</span>
431
+ <span class="cline-any cline-no">&nbsp;</span>
432
+ <span class="cline-any cline-no">&nbsp;</span>
433
+ <span class="cline-any cline-no">&nbsp;</span>
434
+ <span class="cline-any cline-no">&nbsp;</span>
456
435
  <span class="cline-any cline-neutral">&nbsp;</span>
457
436
  <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-yes">1x</span>
459
- <span class="cline-any cline-yes">1x</span>
460
- <span class="cline-any cline-yes">1x</span>
461
- <span class="cline-any cline-yes">1x</span>
437
+ <span class="cline-any cline-no">&nbsp;</span>
462
438
  <span class="cline-any cline-neutral">&nbsp;</span>
463
439
  <span class="cline-any cline-neutral">&nbsp;</span>
440
+ <span class="cline-any cline-no">&nbsp;</span>
441
+ <span class="cline-any cline-no">&nbsp;</span>
442
+ <span class="cline-any cline-no">&nbsp;</span>
443
+ <span class="cline-any cline-no">&nbsp;</span>
464
444
  <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-yes">1x</span>
466
445
  <span class="cline-any cline-neutral">&nbsp;</span>
446
+ <span class="cline-any cline-no">&nbsp;</span>
467
447
  <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-yes">1x</span>
469
- <span class="cline-any cline-yes">1x</span>
470
- <span class="cline-any cline-yes">1x</span>
471
- <span class="cline-any cline-yes">1x</span>
472
- <span class="cline-any cline-yes">1x</span>
473
- <span class="cline-any cline-yes">3x</span>
474
448
  <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-no">&nbsp;</span>
450
+ <span class="cline-any cline-no">&nbsp;</span>
451
+ <span class="cline-any cline-no">&nbsp;</span>
452
+ <span class="cline-any cline-no">&nbsp;</span>
453
+ <span class="cline-any cline-no">&nbsp;</span>
454
+ <span class="cline-any cline-no">&nbsp;</span>
475
455
  <span class="cline-any cline-neutral">&nbsp;</span>
476
456
  <span class="cline-any cline-neutral">&nbsp;</span>
477
457
  <span class="cline-any cline-neutral">&nbsp;</span>
478
458
  <span class="cline-any cline-neutral">&nbsp;</span>
479
459
  <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-yes">1x</span>
481
- <span class="cline-any cline-yes">3x</span>
460
+ <span class="cline-any cline-no">&nbsp;</span>
461
+ <span class="cline-any cline-no">&nbsp;</span>
482
462
  <span class="cline-any cline-neutral">&nbsp;</span>
483
463
  <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-yes">9x</span>
485
- <span class="cline-any cline-yes">9x</span>
486
- <span class="cline-any cline-yes">9x</span>
487
- <span class="cline-any cline-yes">9x</span>
488
- <span class="cline-any cline-yes">9x</span>
464
+ <span class="cline-any cline-no">&nbsp;</span>
465
+ <span class="cline-any cline-no">&nbsp;</span>
466
+ <span class="cline-any cline-no">&nbsp;</span>
467
+ <span class="cline-any cline-no">&nbsp;</span>
468
+ <span class="cline-any cline-no">&nbsp;</span>
489
469
  <span class="cline-any cline-no">&nbsp;</span>
490
470
  <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-yes">9x</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-yes">9x</span>
494
471
  <span class="cline-any cline-no">&nbsp;</span>
495
472
  <span class="cline-any cline-neutral">&nbsp;</span>
473
+ <span class="cline-any cline-no">&nbsp;</span>
474
+ <span class="cline-any cline-no">&nbsp;</span>
496
475
  <span class="cline-any cline-neutral">&nbsp;</span>
497
476
  <span class="cline-any cline-neutral">&nbsp;</span>
498
477
  <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-yes">9x</span>
500
- <span class="cline-any cline-yes">1x</span>
501
478
  <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-no">&nbsp;</span>
480
+ <span class="cline-any cline-no">&nbsp;</span>
502
481
  <span class="cline-any cline-neutral">&nbsp;</span>
503
482
  <span class="cline-any cline-neutral">&nbsp;</span>
504
483
  <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-yes">9x</span>
506
484
  <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-yes">4x</span>
485
+ <span class="cline-any cline-no">&nbsp;</span>
508
486
  <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-no">&nbsp;</span>
509
488
  <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-yes">4x</span>
511
489
  <span class="cline-any cline-neutral">&nbsp;</span>
490
+ <span class="cline-any cline-no">&nbsp;</span>
512
491
  <span class="cline-any cline-neutral">&nbsp;</span>
513
492
  <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-yes">9x</span>
515
- <span class="cline-any cline-yes">9x</span>
516
493
  <span class="cline-any cline-neutral">&nbsp;</span>
494
+ <span class="cline-any cline-no">&nbsp;</span>
495
+ <span class="cline-any cline-no">&nbsp;</span>
517
496
  <span class="cline-any cline-neutral">&nbsp;</span>
518
497
  <span class="cline-any cline-neutral">&nbsp;</span>
519
498
  <span class="cline-any cline-neutral">&nbsp;</span>
520
499
  <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-yes">9x</span>
522
- <span class="cline-any cline-yes">9x</span>
523
500
  <span class="cline-any cline-no">&nbsp;</span>
524
- <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-no">&nbsp;</span>
502
+ <span class="cline-any cline-no">&nbsp;</span>
525
503
  <span class="cline-any cline-neutral">&nbsp;</span>
526
504
  <span class="cline-any cline-neutral">&nbsp;</span>
527
505
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -532,7 +510,7 @@
532
510
  <span class="cline-any cline-no">&nbsp;</span>
533
511
  <span class="cline-any cline-neutral">&nbsp;</span>
534
512
  <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-yes">9x</span>
513
+ <span class="cline-any cline-no">&nbsp;</span>
536
514
  <span class="cline-any cline-neutral">&nbsp;</span>
537
515
  <span class="cline-any cline-no">&nbsp;</span>
538
516
  <span class="cline-any cline-no">&nbsp;</span>
@@ -603,44 +581,42 @@
603
581
  <span class="cline-any cline-no">&nbsp;</span>
604
582
  <span class="cline-any cline-neutral">&nbsp;</span>
605
583
  <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-yes">1x</span>
607
- <span class="cline-any cline-yes">1x</span>
608
- <span class="cline-any cline-yes">1x</span>
609
- <span class="cline-any cline-yes">1x</span>
610
- <span class="cline-any cline-yes">1x</span>
611
- <span class="cline-any cline-yes">1x</span>
612
584
  <span class="cline-any cline-no">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&nbsp;</span>
614
- <span class="cline-any cline-yes">1x</span>
585
+ <span class="cline-any cline-no">&nbsp;</span>
586
+ <span class="cline-any cline-no">&nbsp;</span>
587
+ <span class="cline-any cline-no">&nbsp;</span>
588
+ <span class="cline-any cline-no">&nbsp;</span>
589
+ <span class="cline-any cline-no">&nbsp;</span>
615
590
  <span class="cline-any cline-no">&nbsp;</span>
616
591
  <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-yes">1x</span>
618
- <span class="cline-any cline-yes">1x</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
592
+ <span class="cline-any cline-no">&nbsp;</span>
593
+ <span class="cline-any cline-no">&nbsp;</span>
620
594
  <span class="cline-any cline-neutral">&nbsp;</span>
595
+ <span class="cline-any cline-no">&nbsp;</span>
596
+ <span class="cline-any cline-no">&nbsp;</span>
621
597
  <span class="cline-any cline-neutral">&nbsp;</span>
622
598
  <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-yes">1x</span>
624
- <span class="cline-any cline-yes">1x</span>
625
599
  <span class="cline-any cline-neutral">&nbsp;</span>
600
+ <span class="cline-any cline-no">&nbsp;</span>
601
+ <span class="cline-any cline-no">&nbsp;</span>
626
602
  <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-yes">1x</span>
628
- <span class="cline-any cline-yes">6x</span>
629
603
  <span class="cline-any cline-neutral">&nbsp;</span>
604
+ <span class="cline-any cline-no">&nbsp;</span>
605
+ <span class="cline-any cline-no">&nbsp;</span>
630
606
  <span class="cline-any cline-neutral">&nbsp;</span>
631
607
  <span class="cline-any cline-neutral">&nbsp;</span>
632
608
  <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-yes">5x</span>
634
609
  <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-yes">1x</span>
636
- <span class="cline-any cline-yes">1x</span>
637
- <span class="cline-any cline-yes">1x</span>
638
- <span class="cline-any cline-yes">1x</span>
610
+ <span class="cline-any cline-no">&nbsp;</span>
639
611
  <span class="cline-any cline-neutral">&nbsp;</span>
640
- <span class="cline-any cline-yes">1x</span>
641
- <span class="cline-any cline-yes">1x</span>
642
- <span class="cline-any cline-yes">1x</span>
612
+ <span class="cline-any cline-no">&nbsp;</span>
613
+ <span class="cline-any cline-no">&nbsp;</span>
614
+ <span class="cline-any cline-no">&nbsp;</span>
615
+ <span class="cline-any cline-no">&nbsp;</span>
643
616
  <span class="cline-any cline-neutral">&nbsp;</span>
617
+ <span class="cline-any cline-no">&nbsp;</span>
618
+ <span class="cline-any cline-no">&nbsp;</span>
619
+ <span class="cline-any cline-no">&nbsp;</span>
644
620
  <span class="cline-any cline-neutral">&nbsp;</span>
645
621
  <span class="cline-any cline-neutral">&nbsp;</span>
646
622
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -649,7 +625,7 @@
649
625
  <span class="cline-any cline-neutral">&nbsp;</span>
650
626
  <span class="cline-any cline-neutral">&nbsp;</span>
651
627
  <span class="cline-any cline-neutral">&nbsp;</span>
652
- <span class="cline-any cline-yes">1x</span>
628
+ <span class="cline-any cline-no">&nbsp;</span>
653
629
  <span class="cline-any cline-neutral">&nbsp;</span>
654
630
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import {
655
631
  SortDirection,
@@ -671,56 +647,53 @@ import {
671
647
  PaginationJson,
672
648
  Table,
673
649
  Datasource,
674
- IncludeRelationship,
675
650
  } from "@budibase/types"
676
651
  import sdk from "../../../sdk"
677
652
  &nbsp;
678
653
  const { cleanExportRows } = require("./utils")
679
654
  &nbsp;
680
- export async function <span class="cstat-no" title="statement not covered" >handleRequest<span class="fstat-no" title="function not covered" >(</span></span>
655
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >handleRequest<span class="fstat-no" title="function not covered" >(</span></span></span>
681
656
  operation: Operation,
682
657
  tableId: string,
683
658
  opts?: RunConfig
684
659
  ) {
685
660
  // make sure the filters are cleaned up, no empty strings for equals, fuzzy or string
686
- if (opts &amp;&amp; opts.filters) {
687
- for (let filterField of NoEmptyFilterStrings) {
688
- if (!opts.filters[filterField]) {
689
- continue
661
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (opts &amp;&amp; opts.filters) {</span>
662
+ <span class="cstat-no" title="statement not covered" > for (let filterField of NoEmptyFilterStrings) {</span>
663
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!opts.filters[filterField]) {</span>
664
+ <span class="cstat-no" title="statement not covered" > continue</span>
690
665
  }
691
666
  // @ts-ignore
692
- for (let [key, value] of Object.entries(opts.filters[filterField])) {
693
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!value || value === "") {
667
+ <span class="cstat-no" title="statement not covered" > for (let [key, value] of Object.entries(opts.filters[filterField])) {</span>
668
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!value || value === "") {</span>
694
669
  // @ts-ignore
695
670
  <span class="cstat-no" title="statement not covered" > delete opts.filters[filterField][key]</span>
696
671
  }
697
672
  }
698
673
  }
699
674
  }
700
- return new ExternalRequest(operation, tableId, opts?.datasource).run(
701
- opts || <span class="branch-1 cbranch-no" title="branch not covered" >{}</span>
675
+ <span class="cstat-no" title="statement not covered" > return new ExternalRequest(operation, tableId, opts?.datasource).run(</span>
676
+ opts || {}
702
677
  )
703
678
  }
704
679
  &nbsp;
705
- export async function patch(ctx: BBContext) {
706
- const inputs = ctx.request.body
707
- const tableId = ctx.params.tableId
708
- const id = inputs._id
680
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >patch<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
681
+ const inputs = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
682
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
683
+ const id = <span class="cstat-no" title="statement not covered" >inputs._id</span>
709
684
  // don't save the ID to db
710
- delete inputs._id
711
- return handleRequest(Operation.UPDATE, tableId, {
685
+ <span class="cstat-no" title="statement not covered" > delete inputs._id</span>
686
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.UPDATE, tableId, {</span>
712
687
  id: breakRowIdField(id),
713
688
  row: inputs,
714
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
715
689
  })
716
690
  }
717
691
  &nbsp;
718
- export async function save(ctx: BBContext) {
719
- const inputs = ctx.request.body
720
- const tableId = ctx.params.tableId
721
- return handleRequest(Operation.CREATE, tableId, {
692
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >save<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
693
+ const inputs = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
694
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
695
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.CREATE, tableId, {</span>
722
696
  row: inputs,
723
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
724
697
  })
725
698
  }
726
699
  &nbsp;
@@ -732,88 +705,82 @@ export async function <span class="cstat-no" title="statement not covered" ><spa
732
705
  <span class="cstat-no" title="statement not covered" > return fetch(ctx)</span>
733
706
  }
734
707
  &nbsp;
735
- export async function fetch(ctx: BBContext) {
736
- const tableId = ctx.params.tableId
737
- return handleRequest(Operation.READ, tableId, {
738
- includeSqlRelationships: IncludeRelationship.INCLUDE,
739
- })
708
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >fetch<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
709
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
710
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.READ, tableId)</span>
740
711
  }
741
712
  &nbsp;
742
- export async function find(ctx: BBContext) {
743
- const id = ctx.params.rowId
744
- const tableId = ctx.params.tableId
745
- const response = (await handleRequest(Operation.READ, tableId, {
713
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >find<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
714
+ const id = <span class="cstat-no" title="statement not covered" >ctx.params.rowId</span>
715
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
716
+ const response = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
746
717
  id: breakRowIdField(id),
747
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
748
718
  })) as Row[]
749
- return response ? response[0] : <span class="branch-1 cbranch-no" title="branch not covered" >response</span>
719
+ <span class="cstat-no" title="statement not covered" > return response ? response[0] : response</span>
750
720
  }
751
721
  &nbsp;
752
- export async function destroy(ctx: BBContext) {
753
- const tableId = ctx.params.tableId
754
- const id = ctx.request.body._id
755
- const { row } = (await handleRequest(Operation.DELETE, tableId, {
722
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >destroy<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
723
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
724
+ const id = <span class="cstat-no" title="statement not covered" >ctx.request.body._id</span>
725
+ const { row } = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.DELETE, tableId, {</span>
756
726
  id: breakRowIdField(id),
757
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
758
727
  })) as { row: Row }
759
- return { response: { ok: true }, row }
728
+ <span class="cstat-no" title="statement not covered" > return { response: { ok: true }, row }</span>
760
729
  }
761
730
  &nbsp;
762
- export async function bulkDestroy(ctx: BBContext) {
763
- const { rows } = ctx.request.body
764
- const tableId = ctx.params.tableId
765
- let promises: Promise&lt;Row[] | { row: Row; table: Table }&gt;[] = []
766
- for (let row of rows) {
767
- promises.push(
731
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >bulkDestroy<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
732
+ const { rows } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
733
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
734
+ let promises: Promise&lt;Row[] | { row: Row; table: Table }&gt;[] = <span class="cstat-no" title="statement not covered" >[]</span>
735
+ <span class="cstat-no" title="statement not covered" > for (let row of rows) {</span>
736
+ <span class="cstat-no" title="statement not covered" > promises.push(</span>
768
737
  handleRequest(Operation.DELETE, tableId, {
769
738
  id: breakRowIdField(row._id),
770
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
771
739
  })
772
740
  )
773
741
  }
774
- const responses = (await Promise.all(promises)) as { row: Row }[]
775
- return { response: { ok: true }, rows: responses.map(resp =&gt; resp.row) }
742
+ const responses = (<span class="cstat-no" title="statement not covered" >await Promise.all(promises)) as { row: Row }[]</span>
743
+ <span class="cstat-no" title="statement not covered" > return { response: { ok: true }, rows: responses.map(<span class="fstat-no" title="function not covered" >resp =&gt; <span class="cstat-no" title="statement not covered" >r</span>esp.row)</span> }</span>
776
744
  }
777
745
  &nbsp;
778
- export async function search(ctx: BBContext) {
779
- const tableId = ctx.params.tableId
780
- const { paginate, query, ...params } = ctx.request.body
781
- let { bookmark, limit } = params
782
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!bookmark &amp;&amp; paginate) {
746
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >search<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
747
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
748
+ const { paginate, query, ...params } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
749
+ let { bookmark, limit } = <span class="cstat-no" title="statement not covered" >params</span>
750
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!bookmark &amp;&amp; paginate) {</span>
783
751
  <span class="cstat-no" title="statement not covered" > bookmark = 1</span>
784
752
  }
785
- let paginateObj = {}
753
+ let paginateObj = <span class="cstat-no" title="statement not covered" >{}</span>
786
754
  &nbsp;
787
- <span class="missing-if-branch" title="if path not taken" >I</span>if (paginate) {
755
+ <span class="cstat-no" title="statement not covered" > if (paginate) {</span>
788
756
  <span class="cstat-no" title="statement not covered" > paginateObj = {</span>
789
757
  // add one so we can track if there is another page
790
758
  limit: limit,
791
759
  page: bookmark,
792
760
  }
793
- } else if (params &amp;&amp; limit) {
794
- paginateObj = {
761
+ } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (params &amp;&amp; limit) {</span>
762
+ <span class="cstat-no" title="statement not covered" > paginateObj = {</span>
795
763
  limit: limit,
796
764
  }
797
765
  }
798
766
  let sort
799
- if (params.sort) {
767
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (params.sort) {</span>
800
768
  const direction =
801
- params.sortOrder === "descending"
769
+ <span class="cstat-no" title="statement not covered" > params.sortOrder === "descending"</span>
802
770
  ? SortDirection.DESCENDING
803
771
  : SortDirection.ASCENDING
804
- sort = {
772
+ <span class="cstat-no" title="statement not covered" > sort = {</span>
805
773
  [params.sort]: direction,
806
774
  }
807
775
  }
808
- try {
809
- const rows = (await handleRequest(Operation.READ, tableId, {
776
+ <span class="cstat-no" title="statement not covered" > try {</span>
777
+ const rows = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
810
778
  filters: query,
811
779
  sort,
812
780
  paginate: paginateObj as PaginationJson,
813
- includeSqlRelationships: IncludeRelationship.INCLUDE,
814
781
  })) as Row[]
815
- let hasNextPage = false
816
- <span class="missing-if-branch" title="if path not taken" >I</span>if (paginate &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >rows.length === limit) {</span>
782
+ let hasNextPage = <span class="cstat-no" title="statement not covered" >false</span>
783
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (paginate &amp;&amp; rows.length === limit) {</span>
817
784
  const nextRows = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
818
785
  filters: query,
819
786
  sort,
@@ -821,12 +788,11 @@ export async function search(ctx: BBContext) {
821
788
  limit: 1,
822
789
  page: bookmark * limit + 1,
823
790
  },
824
- includeSqlRelationships: IncludeRelationship.INCLUDE,
825
791
  })) as Row[]
826
792
  <span class="cstat-no" title="statement not covered" > hasNextPage = nextRows.length &gt; 0</span>
827
793
  }
828
794
  // need wrapper object for bookmarks etc when paginating
829
- return { rows, hasNextPage, bookmark: bookmark + 1 }
795
+ <span class="cstat-no" title="statement not covered" > return { rows, hasNextPage, bookmark: bookmark + 1 }</span>
830
796
  } catch (err: any) {
831
797
  <span class="cstat-no" title="statement not covered" > if (err.message &amp;&amp; err.message.includes("does not exist")) {</span>
832
798
  <span class="cstat-no" title="statement not covered" > throw new Error(</span>
@@ -897,53 +863,51 @@ export async function <span class="cstat-no" title="statement not covered" ><spa
897
863
  <span class="cstat-no" title="statement not covered" > return apiFileReturn(exporter(headers, exportRows))</span>
898
864
  }
899
865
  &nbsp;
900
- export async function fetchEnrichedRow(ctx: BBContext) {
901
- const id = ctx.params.rowId
902
- const tableId = ctx.params.tableId
903
- const { datasourceId, tableName } = breakExternalTableId(tableId)
904
- const datasource: Datasource = await sdk.datasources.get(datasourceId!)
905
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!tableName) {
866
+ export async function <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >fetchEnrichedRow<span class="fstat-no" title="function not covered" >(</span></span>c</span>tx: BBContext) {
867
+ const id = <span class="cstat-no" title="statement not covered" >ctx.params.rowId</span>
868
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
869
+ const { datasourceId, tableName } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(tableId)</span>
870
+ const datasource: Datasource = <span class="cstat-no" title="statement not covered" >await sdk.datasources.get(datasourceId!)</span>
871
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!tableName) {</span>
906
872
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Unable to find table.")</span>
907
873
  }
908
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!datasource || !datasource.entities) {
874
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!datasource || !datasource.entities) {</span>
909
875
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Datasource has not been configured for plus API.")</span>
910
876
  }
911
- const tables = datasource.entities
912
- const response = (await handleRequest(Operation.READ, tableId, {
877
+ const tables = <span class="cstat-no" title="statement not covered" >datasource.entities</span>
878
+ const response = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
913
879
  id,
914
880
  datasource,
915
- includeSqlRelationships: IncludeRelationship.INCLUDE,
916
881
  })) as Row[]
917
- const table: Table = tables[tableName]
918
- const row = response[0]
882
+ const table: Table = <span class="cstat-no" title="statement not covered" >tables[tableName]</span>
883
+ const row = <span class="cstat-no" title="statement not covered" >response[0]</span>
919
884
  // this seems like a lot of work, but basically we need to dig deeper for the enrich
920
885
  // for a single row, there is probably a better way to do this with some smart multi-layer joins
921
- for (let [fieldName, field] of Object.entries(table.schema)) {
922
- if (
886
+ <span class="cstat-no" title="statement not covered" > for (let [fieldName, field] of Object.entries(table.schema)) {</span>
887
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
923
888
  field.type !== FieldTypes.LINK ||
924
889
  !row[fieldName] ||
925
890
  row[fieldName].length === 0
926
891
  ) {
927
- continue
892
+ <span class="cstat-no" title="statement not covered" > continue</span>
928
893
  }
929
- const links = row[fieldName]
930
- const linkedTableId = field.tableId
931
- const linkedTableName = breakExternalTableId(linkedTableId).tableName!
932
- const linkedTable = tables[linkedTableName]
894
+ const links = <span class="cstat-no" title="statement not covered" >row[fieldName]</span>
895
+ const linkedTableId = <span class="cstat-no" title="statement not covered" >field.tableId</span>
896
+ const linkedTableName = <span class="cstat-no" title="statement not covered" >breakExternalTableId(linkedTableId).tableName!</span>
897
+ const linkedTable = <span class="cstat-no" title="statement not covered" >tables[linkedTableName]</span>
933
898
  // don't support composite keys right now
934
- const linkedIds = links.map((link: Row) =&gt; breakRowIdField(link._id!)[0])
935
- const primaryLink = linkedTable.primary?.[0] as string
936
- row[fieldName] = await handleRequest(Operation.READ, linkedTableId!, {
899
+ const linkedIds = <span class="cstat-no" title="statement not covered" >links.map(<span class="fstat-no" title="function not covered" >(l</span>ink: Row) =&gt; <span class="cstat-no" title="statement not covered" >breakRowIdField(link._id!)[0])</span></span>
900
+ const primaryLink = <span class="cstat-no" title="statement not covered" >linkedTable.primary?.[0] </span>as string
901
+ <span class="cstat-no" title="statement not covered" > row[fieldName] = await handleRequest(Operation.READ, linkedTableId!, {</span>
937
902
  tables,
938
903
  filters: {
939
904
  oneOf: {
940
905
  [primaryLink]: linkedIds,
941
906
  },
942
907
  },
943
- includeSqlRelationships: IncludeRelationship.INCLUDE,
944
908
  })
945
909
  }
946
- return row
910
+ <span class="cstat-no" title="statement not covered" > return row</span>
947
911
  }
948
912
  &nbsp;</pre></td></tr></table></pre>
949
913
 
@@ -952,7 +916,7 @@ export async function fetchEnrichedRow(ctx: BBContext) {
952
916
  <div class='footer quiet pad2 space-top1 center small'>
953
917
  Code coverage generated by
954
918
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
955
- at Fri Feb 10 2023 19:13:10 GMT+0000 (Coordinated Universal Time)
919
+ at Sun Feb 12 2023 15:39:11 GMT+0000 (Coordinated Universal Time)
956
920
  </div>
957
921
  <script src="../../../../prettify.js"></script>
958
922
  <script>