@budibase/server 2.1.32-alpha.1 → 2.1.32-alpha.10

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 (601) hide show
  1. package/builder/assets/{index.7176fd99.css → index.144dddb2.css} +1 -1
  2. package/builder/assets/{index.24cb0a61.js → index.d97a0eb1.js} +290 -290
  3. package/builder/index.html +2 -2
  4. package/coverage/clover.xml +3723 -3691
  5. package/coverage/coverage-final.json +113 -108
  6. package/coverage/lcov-report/index.html +170 -155
  7. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  8. package/coverage/lcov-report/src/api/controllers/{apikeys.js.html → apikeys.ts.html} +19 -19
  9. package/coverage/lcov-report/src/api/controllers/application.ts.html +70 -13
  10. package/coverage/lcov-report/src/api/controllers/auth.ts.html +3 -3
  11. package/coverage/lcov-report/src/api/controllers/{automation.js.html → automation.ts.html} +68 -68
  12. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/{cloud.js.html → cloud.ts.html} +40 -40
  14. package/coverage/lcov-report/src/api/controllers/component.ts.html +6 -3
  15. package/coverage/lcov-report/src/api/controllers/{datasource.js.html → datasource.ts.html} +239 -80
  16. package/coverage/lcov-report/src/api/controllers/deploy/{Deployment.js.html → Deployment.ts.html} +30 -21
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.html +6 -6
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
  20. package/coverage/lcov-report/src/api/controllers/index.html +120 -120
  21. package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
  22. package/coverage/lcov-report/src/api/controllers/{layout.js.html → layout.ts.html} +19 -19
  23. package/coverage/lcov-report/src/api/controllers/{metadata.js.html → metadata.ts.html} +19 -16
  24. package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/{permission.js.html → permission.ts.html} +73 -64
  26. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +1 -1
  27. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +1 -1
  28. package/coverage/lcov-report/src/api/controllers/plugin/index.html +11 -11
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +10 -13
  30. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +1 -1
  31. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +1 -1
  32. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +1 -1
  33. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +1 -1
  34. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
  35. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  36. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
  45. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +3 -3
  46. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
  47. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
  48. package/coverage/lcov-report/src/api/controllers/query/import/index.html +11 -11
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +8 -11
  50. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/index.html +2 -2
  58. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
  59. package/coverage/lcov-report/src/api/controllers/query/{validation.js.html → validation.ts.html} +10 -10
  60. package/coverage/lcov-report/src/api/controllers/{role.js.html → role.ts.html} +37 -49
  61. package/coverage/lcov-report/src/api/controllers/{routing.js.html → routing.ts.html} +58 -49
  62. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +6 -18
  63. package/coverage/lcov-report/src/api/controllers/row/external.js.html +4 -4
  64. package/coverage/lcov-report/src/api/controllers/row/index.html +35 -35
  65. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  66. package/coverage/lcov-report/src/api/controllers/row/internal.js.html +17 -20
  67. package/coverage/lcov-report/src/api/controllers/row/{internalSearch.js.html → internalSearch.ts.html} +175 -103
  68. package/coverage/lcov-report/src/api/controllers/row/{staticFormula.js.html → staticFormula.ts.html} +62 -47
  69. package/coverage/lcov-report/src/api/controllers/row/{utils.js.html → utils.ts.html} +57 -36
  70. package/coverage/lcov-report/src/api/controllers/screen.ts.html +29 -17
  71. package/coverage/lcov-report/src/api/controllers/{script.js.html → script.ts.html} +10 -7
  72. package/coverage/lcov-report/src/api/controllers/static/index.html +10 -10
  73. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +15 -27
  74. package/coverage/lcov-report/src/api/controllers/table/{bulkFormula.js.html → bulkFormula.ts.html} +89 -47
  75. package/coverage/lcov-report/src/api/controllers/table/{external.js.html → external.ts.html} +192 -87
  76. package/coverage/lcov-report/src/api/controllers/table/index.html +41 -41
  77. package/coverage/lcov-report/src/api/controllers/table/{index.js.html → index.ts.html} +28 -28
  78. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +3 -6
  79. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +56 -41
  80. package/coverage/lcov-report/src/api/controllers/{templates.js.html → templates.ts.html} +27 -18
  81. package/coverage/lcov-report/src/api/controllers/{user.js.html → user.ts.html} +72 -78
  82. package/coverage/lcov-report/src/api/controllers/view/{exporters.js.html → exporters.ts.html} +13 -7
  83. package/coverage/lcov-report/src/api/controllers/view/index.html +21 -21
  84. package/coverage/lcov-report/src/api/controllers/view/{index.js.html → index.ts.html} +68 -41
  85. package/coverage/lcov-report/src/api/controllers/view/{utils.js.html → utils.ts.html} +54 -36
  86. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.js.html +1 -1
  87. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +1 -1
  88. package/coverage/lcov-report/src/api/index.html +14 -14
  89. package/coverage/lcov-report/src/api/{index.js.html → index.ts.html} +28 -49
  90. package/coverage/lcov-report/src/api/routes/{analytics.js.html → analytics.ts.html} +7 -7
  91. package/coverage/lcov-report/src/api/routes/{apikeys.js.html → apikeys.ts.html} +11 -11
  92. package/coverage/lcov-report/src/api/routes/application.ts.html +35 -11
  93. package/coverage/lcov-report/src/api/routes/auth.ts.html +3 -3
  94. package/coverage/lcov-report/src/api/routes/{automation.js.html → automation.ts.html} +41 -35
  95. package/coverage/lcov-report/src/api/routes/backup.ts.html +18 -6
  96. package/coverage/lcov-report/src/api/routes/{deploy.js.html → cloud.ts.html} +18 -15
  97. package/coverage/lcov-report/src/api/routes/{component.js.html → component.ts.html} +10 -10
  98. package/coverage/lcov-report/src/api/routes/{datasource.js.html → datasource.ts.html} +53 -26
  99. package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
  100. package/coverage/lcov-report/src/api/routes/{dev.js.html → dev.ts.html} +54 -18
  101. package/coverage/lcov-report/src/api/routes/index.html +41 -41
  102. package/coverage/lcov-report/src/api/routes/index.ts.html +3 -3
  103. package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
  104. package/coverage/lcov-report/src/api/routes/{layout.js.html → layout.ts.html} +11 -11
  105. package/coverage/lcov-report/src/api/routes/{metadata.js.html → metadata.ts.html} +17 -17
  106. package/coverage/lcov-report/src/api/routes/{migrations.js.html → migrations.ts.html} +12 -12
  107. package/coverage/lcov-report/src/api/routes/{permission.js.html → permission.ts.html} +41 -17
  108. package/coverage/lcov-report/src/api/routes/plugin.ts.html +32 -8
  109. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  111. package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  113. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
  115. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
  116. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/{query.js.html → query.ts.html} +24 -33
  121. package/coverage/lcov-report/src/{utilities/routing/index.js.html → api/routes/role.ts.html} +32 -35
  122. package/coverage/lcov-report/src/api/routes/{routing.js.html → routing.ts.html} +10 -10
  123. package/coverage/lcov-report/src/api/routes/row.ts.html +8 -14
  124. package/coverage/lcov-report/src/api/routes/{screen.js.html → screen.ts.html} +29 -14
  125. package/coverage/lcov-report/src/api/routes/{script.js.html → script.ts.html} +10 -10
  126. package/coverage/lcov-report/src/api/routes/static.ts.html +9 -18
  127. package/coverage/lcov-report/src/api/routes/{table.js.html → table.ts.html} +16 -25
  128. package/coverage/lcov-report/src/api/routes/{templates.js.html → templates.ts.html} +11 -11
  129. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +12 -18
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +10 -10
  131. package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/{user.js.html → user.ts.html} +14 -20
  133. package/coverage/lcov-report/src/api/routes/utils/index.html +6 -6
  134. package/coverage/lcov-report/src/api/routes/utils/{validators.js.html → validators.ts.html} +39 -51
  135. package/coverage/lcov-report/src/api/routes/{view.js.html → view.ts.html} +33 -24
  136. package/coverage/lcov-report/src/api/routes/webhook.ts.html +3 -3
  137. package/coverage/lcov-report/src/app.ts.html +9 -12
  138. package/coverage/lcov-report/src/automations/actions.js.html +1 -1
  139. package/coverage/lcov-report/src/automations/automationUtils.js.html +1 -1
  140. package/coverage/lcov-report/src/automations/bullboard.js.html +1 -1
  141. package/coverage/lcov-report/src/automations/index.html +10 -10
  142. package/coverage/lcov-report/src/automations/index.js.html +1 -1
  143. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  144. package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
  145. package/coverage/lcov-report/src/automations/steps/bash.js.html +1 -1
  146. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  147. package/coverage/lcov-report/src/automations/steps/delay.js.html +1 -1
  148. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/discord.js.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/executeQuery.js.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/executeScript.js.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/filter.js.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/integromat.js.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/loop.js.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.js.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/queryRows.js.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.js.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/serverLog.js.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/slack.js.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/updateRow.js.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/utils.js.html +1 -1
  163. package/coverage/lcov-report/src/automations/steps/zapier.js.html +1 -1
  164. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  165. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +1 -1
  166. package/coverage/lcov-report/src/automations/triggerInfo/app.js.html +1 -1
  167. package/coverage/lcov-report/src/automations/triggerInfo/cron.js.html +1 -1
  168. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/index.js.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.js.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.js.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.js.html +1 -1
  173. package/coverage/lcov-report/src/automations/triggerInfo/webhook.js.html +1 -1
  174. package/coverage/lcov-report/src/automations/triggers.js.html +11 -14
  175. package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
  176. package/coverage/lcov-report/src/constants/index.html +5 -5
  177. package/coverage/lcov-report/src/constants/index.js.html +7 -13
  178. package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
  179. package/coverage/lcov-report/src/constants/screens.js.html +3 -3
  180. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +2023 -0
  181. package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +541 -0
  182. package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +427 -0
  183. package/coverage/lcov-report/src/db/defaultData/index.html +176 -0
  184. package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +403 -0
  185. package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +559 -0
  186. package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
  187. package/coverage/lcov-report/src/db/inMemoryView.js.html +4 -4
  188. package/coverage/lcov-report/src/db/index.html +1 -1
  189. package/coverage/lcov-report/src/db/index.js.html +1 -1
  190. package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +13 -151
  191. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +226 -0
  192. package/coverage/lcov-report/src/db/linkedRows/index.html +28 -13
  193. package/coverage/lcov-report/src/db/linkedRows/index.js.html +3 -3
  194. package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +4 -4
  195. package/coverage/lcov-report/src/db/newid.js.html +1 -1
  196. package/coverage/lcov-report/src/db/utils.ts.html +3 -3
  197. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  198. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  199. package/coverage/lcov-report/src/definitions/index.html +1 -1
  200. package/coverage/lcov-report/src/environment.js.html +1 -1
  201. package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
  202. package/coverage/lcov-report/src/events/index.html +1 -1
  203. package/coverage/lcov-report/src/events/index.js.html +1 -1
  204. package/coverage/lcov-report/src/events/utils.js.html +1 -1
  205. package/coverage/lcov-report/src/index.html +17 -32
  206. package/coverage/lcov-report/src/index.ts.html +1 -1
  207. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  208. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  209. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  210. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  211. package/coverage/lcov-report/src/integrations/base/sql.ts.html +2 -2
  212. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +2 -2
  213. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
  219. package/coverage/lcov-report/src/integrations/index.html +4 -4
  220. package/coverage/lcov-report/src/integrations/index.ts.html +58 -46
  221. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  223. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  224. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  226. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  227. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  228. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  229. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  230. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  232. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  233. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  234. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  235. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  236. package/coverage/lcov-report/src/middleware/authorized.ts.html +30 -51
  237. package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
  238. package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
  239. package/coverage/lcov-report/src/middleware/index.html +10 -10
  240. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  241. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  242. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  243. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  244. package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
  245. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +3 -3
  246. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  247. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +9 -9
  266. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +7 -10
  268. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -10
  270. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
  271. package/coverage/lcov-report/src/migrations/index.html +1 -1
  272. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  274. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  275. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  276. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  277. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  278. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  279. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +16 -10
  281. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +9 -21
  282. package/coverage/lcov-report/src/sdk/app/backups/index.html +16 -16
  283. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/tables/index.html +5 -5
  286. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +4 -4
  287. package/coverage/lcov-report/src/sdk/index.html +1 -1
  288. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  289. package/coverage/lcov-report/src/startup.ts.html +3 -3
  290. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +61 -49
  291. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
  292. package/coverage/lcov-report/src/tests/utilities/index.html +15 -15
  293. package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
  294. package/coverage/lcov-report/src/tests/utilities/structures.js.html +9 -12
  295. package/coverage/lcov-report/src/threads/automation.ts.html +20 -23
  296. package/coverage/lcov-report/src/threads/index.html +24 -24
  297. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  298. package/coverage/lcov-report/src/threads/query.ts.html +18 -33
  299. package/coverage/lcov-report/src/threads/utils.ts.html +10 -13
  300. package/coverage/lcov-report/src/utilities/{budibaseDir.js.html → budibaseDir.ts.html} +5 -5
  301. package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
  302. package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
  303. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +13 -13
  304. package/coverage/lcov-report/src/utilities/fileSystem/index.html +5 -20
  305. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +15 -15
  306. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
  307. package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
  308. package/coverage/lcov-report/src/utilities/index.html +44 -44
  309. package/coverage/lcov-report/src/utilities/{index.js.html → index.ts.html} +70 -46
  310. package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
  311. package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
  312. package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
  313. package/coverage/lcov-report/src/utilities/{redis.js.html → redis.ts.html} +36 -33
  314. package/coverage/lcov-report/src/utilities/routing/index.html +6 -6
  315. package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
  316. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +38 -23
  317. package/coverage/lcov-report/src/utilities/rowProcessor/{index.js.html → index.ts.html} +106 -337
  318. package/coverage/lcov-report/src/utilities/rowProcessor/map.js.html +370 -0
  319. package/coverage/lcov-report/src/utilities/rowProcessor/{utils.js.html → utils.ts.html} +43 -31
  320. package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
  321. package/coverage/lcov-report/src/utilities/{security.js.html → security.ts.html} +49 -67
  322. package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
  323. package/coverage/lcov-report/src/utilities/usageQuota/index.html +18 -18
  324. package/coverage/lcov-report/src/utilities/usageQuota/{rows.js.html → rows.ts.html} +27 -39
  325. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  326. package/coverage/lcov-report/src/utilities/{users.js.html → users.ts.html} +22 -28
  327. package/coverage/lcov-report/src/utilities/{workerRequests.js.html → workerRequests.ts.html} +69 -54
  328. package/coverage/lcov-report/src/watch.ts.html +8 -11
  329. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  330. package/coverage/lcov.info +6619 -6700
  331. package/dist/api/controllers/apikeys.js +12 -9
  332. package/dist/api/controllers/application.js +13 -2
  333. package/dist/api/controllers/automation.js +104 -84
  334. package/dist/api/controllers/cloud.js +84 -71
  335. package/dist/api/controllers/component.js +4 -2
  336. package/dist/api/controllers/datasource.js +144 -92
  337. package/dist/api/controllers/deploy/Deployment.js +10 -6
  338. package/dist/api/controllers/layout.js +18 -15
  339. package/dist/api/controllers/metadata.js +51 -37
  340. package/dist/api/controllers/permission.js +52 -43
  341. package/dist/api/controllers/plugin/index.js +6 -7
  342. package/dist/api/controllers/public/tables.js +29 -9
  343. package/dist/api/controllers/query/import/index.js +1 -2
  344. package/dist/api/controllers/query/validation.js +41 -33
  345. package/dist/api/controllers/role.js +29 -27
  346. package/dist/api/controllers/routing.js +71 -58
  347. package/dist/api/controllers/row/ExternalRequest.js +6 -7
  348. package/dist/api/controllers/row/external.js +3 -3
  349. package/dist/api/controllers/row/internal.js +11 -12
  350. package/dist/api/controllers/row/internalSearch.js +95 -80
  351. package/dist/api/controllers/row/staticFormula.js +85 -75
  352. package/dist/api/controllers/row/utils.js +118 -84
  353. package/dist/api/controllers/screen.js +81 -66
  354. package/dist/api/controllers/script.js +13 -6
  355. package/dist/api/controllers/static/index.js +9 -11
  356. package/dist/api/controllers/table/bulkFormula.js +47 -35
  357. package/dist/api/controllers/table/external.js +67 -54
  358. package/dist/api/controllers/table/index.js +66 -33
  359. package/dist/api/controllers/table/internal.js +1 -2
  360. package/dist/api/controllers/table/utils.js +39 -35
  361. package/dist/api/controllers/templates.js +17 -10
  362. package/dist/api/controllers/user.js +82 -70
  363. package/dist/api/controllers/view/exporters.js +8 -4
  364. package/dist/api/controllers/view/index.js +201 -153
  365. package/dist/api/controllers/view/utils.js +151 -121
  366. package/dist/api/index.js +38 -34
  367. package/dist/api/routes/analytics.js +29 -3
  368. package/dist/api/routes/apikeys.js +33 -7
  369. package/dist/api/routes/application.js +8 -9
  370. package/dist/api/routes/auth.js +1 -2
  371. package/dist/api/routes/automation.js +46 -20
  372. package/dist/api/routes/backup.js +3 -4
  373. package/dist/api/routes/cloud.js +32 -6
  374. package/dist/api/routes/component.js +32 -6
  375. package/dist/api/routes/datasource.js +39 -13
  376. package/dist/api/routes/deploy.js +34 -8
  377. package/dist/api/routes/dev.js +36 -10
  378. package/dist/api/routes/integration.js +10 -7
  379. package/dist/api/routes/layout.js +33 -7
  380. package/dist/api/routes/metadata.js +36 -10
  381. package/dist/api/routes/migrations.js +32 -6
  382. package/dist/api/routes/permission.js +38 -12
  383. package/dist/api/routes/plugin.js +5 -5
  384. package/dist/api/routes/query.js +42 -15
  385. package/dist/api/routes/role.js +36 -10
  386. package/dist/api/routes/routing.js +32 -6
  387. package/dist/api/routes/row.js +2 -1
  388. package/dist/api/routes/screen.js +35 -9
  389. package/dist/api/routes/script.js +32 -6
  390. package/dist/api/routes/static.js +9 -9
  391. package/dist/api/routes/table.js +40 -13
  392. package/dist/api/routes/templates.js +33 -7
  393. package/dist/api/routes/tests/utilities/TestFunctions.js +6 -8
  394. package/dist/api/routes/user.js +40 -13
  395. package/dist/api/routes/utils/validators.js +142 -126
  396. package/dist/api/routes/view.js +38 -12
  397. package/dist/api/routes/webhook.js +1 -2
  398. package/dist/app.js +3 -4
  399. package/dist/automations/triggers.js +5 -6
  400. package/dist/constants/index.js +3 -5
  401. package/dist/constants/screens.js +2 -2
  402. package/dist/db/defaultData/datasource_bb_default.js +565 -0
  403. package/dist/db/defaultData/employeeImport.js +153 -0
  404. package/dist/db/defaultData/expensesImport.js +115 -0
  405. package/dist/db/defaultData/inventoryImport.js +107 -0
  406. package/dist/db/defaultData/jobsImport.js +150 -0
  407. package/dist/db/inMemoryView.js +3 -3
  408. package/dist/db/linkedRows/LinkController.js +4 -31
  409. package/dist/db/linkedRows/LinkDocument.js +32 -0
  410. package/dist/db/linkedRows/index.js +2 -2
  411. package/dist/db/linkedRows/linkUtils.js +3 -3
  412. package/dist/db/utils.js +1 -1
  413. package/dist/db/views/staticViews.js +4 -4
  414. package/dist/integrations/index.js +15 -6
  415. package/dist/middleware/authorized.js +22 -21
  416. package/dist/migrations/functions/appUrls.js +2 -2
  417. package/dist/migrations/functions/usageQuotas/syncApps.js +3 -4
  418. package/dist/migrations/functions/usageQuotas/syncRows.js +3 -4
  419. package/dist/migrations/functions/userEmailViewCasing.js +3 -3
  420. package/dist/package.json +6 -6
  421. package/dist/sdk/app/backups/exports.js +1 -2
  422. package/dist/sdk/app/backups/imports.js +2 -3
  423. package/dist/sdk/app/tables/index.js +1 -1
  424. package/dist/startup.js +4 -4
  425. package/dist/tests/utilities/TestConfiguration.js +27 -35
  426. package/dist/tests/utilities/structures.js +3 -4
  427. package/dist/threads/automation.js +15 -16
  428. package/dist/threads/query.js +17 -19
  429. package/dist/threads/utils.js +11 -9
  430. package/dist/tsconfig.build.tsbuildinfo +1 -1
  431. package/dist/utilities/budibaseDir.js +4 -2
  432. package/dist/utilities/fileSystem/clientLibrary.js +12 -12
  433. package/dist/utilities/fileSystem/index.js +3 -3
  434. package/dist/utilities/index.js +102 -75
  435. package/dist/utilities/redis.js +100 -65
  436. package/dist/utilities/routing/index.js +27 -23
  437. package/dist/utilities/rowProcessor/index.js +124 -191
  438. package/dist/utilities/rowProcessor/map.js +96 -0
  439. package/dist/utilities/rowProcessor/utils.js +35 -26
  440. package/dist/utilities/security.js +39 -35
  441. package/dist/utilities/usageQuota/rows.js +56 -49
  442. package/dist/utilities/users.js +31 -28
  443. package/dist/utilities/workerRequests.js +115 -82
  444. package/dist/watch.js +1 -2
  445. package/package.json +7 -7
  446. package/scripts/exportAppTemplate.js +2 -2
  447. package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
  448. package/src/api/controllers/application.ts +22 -3
  449. package/src/api/controllers/auth.ts +2 -2
  450. package/src/api/controllers/{automation.js → automation.ts} +48 -48
  451. package/src/api/controllers/{cloud.js → cloud.ts} +24 -24
  452. package/src/api/controllers/component.ts +2 -1
  453. package/src/api/controllers/{datasource.js → datasource.ts} +100 -47
  454. package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
  455. package/src/api/controllers/{layout.js → layout.ts} +8 -8
  456. package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
  457. package/src/api/controllers/{permission.js → permission.ts} +49 -46
  458. package/src/api/controllers/plugin/index.ts +4 -5
  459. package/src/api/controllers/public/tables.ts +2 -2
  460. package/src/api/controllers/query/import/index.ts +2 -3
  461. package/src/api/controllers/query/{validation.js → validation.ts} +7 -7
  462. package/src/api/controllers/{role.js → role.ts} +21 -25
  463. package/src/api/controllers/{routing.js → routing.ts} +37 -34
  464. package/src/api/controllers/row/ExternalRequest.ts +4 -8
  465. package/src/api/controllers/row/external.js +3 -3
  466. package/src/api/controllers/row/internal.js +11 -12
  467. package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
  468. package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +28 -23
  469. package/src/api/controllers/row/{utils.js → utils.ts} +25 -18
  470. package/src/api/controllers/screen.ts +10 -6
  471. package/src/api/controllers/script.ts +12 -0
  472. package/src/api/controllers/static/index.ts +9 -13
  473. package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
  474. package/src/api/controllers/table/{external.js → external.ts} +86 -51
  475. package/src/api/controllers/table/{index.js → index.ts} +17 -17
  476. package/src/api/controllers/table/internal.ts +1 -2
  477. package/src/api/controllers/table/utils.ts +26 -21
  478. package/src/api/controllers/{templates.js → templates.ts} +10 -7
  479. package/src/api/controllers/{user.js → user.ts} +47 -49
  480. package/src/api/controllers/view/{exporters.js → exporters.ts} +5 -3
  481. package/src/api/controllers/view/{index.js → index.ts} +36 -27
  482. package/src/api/controllers/view/{utils.js → utils.ts} +26 -20
  483. package/src/api/{index.js → index.ts} +15 -22
  484. package/src/api/routes/analytics.ts +9 -0
  485. package/src/api/routes/apikeys.ts +12 -0
  486. package/src/api/routes/application.ts +17 -9
  487. package/src/api/routes/auth.ts +2 -2
  488. package/src/api/routes/automation.ts +87 -0
  489. package/src/api/routes/backup.ts +8 -4
  490. package/src/api/routes/cloud.ts +18 -0
  491. package/src/api/routes/component.ts +14 -0
  492. package/src/api/routes/datasource.ts +60 -0
  493. package/src/api/routes/deploy.ts +21 -0
  494. package/src/api/routes/dev.ts +38 -0
  495. package/src/api/routes/integration.ts +16 -0
  496. package/src/api/routes/layout.ts +16 -0
  497. package/src/api/routes/{metadata.js → metadata.ts} +13 -13
  498. package/src/api/routes/migrations.ts +14 -0
  499. package/src/api/routes/permission.ts +41 -0
  500. package/src/api/routes/plugin.ts +14 -6
  501. package/src/api/routes/{query.js → query.ts} +17 -20
  502. package/src/api/routes/role.ts +24 -0
  503. package/src/api/routes/routing.ts +14 -0
  504. package/src/api/routes/row.ts +3 -5
  505. package/src/api/routes/screen.ts +23 -0
  506. package/src/api/routes/script.ts +10 -0
  507. package/src/api/routes/static.ts +4 -7
  508. package/src/api/routes/{table.js → table.ts} +9 -12
  509. package/src/api/routes/templates.ts +16 -0
  510. package/src/api/routes/tests/backup.spec.js +9 -1
  511. package/src/api/routes/tests/permissions.spec.js +2 -1
  512. package/src/api/routes/tests/role.spec.js +3 -5
  513. package/src/api/routes/tests/routing.spec.js +2 -1
  514. package/src/api/routes/tests/row.spec.js +3 -4
  515. package/src/api/routes/tests/user.spec.js +2 -1
  516. package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
  517. package/src/api/routes/{user.js → user.ts} +7 -9
  518. package/src/api/routes/utils/{validators.js → validators.ts} +33 -37
  519. package/src/api/routes/view.ts +34 -0
  520. package/src/api/routes/webhook.ts +2 -2
  521. package/src/app.ts +3 -4
  522. package/src/automations/triggers.js +5 -6
  523. package/src/constants/index.js +3 -5
  524. package/src/constants/screens.js +2 -2
  525. package/src/db/defaultData/datasource_bb_default.js +646 -0
  526. package/src/db/defaultData/employeeImport.js +152 -0
  527. package/src/db/defaultData/expensesImport.js +114 -0
  528. package/src/db/defaultData/inventoryImport.js +106 -0
  529. package/src/db/defaultData/jobsImport.js +158 -0
  530. package/src/db/inMemoryView.js +3 -3
  531. package/src/db/linkedRows/LinkController.js +4 -50
  532. package/src/db/linkedRows/LinkDocument.js +47 -0
  533. package/src/db/linkedRows/index.js +2 -2
  534. package/src/db/linkedRows/linkUtils.js +3 -3
  535. package/src/db/utils.ts +2 -2
  536. package/src/db/views/staticViews.js +4 -4
  537. package/src/integrations/base/sql.ts +1 -1
  538. package/src/integrations/base/sqlTable.ts +1 -1
  539. package/src/integrations/index.ts +45 -41
  540. package/src/middleware/authorized.ts +21 -28
  541. package/src/middleware/tests/authorized.spec.js +5 -6
  542. package/src/migrations/functions/appUrls.ts +2 -2
  543. package/src/migrations/functions/tests/appUrls.spec.js +4 -4
  544. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +14 -9
  545. package/src/migrations/functions/usageQuotas/syncApps.ts +3 -4
  546. package/src/migrations/functions/usageQuotas/syncRows.ts +3 -4
  547. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
  548. package/src/migrations/functions/userEmailViewCasing.ts +3 -3
  549. package/src/sdk/app/backups/exports.ts +5 -3
  550. package/src/sdk/app/backups/imports.ts +3 -7
  551. package/src/sdk/app/tables/index.ts +1 -1
  552. package/src/startup.ts +2 -2
  553. package/src/tests/utilities/TestConfiguration.js +39 -35
  554. package/src/tests/utilities/structures.js +3 -4
  555. package/src/threads/automation.ts +14 -15
  556. package/src/threads/query.ts +11 -16
  557. package/src/threads/utils.ts +4 -5
  558. package/src/utilities/budibaseDir.ts +3 -0
  559. package/src/utilities/fileSystem/clientLibrary.js +12 -12
  560. package/src/utilities/fileSystem/index.js +8 -8
  561. package/src/utilities/{index.js → index.ts} +40 -32
  562. package/src/utilities/{redis.js → redis.ts} +21 -20
  563. package/src/utilities/routing/index.ts +32 -0
  564. package/src/utilities/rowProcessor/{index.js → index.ts} +65 -142
  565. package/src/utilities/rowProcessor/map.js +95 -0
  566. package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
  567. package/src/utilities/security.ts +65 -0
  568. package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
  569. package/src/utilities/{users.js → users.ts} +11 -13
  570. package/src/utilities/{workerRequests.js → workerRequests.ts} +43 -38
  571. package/src/watch.ts +2 -3
  572. package/coverage/lcov-report/src/api/routes/cloud.js.html +0 -127
  573. package/coverage/lcov-report/src/api/routes/integration.js.html +0 -121
  574. package/coverage/lcov-report/src/api/routes/role.js.html +0 -130
  575. package/coverage/lcov-report/src/module.d.ts.html +0 -127
  576. package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +0 -193
  577. package/dist/utilities/fileSystem/utilities.js +0 -22
  578. package/src/api/controllers/script.js +0 -11
  579. package/src/api/routes/analytics.js +0 -9
  580. package/src/api/routes/apikeys.js +0 -12
  581. package/src/api/routes/automation.js +0 -85
  582. package/src/api/routes/cloud.js +0 -14
  583. package/src/api/routes/component.js +0 -14
  584. package/src/api/routes/datasource.js +0 -51
  585. package/src/api/routes/deploy.js +0 -17
  586. package/src/api/routes/dev.js +0 -26
  587. package/src/api/routes/integration.js +0 -12
  588. package/src/api/routes/layout.js +0 -16
  589. package/src/api/routes/migrations.js +0 -14
  590. package/src/api/routes/permission.js +0 -33
  591. package/src/api/routes/role.js +0 -15
  592. package/src/api/routes/routing.js +0 -14
  593. package/src/api/routes/screen.js +0 -18
  594. package/src/api/routes/script.js +0 -10
  595. package/src/api/routes/templates.js +0 -16
  596. package/src/api/routes/view.js +0 -31
  597. package/src/module.d.ts +0 -14
  598. package/src/utilities/budibaseDir.js +0 -3
  599. package/src/utilities/fileSystem/utilities.js +0 -36
  600. package/src/utilities/routing/index.js +0 -25
  601. package/src/utilities/security.js +0 -71
@@ -1,20 +1,15 @@
1
- const Router = require("@koa/router")
2
- const {
3
- buildAuthMiddleware,
4
- auditLog,
5
- buildTenancyMiddleware,
6
- } = require("@budibase/backend-core/auth")
7
- const { errors } = require("@budibase/backend-core")
8
- const currentApp = require("../middleware/currentapp")
1
+ import Router from "@koa/router"
2
+ import { errors, auth } from "@budibase/backend-core"
3
+ import currentApp from "../middleware/currentapp"
4
+ import zlib from "zlib"
5
+ import { mainRoutes, staticRoutes, publicRoutes } from "./routes"
6
+ import pkg from "../../package.json"
7
+ import env from "../environment"
8
+ import { middleware as pro } from "@budibase/pro"
9
+ export { shutdown } from "./routes/public"
9
10
  const compress = require("koa-compress")
10
- const zlib = require("zlib")
11
- const { mainRoutes, staticRoutes, publicRoutes } = require("./routes")
12
- const pkg = require("../../package.json")
13
- const env = require("../environment")
14
- const { middleware: pro } = require("@budibase/pro")
15
- const { shutdown } = require("./routes/public")
16
11
 
17
- const router = new Router()
12
+ export const router: Router = new Router()
18
13
 
19
14
  router.get("/health", ctx => (ctx.status = 200))
20
15
  router.get("/version", ctx => (ctx.body = pkg.version))
@@ -42,7 +37,7 @@ router
42
37
  // re-direct before any middlewares occur
43
38
  .redirect("/", "/builder")
44
39
  .use(
45
- buildAuthMiddleware(null, {
40
+ auth.buildAuthMiddleware(null, {
46
41
  publicAllowed: true,
47
42
  })
48
43
  )
@@ -50,19 +45,20 @@ router
50
45
  // the server can be public anywhere, so nowhere should throw errors
51
46
  // if the tenancy has not been set, it'll have to be discovered at application layer
52
47
  .use(
53
- buildTenancyMiddleware(null, null, {
48
+ auth.buildTenancyMiddleware(null, null, {
54
49
  noTenancyRequired: true,
55
50
  })
56
51
  )
57
52
  .use(pro.licensing())
53
+ // @ts-ignore
58
54
  .use(currentApp)
59
- .use(auditLog)
55
+ .use(auth.auditLog)
60
56
 
61
57
  // error handling middleware
62
58
  router.use(async (ctx, next) => {
63
59
  try {
64
60
  await next()
65
- } catch (err) {
61
+ } catch (err: any) {
66
62
  ctx.status = err.status || err.statusCode || 500
67
63
  const error = errors.getPublicError(err)
68
64
  ctx.body = {
@@ -91,6 +87,3 @@ router.use(publicRoutes.allowedMethods())
91
87
  // WARNING - static routes will catch everything else after them this must be last
92
88
  router.use(staticRoutes.routes())
93
89
  router.use(staticRoutes.allowedMethods())
94
-
95
- module.exports.router = router
96
- module.exports.shutdown = shutdown
@@ -0,0 +1,9 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/analytics"
3
+
4
+ const router: Router = new Router()
5
+
6
+ router.get("/api/bbtel", controller.isEnabled)
7
+ router.post("/api/bbtel/ping", controller.ping)
8
+
9
+ export = router
@@ -0,0 +1,12 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/apikeys"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router
9
+ .get("/api/keys", authorized(permissions.BUILDER), controller.fetch)
10
+ .put("/api/keys/:key", authorized(permissions.BUILDER), controller.update)
11
+
12
+ export = router
@@ -1,16 +1,20 @@
1
1
  import Router from "@koa/router"
2
2
  import * as controller from "../controllers/application"
3
3
  import authorized from "../../middleware/authorized"
4
- import { BUILDER } from "@budibase/backend-core/permissions"
4
+ import { permissions } from "@budibase/backend-core"
5
5
  import { applicationValidator } from "./utils/validators"
6
6
 
7
- const router = new Router()
7
+ const router: Router = new Router()
8
8
 
9
9
  router
10
- .post("/api/applications/:appId/sync", authorized(BUILDER), controller.sync)
10
+ .post(
11
+ "/api/applications/:appId/sync",
12
+ authorized(permissions.BUILDER),
13
+ controller.sync
14
+ )
11
15
  .post(
12
16
  "/api/applications",
13
- authorized(BUILDER),
17
+ authorized(permissions.BUILDER),
14
18
  applicationValidator(),
15
19
  controller.create
16
20
  )
@@ -19,20 +23,24 @@ router
19
23
  .get("/api/applications/:appId/appPackage", controller.fetchAppPackage)
20
24
  .put(
21
25
  "/api/applications/:appId",
22
- authorized(BUILDER),
26
+ authorized(permissions.BUILDER),
23
27
  applicationValidator({ isCreate: false }),
24
28
  controller.update
25
29
  )
26
30
  .post(
27
31
  "/api/applications/:appId/client/update",
28
- authorized(BUILDER),
32
+ authorized(permissions.BUILDER),
29
33
  controller.updateClient
30
34
  )
31
35
  .post(
32
36
  "/api/applications/:appId/client/revert",
33
- authorized(BUILDER),
37
+ authorized(permissions.BUILDER),
34
38
  controller.revertClient
35
39
  )
36
- .delete("/api/applications/:appId", authorized(BUILDER), controller.destroy)
40
+ .delete(
41
+ "/api/applications/:appId",
42
+ authorized(permissions.BUILDER),
43
+ controller.destroy
44
+ )
37
45
 
38
- export default router
46
+ export = router
@@ -1,8 +1,8 @@
1
1
  import Router from "@koa/router"
2
2
  import * as controller from "../controllers/auth"
3
3
 
4
- const router = new Router()
4
+ const router: Router = new Router()
5
5
 
6
6
  router.get("/api/self", controller.fetchSelf)
7
7
 
8
- export default router
8
+ export = router
@@ -0,0 +1,87 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/automation"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+ import { bodyResource, paramResource } from "../../middleware/resourceId"
6
+ import {
7
+ middleware as appInfoMiddleware,
8
+ AppType,
9
+ } from "../../middleware/appInfo"
10
+ import { automationValidator } from "./utils/validators"
11
+
12
+ const router: Router = new Router()
13
+
14
+ router
15
+ .get(
16
+ "/api/automations/trigger/list",
17
+ authorized(permissions.BUILDER),
18
+ controller.getTriggerList
19
+ )
20
+ .get(
21
+ "/api/automations/action/list",
22
+ authorized(permissions.BUILDER),
23
+ controller.getActionList
24
+ )
25
+ .get(
26
+ "/api/automations/definitions/list",
27
+ authorized(permissions.BUILDER),
28
+ controller.getDefinitionList
29
+ )
30
+ .get("/api/automations", authorized(permissions.BUILDER), controller.fetch)
31
+ .get(
32
+ "/api/automations/:id",
33
+ paramResource("id"),
34
+ authorized(permissions.BUILDER),
35
+ controller.find
36
+ )
37
+ .put(
38
+ "/api/automations",
39
+ bodyResource("_id"),
40
+ authorized(permissions.BUILDER),
41
+ automationValidator(true),
42
+ controller.update
43
+ )
44
+ .post(
45
+ "/api/automations",
46
+ authorized(permissions.BUILDER),
47
+ automationValidator(false),
48
+ controller.create
49
+ )
50
+ .post(
51
+ "/api/automations/logs/search",
52
+ authorized(permissions.BUILDER),
53
+ controller.logSearch
54
+ )
55
+ .delete(
56
+ "/api/automations/logs",
57
+ authorized(permissions.BUILDER),
58
+ controller.clearLogError
59
+ )
60
+ .delete(
61
+ "/api/automations/:id/:rev",
62
+ paramResource("id"),
63
+ authorized(permissions.BUILDER),
64
+ controller.destroy
65
+ )
66
+ .post(
67
+ "/api/automations/:id/trigger",
68
+ appInfoMiddleware({ appType: AppType.PROD }),
69
+ paramResource("id"),
70
+ authorized(
71
+ permissions.PermissionType.AUTOMATION,
72
+ permissions.PermissionLevel.EXECUTE
73
+ ),
74
+ controller.trigger
75
+ )
76
+ .post(
77
+ "/api/automations/:id/test",
78
+ appInfoMiddleware({ appType: AppType.DEV }),
79
+ paramResource("id"),
80
+ authorized(
81
+ permissions.PermissionType.AUTOMATION,
82
+ permissions.PermissionLevel.EXECUTE
83
+ ),
84
+ controller.test
85
+ )
86
+
87
+ export = router
@@ -1,10 +1,14 @@
1
1
  import Router from "@koa/router"
2
2
  import * as controller from "../controllers/backup"
3
3
  import authorized from "../../middleware/authorized"
4
- import { BUILDER } from "@budibase/backend-core/permissions"
4
+ import { permissions } from "@budibase/backend-core"
5
5
 
6
- const router = new Router()
6
+ const router: Router = new Router()
7
7
 
8
- router.get("/api/backups/export", authorized(BUILDER), controller.exportAppDump)
8
+ router.get(
9
+ "/api/backups/export",
10
+ authorized(permissions.BUILDER),
11
+ controller.exportAppDump
12
+ )
9
13
 
10
- export default router
14
+ export = router
@@ -0,0 +1,18 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/cloud"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router
9
+ .get(
10
+ "/api/cloud/export",
11
+ authorized(permissions.BUILDER),
12
+ controller.exportApps
13
+ )
14
+ // has to be public, only run if apps don't exist
15
+ .post("/api/cloud/import", controller.importApps)
16
+ .get("/api/cloud/import/complete", controller.hasBeenImported)
17
+
18
+ export = router
@@ -0,0 +1,14 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/component"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router.get(
9
+ "/api/:appId/components/definitions",
10
+ authorized(permissions.BUILDER),
11
+ controller.fetchAppComponentDefinitions
12
+ )
13
+
14
+ export = router
@@ -0,0 +1,60 @@
1
+ import Router from "@koa/router"
2
+ import * as datasourceController from "../controllers/datasource"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+ import {
6
+ datasourceValidator,
7
+ datasourceQueryValidator,
8
+ } from "./utils/validators"
9
+
10
+ const router: Router = new Router()
11
+
12
+ router
13
+ .get(
14
+ "/api/datasources",
15
+ authorized(permissions.BUILDER),
16
+ datasourceController.fetch
17
+ )
18
+ .get(
19
+ "/api/datasources/:datasourceId",
20
+ authorized(
21
+ permissions.PermissionType.TABLE,
22
+ permissions.PermissionLevel.READ
23
+ ),
24
+ datasourceController.find
25
+ )
26
+ .put(
27
+ "/api/datasources/:datasourceId",
28
+ authorized(
29
+ permissions.PermissionType.TABLE,
30
+ permissions.PermissionLevel.READ
31
+ ),
32
+ datasourceController.update
33
+ )
34
+ .post(
35
+ "/api/datasources/query",
36
+ authorized(
37
+ permissions.PermissionType.TABLE,
38
+ permissions.PermissionLevel.READ
39
+ ),
40
+ datasourceQueryValidator(),
41
+ datasourceController.query
42
+ )
43
+ .post(
44
+ "/api/datasources/:datasourceId/schema",
45
+ authorized(permissions.BUILDER),
46
+ datasourceController.buildSchemaFromDb
47
+ )
48
+ .post(
49
+ "/api/datasources",
50
+ authorized(permissions.BUILDER),
51
+ datasourceValidator(),
52
+ datasourceController.save
53
+ )
54
+ .delete(
55
+ "/api/datasources/:datasourceId/:revId",
56
+ authorized(permissions.BUILDER),
57
+ datasourceController.destroy
58
+ )
59
+
60
+ export = router
@@ -0,0 +1,21 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/deploy"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router
9
+ .get(
10
+ "/api/deployments",
11
+ authorized(permissions.BUILDER),
12
+ controller.fetchDeployments
13
+ )
14
+ .get(
15
+ "/api/deploy/:deploymentId",
16
+ authorized(permissions.BUILDER),
17
+ controller.deploymentProgress
18
+ )
19
+ .post("/api/deploy", authorized(permissions.BUILDER), controller.deployApp)
20
+
21
+ export = router
@@ -0,0 +1,38 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/dev"
3
+ import env from "../../environment"
4
+ import authorized from "../../middleware/authorized"
5
+ import { permissions } from "@budibase/backend-core"
6
+
7
+ const router: Router = new Router()
8
+
9
+ function redirectPath(path: string) {
10
+ router
11
+ .get(`/api/${path}/:devPath(.*)`, controller.buildRedirectGet(path))
12
+ .post(`/api/${path}/:devPath(.*)`, controller.buildRedirectPost(path))
13
+ .delete(`/api/${path}/:devPath(.*)`, controller.buildRedirectDelete(path))
14
+ }
15
+
16
+ if (env.isDev() || env.isTest()) {
17
+ redirectPath("global")
18
+ redirectPath("system")
19
+ }
20
+
21
+ router
22
+ .get(
23
+ "/api/dev/version",
24
+ authorized(permissions.BUILDER),
25
+ controller.getBudibaseVersion
26
+ )
27
+ .delete(
28
+ "/api/dev/:appId/lock",
29
+ authorized(permissions.BUILDER),
30
+ controller.clearLock
31
+ )
32
+ .post(
33
+ "/api/dev/:appId/revert",
34
+ authorized(permissions.BUILDER),
35
+ controller.revert
36
+ )
37
+
38
+ export = router
@@ -0,0 +1,16 @@
1
+ import Router from "@koa/router"
2
+ import controller from "../controllers/integration"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router
9
+ .get("/api/integrations", authorized(permissions.BUILDER), controller.fetch)
10
+ .get(
11
+ "/api/integrations/:type",
12
+ authorized(permissions.BUILDER),
13
+ controller.find
14
+ )
15
+
16
+ export = router
@@ -0,0 +1,16 @@
1
+ import Router from "@koa/router"
2
+ import authorized from "../../middleware/authorized"
3
+ import { permissions } from "@budibase/backend-core"
4
+ import * as controller from "../controllers/layout"
5
+
6
+ const router: Router = new Router()
7
+
8
+ router
9
+ .post("/api/layouts", authorized(permissions.BUILDER), controller.save)
10
+ .delete(
11
+ "/api/layouts/:layoutId/:layoutRev",
12
+ authorized(permissions.BUILDER),
13
+ controller.destroy
14
+ )
15
+
16
+ export = router
@@ -1,38 +1,38 @@
1
- const Router = require("@koa/router")
2
- const controller = require("../controllers/metadata")
3
- const {
4
- middleware: appInfoMiddleware,
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/metadata"
3
+ import {
4
+ middleware as appInfoMiddleware,
5
5
  AppType,
6
- } = require("../../middleware/appInfo")
7
- const authorized = require("../../middleware/authorized")
8
- const { BUILDER } = require("@budibase/backend-core/permissions")
6
+ } from "../../middleware/appInfo"
7
+ import authorized from "../../middleware/authorized"
8
+ import { permissions } from "@budibase/backend-core"
9
9
 
10
- const router = new Router()
10
+ const router: Router = new Router()
11
11
 
12
12
  router
13
13
  .post(
14
14
  "/api/metadata/:type/:entityId",
15
- authorized(BUILDER),
15
+ authorized(permissions.BUILDER),
16
16
  appInfoMiddleware({ appType: AppType.DEV }),
17
17
  controller.saveMetadata
18
18
  )
19
19
  .delete(
20
20
  "/api/metadata/:type/:entityId",
21
- authorized(BUILDER),
21
+ authorized(permissions.BUILDER),
22
22
  appInfoMiddleware({ appType: AppType.DEV }),
23
23
  controller.deleteMetadata
24
24
  )
25
25
  .get(
26
26
  "/api/metadata/type",
27
- authorized(BUILDER),
27
+ authorized(permissions.BUILDER),
28
28
  appInfoMiddleware({ appType: AppType.DEV }),
29
29
  controller.getTypes
30
30
  )
31
31
  .get(
32
32
  "/api/metadata/:type/:entityId",
33
- authorized(BUILDER),
33
+ authorized(permissions.BUILDER),
34
34
  appInfoMiddleware({ appType: AppType.DEV }),
35
35
  controller.getMetadata
36
36
  )
37
37
 
38
- module.exports = router
38
+ export = router
@@ -0,0 +1,14 @@
1
+ import Router from "@koa/router"
2
+ import * as migrationsController from "../controllers/migrations"
3
+ import { auth } from "@budibase/backend-core"
4
+
5
+ const router: Router = new Router()
6
+
7
+ router
8
+ .post("/api/migrations/run", auth.internalApi, migrationsController.migrate)
9
+ .get(
10
+ "/api/migrations/definitions",
11
+ auth.internalApi,
12
+ migrationsController.fetchDefinitions
13
+ )
14
+ export = router
@@ -0,0 +1,41 @@
1
+ import Router from "@koa/router"
2
+ import * as controller from "../controllers/permission"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+ import { permissionValidator } from "./utils/validators"
6
+
7
+ const router: Router = new Router()
8
+
9
+ router
10
+ .get(
11
+ "/api/permission/builtin",
12
+ authorized(permissions.BUILDER),
13
+ controller.fetchBuiltin
14
+ )
15
+ .get(
16
+ "/api/permission/levels",
17
+ authorized(permissions.BUILDER),
18
+ controller.fetchLevels
19
+ )
20
+ .get("/api/permission", authorized(permissions.BUILDER), controller.fetch)
21
+ .get(
22
+ "/api/permission/:resourceId",
23
+ authorized(permissions.BUILDER),
24
+ controller.getResourcePerms
25
+ )
26
+ // adding a specific role/level for the resource overrides the underlying access control
27
+ .post(
28
+ "/api/permission/:roleId/:resourceId/:level",
29
+ authorized(permissions.BUILDER),
30
+ permissionValidator(),
31
+ controller.addPermission
32
+ )
33
+ // deleting the level defaults it back the underlying access control for the resource
34
+ .delete(
35
+ "/api/permission/:roleId/:resourceId/:level",
36
+ authorized(permissions.BUILDER),
37
+ permissionValidator(),
38
+ controller.removePermission
39
+ )
40
+
41
+ export = router
@@ -1,14 +1,22 @@
1
1
  import Router from "@koa/router"
2
2
  import * as controller from "../controllers/plugin"
3
3
  import authorized from "../../middleware/authorized"
4
- import { BUILDER } from "@budibase/backend-core/permissions"
4
+ import { permissions } from "@budibase/backend-core"
5
5
 
6
- const router = new Router()
6
+ const router: Router = new Router()
7
7
 
8
8
  router
9
- .post("/api/plugin/upload", authorized(BUILDER), controller.upload)
10
- .post("/api/plugin", authorized(BUILDER), controller.create)
11
- .get("/api/plugin", authorized(BUILDER), controller.fetch)
12
- .delete("/api/plugin/:pluginId", authorized(BUILDER), controller.destroy)
9
+ .post(
10
+ "/api/plugin/upload",
11
+ authorized(permissions.BUILDER),
12
+ controller.upload
13
+ )
14
+ .post("/api/plugin", authorized(permissions.BUILDER), controller.create)
15
+ .get("/api/plugin", authorized(permissions.BUILDER), controller.fetch)
16
+ .delete(
17
+ "/api/plugin/:pluginId",
18
+ authorized(permissions.BUILDER),
19
+ controller.destroy
20
+ )
13
21
 
14
22
  export default router
@@ -1,22 +1,19 @@
1
- const Router = require("@koa/router")
2
- const queryController = require("../controllers/query")
3
- const authorized = require("../../middleware/authorized")
4
- const {
5
- PermissionLevel,
6
- PermissionType,
7
- BUILDER,
8
- } = require("@budibase/backend-core/permissions")
9
- const {
1
+ import Router from "@koa/router"
2
+ import * as queryController from "../controllers/query"
3
+ import authorized from "../../middleware/authorized"
4
+ import { permissions } from "@budibase/backend-core"
5
+ import {
10
6
  bodyResource,
11
7
  bodySubResource,
12
8
  paramResource,
13
- } = require("../../middleware/resourceId")
14
- const {
9
+ } from "../../middleware/resourceId"
10
+ import {
15
11
  generateQueryPreviewValidation,
16
12
  generateQueryValidation,
17
- } = require("../controllers/query/validation")
13
+ } from "../controllers/query/validation"
14
+ const { BUILDER, PermissionType, PermissionLevel } = permissions
18
15
 
19
- const router = new Router()
16
+ const router: Router = new Router()
20
17
 
21
18
  router
22
19
  .get("/api/queries", authorized(BUILDER), queryController.fetch)
@@ -48,17 +45,17 @@ router
48
45
  authorized(PermissionType.QUERY, PermissionLevel.WRITE),
49
46
  queryController.executeV1
50
47
  )
51
- .post(
52
- "/api/v2/queries/:queryId",
53
- paramResource("queryId"),
54
- authorized(PermissionType.QUERY, PermissionLevel.WRITE),
55
- queryController.executeV2
56
- )
57
48
  .delete(
58
49
  "/api/queries/:queryId/:revId",
59
50
  paramResource("queryId"),
60
51
  authorized(BUILDER),
61
52
  queryController.destroy
62
53
  )
54
+ .post(
55
+ "/api/v2/queries/:queryId",
56
+ paramResource("queryId"),
57
+ authorized(PermissionType.QUERY, PermissionLevel.WRITE),
58
+ queryController.executeV2 as any
59
+ )
63
60
 
64
- module.exports = router
61
+ export = router