@budibase/server 0.9.185-alpha.12 → 0.9.185-alpha.16

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 (203) hide show
  1. package/Dockerfile +7 -1
  2. package/__mocks__/oracledb.ts +31 -0
  3. package/builder/assets/{index.4a7c5636.css → index.67ac3a72.css} +1 -1
  4. package/builder/assets/{index.708945dd.js → index.b14b663d.js} +181 -179
  5. package/builder/assets/oracle.66592424.png +0 -0
  6. package/builder/index.html +2 -2
  7. package/coverage/clover.xml +266 -244
  8. package/coverage/coverage-final.json +8 -8
  9. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/application.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/component.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/datasource.js.html +102 -18
  18. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/hosting.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/index.html +19 -19
  21. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/query.js.html +1 -1
  26. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  30. package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  35. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/table/external.js.html +29 -8
  37. package/coverage/lcov-report/api/controllers/table/index.html +13 -13
  38. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/table/internal.js.html +1 -1
  40. package/coverage/lcov-report/api/controllers/table/utils.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  44. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  45. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  46. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  47. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  48. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  49. package/coverage/lcov-report/api/index.html +1 -1
  50. package/coverage/lcov-report/api/index.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/hosting.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/index.html +1 -1
  64. package/coverage/lcov-report/api/routes/index.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/static.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  81. package/coverage/lcov-report/automations/actions.js.html +1 -1
  82. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  83. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  84. package/coverage/lcov-report/automations/index.html +1 -1
  85. package/coverage/lcov-report/automations/index.js.html +1 -1
  86. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/index.html +1 -1
  95. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  97. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  98. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  99. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  100. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  101. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  102. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  103. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  105. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  106. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  107. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  108. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  109. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  111. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  112. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  113. package/coverage/lcov-report/automations/utils.js.html +1 -1
  114. package/coverage/lcov-report/constants/index.html +5 -5
  115. package/coverage/lcov-report/constants/index.js.html +44 -23
  116. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  117. package/coverage/lcov-report/constants/screens.js.html +1 -1
  118. package/coverage/lcov-report/db/client.js.html +1 -1
  119. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  120. package/coverage/lcov-report/db/index.html +1 -1
  121. package/coverage/lcov-report/db/index.js.html +1 -1
  122. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  123. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  124. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  125. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  126. package/coverage/lcov-report/db/newid.js.html +3 -3
  127. package/coverage/lcov-report/db/utils.js.html +57 -57
  128. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  129. package/coverage/lcov-report/events/index.html +1 -1
  130. package/coverage/lcov-report/events/index.js.html +1 -1
  131. package/coverage/lcov-report/events/utils.js.html +1 -1
  132. package/coverage/lcov-report/index.html +37 -37
  133. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  134. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  135. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  136. package/coverage/lcov-report/middleware/authorized.js.html +1 -1
  137. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  138. package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
  139. package/coverage/lcov-report/middleware/index.html +1 -1
  140. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  141. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  142. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  143. package/coverage/lcov-report/middleware/usageQuota.js.html +1 -1
  144. package/coverage/lcov-report/middleware/utils.js.html +1 -1
  145. package/coverage/lcov-report/threads/automation.js.html +14 -8
  146. package/coverage/lcov-report/threads/index.html +27 -27
  147. package/coverage/lcov-report/threads/index.js.html +29 -11
  148. package/coverage/lcov-report/threads/query.js.html +16 -7
  149. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  150. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  151. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  152. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  153. package/coverage/lcov-report/utilities/global.js.html +1 -1
  154. package/coverage/lcov-report/utilities/index.html +1 -1
  155. package/coverage/lcov-report/utilities/index.js.html +1 -1
  156. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  157. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  158. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  159. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  160. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  161. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  162. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  163. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  164. package/coverage/lcov-report/utilities/security.js.html +1 -1
  165. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  166. package/coverage/lcov-report/utilities/users.js.html +1 -1
  167. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  168. package/coverage/lcov.info +380 -336
  169. package/dist/api/controllers/datasource.js +25 -5
  170. package/dist/api/controllers/table/external.js +8 -1
  171. package/dist/constants/index.js +6 -0
  172. package/dist/definitions/datasource.js +1 -0
  173. package/dist/environment.js +13 -0
  174. package/dist/integrations/base/sql.js +4 -0
  175. package/dist/integrations/index.js +6 -0
  176. package/dist/integrations/oracle.js +345 -0
  177. package/dist/integrations/utils.js +17 -2
  178. package/dist/package.json +8 -4
  179. package/dist/threads/automation.js +3 -1
  180. package/dist/threads/index.js +9 -3
  181. package/dist/threads/query.js +3 -0
  182. package/dist/tsconfig.tsbuildinfo +1 -1
  183. package/package.json +9 -5
  184. package/scripts/dev/manage.js +1 -0
  185. package/scripts/integrations/oracle/docker-compose.yml +19 -0
  186. package/scripts/integrations/oracle/instantclient/linux/x86-64/basiclite-21.4.zip +0 -0
  187. package/scripts/integrations/oracle/instantclient/linux/x86-64/install.sh +23 -0
  188. package/scripts/integrations/oracle/oracle.md +90 -0
  189. package/scripts/integrations/postgres/docker-compose.yml +3 -3
  190. package/src/api/controllers/datasource.js +35 -7
  191. package/src/api/controllers/table/external.js +8 -1
  192. package/src/constants/index.js +7 -0
  193. package/src/definitions/datasource.ts +1 -0
  194. package/src/environment.js +15 -0
  195. package/src/integrations/base/IntegrationBase.ts +4 -4
  196. package/src/integrations/base/sql.ts +3 -0
  197. package/src/integrations/index.ts +7 -0
  198. package/src/integrations/oracle.ts +445 -0
  199. package/src/integrations/tests/oracle.spec.js +94 -0
  200. package/src/integrations/utils.ts +16 -2
  201. package/src/threads/automation.js +3 -1
  202. package/src/threads/index.js +9 -3
  203. package/src/threads/query.js +3 -0
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">73.91% </span>
26
+ <span class="strong">73.67% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>3258/4408</span>
28
+ <span class='fraction'>3264/4430</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">54.76% </span>
33
+ <span class="strong">54.36% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>937/1711</span>
35
+ <span class='fraction'>940/1729</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">71.42% </span>
40
+ <span class="strong">71.19% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>440/616</span>
42
+ <span class='fraction'>440/618</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">74.11% </span>
47
+ <span class="strong">73.88% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>3219/4343</span>
49
+ <span class='fraction'>3225/4365</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="72.62" class="pic medium">
93
- <div class="chart"><div class="cover-fill" style="width: 72%"></div><div class="cover-empty" style="width: 28%"></div></div>
92
+ <td data-value="71.85" class="pic medium">
93
+ <div class="chart"><div class="cover-fill" style="width: 71%"></div><div class="cover-empty" style="width: 29%"></div></div>
94
94
  </td>
95
- <td data-value="72.62" class="pct medium">72.62%</td>
96
- <td data-value="1118" class="abs medium">812/1118</td>
97
- <td data-value="47.63" class="pct low">47.63%</td>
98
- <td data-value="359" class="abs low">171/359</td>
99
- <td data-value="72.84" class="pct medium">72.84%</td>
100
- <td data-value="151" class="abs medium">110/151</td>
101
- <td data-value="72.82" class="pct medium">72.82%</td>
102
- <td data-value="1104" class="abs medium">804/1104</td>
95
+ <td data-value="71.85" class="pct medium">71.85%</td>
96
+ <td data-value="1130" class="abs medium">812/1130</td>
97
+ <td data-value="46.59" class="pct low">46.59%</td>
98
+ <td data-value="367" class="abs low">171/367</td>
99
+ <td data-value="71.89" class="pct medium">71.89%</td>
100
+ <td data-value="153" class="abs medium">110/153</td>
101
+ <td data-value="72.04" class="pct medium">72.04%</td>
102
+ <td data-value="1116" class="abs medium">804/1116</td>
103
103
  </tr>
104
104
 
105
105
  <tr>
@@ -119,17 +119,17 @@
119
119
 
120
120
  <tr>
121
121
  <td class="file medium" data-value="api/controllers/table"><a href="api/controllers/table/index.html">api/controllers/table</a></td>
122
- <td data-value="51.74" class="pic medium">
122
+ <td data-value="51.27" class="pic medium">
123
123
  <div class="chart"><div class="cover-fill" style="width: 51%"></div><div class="cover-empty" style="width: 49%"></div></div>
124
124
  </td>
125
- <td data-value="51.74" class="pct medium">51.74%</td>
126
- <td data-value="429" class="abs medium">222/429</td>
127
- <td data-value="38.35" class="pct low">38.35%</td>
128
- <td data-value="219" class="abs low">84/219</td>
125
+ <td data-value="51.27" class="pct medium">51.27%</td>
126
+ <td data-value="433" class="abs medium">222/433</td>
127
+ <td data-value="37.33" class="pct low">37.33%</td>
128
+ <td data-value="225" class="abs low">84/225</td>
129
129
  <td data-value="48.21" class="pct low">48.21%</td>
130
130
  <td data-value="56" class="abs low">27/56</td>
131
- <td data-value="52.25" class="pct medium">52.25%</td>
132
- <td data-value="421" class="abs medium">220/421</td>
131
+ <td data-value="51.76" class="pct medium">51.76%</td>
132
+ <td data-value="425" class="abs medium">220/425</td>
133
133
  </tr>
134
134
 
135
135
  <tr>
@@ -213,13 +213,13 @@
213
213
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
214
214
  </td>
215
215
  <td data-value="100" class="pct high">100%</td>
216
- <td data-value="28" class="abs high">28/28</td>
216
+ <td data-value="29" class="abs high">29/29</td>
217
217
  <td data-value="100" class="pct high">100%</td>
218
218
  <td data-value="0" class="abs high">0/0</td>
219
219
  <td data-value="100" class="pct high">100%</td>
220
220
  <td data-value="1" class="abs high">1/1</td>
221
221
  <td data-value="100" class="pct high">100%</td>
222
- <td data-value="27" class="abs high">27/27</td>
222
+ <td data-value="28" class="abs high">28/28</td>
223
223
  </tr>
224
224
 
225
225
  <tr>
@@ -298,18 +298,18 @@
298
298
  </tr>
299
299
 
300
300
  <tr>
301
- <td class="file medium" data-value="threads"><a href="threads/index.html">threads</a></td>
302
- <td data-value="79.38" class="pic medium">
303
- <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
301
+ <td class="file high" data-value="threads"><a href="threads/index.html">threads</a></td>
302
+ <td data-value="80.14" class="pic high">
303
+ <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
304
304
  </td>
305
- <td data-value="79.38" class="pct medium">79.38%</td>
306
- <td data-value="131" class="abs medium">104/131</td>
307
- <td data-value="55.1" class="pct medium">55.1%</td>
308
- <td data-value="49" class="abs medium">27/49</td>
305
+ <td data-value="80.14" class="pct high">80.14%</td>
306
+ <td data-value="136" class="abs high">109/136</td>
307
+ <td data-value="56.6" class="pct medium">56.6%</td>
308
+ <td data-value="53" class="abs medium">30/53</td>
309
309
  <td data-value="90.9" class="pct high">90.9%</td>
310
310
  <td data-value="22" class="abs high">20/22</td>
311
- <td data-value="79.84" class="pct medium">79.84%</td>
312
- <td data-value="129" class="abs medium">103/129</td>
311
+ <td data-value="80.59" class="pct high">80.59%</td>
312
+ <td data-value="134" class="abs high">108/134</td>
313
313
  </tr>
314
314
 
315
315
  <tr>
@@ -380,7 +380,7 @@
380
380
  <div class='footer quiet pad2 space-top1 center small'>
381
381
  Code coverage generated by
382
382
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
383
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
383
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
384
384
  </div>
385
385
  </div>
386
386
  <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 Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
67
+ at Tue Nov 23 2021 15:21:59 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 Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
98
+ at Tue Nov 23 2021 15:21:59 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 Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
124
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
125
125
  </div>
126
126
  </div>
127
127
  <script src="../prettify.js"></script>
@@ -253,7 +253,7 @@ module.exports =
253
253
  <div class='footer quiet pad2 space-top1 center small'>
254
254
  Code coverage generated by
255
255
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
256
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
256
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
257
257
  </div>
258
258
  </div>
259
259
  <script src="../prettify.js"></script>
@@ -298,7 +298,7 @@ module.exports = async (ctx, permType) =&gt; {
298
298
  <div class='footer quiet pad2 space-top1 center small'>
299
299
  Code coverage generated by
300
300
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
301
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
301
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
302
302
  </div>
303
303
  </div>
304
304
  <script src="../prettify.js"></script>
@@ -385,7 +385,7 @@ module.exports = async (ctx, next) =&gt; {
385
385
  <div class='footer quiet pad2 space-top1 center small'>
386
386
  Code coverage generated by
387
387
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
388
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
388
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
389
389
  </div>
390
390
  </div>
391
391
  <script src="../prettify.js"></script>
@@ -215,7 +215,7 @@
215
215
  <div class='footer quiet pad2 space-top1 center small'>
216
216
  Code coverage generated by
217
217
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
218
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
218
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
219
219
  </div>
220
220
  </div>
221
221
  <script src="../prettify.js"></script>
@@ -148,7 +148,7 @@ module.exports.params = schema =&gt; {
148
148
  <div class='footer quiet pad2 space-top1 center small'>
149
149
  Code coverage generated by
150
150
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
151
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
151
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
152
152
  </div>
153
153
  </div>
154
154
  <script src="../prettify.js"></script>
@@ -247,7 +247,7 @@ module.exports.bodySubResource = (main, sub) =&gt; {
247
247
  <div class='footer quiet pad2 space-top1 center small'>
248
248
  Code coverage generated by
249
249
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
250
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
250
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
251
251
  </div>
252
252
  </div>
253
253
  <script src="../prettify.js"></script>
@@ -94,7 +94,7 @@ module.exports = async (ctx, next) =&gt; {
94
94
  <div class='footer quiet pad2 space-top1 center small'>
95
95
  Code coverage generated by
96
96
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
97
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
97
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
98
98
  </div>
99
99
  </div>
100
100
  <script src="../prettify.js"></script>
@@ -328,7 +328,7 @@ module.exports = async (ctx, next) =&gt; {
328
328
  <div class='footer quiet pad2 space-top1 center small'>
329
329
  Code coverage generated by
330
330
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
331
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
331
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
332
332
  </div>
333
333
  </div>
334
334
  <script src="../prettify.js"></script>
@@ -85,7 +85,7 @@ exports.isWebhookEndpoint = ctx =&gt; {
85
85
  <div class='footer quiet pad2 space-top1 center small'>
86
86
  Code coverage generated by
87
87
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
88
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
88
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
89
89
  </div>
90
90
  </div>
91
91
  <script src="../prettify.js"></script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">84% </span>
26
+ <span class="strong">84.21% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>63/75</span>
28
+ <span class='fraction'>64/76</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">84% </span>
47
+ <span class="strong">84.21% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>63/75</span>
49
+ <span class='fraction'>64/76</span>
50
50
  </div>
51
51
 
52
52
 
@@ -202,7 +202,11 @@
202
202
  <a name='L143'></a><a href='#L143'>143</a>
203
203
  <a name='L144'></a><a href='#L144'>144</a>
204
204
  <a name='L145'></a><a href='#L145'>145</a>
205
- <a name='L146'></a><a href='#L146'>146</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
205
+ <a name='L146'></a><a href='#L146'>146</a>
206
+ <a name='L147'></a><a href='#L147'>147</a>
207
+ <a name='L148'></a><a href='#L148'>148</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
208
+ <span class="cline-any cline-yes">4x</span>
209
+ <span class="cline-any cline-yes">4x</span>
206
210
  <span class="cline-any cline-yes">4x</span>
207
211
  <span class="cline-any cline-yes">4x</span>
208
212
  <span class="cline-any cline-yes">4x</span>
@@ -347,7 +351,10 @@
347
351
  <span class="cline-any cline-no">&nbsp;</span>
348
352
  <span class="cline-any cline-neutral">&nbsp;</span>
349
353
  <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const actions = require("../automations/actions")
354
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// when thread starts, make sure it is recorded
355
+ const env = require("../environment")
356
+ env.setInThread()
357
+ const actions = require("../automations/actions")
351
358
  const automationUtils = require("../automations/automationUtils")
352
359
  const AutomationEmitter = require("../events/AutomationEmitter")
353
360
  const { processObject } = require("@budibase/string-templates")
@@ -355,7 +362,6 @@ const { DEFAULT_TENANT_ID } = require("@budibase/auth").constants
355
362
  const CouchDB = require("../db")
356
363
  const { DocumentTypes, isDevAppID } = require("../db/utils")
357
364
  const { doInTenant } = require("@budibase/auth/tenancy")
358
- const env = require("../environment")
359
365
  const usage = require("../utilities/usageQuota")
360
366
  const { definitions: triggerDefs } = require("../automations/triggerInfo")
361
367
  &nbsp;
@@ -499,7 +505,7 @@ module.exports = (input, callback) =&gt; {
499
505
  <div class='footer quiet pad2 space-top1 center small'>
500
506
  Code coverage generated by
501
507
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
502
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
508
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
503
509
  </div>
504
510
  </div>
505
511
  <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">79.38% </span>
26
+ <span class="strong">80.14% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>104/131</span>
28
+ <span class='fraction'>109/136</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">55.1% </span>
33
+ <span class="strong">56.6% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>27/49</span>
35
+ <span class='fraction'>30/53</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">79.84% </span>
47
+ <span class="strong">80.59% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>103/129</span>
49
+ <span class='fraction'>108/134</span>
50
50
  </div>
51
51
 
52
52
 
@@ -55,7 +55,7 @@
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
57
  </div>
58
- <div class='status-line medium'></div>
58
+ <div class='status-line high'></div>
59
59
  <div class="pad1">
60
60
  <table class="coverage-summary">
61
61
  <thead>
@@ -74,47 +74,47 @@
74
74
  </thead>
75
75
  <tbody><tr>
76
76
  <td class="file high" data-value="automation.js"><a href="automation.js.html">automation.js</a></td>
77
- <td data-value="84" class="pic high">
77
+ <td data-value="84.21" class="pic high">
78
78
  <div class="chart"><div class="cover-fill" style="width: 84%"></div><div class="cover-empty" style="width: 16%"></div></div>
79
79
  </td>
80
- <td data-value="84" class="pct high">84%</td>
81
- <td data-value="75" class="abs high">63/75</td>
80
+ <td data-value="84.21" class="pct high">84.21%</td>
81
+ <td data-value="76" class="abs high">64/76</td>
82
82
  <td data-value="56.52" class="pct medium">56.52%</td>
83
83
  <td data-value="23" class="abs medium">13/23</td>
84
84
  <td data-value="90" class="pct high">90%</td>
85
85
  <td data-value="10" class="abs high">9/10</td>
86
- <td data-value="84" class="pct high">84%</td>
87
- <td data-value="75" class="abs high">63/75</td>
86
+ <td data-value="84.21" class="pct high">84.21%</td>
87
+ <td data-value="76" class="abs high">64/76</td>
88
88
  </tr>
89
89
 
90
90
  <tr>
91
91
  <td class="file medium" data-value="index.js"><a href="index.js.html">index.js</a></td>
92
- <td data-value="77.77" 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="79.31" class="pic medium">
93
+ <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
94
94
  </td>
95
- <td data-value="77.77" class="pct medium">77.77%</td>
96
- <td data-value="27" class="abs medium">21/27</td>
97
- <td data-value="50" class="pct medium">50%</td>
98
- <td data-value="14" class="abs medium">7/14</td>
95
+ <td data-value="79.31" class="pct medium">79.31%</td>
96
+ <td data-value="29" class="abs medium">23/29</td>
97
+ <td data-value="55.55" class="pct medium">55.55%</td>
98
+ <td data-value="18" class="abs medium">10/18</td>
99
99
  <td data-value="100" class="pct high">100%</td>
100
100
  <td data-value="5" class="abs high">5/5</td>
101
- <td data-value="77.77" class="pct medium">77.77%</td>
102
- <td data-value="27" class="abs medium">21/27</td>
101
+ <td data-value="79.31" class="pct medium">79.31%</td>
102
+ <td data-value="29" class="abs medium">23/29</td>
103
103
  </tr>
104
104
 
105
105
  <tr>
106
106
  <td class="file medium" data-value="query.js"><a href="query.js.html">query.js</a></td>
107
- <td data-value="68.96" class="pic medium">
108
- <div class="chart"><div class="cover-fill" style="width: 68%"></div><div class="cover-empty" style="width: 32%"></div></div>
107
+ <td data-value="70.96" class="pic medium">
108
+ <div class="chart"><div class="cover-fill" style="width: 70%"></div><div class="cover-empty" style="width: 30%"></div></div>
109
109
  </td>
110
- <td data-value="68.96" class="pct medium">68.96%</td>
111
- <td data-value="29" class="abs medium">20/29</td>
110
+ <td data-value="70.96" class="pct medium">70.96%</td>
111
+ <td data-value="31" class="abs medium">22/31</td>
112
112
  <td data-value="58.33" class="pct medium">58.33%</td>
113
113
  <td data-value="12" class="abs medium">7/12</td>
114
114
  <td data-value="85.71" class="pct high">85.71%</td>
115
115
  <td data-value="7" class="abs high">6/7</td>
116
- <td data-value="70.37" class="pct medium">70.37%</td>
117
- <td data-value="27" class="abs medium">19/27</td>
116
+ <td data-value="72.41" class="pct medium">72.41%</td>
117
+ <td data-value="29" class="abs medium">21/29</td>
118
118
  </tr>
119
119
 
120
120
  </tbody>
@@ -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 Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
128
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
129
129
  </div>
130
130
  </div>
131
131
  <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">77.77% </span>
26
+ <span class="strong">79.31% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>21/27</span>
28
+ <span class='fraction'>23/29</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">50% </span>
33
+ <span class="strong">55.55% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>7/14</span>
35
+ <span class='fraction'>10/18</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">77.77% </span>
47
+ <span class="strong">79.31% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>21/27</span>
49
+ <span class='fraction'>23/29</span>
50
50
  </div>
51
51
 
52
52
 
@@ -117,7 +117,13 @@
117
117
  <a name='L58'></a><a href='#L58'>58</a>
118
118
  <a name='L59'></a><a href='#L59'>59</a>
119
119
  <a name='L60'></a><a href='#L60'>60</a>
120
- <a name='L61'></a><a href='#L61'>61</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
120
+ <a name='L61'></a><a href='#L61'>61</a>
121
+ <a name='L62'></a><a href='#L62'>62</a>
122
+ <a name='L63'></a><a href='#L63'>63</a>
123
+ <a name='L64'></a><a href='#L64'>64</a>
124
+ <a name='L65'></a><a href='#L65'>65</a>
125
+ <a name='L66'></a><a href='#L66'>66</a>
126
+ <a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
121
127
  <span class="cline-any cline-yes">34x</span>
122
128
  <span class="cline-any cline-neutral">&nbsp;</span>
123
129
  <span class="cline-any cline-yes">34x</span>
@@ -144,6 +150,12 @@
144
150
  <span class="cline-any cline-neutral">&nbsp;</span>
145
151
  <span class="cline-any cline-yes">67x</span>
146
152
  <span class="cline-any cline-yes">67x</span>
153
+ <span class="cline-any cline-yes">67x</span>
154
+ <span class="cline-any cline-neutral">&nbsp;</span>
155
+ <span class="cline-any cline-neutral">&nbsp;</span>
156
+ <span class="cline-any cline-neutral">&nbsp;</span>
157
+ <span class="cline-any cline-neutral">&nbsp;</span>
158
+ <span class="cline-any cline-yes">67x</span>
147
159
  <span class="cline-any cline-no">&nbsp;</span>
148
160
  <span class="cline-any cline-neutral">&nbsp;</span>
149
161
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -203,10 +215,16 @@ function typeToFile(type) {
203
215
  class Thread {
204
216
  constructor(type, opts = { timeoutMs: null, count: 1 }) {
205
217
  this.type = type
206
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!env.isTest()) {
218
+ this.count = opts.count ? opts.count : 1
219
+ this.disableThreading =
220
+ env.isTest() ||
221
+ <span class="branch-1 cbranch-no" title="branch not covered" > env.DISABLE_THREADING </span>||
222
+ <span class="branch-2 cbranch-no" title="branch not covered" > this.count === 0 </span>||
223
+ <span class="branch-3 cbranch-no" title="branch not covered" > env.isInThread()</span>
224
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.disableThreading) {
207
225
  const workerOpts = <span class="cstat-no" title="statement not covered" >{</span>
208
226
  autoStart: true,
209
- maxConcurrentWorkers: opts.count ? opts.count : 1,
227
+ maxConcurrentWorkers: this.count,
210
228
  }
211
229
  <span class="cstat-no" title="statement not covered" > if (opts.timeoutMs) {</span>
212
230
  <span class="cstat-no" title="statement not covered" > workerOpts.maxCallTime = opts.timeoutMs</span>
@@ -219,7 +237,7 @@ class Thread {
219
237
  return new Promise((resolve, reject) =&gt; {
220
238
  let fncToCall
221
239
  // if in test then don't use threading
222
- if (env.isTest()) {
240
+ if (this.disableThreading) {
223
241
  fncToCall = require(typeToFile(this.type))
224
242
  } else <span class="missing-if-branch" title="else path not taken" >E</span>{
225
243
  <span class="cstat-no" title="statement not covered" > fncToCall = this.workers</span>
@@ -244,7 +262,7 @@ module.exports.ThreadType = ThreadType
244
262
  <div class='footer quiet pad2 space-top1 center small'>
245
263
  Code coverage generated by
246
264
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
247
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
265
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
248
266
  </div>
249
267
  </div>
250
268
  <script src="../prettify.js"></script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">68.96% </span>
26
+ <span class="strong">70.96% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>20/29</span>
28
+ <span class='fraction'>22/31</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">70.37% </span>
47
+ <span class="strong">72.41% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>19/27</span>
49
+ <span class='fraction'>21/29</span>
50
50
  </div>
51
51
 
52
52
 
@@ -120,7 +120,13 @@
120
120
  <a name='L61'></a><a href='#L61'>61</a>
121
121
  <a name='L62'></a><a href='#L62'>62</a>
122
122
  <a name='L63'></a><a href='#L63'>63</a>
123
- <a name='L64'></a><a href='#L64'>64</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
123
+ <a name='L64'></a><a href='#L64'>64</a>
124
+ <a name='L65'></a><a href='#L65'>65</a>
125
+ <a name='L66'></a><a href='#L66'>66</a>
126
+ <a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
127
+ <span class="cline-any cline-yes">1x</span>
128
+ <span class="cline-any cline-yes">1x</span>
129
+ <span class="cline-any cline-yes">1x</span>
124
130
  <span class="cline-any cline-yes">1x</span>
125
131
  <span class="cline-any cline-neutral">&nbsp;</span>
126
132
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -183,7 +189,10 @@
183
189
  <span class="cline-any cline-yes">2x</span>
184
190
  <span class="cline-any cline-neutral">&nbsp;</span>
185
191
  <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const ScriptRunner = require("../utilities/scriptRunner")
192
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// when thread starts, make sure it is recorded
193
+ const env = require("../environment")
194
+ env.setInThread()
195
+ const ScriptRunner = require("../utilities/scriptRunner")
187
196
  const { integrations } = require("../integrations")
188
197
  &nbsp;
189
198
  function formatResponse(resp) {
@@ -253,7 +262,7 @@ module.exports = (input, callback) =&gt; {
253
262
  <div class='footer quiet pad2 space-top1 center small'>
254
263
  Code coverage generated by
255
264
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
256
- at Mon Nov 22 2021 10:51:12 GMT+0000 (Coordinated Universal Time)
265
+ at Tue Nov 23 2021 15:21:59 GMT+0000 (Coordinated Universal Time)
257
266
  </div>
258
267
  </div>
259
268
  <script src="../prettify.js"></script>