@budibase/server 1.2.42 → 1.2.45

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 (162) hide show
  1. package/builder/assets/{index.b0f613b5.js → index.0956c8bc.js} +6 -6
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +305 -297
  4. package/coverage/coverage-final.json +20 -20
  5. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  6. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  7. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  8. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/component.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/index.html +1 -1
  14. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
  18. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  20. package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/row/index.html +19 -19
  25. package/coverage/lcov-report/api/controllers/row/internal.js.html +88 -46
  26. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +15 -15
  28. package/coverage/lcov-report/api/controllers/row/utils.js.html +13 -13
  29. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  30. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +41 -41
  32. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  34. package/coverage/lcov-report/api/controllers/table/index.js.html +17 -17
  35. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/view/exporters.js.html +2 -2
  38. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  39. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  40. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  43. package/coverage/lcov-report/api/index.html +1 -1
  44. package/coverage/lcov-report/api/index.js.html +5 -5
  45. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  46. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  47. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  48. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  49. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/index.html +1 -1
  56. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  70. package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  73. package/coverage/lcov-report/automations/actions.js.html +1 -1
  74. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  75. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  76. package/coverage/lcov-report/automations/index.html +1 -1
  77. package/coverage/lcov-report/automations/index.js.html +1 -1
  78. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  79. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  80. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  81. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  82. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  83. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  84. package/coverage/lcov-report/automations/steps/index.html +1 -1
  85. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  86. package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  95. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  96. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  97. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  98. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  100. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  101. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  102. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  104. package/coverage/lcov-report/constants/index.html +1 -1
  105. package/coverage/lcov-report/constants/index.js.html +1 -1
  106. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  107. package/coverage/lcov-report/constants/screens.js.html +1 -1
  108. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  109. package/coverage/lcov-report/db/index.html +1 -1
  110. package/coverage/lcov-report/db/index.js.html +1 -1
  111. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +11 -11
  112. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  113. package/coverage/lcov-report/db/linkedRows/index.js.html +19 -19
  114. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +7 -7
  115. package/coverage/lcov-report/db/newid.js.html +2 -2
  116. package/coverage/lcov-report/db/utils.js.html +11 -11
  117. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  118. package/coverage/lcov-report/events/index.html +1 -1
  119. package/coverage/lcov-report/events/index.js.html +1 -1
  120. package/coverage/lcov-report/events/utils.js.html +1 -1
  121. package/coverage/lcov-report/index.html +19 -19
  122. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  123. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  124. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  125. package/coverage/lcov-report/middleware/builder.js.html +12 -12
  126. package/coverage/lcov-report/middleware/currentapp.js.html +33 -33
  127. package/coverage/lcov-report/middleware/index.html +1 -1
  128. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  129. package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
  130. package/coverage/lcov-report/middleware/resourceId.js.html +7 -7
  131. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  132. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  133. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  134. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  135. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  136. package/coverage/lcov-report/utilities/global.js.html +16 -16
  137. package/coverage/lcov-report/utilities/index.html +1 -1
  138. package/coverage/lcov-report/utilities/index.js.html +1 -1
  139. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +2 -2
  140. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  141. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  142. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  143. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  144. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +39 -39
  145. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +10 -10
  146. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  147. package/coverage/lcov-report/utilities/security.js.html +1 -1
  148. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  149. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  150. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  151. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  152. package/coverage/lcov-report/utilities/users.js.html +1 -1
  153. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  154. package/coverage/lcov.info +533 -521
  155. package/dist/api/controllers/row/internal.js +15 -1
  156. package/dist/automations/utils.js +1 -1
  157. package/dist/package.json +7 -7
  158. package/dist/tsconfig.build.tsbuildinfo +1 -1
  159. package/package.json +8 -8
  160. package/src/api/controllers/row/internal.js +15 -1
  161. package/src/api/routes/tests/row.spec.js +149 -67
  162. package/src/automations/utils.ts +1 -1
@@ -1,7 +1,7 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1660829553894" clover="3.2.0">
3
- <project timestamp="1660829553894" name="All files">
4
- <metrics statements="4100" coveredstatements="2957" conditionals="1725" coveredconditionals="916" methods="606" coveredmethods="419" elements="6431" coveredelements="4292" complexity="0" loc="4100" ncloc="4100" packages="22" files="126" classes="126"/>
2
+ <coverage generated="1660920134286" clover="3.2.0">
3
+ <project timestamp="1660920134287" name="All files">
4
+ <metrics statements="4108" coveredstatements="2977" conditionals="1729" coveredconditionals="920" methods="606" coveredmethods="421" elements="6443" coveredelements="4318" complexity="0" loc="4108" ncloc="4108" packages="22" files="126" classes="126"/>
5
5
  <package name="api">
6
6
  <metrics statements="35" coveredstatements="34" conditionals="5" coveredconditionals="2" methods="4" coveredmethods="4"/>
7
7
  <file name="index.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/index.js">
@@ -21,11 +21,11 @@
21
21
  <line num="19" count="28" type="stmt"/>
22
22
  <line num="20" count="28" type="stmt"/>
23
23
  <line num="22" count="28" type="stmt"/>
24
- <line num="36" count="235" type="stmt"/>
25
- <line num="40" count="235" type="stmt"/>
24
+ <line num="36" count="237" type="stmt"/>
25
+ <line num="40" count="237" type="stmt"/>
26
26
  <line num="62" count="28" type="stmt"/>
27
- <line num="63" count="233" type="stmt"/>
28
- <line num="64" count="233" type="stmt"/>
27
+ <line num="63" count="235" type="stmt"/>
28
+ <line num="64" count="235" type="stmt"/>
29
29
  <line num="66" count="39" type="cond" truecount="1" falsecount="2"/>
30
30
  <line num="67" count="39" type="stmt"/>
31
31
  <line num="68" count="39" type="stmt"/>
@@ -1086,7 +1086,7 @@
1086
1086
  </file>
1087
1087
  </package>
1088
1088
  <package name="api.controllers.row">
1089
- <metrics statements="634" coveredstatements="359" conditionals="302" coveredconditionals="105" methods="90" coveredmethods="46"/>
1089
+ <metrics statements="642" coveredstatements="379" conditionals="306" coveredconditionals="109" methods="90" coveredmethods="48"/>
1090
1090
  <file name="external.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/row/external.js">
1091
1091
  <metrics statements="120" coveredstatements="18" conditionals="54" coveredconditionals="0" methods="15" coveredmethods="0"/>
1092
1092
  <line num="6" count="45" type="stmt"/>
@@ -1211,7 +1211,7 @@
1211
1211
  <line num="252" count="0" type="stmt"/>
1212
1212
  </file>
1213
1213
  <file name="internal.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/row/internal.js">
1214
- <metrics statements="213" coveredstatements="172" conditionals="64" coveredconditionals="40" methods="26" coveredmethods="22"/>
1214
+ <metrics statements="221" coveredstatements="192" conditionals="68" coveredconditionals="44" methods="26" coveredmethods="24"/>
1215
1215
  <line num="1" count="45" type="stmt"/>
1216
1216
  <line num="8" count="45" type="stmt"/>
1217
1217
  <line num="9" count="45" type="stmt"/>
@@ -1279,18 +1279,18 @@
1279
1279
  <line num="138" count="0" type="stmt"/>
1280
1280
  <line num="141" count="5" type="stmt"/>
1281
1281
  <line num="147" count="45" type="stmt"/>
1282
- <line num="148" count="74" type="stmt"/>
1283
- <line num="149" count="74" type="stmt"/>
1284
- <line num="150" count="74" type="stmt"/>
1285
- <line num="152" count="74" type="cond" truecount="3" falsecount="1"/>
1286
- <line num="153" count="74" type="stmt"/>
1287
- <line num="157" count="74" type="stmt"/>
1288
- <line num="158" count="74" type="stmt"/>
1289
- <line num="159" count="74" type="stmt"/>
1290
- <line num="164" count="74" type="cond" truecount="1" falsecount="1"/>
1282
+ <line num="148" count="76" type="stmt"/>
1283
+ <line num="149" count="76" type="stmt"/>
1284
+ <line num="150" count="76" type="stmt"/>
1285
+ <line num="152" count="76" type="cond" truecount="3" falsecount="1"/>
1286
+ <line num="153" count="76" type="stmt"/>
1287
+ <line num="157" count="76" type="stmt"/>
1288
+ <line num="158" count="76" type="stmt"/>
1289
+ <line num="159" count="76" type="stmt"/>
1290
+ <line num="164" count="76" type="cond" truecount="1" falsecount="1"/>
1291
1291
  <line num="165" count="0" type="stmt"/>
1292
- <line num="169" count="74" type="stmt"/>
1293
- <line num="176" count="73" type="stmt"/>
1292
+ <line num="169" count="76" type="stmt"/>
1293
+ <line num="176" count="75" type="stmt"/>
1294
1294
  <line num="182" count="45" type="stmt"/>
1295
1295
  <line num="183" count="9" type="stmt"/>
1296
1296
  <line num="186" count="9" type="cond" truecount="2" falsecount="0"/>
@@ -1382,49 +1382,57 @@
1382
1382
  <line num="366" count="45" type="stmt"/>
1383
1383
  <line num="367" count="2" type="stmt"/>
1384
1384
  <line num="373" count="45" type="stmt"/>
1385
- <line num="374" count="0" type="stmt"/>
1386
- <line num="375" count="0" type="stmt"/>
1387
- <line num="376" count="0" type="stmt"/>
1388
- <line num="377" count="0" type="stmt"/>
1389
- <line num="378" count="0" type="stmt"/>
1390
- <line num="383" count="0" type="stmt"/>
1391
- <line num="385" count="0" type="stmt"/>
1392
- <line num="387" count="0" type="stmt"/>
1393
- <line num="388" count="0" type="stmt"/>
1394
- <line num="389" count="0" type="stmt"/>
1395
- <line num="392" count="0" type="stmt"/>
1396
- <line num="393" count="0" type="stmt"/>
1397
- <line num="396" count="45" type="stmt"/>
1398
- <line num="397" count="2" type="stmt"/>
1399
- <line num="398" count="2" type="stmt"/>
1400
- <line num="399" count="2" type="stmt"/>
1385
+ <line num="374" count="2" type="stmt"/>
1386
+ <line num="375" count="2" type="stmt"/>
1387
+ <line num="376" count="2" type="stmt"/>
1388
+ <line num="377" count="2" type="stmt"/>
1389
+ <line num="378" count="2" type="stmt"/>
1390
+ <line num="379" count="2" type="stmt"/>
1391
+ <line num="384" count="2" type="stmt"/>
1392
+ <line num="386" count="2" type="stmt"/>
1393
+ <line num="387" count="2" type="stmt"/>
1394
+ <line num="390" count="2" type="cond" truecount="4" falsecount="0"/>
1395
+ <line num="391" count="1" type="stmt"/>
1396
+ <line num="392" count="1" type="stmt"/>
1397
+ <line num="393" count="1" type="stmt"/>
1398
+ <line num="394" count="1" type="stmt"/>
1399
+ <line num="398" count="1" type="stmt"/>
1401
1400
  <line num="401" count="2" type="stmt"/>
1401
+ <line num="402" count="2" type="stmt"/>
1402
+ <line num="403" count="2" type="stmt"/>
1402
1403
  <line num="406" count="2" type="stmt"/>
1404
+ <line num="407" count="2" type="stmt"/>
1405
+ <line num="410" count="45" type="stmt"/>
1403
1406
  <line num="411" count="2" type="stmt"/>
1404
- <line num="414" count="1" type="stmt"/>
1405
- <line num="416" count="1" type="stmt"/>
1406
- <line num="418" count="2" type="stmt"/>
1407
- <line num="419" count="2" type="stmt"/>
1407
+ <line num="412" count="2" type="stmt"/>
1408
+ <line num="413" count="2" type="stmt"/>
1409
+ <line num="415" count="2" type="stmt"/>
1408
1410
  <line num="420" count="2" type="stmt"/>
1409
- <line num="421" count="1" type="cond" truecount="1" falsecount="1"/>
1410
- <line num="422" count="0" type="stmt"/>
1411
- <line num="424" count="1" type="stmt"/>
1412
- <line num="425" count="1" type="cond" truecount="1" falsecount="1"/>
1413
- <line num="426" count="1" type="stmt"/>
1414
- <line num="427" count="1" type="stmt"/>
1415
- <line num="429" count="0" type="stmt"/>
1411
+ <line num="425" count="2" type="stmt"/>
1412
+ <line num="428" count="1" type="stmt"/>
1413
+ <line num="430" count="1" type="stmt"/>
1416
1414
  <line num="432" count="2" type="stmt"/>
1417
1415
  <line num="433" count="2" type="stmt"/>
1418
- <line num="435" count="1" type="stmt"/>
1419
- <line num="441" count="2" type="stmt"/>
1420
- <line num="442" count="5" type="stmt"/>
1421
- <line num="443" count="5" type="cond" truecount="2" falsecount="0"/>
1422
- <line num="445" count="1" type="stmt"/>
1423
- <line num="446" count="1" type="stmt"/>
1424
- <line num="447" count="1" type="stmt"/>
1416
+ <line num="434" count="2" type="stmt"/>
1417
+ <line num="435" count="1" type="cond" truecount="1" falsecount="1"/>
1418
+ <line num="436" count="0" type="stmt"/>
1419
+ <line num="438" count="1" type="stmt"/>
1420
+ <line num="439" count="1" type="cond" truecount="1" falsecount="1"/>
1421
+ <line num="440" count="1" type="stmt"/>
1422
+ <line num="441" count="1" type="stmt"/>
1423
+ <line num="443" count="0" type="stmt"/>
1424
+ <line num="446" count="2" type="stmt"/>
1425
+ <line num="447" count="2" type="stmt"/>
1425
1426
  <line num="449" count="1" type="stmt"/>
1426
- <line num="450" count="1" type="stmt"/>
1427
- <line num="454" count="2" type="stmt"/>
1427
+ <line num="455" count="2" type="stmt"/>
1428
+ <line num="456" count="5" type="stmt"/>
1429
+ <line num="457" count="5" type="cond" truecount="2" falsecount="0"/>
1430
+ <line num="459" count="1" type="stmt"/>
1431
+ <line num="460" count="1" type="stmt"/>
1432
+ <line num="461" count="1" type="stmt"/>
1433
+ <line num="463" count="1" type="stmt"/>
1434
+ <line num="464" count="1" type="stmt"/>
1435
+ <line num="468" count="2" type="stmt"/>
1428
1436
  </file>
1429
1437
  <file name="internalSearch.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/row/internalSearch.js">
1430
1438
  <metrics statements="185" coveredstatements="111" conditionals="119" coveredconditionals="47" methods="37" coveredmethods="18"/>
@@ -1623,9 +1631,9 @@
1623
1631
  <line num="9" count="45" type="stmt"/>
1624
1632
  <line num="10" count="45" type="stmt"/>
1625
1633
  <line num="18" count="45" type="stmt"/>
1626
- <line num="19" count="83" type="stmt"/>
1627
- <line num="21" count="83" type="cond" truecount="1" falsecount="1"/>
1628
- <line num="22" count="83" type="stmt"/>
1634
+ <line num="19" count="85" type="stmt"/>
1635
+ <line num="21" count="85" type="cond" truecount="1" falsecount="1"/>
1636
+ <line num="22" count="85" type="stmt"/>
1629
1637
  <line num="24" count="0" type="stmt"/>
1630
1638
  <line num="25" count="0" type="cond" truecount="0" falsecount="2"/>
1631
1639
  <line num="29" count="0" type="stmt"/>
@@ -1660,11 +1668,11 @@
1660
1668
  <line num="98" count="0" type="stmt"/>
1661
1669
  <line num="102" count="0" type="stmt"/>
1662
1670
  <line num="111" count="45" type="stmt"/>
1663
- <line num="116" count="78" type="stmt"/>
1664
- <line num="117" count="78" type="stmt"/>
1665
- <line num="119" count="78" type="stmt"/>
1666
- <line num="123" count="78" type="stmt"/>
1667
- <line num="131" count="78" type="cond" truecount="3" falsecount="1"/>
1671
+ <line num="116" count="80" type="stmt"/>
1672
+ <line num="117" count="80" type="stmt"/>
1673
+ <line num="119" count="80" type="stmt"/>
1674
+ <line num="123" count="80" type="stmt"/>
1675
+ <line num="131" count="80" type="cond" truecount="3" falsecount="1"/>
1668
1676
  <line num="132" count="0" type="stmt"/>
1669
1677
  <line num="133" count="0" type="stmt"/>
1670
1678
  <line num="135" count="0" type="cond" truecount="0" falsecount="2"/>
@@ -1673,12 +1681,12 @@
1673
1681
  <line num="140" count="0" type="stmt"/>
1674
1682
  <line num="141" count="0" type="stmt"/>
1675
1683
  <line num="143" count="0" type="stmt"/>
1676
- <line num="147" count="78" type="stmt"/>
1677
- <line num="149" count="78" type="stmt"/>
1678
- <line num="150" count="78" type="stmt"/>
1679
- <line num="152" count="78" type="cond" truecount="1" falsecount="1"/>
1680
- <line num="153" count="78" type="stmt"/>
1681
- <line num="155" count="78" type="stmt"/>
1684
+ <line num="147" count="80" type="stmt"/>
1685
+ <line num="149" count="80" type="stmt"/>
1686
+ <line num="150" count="80" type="stmt"/>
1687
+ <line num="152" count="80" type="cond" truecount="1" falsecount="1"/>
1688
+ <line num="153" count="80" type="stmt"/>
1689
+ <line num="155" count="80" type="stmt"/>
1682
1690
  </file>
1683
1691
  <file name="utils.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/row/utils.js">
1684
1692
  <metrics statements="53" coveredstatements="35" conditionals="34" coveredconditionals="13" methods="6" coveredmethods="4"/>
@@ -1708,18 +1716,18 @@
1708
1716
  <line num="40" count="0" type="stmt"/>
1709
1717
  <line num="42" count="23" type="stmt"/>
1710
1718
  <line num="45" count="45" type="stmt"/>
1711
- <line num="46" count="82" type="cond" truecount="2" falsecount="0"/>
1719
+ <line num="46" count="84" type="cond" truecount="2" falsecount="0"/>
1712
1720
  <line num="47" count="2" type="stmt"/>
1713
1721
  <line num="48" count="2" type="stmt"/>
1714
- <line num="50" count="82" type="stmt"/>
1715
- <line num="51" count="82" type="stmt"/>
1716
- <line num="52" count="222" type="stmt"/>
1717
- <line num="53" count="222" type="stmt"/>
1718
- <line num="55" count="222" type="cond" truecount="1" falsecount="1"/>
1722
+ <line num="50" count="84" type="stmt"/>
1723
+ <line num="51" count="84" type="stmt"/>
1724
+ <line num="52" count="226" type="stmt"/>
1725
+ <line num="53" count="226" type="stmt"/>
1726
+ <line num="55" count="226" type="cond" truecount="1" falsecount="1"/>
1719
1727
  <line num="56" count="0" type="stmt"/>
1720
- <line num="59" count="222" type="cond" truecount="2" falsecount="2"/>
1728
+ <line num="59" count="226" type="cond" truecount="2" falsecount="2"/>
1721
1729
  <line num="60" count="0" type="stmt"/>
1722
- <line num="65" count="222" type="cond" truecount="2" falsecount="2"/>
1730
+ <line num="65" count="226" type="cond" truecount="2" falsecount="2"/>
1723
1731
  <line num="66" count="0" type="cond" truecount="0" falsecount="2"/>
1724
1732
  <line num="67" count="0" type="cond" truecount="0" falsecount="2"/>
1725
1733
  <line num="68" count="0" type="stmt"/>
@@ -1728,13 +1736,13 @@
1728
1736
  <line num="75" count="0" type="stmt"/>
1729
1737
  <line num="78" count="0" type="cond" truecount="0" falsecount="4"/>
1730
1738
  <line num="80" count="0" type="stmt"/>
1731
- <line num="82" count="222" type="cond" truecount="2" falsecount="2"/>
1739
+ <line num="82" count="226" type="cond" truecount="2" falsecount="2"/>
1732
1740
  <line num="84" count="0" type="stmt"/>
1733
1741
  <line num="85" count="0" type="stmt"/>
1734
1742
  <line num="87" count="0" type="stmt"/>
1735
- <line num="90" count="222" type="stmt"/>
1736
- <line num="92" count="222" type="cond" truecount="2" falsecount="0"/>
1737
- <line num="94" count="82" type="stmt"/>
1743
+ <line num="90" count="226" type="stmt"/>
1744
+ <line num="92" count="226" type="cond" truecount="2" falsecount="0"/>
1745
+ <line num="94" count="84" type="stmt"/>
1738
1746
  </file>
1739
1747
  </package>
1740
1748
  <package name="api.controllers.table">
@@ -1748,30 +1756,30 @@
1748
1756
  <line num="5" count="45" type="stmt"/>
1749
1757
  <line num="6" count="45" type="stmt"/>
1750
1758
  <line num="7" count="45" type="stmt"/>
1751
- <line num="10" count="1520" type="stmt"/>
1752
- <line num="21" count="316" type="stmt"/>
1753
- <line num="22" count="316" type="cond" truecount="1" falsecount="1"/>
1754
- <line num="23" count="316" type="stmt"/>
1755
- <line num="25" count="1206" type="cond" truecount="1" falsecount="1"/>
1756
- <line num="26" count="1206" type="stmt"/>
1759
+ <line num="10" count="1532" type="stmt"/>
1760
+ <line num="21" count="320" type="stmt"/>
1761
+ <line num="22" count="320" type="cond" truecount="1" falsecount="1"/>
1762
+ <line num="23" count="320" type="stmt"/>
1763
+ <line num="25" count="1214" type="cond" truecount="1" falsecount="1"/>
1764
+ <line num="26" count="1214" type="stmt"/>
1757
1765
  <line num="28" count="0" type="cond" truecount="0" falsecount="4"/>
1758
1766
  <line num="29" count="0" type="stmt"/>
1759
1767
  <line num="31" count="0" type="stmt"/>
1760
- <line num="33" count="316" type="stmt"/>
1761
- <line num="42" count="131" type="stmt"/>
1762
- <line num="43" count="304" type="stmt"/>
1763
- <line num="45" count="131" type="cond" truecount="2" falsecount="0"/>
1764
- <line num="46" count="131" type="stmt"/>
1765
- <line num="47" count="319" type="cond" truecount="2" falsecount="0"/>
1766
- <line num="50" count="131" type="stmt"/>
1767
- <line num="51" count="283" type="stmt"/>
1768
- <line num="53" count="283" type="cond" truecount="2" falsecount="0"/>
1768
+ <line num="33" count="320" type="stmt"/>
1769
+ <line num="42" count="133" type="stmt"/>
1770
+ <line num="43" count="308" type="stmt"/>
1771
+ <line num="45" count="133" type="cond" truecount="2" falsecount="0"/>
1772
+ <line num="46" count="133" type="stmt"/>
1773
+ <line num="47" count="323" type="cond" truecount="2" falsecount="0"/>
1774
+ <line num="50" count="133" type="stmt"/>
1775
+ <line num="51" count="287" type="stmt"/>
1776
+ <line num="53" count="287" type="cond" truecount="2" falsecount="0"/>
1769
1777
  <line num="54" count="2" type="stmt"/>
1770
- <line num="56" count="283" type="stmt"/>
1771
- <line num="57" count="283" type="cond" truecount="1" falsecount="1"/>
1778
+ <line num="56" count="287" type="stmt"/>
1779
+ <line num="57" count="287" type="cond" truecount="1" falsecount="1"/>
1772
1780
  <line num="58" count="0" type="stmt"/>
1773
- <line num="62" count="283" type="cond" truecount="1" falsecount="1"/>
1774
- <line num="63" count="283" type="stmt"/>
1781
+ <line num="62" count="287" type="cond" truecount="1" falsecount="1"/>
1782
+ <line num="63" count="287" type="stmt"/>
1775
1783
  <line num="65" count="0" type="stmt"/>
1776
1784
  <line num="66" count="0" type="stmt"/>
1777
1785
  <line num="67" count="0" type="stmt"/>
@@ -1782,20 +1790,20 @@
1782
1790
  <line num="75" count="0" type="stmt"/>
1783
1791
  <line num="82" count="0" type="cond" truecount="0" falsecount="2"/>
1784
1792
  <line num="83" count="0" type="stmt"/>
1785
- <line num="100" count="131" type="stmt"/>
1786
- <line num="102" count="131" type="stmt"/>
1787
- <line num="103" count="304" type="stmt"/>
1788
- <line num="106" count="131" type="stmt"/>
1789
- <line num="108" count="131" type="stmt"/>
1790
- <line num="109" count="321" type="stmt"/>
1791
- <line num="112" count="131" type="stmt"/>
1792
- <line num="113" count="176" type="cond" truecount="1" falsecount="1"/>
1793
- <line num="114" count="176" type="stmt"/>
1793
+ <line num="100" count="133" type="stmt"/>
1794
+ <line num="102" count="133" type="stmt"/>
1795
+ <line num="103" count="308" type="stmt"/>
1796
+ <line num="106" count="133" type="stmt"/>
1797
+ <line num="108" count="133" type="stmt"/>
1798
+ <line num="109" count="325" type="stmt"/>
1799
+ <line num="112" count="133" type="stmt"/>
1800
+ <line num="113" count="178" type="cond" truecount="1" falsecount="1"/>
1801
+ <line num="114" count="178" type="stmt"/>
1794
1802
  <line num="116" count="0" type="stmt"/>
1795
1803
  <line num="117" count="0" type="cond" truecount="0" falsecount="2"/>
1796
1804
  <line num="118" count="0" type="stmt"/>
1797
- <line num="122" count="131" type="cond" truecount="2" falsecount="0"/>
1798
- <line num="123" count="128" type="stmt"/>
1805
+ <line num="122" count="133" type="cond" truecount="2" falsecount="0"/>
1806
+ <line num="123" count="130" type="stmt"/>
1799
1807
  <line num="124" count="33" type="stmt"/>
1800
1808
  <line num="125" count="33" type="cond" truecount="3" falsecount="1"/>
1801
1809
  <line num="126" count="33" type="stmt"/>
@@ -1803,19 +1811,19 @@
1803
1811
  <line num="129" count="0" type="stmt"/>
1804
1812
  <line num="132" count="0" type="cond" truecount="0" falsecount="2"/>
1805
1813
  <line num="137" count="0" type="cond" truecount="0" falsecount="2"/>
1806
- <line num="144" count="131" type="stmt"/>
1807
- <line num="145" count="233" type="stmt"/>
1808
- <line num="146" count="176" type="cond" truecount="3" falsecount="1"/>
1814
+ <line num="144" count="133" type="stmt"/>
1815
+ <line num="145" count="235" type="stmt"/>
1816
+ <line num="146" count="178" type="cond" truecount="3" falsecount="1"/>
1809
1817
  <line num="147" count="0" type="stmt"/>
1810
- <line num="154" count="128" type="stmt"/>
1811
- <line num="156" count="314" type="cond" truecount="1" falsecount="3"/>
1812
- <line num="162" count="128" type="cond" truecount="1" falsecount="1"/>
1818
+ <line num="154" count="130" type="stmt"/>
1819
+ <line num="156" count="318" type="cond" truecount="1" falsecount="3"/>
1820
+ <line num="162" count="130" type="cond" truecount="1" falsecount="1"/>
1813
1821
  <line num="163" count="0" type="stmt"/>
1814
1822
  <line num="167" count="45" type="stmt"/>
1815
- <line num="168" count="131" type="stmt"/>
1816
- <line num="169" count="131" type="stmt"/>
1817
- <line num="170" count="131" type="cond" truecount="2" falsecount="0"/>
1818
- <line num="171" count="128" type="stmt"/>
1823
+ <line num="168" count="133" type="stmt"/>
1824
+ <line num="169" count="133" type="stmt"/>
1825
+ <line num="170" count="133" type="cond" truecount="2" falsecount="0"/>
1826
+ <line num="171" count="130" type="stmt"/>
1819
1827
  </file>
1820
1828
  <file name="external.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/table/external.js">
1821
1829
  <metrics statements="140" coveredstatements="12" conditionals="79" coveredconditionals="0" methods="14" coveredmethods="0"/>
@@ -1970,13 +1978,13 @@
1970
1978
  <line num="6" count="45" type="stmt"/>
1971
1979
  <line num="7" count="45" type="stmt"/>
1972
1980
  <line num="8" count="45" type="stmt"/>
1973
- <line num="11" count="132" type="cond" truecount="4" falsecount="0"/>
1974
- <line num="12" count="128" type="stmt"/>
1975
- <line num="14" count="132" type="cond" truecount="3" falsecount="1"/>
1981
+ <line num="11" count="134" type="cond" truecount="4" falsecount="0"/>
1982
+ <line num="12" count="130" type="stmt"/>
1983
+ <line num="14" count="134" type="cond" truecount="3" falsecount="1"/>
1976
1984
  <line num="15" count="0" type="stmt"/>
1977
- <line num="16" count="132" type="cond" truecount="3" falsecount="1"/>
1985
+ <line num="16" count="134" type="cond" truecount="3" falsecount="1"/>
1978
1986
  <line num="17" count="0" type="stmt"/>
1979
- <line num="19" count="132" type="stmt"/>
1987
+ <line num="19" count="134" type="stmt"/>
1980
1988
  <line num="23" count="45" type="stmt"/>
1981
1989
  <line num="24" count="2" type="stmt"/>
1982
1990
  <line num="26" count="2" type="stmt"/>
@@ -1991,19 +1999,19 @@
1991
1999
  <line num="52" count="26" type="stmt"/>
1992
2000
  <line num="53" count="26" type="stmt"/>
1993
2001
  <line num="56" count="45" type="stmt"/>
1994
- <line num="57" count="128" type="stmt"/>
1995
- <line num="58" count="128" type="stmt"/>
1996
- <line num="60" count="128" type="cond" truecount="4" falsecount="0"/>
1997
- <line num="61" count="128" type="stmt"/>
1998
- <line num="62" count="128" type="cond" truecount="2" falsecount="0"/>
1999
- <line num="63" count="122" type="stmt"/>
2002
+ <line num="57" count="130" type="stmt"/>
2003
+ <line num="58" count="130" type="stmt"/>
2004
+ <line num="60" count="130" type="cond" truecount="4" falsecount="0"/>
2005
+ <line num="61" count="130" type="stmt"/>
2006
+ <line num="62" count="130" type="cond" truecount="2" falsecount="0"/>
2007
+ <line num="63" count="124" type="stmt"/>
2000
2008
  <line num="65" count="6" type="stmt"/>
2001
- <line num="67" count="128" type="cond" truecount="2" falsecount="0"/>
2009
+ <line num="67" count="130" type="cond" truecount="2" falsecount="0"/>
2002
2010
  <line num="68" count="1" type="stmt"/>
2003
- <line num="70" count="128" type="stmt"/>
2004
- <line num="71" count="128" type="stmt"/>
2005
- <line num="72" count="128" type="cond" truecount="2" falsecount="0"/>
2006
- <line num="74" count="128" type="stmt"/>
2011
+ <line num="70" count="130" type="stmt"/>
2012
+ <line num="71" count="130" type="stmt"/>
2013
+ <line num="72" count="130" type="cond" truecount="2" falsecount="0"/>
2014
+ <line num="74" count="130" type="stmt"/>
2007
2015
  <line num="77" count="45" type="stmt"/>
2008
2016
  <line num="78" count="3" type="stmt"/>
2009
2017
  <line num="79" count="3" type="stmt"/>
@@ -2041,7 +2049,7 @@
2041
2049
  <line num="12" count="4" type="stmt"/>
2042
2050
  <line num="16" count="2" type="stmt"/>
2043
2051
  <line num="19" count="45" type="stmt"/>
2044
- <line num="20" count="2" type="stmt"/>
2052
+ <line num="20" count="4" type="stmt"/>
2045
2053
  <line num="23" count="45" type="stmt"/>
2046
2054
  </file>
2047
2055
  <file name="index.js" path="/home/runner/work/budibase/budibase/packages/server/src/api/controllers/view/index.js">
@@ -3196,7 +3204,7 @@
3196
3204
  <metrics statements="3" coveredstatements="3" conditionals="0" coveredconditionals="0" methods="1" coveredmethods="1"/>
3197
3205
  <line num="1" count="58" type="stmt"/>
3198
3206
  <line num="3" count="58" type="stmt"/>
3199
- <line num="4" count="963" type="stmt"/>
3207
+ <line num="4" count="971" type="stmt"/>
3200
3208
  </file>
3201
3209
  <file name="utils.js" path="/home/runner/work/budibase/budibase/packages/server/src/db/utils.js">
3202
3210
  <metrics statements="109" coveredstatements="99" conditionals="49" coveredconditionals="18" methods="31" coveredmethods="25"/>
@@ -3229,14 +3237,14 @@
3229
3237
  <line num="83" count="58" type="stmt"/>
3230
3238
  <line num="84" count="58" type="stmt"/>
3231
3239
  <line num="86" count="58" type="stmt"/>
3232
- <line num="101" count="858" type="cond" truecount="2" falsecount="0"/>
3233
- <line num="102" count="841" type="stmt"/>
3234
- <line num="104" count="858" type="stmt"/>
3240
+ <line num="101" count="866" type="cond" truecount="2" falsecount="0"/>
3241
+ <line num="102" count="849" type="stmt"/>
3242
+ <line num="104" count="866" type="stmt"/>
3235
3243
  <line num="111" count="58" type="stmt"/>
3236
3244
  <line num="116" count="58" type="cond" truecount="0" falsecount="2"/>
3237
- <line num="117" count="267" type="stmt"/>
3245
+ <line num="117" count="271" type="stmt"/>
3238
3246
  <line num="124" count="58" type="stmt"/>
3239
- <line num="125" count="128" type="stmt"/>
3247
+ <line num="125" count="130" type="stmt"/>
3240
3248
  <line num="136" count="58" type="cond" truecount="0" falsecount="3"/>
3241
3249
  <line num="137" count="41" type="cond" truecount="2" falsecount="0"/>
3242
3250
  <line num="138" count="27" type="stmt"/>
@@ -3246,19 +3254,19 @@
3246
3254
  <line num="152" count="0" type="stmt"/>
3247
3255
  <line num="155" count="0" type="stmt"/>
3248
3256
  <line num="164" count="58" type="cond" truecount="1" falsecount="0"/>
3249
- <line num="165" count="317" type="cond" truecount="2" falsecount="0"/>
3250
- <line num="166" count="317" type="stmt"/>
3257
+ <line num="165" count="321" type="cond" truecount="2" falsecount="0"/>
3258
+ <line num="166" count="321" type="stmt"/>
3251
3259
  <line num="172" count="58" type="cond" truecount="0" falsecount="2"/>
3252
3260
  <line num="173" count="3" type="stmt"/>
3253
3261
  <line num="181" count="58" type="stmt"/>
3254
- <line num="182" count="240" type="stmt"/>
3262
+ <line num="182" count="242" type="stmt"/>
3255
3263
  <line num="188" count="58" type="stmt"/>
3256
3264
  <line num="189" count="3" type="stmt"/>
3257
3265
  <line num="190" count="3" type="cond" truecount="4" falsecount="0"/>
3258
3266
  <line num="191" count="1" type="stmt"/>
3259
3267
  <line num="193" count="2" type="stmt"/>
3260
3268
  <line num="199" count="58" type="cond" truecount="0" falsecount="2"/>
3261
- <line num="200" count="270" type="stmt"/>
3269
+ <line num="200" count="272" type="stmt"/>
3262
3270
  <line num="207" count="58" type="stmt"/>
3263
3271
  <line num="208" count="27" type="stmt"/>
3264
3272
  <line num="222" count="58" type="stmt"/>
@@ -3289,7 +3297,7 @@
3289
3297
  <line num="319" count="58" type="stmt"/>
3290
3298
  <line num="320" count="0" type="stmt"/>
3291
3299
  <line num="326" count="58" type="cond" truecount="0" falsecount="1"/>
3292
- <line num="327" count="250" type="stmt"/>
3300
+ <line num="327" count="252" type="stmt"/>
3293
3301
  <line num="333" count="58" type="cond" truecount="0" falsecount="2"/>
3294
3302
  <line num="334" count="5" type="cond" truecount="2" falsecount="0"/>
3295
3303
  <line num="335" count="4" type="stmt"/>
@@ -3324,21 +3332,21 @@
3324
3332
  <line num="41" count="9" type="stmt"/>
3325
3333
  <line num="42" count="9" type="stmt"/>
3326
3334
  <line num="47" count="9" type="stmt"/>
3327
- <line num="56" count="226" type="stmt"/>
3328
- <line num="57" count="226" type="stmt"/>
3329
- <line num="58" count="226" type="stmt"/>
3330
- <line num="59" count="226" type="stmt"/>
3331
- <line num="60" count="226" type="stmt"/>
3335
+ <line num="56" count="230" type="stmt"/>
3336
+ <line num="57" count="230" type="stmt"/>
3337
+ <line num="58" count="230" type="stmt"/>
3338
+ <line num="59" count="230" type="stmt"/>
3339
+ <line num="60" count="230" type="stmt"/>
3332
3340
  <line num="69" count="53" type="cond" truecount="2" falsecount="0"/>
3333
3341
  <line num="70" count="6" type="stmt"/>
3334
3342
  <line num="73" count="53" type="stmt"/>
3335
- <line num="84" count="221" type="cond" truecount="2" falsecount="0"/>
3343
+ <line num="84" count="225" type="cond" truecount="2" falsecount="0"/>
3336
3344
  <line num="85" count="6" type="stmt"/>
3337
- <line num="87" count="221" type="stmt"/>
3338
- <line num="88" count="532" type="stmt"/>
3339
- <line num="89" count="532" type="cond" truecount="2" falsecount="0"/>
3345
+ <line num="87" count="225" type="stmt"/>
3346
+ <line num="88" count="540" type="stmt"/>
3347
+ <line num="89" count="540" type="cond" truecount="2" falsecount="0"/>
3340
3348
  <line num="90" count="41" type="stmt"/>
3341
- <line num="93" count="180" type="stmt"/>
3349
+ <line num="93" count="184" type="stmt"/>
3342
3350
  <line num="100" count="27" type="stmt"/>
3343
3351
  <line num="111" count="9" type="stmt"/>
3344
3352
  <line num="121" count="22" type="stmt"/>
@@ -3508,14 +3516,14 @@
3508
3516
  <line num="91" count="30" type="stmt"/>
3509
3517
  <line num="92" count="30" type="stmt"/>
3510
3518
  <line num="106" count="45" type="stmt"/>
3511
- <line num="107" count="216" type="stmt"/>
3512
- <line num="108" count="216" type="cond" truecount="2" falsecount="0"/>
3513
- <line num="110" count="216" type="cond" truecount="4" falsecount="0"/>
3514
- <line num="111" count="131" type="stmt"/>
3515
- <line num="113" count="216" type="stmt"/>
3516
- <line num="114" count="216" type="stmt"/>
3517
- <line num="115" count="216" type="cond" truecount="2" falsecount="0"/>
3518
- <line num="120" count="175" type="stmt"/>
3519
+ <line num="107" count="220" type="stmt"/>
3520
+ <line num="108" count="220" type="cond" truecount="2" falsecount="0"/>
3521
+ <line num="110" count="220" type="cond" truecount="4" falsecount="0"/>
3522
+ <line num="111" count="133" type="stmt"/>
3523
+ <line num="113" count="220" type="stmt"/>
3524
+ <line num="114" count="220" type="stmt"/>
3525
+ <line num="115" count="220" type="cond" truecount="2" falsecount="0"/>
3526
+ <line num="120" count="179" type="stmt"/>
3519
3527
  <line num="123" count="0" type="stmt"/>
3520
3528
  <line num="125" count="41" type="cond" truecount="5" falsecount="2"/>
3521
3529
  <line num="128" count="21" type="stmt"/>
@@ -3525,9 +3533,9 @@
3525
3533
  <line num="136" count="1" type="stmt"/>
3526
3534
  <line num="138" count="0" type="stmt"/>
3527
3535
  <line num="149" count="45" type="stmt"/>
3528
- <line num="150" count="120" type="stmt"/>
3529
- <line num="151" count="120" type="cond" truecount="2" falsecount="0"/>
3530
- <line num="152" count="90" type="stmt"/>
3536
+ <line num="150" count="124" type="stmt"/>
3537
+ <line num="151" count="124" type="cond" truecount="2" falsecount="0"/>
3538
+ <line num="152" count="94" type="stmt"/>
3531
3539
  <line num="155" count="30" type="stmt"/>
3532
3540
  <line num="156" count="25" type="stmt"/>
3533
3541
  <line num="159" count="30" type="stmt"/>
@@ -3545,12 +3553,12 @@
3545
3553
  <line num="174" count="18" type="stmt"/>
3546
3554
  <line num="179" count="30" type="stmt"/>
3547
3555
  <line num="188" count="45" type="stmt"/>
3548
- <line num="190" count="37" type="stmt"/>
3549
- <line num="191" count="37" type="stmt"/>
3550
- <line num="193" count="45" type="stmt"/>
3551
- <line num="194" count="45" type="stmt"/>
3552
- <line num="195" count="129" type="cond" truecount="4" falsecount="0"/>
3553
- <line num="196" count="120" type="stmt"/>
3556
+ <line num="190" count="39" type="stmt"/>
3557
+ <line num="191" count="39" type="stmt"/>
3558
+ <line num="193" count="47" type="stmt"/>
3559
+ <line num="194" count="47" type="stmt"/>
3560
+ <line num="195" count="133" type="cond" truecount="4" falsecount="0"/>
3561
+ <line num="196" count="124" type="stmt"/>
3554
3562
  <line num="198" count="9" type="stmt"/>
3555
3563
  <line num="199" count="9" type="stmt"/>
3556
3564
  <line num="200" count="9" type="cond" truecount="1" falsecount="1"/>
@@ -3560,7 +3568,7 @@
3560
3568
  <line num="204" count="8" type="stmt"/>
3561
3569
  <line num="206" count="9" type="stmt"/>
3562
3570
  <line num="208" count="9" type="stmt"/>
3563
- <line num="211" count="37" type="stmt"/>
3571
+ <line num="211" count="39" type="stmt"/>
3564
3572
  </file>
3565
3573
  <file name="linkUtils.js" path="/home/runner/work/budibase/budibase/packages/server/src/db/linkedRows/linkUtils.js">
3566
3574
  <metrics statements="54" coveredstatements="50" conditionals="26" coveredconditionals="20" methods="13" coveredmethods="13"/>
@@ -3598,14 +3606,14 @@
3598
3606
  <line num="80" count="30" type="stmt"/>
3599
3607
  <line num="81" count="33" type="stmt"/>
3600
3608
  <line num="85" count="45" type="stmt"/>
3601
- <line num="86" count="120" type="stmt"/>
3602
- <line num="87" count="336" type="stmt"/>
3609
+ <line num="86" count="124" type="stmt"/>
3610
+ <line num="87" count="344" type="stmt"/>
3603
3611
  <line num="88" count="53" type="stmt"/>
3604
3612
  <line num="91" count="45" type="stmt"/>
3605
- <line num="92" count="74" type="stmt"/>
3606
- <line num="93" count="74" type="stmt"/>
3607
- <line num="94" count="74" type="cond" truecount="2" falsecount="0"/>
3608
- <line num="95" count="47" type="stmt"/>
3613
+ <line num="92" count="76" type="stmt"/>
3614
+ <line num="93" count="76" type="stmt"/>
3615
+ <line num="94" count="76" type="cond" truecount="2" falsecount="0"/>
3616
+ <line num="95" count="49" type="stmt"/>
3609
3617
  <line num="97" count="27" type="stmt"/>
3610
3618
  <line num="98" count="27" type="cond" truecount="1" falsecount="1"/>
3611
3619
  <line num="99" count="27" type="stmt"/>
@@ -3720,19 +3728,19 @@
3720
3728
  <line num="59" count="1" type="stmt"/>
3721
3729
  <line num="61" count="1" type="stmt"/>
3722
3730
  <line num="65" count="29" type="stmt"/>
3723
- <line num="66" count="221" type="stmt"/>
3724
- <line num="68" count="221" type="cond" truecount="2" falsecount="0"/>
3731
+ <line num="66" count="223" type="stmt"/>
3732
+ <line num="68" count="223" type="cond" truecount="2" falsecount="0"/>
3725
3733
  <line num="69" count="5" type="stmt"/>
3726
- <line num="71" count="216" type="stmt"/>
3727
- <line num="72" count="216" type="stmt"/>
3728
- <line num="74" count="216" type="stmt"/>
3729
- <line num="75" count="216" type="cond" truecount="2" falsecount="0"/>
3730
- <line num="76" count="216" type="cond" truecount="1" falsecount="1"/>
3734
+ <line num="71" count="218" type="stmt"/>
3735
+ <line num="72" count="218" type="stmt"/>
3736
+ <line num="74" count="218" type="stmt"/>
3737
+ <line num="75" count="218" type="cond" truecount="2" falsecount="0"/>
3738
+ <line num="76" count="218" type="cond" truecount="1" falsecount="1"/>
3731
3739
  <line num="77" count="0" type="stmt"/>
3732
- <line num="80" count="216" type="cond" truecount="2" falsecount="0"/>
3733
- <line num="81" count="216" type="cond" truecount="2" falsecount="0"/>
3734
- <line num="83" count="216" type="cond" truecount="4" falsecount="0"/>
3735
- <line num="84" count="215" type="stmt"/>
3740
+ <line num="80" count="218" type="cond" truecount="2" falsecount="0"/>
3741
+ <line num="81" count="218" type="cond" truecount="2" falsecount="0"/>
3742
+ <line num="83" count="218" type="cond" truecount="4" falsecount="0"/>
3743
+ <line num="84" count="217" type="stmt"/>
3736
3744
  <line num="87" count="1" type="stmt"/>
3737
3745
  <line num="89" count="1" type="stmt"/>
3738
3746
  </file>
@@ -3750,59 +3758,59 @@
3750
3758
  <line num="15" count="33" type="stmt"/>
3751
3759
  <line num="16" count="33" type="stmt"/>
3752
3760
  <line num="18" count="33" type="stmt"/>
3753
- <line num="20" count="240" type="stmt"/>
3754
- <line num="22" count="240" type="stmt"/>
3755
- <line num="23" count="240" type="stmt"/>
3756
- <line num="24" count="240" type="stmt"/>
3761
+ <line num="20" count="242" type="stmt"/>
3762
+ <line num="22" count="242" type="stmt"/>
3763
+ <line num="23" count="242" type="stmt"/>
3764
+ <line num="24" count="242" type="stmt"/>
3757
3765
  <line num="26" count="0" type="stmt"/>
3758
- <line num="28" count="240" type="cond" truecount="4" falsecount="0"/>
3766
+ <line num="28" count="242" type="cond" truecount="4" falsecount="0"/>
3759
3767
  <line num="29" count="1" type="stmt"/>
3760
- <line num="32" count="239" type="cond" truecount="2" falsecount="0"/>
3761
- <line num="33" count="233" type="stmt"/>
3762
- <line num="34" count="233" type="stmt"/>
3763
- <line num="35" count="233" type="cond" truecount="1" falsecount="1"/>
3768
+ <line num="32" count="241" type="cond" truecount="2" falsecount="0"/>
3769
+ <line num="33" count="235" type="stmt"/>
3770
+ <line num="34" count="235" type="stmt"/>
3771
+ <line num="35" count="235" type="cond" truecount="1" falsecount="1"/>
3764
3772
  <line num="36" count="0" type="stmt"/>
3765
3773
  <line num="37" count="0" type="stmt"/>
3766
- <line num="40" count="233" type="cond" truecount="1" falsecount="1"/>
3767
- <line num="44" count="239" type="cond" truecount="2" falsecount="0"/>
3774
+ <line num="40" count="235" type="cond" truecount="1" falsecount="1"/>
3775
+ <line num="44" count="241" type="cond" truecount="2" falsecount="0"/>
3768
3776
  <line num="45" count="2" type="cond" truecount="1" falsecount="1"/>
3769
3777
  <line num="50" count="2" type="stmt"/>
3770
3778
  <line num="51" count="2" type="stmt"/>
3771
- <line num="56" count="237" type="stmt"/>
3772
- <line num="57" count="237" type="cond" truecount="2" falsecount="0"/>
3779
+ <line num="56" count="239" type="stmt"/>
3780
+ <line num="57" count="239" type="cond" truecount="2" falsecount="0"/>
3773
3781
  <line num="59" count="5" type="stmt"/>
3774
- <line num="60" count="232" type="cond" truecount="1" falsecount="1"/>
3775
- <line num="62" count="232" type="stmt"/>
3776
- <line num="63" count="232" type="stmt"/>
3777
- <line num="65" count="232" type="cond" truecount="2" falsecount="0"/>
3778
- <line num="69" count="232" type="cond" truecount="3" falsecount="0"/>
3779
- <line num="70" count="232" type="cond" truecount="2" falsecount="0"/>
3780
- <line num="71" count="232" type="cond" truecount="2" falsecount="0"/>
3781
- <line num="72" count="232" type="cond" truecount="4" falsecount="1"/>
3782
+ <line num="60" count="234" type="cond" truecount="1" falsecount="1"/>
3783
+ <line num="62" count="234" type="stmt"/>
3784
+ <line num="63" count="234" type="stmt"/>
3785
+ <line num="65" count="234" type="cond" truecount="2" falsecount="0"/>
3786
+ <line num="69" count="234" type="cond" truecount="3" falsecount="0"/>
3787
+ <line num="70" count="234" type="cond" truecount="2" falsecount="0"/>
3788
+ <line num="71" count="234" type="cond" truecount="2" falsecount="0"/>
3789
+ <line num="72" count="234" type="cond" truecount="4" falsecount="1"/>
3782
3790
  <line num="74" count="0" type="stmt"/>
3783
3791
  <line num="75" count="0" type="stmt"/>
3784
3792
  <line num="76" count="0" type="stmt"/>
3785
3793
  <line num="79" count="0" type="stmt"/>
3786
3794
  <line num="80" count="0" type="stmt"/>
3787
- <line num="88" count="237" type="cond" truecount="1" falsecount="1"/>
3795
+ <line num="88" count="239" type="cond" truecount="1" falsecount="1"/>
3788
3796
  <line num="89" count="0" type="stmt"/>
3789
- <line num="92" count="237" type="stmt"/>
3790
- <line num="93" count="237" type="stmt"/>
3791
- <line num="96" count="237" type="cond" truecount="1" falsecount="1"/>
3797
+ <line num="92" count="239" type="stmt"/>
3798
+ <line num="93" count="239" type="stmt"/>
3799
+ <line num="96" count="239" type="cond" truecount="1" falsecount="1"/>
3792
3800
  <line num="103" count="0" type="stmt"/>
3793
3801
  <line num="104" count="0" type="stmt"/>
3794
3802
  <line num="105" count="0" type="stmt"/>
3795
3803
  <line num="106" count="0" type="stmt"/>
3796
3804
  <line num="107" count="0" type="stmt"/>
3797
3805
  <line num="108" count="0" type="stmt"/>
3798
- <line num="111" count="237" type="stmt"/>
3799
- <line num="112" count="237" type="cond" truecount="1" falsecount="1"/>
3800
- <line num="113" count="237" type="stmt"/>
3801
- <line num="114" count="237" type="cond" truecount="2" falsecount="0"/>
3802
- <line num="115" count="237" type="stmt"/>
3803
- <line num="124" count="237" type="cond" truecount="2" falsecount="0"/>
3806
+ <line num="111" count="239" type="stmt"/>
3807
+ <line num="112" count="239" type="cond" truecount="1" falsecount="1"/>
3808
+ <line num="113" count="239" type="stmt"/>
3809
+ <line num="114" count="239" type="cond" truecount="2" falsecount="0"/>
3810
+ <line num="115" count="239" type="stmt"/>
3811
+ <line num="124" count="239" type="cond" truecount="2" falsecount="0"/>
3804
3812
  <line num="130" count="10" type="stmt"/>
3805
- <line num="133" count="237" type="stmt"/>
3813
+ <line num="133" count="239" type="stmt"/>
3806
3814
  </file>
3807
3815
  <file name="joi-validator.js" path="/home/runner/work/budibase/budibase/packages/server/src/middleware/joi-validator.js">
3808
3816
  <metrics statements="19" coveredstatements="0" conditionals="8" coveredconditionals="0" methods="4" coveredmethods="0"/>
@@ -3853,14 +3861,14 @@
3853
3861
  <line num="21" count="930" type="stmt"/>
3854
3862
  <line num="22" count="930" type="stmt"/>
3855
3863
  <line num="23" count="930" type="stmt"/>
3856
- <line num="24" count="101" type="cond" truecount="2" falsecount="0"/>
3857
- <line num="25" count="101" type="cond" truecount="2" falsecount="0"/>
3864
+ <line num="24" count="103" type="cond" truecount="2" falsecount="0"/>
3865
+ <line num="25" count="103" type="cond" truecount="2" falsecount="0"/>
3858
3866
  <line num="26" count="1" type="stmt"/>
3859
- <line num="28" count="100" type="cond" truecount="4" falsecount="0"/>
3860
- <line num="29" count="88" type="stmt"/>
3861
- <line num="31" count="100" type="cond" truecount="4" falsecount="0"/>
3867
+ <line num="28" count="102" type="cond" truecount="4" falsecount="0"/>
3868
+ <line num="29" count="90" type="stmt"/>
3869
+ <line num="31" count="102" type="cond" truecount="4" falsecount="0"/>
3862
3870
  <line num="32" count="15" type="stmt"/>
3863
- <line num="34" count="100" type="stmt"/>
3871
+ <line num="34" count="102" type="stmt"/>
3864
3872
  <line num="39" count="29" type="stmt"/>
3865
3873
  <line num="41" count="29" type="stmt"/>
3866
3874
  <line num="42" count="730" type="stmt"/>
@@ -3884,7 +3892,7 @@
3884
3892
  <metrics statements="3" coveredstatements="3" conditionals="0" coveredconditionals="0" methods="1" coveredmethods="1"/>
3885
3893
  <line num="1" count="34" type="stmt"/>
3886
3894
  <line num="5" count="34" type="stmt"/>
3887
- <line num="6" count="225" type="stmt"/>
3895
+ <line num="6" count="227" type="stmt"/>
3888
3896
  </file>
3889
3897
  </package>
3890
3898
  <package name="utilities">
@@ -3989,35 +3997,35 @@
3989
3997
  <line num="14" count="50" type="stmt"/>
3990
3998
  <line num="15" count="50" type="stmt"/>
3991
3999
  <line num="17" count="50" type="cond" truecount="1" falsecount="0"/>
3992
- <line num="18" count="241" type="cond" truecount="2" falsecount="0"/>
3993
- <line num="20" count="241" type="cond" truecount="4" falsecount="0"/>
4000
+ <line num="18" count="243" type="cond" truecount="2" falsecount="0"/>
4001
+ <line num="20" count="243" type="cond" truecount="4" falsecount="0"/>
3994
4002
  <line num="21" count="3" type="stmt"/>
3995
- <line num="24" count="238" type="cond" truecount="2" falsecount="2"/>
4003
+ <line num="24" count="240" type="cond" truecount="2" falsecount="2"/>
3996
4004
  <line num="25" count="0" type="stmt"/>
3997
4005
  <line num="26" count="0" type="stmt"/>
3998
4006
  <line num="27" count="0" type="stmt"/>
3999
4007
  <line num="28" count="0" type="stmt"/>
4000
- <line num="31" count="238" type="stmt"/>
4001
- <line num="33" count="238" type="cond" truecount="5" falsecount="0"/>
4002
- <line num="34" count="206" type="stmt"/>
4008
+ <line num="31" count="240" type="stmt"/>
4009
+ <line num="33" count="240" type="cond" truecount="5" falsecount="0"/>
4010
+ <line num="34" count="208" type="stmt"/>
4003
4011
  <line num="35" count="32" type="cond" truecount="4" falsecount="0"/>
4004
4012
  <line num="36" count="27" type="stmt"/>
4005
4013
  <line num="37" count="5" type="cond" truecount="1" falsecount="1"/>
4006
4014
  <line num="38" count="0" type="stmt"/>
4007
- <line num="41" count="238" type="stmt"/>
4008
- <line num="42" count="238" type="stmt"/>
4015
+ <line num="41" count="240" type="stmt"/>
4016
+ <line num="42" count="240" type="stmt"/>
4009
4017
  <line num="46" count="0" type="stmt"/>
4010
4018
  <line num="47" count="0" type="stmt"/>
4011
4019
  <line num="49" count="0" type="stmt"/>
4012
- <line num="53" count="234" type="cond" truecount="1" falsecount="1"/>
4013
- <line num="54" count="234" type="stmt"/>
4014
- <line num="56" count="234" type="stmt"/>
4015
- <line num="57" count="234" type="cond" truecount="3" falsecount="1"/>
4020
+ <line num="53" count="236" type="cond" truecount="1" falsecount="1"/>
4021
+ <line num="54" count="236" type="stmt"/>
4022
+ <line num="56" count="236" type="stmt"/>
4023
+ <line num="57" count="236" type="cond" truecount="3" falsecount="1"/>
4016
4024
  <line num="58" count="0" type="stmt"/>
4017
- <line num="61" count="234" type="stmt"/>
4025
+ <line num="61" count="236" type="stmt"/>
4018
4026
  <line num="64" count="50" type="stmt"/>
4019
- <line num="67" count="232" type="stmt"/>
4020
- <line num="68" count="232" type="stmt"/>
4027
+ <line num="67" count="234" type="stmt"/>
4028
+ <line num="68" count="234" type="stmt"/>
4021
4029
  <line num="71" count="50" type="stmt"/>
4022
4030
  <line num="72" count="2" type="stmt"/>
4023
4031
  <line num="73" count="2" type="stmt"/>
@@ -4294,7 +4302,7 @@
4294
4302
  <line num="75" count="8" type="stmt"/>
4295
4303
  <line num="82" count="0" type="stmt"/>
4296
4304
  <line num="91" count="0" type="stmt"/>
4297
- <line num="98" count="251" type="stmt"/>
4305
+ <line num="98" count="253" type="stmt"/>
4298
4306
  <line num="110" count="0" type="stmt"/>
4299
4307
  <line num="114" count="0" type="stmt"/>
4300
4308
  <line num="118" count="45" type="stmt"/>
@@ -4353,14 +4361,14 @@
4353
4361
  <line num="118" count="0" type="stmt"/>
4354
4362
  <line num="120" count="0" type="stmt"/>
4355
4363
  <line num="121" count="0" type="stmt"/>
4356
- <line num="140" count="83" type="cond" truecount="2" falsecount="0"/>
4357
- <line num="141" count="83" type="stmt"/>
4358
- <line num="142" count="83" type="stmt"/>
4359
- <line num="144" count="83" type="stmt"/>
4360
- <line num="147" count="83" type="cond" truecount="4" falsecount="0"/>
4361
- <line num="148" count="83" type="stmt"/>
4362
- <line num="149" count="226" type="cond" truecount="1" falsecount="1"/>
4363
- <line num="150" count="226" type="stmt"/>
4364
+ <line num="140" count="85" type="cond" truecount="2" falsecount="0"/>
4365
+ <line num="141" count="85" type="stmt"/>
4366
+ <line num="142" count="85" type="stmt"/>
4367
+ <line num="144" count="85" type="stmt"/>
4368
+ <line num="147" count="85" type="cond" truecount="4" falsecount="0"/>
4369
+ <line num="148" count="85" type="stmt"/>
4370
+ <line num="149" count="230" type="cond" truecount="1" falsecount="1"/>
4371
+ <line num="150" count="230" type="stmt"/>
4364
4372
  <line num="152" count="0" type="cond" truecount="0" falsecount="2"/>
4365
4373
  <line num="153" count="0" type="stmt"/>
4366
4374
  <line num="155" count="0" type="cond" truecount="0" falsecount="5"/>
@@ -4379,52 +4387,52 @@
4379
4387
  <line num="176" count="0" type="cond" truecount="0" falsecount="2"/>
4380
4388
  <line num="177" count="0" type="stmt"/>
4381
4389
  <line num="179" count="0" type="stmt"/>
4382
- <line num="182" count="83" type="stmt"/>
4390
+ <line num="182" count="85" type="stmt"/>
4383
4391
  <line num="184" count="45" type="stmt"/>
4384
4392
  <line num="185" count="45" type="stmt"/>
4385
4393
  <line num="186" count="45" type="stmt"/>
4386
4394
  <line num="194" count="45" type="stmt"/>
4387
- <line num="196" count="194" type="cond" truecount="1" falsecount="1"/>
4395
+ <line num="196" count="198" type="cond" truecount="1" falsecount="1"/>
4388
4396
  <line num="197" count="0" type="stmt"/>
4389
- <line num="200" count="194" type="cond" truecount="2" falsecount="0"/>
4397
+ <line num="200" count="198" type="cond" truecount="2" falsecount="0"/>
4390
4398
  <line num="201" count="16" type="stmt"/>
4391
- <line num="202" count="178" type="cond" truecount="2" falsecount="0"/>
4399
+ <line num="202" count="182" type="cond" truecount="2" falsecount="0"/>
4392
4400
  <line num="203" count="22" type="stmt"/>
4393
- <line num="206" count="156" type="stmt"/>
4401
+ <line num="206" count="160" type="stmt"/>
4394
4402
  <line num="218" count="45" type="stmt"/>
4395
- <line num="224" count="83" type="stmt"/>
4396
- <line num="226" count="83" type="stmt"/>
4397
- <line num="227" count="83" type="stmt"/>
4398
- <line num="228" count="83" type="stmt"/>
4399
- <line num="229" count="385" type="stmt"/>
4400
- <line num="231" count="385" type="cond" truecount="2" falsecount="0"/>
4401
- <line num="232" count="192" type="cond" truecount="2" falsecount="0"/>
4403
+ <line num="224" count="85" type="stmt"/>
4404
+ <line num="226" count="85" type="stmt"/>
4405
+ <line num="227" count="85" type="stmt"/>
4406
+ <line num="228" count="85" type="stmt"/>
4407
+ <line num="229" count="393" type="stmt"/>
4408
+ <line num="231" count="393" type="cond" truecount="2" falsecount="0"/>
4409
+ <line num="232" count="196" type="cond" truecount="2" falsecount="0"/>
4402
4410
  <line num="233" count="13" type="stmt"/>
4403
- <line num="235" count="192" type="stmt"/>
4404
- <line num="238" count="193" type="cond" truecount="1" falsecount="1"/>
4411
+ <line num="235" count="196" type="stmt"/>
4412
+ <line num="238" count="197" type="cond" truecount="1" falsecount="1"/>
4405
4413
  <line num="239" count="0" type="stmt"/>
4406
- <line num="243" count="193" type="stmt"/>
4407
- <line num="247" count="83" type="cond" truecount="4" falsecount="0"/>
4408
- <line num="248" count="77" type="stmt"/>
4409
- <line num="249" count="77" type="stmt"/>
4410
- <line num="253" count="83" type="stmt"/>
4414
+ <line num="243" count="197" type="stmt"/>
4415
+ <line num="247" count="85" type="cond" truecount="4" falsecount="0"/>
4416
+ <line num="248" count="79" type="stmt"/>
4417
+ <line num="249" count="79" type="stmt"/>
4418
+ <line num="253" count="85" type="stmt"/>
4411
4419
  <line num="265" count="45" type="cond" truecount="1" falsecount="0"/>
4412
- <line num="266" count="120" type="stmt"/>
4413
- <line num="267" count="120" type="cond" truecount="2" falsecount="0"/>
4414
- <line num="268" count="102" type="stmt"/>
4415
- <line num="269" count="102" type="stmt"/>
4416
- <line num="272" count="120" type="stmt"/>
4417
- <line num="275" count="120" type="stmt"/>
4418
- <line num="278" count="120" type="stmt"/>
4419
- <line num="279" count="336" type="cond" truecount="2" falsecount="0"/>
4420
+ <line num="266" count="124" type="stmt"/>
4421
+ <line num="267" count="124" type="cond" truecount="2" falsecount="0"/>
4422
+ <line num="268" count="104" type="stmt"/>
4423
+ <line num="269" count="104" type="stmt"/>
4424
+ <line num="272" count="124" type="stmt"/>
4425
+ <line num="275" count="124" type="stmt"/>
4426
+ <line num="278" count="124" type="stmt"/>
4427
+ <line num="279" count="344" type="cond" truecount="2" falsecount="0"/>
4420
4428
  <line num="280" count="8" type="stmt"/>
4421
4429
  <line num="281" count="8" type="cond" truecount="4" falsecount="0"/>
4422
4430
  <line num="282" count="2" type="stmt"/>
4423
4431
  <line num="284" count="6" type="stmt"/>
4424
4432
  <line num="285" count="2" type="stmt"/>
4425
- <line num="290" count="120" type="cond" truecount="2" falsecount="0"/>
4426
- <line num="291" count="37" type="stmt"/>
4427
- <line num="293" count="120" type="cond" truecount="2" falsecount="0"/>
4433
+ <line num="290" count="124" type="cond" truecount="2" falsecount="0"/>
4434
+ <line num="291" count="39" type="stmt"/>
4435
+ <line num="293" count="124" type="cond" truecount="2" falsecount="0"/>
4428
4436
  <line num="306" count="45" type="stmt"/>
4429
4437
  <line num="307" count="14" type="stmt"/>
4430
4438
  <line num="308" count="14" type="cond" truecount="1" falsecount="1"/>
@@ -4469,20 +4477,20 @@
4469
4477
  <line num="27" count="0" type="stmt"/>
4470
4478
  <line num="29" count="2" type="stmt"/>
4471
4479
  <line num="35" count="45" type="stmt"/>
4472
- <line num="40" count="294" type="stmt"/>
4473
- <line num="41" count="294" type="cond" truecount="2" falsecount="0"/>
4474
- <line num="42" count="174" type="stmt"/>
4475
- <line num="43" count="174" type="cond" truecount="2" falsecount="0"/>
4476
- <line num="45" count="294" type="stmt"/>
4477
- <line num="46" count="830" type="stmt"/>
4478
- <line num="47" count="830" type="cond" truecount="1" falsecount="1"/>
4479
- <line num="52" count="830" type="stmt"/>
4480
+ <line num="40" count="302" type="stmt"/>
4481
+ <line num="41" count="302" type="cond" truecount="2" falsecount="0"/>
4482
+ <line num="42" count="178" type="stmt"/>
4483
+ <line num="43" count="178" type="cond" truecount="2" falsecount="0"/>
4484
+ <line num="45" count="302" type="stmt"/>
4485
+ <line num="46" count="846" type="stmt"/>
4486
+ <line num="47" count="846" type="cond" truecount="1" falsecount="1"/>
4487
+ <line num="52" count="846" type="stmt"/>
4480
4488
  <line num="55" count="0" type="stmt"/>
4481
4489
  <line num="56" count="0" type="cond" truecount="0" falsecount="2"/>
4482
4490
  <line num="57" count="0" type="stmt"/>
4483
4491
  <line num="58" count="0" type="cond" truecount="0" falsecount="2"/>
4484
4492
  <line num="59" count="0" type="stmt"/>
4485
- <line num="66" count="294" type="cond" truecount="2" falsecount="0"/>
4493
+ <line num="66" count="302" type="cond" truecount="2" falsecount="0"/>
4486
4494
  <line num="73" count="45" type="stmt"/>
4487
4495
  <line num="74" count="0" type="stmt"/>
4488
4496
  <line num="75" count="0" type="stmt"/>