@budibase/server 2.1.32-alpha.7 → 2.1.32

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 (663) hide show
  1. package/__mocks__/aws-sdk.ts +0 -14
  2. package/__mocks__/node-fetch.ts +1 -5
  3. package/builder/assets/{index.7176fd99.css → index.534f6c29.css} +1 -1
  4. package/builder/assets/{index.e0fdcf54.js → index.968304ca.js} +316 -316
  5. package/builder/index.html +2 -2
  6. package/coverage/clover.xml +3681 -10588
  7. package/coverage/coverage-final.json +77 -225
  8. package/coverage/lcov-report/{src/api/controllers/apikeys.ts.html → api/controllers/apikeys.js.html} +26 -26
  9. package/coverage/lcov-report/{src/api/controllers/automation.ts.html → api/controllers/automation.js.html} +75 -75
  10. package/coverage/lcov-report/{src/api/controllers/cloud.ts.html → api/controllers/cloud.js.html} +47 -47
  11. package/coverage/lcov-report/{src/api/controllers/datasource.ts.html → api/controllers/datasource.js.html} +87 -246
  12. package/coverage/lcov-report/{src/api/controllers/dev.ts.html → api/controllers/dev.js.html} +71 -53
  13. package/coverage/lcov-report/api/controllers/index.html +326 -0
  14. package/coverage/lcov-report/{src/api → api}/controllers/integration.js.html +10 -10
  15. package/coverage/lcov-report/{src/api/controllers/layout.ts.html → api/controllers/layout.js.html} +26 -26
  16. package/coverage/lcov-report/{src/api/controllers/metadata.ts.html → api/controllers/metadata.js.html} +23 -26
  17. package/coverage/lcov-report/{src/api → api}/controllers/migrations.js.html +10 -10
  18. package/coverage/lcov-report/{src/api/controllers/permission.ts.html → api/controllers/permission.js.html} +71 -80
  19. package/coverage/lcov-report/{src/utilities/routing → api/controllers/query}/index.html +8 -8
  20. package/coverage/lcov-report/{src/api/controllers/query/validation.ts.html → api/controllers/query/validation.js.html} +17 -17
  21. package/coverage/lcov-report/{src/api/controllers/role.ts.html → api/controllers/role.js.html} +56 -44
  22. package/coverage/lcov-report/{src/api/controllers/routing.ts.html → api/controllers/routing.js.html} +56 -65
  23. package/coverage/lcov-report/{src/api → api}/controllers/row/external.js.html +13 -13
  24. package/coverage/lcov-report/{src/api → api}/controllers/row/index.html +46 -76
  25. package/coverage/lcov-report/{src/api → api}/controllers/row/internal.js.html +29 -26
  26. package/coverage/lcov-report/{src/api/controllers/row/internalSearch.ts.html → api/controllers/row/internalSearch.js.html} +110 -182
  27. package/coverage/lcov-report/{src/api/controllers/row/staticFormula.ts.html → api/controllers/row/staticFormula.js.html} +54 -69
  28. package/coverage/lcov-report/{src/api/controllers/row/utils.ts.html → api/controllers/row/utils.js.html} +43 -64
  29. package/coverage/lcov-report/{src/api/controllers/script.ts.html → api/controllers/script.js.html} +14 -17
  30. package/coverage/lcov-report/{src/api/controllers/table/bulkFormula.ts.html → api/controllers/table/bulkFormula.js.html} +54 -96
  31. package/coverage/lcov-report/{src/api/controllers/table/external.ts.html → api/controllers/table/external.js.html} +100 -196
  32. package/coverage/lcov-report/{src/utilities/fileSystem → api/controllers/table}/index.html +44 -44
  33. package/coverage/lcov-report/{src/api/controllers/table/index.ts.html → api/controllers/table/index.js.html} +35 -35
  34. package/coverage/lcov-report/{src/api/controllers/templates.ts.html → api/controllers/templates.js.html} +25 -34
  35. package/coverage/lcov-report/{src/api/controllers/user.ts.html → api/controllers/user.js.html} +85 -79
  36. package/coverage/lcov-report/{src/api/controllers/view/exporters.ts.html → api/controllers/view/exporters.js.html} +14 -20
  37. package/coverage/lcov-report/{src/api → api}/controllers/view/index.html +30 -30
  38. package/coverage/lcov-report/{src/api/controllers/view/index.ts.html → api/controllers/view/index.js.html} +48 -75
  39. package/coverage/lcov-report/{src/api/controllers/view/utils.ts.html → api/controllers/view/utils.js.html} +43 -61
  40. package/coverage/lcov-report/{src/api → api}/controllers/view/viewBuilder.js.html +10 -10
  41. package/coverage/lcov-report/{src/api → api}/index.html +23 -23
  42. package/coverage/lcov-report/{src/api/index.ts.html → api/index.js.html} +56 -35
  43. package/coverage/lcov-report/{src/api/routes/analytics.ts.html → api/routes/analytics.js.html} +14 -14
  44. package/coverage/lcov-report/{src/middleware/selfhost.ts.html → api/routes/apikeys.js.html} +27 -27
  45. package/coverage/lcov-report/{src/api/routes/automation.ts.html → api/routes/automation.js.html} +42 -48
  46. package/coverage/lcov-report/{src/api/routes/backup.ts.html → api/routes/cloud.js.html} +21 -21
  47. package/coverage/lcov-report/{src/api/routes/component.ts.html → api/routes/component.js.html} +17 -17
  48. package/coverage/lcov-report/{src/api/routes/datasource.ts.html → api/routes/datasource.js.html} +33 -60
  49. package/coverage/lcov-report/{src/api/routes/cloud.ts.html → api/routes/deploy.js.html} +22 -25
  50. package/coverage/lcov-report/{src/api/routes/webhook.ts.html → api/routes/dev.js.html} +43 -46
  51. package/coverage/lcov-report/{src/api → api}/routes/index.html +47 -167
  52. package/coverage/lcov-report/{src/api/routes/apikeys.ts.html → api/routes/integration.js.html} +18 -18
  53. package/coverage/lcov-report/{src/api/routes/layout.ts.html → api/routes/layout.js.html} +18 -18
  54. package/coverage/lcov-report/{src/api/routes/metadata.ts.html → api/routes/metadata.js.html} +24 -24
  55. package/coverage/lcov-report/{src/sdk/index.ts.html → api/routes/migrations.js.html} +21 -24
  56. package/coverage/lcov-report/{src/api/routes/view.ts.html → api/routes/permission.js.html} +37 -40
  57. package/coverage/lcov-report/{src/api/routes/query.ts.html → api/routes/query.js.html} +42 -33
  58. package/coverage/lcov-report/api/routes/role.js.html +130 -0
  59. package/coverage/lcov-report/{src/api/routes/routing.ts.html → api/routes/routing.js.html} +17 -17
  60. package/coverage/lcov-report/api/routes/screen.js.html +139 -0
  61. package/coverage/lcov-report/{src/api/routes/script.ts.html → api/routes/script.js.html} +17 -17
  62. package/coverage/lcov-report/{src/api/routes/table.ts.html → api/routes/table.js.html} +33 -24
  63. package/coverage/lcov-report/{src/api/routes/templates.ts.html → api/routes/templates.js.html} +18 -18
  64. package/coverage/lcov-report/{src/api/routes/user.ts.html → api/routes/user.js.html} +35 -29
  65. package/coverage/lcov-report/{src/api → api}/routes/utils/index.html +15 -15
  66. package/coverage/lcov-report/{src/api/routes/utils/validators.ts.html → api/routes/utils/validators.js.html} +58 -46
  67. package/coverage/lcov-report/{src/definitions/automations.ts.html → api/routes/view.js.html} +41 -44
  68. package/coverage/lcov-report/{src/automations → automations}/actions.js.html +10 -10
  69. package/coverage/lcov-report/{src/automations → automations}/automationUtils.js.html +10 -10
  70. package/coverage/lcov-report/{src/automations → automations}/bullboard.js.html +10 -10
  71. package/coverage/lcov-report/{src/automations → automations}/index.html +24 -39
  72. package/coverage/lcov-report/{src/automations → automations}/index.js.html +10 -10
  73. package/coverage/lcov-report/{src/automations → automations}/steps/bash.js.html +10 -10
  74. package/coverage/lcov-report/{src/automations → automations}/steps/delay.js.html +10 -10
  75. package/coverage/lcov-report/{src/automations → automations}/steps/discord.js.html +10 -10
  76. package/coverage/lcov-report/{src/automations → automations}/steps/executeQuery.js.html +10 -10
  77. package/coverage/lcov-report/{src/automations → automations}/steps/executeScript.js.html +10 -10
  78. package/coverage/lcov-report/{src/automations → automations}/steps/filter.js.html +10 -10
  79. package/coverage/lcov-report/{src/automations → automations}/steps/index.html +26 -56
  80. package/coverage/lcov-report/{src/automations → automations}/steps/integromat.js.html +10 -10
  81. package/coverage/lcov-report/{src/automations → automations}/steps/loop.js.html +10 -10
  82. package/coverage/lcov-report/{src/automations → automations}/steps/outgoingWebhook.js.html +10 -10
  83. package/coverage/lcov-report/{src/automations → automations}/steps/queryRows.js.html +10 -10
  84. package/coverage/lcov-report/{src/automations → automations}/steps/sendSmtpEmail.js.html +10 -10
  85. package/coverage/lcov-report/{src/automations → automations}/steps/serverLog.js.html +10 -10
  86. package/coverage/lcov-report/{src/automations → automations}/steps/slack.js.html +10 -10
  87. package/coverage/lcov-report/{src/automations → automations}/steps/updateRow.js.html +10 -10
  88. package/coverage/lcov-report/{src/automations → automations}/steps/utils.js.html +19 -19
  89. package/coverage/lcov-report/{src/automations → automations}/steps/zapier.js.html +10 -10
  90. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/app.js.html +10 -10
  91. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/cron.js.html +10 -10
  92. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/index.html +10 -10
  93. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/index.js.html +10 -10
  94. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/rowDeleted.js.html +10 -10
  95. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/rowSaved.js.html +10 -10
  96. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/rowUpdated.js.html +10 -10
  97. package/coverage/lcov-report/{src/automations → automations}/triggerInfo/webhook.js.html +10 -10
  98. package/coverage/lcov-report/{src/automations → automations}/triggers.js.html +23 -20
  99. package/coverage/lcov-report/{src/constants → constants}/index.html +14 -14
  100. package/coverage/lcov-report/{src/constants → constants}/index.js.html +22 -16
  101. package/coverage/lcov-report/{src/constants → constants}/layouts.js.html +10 -10
  102. package/coverage/lcov-report/{src/constants → constants}/screens.js.html +12 -12
  103. package/coverage/lcov-report/{src/db → db}/inMemoryView.js.html +13 -13
  104. package/coverage/lcov-report/{src/db → db}/index.html +27 -42
  105. package/coverage/lcov-report/{src/db → db}/index.js.html +18 -18
  106. package/coverage/lcov-report/{src/db → db}/linkedRows/LinkController.js.html +160 -22
  107. package/coverage/lcov-report/{src/db → db}/linkedRows/index.html +22 -37
  108. package/coverage/lcov-report/{src/db → db}/linkedRows/index.js.html +12 -12
  109. package/coverage/lcov-report/{src/db → db}/linkedRows/linkUtils.js.html +13 -13
  110. package/coverage/lcov-report/{src/db → db}/newid.js.html +10 -10
  111. package/coverage/lcov-report/{src/db/utils.ts.html → db/utils.js.html} +153 -105
  112. package/coverage/lcov-report/{src/events → events}/AutomationEmitter.js.html +10 -10
  113. package/coverage/lcov-report/{src/events → events}/index.html +10 -10
  114. package/coverage/lcov-report/{src/events → events}/index.js.html +10 -10
  115. package/coverage/lcov-report/{src/events → events}/utils.js.html +10 -10
  116. package/coverage/lcov-report/index.html +161 -671
  117. package/coverage/lcov-report/{src/integrations → integrations}/tests/TestConfiguration.js.html +10 -10
  118. package/coverage/lcov-report/{src/integrations → integrations}/tests/index.html +10 -10
  119. package/coverage/lcov-report/{src/middleware/appInfo.ts.html → middleware/appInfo.js.html} +28 -31
  120. package/coverage/lcov-report/{src/middleware/builder.ts.html → middleware/builder.js.html} +37 -43
  121. package/coverage/lcov-report/{src/middleware/currentapp.ts.html → middleware/currentapp.js.html} +68 -77
  122. package/coverage/lcov-report/{src/middleware → middleware}/index.html +63 -78
  123. package/coverage/lcov-report/{src/middleware/joi-validator.ts.html → middleware/joi-validator.js.html} +22 -25
  124. package/coverage/lcov-report/{src/middleware/publicApi.ts.html → middleware/publicApi.js.html} +24 -24
  125. package/coverage/lcov-report/{src/middleware/resourceId.ts.html → middleware/resourceId.js.html} +25 -40
  126. package/coverage/lcov-report/{src/tests/utilities/index.js.html → middleware/selfhost.js.html} +30 -33
  127. package/coverage/lcov-report/{src/middleware/utils.ts.html → middleware/utils.js.html} +13 -19
  128. package/coverage/lcov-report/{src/utilities/budibaseDir.ts.html → utilities/budibaseDir.js.html} +12 -12
  129. package/coverage/lcov-report/{src/utilities → utilities}/centralPath.js.html +10 -10
  130. package/coverage/lcov-report/{src/utilities → utilities}/csvParser.js.html +10 -10
  131. package/coverage/lcov-report/{src/utilities/global.ts.html → utilities/global.js.html} +74 -107
  132. package/coverage/lcov-report/{src/utilities → utilities}/index.html +61 -76
  133. package/coverage/lcov-report/{src/utilities/index.ts.html → utilities/index.js.html} +53 -77
  134. package/coverage/lcov-report/{src/utilities → utilities}/plugins.js.html +10 -10
  135. package/coverage/lcov-report/{src/utilities → utilities}/queue/inMemoryQueue.js.html +10 -10
  136. package/coverage/lcov-report/{src/utilities → utilities}/queue/index.html +10 -10
  137. package/coverage/lcov-report/{src/sdk → utilities/routing}/index.html +10 -10
  138. package/coverage/lcov-report/{src/api/routes/role.ts.html → utilities/routing/index.js.html} +42 -39
  139. package/coverage/lcov-report/{src/migrations → utilities/rowProcessor}/index.html +37 -22
  140. package/coverage/lcov-report/{src/utilities/rowProcessor/index.ts.html → utilities/rowProcessor/index.js.html} +344 -113
  141. package/coverage/lcov-report/{src/utilities/rowProcessor/utils.ts.html → utilities/rowProcessor/utils.js.html} +38 -50
  142. package/coverage/lcov-report/{src/utilities → utilities}/scriptRunner.js.html +10 -10
  143. package/coverage/lcov-report/{src/utilities/security.ts.html → utilities/security.js.html} +74 -56
  144. package/coverage/lcov-report/{src/utilities → utilities}/statusCodes.js.html +10 -10
  145. package/coverage/lcov-report/{src/utilities → utilities}/usageQuota/index.html +27 -27
  146. package/coverage/lcov-report/{src/utilities/usageQuota/rows.ts.html → utilities/usageQuota/rows.js.html} +46 -34
  147. package/coverage/lcov-report/{src/utilities → utilities}/usageQuota/usageQuoteReset.js.html +10 -10
  148. package/coverage/lcov-report/{src/utilities/users.ts.html → utilities/users.js.html} +35 -29
  149. package/coverage/lcov-report/{src/utilities/workerRequests.ts.html → utilities/workerRequests.js.html} +61 -76
  150. package/coverage/lcov.info +6772 -19273
  151. package/dist/api/controllers/apikeys.js +9 -12
  152. package/dist/api/controllers/application.js +45 -48
  153. package/dist/api/controllers/automation.js +84 -104
  154. package/dist/api/controllers/cloud.js +71 -84
  155. package/dist/api/controllers/component.js +2 -4
  156. package/dist/api/controllers/datasource.js +92 -144
  157. package/dist/api/controllers/deploy/Deployment.js +6 -10
  158. package/dist/api/controllers/deploy/index.js +16 -13
  159. package/dist/api/controllers/dev.js +81 -96
  160. package/dist/api/controllers/layout.js +15 -18
  161. package/dist/api/controllers/metadata.js +37 -51
  162. package/dist/api/controllers/permission.js +43 -52
  163. package/dist/api/controllers/plugin/index.js +7 -6
  164. package/dist/api/controllers/public/applications.js +9 -17
  165. package/dist/api/controllers/public/tables.js +9 -29
  166. package/dist/api/controllers/query/import/index.js +2 -1
  167. package/dist/api/controllers/query/index.js +13 -10
  168. package/dist/api/controllers/query/validation.js +33 -41
  169. package/dist/api/controllers/role.js +27 -29
  170. package/dist/api/controllers/routing.js +58 -71
  171. package/dist/api/controllers/row/ExternalRequest.js +8 -12
  172. package/dist/api/controllers/row/external.js +3 -3
  173. package/dist/api/controllers/row/index.js +7 -16
  174. package/dist/api/controllers/row/internal.js +12 -11
  175. package/dist/api/controllers/row/internalSearch.js +80 -95
  176. package/dist/api/controllers/row/staticFormula.js +75 -85
  177. package/dist/api/controllers/row/utils.js +84 -118
  178. package/dist/api/controllers/screen.js +66 -81
  179. package/dist/api/controllers/script.js +6 -13
  180. package/dist/api/controllers/static/index.js +11 -9
  181. package/dist/api/controllers/table/bulkFormula.js +35 -47
  182. package/dist/api/controllers/table/external.js +57 -67
  183. package/dist/api/controllers/table/index.js +33 -66
  184. package/dist/api/controllers/table/internal.js +6 -5
  185. package/dist/api/controllers/table/utils.js +35 -39
  186. package/dist/api/controllers/templates.js +10 -17
  187. package/dist/api/controllers/user.js +70 -82
  188. package/dist/api/controllers/view/exporters.js +4 -8
  189. package/dist/api/controllers/view/index.js +153 -201
  190. package/dist/api/controllers/view/utils.js +121 -151
  191. package/dist/api/index.js +34 -38
  192. package/dist/api/routes/analytics.js +3 -29
  193. package/dist/api/routes/apikeys.js +7 -33
  194. package/dist/api/routes/application.js +9 -8
  195. package/dist/api/routes/auth.js +2 -1
  196. package/dist/api/routes/automation.js +20 -46
  197. package/dist/api/routes/backup.js +4 -3
  198. package/dist/api/routes/cloud.js +6 -32
  199. package/dist/api/routes/component.js +6 -32
  200. package/dist/api/routes/datasource.js +13 -39
  201. package/dist/api/routes/deploy.js +8 -34
  202. package/dist/api/routes/dev.js +10 -36
  203. package/dist/api/routes/integration.js +7 -10
  204. package/dist/api/routes/layout.js +7 -33
  205. package/dist/api/routes/metadata.js +10 -36
  206. package/dist/api/routes/migrations.js +6 -32
  207. package/dist/api/routes/permission.js +12 -38
  208. package/dist/api/routes/plugin.js +5 -5
  209. package/dist/api/routes/public/index.js +9 -9
  210. package/dist/api/routes/query.js +15 -42
  211. package/dist/api/routes/role.js +10 -36
  212. package/dist/api/routes/routing.js +6 -32
  213. package/dist/api/routes/row.js +11 -12
  214. package/dist/api/routes/screen.js +9 -35
  215. package/dist/api/routes/script.js +6 -32
  216. package/dist/api/routes/static.js +9 -9
  217. package/dist/api/routes/table.js +13 -40
  218. package/dist/api/routes/templates.js +7 -33
  219. package/dist/api/routes/tests/utilities/TestFunctions.js +8 -6
  220. package/dist/api/routes/user.js +13 -40
  221. package/dist/api/routes/utils/validators.js +126 -142
  222. package/dist/api/routes/view.js +12 -38
  223. package/dist/api/routes/webhook.js +2 -1
  224. package/dist/app.js +4 -3
  225. package/dist/automations/tests/utilities/index.js +12 -21
  226. package/dist/automations/triggers.js +6 -5
  227. package/dist/automations/utils.js +8 -9
  228. package/dist/constants/index.js +5 -3
  229. package/dist/constants/screens.js +2 -2
  230. package/dist/db/inMemoryView.js +3 -3
  231. package/dist/db/linkedRows/LinkController.js +31 -4
  232. package/dist/db/linkedRows/index.js +2 -2
  233. package/dist/db/linkedRows/linkUtils.js +3 -3
  234. package/dist/db/utils.js +119 -146
  235. package/dist/db/views/staticViews.js +4 -4
  236. package/dist/integrations/elasticsearch.js +2 -26
  237. package/dist/integrations/googlesheets.js +6 -4
  238. package/dist/integrations/index.js +6 -15
  239. package/dist/integrations/s3.js +1 -157
  240. package/dist/middleware/appInfo.js +9 -14
  241. package/dist/middleware/authorized.js +21 -22
  242. package/dist/middleware/builder.js +40 -41
  243. package/dist/middleware/currentapp.js +37 -39
  244. package/dist/middleware/joi-validator.js +10 -17
  245. package/dist/middleware/publicApi.js +6 -5
  246. package/dist/middleware/resourceId.js +9 -16
  247. package/dist/middleware/selfhost.js +4 -5
  248. package/dist/middleware/utils.js +2 -5
  249. package/dist/migrations/functions/appUrls.js +2 -2
  250. package/dist/migrations/functions/backfill/global.js +1 -1
  251. package/dist/migrations/functions/usageQuotas/syncApps.js +4 -3
  252. package/dist/migrations/functions/usageQuotas/syncRows.js +4 -3
  253. package/dist/migrations/functions/userEmailViewCasing.js +3 -3
  254. package/dist/package.json +44 -10
  255. package/dist/sdk/app/backups/exports.js +2 -1
  256. package/dist/sdk/app/backups/imports.js +3 -2
  257. package/dist/sdk/app/tables/index.js +5 -5
  258. package/dist/startup.js +4 -4
  259. package/dist/tests/utilities/TestConfiguration.js +36 -30
  260. package/dist/tests/utilities/structures.js +4 -3
  261. package/dist/threads/automation.js +16 -15
  262. package/dist/threads/query.js +19 -17
  263. package/dist/threads/utils.js +9 -11
  264. package/dist/tsconfig.build.tsbuildinfo +1 -1
  265. package/dist/utilities/budibaseDir.js +2 -4
  266. package/dist/utilities/fileSystem/clientLibrary.js +12 -12
  267. package/dist/utilities/fileSystem/index.js +3 -3
  268. package/dist/utilities/fileSystem/utilities.js +22 -0
  269. package/dist/utilities/global.js +66 -87
  270. package/dist/utilities/index.js +75 -102
  271. package/dist/utilities/redis.js +65 -100
  272. package/dist/utilities/routing/index.js +23 -27
  273. package/dist/utilities/rowProcessor/index.js +191 -124
  274. package/dist/utilities/rowProcessor/utils.js +26 -35
  275. package/dist/utilities/security.js +35 -39
  276. package/dist/utilities/usageQuota/rows.js +49 -56
  277. package/dist/utilities/users.js +28 -31
  278. package/dist/utilities/workerRequests.js +82 -115
  279. package/dist/watch.js +2 -1
  280. package/package.json +45 -11
  281. package/scripts/exportAppTemplate.js +2 -2
  282. package/{src/tests/jestSetup.ts → scripts/jestSetup.js} +2 -11
  283. package/scripts/localdomain.js +6 -34
  284. package/src/api/controllers/{apikeys.ts → apikeys.js} +10 -10
  285. package/src/api/controllers/application.ts +42 -56
  286. package/src/api/controllers/auth.ts +3 -4
  287. package/src/api/controllers/{automation.ts → automation.js} +48 -48
  288. package/src/api/controllers/{cloud.ts → cloud.js} +24 -24
  289. package/src/api/controllers/component.ts +1 -2
  290. package/src/api/controllers/{datasource.ts → datasource.js} +47 -100
  291. package/src/api/controllers/deploy/{Deployment.ts → Deployment.js} +10 -13
  292. package/src/api/controllers/deploy/index.ts +25 -13
  293. package/src/api/controllers/{dev.ts → dev.js} +37 -31
  294. package/src/api/controllers/{layout.ts → layout.js} +8 -8
  295. package/src/api/controllers/{metadata.ts → metadata.js} +10 -11
  296. package/src/api/controllers/{permission.ts → permission.js} +46 -49
  297. package/src/api/controllers/plugin/index.ts +5 -4
  298. package/src/api/controllers/public/applications.ts +9 -15
  299. package/src/api/controllers/public/tables.ts +2 -2
  300. package/src/api/controllers/query/import/index.ts +3 -2
  301. package/src/api/controllers/query/index.ts +14 -11
  302. package/src/api/controllers/query/{validation.ts → validation.js} +7 -7
  303. package/src/api/controllers/{role.ts → role.js} +25 -21
  304. package/src/api/controllers/{routing.ts → routing.js} +34 -37
  305. package/src/api/controllers/row/ExternalRequest.ts +11 -9
  306. package/src/api/controllers/row/external.js +3 -3
  307. package/src/api/controllers/row/index.ts +9 -17
  308. package/src/api/controllers/row/internal.js +12 -11
  309. package/src/api/controllers/row/{internalSearch.ts → internalSearch.js} +68 -92
  310. package/src/api/controllers/row/{staticFormula.ts → staticFormula.js} +23 -28
  311. package/src/api/controllers/row/{utils.ts → utils.js} +18 -25
  312. package/src/api/controllers/screen.ts +6 -10
  313. package/src/api/controllers/script.js +11 -0
  314. package/src/api/controllers/static/index.ts +13 -9
  315. package/src/api/controllers/table/{bulkFormula.ts → bulkFormula.js} +25 -39
  316. package/src/api/controllers/table/{external.ts → external.js} +54 -86
  317. package/src/api/controllers/table/{index.ts → index.js} +17 -17
  318. package/src/api/controllers/table/internal.ts +6 -5
  319. package/src/api/controllers/table/utils.ts +21 -26
  320. package/src/api/controllers/{templates.ts → templates.js} +7 -10
  321. package/src/api/controllers/{user.ts → user.js} +49 -47
  322. package/src/api/controllers/view/{exporters.ts → exporters.js} +3 -5
  323. package/src/api/controllers/view/{index.ts → index.js} +27 -36
  324. package/src/api/controllers/view/{utils.ts → utils.js} +20 -26
  325. package/src/api/{index.ts → index.js} +22 -15
  326. package/src/api/routes/analytics.js +9 -0
  327. package/src/api/routes/apikeys.js +12 -0
  328. package/src/api/routes/application.ts +9 -17
  329. package/src/api/routes/auth.ts +2 -2
  330. package/src/api/routes/automation.js +85 -0
  331. package/src/api/routes/backup.ts +4 -8
  332. package/src/api/routes/cloud.js +14 -0
  333. package/src/api/routes/component.js +14 -0
  334. package/src/api/routes/datasource.js +51 -0
  335. package/src/api/routes/deploy.js +17 -0
  336. package/src/api/routes/dev.js +26 -0
  337. package/src/api/routes/integration.js +12 -0
  338. package/src/api/routes/layout.js +16 -0
  339. package/src/api/routes/{metadata.ts → metadata.js} +13 -13
  340. package/src/api/routes/migrations.js +14 -0
  341. package/src/api/routes/permission.js +33 -0
  342. package/src/api/routes/plugin.ts +6 -14
  343. package/src/api/routes/public/index.ts +10 -10
  344. package/src/api/routes/public/tests/compare.spec.js +1 -1
  345. package/src/api/routes/{query.ts → query.js} +22 -19
  346. package/src/api/routes/role.js +15 -0
  347. package/src/api/routes/routing.js +14 -0
  348. package/src/api/routes/row.ts +15 -13
  349. package/src/api/routes/screen.js +18 -0
  350. package/src/api/routes/script.js +10 -0
  351. package/src/api/routes/static.ts +10 -7
  352. package/src/api/routes/{table.ts → table.js} +13 -10
  353. package/src/api/routes/templates.js +16 -0
  354. package/src/api/routes/tests/analytics.spec.js +1 -1
  355. package/src/api/routes/tests/backup.spec.js +1 -9
  356. package/src/api/routes/tests/permissions.spec.js +1 -2
  357. package/src/api/routes/tests/query.spec.js +10 -15
  358. package/src/api/routes/tests/role.spec.js +9 -7
  359. package/src/api/routes/tests/routing.spec.js +1 -2
  360. package/src/api/routes/tests/row.spec.js +4 -3
  361. package/src/api/routes/tests/static.spec.js +2 -2
  362. package/src/api/routes/tests/table.spec.js +35 -38
  363. package/src/api/routes/tests/user.spec.js +1 -2
  364. package/src/api/routes/tests/utilities/TestFunctions.ts +8 -6
  365. package/src/api/routes/user.js +53 -0
  366. package/src/api/routes/utils/{validators.ts → validators.js} +37 -33
  367. package/src/api/routes/view.js +31 -0
  368. package/src/api/routes/webhook.ts +2 -2
  369. package/src/app.ts +4 -3
  370. package/src/automations/tests/updateRow.spec.js +1 -0
  371. package/src/automations/tests/utilities/index.js +4 -10
  372. package/src/automations/triggers.js +6 -5
  373. package/src/automations/utils.ts +12 -9
  374. package/src/constants/index.js +5 -3
  375. package/src/constants/screens.js +2 -2
  376. package/src/db/inMemoryView.js +3 -3
  377. package/src/db/linkedRows/LinkController.js +50 -4
  378. package/src/db/linkedRows/index.js +2 -2
  379. package/src/db/linkedRows/linkUtils.js +3 -3
  380. package/src/db/tests/linkController.spec.js +57 -73
  381. package/src/db/tests/linkTests.spec.js +14 -17
  382. package/src/db/{utils.ts → utils.js} +93 -77
  383. package/src/db/views/staticViews.js +4 -4
  384. package/src/integrations/base/sql.ts +1 -1
  385. package/src/integrations/base/sqlTable.ts +1 -1
  386. package/src/integrations/elasticsearch.ts +2 -32
  387. package/src/integrations/googlesheets.ts +7 -4
  388. package/src/integrations/index.ts +41 -45
  389. package/src/integrations/s3.ts +3 -179
  390. package/src/integrations/tests/s3.spec.ts +1 -85
  391. package/src/middleware/appInfo.js +19 -0
  392. package/src/middleware/authorized.ts +28 -21
  393. package/src/middleware/{builder.ts → builder.js} +15 -17
  394. package/src/middleware/{currentapp.ts → currentapp.js} +39 -42
  395. package/src/middleware/{joi-validator.ts → joi-validator.js} +8 -9
  396. package/src/middleware/publicApi.js +21 -0
  397. package/src/middleware/{resourceId.ts → resourceId.js} +11 -16
  398. package/src/middleware/{selfhost.ts → selfhost.js} +2 -4
  399. package/src/middleware/tests/authorized.spec.js +6 -5
  400. package/src/middleware/tests/currentapp.spec.js +63 -118
  401. package/src/middleware/{utils.ts → utils.js} +1 -3
  402. package/src/migrations/functions/appUrls.ts +2 -2
  403. package/src/migrations/functions/backfill/app/tables.ts +5 -2
  404. package/src/migrations/functions/backfill/global.ts +1 -1
  405. package/src/migrations/functions/tests/appUrls.spec.js +4 -4
  406. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +9 -14
  407. package/src/migrations/functions/usageQuotas/syncApps.ts +4 -3
  408. package/src/migrations/functions/usageQuotas/syncRows.ts +5 -4
  409. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
  410. package/src/migrations/functions/userEmailViewCasing.ts +3 -3
  411. package/src/module.d.ts +14 -0
  412. package/src/sdk/app/backups/exports.ts +3 -5
  413. package/src/sdk/app/backups/imports.ts +14 -7
  414. package/src/sdk/app/backups/statistics.ts +18 -9
  415. package/src/sdk/app/tables/index.ts +8 -7
  416. package/src/startup.ts +2 -2
  417. package/src/tests/utilities/TestConfiguration.js +36 -42
  418. package/src/tests/utilities/structures.js +4 -3
  419. package/src/threads/automation.ts +16 -15
  420. package/src/threads/query.ts +16 -11
  421. package/src/threads/utils.ts +5 -4
  422. package/src/utilities/budibaseDir.js +3 -0
  423. package/src/utilities/fileSystem/clientLibrary.js +12 -12
  424. package/src/utilities/fileSystem/index.js +8 -8
  425. package/src/utilities/fileSystem/utilities.js +36 -0
  426. package/src/utilities/global.js +127 -0
  427. package/src/utilities/{index.ts → index.js} +32 -40
  428. package/src/utilities/{redis.ts → redis.js} +20 -21
  429. package/src/utilities/routing/index.js +25 -0
  430. package/src/utilities/rowProcessor/{index.ts → index.js} +142 -65
  431. package/src/utilities/rowProcessor/{utils.ts → utils.js} +15 -19
  432. package/src/utilities/security.js +71 -0
  433. package/src/utilities/usageQuota/{rows.ts → rows.js} +18 -14
  434. package/src/utilities/{users.ts → users.js} +13 -11
  435. package/src/utilities/{workerRequests.ts → workerRequests.js} +38 -43
  436. package/src/watch.ts +3 -2
  437. package/tsconfig.json +1 -3
  438. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +0 -190
  439. package/coverage/lcov-report/src/api/controllers/application.ts.html +0 -2038
  440. package/coverage/lcov-report/src/api/controllers/auth.ts.html +0 -301
  441. package/coverage/lcov-report/src/api/controllers/backup.ts.html +0 -148
  442. package/coverage/lcov-report/src/api/controllers/component.ts.html +0 -259
  443. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +0 -259
  444. package/coverage/lcov-report/src/api/controllers/deploy/index.html +0 -131
  445. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +0 -730
  446. package/coverage/lcov-report/src/api/controllers/index.html +0 -431
  447. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +0 -130
  448. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +0 -310
  449. package/coverage/lcov-report/src/api/controllers/plugin/index.html +0 -206
  450. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +0 -484
  451. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +0 -253
  452. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +0 -97
  453. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +0 -121
  454. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +0 -142
  455. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +0 -334
  456. package/coverage/lcov-report/src/api/controllers/public/index.html +0 -191
  457. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +0 -181
  458. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +0 -191
  459. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +0 -124
  460. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +0 -202
  461. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +0 -178
  462. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +0 -163
  463. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +0 -181
  464. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +0 -145
  465. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +0 -328
  466. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +0 -253
  467. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +0 -268
  468. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +0 -220
  469. package/coverage/lcov-report/src/api/controllers/query/import/index.html +0 -116
  470. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +0 -373
  471. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +0 -131
  472. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +0 -379
  473. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +0 -157
  474. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +0 -403
  475. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +0 -146
  476. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +0 -586
  477. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +0 -712
  478. package/coverage/lcov-report/src/api/controllers/query/index.html +0 -131
  479. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +0 -976
  480. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +0 -2320
  481. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +0 -541
  482. package/coverage/lcov-report/src/api/controllers/screen.ts.html +0 -463
  483. package/coverage/lcov-report/src/api/controllers/static/index.html +0 -116
  484. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +0 -688
  485. package/coverage/lcov-report/src/api/controllers/table/index.html +0 -176
  486. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +0 -661
  487. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +0 -1255
  488. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +0 -379
  489. package/coverage/lcov-report/src/api/routes/application.ts.html +0 -223
  490. package/coverage/lcov-report/src/api/routes/auth.ts.html +0 -109
  491. package/coverage/lcov-report/src/api/routes/deploy.ts.html +0 -148
  492. package/coverage/lcov-report/src/api/routes/dev.ts.html +0 -199
  493. package/coverage/lcov-report/src/api/routes/index.ts.html +0 -289
  494. package/coverage/lcov-report/src/api/routes/integration.ts.html +0 -133
  495. package/coverage/lcov-report/src/api/routes/migrations.ts.html +0 -127
  496. package/coverage/lcov-report/src/api/routes/permission.ts.html +0 -208
  497. package/coverage/lcov-report/src/api/routes/plugin.ts.html +0 -151
  498. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +0 -541
  499. package/coverage/lcov-report/src/api/routes/public/index.html +0 -191
  500. package/coverage/lcov-report/src/api/routes/public/index.ts.html +0 -502
  501. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +0 -116
  502. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +0 -328
  503. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +0 -313
  504. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +0 -598
  505. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +0 -586
  506. package/coverage/lcov-report/src/api/routes/public/users.ts.html +0 -511
  507. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +0 -238
  508. package/coverage/lcov-report/src/api/routes/public/utils/index.html +0 -116
  509. package/coverage/lcov-report/src/api/routes/row.ts.html +0 -883
  510. package/coverage/lcov-report/src/api/routes/screen.ts.html +0 -154
  511. package/coverage/lcov-report/src/api/routes/static.ts.html +0 -280
  512. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +0 -550
  513. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +0 -131
  514. package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +0 -367
  515. package/coverage/lcov-report/src/app.ts.html +0 -400
  516. package/coverage/lcov-report/src/automations/logging/index.html +0 -116
  517. package/coverage/lcov-report/src/automations/logging/index.ts.html +0 -199
  518. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +0 -367
  519. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +0 -334
  520. package/coverage/lcov-report/src/automations/tests/utilities/index.html +0 -116
  521. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +0 -256
  522. package/coverage/lcov-report/src/automations/utils.ts.html +0 -886
  523. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +0 -2023
  524. package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +0 -541
  525. package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +0 -427
  526. package/coverage/lcov-report/src/db/defaultData/index.html +0 -176
  527. package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +0 -403
  528. package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +0 -559
  529. package/coverage/lcov-report/src/db/dynamoClient.js.html +0 -466
  530. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +0 -226
  531. package/coverage/lcov-report/src/definitions/datasource.ts.html +0 -235
  532. package/coverage/lcov-report/src/definitions/index.html +0 -131
  533. package/coverage/lcov-report/src/environment.js.html +0 -445
  534. package/coverage/lcov-report/src/index.html +0 -191
  535. package/coverage/lcov-report/src/index.ts.html +0 -133
  536. package/coverage/lcov-report/src/integrations/airtable.ts.html +0 -529
  537. package/coverage/lcov-report/src/integrations/arangodb.ts.html +0 -415
  538. package/coverage/lcov-report/src/integrations/base/index.html +0 -161
  539. package/coverage/lcov-report/src/integrations/base/query.ts.html +0 -133
  540. package/coverage/lcov-report/src/integrations/base/sql.ts.html +0 -1951
  541. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +0 -691
  542. package/coverage/lcov-report/src/integrations/base/utils.ts.html +0 -121
  543. package/coverage/lcov-report/src/integrations/couchdb.ts.html +0 -406
  544. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +0 -745
  545. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +0 -634
  546. package/coverage/lcov-report/src/integrations/firebase.ts.html +0 -646
  547. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +0 -1312
  548. package/coverage/lcov-report/src/integrations/index.html +0 -371
  549. package/coverage/lcov-report/src/integrations/index.ts.html +0 -445
  550. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +0 -1006
  551. package/coverage/lcov-report/src/integrations/mongodb.ts.html +0 -1867
  552. package/coverage/lcov-report/src/integrations/mysql.ts.html +0 -952
  553. package/coverage/lcov-report/src/integrations/oracle.ts.html +0 -1474
  554. package/coverage/lcov-report/src/integrations/postgres.ts.html +0 -1069
  555. package/coverage/lcov-report/src/integrations/queries/index.html +0 -116
  556. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +0 -463
  557. package/coverage/lcov-report/src/integrations/redis.ts.html +0 -550
  558. package/coverage/lcov-report/src/integrations/rest.ts.html +0 -1381
  559. package/coverage/lcov-report/src/integrations/s3.ts.html +0 -862
  560. package/coverage/lcov-report/src/integrations/snowflake.ts.html +0 -376
  561. package/coverage/lcov-report/src/integrations/utils.ts.html +0 -1006
  562. package/coverage/lcov-report/src/middleware/authorized.ts.html +0 -460
  563. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +0 -187
  564. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +0 -163
  565. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +0 -151
  566. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +0 -206
  567. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +0 -172
  568. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +0 -226
  569. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +0 -151
  570. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +0 -151
  571. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +0 -166
  572. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +0 -532
  573. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +0 -283
  574. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +0 -146
  575. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +0 -265
  576. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +0 -232
  577. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +0 -724
  578. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +0 -161
  579. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +0 -106
  580. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +0 -235
  581. package/coverage/lcov-report/src/migrations/functions/index.html +0 -146
  582. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +0 -130
  583. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +0 -161
  584. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +0 -94
  585. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +0 -127
  586. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +0 -115
  587. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +0 -169
  588. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +0 -124
  589. package/coverage/lcov-report/src/migrations/index.ts.html +0 -403
  590. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +0 -205
  591. package/coverage/lcov-report/src/migrations/tests/index.html +0 -131
  592. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +0 -283
  593. package/coverage/lcov-report/src/sdk/app/automations/index.html +0 -131
  594. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +0 -100
  595. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +0 -214
  596. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +0 -91
  597. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +0 -604
  598. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +0 -682
  599. package/coverage/lcov-report/src/sdk/app/backups/index.html +0 -176
  600. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +0 -112
  601. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +0 -292
  602. package/coverage/lcov-report/src/sdk/app/tables/index.html +0 -116
  603. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +0 -265
  604. package/coverage/lcov-report/src/startup.ts.html +0 -499
  605. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +0 -1885
  606. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +0 -133
  607. package/coverage/lcov-report/src/tests/utilities/index.html +0 -161
  608. package/coverage/lcov-report/src/tests/utilities/structures.js.html +0 -649
  609. package/coverage/lcov-report/src/threads/automation.ts.html +0 -1594
  610. package/coverage/lcov-report/src/threads/index.html +0 -161
  611. package/coverage/lcov-report/src/threads/index.ts.html +0 -418
  612. package/coverage/lcov-report/src/threads/query.ts.html +0 -961
  613. package/coverage/lcov-report/src/threads/utils.ts.html +0 -373
  614. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +0 -547
  615. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +0 -1141
  616. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +0 -148
  617. package/coverage/lcov-report/src/utilities/redis.ts.html +0 -343
  618. package/coverage/lcov-report/src/utilities/routing/index.ts.html +0 -181
  619. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +0 -146
  620. package/coverage/lcov-report/src/utilities/rowProcessor/map.js.html +0 -370
  621. package/coverage/lcov-report/src/watch.ts.html +0 -196
  622. package/coverage/lcov-report/src/websocket.ts.html +0 -163
  623. package/dist/db/defaultData/datasource_bb_default.js +0 -565
  624. package/dist/db/defaultData/employeeImport.js +0 -153
  625. package/dist/db/defaultData/expensesImport.js +0 -115
  626. package/dist/db/defaultData/inventoryImport.js +0 -107
  627. package/dist/db/defaultData/jobsImport.js +0 -150
  628. package/dist/db/linkedRows/LinkDocument.js +0 -32
  629. package/dist/utilities/rowProcessor/map.js +0 -96
  630. package/jest.config.ts +0 -33
  631. package/src/api/controllers/script.ts +0 -12
  632. package/src/api/routes/analytics.ts +0 -9
  633. package/src/api/routes/apikeys.ts +0 -12
  634. package/src/api/routes/automation.ts +0 -87
  635. package/src/api/routes/cloud.ts +0 -18
  636. package/src/api/routes/component.ts +0 -14
  637. package/src/api/routes/datasource.ts +0 -60
  638. package/src/api/routes/deploy.ts +0 -21
  639. package/src/api/routes/dev.ts +0 -38
  640. package/src/api/routes/integration.ts +0 -16
  641. package/src/api/routes/layout.ts +0 -16
  642. package/src/api/routes/migrations.ts +0 -14
  643. package/src/api/routes/permission.ts +0 -41
  644. package/src/api/routes/role.ts +0 -24
  645. package/src/api/routes/routing.ts +0 -14
  646. package/src/api/routes/screen.ts +0 -23
  647. package/src/api/routes/script.ts +0 -10
  648. package/src/api/routes/templates.ts +0 -16
  649. package/src/api/routes/user.ts +0 -51
  650. package/src/api/routes/view.ts +0 -34
  651. package/src/db/defaultData/datasource_bb_default.js +0 -646
  652. package/src/db/defaultData/employeeImport.js +0 -152
  653. package/src/db/defaultData/expensesImport.js +0 -114
  654. package/src/db/defaultData/inventoryImport.js +0 -106
  655. package/src/db/defaultData/jobsImport.js +0 -158
  656. package/src/db/linkedRows/LinkDocument.js +0 -47
  657. package/src/middleware/appInfo.ts +0 -20
  658. package/src/middleware/publicApi.ts +0 -21
  659. package/src/utilities/budibaseDir.ts +0 -3
  660. package/src/utilities/global.ts +0 -138
  661. package/src/utilities/routing/index.ts +0 -32
  662. package/src/utilities/rowProcessor/map.js +0 -95
  663. package/src/utilities/security.ts +0 -65
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const { roles } = require("@budibase/backend-core");
2
+ const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles");
3
3
  const { BASE_LAYOUT_PROP_IDS } = require("./layouts");
4
4
  exports.createHomeScreen = () => ({
5
5
  description: "",
@@ -40,7 +40,7 @@ exports.createHomeScreen = () => ({
40
40
  },
41
41
  routing: {
42
42
  route: "/",
43
- roleId: roles.BUILTIN_ROLE_IDS.BASIC,
43
+ roleId: BUILTIN_ROLE_IDS.BASIC,
44
44
  },
45
45
  name: "home-screen",
46
46
  });
@@ -11,8 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  const newid = require("./newid");
12
12
  // bypass the main application db config
13
13
  // use in memory pouchdb directly
14
- const { db: dbCore } = require("@budibase/backend-core");
15
- const Pouch = dbCore.getPouch({ inMemory: true });
14
+ const { getPouch, closeDB } = require("@budibase/backend-core/db");
15
+ const Pouch = getPouch({ inMemory: true });
16
16
  exports.runView = (view, calculation, group, data) => __awaiter(void 0, void 0, void 0, function* () {
17
17
  // use a different ID each time for the DB, make sure they
18
18
  // are always unique for each query, don't want overlap
@@ -48,6 +48,6 @@ exports.runView = (view, calculation, group, data) => __awaiter(void 0, void 0,
48
48
  }
49
49
  finally {
50
50
  yield db.destroy();
51
- yield dbCore.closePouchDB(db);
51
+ yield closeDB(db);
52
52
  }
53
53
  });
@@ -9,14 +9,41 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  const { IncludeDocs, getLinkDocuments } = require("./linkUtils");
12
- const { InternalTables, getUserMetadataParams } = require("../utils");
12
+ const { generateLinkID, InternalTables, getUserMetadataParams, } = require("../utils");
13
13
  const Sentry = require("@sentry/node");
14
14
  const { FieldTypes, RelationshipTypes } = require("../../constants");
15
- const { context } = require("@budibase/backend-core");
16
- const LinkDocument = require("./LinkDocument");
15
+ const { getAppDB } = require("@budibase/backend-core/context");
16
+ /**
17
+ * Creates a new link document structure which can be put to the database. It is important to
18
+ * note that while this talks about linker/linked the link is bi-directional and for all intent
19
+ * and purposes it does not matter from which direction the link was initiated.
20
+ * @param {string} tableId1 The ID of the first table (the linker).
21
+ * @param {string} tableId2 The ID of the second table (the linked).
22
+ * @param {string} fieldName1 The name of the field in the linker table.
23
+ * @param {string} fieldName2 The name of the field in the linked table.
24
+ * @param {string} rowId1 The ID of the row which is acting as the linker.
25
+ * @param {string} rowId2 The ID of the row which is acting as the linked.
26
+ * @constructor
27
+ */
28
+ function LinkDocument(tableId1, fieldName1, rowId1, tableId2, fieldName2, rowId2) {
29
+ // build the ID out of unique references to this link document
30
+ this._id = generateLinkID(tableId1, tableId2, rowId1, rowId2, fieldName1, fieldName2);
31
+ // required for referencing in view
32
+ this.type = FieldTypes.LINK;
33
+ this.doc1 = {
34
+ tableId: tableId1,
35
+ fieldName: fieldName1,
36
+ rowId: rowId1,
37
+ };
38
+ this.doc2 = {
39
+ tableId: tableId2,
40
+ fieldName: fieldName2,
41
+ rowId: rowId2,
42
+ };
43
+ }
17
44
  class LinkController {
18
45
  constructor({ tableId, row, table, oldTable }) {
19
- this._db = context.getAppDB();
46
+ this._db = getAppDB();
20
47
  this._tableId = tableId;
21
48
  this._row = row;
22
49
  this._table = table;
@@ -16,7 +16,7 @@ const { getMultiIDParams, USER_METDATA_PREFIX } = require("../../db/utils");
16
16
  const { partition } = require("lodash");
17
17
  const { getGlobalUsersFromMetadata } = require("../../utilities/global");
18
18
  const { processFormulas } = require("../../utilities/rowProcessor/utils");
19
- const { context } = require("@budibase/backend-core");
19
+ const { getAppDB } = require("@budibase/backend-core/context");
20
20
  /**
21
21
  * This functionality makes sure that when rows with links are created, updated or deleted they are processed
22
22
  * correctly - making sure that no stale links are left around and that all links have been made successfully.
@@ -64,7 +64,7 @@ function getLinksForRows(rows) {
64
64
  function getFullLinkedDocs(links) {
65
65
  return __awaiter(this, void 0, void 0, function* () {
66
66
  // create DBs
67
- const db = context.getAppDB();
67
+ const db = getAppDB();
68
68
  const linkedRowIds = links.map(link => link.id);
69
69
  const uniqueRowIds = [...new Set(linkedRowIds)];
70
70
  let dbRows = (yield db.allDocs(getMultiIDParams(uniqueRowIds))).rows.map(row => row.doc);
@@ -12,7 +12,7 @@ const Sentry = require("@sentry/node");
12
12
  const { ViewName, getQueryIndex } = require("../utils");
13
13
  const { FieldTypes } = require("../../constants");
14
14
  const { createLinkView } = require("../views/staticViews");
15
- const { context } = require("@budibase/backend-core");
15
+ const { getAppDB } = require("@budibase/backend-core/context");
16
16
  /**
17
17
  * Only needed so that boolean parameters are being used for includeDocs
18
18
  * @type {{EXCLUDE: boolean, INCLUDE: boolean}}
@@ -38,7 +38,7 @@ exports.createLinkView = createLinkView;
38
38
  exports.getLinkDocuments = function (args) {
39
39
  return __awaiter(this, arguments, void 0, function* () {
40
40
  const { tableId, rowId, includeDocs } = args;
41
- const db = context.getAppDB();
41
+ const db = getAppDB();
42
42
  let params;
43
43
  if (rowId != null) {
44
44
  params = { key: [tableId, rowId] };
@@ -95,7 +95,7 @@ exports.getLinkedTableIDs = table => {
95
95
  .map(column => column.tableId);
96
96
  };
97
97
  exports.getLinkedTable = (id, tables) => __awaiter(void 0, void 0, void 0, function* () {
98
- const db = context.getAppDB();
98
+ const db = getAppDB();
99
99
  let linkedTable = tables.find(table => table._id === id);
100
100
  if (linkedTable) {
101
101
  return linkedTable;
package/dist/db/utils.js CHANGED
@@ -1,93 +1,87 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateMemoryViewID = exports.getMetadataParams = exports.generateMetadataID = exports.generateUserFlagID = exports.getQueryParams = exports.getAutomationMetadataParams = exports.generateAutomationMetadataID = exports.generateQueryID = exports.getDatasourceParams = exports.generateDatasourceID = exports.getWebhookParams = exports.generateWebhookID = exports.getScreenParams = exports.generateScreenID = exports.getLayoutParams = exports.generateLayoutID = exports.getLinkParams = exports.generateLinkID = exports.generateAutomationID = exports.getAutomationParams = exports.getTableIDFromRowID = exports.generateTableID = exports.getTableParams = exports.getGlobalIDFromUserMetadataID = exports.generateUserMetadataID = exports.getUserMetadataParams = exports.generateRowID = exports.getRowParams = exports.getDocParams = exports.getQueryIndex = exports.getRoleParams = exports.generateRoleID = exports.generateDevAppID = exports.generateAppID = exports.UNICODE_MAX = exports.InternalTables = exports.ViewName = exports.TABLE_ROW_PREFIX = exports.LINK_USER_METADATA_PREFIX = exports.USER_METDATA_PREFIX = exports.isProdAppID = exports.isDevAppID = exports.APP_DEV_PREFIX = exports.APP_PREFIX = exports.DocumentType = exports.StaticDatabases = exports.SEPARATOR = exports.BudibaseInternalDB = exports.SearchIndexes = exports.AppStatus = void 0;
7
- exports.getMultiIDParams = exports.generatePluginID = exports.getMemoryViewParams = void 0;
8
- const newid_1 = __importDefault(require("./newid"));
9
- const backend_core_1 = require("@budibase/backend-core");
10
- exports.AppStatus = {
2
+ const newid = require("./newid");
3
+ const { DocumentType: CoreDocType, InternalTable, getRoleParams, generateRoleID, APP_DEV_PREFIX, APP_PREFIX, SEPARATOR, StaticDatabases, isDevAppID, isProdAppID, getDevelopmentAppID, generateAppID, getQueryIndex, ViewName, getDocParams, getRowParams, generateRowID, getUserMetadataParams, generateUserMetadataID, getGlobalIDFromUserMetadataID, } = require("@budibase/backend-core/db");
4
+ const UNICODE_MAX = "\ufff0";
5
+ const AppStatus = {
11
6
  DEV: "development",
12
7
  ALL: "all",
13
8
  DEPLOYED: "published",
14
9
  };
15
- exports.SearchIndexes = {
10
+ const DocumentType = CoreDocType;
11
+ const SearchIndexes = {
16
12
  ROWS: "rows",
17
13
  };
18
- exports.BudibaseInternalDB = {
14
+ exports.StaticDatabases = StaticDatabases;
15
+ const BudibaseInternalDB = {
19
16
  _id: "bb_internal",
20
- type: backend_core_1.db.BUDIBASE_DATASOURCE_TYPE,
17
+ type: "budibase",
21
18
  name: "Budibase DB",
22
19
  source: "BUDIBASE",
23
20
  config: {},
24
21
  };
25
- exports.SEPARATOR = backend_core_1.db.SEPARATOR;
26
- exports.StaticDatabases = backend_core_1.db.StaticDatabases;
27
- exports.DocumentType = backend_core_1.db.DocumentType;
28
- exports.APP_PREFIX = backend_core_1.db.APP_PREFIX;
29
- exports.APP_DEV_PREFIX = backend_core_1.db.APP_DEV_PREFIX;
30
- exports.isDevAppID = backend_core_1.db.isDevAppID;
31
- exports.isProdAppID = backend_core_1.db.isProdAppID;
32
- exports.USER_METDATA_PREFIX = `${exports.DocumentType.ROW}${exports.SEPARATOR}${backend_core_1.db.InternalTable.USER_METADATA}${exports.SEPARATOR}`;
33
- exports.LINK_USER_METADATA_PREFIX = `${exports.DocumentType.LINK}${exports.SEPARATOR}${backend_core_1.db.InternalTable.USER_METADATA}${exports.SEPARATOR}`;
34
- exports.TABLE_ROW_PREFIX = `${exports.DocumentType.ROW}${exports.SEPARATOR}${exports.DocumentType.TABLE}`;
35
- exports.ViewName = backend_core_1.db.ViewName;
36
- exports.InternalTables = backend_core_1.db.InternalTable;
37
- exports.UNICODE_MAX = backend_core_1.db.UNICODE_MAX;
38
- exports.generateAppID = backend_core_1.db.generateAppID;
39
- exports.generateDevAppID = backend_core_1.db.getDevelopmentAppID;
40
- exports.generateRoleID = backend_core_1.db.generateRoleID;
41
- exports.getRoleParams = backend_core_1.db.getRoleParams;
42
- exports.getQueryIndex = backend_core_1.db.getQueryIndex;
43
- exports.getDocParams = backend_core_1.db.getDocParams;
44
- exports.getRowParams = backend_core_1.db.getRowParams;
45
- exports.generateRowID = backend_core_1.db.generateRowID;
46
- exports.getUserMetadataParams = backend_core_1.db.getUserMetadataParams;
47
- exports.generateUserMetadataID = backend_core_1.db.generateUserMetadataID;
48
- exports.getGlobalIDFromUserMetadataID = backend_core_1.db.getGlobalIDFromUserMetadataID;
22
+ exports.APP_PREFIX = APP_PREFIX;
23
+ exports.APP_DEV_PREFIX = APP_DEV_PREFIX;
24
+ exports.isDevAppID = isDevAppID;
25
+ exports.isProdAppID = isProdAppID;
26
+ exports.USER_METDATA_PREFIX = `${DocumentType.ROW}${SEPARATOR}${InternalTable.USER_METADATA}${SEPARATOR}`;
27
+ exports.LINK_USER_METADATA_PREFIX = `${DocumentType.LINK}${SEPARATOR}${InternalTable.USER_METADATA}${SEPARATOR}`;
28
+ exports.TABLE_ROW_PREFIX = `${DocumentType.ROW}${SEPARATOR}${DocumentType.TABLE}`;
29
+ exports.ViewName = ViewName;
30
+ exports.InternalTables = InternalTable;
31
+ exports.DocumentType = DocumentType;
32
+ exports.SEPARATOR = SEPARATOR;
33
+ exports.UNICODE_MAX = UNICODE_MAX;
34
+ exports.SearchIndexes = SearchIndexes;
35
+ exports.AppStatus = AppStatus;
36
+ exports.BudibaseInternalDB = BudibaseInternalDB;
37
+ exports.generateAppID = generateAppID;
38
+ exports.generateDevAppID = getDevelopmentAppID;
39
+ exports.generateRoleID = generateRoleID;
40
+ exports.getRoleParams = getRoleParams;
41
+ exports.getQueryIndex = getQueryIndex;
42
+ exports.getDocParams = getDocParams;
43
+ exports.getRowParams = getRowParams;
44
+ exports.generateRowID = generateRowID;
45
+ exports.getUserMetadataParams = getUserMetadataParams;
46
+ exports.generateUserMetadataID = generateUserMetadataID;
47
+ exports.getGlobalIDFromUserMetadataID = getGlobalIDFromUserMetadataID;
49
48
  /**
50
49
  * Gets parameters for retrieving tables, this is a utility function for the getDocParams function.
51
50
  */
52
- function getTableParams(tableId, otherProps = {}) {
53
- return (0, exports.getDocParams)(exports.DocumentType.TABLE, tableId, otherProps);
54
- }
55
- exports.getTableParams = getTableParams;
51
+ exports.getTableParams = (tableId = null, otherProps = {}) => {
52
+ return getDocParams(DocumentType.TABLE, tableId, otherProps);
53
+ };
56
54
  /**
57
55
  * Generates a new table ID.
58
56
  * @returns {string} The new table ID which the table doc can be stored under.
59
57
  */
60
- function generateTableID() {
61
- return `${exports.DocumentType.TABLE}${exports.SEPARATOR}${(0, newid_1.default)()}`;
62
- }
63
- exports.generateTableID = generateTableID;
58
+ exports.generateTableID = () => {
59
+ return `${DocumentType.TABLE}${SEPARATOR}${newid()}`;
60
+ };
64
61
  /**
65
62
  * Given a row ID this will find the table ID within it (only works for internal tables).
66
63
  * @param {string} rowId The ID of the row.
67
64
  * @returns {string} The table ID.
68
65
  */
69
- function getTableIDFromRowID(rowId) {
66
+ exports.getTableIDFromRowID = rowId => {
70
67
  const components = rowId
71
- .split(exports.DocumentType.TABLE + exports.SEPARATOR)[1]
72
- .split(exports.SEPARATOR);
73
- return `${exports.DocumentType.TABLE}${exports.SEPARATOR}${components[0]}`;
74
- }
75
- exports.getTableIDFromRowID = getTableIDFromRowID;
68
+ .split(DocumentType.TABLE + SEPARATOR)[1]
69
+ .split(SEPARATOR);
70
+ return `${DocumentType.TABLE}${SEPARATOR}${components[0]}`;
71
+ };
76
72
  /**
77
73
  * Gets parameters for retrieving automations, this is a utility function for the getDocParams function.
78
74
  */
79
- function getAutomationParams(automationId, otherProps = {}) {
80
- return (0, exports.getDocParams)(exports.DocumentType.AUTOMATION, automationId, otherProps);
81
- }
82
- exports.getAutomationParams = getAutomationParams;
75
+ exports.getAutomationParams = (automationId = null, otherProps = {}) => {
76
+ return getDocParams(DocumentType.AUTOMATION, automationId, otherProps);
77
+ };
83
78
  /**
84
79
  * Generates a new automation ID.
85
80
  * @returns {string} The new automation ID which the automation doc can be stored under.
86
81
  */
87
- function generateAutomationID() {
88
- return `${exports.DocumentType.AUTOMATION}${exports.SEPARATOR}${(0, newid_1.default)()}`;
89
- }
90
- exports.generateAutomationID = generateAutomationID;
82
+ exports.generateAutomationID = () => {
83
+ return `${DocumentType.AUTOMATION}${SEPARATOR}${newid()}`;
84
+ };
91
85
  /**
92
86
  * Generates a new link doc ID. This is currently not usable with the alldocs call,
93
87
  * instead a view is built to make walking to tree easier.
@@ -99,152 +93,131 @@ exports.generateAutomationID = generateAutomationID;
99
93
  * @param {string} fieldName2 the name of the field in the linked row.
100
94
  * @returns {string} The new link doc ID which the automation doc can be stored under.
101
95
  */
102
- function generateLinkID(tableId1, tableId2, rowId1, rowId2, fieldName1, fieldName2) {
103
- const tables = `${exports.SEPARATOR}${tableId1}${exports.SEPARATOR}${tableId2}`;
104
- const rows = `${exports.SEPARATOR}${rowId1}${exports.SEPARATOR}${rowId2}`;
105
- const fields = `${exports.SEPARATOR}${fieldName1}${exports.SEPARATOR}${fieldName2}`;
106
- return `${exports.DocumentType.LINK}${tables}${rows}${fields}`;
107
- }
108
- exports.generateLinkID = generateLinkID;
96
+ exports.generateLinkID = (tableId1, tableId2, rowId1, rowId2, fieldName1, fieldName2) => {
97
+ const tables = `${SEPARATOR}${tableId1}${SEPARATOR}${tableId2}`;
98
+ const rows = `${SEPARATOR}${rowId1}${SEPARATOR}${rowId2}`;
99
+ const fields = `${SEPARATOR}${fieldName1}${SEPARATOR}${fieldName2}`;
100
+ return `${DocumentType.LINK}${tables}${rows}${fields}`;
101
+ };
109
102
  /**
110
103
  * Gets parameters for retrieving link docs, this is a utility function for the getDocParams function.
111
104
  */
112
- function getLinkParams(otherProps = {}) {
113
- return (0, exports.getDocParams)(exports.DocumentType.LINK, null, otherProps);
114
- }
115
- exports.getLinkParams = getLinkParams;
105
+ exports.getLinkParams = (otherProps = {}) => {
106
+ return getDocParams(DocumentType.LINK, null, otherProps);
107
+ };
116
108
  /**
117
109
  * Generates a new layout ID.
118
110
  * @returns {string} The new layout ID which the layout doc can be stored under.
119
111
  */
120
- function generateLayoutID(id) {
121
- return `${exports.DocumentType.LAYOUT}${exports.SEPARATOR}${id || (0, newid_1.default)()}`;
122
- }
123
- exports.generateLayoutID = generateLayoutID;
112
+ exports.generateLayoutID = id => {
113
+ return `${DocumentType.LAYOUT}${SEPARATOR}${id || newid()}`;
114
+ };
124
115
  /**
125
116
  * Gets parameters for retrieving layout, this is a utility function for the getDocParams function.
126
117
  */
127
- function getLayoutParams(layoutId, otherProps = {}) {
128
- return (0, exports.getDocParams)(exports.DocumentType.LAYOUT, layoutId, otherProps);
129
- }
130
- exports.getLayoutParams = getLayoutParams;
118
+ exports.getLayoutParams = (layoutId = null, otherProps = {}) => {
119
+ return getDocParams(DocumentType.LAYOUT, layoutId, otherProps);
120
+ };
131
121
  /**
132
122
  * Generates a new screen ID.
133
123
  * @returns {string} The new screen ID which the screen doc can be stored under.
134
124
  */
135
- function generateScreenID() {
136
- return `${exports.DocumentType.SCREEN}${exports.SEPARATOR}${(0, newid_1.default)()}`;
137
- }
138
- exports.generateScreenID = generateScreenID;
125
+ exports.generateScreenID = () => {
126
+ return `${DocumentType.SCREEN}${SEPARATOR}${newid()}`;
127
+ };
139
128
  /**
140
129
  * Gets parameters for retrieving screens, this is a utility function for the getDocParams function.
141
130
  */
142
- function getScreenParams(screenId, otherProps = {}) {
143
- return (0, exports.getDocParams)(exports.DocumentType.SCREEN, screenId, otherProps);
144
- }
145
- exports.getScreenParams = getScreenParams;
131
+ exports.getScreenParams = (screenId = null, otherProps = {}) => {
132
+ return getDocParams(DocumentType.SCREEN, screenId, otherProps);
133
+ };
146
134
  /**
147
135
  * Generates a new webhook ID.
148
136
  * @returns {string} The new webhook ID which the webhook doc can be stored under.
149
137
  */
150
- function generateWebhookID() {
151
- return `${exports.DocumentType.WEBHOOK}${exports.SEPARATOR}${(0, newid_1.default)()}`;
152
- }
153
- exports.generateWebhookID = generateWebhookID;
138
+ exports.generateWebhookID = () => {
139
+ return `${DocumentType.WEBHOOK}${SEPARATOR}${newid()}`;
140
+ };
154
141
  /**
155
142
  * Gets parameters for retrieving a webhook, this is a utility function for the getDocParams function.
156
143
  */
157
- function getWebhookParams(webhookId, otherProps = {}) {
158
- return (0, exports.getDocParams)(exports.DocumentType.WEBHOOK, webhookId, otherProps);
159
- }
160
- exports.getWebhookParams = getWebhookParams;
144
+ exports.getWebhookParams = (webhookId = null, otherProps = {}) => {
145
+ return getDocParams(DocumentType.WEBHOOK, webhookId, otherProps);
146
+ };
161
147
  /**
162
148
  * Generates a new datasource ID.
163
149
  * @returns {string} The new datasource ID which the webhook doc can be stored under.
164
150
  */
165
- function generateDatasourceID({ plus = false } = {}) {
166
- return `${plus ? exports.DocumentType.DATASOURCE_PLUS : exports.DocumentType.DATASOURCE}${exports.SEPARATOR}${(0, newid_1.default)()}`;
167
- }
168
- exports.generateDatasourceID = generateDatasourceID;
151
+ exports.generateDatasourceID = ({ plus = false } = {}) => {
152
+ return `${plus ? DocumentType.DATASOURCE_PLUS : DocumentType.DATASOURCE}${SEPARATOR}${newid()}`;
153
+ };
169
154
  /**
170
155
  * Gets parameters for retrieving a datasource, this is a utility function for the getDocParams function.
171
156
  */
172
- function getDatasourceParams(datasourceId, otherProps = {}) {
173
- return (0, exports.getDocParams)(exports.DocumentType.DATASOURCE, datasourceId, otherProps);
174
- }
175
- exports.getDatasourceParams = getDatasourceParams;
157
+ exports.getDatasourceParams = (datasourceId = null, otherProps = {}) => {
158
+ return getDocParams(DocumentType.DATASOURCE, datasourceId, otherProps);
159
+ };
176
160
  /**
177
161
  * Generates a new query ID.
178
162
  * @returns {string} The new query ID which the query doc can be stored under.
179
163
  */
180
- function generateQueryID(datasourceId) {
181
- return `${exports.DocumentType.QUERY}${exports.SEPARATOR}${datasourceId}${exports.SEPARATOR}${(0, newid_1.default)()}`;
182
- }
183
- exports.generateQueryID = generateQueryID;
164
+ exports.generateQueryID = datasourceId => {
165
+ return `${DocumentType.QUERY}${SEPARATOR}${datasourceId}${SEPARATOR}${newid()}`;
166
+ };
184
167
  /**
185
168
  * Generates a metadata ID for automations, used to track errors in recurring
186
169
  * automations etc.
187
170
  */
188
- function generateAutomationMetadataID(automationId) {
189
- return `${exports.DocumentType.AUTOMATION_METADATA}${exports.SEPARATOR}${automationId}`;
190
- }
191
- exports.generateAutomationMetadataID = generateAutomationMetadataID;
171
+ exports.generateAutomationMetadataID = automationId => {
172
+ return `${DocumentType.AUTOMATION_METADATA}${SEPARATOR}${automationId}`;
173
+ };
192
174
  /**
193
175
  * Retrieve all automation metadata in an app database.
194
176
  */
195
- function getAutomationMetadataParams(otherProps = {}) {
196
- return (0, exports.getDocParams)(exports.DocumentType.AUTOMATION_METADATA, null, otherProps);
197
- }
198
- exports.getAutomationMetadataParams = getAutomationMetadataParams;
177
+ exports.getAutomationMetadataParams = (otherProps = {}) => {
178
+ return getDocParams(DocumentType.AUTOMATION_METADATA, null, otherProps);
179
+ };
199
180
  /**
200
181
  * Gets parameters for retrieving a query, this is a utility function for the getDocParams function.
201
182
  */
202
- function getQueryParams(datasourceId, otherProps = {}) {
183
+ exports.getQueryParams = (datasourceId = null, otherProps = {}) => {
203
184
  if (datasourceId == null) {
204
- return (0, exports.getDocParams)(exports.DocumentType.QUERY, null, otherProps);
185
+ return getDocParams(DocumentType.QUERY, null, otherProps);
205
186
  }
206
- return (0, exports.getDocParams)(exports.DocumentType.QUERY, `${datasourceId}${exports.SEPARATOR}`, otherProps);
207
- }
208
- exports.getQueryParams = getQueryParams;
187
+ return getDocParams(DocumentType.QUERY, `${datasourceId}${SEPARATOR}`, otherProps);
188
+ };
209
189
  /**
210
190
  * Generates a new flag document ID.
211
191
  * @returns {string} The ID of the flag document that was generated.
212
192
  */
213
- function generateUserFlagID(userId) {
214
- return `${exports.DocumentType.USER_FLAG}${exports.SEPARATOR}${userId}`;
215
- }
216
- exports.generateUserFlagID = generateUserFlagID;
217
- function generateMetadataID(type, entityId) {
218
- return `${exports.DocumentType.METADATA}${exports.SEPARATOR}${type}${exports.SEPARATOR}${entityId}`;
219
- }
220
- exports.generateMetadataID = generateMetadataID;
221
- function getMetadataParams(type, entityId, otherProps = {}) {
222
- let docId = `${type}${exports.SEPARATOR}`;
193
+ exports.generateUserFlagID = userId => {
194
+ return `${DocumentType.USER_FLAG}${SEPARATOR}${userId}`;
195
+ };
196
+ exports.generateMetadataID = (type, entityId) => {
197
+ return `${DocumentType.METADATA}${SEPARATOR}${type}${SEPARATOR}${entityId}`;
198
+ };
199
+ exports.getMetadataParams = (type, entityId = null, otherProps = {}) => {
200
+ let docId = `${type}${SEPARATOR}`;
223
201
  if (entityId != null) {
224
202
  docId += entityId;
225
203
  }
226
- return (0, exports.getDocParams)(exports.DocumentType.METADATA, docId, otherProps);
227
- }
228
- exports.getMetadataParams = getMetadataParams;
229
- function generateMemoryViewID(viewName) {
230
- return `${exports.DocumentType.MEM_VIEW}${exports.SEPARATOR}${viewName}`;
231
- }
232
- exports.generateMemoryViewID = generateMemoryViewID;
233
- function getMemoryViewParams(otherProps = {}) {
234
- return (0, exports.getDocParams)(exports.DocumentType.MEM_VIEW, null, otherProps);
235
- }
236
- exports.getMemoryViewParams = getMemoryViewParams;
237
- function generatePluginID(name) {
238
- return `${exports.DocumentType.PLUGIN}${exports.SEPARATOR}${name}`;
239
- }
240
- exports.generatePluginID = generatePluginID;
204
+ return getDocParams(DocumentType.METADATA, docId, otherProps);
205
+ };
206
+ exports.generateMemoryViewID = viewName => {
207
+ return `${DocumentType.MEM_VIEW}${SEPARATOR}${viewName}`;
208
+ };
209
+ exports.getMemoryViewParams = (otherProps = {}) => {
210
+ return getDocParams(DocumentType.MEM_VIEW, null, otherProps);
211
+ };
212
+ exports.generatePluginID = name => {
213
+ return `${DocumentType.PLUGIN}${SEPARATOR}${name}`;
214
+ };
241
215
  /**
242
216
  * This can be used with the db.allDocs to get a list of IDs
243
217
  */
244
- function getMultiIDParams(ids) {
218
+ exports.getMultiIDParams = ids => {
245
219
  return {
246
220
  keys: ids,
247
221
  include_docs: true,
248
222
  };
249
- }
250
- exports.getMultiIDParams = getMultiIDParams;
223
+ };
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- const { context } = require("@budibase/backend-core");
11
+ const { getAppDB } = require("@budibase/backend-core/context");
12
12
  const { DocumentType, SEPARATOR, ViewName, SearchIndexes } = require("../utils");
13
13
  const SCREEN_PREFIX = DocumentType.SCREEN + SEPARATOR;
14
14
  /**************************************************
@@ -28,7 +28,7 @@ const SCREEN_PREFIX = DocumentType.SCREEN + SEPARATOR;
28
28
  * so it may be slow.
29
29
  */
30
30
  exports.createLinkView = () => __awaiter(void 0, void 0, void 0, function* () {
31
- const db = context.getAppDB();
31
+ const db = getAppDB();
32
32
  const designDoc = yield db.get("_design/database");
33
33
  const view = {
34
34
  map: function (doc) {
@@ -58,7 +58,7 @@ exports.createLinkView = () => __awaiter(void 0, void 0, void 0, function* () {
58
58
  yield db.put(designDoc);
59
59
  });
60
60
  exports.createRoutingView = () => __awaiter(void 0, void 0, void 0, function* () {
61
- const db = context.getAppDB();
61
+ const db = getAppDB();
62
62
  const designDoc = yield db.get("_design/database");
63
63
  const view = {
64
64
  // if using variables in a map function need to inject them before use
@@ -76,7 +76,7 @@ exports.createRoutingView = () => __awaiter(void 0, void 0, void 0, function* ()
76
76
  });
77
77
  function searchIndex(indexName, fnString) {
78
78
  return __awaiter(this, void 0, void 0, function* () {
79
- const db = context.getAppDB();
79
+ const db = getAppDB();
80
80
  const designDoc = yield db.get("_design/database");
81
81
  designDoc.indexes = {
82
82
  [indexName]: {
@@ -10,7 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  const types_1 = require("@budibase/types");
13
- const elasticsearch_1 = require("@elastic/elasticsearch");
13
+ const { Client } = require("@elastic/elasticsearch");
14
14
  const SCHEMA = {
15
15
  docs: "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html",
16
16
  description: "Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.",
@@ -22,21 +22,6 @@ const SCHEMA = {
22
22
  required: true,
23
23
  default: "http://localhost:9200",
24
24
  },
25
- ssl: {
26
- type: types_1.DatasourceFieldType.BOOLEAN,
27
- default: false,
28
- required: false,
29
- },
30
- rejectUnauthorized: {
31
- type: types_1.DatasourceFieldType.BOOLEAN,
32
- default: true,
33
- required: false,
34
- },
35
- ca: {
36
- type: types_1.DatasourceFieldType.LONGFORM,
37
- default: false,
38
- required: false,
39
- },
40
25
  },
41
26
  query: {
42
27
  create: {
@@ -91,16 +76,7 @@ const SCHEMA = {
91
76
  class ElasticSearchIntegration {
92
77
  constructor(config) {
93
78
  this.config = config;
94
- const clientConfig = {
95
- node: this.config.url,
96
- };
97
- if (this.config.ssl) {
98
- clientConfig.ssl = {
99
- rejectUnauthorized: this.config.rejectUnauthorized,
100
- ca: this.config.ca || undefined,
101
- };
102
- }
103
- this.client = new elasticsearch_1.Client(clientConfig);
79
+ this.client = new Client({ node: config.url });
104
80
  }
105
81
  create(query) {
106
82
  return __awaiter(this, void 0, void 0, function* () {
@@ -18,7 +18,9 @@ const utils_1 = require("./utils");
18
18
  const constants_1 = require("../constants");
19
19
  const google_spreadsheet_1 = require("google-spreadsheet");
20
20
  const environment_1 = __importDefault(require("../environment"));
21
- const backend_core_1 = require("@budibase/backend-core");
21
+ const { getGlobalDB } = require("@budibase/backend-core/tenancy");
22
+ const { getScopedConfig } = require("@budibase/backend-core/db");
23
+ const { Configs } = require("@budibase/backend-core/constants");
22
24
  const fetch = require("node-fetch");
23
25
  const SCHEMA = {
24
26
  plus: true,
@@ -138,9 +140,9 @@ class GoogleSheetsIntegration {
138
140
  return __awaiter(this, void 0, void 0, function* () {
139
141
  try {
140
142
  // Initialise oAuth client
141
- const db = backend_core_1.tenancy.getGlobalDB();
142
- let googleConfig = yield backend_core_1.db.getScopedConfig(db, {
143
- type: backend_core_1.constants.Config.GOOGLE,
143
+ const db = getGlobalDB();
144
+ let googleConfig = yield getScopedConfig(db, {
145
+ type: Configs.GOOGLE,
144
146
  });
145
147
  if (!googleConfig) {
146
148
  googleConfig = {