@budibase/server 2.3.14-alpha.0 → 2.3.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (550) 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.d7529be1.js → index.c07b0111.js} +235 -235
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +6679 -11409
  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 +37 -40
  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 +223 -214
  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 +12121 -19834
  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 +14 -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 +18 -15
  427. package/src/integrations/oracle.ts +1 -1
  428. package/src/integrations/tests/sql.spec.ts +38 -0
  429. package/src/migrations/functions/tests/appUrls.spec.js +1 -1
  430. package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
  431. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
  432. package/src/migrations/tests/index.spec.ts +20 -13
  433. package/src/sdk/app/backups/exports.ts +2 -8
  434. package/src/sdk/app/datasources/datasources.ts +0 -3
  435. package/src/tests/jestEnv.ts +6 -2
  436. package/src/tests/jestSetup.ts +7 -8
  437. package/src/tests/utilities/TestConfiguration.ts +50 -126
  438. package/src/tests/utilities/structures.ts +2 -16
  439. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +0 -391
  440. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +0 -116
  441. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +0 -116
  442. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +0 -796
  443. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +0 -116
  444. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +0 -805
  445. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +0 -116
  446. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +0 -568
  447. package/coverage/lcov-report/src/api/controllers/view/tests/index.html +0 -116
  448. package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +0 -277
  449. package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +0 -583
  450. package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +0 -199
  451. package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +0 -271
  452. package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +0 -259
  453. package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +0 -1066
  454. package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +0 -154
  455. package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +0 -1123
  456. package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +0 -223
  457. package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +0 -268
  458. package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +0 -178
  459. package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +0 -799
  460. package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +0 -202
  461. package/coverage/lcov-report/src/api/routes/tests/environmentVariables.spec.ts.html +0 -517
  462. package/coverage/lcov-report/src/api/routes/tests/index.html +0 -536
  463. package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +0 -238
  464. package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +0 -670
  465. package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +0 -259
  466. package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +0 -280
  467. package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +0 -358
  468. package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +0 -484
  469. package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +0 -622
  470. package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +0 -1699
  471. package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +0 -478
  472. package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +0 -430
  473. package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +0 -1804
  474. package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +0 -391
  475. package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +0 -541
  476. package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +0 -991
  477. package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +0 -154
  478. package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +0 -679
  479. package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +0 -1342
  480. package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +0 -484
  481. package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +0 -337
  482. package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +0 -187
  483. package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +0 -223
  484. package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +0 -133
  485. package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +0 -250
  486. package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +0 -166
  487. package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +0 -229
  488. package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +0 -229
  489. package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +0 -232
  490. package/coverage/lcov-report/src/automations/tests/index.html +0 -341
  491. package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +0 -220
  492. package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +0 -202
  493. package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +0 -436
  494. package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +0 -298
  495. package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +0 -151
  496. package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +0 -217
  497. package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +0 -166
  498. package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +0 -280
  499. package/coverage/lcov-report/src/automations/unitTests/index.html +0 -116
  500. package/coverage/lcov-report/src/db/tests/index.html +0 -131
  501. package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +0 -793
  502. package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +0 -277
  503. package/coverage/lcov-report/src/integration-test/index.html +0 -116
  504. package/coverage/lcov-report/src/integration-test/postgres.spec.ts.html +0 -2341
  505. package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +0 -310
  506. package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +0 -199
  507. package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +0 -349
  508. package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +0 -550
  509. package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +0 -331
  510. package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +0 -376
  511. package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +0 -253
  512. package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +0 -1087
  513. package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +0 -484
  514. package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +0 -373
  515. package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +0 -328
  516. package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +0 -337
  517. package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +0 -1870
  518. package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +0 -421
  519. package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +0 -1753
  520. package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +0 -574
  521. package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +0 -814
  522. package/coverage/lcov-report/src/middleware/tests/index.html +0 -161
  523. package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +0 -397
  524. package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +0 -214
  525. package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +0 -163
  526. package/coverage/lcov-report/src/migrations/functions/tests/index.html +0 -161
  527. package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +0 -163
  528. package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +0 -517
  529. package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +0 -190
  530. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +0 -131
  531. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +0 -190
  532. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +0 -244
  533. package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +0 -511
  534. package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +0 -313
  535. package/coverage/lcov-report/src/sdk/tests/index.html +0 -116
  536. package/coverage/lcov-report/src/utilities/retry.ts.html +0 -139
  537. package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +0 -116
  538. package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +0 -256
  539. package/dist/api/routes/tests/utilities/index.js +0 -131
  540. package/dist/tests/utilities/TestConfiguration.js +0 -626
  541. package/dist/tests/utilities/controllers.js +0 -40
  542. package/dist/tests/utilities/structures.js +0 -234
  543. package/dist/utilities/retry.js +0 -30
  544. package/jest-testcontainers-config.js +0 -8
  545. package/scripts/load/create-many-apps.js +0 -24
  546. package/scripts/load/create-many-rows.js +0 -30
  547. package/scripts/load/utils.js +0 -66
  548. package/src/api/routes/tests/environmentVariables.spec.ts +0 -144
  549. package/src/integration-test/postgres.spec.ts +0 -752
  550. 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 Tue Feb 14 2023 18:11:53 GMT+0000 (Coordinated Universal Time)
919
+ at Wed Feb 15 2023 09:41:40 GMT+0000 (Coordinated Universal Time)
956
920
  </div>
957
921
  <script src="../../../../prettify.js"></script>
958
922
  <script>