@budibase/server 0.9.173-alpha.1 → 0.9.173-alpha.2

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 (178) hide show
  1. package/builder/assets/{index.d3613b17.js → index.8a8f7849.js} +1 -1
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +189 -185
  4. package/coverage/coverage-final.json +13 -13
  5. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  6. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  7. package/coverage/lcov-report/api/controllers/application.js.html +72 -72
  8. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/component.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/hosting.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/index.html +15 -15
  17. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  18. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/query.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  26. package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
  30. package/coverage/lcov-report/api/controllers/screen.js.html +9 -9
  31. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  33. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/table/utils.js.html +1 -1
  35. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/user.js.html +3 -3
  37. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  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 +3 -3
  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/application.js.html +1 -1
  48. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  49. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/hosting.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/index.html +1 -1
  58. package/coverage/lcov-report/api/routes/index.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/static.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  75. package/coverage/lcov-report/automations/actions.js.html +1 -1
  76. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  77. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  78. package/coverage/lcov-report/automations/index.html +19 -19
  79. package/coverage/lcov-report/automations/index.js.html +1 -1
  80. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  81. package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
  82. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  83. package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
  84. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  85. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  86. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/index.html +1 -1
  89. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  97. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  98. package/coverage/lcov-report/automations/thread.js.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  100. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  101. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  102. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  105. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  106. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  107. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  108. package/coverage/lcov-report/automations/utils.js.html +28 -28
  109. package/coverage/lcov-report/constants/index.html +1 -1
  110. package/coverage/lcov-report/constants/index.js.html +1 -1
  111. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  112. package/coverage/lcov-report/constants/screens.js.html +2 -2
  113. package/coverage/lcov-report/db/client.js.html +1 -1
  114. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  115. package/coverage/lcov-report/db/index.html +1 -1
  116. package/coverage/lcov-report/db/index.js.html +1 -1
  117. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  118. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  119. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  120. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  121. package/coverage/lcov-report/db/newid.js.html +2 -2
  122. package/coverage/lcov-report/db/utils.js.html +17 -17
  123. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  124. package/coverage/lcov-report/events/index.html +1 -1
  125. package/coverage/lcov-report/events/index.js.html +1 -1
  126. package/coverage/lcov-report/events/utils.js.html +1 -1
  127. package/coverage/lcov-report/index.html +49 -49
  128. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  129. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  130. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  131. package/coverage/lcov-report/middleware/authorized.js.html +1 -1
  132. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  133. package/coverage/lcov-report/middleware/currentapp.js.html +51 -24
  134. package/coverage/lcov-report/middleware/index.html +15 -15
  135. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  136. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  137. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  138. package/coverage/lcov-report/middleware/usageQuota.js.html +1 -1
  139. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  140. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  141. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  142. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  143. package/coverage/lcov-report/utilities/global.js.html +27 -27
  144. package/coverage/lcov-report/utilities/index.html +15 -15
  145. package/coverage/lcov-report/utilities/index.js.html +4 -4
  146. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +29 -8
  147. package/coverage/lcov-report/utilities/queue/index.html +15 -15
  148. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  149. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  150. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  151. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  152. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  153. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  154. package/coverage/lcov-report/utilities/security.js.html +1 -1
  155. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  156. package/coverage/lcov-report/utilities/users.js.html +1 -1
  157. package/coverage/lcov-report/utilities/workerRequests.js.html +19 -19
  158. package/coverage/lcov.info +317 -305
  159. package/dist/api/routes/tests/utilities/TestFunctions.js +7 -9
  160. package/dist/middleware/currentapp.js +7 -1
  161. package/dist/package.json +4 -4
  162. package/dist/tests/utilities/TestConfiguration.js +34 -19
  163. package/dist/tests/utilities/controllers.js +1 -0
  164. package/dist/tsconfig.tsbuildinfo +1 -1
  165. package/dist/utilities/queue/inMemoryQueue.js +6 -0
  166. package/package.json +5 -5
  167. package/scripts/jestSetup.js +2 -0
  168. package/src/api/routes/tests/auth.spec.js +1 -2
  169. package/src/api/routes/tests/permissions.spec.js +3 -0
  170. package/src/api/routes/tests/query.spec.js +2 -2
  171. package/src/api/routes/tests/routing.spec.js +24 -8
  172. package/src/api/routes/tests/user.spec.js +1 -1
  173. package/src/api/routes/tests/utilities/TestFunctions.js +7 -9
  174. package/src/api/routes/tests/webhook.spec.js +4 -1
  175. package/src/middleware/currentapp.js +10 -1
  176. package/src/tests/utilities/TestConfiguration.js +47 -19
  177. package/src/tests/utilities/controllers.js +1 -0
  178. package/src/utilities/queue/inMemoryQueue.js +7 -0
@@ -155,7 +155,7 @@
155
155
  <div class='footer quiet pad2 space-top1 center small'>
156
156
  Code coverage generated by
157
157
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
158
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
158
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
159
159
  </div>
160
160
  </div>
161
161
  <script src="../prettify.js"></script>
@@ -73,7 +73,7 @@ module.exports = client
73
73
  <div class='footer quiet pad2 space-top1 center small'>
74
74
  Code coverage generated by
75
75
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
76
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
76
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
77
77
  </div>
78
78
  </div>
79
79
  <script src="../prettify.js"></script>
@@ -1468,7 +1468,7 @@ module.exports = LinkController
1468
1468
  <div class='footer quiet pad2 space-top1 center small'>
1469
1469
  Code coverage generated by
1470
1470
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1471
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
1471
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
1472
1472
  </div>
1473
1473
  </div>
1474
1474
  <script src="../../prettify.js"></script>
@@ -125,7 +125,7 @@
125
125
  <div class='footer quiet pad2 space-top1 center small'>
126
126
  Code coverage generated by
127
127
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
128
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
128
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
129
129
  </div>
130
130
  </div>
131
131
  <script src="../../prettify.js"></script>
@@ -742,7 +742,7 @@ exports.squashLinksToPrimaryDisplay = async (appId, table, enriched) =&gt; {
742
742
  <div class='footer quiet pad2 space-top1 center small'>
743
743
  Code coverage generated by
744
744
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
745
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
745
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
746
746
  </div>
747
747
  </div>
748
748
  <script src="../../prettify.js"></script>
@@ -412,7 +412,7 @@ exports.getRelatedTableForField = (table, fieldName) =&gt; {
412
412
  <div class='footer quiet pad2 space-top1 center small'>
413
413
  Code coverage generated by
414
414
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
415
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
415
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
416
416
  </div>
417
417
  </div>
418
418
  <script src="../../prettify.js"></script>
@@ -65,7 +65,7 @@
65
65
  <a name='L6'></a><a href='#L6'>6</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">45x</span>
66
66
  <span class="cline-any cline-neutral">&nbsp;</span>
67
67
  <span class="cline-any cline-yes">45x</span>
68
- <span class="cline-any cline-yes">610x</span>
68
+ <span class="cline-any cline-yes">803x</span>
69
69
  <span class="cline-any cline-neutral">&nbsp;</span>
70
70
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { v4 } = require("uuid")
71
71
  &nbsp;
@@ -79,7 +79,7 @@ module.exports = function () {
79
79
  <div class='footer quiet pad2 space-top1 center small'>
80
80
  Code coverage generated by
81
81
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
82
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
82
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
83
83
  </div>
84
84
  </div>
85
85
  <script src="../prettify.js"></script>
@@ -529,10 +529,10 @@
529
529
  <span class="cline-any cline-neutral">&nbsp;</span>
530
530
  <span class="cline-any cline-neutral">&nbsp;</span>
531
531
  <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-yes">48x</span>
533
- <span class="cline-any cline-yes">35x</span>
532
+ <span class="cline-any cline-yes">603x</span>
533
+ <span class="cline-any cline-yes">590x</span>
534
534
  <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-yes">48x</span>
535
+ <span class="cline-any cline-yes">603x</span>
536
536
  <span class="cline-any cline-neutral">&nbsp;</span>
537
537
  <span class="cline-any cline-neutral">&nbsp;</span>
538
538
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -581,8 +581,8 @@
581
581
  <span class="cline-any cline-neutral">&nbsp;</span>
582
582
  <span class="cline-any cline-neutral">&nbsp;</span>
583
583
  <span class="cline-any cline-yes">45x</span>
584
- <span class="cline-any cline-yes">229x</span>
585
- <span class="cline-any cline-yes">229x</span>
584
+ <span class="cline-any cline-yes">200x</span>
585
+ <span class="cline-any cline-yes">200x</span>
586
586
  <span class="cline-any cline-neutral">&nbsp;</span>
587
587
  <span class="cline-any cline-neutral">&nbsp;</span>
588
588
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -598,7 +598,7 @@
598
598
  <span class="cline-any cline-neutral">&nbsp;</span>
599
599
  <span class="cline-any cline-neutral">&nbsp;</span>
600
600
  <span class="cline-any cline-yes">45x</span>
601
- <span class="cline-any cline-yes">161x</span>
601
+ <span class="cline-any cline-yes">132x</span>
602
602
  <span class="cline-any cline-neutral">&nbsp;</span>
603
603
  <span class="cline-any cline-neutral">&nbsp;</span>
604
604
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -616,7 +616,7 @@
616
616
  <span class="cline-any cline-neutral">&nbsp;</span>
617
617
  <span class="cline-any cline-neutral">&nbsp;</span>
618
618
  <span class="cline-any cline-yes">45x</span>
619
- <span class="cline-any cline-yes">18x</span>
619
+ <span class="cline-any cline-yes">203x</span>
620
620
  <span class="cline-any cline-neutral">&nbsp;</span>
621
621
  <span class="cline-any cline-neutral">&nbsp;</span>
622
622
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -664,11 +664,11 @@
664
664
  <span class="cline-any cline-neutral">&nbsp;</span>
665
665
  <span class="cline-any cline-neutral">&nbsp;</span>
666
666
  <span class="cline-any cline-yes">45x</span>
667
- <span class="cline-any cline-yes">176x</span>
668
- <span class="cline-any cline-yes">176x</span>
667
+ <span class="cline-any cline-yes">178x</span>
668
+ <span class="cline-any cline-yes">178x</span>
669
669
  <span class="cline-any cline-no">&nbsp;</span>
670
670
  <span class="cline-any cline-neutral">&nbsp;</span>
671
- <span class="cline-any cline-yes">176x</span>
671
+ <span class="cline-any cline-yes">178x</span>
672
672
  <span class="cline-any cline-neutral">&nbsp;</span>
673
673
  <span class="cline-any cline-neutral">&nbsp;</span>
674
674
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -676,9 +676,9 @@
676
676
  <span class="cline-any cline-neutral">&nbsp;</span>
677
677
  <span class="cline-any cline-neutral">&nbsp;</span>
678
678
  <span class="cline-any cline-yes">45x</span>
679
- <span class="cline-any cline-yes">176x</span>
680
- <span class="cline-any cline-yes">176x</span>
681
- <span class="cline-any cline-yes">176x</span>
679
+ <span class="cline-any cline-yes">178x</span>
680
+ <span class="cline-any cline-yes">178x</span>
681
+ <span class="cline-any cline-yes">178x</span>
682
682
  <span class="cline-any cline-neutral">&nbsp;</span>
683
683
  <span class="cline-any cline-neutral">&nbsp;</span>
684
684
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -693,7 +693,7 @@
693
693
  <span class="cline-any cline-neutral">&nbsp;</span>
694
694
  <span class="cline-any cline-neutral">&nbsp;</span>
695
695
  <span class="cline-any cline-yes">45x</span>
696
- <span class="cline-any cline-yes">3x</span>
696
+ <span class="cline-any cline-yes">188x</span>
697
697
  <span class="cline-any cline-neutral">&nbsp;</span>
698
698
  <span class="cline-any cline-neutral">&nbsp;</span>
699
699
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -701,14 +701,14 @@
701
701
  <span class="cline-any cline-neutral">&nbsp;</span>
702
702
  <span class="cline-any cline-neutral">&nbsp;</span>
703
703
  <span class="cline-any cline-yes">45x</span>
704
- <span class="cline-any cline-yes">191x</span>
704
+ <span class="cline-any cline-yes">197x</span>
705
705
  <span class="cline-any cline-neutral">&nbsp;</span>
706
706
  <span class="cline-any cline-neutral">&nbsp;</span>
707
707
  <span class="cline-any cline-neutral">&nbsp;</span>
708
708
  <span class="cline-any cline-neutral">&nbsp;</span>
709
709
  <span class="cline-any cline-neutral">&nbsp;</span>
710
710
  <span class="cline-any cline-yes">45x</span>
711
- <span class="cline-any cline-yes">5x</span>
711
+ <span class="cline-any cline-yes">190x</span>
712
712
  <span class="cline-any cline-neutral">&nbsp;</span>
713
713
  <span class="cline-any cline-neutral">&nbsp;</span>
714
714
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1174,7 +1174,7 @@ exports.getMultiIDParams = ids =&gt; {
1174
1174
  <div class='footer quiet pad2 space-top1 center small'>
1175
1175
  Code coverage generated by
1176
1176
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1177
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
1177
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
1178
1178
  </div>
1179
1179
  </div>
1180
1180
  <script src="../prettify.js"></script>
@@ -217,7 +217,7 @@ module.exports = AutomationEmitter
217
217
  <div class='footer quiet pad2 space-top1 center small'>
218
218
  Code coverage generated by
219
219
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
220
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
220
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
221
221
  </div>
222
222
  </div>
223
223
  <script src="../prettify.js"></script>
@@ -125,7 +125,7 @@
125
125
  <div class='footer quiet pad2 space-top1 center small'>
126
126
  Code coverage generated by
127
127
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
128
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
128
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
129
129
  </div>
130
130
  </div>
131
131
  <script src="../prettify.js"></script>
@@ -154,7 +154,7 @@ module.exports = emitter
154
154
  <div class='footer quiet pad2 space-top1 center small'>
155
155
  Code coverage generated by
156
156
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
157
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
157
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
158
158
  </div>
159
159
  </div>
160
160
  <script src="../prettify.js"></script>
@@ -178,7 +178,7 @@ exports.tableEmission = ({ emitter, eventName, appId, table, metadata }) =&gt; {
178
178
  <div class='footer quiet pad2 space-top1 center small'>
179
179
  Code coverage generated by
180
180
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
181
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
181
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
182
182
  </div>
183
183
  </div>
184
184
  <script src="../prettify.js"></script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">77.47% </span>
26
+ <span class="strong">77.74% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>3094/3994</span>
28
+ <span class='fraction'>3108/3998</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">58.32% </span>
33
+ <span class="strong">58.88% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>880/1509</span>
35
+ <span class='fraction'>892/1515</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">74.2% </span>
40
+ <span class="strong">74.78% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>417/562</span>
42
+ <span class='fraction'>421/563</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">77.74% </span>
47
+ <span class="strong">78.02% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>3056/3931</span>
49
+ <span class='fraction'>3070/3935</span>
50
50
  </div>
51
51
 
52
52
 
@@ -89,17 +89,17 @@
89
89
 
90
90
  <tr>
91
91
  <td class="file medium" data-value="api/controllers"><a href="api/controllers/index.html">api/controllers</a></td>
92
- <td data-value="77.89" class="pic medium">
93
- <div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
92
+ <td data-value="78.18" class="pic medium">
93
+ <div class="chart"><div class="cover-fill" style="width: 78%"></div><div class="cover-empty" style="width: 22%"></div></div>
94
94
  </td>
95
- <td data-value="77.89" class="pct medium">77.89%</td>
96
- <td data-value="1031" class="abs medium">803/1031</td>
97
- <td data-value="54.69" class="pct medium">54.69%</td>
98
- <td data-value="320" class="abs medium">175/320</td>
95
+ <td data-value="78.18" class="pct medium">78.18%</td>
96
+ <td data-value="1031" class="abs medium">806/1031</td>
97
+ <td data-value="55.31" class="pct medium">55.31%</td>
98
+ <td data-value="320" class="abs medium">177/320</td>
99
99
  <td data-value="77.4" class="pct medium">77.4%</td>
100
100
  <td data-value="146" class="abs medium">113/146</td>
101
- <td data-value="78.13" class="pct medium">78.13%</td>
102
- <td data-value="1015" class="abs medium">793/1015</td>
101
+ <td data-value="78.42" class="pct medium">78.42%</td>
102
+ <td data-value="1015" class="abs medium">796/1015</td>
103
103
  </tr>
104
104
 
105
105
  <tr>
@@ -164,17 +164,17 @@
164
164
 
165
165
  <tr>
166
166
  <td class="file high" data-value="automations"><a href="automations/index.html">automations</a></td>
167
- <td data-value="83.33" class="pic high">
168
- <div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
167
+ <td data-value="86.51" class="pic high">
168
+ <div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
169
169
  </td>
170
- <td data-value="83.33" class="pct high">83.33%</td>
171
- <td data-value="252" class="abs high">210/252</td>
172
- <td data-value="72.64" class="pct medium">72.64%</td>
173
- <td data-value="106" class="abs medium">77/106</td>
174
- <td data-value="82.76" class="pct high">82.76%</td>
175
- <td data-value="29" class="abs high">24/29</td>
176
- <td data-value="83.33" class="pct high">83.33%</td>
177
- <td data-value="252" class="abs high">210/252</td>
170
+ <td data-value="86.51" class="pct high">86.51%</td>
171
+ <td data-value="252" class="abs high">218/252</td>
172
+ <td data-value="77.36" class="pct medium">77.36%</td>
173
+ <td data-value="106" class="abs medium">82/106</td>
174
+ <td data-value="93.1" class="pct high">93.1%</td>
175
+ <td data-value="29" class="abs high">27/29</td>
176
+ <td data-value="86.51" class="pct high">86.51%</td>
177
+ <td data-value="252" class="abs high">218/252</td>
178
178
  </tr>
179
179
 
180
180
  <tr>
@@ -284,47 +284,47 @@
284
284
 
285
285
  <tr>
286
286
  <td class="file high" data-value="middleware"><a href="middleware/index.html">middleware</a></td>
287
- <td data-value="89.76" class="pic high">
287
+ <td data-value="89.9" class="pic high">
288
288
  <div class="chart"><div class="cover-fill" style="width: 89%"></div><div class="cover-empty" style="width: 11%"></div></div>
289
289
  </td>
290
- <td data-value="89.76" class="pct high">89.76%</td>
291
- <td data-value="205" class="abs high">184/205</td>
292
- <td data-value="78.95" class="pct medium">78.95%</td>
293
- <td data-value="133" class="abs medium">105/133</td>
290
+ <td data-value="89.9" class="pct high">89.9%</td>
291
+ <td data-value="208" class="abs high">187/208</td>
292
+ <td data-value="79.86" class="pct medium">79.86%</td>
293
+ <td data-value="139" class="abs medium">111/139</td>
294
294
  <td data-value="100" class="pct high">100%</td>
295
295
  <td data-value="27" class="abs high">27/27</td>
296
- <td data-value="89.66" class="pct high">89.66%</td>
297
- <td data-value="203" class="abs high">182/203</td>
296
+ <td data-value="89.81" class="pct high">89.81%</td>
297
+ <td data-value="206" class="abs high">185/206</td>
298
298
  </tr>
299
299
 
300
300
  <tr>
301
301
  <td class="file medium" data-value="utilities"><a href="utilities/index.html">utilities</a></td>
302
- <td data-value="72.92" class="pic medium">
302
+ <td data-value="72.57" class="pic medium">
303
303
  <div class="chart"><div class="cover-fill" style="width: 72%"></div><div class="cover-empty" style="width: 28%"></div></div>
304
304
  </td>
305
- <td data-value="72.92" class="pct medium">72.92%</td>
306
- <td data-value="288" class="abs medium">210/288</td>
307
- <td data-value="56.19" class="pct medium">56.19%</td>
308
- <td data-value="105" class="abs medium">59/105</td>
305
+ <td data-value="72.57" class="pct medium">72.57%</td>
306
+ <td data-value="288" class="abs medium">209/288</td>
307
+ <td data-value="55.24" class="pct medium">55.24%</td>
308
+ <td data-value="105" class="abs medium">58/105</td>
309
309
  <td data-value="66.67" class="pct medium">66.67%</td>
310
310
  <td data-value="57" class="abs medium">38/57</td>
311
- <td data-value="72.79" class="pct medium">72.79%</td>
312
- <td data-value="283" class="abs medium">206/283</td>
311
+ <td data-value="72.44" class="pct medium">72.44%</td>
312
+ <td data-value="283" class="abs medium">205/283</td>
313
313
  </tr>
314
314
 
315
315
  <tr>
316
316
  <td class="file high" data-value="utilities/queue"><a href="utilities/queue/index.html">utilities/queue</a></td>
317
- <td data-value="89.47" class="pic high">
318
- <div class="chart"><div class="cover-fill" style="width: 89%"></div><div class="cover-empty" style="width: 11%"></div></div>
317
+ <td data-value="90" class="pic high">
318
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
319
319
  </td>
320
- <td data-value="89.47" class="pct high">89.47%</td>
321
- <td data-value="19" class="abs high">17/19</td>
320
+ <td data-value="90" class="pct high">90%</td>
321
+ <td data-value="20" class="abs high">18/20</td>
322
322
  <td data-value="57.14" class="pct medium">57.14%</td>
323
323
  <td data-value="7" class="abs medium">4/7</td>
324
- <td data-value="83.33" class="pct high">83.33%</td>
325
- <td data-value="6" class="abs high">5/6</td>
326
- <td data-value="89.47" class="pct high">89.47%</td>
327
- <td data-value="19" class="abs high">17/19</td>
324
+ <td data-value="85.71" class="pct high">85.71%</td>
325
+ <td data-value="7" class="abs high">6/7</td>
326
+ <td data-value="90" class="pct high">90%</td>
327
+ <td data-value="20" class="abs high">18/20</td>
328
328
  </tr>
329
329
 
330
330
  <tr>
@@ -365,7 +365,7 @@
365
365
  <div class='footer quiet pad2 space-top1 center small'>
366
366
  Code coverage generated by
367
367
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
368
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
368
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
369
369
  </div>
370
370
  </div>
371
371
  <script src="prettify.js"></script>
@@ -64,7 +64,7 @@
64
64
  <div class='footer quiet pad2 space-top1 center small'>
65
65
  Code coverage generated by
66
66
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
67
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
67
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
68
68
  </div>
69
69
  </div>
70
70
  <script src="../../prettify.js"></script>
@@ -95,7 +95,7 @@
95
95
  <div class='footer quiet pad2 space-top1 center small'>
96
96
  Code coverage generated by
97
97
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
98
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
98
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
99
99
  </div>
100
100
  </div>
101
101
  <script src="../../prettify.js"></script>
@@ -121,7 +121,7 @@ exports.middleware =
121
121
  <div class='footer quiet pad2 space-top1 center small'>
122
122
  Code coverage generated by
123
123
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
124
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
124
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
125
125
  </div>
126
126
  </div>
127
127
  <script src="../prettify.js"></script>
@@ -259,7 +259,7 @@ module.exports =
259
259
  <div class='footer quiet pad2 space-top1 center small'>
260
260
  Code coverage generated by
261
261
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
262
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
262
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
263
263
  </div>
264
264
  </div>
265
265
  <script src="../prettify.js"></script>
@@ -289,7 +289,7 @@ module.exports = async (ctx, permType) =&gt; {
289
289
  <div class='footer quiet pad2 space-top1 center small'>
290
290
  Code coverage generated by
291
291
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
292
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
292
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
293
293
  </div>
294
294
  </div>
295
295
  <script src="../prettify.js"></script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">81.63% </span>
26
+ <span class="strong">82.69% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>40/49</span>
28
+ <span class='fraction'>43/52</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">73.53% </span>
33
+ <span class="strong">77.5% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>25/34</span>
35
+ <span class='fraction'>31/40</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">81.63% </span>
47
+ <span class="strong">82.69% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>40/49</span>
49
+ <span class='fraction'>43/52</span>
50
50
  </div>
51
51
 
52
52
 
@@ -153,7 +153,16 @@
153
153
  <a name='L94'></a><a href='#L94'>94</a>
154
154
  <a name='L95'></a><a href='#L95'>95</a>
155
155
  <a name='L96'></a><a href='#L96'>96</a>
156
- <a name='L97'></a><a href='#L97'>97</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
156
+ <a name='L97'></a><a href='#L97'>97</a>
157
+ <a name='L98'></a><a href='#L98'>98</a>
158
+ <a name='L99'></a><a href='#L99'>99</a>
159
+ <a name='L100'></a><a href='#L100'>100</a>
160
+ <a name='L101'></a><a href='#L101'>101</a>
161
+ <a name='L102'></a><a href='#L102'>102</a>
162
+ <a name='L103'></a><a href='#L103'>103</a>
163
+ <a name='L104'></a><a href='#L104'>104</a>
164
+ <a name='L105'></a><a href='#L105'>105</a>
165
+ <a name='L106'></a><a href='#L106'>106</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
157
166
  <span class="cline-any cline-yes">28x</span>
158
167
  <span class="cline-any cline-yes">28x</span>
159
168
  <span class="cline-any cline-yes">28x</span>
@@ -167,40 +176,49 @@
167
176
  <span class="cline-any cline-neutral">&nbsp;</span>
168
177
  <span class="cline-any cline-yes">28x</span>
169
178
  <span class="cline-any cline-neutral">&nbsp;</span>
170
- <span class="cline-any cline-yes">158x</span>
179
+ <span class="cline-any cline-yes">160x</span>
171
180
  <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-yes">158x</span>
173
- <span class="cline-any cline-yes">158x</span>
174
- <span class="cline-any cline-yes">158x</span>
181
+ <span class="cline-any cline-yes">160x</span>
182
+ <span class="cline-any cline-yes">160x</span>
183
+ <span class="cline-any cline-yes">160x</span>
175
184
  <span class="cline-any cline-neutral">&nbsp;</span>
176
185
  <span class="cline-any cline-no">&nbsp;</span>
177
186
  <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-yes">158x</span>
187
+ <span class="cline-any cline-yes">160x</span>
179
188
  <span class="cline-any cline-yes">1x</span>
180
189
  <span class="cline-any cline-neutral">&nbsp;</span>
181
190
  <span class="cline-any cline-neutral">&nbsp;</span>
182
- <span class="cline-any cline-yes">157x</span>
183
- <span class="cline-any cline-yes">152x</span>
184
- <span class="cline-any cline-yes">152x</span>
185
- <span class="cline-any cline-yes">152x</span>
191
+ <span class="cline-any cline-yes">159x</span>
192
+ <span class="cline-any cline-yes">153x</span>
193
+ <span class="cline-any cline-yes">153x</span>
194
+ <span class="cline-any cline-yes">153x</span>
186
195
  <span class="cline-any cline-no">&nbsp;</span>
187
196
  <span class="cline-any cline-no">&nbsp;</span>
188
197
  <span class="cline-any cline-neutral">&nbsp;</span>
189
198
  <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-yes">152x</span>
199
+ <span class="cline-any cline-yes">153x</span>
200
+ <span class="cline-any cline-neutral">&nbsp;</span>
201
+ <span class="cline-any cline-neutral">&nbsp;</span>
202
+ <span class="cline-any cline-neutral">&nbsp;</span>
203
+ <span class="cline-any cline-yes">159x</span>
204
+ <span class="cline-any cline-neutral">&nbsp;</span>
205
+ <span class="cline-any cline-neutral">&nbsp;</span>
206
+ <span class="cline-any cline-neutral">&nbsp;</span>
207
+ <span class="cline-any cline-yes">2x</span>
208
+ <span class="cline-any cline-yes">2x</span>
191
209
  <span class="cline-any cline-neutral">&nbsp;</span>
192
210
  <span class="cline-any cline-neutral">&nbsp;</span>
193
211
  <span class="cline-any cline-neutral">&nbsp;</span>
194
212
  <span class="cline-any cline-yes">157x</span>
195
213
  <span class="cline-any cline-yes">157x</span>
196
214
  <span class="cline-any cline-neutral">&nbsp;</span>
197
- <span class="cline-any cline-yes">5x</span>
198
- <span class="cline-any cline-yes">152x</span>
215
+ <span class="cline-any cline-yes">33x</span>
216
+ <span class="cline-any cline-yes">124x</span>
199
217
  <span class="cline-any cline-neutral">&nbsp;</span>
200
- <span class="cline-any cline-yes">152x</span>
201
- <span class="cline-any cline-yes">152x</span>
218
+ <span class="cline-any cline-yes">124x</span>
219
+ <span class="cline-any cline-yes">124x</span>
202
220
  <span class="cline-any cline-neutral">&nbsp;</span>
203
- <span class="cline-any cline-yes">152x</span>
221
+ <span class="cline-any cline-yes">124x</span>
204
222
  <span class="cline-any cline-neutral">&nbsp;</span>
205
223
  <span class="cline-any cline-neutral">&nbsp;</span>
206
224
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -254,7 +272,7 @@
254
272
  const { Cookies } = require("@budibase/auth").constants
255
273
  const { getRole } = require("@budibase/auth/roles")
256
274
  const { BUILTIN_ROLE_IDS } = require("@budibase/auth/roles")
257
- const { generateUserMetadataID } = require("../db/utils")
275
+ const { generateUserMetadataID, isDevAppID } = require("../db/utils")
258
276
  const { dbExists } = require("@budibase/auth/db")
259
277
  const { isUserInAppTenant } = require("@budibase/auth/tenancy")
260
278
  const { getCachedSelf } = require("../utilities/global")
@@ -285,6 +303,15 @@ module.exports = async (ctx, next) =&gt; {
285
303
  // if the request app ID wasn't set, update it with the cookie
286
304
  requestAppId = requestAppId || <span class="branch-1 cbranch-no" title="branch not covered" >appId</span>
287
305
  }
306
+ &nbsp;
307
+ // deny access to application preview
308
+ if (
309
+ isDevAppID(requestAppId) &amp;&amp;
310
+ (!ctx.user || !ctx.user.builder || !ctx.user.builder.global)
311
+ ) {
312
+ clearCookie(ctx, Cookies.CurrentApp)
313
+ return ctx.redirect("/")
314
+ }
288
315
  &nbsp;
289
316
  let appId,
290
317
  roleId = BUILTIN_ROLE_IDS.PUBLIC
@@ -352,7 +379,7 @@ module.exports = async (ctx, next) =&gt; {
352
379
  <div class='footer quiet pad2 space-top1 center small'>
353
380
  Code coverage generated by
354
381
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
355
- at Tue Oct 26 2021 15:24:44 GMT+0000 (Coordinated Universal Time)
382
+ at Wed Oct 27 2021 08:59:08 GMT+0000 (Coordinated Universal Time)
356
383
  </div>
357
384
  </div>
358
385
  <script src="../prettify.js"></script>