@budibase/server 1.0.121 → 1.0.123-alpha.1

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 (324) hide show
  1. package/builder/assets/index.3a7314b2.js +1299 -0
  2. package/builder/assets/index.89795487.css +6 -0
  3. package/builder/assets/{vendor.8e34a169.js → vendor.5240f480.js} +1 -1
  4. package/builder/index.html +3 -3
  5. package/coverage/clover.xml +654 -1626
  6. package/coverage/coverage-final.json +28 -43
  7. package/coverage/lcov-report/api/controllers/analytics.js.html +8 -3
  8. package/coverage/lcov-report/api/controllers/apikeys.js.html +9 -4
  9. package/coverage/lcov-report/api/controllers/auth.js.html +8 -3
  10. package/coverage/lcov-report/api/controllers/automation.js.html +8 -3
  11. package/coverage/lcov-report/api/controllers/backup.js.html +8 -3
  12. package/coverage/lcov-report/api/controllers/cloud.js.html +8 -3
  13. package/coverage/lcov-report/api/controllers/component.js.html +8 -3
  14. package/coverage/lcov-report/api/controllers/datasource.js.html +11 -6
  15. package/coverage/lcov-report/api/controllers/dev.js.html +8 -3
  16. package/coverage/lcov-report/api/controllers/index.html +16 -26
  17. package/coverage/lcov-report/api/controllers/integration.js.html +8 -3
  18. package/coverage/lcov-report/api/controllers/layout.js.html +8 -3
  19. package/coverage/lcov-report/api/controllers/metadata.js.html +8 -3
  20. package/coverage/lcov-report/api/controllers/migrations.js.html +8 -3
  21. package/coverage/lcov-report/api/controllers/permission.js.html +8 -3
  22. package/coverage/lcov-report/api/controllers/query/index.html +16 -26
  23. package/coverage/lcov-report/api/controllers/query/validation.js.html +8 -3
  24. package/coverage/lcov-report/api/controllers/role.js.html +10 -5
  25. package/coverage/lcov-report/api/controllers/routing.js.html +9 -4
  26. package/coverage/lcov-report/api/controllers/row/external.js.html +8 -3
  27. package/coverage/lcov-report/api/controllers/row/index.html +25 -35
  28. package/coverage/lcov-report/api/controllers/row/internal.js.html +32 -24
  29. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +21 -16
  30. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -19
  31. package/coverage/lcov-report/api/controllers/row/utils.js.html +33 -19
  32. package/coverage/lcov-report/api/controllers/screen.js.html +9 -4
  33. package/coverage/lcov-report/api/controllers/script.js.html +8 -3
  34. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +55 -50
  35. package/coverage/lcov-report/api/controllers/table/external.js.html +8 -3
  36. package/coverage/lcov-report/api/controllers/table/index.html +19 -44
  37. package/coverage/lcov-report/api/controllers/table/index.js.html +20 -15
  38. package/coverage/lcov-report/api/controllers/templates.js.html +8 -3
  39. package/coverage/lcov-report/api/controllers/user.js.html +8 -3
  40. package/coverage/lcov-report/api/controllers/view/exporters.js.html +8 -3
  41. package/coverage/lcov-report/api/controllers/view/index.html +8 -3
  42. package/coverage/lcov-report/api/controllers/view/index.js.html +10 -5
  43. package/coverage/lcov-report/api/controllers/view/utils.js.html +8 -3
  44. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +8 -3
  45. package/coverage/lcov-report/api/controllers/webhook.js.html +10 -5
  46. package/coverage/lcov-report/api/index.html +18 -13
  47. package/coverage/lcov-report/api/index.js.html +28 -8
  48. package/coverage/lcov-report/api/routes/analytics.js.html +8 -3
  49. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -3
  50. package/coverage/lcov-report/api/routes/auth.js.html +8 -3
  51. package/coverage/lcov-report/api/routes/automation.js.html +8 -3
  52. package/coverage/lcov-report/api/routes/backup.js.html +8 -3
  53. package/coverage/lcov-report/api/routes/cloud.js.html +8 -3
  54. package/coverage/lcov-report/api/routes/component.js.html +8 -3
  55. package/coverage/lcov-report/api/routes/datasource.js.html +8 -3
  56. package/coverage/lcov-report/api/routes/deploy.js.html +8 -3
  57. package/coverage/lcov-report/api/routes/dev.js.html +9 -4
  58. package/coverage/lcov-report/api/routes/index.html +13 -68
  59. package/coverage/lcov-report/api/routes/integration.js.html +8 -3
  60. package/coverage/lcov-report/api/routes/layout.js.html +8 -3
  61. package/coverage/lcov-report/api/routes/metadata.js.html +8 -3
  62. package/coverage/lcov-report/api/routes/migrations.js.html +8 -3
  63. package/coverage/lcov-report/api/routes/permission.js.html +8 -3
  64. package/coverage/lcov-report/api/routes/query.js.html +8 -3
  65. package/coverage/lcov-report/api/routes/role.js.html +8 -3
  66. package/coverage/lcov-report/api/routes/routing.js.html +8 -3
  67. package/coverage/lcov-report/api/routes/screen.js.html +8 -3
  68. package/coverage/lcov-report/api/routes/script.js.html +8 -3
  69. package/coverage/lcov-report/api/routes/table.js.html +8 -3
  70. package/coverage/lcov-report/api/routes/templates.js.html +8 -3
  71. package/coverage/lcov-report/api/routes/user.js.html +8 -3
  72. package/coverage/lcov-report/api/routes/utils/index.html +8 -3
  73. package/coverage/lcov-report/api/routes/utils/validators.js.html +8 -3
  74. package/coverage/lcov-report/api/routes/view.js.html +8 -3
  75. package/coverage/lcov-report/api/routes/webhook.js.html +8 -3
  76. package/coverage/lcov-report/automations/actions.js.html +21 -7
  77. package/coverage/lcov-report/automations/automationUtils.js.html +64 -23
  78. package/coverage/lcov-report/automations/bullboard.js.html +8 -3
  79. package/coverage/lcov-report/automations/index.html +27 -37
  80. package/coverage/lcov-report/automations/index.js.html +8 -3
  81. package/coverage/lcov-report/automations/steps/bash.js.html +8 -3
  82. package/coverage/lcov-report/automations/steps/delay.js.html +8 -3
  83. package/coverage/lcov-report/automations/steps/discord.js.html +8 -3
  84. package/coverage/lcov-report/automations/steps/executeQuery.js.html +8 -3
  85. package/coverage/lcov-report/automations/steps/executeScript.js.html +8 -3
  86. package/coverage/lcov-report/automations/steps/filter.js.html +8 -3
  87. package/coverage/lcov-report/automations/steps/index.html +31 -41
  88. package/coverage/lcov-report/automations/steps/integromat.js.html +8 -3
  89. package/coverage/lcov-report/{api/routes/static.js.html → automations/steps/loop.js.html} +70 -80
  90. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +9 -4
  91. package/coverage/lcov-report/automations/steps/queryRows.js.html +9 -4
  92. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +8 -3
  93. package/coverage/lcov-report/automations/steps/serverLog.js.html +8 -3
  94. package/coverage/lcov-report/automations/steps/slack.js.html +8 -3
  95. package/coverage/lcov-report/automations/steps/updateRow.js.html +8 -3
  96. package/coverage/lcov-report/automations/steps/utils.js.html +14 -9
  97. package/coverage/lcov-report/automations/steps/zapier.js.html +8 -3
  98. package/coverage/lcov-report/automations/triggerInfo/app.js.html +8 -3
  99. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +8 -3
  100. package/coverage/lcov-report/automations/triggerInfo/index.html +8 -3
  101. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -3
  102. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +8 -3
  103. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +8 -3
  104. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +8 -3
  105. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +8 -3
  106. package/coverage/lcov-report/automations/triggers.js.html +16 -11
  107. package/coverage/lcov-report/block-navigation.js +8 -0
  108. package/coverage/lcov-report/constants/index.html +12 -7
  109. package/coverage/lcov-report/constants/index.js.html +54 -31
  110. package/coverage/lcov-report/constants/layouts.js.html +8 -3
  111. package/coverage/lcov-report/constants/screens.js.html +8 -3
  112. package/coverage/lcov-report/db/inMemoryView.js.html +8 -3
  113. package/coverage/lcov-report/db/index.html +8 -3
  114. package/coverage/lcov-report/db/index.js.html +9 -4
  115. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +20 -15
  116. package/coverage/lcov-report/db/linkedRows/index.html +8 -3
  117. package/coverage/lcov-report/db/linkedRows/index.js.html +22 -17
  118. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +12 -7
  119. package/coverage/lcov-report/db/newid.js.html +11 -6
  120. package/coverage/lcov-report/db/utils.js.html +84 -79
  121. package/coverage/lcov-report/events/AutomationEmitter.js.html +14 -9
  122. package/coverage/lcov-report/events/index.html +8 -3
  123. package/coverage/lcov-report/events/index.js.html +9 -4
  124. package/coverage/lcov-report/events/utils.js.html +18 -13
  125. package/coverage/lcov-report/index.html +125 -120
  126. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +8 -3
  127. package/coverage/lcov-report/integrations/tests/index.html +8 -3
  128. package/coverage/lcov-report/middleware/appInfo.js.html +8 -3
  129. package/coverage/lcov-report/middleware/builder.js.html +8 -3
  130. package/coverage/lcov-report/middleware/currentapp.js.html +65 -15
  131. package/coverage/lcov-report/middleware/index.html +25 -50
  132. package/coverage/lcov-report/middleware/joi-validator.js.html +9 -4
  133. package/coverage/lcov-report/middleware/publicApi.js.html +8 -3
  134. package/coverage/lcov-report/middleware/resourceId.js.html +8 -3
  135. package/coverage/lcov-report/middleware/selfhost.js.html +9 -4
  136. package/coverage/lcov-report/middleware/utils.js.html +8 -3
  137. package/coverage/lcov-report/sorter.js +26 -0
  138. package/coverage/lcov-report/threads/automation.js.html +581 -90
  139. package/coverage/lcov-report/threads/index.html +30 -40
  140. package/coverage/lcov-report/threads/query.js.html +9 -4
  141. package/coverage/lcov-report/threads/utils.js.html +17 -9
  142. package/coverage/lcov-report/utilities/bcrypt.js.html +8 -3
  143. package/coverage/lcov-report/utilities/budibaseDir.js.html +8 -3
  144. package/coverage/lcov-report/utilities/centralPath.js.html +8 -3
  145. package/coverage/lcov-report/utilities/csvParser.js.html +10 -5
  146. package/coverage/lcov-report/utilities/global.js.html +9 -4
  147. package/coverage/lcov-report/utilities/index.html +8 -3
  148. package/coverage/lcov-report/utilities/index.js.html +11 -6
  149. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +32 -9
  150. package/coverage/lcov-report/utilities/queue/index.html +12 -7
  151. package/coverage/lcov-report/utilities/routing/index.html +8 -3
  152. package/coverage/lcov-report/utilities/routing/index.js.html +8 -3
  153. package/coverage/lcov-report/utilities/rowProcessor/index.html +8 -3
  154. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +46 -41
  155. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +18 -13
  156. package/coverage/lcov-report/utilities/scriptRunner.js.html +8 -3
  157. package/coverage/lcov-report/utilities/security.js.html +9 -4
  158. package/coverage/lcov-report/utilities/statusCodes.js.html +8 -3
  159. package/coverage/lcov-report/utilities/usageQuota/index.html +24 -34
  160. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +44 -39
  161. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +8 -3
  162. package/coverage/lcov-report/utilities/users.js.html +8 -3
  163. package/coverage/lcov-report/utilities/workerRequests.js.html +9 -4
  164. package/coverage/lcov.info +1137 -2843
  165. package/dist/api/controllers/application.js +145 -73
  166. package/dist/api/controllers/deploy/index.js +68 -36
  167. package/dist/api/controllers/public/applications.js +29 -9
  168. package/dist/api/controllers/public/queries.js +27 -7
  169. package/dist/api/controllers/public/rows.js +32 -12
  170. package/dist/api/controllers/public/tables.js +2 -2
  171. package/dist/api/controllers/public/users.js +8 -8
  172. package/dist/api/controllers/public/utils.js +1 -1
  173. package/dist/api/controllers/query/import/index.js +3 -3
  174. package/dist/api/controllers/query/index.js +57 -44
  175. package/dist/api/controllers/row/ExternalRequest.js +27 -27
  176. package/dist/api/controllers/row/index.js +83 -60
  177. package/dist/api/controllers/row/internal.js +2 -1
  178. package/dist/api/controllers/row/utils.js +2 -1
  179. package/dist/api/controllers/static/templates/BudibaseApp.svelte +3 -0
  180. package/dist/api/controllers/table/bulkFormula.js +2 -1
  181. package/dist/api/controllers/table/internal.js +40 -34
  182. package/dist/api/controllers/table/utils.js +271 -229
  183. package/dist/api/index.js +5 -0
  184. package/dist/api/routes/application.js +39 -13
  185. package/dist/api/routes/index.js +61 -56
  186. package/dist/api/routes/public/index.js +6 -9
  187. package/dist/api/routes/public/queries.js +1 -1
  188. package/dist/api/routes/public/rows.js +1 -1
  189. package/dist/api/routes/public/tables.js +3 -3
  190. package/dist/api/routes/public/users.js +1 -1
  191. package/dist/api/routes/row.js +43 -17
  192. package/dist/api/routes/static.js +40 -13
  193. package/dist/api/routes/tests/utilities/TestFunctions.js +75 -33
  194. package/dist/app.js +8 -4
  195. package/dist/automations/actions.js +3 -0
  196. package/dist/automations/automationUtils.js +10 -0
  197. package/dist/automations/steps/createRow.js +12 -12
  198. package/dist/automations/steps/deleteRow.js +13 -16
  199. package/dist/automations/steps/loop.js +51 -0
  200. package/dist/automations/tests/utilities/index.js +13 -11
  201. package/dist/automations/utils.js +187 -133
  202. package/dist/constants/index.js +5 -0
  203. package/dist/definitions/datasource.js +1 -0
  204. package/dist/environment.js +2 -3
  205. package/dist/index.js +4 -0
  206. package/dist/integrations/base/sql.js +2 -2
  207. package/dist/integrations/base/sqlTable.js +2 -2
  208. package/dist/integrations/googlesheets.js +1 -1
  209. package/dist/integrations/index.js +4 -0
  210. package/dist/integrations/microsoftSqlServer.js +8 -8
  211. package/dist/integrations/mysql.js +9 -9
  212. package/dist/integrations/oracle.js +7 -7
  213. package/dist/integrations/postgres.js +7 -7
  214. package/dist/integrations/queries/sql.js +2 -2
  215. package/dist/integrations/redis.js +158 -0
  216. package/dist/integrations/rest.js +1 -1
  217. package/dist/middleware/authorized.js +51 -51
  218. package/dist/middleware/currentapp.js +15 -1
  219. package/dist/migrations/functions/appUrls.js +1 -1
  220. package/dist/migrations/functions/developerQuota.js +49 -0
  221. package/dist/migrations/functions/publishedAppsQuota.js +47 -0
  222. package/dist/migrations/functions/quotas1.js +6 -2
  223. package/dist/migrations/functions/usageQuotas/index.js +0 -4
  224. package/dist/migrations/functions/usageQuotas/syncApps.js +4 -7
  225. package/dist/migrations/functions/usageQuotas/syncDevelopers.js +24 -0
  226. package/dist/migrations/functions/usageQuotas/syncPublishedApps.js +26 -0
  227. package/dist/migrations/functions/usageQuotas/syncRows.js +5 -8
  228. package/dist/migrations/index.js +17 -1
  229. package/dist/package.json +14 -8
  230. package/dist/threads/automation.js +149 -27
  231. package/dist/threads/index.js +36 -10
  232. package/dist/threads/utils.js +1 -0
  233. package/dist/tsconfig.build.tsbuildinfo +1 -0
  234. package/dist/utilities/queue/inMemoryQueue.js +6 -1
  235. package/nodemon.json +1 -1
  236. package/package.json +15 -9
  237. package/scripts/dev/manage.js +2 -0
  238. package/src/api/controllers/{application.js → application.ts} +118 -51
  239. package/src/api/controllers/deploy/{index.js → index.ts} +53 -29
  240. package/src/api/controllers/public/applications.ts +2 -2
  241. package/src/api/controllers/public/queries.ts +1 -1
  242. package/src/api/controllers/public/rows.ts +1 -1
  243. package/src/api/controllers/query/{index.js → index.ts} +51 -48
  244. package/src/api/controllers/row/ExternalRequest.ts +1 -1
  245. package/src/api/controllers/row/{index.js → index.ts} +24 -17
  246. package/src/api/controllers/row/internal.js +2 -1
  247. package/src/api/controllers/row/utils.js +4 -1
  248. package/src/api/controllers/static/templates/BudibaseApp.svelte +3 -0
  249. package/src/api/controllers/table/bulkFormula.js +1 -1
  250. package/src/api/controllers/table/{internal.js → internal.ts} +27 -24
  251. package/src/api/controllers/table/{utils.js → utils.ts} +86 -69
  252. package/src/api/index.js +5 -0
  253. package/src/api/routes/{application.js → application.ts} +8 -14
  254. package/src/api/routes/index.ts +60 -0
  255. package/src/api/routes/public/index.ts +1 -4
  256. package/src/api/routes/{row.js → row.ts} +7 -15
  257. package/src/api/routes/{static.js → static.ts} +11 -11
  258. package/src/api/routes/tests/misc.spec.js +39 -37
  259. package/src/api/routes/tests/utilities/{TestFunctions.js → TestFunctions.ts} +57 -33
  260. package/src/app.ts +1 -2
  261. package/src/automations/actions.js +3 -0
  262. package/src/automations/automationUtils.js +12 -0
  263. package/src/automations/steps/{createRow.js → createRow.ts} +9 -15
  264. package/src/automations/steps/{deleteRow.js → deleteRow.ts} +10 -16
  265. package/src/automations/steps/loop.js +50 -0
  266. package/src/automations/tests/automation.spec.js +0 -1
  267. package/src/automations/tests/{createRow.spec.js → createRow.spec.ts} +4 -15
  268. package/src/automations/tests/{deleteRow.spec.js → deleteRow.spec.ts} +3 -5
  269. package/src/automations/tests/utilities/index.js +12 -10
  270. package/src/automations/{utils.js → utils.ts} +39 -28
  271. package/src/constants/index.js +6 -0
  272. package/src/definitions/datasource.ts +1 -0
  273. package/src/environment.js +2 -3
  274. package/src/index.ts +3 -0
  275. package/src/integrations/index.ts +4 -0
  276. package/src/integrations/redis.ts +152 -0
  277. package/src/integrations/tests/redis.spec.js +60 -0
  278. package/src/middleware/{authorized.js → authorized.ts} +20 -14
  279. package/src/middleware/currentapp.js +16 -1
  280. package/src/middleware/tests/currentapp.spec.js +8 -4
  281. package/src/migrations/functions/developerQuota.ts +15 -0
  282. package/src/migrations/functions/publishedAppsQuota.ts +13 -0
  283. package/src/migrations/functions/tests/quotas1.spec.js +0 -2
  284. package/src/migrations/functions/usageQuotas/index.ts +0 -5
  285. package/src/migrations/functions/usageQuotas/syncApps.ts +3 -6
  286. package/src/migrations/functions/usageQuotas/syncDevelopers.ts +19 -0
  287. package/src/migrations/functions/usageQuotas/syncPublishedApps.ts +21 -0
  288. package/src/migrations/functions/usageQuotas/syncRows.ts +3 -6
  289. package/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts +34 -0
  290. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +40 -0
  291. package/src/migrations/index.ts +13 -1
  292. package/src/threads/automation.js +196 -34
  293. package/src/threads/{index.js → index.ts} +18 -14
  294. package/src/threads/utils.js +1 -0
  295. package/src/utilities/queue/inMemoryQueue.js +7 -1
  296. package/tsconfig.build.json +10 -0
  297. package/tsconfig.json +2 -2
  298. package/builder/assets/index.68a7f4e3.css +0 -6
  299. package/builder/assets/index.be685d3b.js +0 -1291
  300. package/coverage/lcov-report/api/controllers/application.js.html +0 -1436
  301. package/coverage/lcov-report/api/controllers/query/index.js.html +0 -713
  302. package/coverage/lcov-report/api/controllers/row/index.js.html +0 -524
  303. package/coverage/lcov-report/api/controllers/table/internal.js.html +0 -548
  304. package/coverage/lcov-report/api/controllers/table/utils.js.html +0 -1331
  305. package/coverage/lcov-report/api/routes/application.js.html +0 -179
  306. package/coverage/lcov-report/api/routes/index.js.html +0 -266
  307. package/coverage/lcov-report/api/routes/row.js.html +0 -908
  308. package/coverage/lcov-report/automations/steps/createRow.js.html +0 -380
  309. package/coverage/lcov-report/automations/steps/deleteRow.js.html +0 -347
  310. package/coverage/lcov-report/automations/utils.js.html +0 -665
  311. package/coverage/lcov-report/middleware/authorized.js.html +0 -458
  312. package/coverage/lcov-report/middleware/usageQuota.js.html +0 -572
  313. package/coverage/lcov-report/threads/index.js.html +0 -296
  314. package/coverage/lcov-report/utilities/usageQuota/index.js.html +0 -359
  315. package/dist/middleware/usageQuota.js +0 -154
  316. package/dist/tsconfig.tsbuildinfo +0 -1
  317. package/dist/utilities/usageQuota/index.js +0 -86
  318. package/src/api/routes/index.js +0 -62
  319. package/src/middleware/tests/usageQuota.spec.js +0 -120
  320. package/src/middleware/usageQuota.js +0 -164
  321. package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +0 -41
  322. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +0 -45
  323. package/src/utilities/tests/usageQuota/usageQuota.spec.js +0 -72
  324. package/src/utilities/usageQuota/index.js +0 -93
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>26/26</span>
28
+ <span class='fraction'>27/27</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>26/26</span>
49
+ <span class='fraction'>27/27</span>
50
50
  </div>
51
51
 
52
52
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -251,15 +257,25 @@
251
257
  <a name='L192'></a><a href='#L192'>192</a>
252
258
  <a name='L193'></a><a href='#L193'>193</a>
253
259
  <a name='L194'></a><a href='#L194'>194</a>
254
- <a name='L195'></a><a href='#L195'>195</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">49x</span>
255
- <span class="cline-any cline-yes">49x</span>
256
- <span class="cline-any cline-yes">49x</span>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">48x</span>
267
+ <span class="cline-any cline-yes">48x</span>
268
+ <span class="cline-any cline-yes">48x</span>
269
+ <span class="cline-any cline-neutral">&nbsp;</span>
270
+ <span class="cline-any cline-yes">48x</span>
271
+ <span class="cline-any cline-neutral">&nbsp;</span>
272
+ <span class="cline-any cline-neutral">&nbsp;</span>
273
+ <span class="cline-any cline-neutral">&nbsp;</span>
274
+ <span class="cline-any cline-yes">48x</span>
257
275
  <span class="cline-any cline-neutral">&nbsp;</span>
258
- <span class="cline-any cline-yes">49x</span>
259
276
  <span class="cline-any cline-neutral">&nbsp;</span>
260
277
  <span class="cline-any cline-neutral">&nbsp;</span>
261
278
  <span class="cline-any cline-neutral">&nbsp;</span>
262
- <span class="cline-any cline-yes">49x</span>
263
279
  <span class="cline-any cline-neutral">&nbsp;</span>
264
280
  <span class="cline-any cline-neutral">&nbsp;</span>
265
281
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -268,21 +284,21 @@
268
284
  <span class="cline-any cline-neutral">&nbsp;</span>
269
285
  <span class="cline-any cline-neutral">&nbsp;</span>
270
286
  <span class="cline-any cline-neutral">&nbsp;</span>
287
+ <span class="cline-any cline-yes">48x</span>
288
+ <span class="cline-any cline-yes">48x</span>
271
289
  <span class="cline-any cline-neutral">&nbsp;</span>
272
290
  <span class="cline-any cline-neutral">&nbsp;</span>
273
291
  <span class="cline-any cline-neutral">&nbsp;</span>
274
292
  <span class="cline-any cline-neutral">&nbsp;</span>
275
- <span class="cline-any cline-yes">49x</span>
276
- <span class="cline-any cline-yes">49x</span>
277
293
  <span class="cline-any cline-neutral">&nbsp;</span>
278
294
  <span class="cline-any cline-neutral">&nbsp;</span>
279
295
  <span class="cline-any cline-neutral">&nbsp;</span>
280
296
  <span class="cline-any cline-neutral">&nbsp;</span>
297
+ <span class="cline-any cline-yes">48x</span>
281
298
  <span class="cline-any cline-neutral">&nbsp;</span>
282
299
  <span class="cline-any cline-neutral">&nbsp;</span>
283
300
  <span class="cline-any cline-neutral">&nbsp;</span>
284
301
  <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-yes">49x</span>
286
302
  <span class="cline-any cline-neutral">&nbsp;</span>
287
303
  <span class="cline-any cline-neutral">&nbsp;</span>
288
304
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -294,58 +310,58 @@
294
310
  <span class="cline-any cline-neutral">&nbsp;</span>
295
311
  <span class="cline-any cline-neutral">&nbsp;</span>
296
312
  <span class="cline-any cline-neutral">&nbsp;</span>
313
+ <span class="cline-any cline-yes">48x</span>
297
314
  <span class="cline-any cline-neutral">&nbsp;</span>
298
315
  <span class="cline-any cline-neutral">&nbsp;</span>
299
316
  <span class="cline-any cline-neutral">&nbsp;</span>
300
317
  <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-yes">49x</span>
302
318
  <span class="cline-any cline-neutral">&nbsp;</span>
319
+ <span class="cline-any cline-yes">48x</span>
320
+ <span class="cline-any cline-yes">96x</span>
303
321
  <span class="cline-any cline-neutral">&nbsp;</span>
304
322
  <span class="cline-any cline-neutral">&nbsp;</span>
323
+ <span class="cline-any cline-yes">48x</span>
305
324
  <span class="cline-any cline-neutral">&nbsp;</span>
306
325
  <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-yes">49x</span>
308
- <span class="cline-any cline-yes">98x</span>
309
326
  <span class="cline-any cline-neutral">&nbsp;</span>
310
327
  <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-yes">49x</span>
312
328
  <span class="cline-any cline-neutral">&nbsp;</span>
329
+ <span class="cline-any cline-yes">48x</span>
313
330
  <span class="cline-any cline-neutral">&nbsp;</span>
314
331
  <span class="cline-any cline-neutral">&nbsp;</span>
315
332
  <span class="cline-any cline-neutral">&nbsp;</span>
316
333
  <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-yes">49x</span>
334
+ <span class="cline-any cline-yes">48x</span>
318
335
  <span class="cline-any cline-neutral">&nbsp;</span>
319
336
  <span class="cline-any cline-neutral">&nbsp;</span>
320
337
  <span class="cline-any cline-neutral">&nbsp;</span>
321
338
  <span class="cline-any cline-neutral">&nbsp;</span>
322
- <span class="cline-any cline-yes">49x</span>
323
339
  <span class="cline-any cline-neutral">&nbsp;</span>
340
+ <span class="cline-any cline-yes">48x</span>
324
341
  <span class="cline-any cline-neutral">&nbsp;</span>
325
342
  <span class="cline-any cline-neutral">&nbsp;</span>
326
343
  <span class="cline-any cline-neutral">&nbsp;</span>
327
344
  <span class="cline-any cline-neutral">&nbsp;</span>
328
- <span class="cline-any cline-yes">49x</span>
329
345
  <span class="cline-any cline-neutral">&nbsp;</span>
330
346
  <span class="cline-any cline-neutral">&nbsp;</span>
331
347
  <span class="cline-any cline-neutral">&nbsp;</span>
332
348
  <span class="cline-any cline-neutral">&nbsp;</span>
333
349
  <span class="cline-any cline-neutral">&nbsp;</span>
334
350
  <span class="cline-any cline-neutral">&nbsp;</span>
351
+ <span class="cline-any cline-yes">48x</span>
335
352
  <span class="cline-any cline-neutral">&nbsp;</span>
336
353
  <span class="cline-any cline-neutral">&nbsp;</span>
337
354
  <span class="cline-any cline-neutral">&nbsp;</span>
355
+ <span class="cline-any cline-yes">48x</span>
338
356
  <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-yes">49x</span>
340
357
  <span class="cline-any cline-neutral">&nbsp;</span>
341
358
  <span class="cline-any cline-neutral">&nbsp;</span>
342
359
  <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-yes">49x</span>
360
+ <span class="cline-any cline-yes">48x</span>
344
361
  <span class="cline-any cline-neutral">&nbsp;</span>
345
362
  <span class="cline-any cline-neutral">&nbsp;</span>
346
363
  <span class="cline-any cline-neutral">&nbsp;</span>
347
364
  <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-yes">49x</span>
349
365
  <span class="cline-any cline-neutral">&nbsp;</span>
350
366
  <span class="cline-any cline-neutral">&nbsp;</span>
351
367
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -403,48 +419,50 @@
403
419
  <span class="cline-any cline-neutral">&nbsp;</span>
404
420
  <span class="cline-any cline-neutral">&nbsp;</span>
405
421
  <span class="cline-any cline-neutral">&nbsp;</span>
422
+ <span class="cline-any cline-yes">48x</span>
406
423
  <span class="cline-any cline-neutral">&nbsp;</span>
407
424
  <span class="cline-any cline-neutral">&nbsp;</span>
408
425
  <span class="cline-any cline-neutral">&nbsp;</span>
409
426
  <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-yes">49x</span>
411
427
  <span class="cline-any cline-neutral">&nbsp;</span>
412
428
  <span class="cline-any cline-neutral">&nbsp;</span>
413
429
  <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-yes">48x</span>
431
+ <span class="cline-any cline-yes">48x</span>
414
432
  <span class="cline-any cline-neutral">&nbsp;</span>
415
433
  <span class="cline-any cline-neutral">&nbsp;</span>
416
434
  <span class="cline-any cline-neutral">&nbsp;</span>
417
435
  <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-yes">49x</span>
419
- <span class="cline-any cline-yes">49x</span>
420
436
  <span class="cline-any cline-neutral">&nbsp;</span>
421
437
  <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-yes">48x</span>
422
439
  <span class="cline-any cline-neutral">&nbsp;</span>
423
440
  <span class="cline-any cline-neutral">&nbsp;</span>
424
441
  <span class="cline-any cline-neutral">&nbsp;</span>
425
442
  <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-yes">49x</span>
443
+ <span class="cline-any cline-yes">48x</span>
427
444
  <span class="cline-any cline-neutral">&nbsp;</span>
428
445
  <span class="cline-any cline-neutral">&nbsp;</span>
429
446
  <span class="cline-any cline-neutral">&nbsp;</span>
430
447
  <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">49x</span>
432
448
  <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-yes">48x</span>
433
450
  <span class="cline-any cline-neutral">&nbsp;</span>
434
451
  <span class="cline-any cline-neutral">&nbsp;</span>
435
452
  <span class="cline-any cline-neutral">&nbsp;</span>
436
453
  <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-yes">49x</span>
454
+ <span class="cline-any cline-yes">48x</span>
438
455
  <span class="cline-any cline-neutral">&nbsp;</span>
439
456
  <span class="cline-any cline-neutral">&nbsp;</span>
440
457
  <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-yes">48x</span>
441
459
  <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-yes">49x</span>
443
460
  <span class="cline-any cline-neutral">&nbsp;</span>
444
461
  <span class="cline-any cline-neutral">&nbsp;</span>
445
462
  <span class="cline-any cline-neutral">&nbsp;</span>
446
463
  <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-yes">49x</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-yes">48x</span>
448
466
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
449
467
  const { UserStatus } = require("@budibase/backend-core/constants")
450
468
  const { ObjectStoreBuckets } = require("@budibase/backend-core/objectStore")
@@ -637,6 +655,12 @@ exports.WebhookType = {
637
655
  AUTOMATION: "automation",
638
656
  }
639
657
  &nbsp;
658
+ exports.AutomationErrors = {
659
+ INCORRECT_TYPE: "INCORRECT_TYPE",
660
+ MAX_ITERATIONS: "MAX_ITERATIONS_REACHED",
661
+ FAILURE_CONDITION: "FAILURE_CONDITION_MET",
662
+ }
663
+ &nbsp;
640
664
  // pass through the list from the auth/core lib
641
665
  exports.ObjectStoreBuckets = ObjectStoreBuckets
642
666
  &nbsp;</pre></td></tr></table></pre>
@@ -645,10 +669,9 @@ exports.ObjectStoreBuckets = ObjectStoreBuckets
645
669
  </div><!-- /wrapper -->
646
670
  <div class='footer quiet pad2 space-top1 center small'>
647
671
  Code coverage generated by
648
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
649
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
672
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
673
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
650
674
  </div>
651
- </div>
652
675
  <script src="../prettify.js"></script>
653
676
  <script>
654
677
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -522,10 +528,9 @@ module.exports = {
522
528
  </div><!-- /wrapper -->
523
529
  <div class='footer quiet pad2 space-top1 center small'>
524
530
  Code coverage generated by
525
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
526
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
531
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
532
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
527
533
  </div>
528
- </div>
529
534
  <script src="../prettify.js"></script>
530
535
  <script>
531
536
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -201,10 +207,9 @@ exports.createHomeScreen = () =&gt; ({
201
207
  </div><!-- /wrapper -->
202
208
  <div class='footer quiet pad2 space-top1 center small'>
203
209
  Code coverage generated by
204
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
205
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
210
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
211
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
206
212
  </div>
207
- </div>
208
213
  <script src="../prettify.js"></script>
209
214
  <script>
210
215
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line low'></div>
59
65
  <pre><table class="coverage">
@@ -210,10 +216,9 @@ exports.runView = <span class="fstat-no" title="function not covered" >as</span>
210
216
  </div><!-- /wrapper -->
211
217
  <div class='footer quiet pad2 space-top1 center small'>
212
218
  Code coverage generated by
213
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
214
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
219
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
220
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
215
221
  </div>
216
- </div>
217
222
  <script src="../prettify.js"></script>
218
223
  <script>
219
224
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line medium'></div>
59
65
  <div class="pad1">
@@ -139,10 +145,9 @@
139
145
  </div><!-- /wrapper -->
140
146
  <div class='footer quiet pad2 space-top1 center small'>
141
147
  Code coverage generated by
142
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
143
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
148
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
149
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
144
150
  </div>
145
- </div>
146
151
  <script src="../prettify.js"></script>
147
152
  <script>
148
153
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -98,7 +104,7 @@ exports.init = () =&gt; {
98
104
  find: true,
99
105
  }
100
106
  &nbsp;
101
- if (env.isTest()) {
107
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (env.isTest()) {
102
108
  dbConfig.inMemory = true
103
109
  dbConfig.allDbs = true
104
110
  }
@@ -111,10 +117,9 @@ exports.init = () =&gt; {
111
117
  </div><!-- /wrapper -->
112
118
  <div class='footer quiet pad2 space-top1 center small'>
113
119
  Code coverage generated by
114
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
115
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
120
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
121
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
116
122
  </div>
117
- </div>
118
123
  <script src="../prettify.js"></script>
119
124
  <script>
120
125
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -576,11 +582,11 @@
576
582
  <span class="cline-any cline-neutral">&nbsp;</span>
577
583
  <span class="cline-any cline-neutral">&nbsp;</span>
578
584
  <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-yes">201x</span>
580
- <span class="cline-any cline-yes">201x</span>
581
- <span class="cline-any cline-yes">201x</span>
582
- <span class="cline-any cline-yes">201x</span>
583
- <span class="cline-any cline-yes">201x</span>
585
+ <span class="cline-any cline-yes">199x</span>
586
+ <span class="cline-any cline-yes">199x</span>
587
+ <span class="cline-any cline-yes">199x</span>
588
+ <span class="cline-any cline-yes">199x</span>
589
+ <span class="cline-any cline-yes">199x</span>
584
590
  <span class="cline-any cline-neutral">&nbsp;</span>
585
591
  <span class="cline-any cline-neutral">&nbsp;</span>
586
592
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -604,16 +610,16 @@
604
610
  <span class="cline-any cline-neutral">&nbsp;</span>
605
611
  <span class="cline-any cline-neutral">&nbsp;</span>
606
612
  <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-yes">195x</span>
613
+ <span class="cline-any cline-yes">193x</span>
608
614
  <span class="cline-any cline-yes">6x</span>
609
615
  <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-yes">195x</span>
611
- <span class="cline-any cline-yes">479x</span>
612
- <span class="cline-any cline-yes">479x</span>
616
+ <span class="cline-any cline-yes">193x</span>
617
+ <span class="cline-any cline-yes">475x</span>
618
+ <span class="cline-any cline-yes">475x</span>
613
619
  <span class="cline-any cline-yes">41x</span>
614
620
  <span class="cline-any cline-neutral">&nbsp;</span>
615
621
  <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-yes">154x</span>
622
+ <span class="cline-any cline-yes">152x</span>
617
623
  <span class="cline-any cline-neutral">&nbsp;</span>
618
624
  <span class="cline-any cline-neutral">&nbsp;</span>
619
625
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1155,7 +1161,7 @@ class LinkController {
1155
1161
  } else if (linkerField.relationshipType === RelationshipTypes.MANY_TO_ONE) {
1156
1162
  // Ensure that the other side of the relationship is locked to one record
1157
1163
  linkedField.relationshipType = RelationshipTypes.ONE_TO_MANY
1158
- } else if (linkerField.relationshipType === RelationshipTypes.ONE_TO_MANY) {
1164
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>if (linkerField.relationshipType === RelationshipTypes.ONE_TO_MANY) {
1159
1165
  linkedField.relationshipType = RelationshipTypes.MANY_TO_ONE
1160
1166
  }
1161
1167
  return { linkerField, linkedField }
@@ -1232,7 +1238,7 @@ class LinkController {
1232
1238
  }
1233
1239
  }
1234
1240
  &nbsp;
1235
- if (linkId &amp;&amp; linkId !== "" &amp;&amp; linkDocIds.indexOf(linkId) === -1) {
1241
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (linkId &amp;&amp; linkId !== "" &amp;&amp; linkDocIds.indexOf(linkId) === -1) {
1236
1242
  // first check the doc we're linking to exists
1237
1243
  try {
1238
1244
  await this._db.get(linkId)
@@ -1455,10 +1461,9 @@ module.exports = LinkController
1455
1461
  </div><!-- /wrapper -->
1456
1462
  <div class='footer quiet pad2 space-top1 center small'>
1457
1463
  Code coverage generated by
1458
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1459
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
1464
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1465
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
1460
1466
  </div>
1461
- </div>
1462
1467
  <script src="../../prettify.js"></script>
1463
1468
  <script>
1464
1469
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <div class="pad1">
@@ -124,10 +130,9 @@
124
130
  </div><!-- /wrapper -->
125
131
  <div class='footer quiet pad2 space-top1 center small'>
126
132
  Code coverage generated by
127
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
128
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
133
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
129
135
  </div>
130
- </div>
131
136
  <script src="../../prettify.js"></script>
132
137
  <script>
133
138
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -373,20 +379,20 @@
373
379
  <span class="cline-any cline-neutral">&nbsp;</span>
374
380
  <span class="cline-any cline-neutral">&nbsp;</span>
375
381
  <span class="cline-any cline-yes">41x</span>
376
- <span class="cline-any cline-yes">191x</span>
377
- <span class="cline-any cline-yes">191x</span>
382
+ <span class="cline-any cline-yes">189x</span>
383
+ <span class="cline-any cline-yes">189x</span>
378
384
  <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-yes">191x</span>
380
- <span class="cline-any cline-yes">109x</span>
385
+ <span class="cline-any cline-yes">189x</span>
386
+ <span class="cline-any cline-yes">108x</span>
381
387
  <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-yes">191x</span>
383
- <span class="cline-any cline-yes">191x</span>
384
- <span class="cline-any cline-yes">191x</span>
388
+ <span class="cline-any cline-yes">189x</span>
389
+ <span class="cline-any cline-yes">189x</span>
390
+ <span class="cline-any cline-yes">189x</span>
385
391
  <span class="cline-any cline-neutral">&nbsp;</span>
386
392
  <span class="cline-any cline-neutral">&nbsp;</span>
387
393
  <span class="cline-any cline-neutral">&nbsp;</span>
388
394
  <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-yes">150x</span>
395
+ <span class="cline-any cline-yes">148x</span>
390
396
  <span class="cline-any cline-neutral">&nbsp;</span>
391
397
  <span class="cline-any cline-neutral">&nbsp;</span>
392
398
  <span class="cline-any cline-no">&nbsp;</span>
@@ -416,9 +422,9 @@
416
422
  <span class="cline-any cline-neutral">&nbsp;</span>
417
423
  <span class="cline-any cline-neutral">&nbsp;</span>
418
424
  <span class="cline-any cline-yes">41x</span>
419
- <span class="cline-any cline-yes">113x</span>
420
- <span class="cline-any cline-yes">113x</span>
421
- <span class="cline-any cline-yes">83x</span>
425
+ <span class="cline-any cline-yes">112x</span>
426
+ <span class="cline-any cline-yes">112x</span>
427
+ <span class="cline-any cline-yes">82x</span>
422
428
  <span class="cline-any cline-neutral">&nbsp;</span>
423
429
  <span class="cline-any cline-neutral">&nbsp;</span>
424
430
  <span class="cline-any cline-yes">30x</span>
@@ -642,15 +648,15 @@ exports.attachFullLinkedDocs = async (table, rows) =&gt; {
642
648
  const linkedTables = []
643
649
  for (let row of rows) {
644
650
  for (let link of links.filter(link =&gt; link.thisId === row._id)) {
645
- if (row[link.fieldName] == null) {
651
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (row[link.fieldName] == null) {
646
652
  row[link.fieldName] = []
647
653
  }
648
654
  const linkedRow = linked.find(row =&gt; row._id === link.id)
649
- if (linkedRow) {
655
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (linkedRow) {
650
656
  const linkedTableId =
651
657
  linkedRow.tableId || <span class="branch-1 cbranch-no" title="branch not covered" >getRelatedTableForField(table, link.fieldName)</span>
652
658
  const linkedTable = await getLinkedTable(linkedTableId, linkedTables)
653
- if (linkedTable) {
659
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (linkedTable) {
654
660
  row[link.fieldName].push(processFormulas(linkedTable, linkedRow))
655
661
  }
656
662
  }
@@ -696,10 +702,9 @@ exports.squashLinksToPrimaryDisplay = async (table, enriched) =&gt; {
696
702
  </div><!-- /wrapper -->
697
703
  <div class='footer quiet pad2 space-top1 center small'>
698
704
  Code coverage generated by
699
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
700
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
705
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
706
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
701
707
  </div>
702
- </div>
703
708
  <script src="../../prettify.js"></script>
704
709
  <script>
705
710
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -258,8 +264,8 @@
258
264
  <span class="cline-any cline-neutral">&nbsp;</span>
259
265
  <span class="cline-any cline-neutral">&nbsp;</span>
260
266
  <span class="cline-any cline-yes">41x</span>
261
- <span class="cline-any cline-yes">113x</span>
262
- <span class="cline-any cline-yes">322x</span>
267
+ <span class="cline-any cline-yes">112x</span>
268
+ <span class="cline-any cline-yes">320x</span>
263
269
  <span class="cline-any cline-yes">53x</span>
264
270
  <span class="cline-any cline-neutral">&nbsp;</span>
265
271
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -344,7 +350,7 @@ exports.getLinkDocuments = async function (args) {
344
350
  return false
345
351
  }
346
352
  const unique = foundIds.indexOf(link.id) === -1
347
- if (unique) {
353
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (unique) {
348
354
  foundIds.push(link.id)
349
355
  }
350
356
  return unique
@@ -386,7 +392,7 @@ exports.getLinkedTable = async (id, tables) =&gt; {
386
392
  return linkedTable
387
393
  }
388
394
  linkedTable = await db.get(id)
389
- if (linkedTable) {
395
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (linkedTable) {
390
396
  tables.push(linkedTable)
391
397
  }
392
398
  return linkedTable
@@ -411,10 +417,9 @@ exports.getRelatedTableForField = (table, fieldName) =&gt; {
411
417
  </div><!-- /wrapper -->
412
418
  <div class='footer quiet pad2 space-top1 center small'>
413
419
  Code coverage generated by
414
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
415
- at Mon Apr 25 2022 13:58:44 GMT+0000 (Coordinated Universal Time)
420
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
421
+ at Tue Apr 26 2022 18:30:21 GMT+0000 (Coordinated Universal Time)
416
422
  </div>
417
- </div>
418
423
  <script src="../../prettify.js"></script>
419
424
  <script>
420
425
  window.onload = function () {