@budibase/server 1.0.34 → 1.0.41

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 (377) hide show
  1. package/__mocks__/node-fetch.ts +21 -0
  2. package/builder/assets/bb-spaceship.8f6e81e1.svg +227 -0
  3. package/builder/assets/{index.4fb3f887.css → index.39e01193.css} +1 -1
  4. package/builder/assets/index.d5158e11.js +1348 -0
  5. package/builder/assets/{vendor.470042a4.js → vendor.f9faf6ab.js} +88 -88
  6. package/builder/index.html +3 -3
  7. package/coverage/clover.xml +1589 -1344
  8. package/coverage/coverage-final.json +75 -74
  9. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/apikeys.js.html +3 -3
  11. package/coverage/lcov-report/api/controllers/application.js.html +73 -64
  12. package/coverage/lcov-report/api/controllers/auth.js.html +2 -2
  13. package/coverage/lcov-report/api/controllers/automation.js.html +22 -10
  14. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/cloud.js.html +13 -4
  16. package/coverage/lcov-report/api/controllers/component.js.html +4 -4
  17. package/coverage/lcov-report/api/controllers/datasource.js.html +170 -68
  18. package/coverage/lcov-report/api/controllers/dev.js.html +3 -3
  19. package/coverage/lcov-report/api/controllers/hosting.js.html +3 -3
  20. package/coverage/lcov-report/api/controllers/index.html +39 -54
  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 +3 -3
  25. package/coverage/lcov-report/api/controllers/query/index.html +126 -0
  26. package/coverage/lcov-report/api/controllers/{query.js.html → query/index.js.html} +225 -120
  27. package/coverage/lcov-report/api/controllers/query/validation.js.html +206 -0
  28. package/coverage/lcov-report/api/controllers/role.js.html +2 -2
  29. package/coverage/lcov-report/api/controllers/routing.js.html +2 -2
  30. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/row/index.html +22 -22
  32. package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/row/internal.js.html +38 -11
  34. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +8 -5
  35. package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -20
  36. package/coverage/lcov-report/api/controllers/screen.js.html +2 -2
  37. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  40. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/table/internal.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/table/utils.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  44. package/coverage/lcov-report/api/controllers/user.js.html +120 -12
  45. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  46. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  47. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  48. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  49. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  50. package/coverage/lcov-report/api/controllers/webhook.js.html +19 -7
  51. package/coverage/lcov-report/api/index.html +1 -1
  52. package/coverage/lcov-report/api/index.js.html +6 -6
  53. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/apikeys.js.html +2 -2
  55. package/coverage/lcov-report/api/routes/application.js.html +2 -2
  56. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/automation.js.html +2 -2
  58. package/coverage/lcov-report/api/routes/backup.js.html +2 -2
  59. package/coverage/lcov-report/api/routes/cloud.js.html +2 -2
  60. package/coverage/lcov-report/api/routes/component.js.html +2 -2
  61. package/coverage/lcov-report/api/routes/datasource.js.html +2 -2
  62. package/coverage/lcov-report/api/routes/deploy.js.html +2 -2
  63. package/coverage/lcov-report/api/routes/dev.js.html +2 -2
  64. package/coverage/lcov-report/api/routes/hosting.js.html +2 -2
  65. package/coverage/lcov-report/api/routes/index.html +9 -9
  66. package/coverage/lcov-report/api/routes/index.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/integration.js.html +2 -2
  68. package/coverage/lcov-report/api/routes/layout.js.html +2 -2
  69. package/coverage/lcov-report/api/routes/metadata.js.html +2 -2
  70. package/coverage/lcov-report/api/routes/permission.js.html +12 -3
  71. package/coverage/lcov-report/api/routes/query.js.html +20 -86
  72. package/coverage/lcov-report/api/routes/role.js.html +2 -2
  73. package/coverage/lcov-report/api/routes/routing.js.html +2 -2
  74. package/coverage/lcov-report/api/routes/row.js.html +2 -2
  75. package/coverage/lcov-report/api/routes/screen.js.html +2 -2
  76. package/coverage/lcov-report/api/routes/script.js.html +2 -2
  77. package/coverage/lcov-report/api/routes/static.js.html +2 -2
  78. package/coverage/lcov-report/api/routes/table.js.html +2 -2
  79. package/coverage/lcov-report/api/routes/templates.js.html +2 -2
  80. package/coverage/lcov-report/api/routes/user.js.html +33 -3
  81. package/coverage/lcov-report/api/routes/view.js.html +2 -2
  82. package/coverage/lcov-report/api/routes/webhook.js.html +2 -2
  83. package/coverage/lcov-report/automations/actions.js.html +1 -1
  84. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  85. package/coverage/lcov-report/automations/bullboard.js.html +2 -2
  86. package/coverage/lcov-report/automations/index.html +20 -20
  87. package/coverage/lcov-report/automations/index.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/executeQuery.js.html +32 -8
  94. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/index.html +11 -11
  97. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  98. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +5 -8
  99. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  100. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  101. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  102. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  103. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  104. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  105. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  106. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  107. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  108. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  109. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  111. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  112. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  113. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  114. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  115. package/coverage/lcov-report/automations/utils.js.html +49 -16
  116. package/coverage/lcov-report/constants/index.html +1 -1
  117. package/coverage/lcov-report/constants/index.js.html +25 -25
  118. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  119. package/coverage/lcov-report/constants/screens.js.html +2 -2
  120. package/coverage/lcov-report/db/client.js.html +19 -19
  121. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  122. package/coverage/lcov-report/db/index.html +15 -15
  123. package/coverage/lcov-report/db/index.js.html +3 -3
  124. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  125. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  126. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  127. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  128. package/coverage/lcov-report/db/newid.js.html +4 -4
  129. package/coverage/lcov-report/db/utils.js.html +108 -81
  130. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  131. package/coverage/lcov-report/events/index.html +1 -1
  132. package/coverage/lcov-report/events/index.js.html +1 -1
  133. package/coverage/lcov-report/events/utils.js.html +1 -1
  134. package/coverage/lcov-report/index.html +99 -84
  135. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  136. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  137. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  138. package/coverage/lcov-report/middleware/authorized.js.html +12 -12
  139. package/coverage/lcov-report/middleware/builder.js.html +10 -10
  140. package/coverage/lcov-report/middleware/currentapp.js.html +48 -36
  141. package/coverage/lcov-report/middleware/index.html +1 -1
  142. package/coverage/lcov-report/middleware/joi-validator.js.html +11 -11
  143. package/coverage/lcov-report/middleware/resourceId.js.html +18 -18
  144. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  145. package/coverage/lcov-report/middleware/usageQuota.js.html +2 -2
  146. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  147. package/coverage/lcov-report/threads/automation.js.html +3 -3
  148. package/coverage/lcov-report/threads/index.html +32 -32
  149. package/coverage/lcov-report/threads/index.js.html +12 -12
  150. package/coverage/lcov-report/threads/query.js.html +560 -65
  151. package/coverage/lcov-report/threads/utils.js.html +210 -15
  152. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  153. package/coverage/lcov-report/utilities/budibaseDir.js.html +2 -2
  154. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  155. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  156. package/coverage/lcov-report/utilities/global.js.html +28 -19
  157. package/coverage/lcov-report/utilities/index.html +19 -19
  158. package/coverage/lcov-report/utilities/index.js.html +70 -37
  159. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +2 -2
  160. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  161. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  162. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  163. package/coverage/lcov-report/utilities/rowProcessor/index.html +19 -19
  164. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +247 -10
  165. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  166. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  167. package/coverage/lcov-report/utilities/security.js.html +14 -5
  168. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  169. package/coverage/lcov-report/utilities/users.js.html +1 -1
  170. package/coverage/lcov-report/utilities/workerRequests.js.html +22 -22
  171. package/coverage/lcov.info +2735 -2313
  172. package/dist/api/controllers/apikeys.js +2 -2
  173. package/dist/api/controllers/application.js +4 -4
  174. package/dist/api/controllers/auth.js +1 -1
  175. package/dist/api/controllers/automation.js +7 -5
  176. package/dist/api/controllers/cloud.js +2 -2
  177. package/dist/api/controllers/datasource.js +29 -0
  178. package/dist/api/controllers/deploy/index.js +2 -2
  179. package/dist/api/controllers/dev.js +2 -2
  180. package/dist/api/controllers/hosting.js +2 -2
  181. package/dist/api/controllers/permission.js +2 -2
  182. package/dist/api/controllers/query/import/index.js +79 -0
  183. package/dist/api/controllers/query/import/sources/base/index.js +64 -0
  184. package/dist/api/controllers/query/import/sources/base/openapi.js +42 -0
  185. package/dist/api/controllers/query/import/sources/curl.js +96 -0
  186. package/dist/api/controllers/query/import/sources/openapi2.js +142 -0
  187. package/dist/api/controllers/query/import/sources/tests/openapi2/data/crud/crud.json +253 -0
  188. package/dist/api/controllers/query/import/sources/tests/openapi2/data/petstore/petstore.json +1054 -0
  189. package/dist/api/controllers/{query.js → query/index.js} +88 -56
  190. package/dist/api/controllers/query/validation.js +38 -0
  191. package/dist/api/controllers/role.js +1 -1
  192. package/dist/api/controllers/routing.js +1 -1
  193. package/dist/api/controllers/row/internal.js +14 -6
  194. package/dist/api/controllers/row/internalSearch.js +3 -2
  195. package/dist/api/controllers/row/utils.js +13 -6
  196. package/dist/api/controllers/screen.js +1 -1
  197. package/dist/api/controllers/user.js +40 -4
  198. package/dist/api/controllers/webhook.js +5 -1
  199. package/dist/api/index.js +1 -1
  200. package/dist/api/routes/apikeys.js +1 -1
  201. package/dist/api/routes/application.js +1 -1
  202. package/dist/api/routes/automation.js +1 -1
  203. package/dist/api/routes/backup.js +1 -1
  204. package/dist/api/routes/cloud.js +1 -1
  205. package/dist/api/routes/component.js +1 -1
  206. package/dist/api/routes/datasource.js +1 -1
  207. package/dist/api/routes/deploy.js +1 -1
  208. package/dist/api/routes/dev.js +1 -1
  209. package/dist/api/routes/hosting.js +1 -1
  210. package/dist/api/routes/integration.js +1 -1
  211. package/dist/api/routes/layout.js +1 -1
  212. package/dist/api/routes/metadata.js +1 -1
  213. package/dist/api/routes/permission.js +1 -1
  214. package/dist/api/routes/query.js +6 -34
  215. package/dist/api/routes/role.js +1 -1
  216. package/dist/api/routes/routing.js +1 -1
  217. package/dist/api/routes/row.js +1 -1
  218. package/dist/api/routes/screen.js +1 -1
  219. package/dist/api/routes/script.js +1 -1
  220. package/dist/api/routes/static.js +1 -1
  221. package/dist/api/routes/table.js +1 -1
  222. package/dist/api/routes/templates.js +1 -1
  223. package/dist/api/routes/tests/utilities/TestFunctions.js +1 -1
  224. package/dist/api/routes/user.js +4 -2
  225. package/dist/api/routes/view.js +1 -1
  226. package/dist/api/routes/webhook.js +1 -1
  227. package/dist/app.js +1 -1
  228. package/dist/automations/bullboard.js +1 -1
  229. package/dist/automations/steps/executeQuery.js +9 -2
  230. package/dist/automations/steps/outgoingWebhook.js +2 -3
  231. package/dist/automations/utils.js +11 -1
  232. package/dist/constants/index.js +3 -3
  233. package/dist/constants/screens.js +1 -1
  234. package/dist/db/client.js +1 -1
  235. package/dist/db/utils.js +9 -1
  236. package/dist/definitions/datasource.js +6 -1
  237. package/dist/integrations/base/sqlTable.js +1 -1
  238. package/dist/integrations/rest.js +259 -120
  239. package/dist/integrations/s3.js +1 -1
  240. package/dist/integrations/utils.js +40 -37
  241. package/dist/middleware/authorized.js +2 -2
  242. package/dist/middleware/builder.js +2 -2
  243. package/dist/middleware/currentapp.js +6 -6
  244. package/dist/middleware/usageQuota.js +1 -1
  245. package/dist/package.json +11 -4
  246. package/dist/tests/utilities/TestConfiguration.js +55 -8
  247. package/dist/tests/utilities/structures.js +2 -2
  248. package/dist/threads/automation.js +2 -2
  249. package/dist/threads/query.js +195 -38
  250. package/dist/threads/utils.js +62 -1
  251. package/dist/tsconfig.tsbuildinfo +1 -1
  252. package/dist/utilities/budibaseDir.js +1 -1
  253. package/dist/utilities/fileSystem/utilities.js +2 -1
  254. package/dist/utilities/global.js +5 -5
  255. package/dist/utilities/index.js +11 -1
  256. package/dist/utilities/redis.js +1 -1
  257. package/dist/utilities/rowProcessor/index.js +76 -0
  258. package/dist/utilities/security.js +2 -2
  259. package/dist/utilities/usageQuota.js +2 -2
  260. package/dist/utilities/workerRequests.js +3 -3
  261. package/package.json +12 -5
  262. package/scripts/replicateApp.js +1 -1
  263. package/src/api/controllers/apikeys.js +2 -2
  264. package/src/api/controllers/application.js +7 -4
  265. package/src/api/controllers/auth.js +1 -1
  266. package/src/api/controllers/automation.js +8 -4
  267. package/src/api/controllers/cloud.js +5 -2
  268. package/src/api/controllers/datasource.js +34 -0
  269. package/src/api/controllers/deploy/index.js +2 -2
  270. package/src/api/controllers/dev.js +2 -2
  271. package/src/api/controllers/hosting.js +2 -2
  272. package/src/api/controllers/permission.js +2 -2
  273. package/src/api/controllers/query/import/index.ts +85 -0
  274. package/src/api/controllers/query/import/sources/base/index.ts +87 -0
  275. package/src/api/controllers/query/import/sources/base/openapi.ts +24 -0
  276. package/src/api/controllers/query/import/sources/curl.ts +102 -0
  277. package/src/api/controllers/query/import/sources/openapi2.ts +163 -0
  278. package/src/api/controllers/query/import/sources/tests/curl/curl.spec.js +103 -0
  279. package/src/api/controllers/query/import/sources/tests/curl/data/delete.txt +1 -0
  280. package/src/api/controllers/query/import/sources/tests/curl/data/empty-body.txt +2 -0
  281. package/src/api/controllers/query/import/sources/tests/curl/data/get.txt +1 -0
  282. package/src/api/controllers/query/import/sources/tests/curl/data/headers.txt +3 -0
  283. package/src/api/controllers/query/import/sources/tests/curl/data/patch.txt +2 -0
  284. package/src/api/controllers/query/import/sources/tests/curl/data/path.txt +1 -0
  285. package/src/api/controllers/query/import/sources/tests/curl/data/post.txt +2 -0
  286. package/src/api/controllers/query/import/sources/tests/curl/data/put.txt +2 -0
  287. package/src/api/controllers/query/import/sources/tests/curl/data/query.txt +1 -0
  288. package/src/api/controllers/query/import/sources/tests/openapi2/data/crud/crud.json +253 -0
  289. package/src/api/controllers/query/import/sources/tests/openapi2/data/crud/crud.yaml +160 -0
  290. package/src/api/controllers/query/import/sources/tests/openapi2/data/petstore/petstore.json +1054 -0
  291. package/src/api/controllers/query/import/sources/tests/openapi2/data/petstore/petstore.yaml +711 -0
  292. package/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js +238 -0
  293. package/src/api/controllers/query/import/tests/index.spec.js +109 -0
  294. package/src/api/controllers/query/index.js +196 -0
  295. package/src/api/controllers/query/validation.js +42 -0
  296. package/src/api/controllers/role.js +1 -1
  297. package/src/api/controllers/routing.js +1 -1
  298. package/src/api/controllers/row/internal.js +14 -5
  299. package/src/api/controllers/row/internalSearch.js +3 -2
  300. package/src/api/controllers/row/utils.js +11 -8
  301. package/src/api/controllers/screen.js +1 -1
  302. package/src/api/controllers/user.js +39 -3
  303. package/src/api/controllers/webhook.js +5 -1
  304. package/src/api/index.js +1 -1
  305. package/src/api/routes/apikeys.js +1 -1
  306. package/src/api/routes/application.js +1 -1
  307. package/src/api/routes/automation.js +1 -1
  308. package/src/api/routes/backup.js +1 -1
  309. package/src/api/routes/cloud.js +1 -1
  310. package/src/api/routes/component.js +1 -1
  311. package/src/api/routes/datasource.js +1 -1
  312. package/src/api/routes/deploy.js +1 -1
  313. package/src/api/routes/dev.js +1 -1
  314. package/src/api/routes/hosting.js +1 -1
  315. package/src/api/routes/integration.js +1 -1
  316. package/src/api/routes/layout.js +1 -1
  317. package/src/api/routes/metadata.js +1 -1
  318. package/src/api/routes/permission.js +4 -1
  319. package/src/api/routes/query.js +14 -36
  320. package/src/api/routes/role.js +1 -1
  321. package/src/api/routes/routing.js +1 -1
  322. package/src/api/routes/row.js +1 -1
  323. package/src/api/routes/screen.js +1 -1
  324. package/src/api/routes/script.js +1 -1
  325. package/src/api/routes/static.js +1 -1
  326. package/src/api/routes/table.js +1 -1
  327. package/src/api/routes/templates.js +1 -1
  328. package/src/api/routes/tests/datasource.spec.js +45 -0
  329. package/src/api/routes/tests/permissions.spec.js +1 -1
  330. package/src/api/routes/tests/query.spec.js +70 -1
  331. package/src/api/routes/tests/role.spec.js +2 -2
  332. package/src/api/routes/tests/routing.spec.js +1 -1
  333. package/src/api/routes/tests/user.spec.js +1 -1
  334. package/src/api/routes/tests/utilities/TestFunctions.js +1 -1
  335. package/src/api/routes/user.js +11 -1
  336. package/src/api/routes/view.js +1 -1
  337. package/src/api/routes/webhook.js +1 -1
  338. package/src/app.ts +1 -1
  339. package/src/automations/bullboard.js +1 -1
  340. package/src/automations/steps/executeQuery.js +10 -2
  341. package/src/automations/steps/outgoingWebhook.js +2 -3
  342. package/src/automations/utils.js +12 -1
  343. package/src/constants/index.js +3 -3
  344. package/src/constants/screens.js +1 -1
  345. package/src/db/client.js +1 -1
  346. package/src/db/utils.js +10 -1
  347. package/src/definitions/common.ts +2 -16
  348. package/src/definitions/datasource.ts +98 -1
  349. package/src/integrations/base/IntegrationBase.ts +4 -4
  350. package/src/integrations/base/sqlTable.ts +1 -1
  351. package/src/integrations/rest.ts +311 -138
  352. package/src/integrations/s3.ts +1 -1
  353. package/src/integrations/tests/rest.spec.js +432 -21
  354. package/src/integrations/utils.ts +8 -7
  355. package/src/middleware/authorized.js +2 -2
  356. package/src/middleware/builder.js +2 -2
  357. package/src/middleware/currentapp.js +11 -7
  358. package/src/middleware/tests/authorized.spec.js +2 -2
  359. package/src/middleware/tests/currentapp.spec.js +35 -41
  360. package/src/middleware/tests/usageQuota.spec.js +1 -1
  361. package/src/middleware/usageQuota.js +1 -1
  362. package/src/tests/utilities/TestConfiguration.js +65 -8
  363. package/src/tests/utilities/structures.js +2 -2
  364. package/src/threads/automation.js +2 -2
  365. package/src/threads/query.js +204 -39
  366. package/src/threads/utils.js +66 -1
  367. package/src/utilities/budibaseDir.js +1 -1
  368. package/src/utilities/fileSystem/utilities.js +3 -1
  369. package/src/utilities/global.js +8 -5
  370. package/src/utilities/index.js +12 -1
  371. package/src/utilities/redis.js +1 -1
  372. package/src/utilities/rowProcessor/index.js +79 -0
  373. package/src/utilities/security.js +5 -2
  374. package/src/utilities/usageQuota.js +2 -2
  375. package/src/utilities/workerRequests.js +3 -3
  376. package/builder/assets/index.9b7f029a.js +0 -1316
  377. package/src/api/controllers/query.js +0 -161
@@ -150,7 +150,7 @@
150
150
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
151
151
  const controller = require("../controllers/screen")
152
152
  const authorized = require("../../middleware/authorized")
153
- const { BUILDER } = require("@budibase/auth/permissions")
153
+ const { BUILDER } = require("@budibase/backend-core/permissions")
154
154
  const joiValidator = require("../../middleware/joi-validator")
155
155
  const Joi = require("joi")
156
156
  &nbsp;
@@ -199,7 +199,7 @@ module.exports = router
199
199
  <div class='footer quiet pad2 space-top1 center small'>
200
200
  Code coverage generated by
201
201
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
202
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
202
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
203
203
  </div>
204
204
  </div>
205
205
  <script src="../../prettify.js"></script>
@@ -80,7 +80,7 @@
80
80
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = <span class="cstat-no" title="statement not covered" >require("@koa/router")</span>
81
81
  const controller = <span class="cstat-no" title="statement not covered" >require("../controllers/script")</span>
82
82
  const authorized = <span class="cstat-no" title="statement not covered" >require("../../middleware/authorized")</span>
83
- const { BUILDER } = <span class="cstat-no" title="statement not covered" >require("@budibase/auth/permissions")</span>
83
+ const { BUILDER } = <span class="cstat-no" title="statement not covered" >require("@budibase/backend-core/permissions")</span>
84
84
  &nbsp;
85
85
  const router = <span class="cstat-no" title="statement not covered" >Router()</span>
86
86
  &nbsp;
@@ -94,7 +94,7 @@ const router = <span class="cstat-no" title="statement not covered" >Router()</s
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 Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
97
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
98
98
  </div>
99
99
  </div>
100
100
  <script src="../../prettify.js"></script>
@@ -165,7 +165,7 @@ const {
165
165
  BUILDER,
166
166
  PermissionTypes,
167
167
  PermissionLevels,
168
- } = require("@budibase/auth/permissions")
168
+ } = require("@budibase/backend-core/permissions")
169
169
  const env = require("../../environment")
170
170
  const { paramResource } = require("../../middleware/resourceId")
171
171
  &nbsp;
@@ -214,7 +214,7 @@ module.exports = router
214
214
  <div class='footer quiet pad2 space-top1 center small'>
215
215
  Code coverage generated by
216
216
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
217
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
217
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
218
218
  </div>
219
219
  </div>
220
220
  <script src="../../prettify.js"></script>
@@ -487,7 +487,7 @@ const {
487
487
  BUILDER,
488
488
  PermissionLevels,
489
489
  PermissionTypes,
490
- } = require("@budibase/auth/permissions")
490
+ } = require("@budibase/backend-core/permissions")
491
491
  const joiValidator = require("../../middleware/joi-validator")
492
492
  const Joi = require("joi")
493
493
  &nbsp;
@@ -697,7 +697,7 @@ module.exports = router
697
697
  <div class='footer quiet pad2 space-top1 center small'>
698
698
  Code coverage generated by
699
699
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
700
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
700
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
701
701
  </div>
702
702
  </div>
703
703
  <script src="../../prettify.js"></script>
@@ -92,7 +92,7 @@
92
92
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
93
93
  const controller = require("../controllers/templates")
94
94
  const authorized = require("../../middleware/authorized")
95
- const { BUILDER } = require("@budibase/auth/permissions")
95
+ const { BUILDER } = require("@budibase/backend-core/permissions")
96
96
  &nbsp;
97
97
  const router = Router()
98
98
  &nbsp;
@@ -112,7 +112,7 @@ module.exports = router
112
112
  <div class='footer quiet pad2 space-top1 center small'>
113
113
  Code coverage generated by
114
114
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
115
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
115
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
116
116
  </div>
117
117
  </div>
118
118
  <script src="../../prettify.js"></script>
@@ -100,7 +100,17 @@
100
100
  <a name='L41'></a><a href='#L41'>41</a>
101
101
  <a name='L42'></a><a href='#L42'>42</a>
102
102
  <a name='L43'></a><a href='#L43'>43</a>
103
- <a name='L44'></a><a href='#L44'>44</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
103
+ <a name='L44'></a><a href='#L44'>44</a>
104
+ <a name='L45'></a><a href='#L45'>45</a>
105
+ <a name='L46'></a><a href='#L46'>46</a>
106
+ <a name='L47'></a><a href='#L47'>47</a>
107
+ <a name='L48'></a><a href='#L48'>48</a>
108
+ <a name='L49'></a><a href='#L49'>49</a>
109
+ <a name='L50'></a><a href='#L50'>50</a>
110
+ <a name='L51'></a><a href='#L51'>51</a>
111
+ <a name='L52'></a><a href='#L52'>52</a>
112
+ <a name='L53'></a><a href='#L53'>53</a>
113
+ <a name='L54'></a><a href='#L54'>54</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
104
114
  <span class="cline-any cline-yes">23x</span>
105
115
  <span class="cline-any cline-yes">23x</span>
106
116
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -142,6 +152,16 @@
142
152
  <span class="cline-any cline-neutral">&nbsp;</span>
143
153
  <span class="cline-any cline-neutral">&nbsp;</span>
144
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-neutral">&nbsp;</span>
159
+ <span class="cline-any cline-neutral">&nbsp;</span>
160
+ <span class="cline-any cline-neutral">&nbsp;</span>
161
+ <span class="cline-any cline-neutral">&nbsp;</span>
162
+ <span class="cline-any cline-neutral">&nbsp;</span>
163
+ <span class="cline-any cline-neutral">&nbsp;</span>
164
+ <span class="cline-any cline-neutral">&nbsp;</span>
145
165
  <span class="cline-any cline-yes">23x</span>
146
166
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
147
167
  const controller = require("../controllers/user")
@@ -149,7 +169,7 @@ const authorized = require("../../middleware/authorized")
149
169
  const {
150
170
  PermissionLevels,
151
171
  PermissionTypes,
152
- } = require("@budibase/auth/permissions")
172
+ } = require("@budibase/backend-core/permissions")
153
173
  &nbsp;
154
174
  const router = Router()
155
175
  &nbsp;
@@ -184,6 +204,16 @@ router
184
204
  authorized(PermissionTypes.USER, PermissionLevels.WRITE),
185
205
  controller.syncUser
186
206
  )
207
+ .post(
208
+ "/api/users/flags",
209
+ authorized(PermissionTypes.USER, PermissionLevels.WRITE),
210
+ controller.setFlag
211
+ )
212
+ .get(
213
+ "/api/users/flags",
214
+ authorized(PermissionTypes.USER, PermissionLevels.READ),
215
+ controller.getFlags
216
+ )
187
217
  &nbsp;
188
218
  module.exports = router
189
219
  &nbsp;</pre></td></tr></table></pre>
@@ -193,7 +223,7 @@ module.exports = router
193
223
  <div class='footer quiet pad2 space-top1 center small'>
194
224
  Code coverage generated by
195
225
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
196
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
226
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
197
227
  </div>
198
228
  </div>
199
229
  <script src="../../prettify.js"></script>
@@ -128,7 +128,7 @@ const {
128
128
  BUILDER,
129
129
  PermissionTypes,
130
130
  PermissionLevels,
131
- } = require("@budibase/auth/permissions")
131
+ } = require("@budibase/backend-core/permissions")
132
132
  &nbsp;
133
133
  const router = Router()
134
134
  &nbsp;
@@ -157,7 +157,7 @@ module.exports = router
157
157
  <div class='footer quiet pad2 space-top1 center small'>
158
158
  Code coverage generated by
159
159
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
160
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
160
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
161
161
  </div>
162
162
  </div>
163
163
  <script src="../../prettify.js"></script>
@@ -145,7 +145,7 @@
145
145
  const controller = require("../controllers/webhook")
146
146
  const authorized = require("../../middleware/authorized")
147
147
  const joiValidator = require("../../middleware/joi-validator")
148
- const { BUILDER } = require("@budibase/auth/permissions")
148
+ const { BUILDER } = require("@budibase/backend-core/permissions")
149
149
  const Joi = require("joi")
150
150
  &nbsp;
151
151
  const router = Router()
@@ -190,7 +190,7 @@ module.exports = router
190
190
  <div class='footer quiet pad2 space-top1 center small'>
191
191
  Code coverage generated by
192
192
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
193
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
193
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
194
194
  </div>
195
195
  </div>
196
196
  <script src="../../prettify.js"></script>
@@ -277,7 +277,7 @@ exports.ACTION_DEFINITIONS = ACTION_DEFINITIONS
277
277
  <div class='footer quiet pad2 space-top1 center small'>
278
278
  Code coverage generated by
279
279
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
280
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
280
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
281
281
  </div>
282
282
  </div>
283
283
  <script src="../prettify.js"></script>
@@ -295,7 +295,7 @@ exports.getError = err =&gt; {
295
295
  <div class='footer quiet pad2 space-top1 center small'>
296
296
  Code coverage generated by
297
297
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
298
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
298
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
299
299
  </div>
300
300
  </div>
301
301
  <script src="../prettify.js"></script>
@@ -161,7 +161,7 @@ const Queue = env.isTest()
161
161
  ? require("../utilities/queue/inMemoryQueue")
162
162
  : <span class="branch-1 cbranch-no" title="branch not covered" >require("bull")</span>
163
163
  const { JobQueues } = require("../constants")
164
- const { utils } = require("@budibase/auth/redis")
164
+ const { utils } = require("@budibase/backend-core/redis")
165
165
  const { opts, redisProtocolUrl } = utils.getRedisOptions()
166
166
  &nbsp;
167
167
  const CLEANUP_PERIOD_MS = 60 * 1000
@@ -208,7 +208,7 @@ exports.queue = automationQueue
208
208
  <div class='footer quiet pad2 space-top1 center small'>
209
209
  Code coverage generated by
210
210
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
211
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
211
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
212
212
  </div>
213
213
  </div>
214
214
  <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">84.15% </span>
26
+ <span class="strong">84.68% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>170/202</span>
28
+ <span class='fraction'>177/209</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">79.78% </span>
33
+ <span class="strong">80.2% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>75/94</span>
35
+ <span class='fraction'>77/96</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">80% </span>
40
+ <span class="strong">80.76% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>20/25</span>
42
+ <span class='fraction'>21/26</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">84.15% </span>
47
+ <span class="strong">84.68% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>170/202</span>
49
+ <span class='fraction'>177/209</span>
50
50
  </div>
51
51
 
52
52
 
@@ -148,18 +148,18 @@
148
148
  </tr>
149
149
 
150
150
  <tr>
151
- <td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
152
- <td data-value="79.1" class="pic medium">
153
- <div class="chart"><div class="cover-fill" style="width: 79%"></div><div class="cover-empty" style="width: 21%"></div></div>
151
+ <td class="file high" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
152
+ <td data-value="81.08" class="pic high">
153
+ <div class="chart"><div class="cover-fill" style="width: 81%"></div><div class="cover-empty" style="width: 19%"></div></div>
154
154
  </td>
155
- <td data-value="79.1" class="pct medium">79.1%</td>
156
- <td data-value="67" class="abs medium">53/67</td>
157
- <td data-value="80.55" class="pct high">80.55%</td>
158
- <td data-value="36" class="abs high">29/36</td>
159
- <td data-value="88.88" class="pct high">88.88%</td>
160
- <td data-value="9" class="abs high">8/9</td>
161
- <td data-value="79.1" class="pct medium">79.1%</td>
162
- <td data-value="67" class="abs medium">53/67</td>
155
+ <td data-value="81.08" class="pct high">81.08%</td>
156
+ <td data-value="74" class="abs high">60/74</td>
157
+ <td data-value="81.57" class="pct high">81.57%</td>
158
+ <td data-value="38" class="abs high">31/38</td>
159
+ <td data-value="90" class="pct high">90%</td>
160
+ <td data-value="10" class="abs high">9/10</td>
161
+ <td data-value="81.08" class="pct high">81.08%</td>
162
+ <td data-value="74" class="abs high">60/74</td>
163
163
  </tr>
164
164
 
165
165
  </tbody>
@@ -170,7 +170,7 @@
170
170
  <div class='footer quiet pad2 space-top1 center small'>
171
171
  Code coverage generated by
172
172
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
173
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
173
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
174
174
  </div>
175
175
  </div>
176
176
  <script src="../prettify.js"></script>
@@ -115,7 +115,7 @@ exports.queue = queue
115
115
  <div class='footer quiet pad2 space-top1 center small'>
116
116
  Code coverage generated by
117
117
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
118
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
118
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
119
119
  </div>
120
120
  </div>
121
121
  <script src="../prettify.js"></script>
@@ -274,7 +274,7 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
274
274
  <div class='footer quiet pad2 space-top1 center small'>
275
275
  Code coverage generated by
276
276
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
277
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
277
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
278
278
  </div>
279
279
  </div>
280
280
  <script src="../../prettify.js"></script>
@@ -373,7 +373,7 @@ exports.run = async function ({ inputs, appId, emitter }) {
373
373
  <div class='footer quiet pad2 space-top1 center small'>
374
374
  Code coverage generated by
375
375
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
376
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
376
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
377
377
  </div>
378
378
  </div>
379
379
  <script src="../../prettify.js"></script>
@@ -181,7 +181,7 @@ exports.run = async function delay({ inputs }) {
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
184
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
184
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  </div>
187
187
  <script src="../../prettify.js"></script>
@@ -340,7 +340,7 @@ exports.run = async function ({ inputs, appId, emitter }) {
340
340
  <div class='footer quiet pad2 space-top1 center small'>
341
341
  Code coverage generated by
342
342
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
343
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
343
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
344
344
  </div>
345
345
  </div>
346
346
  <script src="../../prettify.js"></script>
@@ -313,7 +313,7 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
313
313
  <div class='footer quiet pad2 space-top1 center small'>
314
314
  Code coverage generated by
315
315
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
316
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
316
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
317
317
  </div>
318
318
  </div>
319
319
  <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">38.46% </span>
26
+ <span class="strong">35.71% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>5/13</span>
28
+ <span class='fraction'>5/14</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">38.46% </span>
47
+ <span class="strong">35.71% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>5/13</span>
49
+ <span class='fraction'>5/14</span>
50
50
  </div>
51
51
 
52
52
 
@@ -138,7 +138,15 @@
138
138
  <a name='L79'></a><a href='#L79'>79</a>
139
139
  <a name='L80'></a><a href='#L80'>80</a>
140
140
  <a name='L81'></a><a href='#L81'>81</a>
141
- <a name='L82'></a><a href='#L82'>82</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
141
+ <a name='L82'></a><a href='#L82'>82</a>
142
+ <a name='L83'></a><a href='#L83'>83</a>
143
+ <a name='L84'></a><a href='#L84'>84</a>
144
+ <a name='L85'></a><a href='#L85'>85</a>
145
+ <a name='L86'></a><a href='#L86'>86</a>
146
+ <a name='L87'></a><a href='#L87'>87</a>
147
+ <a name='L88'></a><a href='#L88'>88</a>
148
+ <a name='L89'></a><a href='#L89'>89</a>
149
+ <a name='L90'></a><a href='#L90'>90</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
142
150
  <span class="cline-any cline-yes">34x</span>
143
151
  <span class="cline-any cline-yes">34x</span>
144
152
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -185,6 +193,11 @@
185
193
  <span class="cline-any cline-neutral">&nbsp;</span>
186
194
  <span class="cline-any cline-neutral">&nbsp;</span>
187
195
  <span class="cline-any cline-neutral">&nbsp;</span>
196
+ <span class="cline-any cline-neutral">&nbsp;</span>
197
+ <span class="cline-any cline-neutral">&nbsp;</span>
198
+ <span class="cline-any cline-neutral">&nbsp;</span>
199
+ <span class="cline-any cline-neutral">&nbsp;</span>
200
+ <span class="cline-any cline-neutral">&nbsp;</span>
188
201
  <span class="cline-any cline-yes">34x</span>
189
202
  <span class="cline-any cline-no">&nbsp;</span>
190
203
  <span class="cline-any cline-no">&nbsp;</span>
@@ -209,6 +222,8 @@
209
222
  <span class="cline-any cline-no">&nbsp;</span>
210
223
  <span class="cline-any cline-no">&nbsp;</span>
211
224
  <span class="cline-any cline-no">&nbsp;</span>
225
+ <span class="cline-any cline-no">&nbsp;</span>
226
+ <span class="cline-any cline-neutral">&nbsp;</span>
212
227
  <span class="cline-any cline-neutral">&nbsp;</span>
213
228
  <span class="cline-any cline-neutral">&nbsp;</span>
214
229
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -219,6 +234,7 @@
219
234
  <span class="cline-any cline-neutral">&nbsp;</span>
220
235
  <span class="cline-any cline-neutral">&nbsp;</span>
221
236
  <span class="cline-any cline-neutral">&nbsp;</span>
237
+ <span class="cline-any cline-neutral">&nbsp;</span>
222
238
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const queryController = require("../../api/controllers/query")
223
239
  const { buildCtx } = require("./utils")
224
240
  const automationUtils = require("../automationUtils")
@@ -256,6 +272,11 @@ exports.definition = {
256
272
  type: "object",
257
273
  description: "The response from the datasource execution",
258
274
  },
275
+ info: {
276
+ type: "object",
277
+ description:
278
+ "Some query types may return extra data, like headers from a REST query",
279
+ },
259
280
  success: {
260
281
  type: "boolean",
261
282
  description: "Whether the action was successful",
@@ -288,14 +309,17 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
288
309
  })
289
310
  &nbsp;
290
311
  <span class="cstat-no" title="statement not covered" > try {</span>
291
- <span class="cstat-no" title="statement not covered" > await queryController.execute(ctx)</span>
312
+ <span class="cstat-no" title="statement not covered" > await queryController.executeV1(ctx)</span>
313
+ const { data, ...rest } = <span class="cstat-no" title="statement not covered" >ctx.body</span>
292
314
  <span class="cstat-no" title="statement not covered" > return {</span>
293
- response: ctx.body,
315
+ response: data,
316
+ info: rest,
294
317
  success: true,
295
318
  }
296
319
  } catch (err) {
297
320
  <span class="cstat-no" title="statement not covered" > return {</span>
298
321
  success: false,
322
+ info: {},
299
323
  response: automationUtils.getError(err),
300
324
  }
301
325
  }
@@ -307,7 +331,7 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
307
331
  <div class='footer quiet pad2 space-top1 center small'>
308
332
  Code coverage generated by
309
333
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
310
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
334
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
311
335
  </div>
312
336
  </div>
313
337
  <script src="../../prettify.js"></script>
@@ -274,7 +274,7 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
274
274
  <div class='footer quiet pad2 space-top1 center small'>
275
275
  Code coverage generated by
276
276
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
277
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
277
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
278
278
  </div>
279
279
  </div>
280
280
  <script src="../../prettify.js"></script>
@@ -337,7 +337,7 @@ exports.run = async function filter({ inputs }) {
337
337
  <div class='footer quiet pad2 space-top1 center small'>
338
338
  Code coverage generated by
339
339
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
340
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
340
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
341
341
  </div>
342
342
  </div>
343
343
  <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">74.27% </span>
26
+ <span class="strong">73.96% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>179/241</span>
28
+ <span class='fraction'>179/242</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">74.27% </span>
47
+ <span class="strong">73.96% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>179/241</span>
49
+ <span class='fraction'>179/242</span>
50
50
  </div>
51
51
 
52
52
 
@@ -149,17 +149,17 @@
149
149
 
150
150
  <tr>
151
151
  <td class="file low" data-value="executeQuery.js"><a href="executeQuery.js.html">executeQuery.js</a></td>
152
- <td data-value="38.46" class="pic low">
153
- <div class="chart"><div class="cover-fill" style="width: 38%"></div><div class="cover-empty" style="width: 62%"></div></div>
152
+ <td data-value="35.71" class="pic low">
153
+ <div class="chart"><div class="cover-fill" style="width: 35%"></div><div class="cover-empty" style="width: 65%"></div></div>
154
154
  </td>
155
- <td data-value="38.46" class="pct low">38.46%</td>
156
- <td data-value="13" class="abs low">5/13</td>
155
+ <td data-value="35.71" class="pct low">35.71%</td>
156
+ <td data-value="14" class="abs low">5/14</td>
157
157
  <td data-value="0" class="pct low">0%</td>
158
158
  <td data-value="2" class="abs low">0/2</td>
159
159
  <td data-value="0" class="pct low">0%</td>
160
160
  <td data-value="1" class="abs low">0/1</td>
161
- <td data-value="38.46" class="pct low">38.46%</td>
162
- <td data-value="13" class="abs low">5/13</td>
161
+ <td data-value="35.71" class="pct low">35.71%</td>
162
+ <td data-value="14" class="abs low">5/14</td>
163
163
  </tr>
164
164
 
165
165
  <tr>
@@ -335,7 +335,7 @@
335
335
  <div class='footer quiet pad2 space-top1 center small'>
336
336
  Code coverage generated by
337
337
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
338
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
338
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
339
339
  </div>
340
340
  </div>
341
341
  <script src="../../prettify.js"></script>
@@ -325,7 +325,7 @@ exports.run = <span class="fstat-no" title="function not covered" >as</span>ync
325
325
  <div class='footer quiet pad2 space-top1 center small'>
326
326
  Code coverage generated by
327
327
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
328
- at Tue Jan 04 2022 12:48:47 GMT+0000 (Coordinated Universal Time)
328
+ at Fri Jan 14 2022 09:39:45 GMT+0000 (Coordinated Universal Time)
329
329
  </div>
330
330
  </div>
331
331
  <script src="../../prettify.js"></script>