@budibase/server 2.3.2-alpha.3 → 2.3.3

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 (543) hide show
  1. package/__mocks__/aws-sdk.ts +1 -1
  2. package/builder/assets/{index.584d49b4.css → index.4488f38d.css} +1 -1
  3. package/builder/assets/{index.bef36368.js → index.ef71e5c7.js} +199 -199
  4. package/builder/index.html +2 -2
  5. package/coverage/clover.xml +6527 -11196
  6. package/coverage/coverage-final.json +269 -353
  7. package/coverage/lcov-report/index.html +180 -405
  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 +1 -1
  59. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +33 -33
  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 +78 -78
  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 +17 -23
  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 +9 -9
  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 +46 -46
  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 +32 -32
  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 +37 -37
  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 +65 -65
  229. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  230. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/redis.ts.html +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 +74 -74
  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 +39 -39
  294. package/coverage/lcov-report/src/sdk/app/datasources/index.html +1 -1
  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 +4 -4
  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 +189 -387
  314. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +15 -15
  315. package/coverage/lcov-report/src/tests/utilities/index.html +18 -18
  316. package/coverage/lcov-report/src/tests/utilities/index.ts.html +1 -1
  317. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +27 -33
  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 +10 -10
  321. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  322. package/coverage/lcov-report/src/threads/utils.ts.html +9 -9
  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 +11292 -18907
  354. package/dist/api/controllers/row/ExternalRequest.js +2 -4
  355. package/dist/api/controllers/row/external.js +1 -12
  356. package/dist/api/controllers/table/external.js +8 -8
  357. package/dist/api/routes/public/tests/utils.js +2 -29
  358. package/dist/app.js +1 -1
  359. package/dist/constants/index.js +24 -4
  360. package/dist/db/defaultData/datasource_bb_default.js +5 -6
  361. package/dist/db/linkedRows/LinkController.js +8 -9
  362. package/dist/integrations/base/sql.js +3 -10
  363. package/dist/package.json +6 -8
  364. package/dist/sdk/app/backups/exports.js +2 -8
  365. package/dist/tsconfig.build.tsbuildinfo +1 -1
  366. package/jest.config.ts +11 -28
  367. package/package.json +7 -9
  368. package/specs/openapi.json +6 -6
  369. package/specs/openapi.yaml +3 -3
  370. package/src/api/controllers/query/import/tests/index.spec.js +1 -1
  371. package/src/api/controllers/row/ExternalRequest.ts +2 -6
  372. package/src/api/controllers/row/external.ts +1 -13
  373. package/src/api/controllers/table/external.ts +2 -3
  374. package/src/api/routes/public/applications.ts +1 -0
  375. package/src/api/routes/public/tests/compare.spec.js +1 -1
  376. package/src/api/routes/public/tests/users.spec.js +1 -1
  377. package/src/api/routes/public/tests/utils.ts +8 -25
  378. package/src/api/routes/tests/__snapshots__/datasource.spec.ts.snap +1 -1
  379. package/src/api/routes/tests/analytics.spec.js +1 -4
  380. package/src/api/routes/tests/apikeys.spec.js +1 -1
  381. package/src/api/routes/tests/application.spec.ts +6 -20
  382. package/src/api/routes/tests/auth.spec.js +2 -2
  383. package/src/api/routes/tests/automation.spec.js +2 -6
  384. package/src/api/routes/tests/backup.spec.ts +13 -4
  385. package/src/api/routes/tests/{cloud.seq.spec.ts → cloud.spec.ts} +15 -11
  386. package/src/api/routes/tests/component.spec.js +1 -1
  387. package/src/api/routes/tests/datasource.spec.ts +3 -20
  388. package/src/api/routes/tests/dev.spec.js +1 -1
  389. package/src/api/routes/tests/integration.spec.js +1 -1
  390. package/src/api/routes/tests/layout.spec.js +1 -1
  391. package/src/api/routes/tests/metadata.spec.js +1 -1
  392. package/src/api/routes/tests/misc.spec.js +1 -1
  393. package/src/api/routes/tests/permissions.spec.js +1 -4
  394. package/src/api/routes/tests/{query.seq.spec.js → query.spec.js} +1 -21
  395. package/src/api/routes/tests/role.spec.js +1 -6
  396. package/src/api/routes/tests/routing.spec.js +1 -1
  397. package/src/api/routes/tests/row.spec.js +3 -11
  398. package/src/api/routes/tests/screen.spec.js +1 -1
  399. package/src/api/routes/tests/static.spec.js +1 -2
  400. package/src/api/routes/tests/table.spec.js +1 -1
  401. package/src/api/routes/tests/templates.spec.js +1 -1
  402. package/src/api/routes/tests/user.spec.js +0 -3
  403. package/src/api/routes/tests/utilities/TestFunctions.ts +2 -25
  404. package/src/api/routes/tests/utilities/index.ts +3 -5
  405. package/src/api/routes/tests/view.spec.js +1 -4
  406. package/src/api/routes/tests/webhook.spec.js +2 -11
  407. package/src/app.ts +1 -2
  408. package/src/automations/tests/automation.spec.js +4 -4
  409. package/src/automations/tests/bash.spec.js +1 -1
  410. package/src/automations/tests/discord.spec.js +1 -1
  411. package/src/automations/tests/executeQuery.spec.js +3 -2
  412. package/src/automations/tests/executeScript.spec.js +1 -1
  413. package/src/automations/tests/outgoingWebhook.spec.js +1 -1
  414. package/src/automations/tests/sendSmtpEmail.spec.js +1 -1
  415. package/src/automations/tests/serverLog.spec.js +1 -1
  416. package/src/automations/tests/updateRow.spec.js +1 -1
  417. package/src/automations/tests/zapier.spec.js +1 -1
  418. package/src/constants/index.ts +23 -1
  419. package/src/db/defaultData/datasource_bb_default.ts +10 -6
  420. package/src/db/linkedRows/LinkController.ts +1 -2
  421. package/src/db/tests/linkController.spec.js +1 -4
  422. package/src/db/tests/linkTests.spec.js +1 -1
  423. package/src/integrations/base/sql.ts +5 -15
  424. package/src/integrations/oracle.ts +1 -1
  425. package/src/migrations/functions/tests/appUrls.spec.js +1 -1
  426. package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
  427. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
  428. package/src/migrations/tests/index.spec.ts +2 -3
  429. package/src/sdk/app/backups/exports.ts +2 -8
  430. package/src/tests/jestEnv.ts +6 -2
  431. package/src/tests/jestSetup.ts +6 -5
  432. package/src/tests/utilities/TestConfiguration.ts +46 -112
  433. package/src/tests/utilities/structures.ts +2 -4
  434. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +0 -391
  435. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +0 -116
  436. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +0 -116
  437. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +0 -796
  438. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +0 -116
  439. package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +0 -805
  440. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +0 -116
  441. package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +0 -568
  442. package/coverage/lcov-report/src/api/controllers/view/tests/index.html +0 -116
  443. package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +0 -277
  444. package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +0 -583
  445. package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +0 -199
  446. package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +0 -271
  447. package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +0 -259
  448. package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +0 -1066
  449. package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +0 -154
  450. package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +0 -1123
  451. package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +0 -223
  452. package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +0 -268
  453. package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +0 -178
  454. package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +0 -799
  455. package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +0 -202
  456. package/coverage/lcov-report/src/api/routes/tests/index.html +0 -521
  457. package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +0 -238
  458. package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +0 -670
  459. package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +0 -259
  460. package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +0 -280
  461. package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +0 -358
  462. package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +0 -484
  463. package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +0 -622
  464. package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +0 -1696
  465. package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +0 -478
  466. package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +0 -430
  467. package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +0 -1804
  468. package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +0 -391
  469. package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +0 -541
  470. package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +0 -991
  471. package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +0 -154
  472. package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +0 -688
  473. package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +0 -1342
  474. package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +0 -484
  475. package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +0 -337
  476. package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +0 -187
  477. package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +0 -223
  478. package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +0 -133
  479. package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +0 -250
  480. package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +0 -166
  481. package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +0 -229
  482. package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +0 -229
  483. package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +0 -232
  484. package/coverage/lcov-report/src/automations/tests/index.html +0 -341
  485. package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +0 -220
  486. package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +0 -202
  487. package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +0 -436
  488. package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +0 -298
  489. package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +0 -151
  490. package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +0 -217
  491. package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +0 -166
  492. package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +0 -280
  493. package/coverage/lcov-report/src/automations/unitTests/index.html +0 -116
  494. package/coverage/lcov-report/src/db/tests/index.html +0 -131
  495. package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +0 -793
  496. package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +0 -277
  497. package/coverage/lcov-report/src/integration-test/index.html +0 -116
  498. package/coverage/lcov-report/src/integration-test/postgres.spec.ts.html +0 -2341
  499. package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +0 -310
  500. package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +0 -199
  501. package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +0 -349
  502. package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +0 -550
  503. package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +0 -331
  504. package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +0 -376
  505. package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +0 -253
  506. package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +0 -1087
  507. package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +0 -484
  508. package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +0 -373
  509. package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +0 -328
  510. package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +0 -337
  511. package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +0 -1870
  512. package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +0 -421
  513. package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +0 -1753
  514. package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +0 -574
  515. package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +0 -814
  516. package/coverage/lcov-report/src/middleware/tests/index.html +0 -161
  517. package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +0 -397
  518. package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +0 -214
  519. package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +0 -163
  520. package/coverage/lcov-report/src/migrations/functions/tests/index.html +0 -161
  521. package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +0 -163
  522. package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +0 -517
  523. package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +0 -190
  524. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +0 -131
  525. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +0 -190
  526. package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +0 -244
  527. package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +0 -535
  528. package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +0 -313
  529. package/coverage/lcov-report/src/sdk/tests/index.html +0 -116
  530. package/coverage/lcov-report/src/utilities/retry.ts.html +0 -139
  531. package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +0 -116
  532. package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +0 -256
  533. package/dist/api/routes/tests/utilities/index.js +0 -131
  534. package/dist/tests/utilities/TestConfiguration.js +0 -618
  535. package/dist/tests/utilities/controllers.js +0 -40
  536. package/dist/tests/utilities/structures.js +0 -226
  537. package/dist/utilities/retry.js +0 -30
  538. package/jest-testcontainers-config.js +0 -8
  539. package/scripts/load/create-many-apps.js +0 -24
  540. package/scripts/load/create-many-rows.js +0 -30
  541. package/scripts/load/utils.js +0 -66
  542. package/src/integration-test/postgres.spec.ts +0 -752
  543. 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">66.92% </span>
26
+ <span class="strong">6.15% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>87/130</span>
28
+ <span class='fraction'>8/130</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">51.06% </span>
33
+ <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>24/47</span>
35
+ <span class='fraction'>0/47</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">66.92% </span>
47
+ <span class="strong">6.29% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>85/127</span>
49
+ <span class='fraction'>8/127</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>
@@ -343,31 +343,19 @@
343
343
  <a name='L278'></a><a href='#L278'>278</a>
344
344
  <a name='L279'></a><a href='#L279'>279</a>
345
345
  <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
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></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
346
+ <a name='L281'></a><a href='#L281'>281</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
359
347
  <span class="cline-any cline-neutral">&nbsp;</span>
360
348
  <span class="cline-any cline-neutral">&nbsp;</span>
361
349
  <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-yes">57x</span>
350
+ <span class="cline-any cline-yes">56x</span>
363
351
  <span class="cline-any cline-neutral">&nbsp;</span>
364
352
  <span class="cline-any cline-neutral">&nbsp;</span>
365
353
  <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-yes">57x</span>
367
- <span class="cline-any cline-yes">57x</span>
354
+ <span class="cline-any cline-yes">56x</span>
355
+ <span class="cline-any cline-yes">56x</span>
368
356
  <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-yes">57x</span>
370
- <span class="cline-any cline-yes">57x</span>
357
+ <span class="cline-any cline-yes">56x</span>
358
+ <span class="cline-any cline-yes">56x</span>
371
359
  <span class="cline-any cline-neutral">&nbsp;</span>
372
360
  <span class="cline-any cline-neutral">&nbsp;</span>
373
361
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -375,11 +363,10 @@
375
363
  <span class="cline-any cline-neutral">&nbsp;</span>
376
364
  <span class="cline-any cline-neutral">&nbsp;</span>
377
365
  <span class="cline-any cline-neutral">&nbsp;</span>
366
+ <span class="cline-any cline-yes">56x</span>
367
+ <span class="cline-any cline-yes">56x</span>
378
368
  <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-yes">57x</span>
380
- <span class="cline-any cline-yes">57x</span>
381
- <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-yes">57x</span>
369
+ <span class="cline-any cline-yes">56x</span>
383
370
  <span class="cline-any cline-neutral">&nbsp;</span>
384
371
  <span class="cline-any cline-no">&nbsp;</span>
385
372
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -387,43 +374,41 @@
387
374
  <span class="cline-any cline-neutral">&nbsp;</span>
388
375
  <span class="cline-any cline-neutral">&nbsp;</span>
389
376
  <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-yes">132x</span>
391
- <span class="cline-any cline-yes">2x</span>
392
- <span class="cline-any cline-yes">12x</span>
393
- <span class="cline-any cline-yes">11x</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-no">&nbsp;</span>
378
+ <span class="cline-any cline-no">&nbsp;</span>
379
+ <span class="cline-any cline-no">&nbsp;</span>
380
+ <span class="cline-any cline-no">&nbsp;</span>
395
381
  <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-yes">1x</span>
397
- <span class="cline-any cline-yes">1x</span>
398
382
  <span class="cline-any cline-neutral">&nbsp;</span>
399
383
  <span class="cline-any cline-no">&nbsp;</span>
384
+ <span class="cline-any cline-no">&nbsp;</span>
400
385
  <span class="cline-any cline-neutral">&nbsp;</span>
386
+ <span class="cline-any cline-no">&nbsp;</span>
401
387
  <span class="cline-any cline-neutral">&nbsp;</span>
402
388
  <span class="cline-any cline-neutral">&nbsp;</span>
403
389
  <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-yes">132x</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
390
  <span class="cline-any cline-neutral">&nbsp;</span>
391
+ <span class="cline-any cline-no">&nbsp;</span>
407
392
  <span class="cline-any cline-neutral">&nbsp;</span>
408
393
  <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-yes">1x</span>
410
- <span class="cline-any cline-yes">1x</span>
411
- <span class="cline-any cline-yes">1x</span>
412
- <span class="cline-any cline-yes">1x</span>
413
394
  <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-yes">1x</span>
415
- <span class="cline-any cline-yes">1x</span>
416
395
  <span class="cline-any cline-neutral">&nbsp;</span>
396
+ <span class="cline-any cline-no">&nbsp;</span>
397
+ <span class="cline-any cline-no">&nbsp;</span>
398
+ <span class="cline-any cline-no">&nbsp;</span>
399
+ <span class="cline-any cline-no">&nbsp;</span>
417
400
  <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-no">&nbsp;</span>
402
+ <span class="cline-any cline-no">&nbsp;</span>
418
403
  <span class="cline-any cline-neutral">&nbsp;</span>
419
404
  <span class="cline-any cline-neutral">&nbsp;</span>
420
405
  <span class="cline-any cline-neutral">&nbsp;</span>
421
406
  <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-yes">105x</span>
423
- <span class="cline-any cline-yes">105x</span>
424
- <span class="cline-any cline-yes">105x</span>
425
- <span class="cline-any cline-yes">105x</span>
426
407
  <span class="cline-any cline-neutral">&nbsp;</span>
408
+ <span class="cline-any cline-no">&nbsp;</span>
409
+ <span class="cline-any cline-no">&nbsp;</span>
410
+ <span class="cline-any cline-no">&nbsp;</span>
411
+ <span class="cline-any cline-no">&nbsp;</span>
427
412
  <span class="cline-any cline-neutral">&nbsp;</span>
428
413
  <span class="cline-any cline-neutral">&nbsp;</span>
429
414
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -436,90 +421,83 @@
436
421
  <span class="cline-any cline-no">&nbsp;</span>
437
422
  <span class="cline-any cline-neutral">&nbsp;</span>
438
423
  <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-yes">7x</span>
440
- <span class="cline-any cline-yes">7x</span>
441
- <span class="cline-any cline-yes">7x</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</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-yes">4x</span>
447
- <span class="cline-any cline-yes">4x</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-neutral">&nbsp;</span>
424
+ <span class="cline-any cline-no">&nbsp;</span>
425
+ <span class="cline-any cline-no">&nbsp;</span>
426
+ <span class="cline-any cline-no">&nbsp;</span>
451
427
  <span class="cline-any cline-neutral">&nbsp;</span>
452
428
  <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-yes">4x</span>
429
+ <span class="cline-any cline-no">&nbsp;</span>
430
+ <span class="cline-any cline-no">&nbsp;</span>
431
+ <span class="cline-any cline-no">&nbsp;</span>
432
+ <span class="cline-any cline-no">&nbsp;</span>
454
433
  <span class="cline-any cline-neutral">&nbsp;</span>
455
434
  <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-yes">1x</span>
457
- <span class="cline-any cline-yes">1x</span>
458
- <span class="cline-any cline-yes">1x</span>
459
- <span class="cline-any cline-yes">1x</span>
435
+ <span class="cline-any cline-no">&nbsp;</span>
460
436
  <span class="cline-any cline-neutral">&nbsp;</span>
461
437
  <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-no">&nbsp;</span>
439
+ <span class="cline-any cline-no">&nbsp;</span>
440
+ <span class="cline-any cline-no">&nbsp;</span>
441
+ <span class="cline-any cline-no">&nbsp;</span>
462
442
  <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">1x</span>
464
443
  <span class="cline-any cline-neutral">&nbsp;</span>
444
+ <span class="cline-any cline-no">&nbsp;</span>
465
445
  <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-yes">1x</span>
467
- <span class="cline-any cline-yes">1x</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">3x</span>
472
446
  <span class="cline-any cline-neutral">&nbsp;</span>
447
+ <span class="cline-any cline-no">&nbsp;</span>
448
+ <span class="cline-any cline-no">&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>
473
453
  <span class="cline-any cline-neutral">&nbsp;</span>
474
454
  <span class="cline-any cline-neutral">&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
- <span class="cline-any cline-yes">1x</span>
479
- <span class="cline-any cline-yes">3x</span>
458
+ <span class="cline-any cline-no">&nbsp;</span>
459
+ <span class="cline-any cline-no">&nbsp;</span>
480
460
  <span class="cline-any cline-neutral">&nbsp;</span>
481
461
  <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-yes">9x</span>
483
- <span class="cline-any cline-yes">9x</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>
462
+ <span class="cline-any cline-no">&nbsp;</span>
463
+ <span class="cline-any cline-no">&nbsp;</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>
487
467
  <span class="cline-any cline-no">&nbsp;</span>
488
468
  <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-yes">9x</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-yes">9x</span>
492
469
  <span class="cline-any cline-no">&nbsp;</span>
493
470
  <span class="cline-any cline-neutral">&nbsp;</span>
471
+ <span class="cline-any cline-no">&nbsp;</span>
472
+ <span class="cline-any cline-no">&nbsp;</span>
494
473
  <span class="cline-any cline-neutral">&nbsp;</span>
495
474
  <span class="cline-any cline-neutral">&nbsp;</span>
496
475
  <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-yes">9x</span>
498
- <span class="cline-any cline-yes">1x</span>
499
476
  <span class="cline-any cline-neutral">&nbsp;</span>
477
+ <span class="cline-any cline-no">&nbsp;</span>
478
+ <span class="cline-any cline-no">&nbsp;</span>
500
479
  <span class="cline-any cline-neutral">&nbsp;</span>
501
480
  <span class="cline-any cline-neutral">&nbsp;</span>
502
481
  <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-yes">9x</span>
504
482
  <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-yes">4x</span>
483
+ <span class="cline-any cline-no">&nbsp;</span>
506
484
  <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-no">&nbsp;</span>
507
486
  <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-yes">4x</span>
509
487
  <span class="cline-any cline-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-no">&nbsp;</span>
510
489
  <span class="cline-any cline-neutral">&nbsp;</span>
511
490
  <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-yes">9x</span>
513
- <span class="cline-any cline-yes">9x</span>
514
491
  <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-no">&nbsp;</span>
493
+ <span class="cline-any cline-no">&nbsp;</span>
515
494
  <span class="cline-any cline-neutral">&nbsp;</span>
516
495
  <span class="cline-any cline-neutral">&nbsp;</span>
517
496
  <span class="cline-any cline-neutral">&nbsp;</span>
518
497
  <span class="cline-any cline-neutral">&nbsp;</span>
519
- <span class="cline-any cline-yes">9x</span>
520
- <span class="cline-any cline-yes">9x</span>
521
498
  <span class="cline-any cline-no">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-no">&nbsp;</span>
500
+ <span class="cline-any cline-no">&nbsp;</span>
523
501
  <span class="cline-any cline-neutral">&nbsp;</span>
524
502
  <span class="cline-any cline-neutral">&nbsp;</span>
525
503
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -530,7 +508,7 @@
530
508
  <span class="cline-any cline-no">&nbsp;</span>
531
509
  <span class="cline-any cline-neutral">&nbsp;</span>
532
510
  <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-yes">9x</span>
511
+ <span class="cline-any cline-no">&nbsp;</span>
534
512
  <span class="cline-any cline-neutral">&nbsp;</span>
535
513
  <span class="cline-any cline-no">&nbsp;</span>
536
514
  <span class="cline-any cline-no">&nbsp;</span>
@@ -599,44 +577,42 @@
599
577
  <span class="cline-any cline-no">&nbsp;</span>
600
578
  <span class="cline-any cline-neutral">&nbsp;</span>
601
579
  <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-yes">1x</span>
603
- <span class="cline-any cline-yes">1x</span>
604
- <span class="cline-any cline-yes">1x</span>
605
- <span class="cline-any cline-yes">1x</span>
606
- <span class="cline-any cline-yes">1x</span>
607
- <span class="cline-any cline-yes">1x</span>
608
580
  <span class="cline-any cline-no">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-yes">1x</span>
581
+ <span class="cline-any cline-no">&nbsp;</span>
582
+ <span class="cline-any cline-no">&nbsp;</span>
583
+ <span class="cline-any cline-no">&nbsp;</span>
584
+ <span class="cline-any cline-no">&nbsp;</span>
585
+ <span class="cline-any cline-no">&nbsp;</span>
611
586
  <span class="cline-any cline-no">&nbsp;</span>
612
587
  <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-yes">1x</span>
614
- <span class="cline-any cline-yes">1x</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
588
+ <span class="cline-any cline-no">&nbsp;</span>
589
+ <span class="cline-any cline-no">&nbsp;</span>
616
590
  <span class="cline-any cline-neutral">&nbsp;</span>
591
+ <span class="cline-any cline-no">&nbsp;</span>
592
+ <span class="cline-any cline-no">&nbsp;</span>
617
593
  <span class="cline-any cline-neutral">&nbsp;</span>
618
594
  <span class="cline-any cline-neutral">&nbsp;</span>
619
- <span class="cline-any cline-yes">1x</span>
620
- <span class="cline-any cline-yes">1x</span>
621
595
  <span class="cline-any cline-neutral">&nbsp;</span>
596
+ <span class="cline-any cline-no">&nbsp;</span>
597
+ <span class="cline-any cline-no">&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">6x</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
603
  <span class="cline-any cline-neutral">&nbsp;</span>
628
604
  <span class="cline-any cline-neutral">&nbsp;</span>
629
- <span class="cline-any cline-yes">5x</span>
630
605
  <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-yes">1x</span>
632
- <span class="cline-any cline-yes">1x</span>
633
- <span class="cline-any cline-yes">1x</span>
634
- <span class="cline-any cline-yes">1x</span>
606
+ <span class="cline-any cline-no">&nbsp;</span>
635
607
  <span class="cline-any cline-neutral">&nbsp;</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>
608
+ <span class="cline-any cline-no">&nbsp;</span>
609
+ <span class="cline-any cline-no">&nbsp;</span>
610
+ <span class="cline-any cline-no">&nbsp;</span>
611
+ <span class="cline-any cline-no">&nbsp;</span>
639
612
  <span class="cline-any cline-neutral">&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>
640
616
  <span class="cline-any cline-neutral">&nbsp;</span>
641
617
  <span class="cline-any cline-neutral">&nbsp;</span>
642
618
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -645,7 +621,7 @@
645
621
  <span class="cline-any cline-neutral">&nbsp;</span>
646
622
  <span class="cline-any cline-neutral">&nbsp;</span>
647
623
  <span class="cline-any cline-neutral">&nbsp;</span>
648
- <span class="cline-any cline-yes">1x</span>
624
+ <span class="cline-any cline-no">&nbsp;</span>
649
625
  <span class="cline-any cline-neutral">&nbsp;</span>
650
626
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import {
651
627
  SortDirection,
@@ -667,56 +643,53 @@ import {
667
643
  PaginationJson,
668
644
  Table,
669
645
  Datasource,
670
- IncludeRelationship,
671
646
  } from "@budibase/types"
672
647
  import sdk from "../../../sdk"
673
648
  &nbsp;
674
649
  const { cleanExportRows } = require("./utils")
675
650
  &nbsp;
676
- export async function <span class="cstat-no" title="statement not covered" >handleRequest<span class="fstat-no" title="function not covered" >(</span></span>
651
+ 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>
677
652
  operation: Operation,
678
653
  tableId: string,
679
654
  opts?: RunConfig
680
655
  ) {
681
656
  // make sure the filters are cleaned up, no empty strings for equals, fuzzy or string
682
- if (opts &amp;&amp; opts.filters) {
683
- for (let filterField of NoEmptyFilterStrings) {
684
- if (!opts.filters[filterField]) {
685
- continue
657
+ <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>
658
+ <span class="cstat-no" title="statement not covered" > for (let filterField of NoEmptyFilterStrings) {</span>
659
+ <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>
660
+ <span class="cstat-no" title="statement not covered" > continue</span>
686
661
  }
687
662
  // @ts-ignore
688
- for (let [key, value] of Object.entries(opts.filters[filterField])) {
689
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!value || value === "") {
663
+ <span class="cstat-no" title="statement not covered" > for (let [key, value] of Object.entries(opts.filters[filterField])) {</span>
664
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!value || value === "") {</span>
690
665
  // @ts-ignore
691
666
  <span class="cstat-no" title="statement not covered" > delete opts.filters[filterField][key]</span>
692
667
  }
693
668
  }
694
669
  }
695
670
  }
696
- return new ExternalRequest(operation, tableId, opts?.datasource).run(
697
- opts || <span class="branch-1 cbranch-no" title="branch not covered" >{}</span>
671
+ <span class="cstat-no" title="statement not covered" > return new ExternalRequest(operation, tableId, opts?.datasource).run(</span>
672
+ opts || {}
698
673
  )
699
674
  }
700
675
  &nbsp;
701
- export async function patch(ctx: BBContext) {
702
- const inputs = ctx.request.body
703
- const tableId = ctx.params.tableId
704
- const id = inputs._id
676
+ 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) {
677
+ const inputs = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
678
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
679
+ const id = <span class="cstat-no" title="statement not covered" >inputs._id</span>
705
680
  // don't save the ID to db
706
- delete inputs._id
707
- return handleRequest(Operation.UPDATE, tableId, {
681
+ <span class="cstat-no" title="statement not covered" > delete inputs._id</span>
682
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.UPDATE, tableId, {</span>
708
683
  id: breakRowIdField(id),
709
684
  row: inputs,
710
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
711
685
  })
712
686
  }
713
687
  &nbsp;
714
- export async function save(ctx: BBContext) {
715
- const inputs = ctx.request.body
716
- const tableId = ctx.params.tableId
717
- return handleRequest(Operation.CREATE, tableId, {
688
+ 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) {
689
+ const inputs = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
690
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
691
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.CREATE, tableId, {</span>
718
692
  row: inputs,
719
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
720
693
  })
721
694
  }
722
695
  &nbsp;
@@ -728,88 +701,82 @@ export async function <span class="cstat-no" title="statement not covered" ><spa
728
701
  <span class="cstat-no" title="statement not covered" > return fetch(ctx)</span>
729
702
  }
730
703
  &nbsp;
731
- export async function fetch(ctx: BBContext) {
732
- const tableId = ctx.params.tableId
733
- return handleRequest(Operation.READ, tableId, {
734
- includeSqlRelationships: IncludeRelationship.INCLUDE,
735
- })
704
+ 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) {
705
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
706
+ <span class="cstat-no" title="statement not covered" > return handleRequest(Operation.READ, tableId)</span>
736
707
  }
737
708
  &nbsp;
738
- export async function find(ctx: BBContext) {
739
- const id = ctx.params.rowId
740
- const tableId = ctx.params.tableId
741
- const response = (await handleRequest(Operation.READ, tableId, {
709
+ 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) {
710
+ const id = <span class="cstat-no" title="statement not covered" >ctx.params.rowId</span>
711
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
712
+ const response = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
742
713
  id: breakRowIdField(id),
743
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
744
714
  })) as Row[]
745
- return response ? response[0] : <span class="branch-1 cbranch-no" title="branch not covered" >response</span>
715
+ <span class="cstat-no" title="statement not covered" > return response ? response[0] : response</span>
746
716
  }
747
717
  &nbsp;
748
- export async function destroy(ctx: BBContext) {
749
- const tableId = ctx.params.tableId
750
- const id = ctx.request.body._id
751
- const { row } = (await handleRequest(Operation.DELETE, tableId, {
718
+ 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) {
719
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
720
+ const id = <span class="cstat-no" title="statement not covered" >ctx.request.body._id</span>
721
+ const { row } = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.DELETE, tableId, {</span>
752
722
  id: breakRowIdField(id),
753
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
754
723
  })) as { row: Row }
755
- return { response: { ok: true }, row }
724
+ <span class="cstat-no" title="statement not covered" > return { response: { ok: true }, row }</span>
756
725
  }
757
726
  &nbsp;
758
- export async function bulkDestroy(ctx: BBContext) {
759
- const { rows } = ctx.request.body
760
- const tableId = ctx.params.tableId
761
- let promises: Promise&lt;Row[] | { row: Row; table: Table }&gt;[] = []
762
- for (let row of rows) {
763
- promises.push(
727
+ 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) {
728
+ const { rows } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
729
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
730
+ let promises: Promise&lt;Row[] | { row: Row; table: Table }&gt;[] = <span class="cstat-no" title="statement not covered" >[]</span>
731
+ <span class="cstat-no" title="statement not covered" > for (let row of rows) {</span>
732
+ <span class="cstat-no" title="statement not covered" > promises.push(</span>
764
733
  handleRequest(Operation.DELETE, tableId, {
765
734
  id: breakRowIdField(row._id),
766
- includeSqlRelationships: IncludeRelationship.EXCLUDE,
767
735
  })
768
736
  )
769
737
  }
770
- const responses = (await Promise.all(promises)) as { row: Row }[]
771
- return { response: { ok: true }, rows: responses.map(resp =&gt; resp.row) }
738
+ const responses = (<span class="cstat-no" title="statement not covered" >await Promise.all(promises)) as { row: Row }[]</span>
739
+ <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>
772
740
  }
773
741
  &nbsp;
774
- export async function search(ctx: BBContext) {
775
- const tableId = ctx.params.tableId
776
- const { paginate, query, ...params } = ctx.request.body
777
- let { bookmark, limit } = params
778
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!bookmark &amp;&amp; paginate) {
742
+ 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) {
743
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
744
+ const { paginate, query, ...params } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
745
+ let { bookmark, limit } = <span class="cstat-no" title="statement not covered" >params</span>
746
+ <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>
779
747
  <span class="cstat-no" title="statement not covered" > bookmark = 1</span>
780
748
  }
781
- let paginateObj = {}
749
+ let paginateObj = <span class="cstat-no" title="statement not covered" >{}</span>
782
750
  &nbsp;
783
- <span class="missing-if-branch" title="if path not taken" >I</span>if (paginate) {
751
+ <span class="cstat-no" title="statement not covered" > if (paginate) {</span>
784
752
  <span class="cstat-no" title="statement not covered" > paginateObj = {</span>
785
753
  // add one so we can track if there is another page
786
754
  limit: limit,
787
755
  page: bookmark,
788
756
  }
789
- } else if (params &amp;&amp; limit) {
790
- paginateObj = {
757
+ } 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>
758
+ <span class="cstat-no" title="statement not covered" > paginateObj = {</span>
791
759
  limit: limit,
792
760
  }
793
761
  }
794
762
  let sort
795
- if (params.sort) {
763
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (params.sort) {</span>
796
764
  const direction =
797
- params.sortOrder === "descending"
765
+ <span class="cstat-no" title="statement not covered" > params.sortOrder === "descending"</span>
798
766
  ? SortDirection.DESCENDING
799
767
  : SortDirection.ASCENDING
800
- sort = {
768
+ <span class="cstat-no" title="statement not covered" > sort = {</span>
801
769
  [params.sort]: direction,
802
770
  }
803
771
  }
804
- try {
805
- const rows = (await handleRequest(Operation.READ, tableId, {
772
+ <span class="cstat-no" title="statement not covered" > try {</span>
773
+ const rows = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
806
774
  filters: query,
807
775
  sort,
808
776
  paginate: paginateObj as PaginationJson,
809
- includeSqlRelationships: IncludeRelationship.INCLUDE,
810
777
  })) as Row[]
811
- let hasNextPage = false
812
- <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>
778
+ let hasNextPage = <span class="cstat-no" title="statement not covered" >false</span>
779
+ <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>
813
780
  const nextRows = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
814
781
  filters: query,
815
782
  sort,
@@ -817,12 +784,11 @@ export async function search(ctx: BBContext) {
817
784
  limit: 1,
818
785
  page: bookmark * limit + 1,
819
786
  },
820
- includeSqlRelationships: IncludeRelationship.INCLUDE,
821
787
  })) as Row[]
822
788
  <span class="cstat-no" title="statement not covered" > hasNextPage = nextRows.length &gt; 0</span>
823
789
  }
824
790
  // need wrapper object for bookmarks etc when paginating
825
- return { rows, hasNextPage, bookmark: bookmark + 1 }
791
+ <span class="cstat-no" title="statement not covered" > return { rows, hasNextPage, bookmark: bookmark + 1 }</span>
826
792
  } catch (err: any) {
827
793
  <span class="cstat-no" title="statement not covered" > if (err.message &amp;&amp; err.message.includes("does not exist")) {</span>
828
794
  <span class="cstat-no" title="statement not covered" > throw new Error(</span>
@@ -891,53 +857,51 @@ export async function <span class="cstat-no" title="statement not covered" ><spa
891
857
  <span class="cstat-no" title="statement not covered" > return apiFileReturn(exporter(headers, exportRows))</span>
892
858
  }
893
859
  &nbsp;
894
- export async function fetchEnrichedRow(ctx: BBContext) {
895
- const id = ctx.params.rowId
896
- const tableId = ctx.params.tableId
897
- const { datasourceId, tableName } = breakExternalTableId(tableId)
898
- const datasource: Datasource = await sdk.datasources.get(datasourceId!)
899
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!tableName) {
860
+ 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) {
861
+ const id = <span class="cstat-no" title="statement not covered" >ctx.params.rowId</span>
862
+ const tableId = <span class="cstat-no" title="statement not covered" >ctx.params.tableId</span>
863
+ const { datasourceId, tableName } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(tableId)</span>
864
+ const datasource: Datasource = <span class="cstat-no" title="statement not covered" >await sdk.datasources.get(datasourceId!)</span>
865
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!tableName) {</span>
900
866
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Unable to find table.")</span>
901
867
  }
902
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!datasource || !datasource.entities) {
868
+ <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>
903
869
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Datasource has not been configured for plus API.")</span>
904
870
  }
905
- const tables = datasource.entities
906
- const response = (await handleRequest(Operation.READ, tableId, {
871
+ const tables = <span class="cstat-no" title="statement not covered" >datasource.entities</span>
872
+ const response = (<span class="cstat-no" title="statement not covered" >await handleRequest(Operation.READ, tableId, {</span>
907
873
  id,
908
874
  datasource,
909
- includeSqlRelationships: IncludeRelationship.INCLUDE,
910
875
  })) as Row[]
911
- const table: Table = tables[tableName]
912
- const row = response[0]
876
+ const table: Table = <span class="cstat-no" title="statement not covered" >tables[tableName]</span>
877
+ const row = <span class="cstat-no" title="statement not covered" >response[0]</span>
913
878
  // this seems like a lot of work, but basically we need to dig deeper for the enrich
914
879
  // for a single row, there is probably a better way to do this with some smart multi-layer joins
915
- for (let [fieldName, field] of Object.entries(table.schema)) {
916
- if (
880
+ <span class="cstat-no" title="statement not covered" > for (let [fieldName, field] of Object.entries(table.schema)) {</span>
881
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
917
882
  field.type !== FieldTypes.LINK ||
918
883
  !row[fieldName] ||
919
884
  row[fieldName].length === 0
920
885
  ) {
921
- continue
886
+ <span class="cstat-no" title="statement not covered" > continue</span>
922
887
  }
923
- const links = row[fieldName]
924
- const linkedTableId = field.tableId
925
- const linkedTableName = breakExternalTableId(linkedTableId).tableName!
926
- const linkedTable = tables[linkedTableName]
888
+ const links = <span class="cstat-no" title="statement not covered" >row[fieldName]</span>
889
+ const linkedTableId = <span class="cstat-no" title="statement not covered" >field.tableId</span>
890
+ const linkedTableName = <span class="cstat-no" title="statement not covered" >breakExternalTableId(linkedTableId).tableName!</span>
891
+ const linkedTable = <span class="cstat-no" title="statement not covered" >tables[linkedTableName]</span>
927
892
  // don't support composite keys right now
928
- const linkedIds = links.map((link: Row) =&gt; breakRowIdField(link._id!)[0])
929
- const primaryLink = linkedTable.primary?.[0] as string
930
- row[fieldName] = await handleRequest(Operation.READ, linkedTableId!, {
893
+ 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>
894
+ const primaryLink = <span class="cstat-no" title="statement not covered" >linkedTable.primary?.[0] </span>as string
895
+ <span class="cstat-no" title="statement not covered" > row[fieldName] = await handleRequest(Operation.READ, linkedTableId!, {</span>
931
896
  tables,
932
897
  filters: {
933
898
  oneOf: {
934
899
  [primaryLink]: linkedIds,
935
900
  },
936
901
  },
937
- includeSqlRelationships: IncludeRelationship.INCLUDE,
938
902
  })
939
903
  }
940
- return row
904
+ <span class="cstat-no" title="statement not covered" > return row</span>
941
905
  }
942
906
  &nbsp;</pre></td></tr></table></pre>
943
907
 
@@ -946,7 +910,7 @@ export async function fetchEnrichedRow(ctx: BBContext) {
946
910
  <div class='footer quiet pad2 space-top1 center small'>
947
911
  Code coverage generated by
948
912
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
949
- at Tue Feb 07 2023 16:00:57 GMT+0000 (Coordinated Universal Time)
913
+ at Tue Feb 07 2023 16:10:30 GMT+0000 (Coordinated Universal Time)
950
914
  </div>
951
915
  <script src="../../../../prettify.js"></script>
952
916
  <script>