@budibase/server 2.1.45 → 2.1.46-alpha.1

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 (832) hide show
  1. package/__mocks__/aws-sdk.ts +14 -0
  2. package/__mocks__/node-fetch.ts +5 -1
  3. package/builder/assets/index.156490b5.js +1020 -0
  4. package/builder/assets/index.538092be.css +6 -0
  5. package/builder/index.html +2 -2
  6. package/coverage/clover.xml +11101 -3980
  7. package/coverage/coverage-final.json +273 -118
  8. package/coverage/lcov-report/index.html +727 -187
  9. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +190 -0
  10. package/coverage/lcov-report/{api/controllers/apikeys.js.html → src/api/controllers/apikeys.ts.html} +30 -30
  11. package/coverage/lcov-report/src/api/controllers/application.ts.html +1891 -0
  12. package/coverage/lcov-report/src/api/controllers/auth.ts.html +301 -0
  13. package/coverage/lcov-report/{api/controllers/automation.js.html → src/api/controllers/automation.ts.html} +99 -99
  14. package/coverage/lcov-report/src/api/controllers/backup.ts.html +148 -0
  15. package/coverage/lcov-report/{api/controllers/cloud.js.html → src/api/controllers/cloud.ts.html} +61 -58
  16. package/coverage/lcov-report/src/api/controllers/component.ts.html +259 -0
  17. package/coverage/lcov-report/{api/controllers/datasource.js.html → src/api/controllers/datasource.ts.html} +287 -107
  18. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +259 -0
  19. package/coverage/lcov-report/{utilities/rowProcessor → src/api/controllers/deploy}/index.html +40 -40
  20. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +748 -0
  21. package/coverage/lcov-report/{api/controllers/dev.js.html → src/api/controllers/dev.ts.html} +69 -87
  22. package/coverage/lcov-report/src/api/controllers/index.html +431 -0
  23. package/coverage/lcov-report/src/api/controllers/integration.ts.html +124 -0
  24. package/coverage/lcov-report/{api/controllers/layout.js.html → src/api/controllers/layout.ts.html} +31 -31
  25. package/coverage/lcov-report/{api/controllers/metadata.js.html → src/api/controllers/metadata.ts.html} +33 -30
  26. package/coverage/lcov-report/{api/controllers/migrations.js.html → src/api/controllers/migrations.ts.html} +20 -17
  27. package/coverage/lcov-report/{api/controllers/permission.js.html → src/api/controllers/permission.ts.html} +88 -79
  28. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +130 -0
  29. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +310 -0
  30. package/coverage/lcov-report/src/api/controllers/plugin/index.html +206 -0
  31. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +484 -0
  32. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +253 -0
  33. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +97 -0
  34. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +121 -0
  35. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +136 -0
  36. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +334 -0
  37. package/coverage/lcov-report/src/api/controllers/public/index.html +191 -0
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +181 -0
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +191 -0
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +124 -0
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +202 -0
  42. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +178 -0
  43. package/coverage/lcov-report/{utilities/routing/index.js.html → src/api/controllers/public/mapping/tables.ts.html} +46 -43
  44. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +181 -0
  45. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +145 -0
  46. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +328 -0
  47. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +253 -0
  48. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +325 -0
  49. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +220 -0
  50. package/coverage/lcov-report/src/api/controllers/query/import/index.html +116 -0
  51. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +373 -0
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +131 -0
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +379 -0
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +157 -0
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +403 -0
  56. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +146 -0
  57. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +586 -0
  58. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +712 -0
  59. package/coverage/lcov-report/src/api/controllers/query/index.html +131 -0
  60. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +976 -0
  61. package/coverage/lcov-report/{api/controllers/query/validation.js.html → src/api/controllers/query/validation.ts.html} +26 -26
  62. package/coverage/lcov-report/{api/controllers/role.js.html → src/api/controllers/role.ts.html} +51 -63
  63. package/coverage/lcov-report/{api/controllers/routing.js.html → src/api/controllers/routing.ts.html} +67 -58
  64. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +2269 -0
  65. package/coverage/lcov-report/{api/controllers/row/external.js.html → src/api/controllers/row/external.ts.html} +162 -111
  66. package/coverage/lcov-report/{api → src/api}/controllers/row/index.html +82 -52
  67. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +541 -0
  68. package/coverage/lcov-report/{api/controllers/row/internal.js.html → src/api/controllers/row/internal.ts.html} +163 -121
  69. package/coverage/lcov-report/{api/controllers/row/internalSearch.js.html → src/api/controllers/row/internalSearch.ts.html} +189 -117
  70. package/coverage/lcov-report/{api/controllers/row/staticFormula.js.html → src/api/controllers/row/staticFormula.ts.html} +73 -58
  71. package/coverage/lcov-report/{api/controllers/row/utils.js.html → src/api/controllers/row/utils.ts.html} +88 -58
  72. package/coverage/lcov-report/src/api/controllers/screen.ts.html +463 -0
  73. package/coverage/lcov-report/{api/controllers/script.js.html → src/api/controllers/script.ts.html} +19 -16
  74. package/coverage/lcov-report/src/api/controllers/static/index.html +116 -0
  75. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +694 -0
  76. package/coverage/lcov-report/{api/controllers/table/bulkFormula.js.html → src/api/controllers/table/bulkFormula.ts.html} +104 -62
  77. package/coverage/lcov-report/{api/controllers/table/external.js.html → src/api/controllers/table/external.ts.html} +204 -111
  78. package/coverage/lcov-report/src/api/controllers/table/index.html +176 -0
  79. package/coverage/lcov-report/{api/controllers/table/index.js.html → src/api/controllers/table/index.ts.html} +58 -49
  80. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +661 -0
  81. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +1255 -0
  82. package/coverage/lcov-report/{api/controllers/templates.js.html → src/api/controllers/templates.ts.html} +38 -29
  83. package/coverage/lcov-report/{api/controllers/user.js.html → src/api/controllers/user.ts.html} +78 -255
  84. package/coverage/lcov-report/{api/controllers/view/exporters.js.html → src/api/controllers/view/exporters.ts.html} +22 -16
  85. package/coverage/lcov-report/{api → src/api}/controllers/view/index.html +36 -36
  86. package/coverage/lcov-report/{api/controllers/view/index.js.html → src/api/controllers/view/index.ts.html} +91 -64
  87. package/coverage/lcov-report/{api/controllers/view/utils.js.html → src/api/controllers/view/utils.ts.html} +72 -54
  88. package/coverage/lcov-report/{api/controllers/view/viewBuilder.js.html → src/api/controllers/view/viewBuilder.ts.html} +78 -36
  89. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +379 -0
  90. package/coverage/lcov-report/{api → src/api}/index.html +23 -23
  91. package/coverage/lcov-report/{api/index.js.html → src/api/index.ts.html} +63 -84
  92. package/coverage/lcov-report/src/api/routes/analytics.ts.html +112 -0
  93. package/coverage/lcov-report/{api/routes/integration.js.html → src/api/routes/apikeys.ts.html} +25 -25
  94. package/coverage/lcov-report/src/api/routes/application.ts.html +223 -0
  95. package/coverage/lcov-report/src/api/routes/auth.ts.html +109 -0
  96. package/coverage/lcov-report/{api/routes/automation.js.html → src/api/routes/automation.ts.html} +53 -47
  97. package/coverage/lcov-report/{api/routes/cloud.js.html → src/api/routes/backup.ts.html} +28 -28
  98. package/coverage/lcov-report/{api/routes/deploy.js.html → src/api/routes/cloud.ts.html} +31 -28
  99. package/coverage/lcov-report/{api/routes/component.js.html → src/api/routes/component.ts.html} +24 -24
  100. package/coverage/lcov-report/src/api/routes/datasource.ts.html +265 -0
  101. package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
  102. package/coverage/lcov-report/src/api/routes/dev.ts.html +199 -0
  103. package/coverage/lcov-report/{api → src/api}/routes/index.html +167 -47
  104. package/coverage/lcov-report/src/api/routes/index.ts.html +289 -0
  105. package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
  106. package/coverage/lcov-report/src/api/routes/layout.ts.html +133 -0
  107. package/coverage/lcov-report/{api/routes/metadata.js.html → src/api/routes/metadata.ts.html} +31 -31
  108. package/coverage/lcov-report/{api/routes/migrations.js.html → src/api/routes/migrations.ts.html} +24 -24
  109. package/coverage/lcov-report/{api/routes/permission.js.html → src/api/routes/permission.ts.html} +55 -31
  110. package/coverage/lcov-report/src/api/routes/plugin.ts.html +151 -0
  111. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +541 -0
  112. package/coverage/lcov-report/src/api/routes/public/index.html +191 -0
  113. package/coverage/lcov-report/src/api/routes/public/index.ts.html +493 -0
  114. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +116 -0
  115. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +328 -0
  116. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +313 -0
  117. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +598 -0
  118. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +586 -0
  119. package/coverage/lcov-report/src/api/routes/public/tests/index.html +116 -0
  120. package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +169 -0
  121. package/coverage/lcov-report/src/api/routes/public/users.ts.html +511 -0
  122. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +238 -0
  123. package/coverage/lcov-report/src/api/routes/public/utils/index.html +116 -0
  124. package/coverage/lcov-report/{api/routes/query.js.html → src/api/routes/query.ts.html} +41 -50
  125. package/coverage/lcov-report/src/api/routes/role.ts.html +157 -0
  126. package/coverage/lcov-report/{api/routes/routing.js.html → src/api/routes/routing.ts.html} +24 -24
  127. package/coverage/lcov-report/src/api/routes/row.ts.html +883 -0
  128. package/coverage/lcov-report/{api/routes/screen.js.html → src/api/routes/screen.ts.html} +43 -28
  129. package/coverage/lcov-report/{api/routes/script.js.html → src/api/routes/script.ts.html} +17 -17
  130. package/coverage/lcov-report/src/api/routes/static.ts.html +280 -0
  131. package/coverage/lcov-report/{api/routes/table.js.html → src/api/routes/table.ts.html} +32 -41
  132. package/coverage/lcov-report/src/api/routes/templates.ts.html +133 -0
  133. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +550 -0
  134. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +131 -0
  135. package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +367 -0
  136. package/coverage/lcov-report/{api/routes/user.js.html → src/api/routes/user.ts.html} +35 -41
  137. package/coverage/lcov-report/{api → src/api}/routes/utils/index.html +15 -15
  138. package/coverage/lcov-report/{api/routes/utils/validators.js.html → src/api/routes/utils/validators.ts.html} +86 -98
  139. package/coverage/lcov-report/{api/routes/view.js.html → src/api/routes/view.ts.html} +45 -36
  140. package/coverage/lcov-report/src/api/routes/webhook.ts.html +166 -0
  141. package/coverage/lcov-report/src/app.ts.html +406 -0
  142. package/coverage/lcov-report/{automations/actions.js.html → src/automations/actions.ts.html} +69 -60
  143. package/coverage/lcov-report/{automations/automationUtils.js.html → src/automations/automationUtils.ts.html} +36 -33
  144. package/coverage/lcov-report/{automations/bullboard.js.html → src/automations/bullboard.ts.html} +39 -42
  145. package/coverage/lcov-report/{automations → src/automations}/index.html +63 -48
  146. package/coverage/lcov-report/{api/routes/dev.js.html → src/automations/index.ts.html} +46 -46
  147. package/coverage/lcov-report/src/automations/logging/index.html +116 -0
  148. package/coverage/lcov-report/src/automations/logging/index.ts.html +199 -0
  149. package/coverage/lcov-report/{automations/steps/bash.js.html → src/automations/steps/bash.ts.html} +45 -30
  150. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +382 -0
  151. package/coverage/lcov-report/{automations/steps/delay.js.html → src/automations/steps/delay.ts.html} +34 -19
  152. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +349 -0
  153. package/coverage/lcov-report/{automations/steps/discord.js.html → src/automations/steps/discord.ts.html} +43 -28
  154. package/coverage/lcov-report/{automations/steps/executeQuery.js.html → src/automations/steps/executeQuery.ts.html} +45 -30
  155. package/coverage/lcov-report/{automations/steps/executeScript.js.html → src/automations/steps/executeScript.ts.html} +58 -28
  156. package/coverage/lcov-report/{automations/steps/filter.js.html → src/automations/steps/filter.ts.html} +39 -30
  157. package/coverage/lcov-report/src/automations/steps/index.html +371 -0
  158. package/coverage/lcov-report/{automations/steps/integromat.js.html → src/automations/steps/integromat.ts.html} +38 -23
  159. package/coverage/lcov-report/{automations/steps/loop.js.html → src/automations/steps/loop.ts.html} +21 -15
  160. package/coverage/lcov-report/{automations/steps/outgoingWebhook.js.html → src/automations/steps/outgoingWebhook.ts.html} +54 -39
  161. package/coverage/lcov-report/{automations/steps/queryRows.js.html → src/automations/steps/queryRows.ts.html} +102 -66
  162. package/coverage/lcov-report/{automations/steps/sendSmtpEmail.js.html → src/automations/steps/sendSmtpEmail.ts.html} +40 -25
  163. package/coverage/lcov-report/{automations/steps/serverLog.js.html → src/automations/steps/serverLog.ts.html} +40 -22
  164. package/coverage/lcov-report/{automations/steps/slack.js.html → src/automations/steps/slack.ts.html} +38 -23
  165. package/coverage/lcov-report/{automations/steps/updateRow.js.html → src/automations/steps/updateRow.ts.html} +40 -25
  166. package/coverage/lcov-report/{automations/steps/utils.js.html → src/automations/steps/utils.ts.html} +45 -27
  167. package/coverage/lcov-report/{automations/steps/zapier.js.html → src/automations/steps/zapier.ts.html} +41 -23
  168. package/coverage/lcov-report/src/automations/tests/utilities/index.html +116 -0
  169. package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +265 -0
  170. package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +196 -0
  171. package/coverage/lcov-report/{automations/triggerInfo/cron.js.html → src/automations/triggerInfo/cron.ts.html} +30 -15
  172. package/coverage/lcov-report/{automations → src/automations}/triggerInfo/index.html +31 -31
  173. package/coverage/lcov-report/{automations/triggerInfo/index.js.html → src/automations/triggerInfo/index.ts.html} +24 -24
  174. package/coverage/lcov-report/{automations/triggerInfo/rowDeleted.js.html → src/automations/triggerInfo/rowDeleted.ts.html} +30 -15
  175. package/coverage/lcov-report/{automations/triggerInfo/rowSaved.js.html → src/automations/triggerInfo/rowSaved.ts.html} +30 -15
  176. package/coverage/lcov-report/{automations/triggerInfo/rowUpdated.js.html → src/automations/triggerInfo/rowUpdated.ts.html} +30 -15
  177. package/coverage/lcov-report/{automations/triggerInfo/webhook.js.html → src/automations/triggerInfo/webhook.ts.html} +30 -15
  178. package/coverage/lcov-report/{automations/triggers.js.html → src/automations/triggers.ts.html} +78 -66
  179. package/coverage/lcov-report/src/automations/utils.ts.html +886 -0
  180. package/coverage/lcov-report/{constants → src/constants}/index.html +26 -26
  181. package/coverage/lcov-report/src/constants/index.ts.html +697 -0
  182. package/coverage/lcov-report/{constants/layouts.js.html → src/constants/layouts.ts.html} +18 -36
  183. package/coverage/lcov-report/{constants/screens.js.html → src/constants/screens.ts.html} +64 -58
  184. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +2059 -0
  185. package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +541 -0
  186. package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +427 -0
  187. package/coverage/lcov-report/src/db/defaultData/index.html +176 -0
  188. package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +403 -0
  189. package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +559 -0
  190. package/coverage/lcov-report/src/db/dynamoClient.ts.html +526 -0
  191. package/coverage/lcov-report/{db/inMemoryView.js.html → src/db/inMemoryView.ts.html} +47 -29
  192. package/coverage/lcov-report/{db → src/db}/index.html +48 -33
  193. package/coverage/lcov-report/{api/routes/templates.js.html → src/db/index.ts.html} +28 -28
  194. package/coverage/lcov-report/{db/linkedRows/LinkController.js.html → src/db/linkedRows/LinkController.ts.html} +97 -160
  195. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +265 -0
  196. package/coverage/lcov-report/src/db/linkedRows/index.html +161 -0
  197. package/coverage/lcov-report/{db/linkedRows/index.js.html → src/db/linkedRows/index.ts.html} +93 -78
  198. package/coverage/lcov-report/{db/linkedRows/linkUtils.js.html → src/db/linkedRows/linkUtils.ts.html} +83 -56
  199. package/coverage/lcov-report/{db/newid.js.html → src/db/newid.ts.html} +14 -14
  200. package/coverage/lcov-report/{db/utils.js.html → src/db/utils.ts.html} +163 -211
  201. package/coverage/lcov-report/{automations/triggerInfo/app.js.html → src/definitions/automations.ts.html} +42 -42
  202. package/coverage/lcov-report/{api/routes/datasource.js.html → src/definitions/datasource.ts.html} +61 -64
  203. package/coverage/lcov-report/src/definitions/index.html +131 -0
  204. package/coverage/lcov-report/src/environment.ts.html +457 -0
  205. package/coverage/lcov-report/{events/AutomationEmitter.js.html → src/events/AutomationEmitter.ts.html} +40 -25
  206. package/coverage/lcov-report/{events/index.js.html → src/events/BudibaseEmitter.ts.html} +26 -29
  207. package/coverage/lcov-report/{events → src/events}/index.html +48 -33
  208. package/coverage/lcov-report/src/events/index.ts.html +100 -0
  209. package/coverage/lcov-report/src/events/utils.ts.html +319 -0
  210. package/coverage/lcov-report/src/index.html +191 -0
  211. package/coverage/lcov-report/{db/index.js.html → src/index.ts.html} +35 -35
  212. package/coverage/lcov-report/{utilities/queue/inMemoryQueue.js.html → src/integrations/airtable.ts.html} +213 -135
  213. package/coverage/lcov-report/src/integrations/arangodb.ts.html +415 -0
  214. package/coverage/lcov-report/src/integrations/base/index.html +161 -0
  215. package/coverage/lcov-report/src/integrations/base/query.ts.html +133 -0
  216. package/coverage/lcov-report/src/integrations/base/sql.ts.html +1951 -0
  217. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +691 -0
  218. package/coverage/lcov-report/{api/routes/apikeys.js.html → src/integrations/base/utils.ts.html} +30 -30
  219. package/coverage/lcov-report/src/integrations/couchdb.ts.html +406 -0
  220. package/coverage/lcov-report/{constants/index.js.html → src/integrations/dynamodb.ts.html} +263 -227
  221. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +634 -0
  222. package/coverage/lcov-report/src/integrations/firebase.ts.html +646 -0
  223. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1315 -0
  224. package/coverage/lcov-report/src/integrations/index.html +371 -0
  225. package/coverage/lcov-report/src/integrations/index.ts.html +445 -0
  226. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1012 -0
  227. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1867 -0
  228. package/coverage/lcov-report/src/integrations/mysql.ts.html +967 -0
  229. package/coverage/lcov-report/src/integrations/oracle.ts.html +1387 -0
  230. package/coverage/lcov-report/src/integrations/postgres.ts.html +1087 -0
  231. package/coverage/lcov-report/src/integrations/queries/index.html +116 -0
  232. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +463 -0
  233. package/coverage/lcov-report/src/integrations/redis.ts.html +550 -0
  234. package/coverage/lcov-report/src/integrations/rest.ts.html +1381 -0
  235. package/coverage/lcov-report/src/integrations/s3.ts.html +862 -0
  236. package/coverage/lcov-report/src/integrations/snowflake.ts.html +376 -0
  237. package/coverage/lcov-report/{integrations → src/integrations}/tests/TestConfiguration.js.html +10 -10
  238. package/coverage/lcov-report/{integrations → src/integrations}/tests/index.html +10 -10
  239. package/coverage/lcov-report/src/integrations/utils.ts.html +1018 -0
  240. package/coverage/lcov-report/{middleware/appInfo.js.html → src/middleware/appInfo.ts.html} +33 -30
  241. package/coverage/lcov-report/src/middleware/authorized.ts.html +460 -0
  242. package/coverage/lcov-report/{middleware/builder.js.html → src/middleware/builder.ts.html} +57 -51
  243. package/coverage/lcov-report/{middleware/currentapp.js.html → src/middleware/currentapp.ts.html} +116 -107
  244. package/coverage/lcov-report/{middleware → src/middleware}/index.html +78 -63
  245. package/coverage/lcov-report/{middleware/joi-validator.js.html → src/middleware/joi-validator.ts.html} +25 -22
  246. package/coverage/lcov-report/{middleware/publicApi.js.html → src/middleware/publicApi.ts.html} +31 -31
  247. package/coverage/lcov-report/{middleware/resourceId.js.html → src/middleware/resourceId.ts.html} +66 -51
  248. package/coverage/lcov-report/{api/controllers/integration.js.html → src/middleware/selfhost.ts.html} +22 -28
  249. package/coverage/lcov-report/{api/routes/analytics.js.html → src/middleware/utils.ts.html} +19 -19
  250. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +166 -0
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +163 -0
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +151 -0
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +206 -0
  254. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +172 -0
  255. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +226 -0
  256. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +151 -0
  257. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +151 -0
  258. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +166 -0
  259. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +532 -0
  260. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +283 -0
  261. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +146 -0
  262. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +265 -0
  263. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +232 -0
  264. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +724 -0
  265. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +161 -0
  266. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +106 -0
  267. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +235 -0
  268. package/coverage/lcov-report/src/migrations/functions/index.html +161 -0
  269. package/coverage/lcov-report/{api/routes/role.js.html → src/migrations/functions/syncQuotas.ts.html} +36 -36
  270. package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +520 -0
  271. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +161 -0
  272. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +94 -0
  273. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +127 -0
  274. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +115 -0
  275. package/coverage/lcov-report/{automations/index.js.html → src/migrations/functions/usageQuotas/syncRows.ts.html} +58 -61
  276. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +124 -0
  277. package/coverage/lcov-report/{utilities/queue → src/migrations}/index.html +23 -23
  278. package/coverage/lcov-report/src/migrations/index.ts.html +430 -0
  279. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +205 -0
  280. package/coverage/lcov-report/src/migrations/tests/index.html +131 -0
  281. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +283 -0
  282. package/coverage/lcov-report/src/sdk/app/applications/index.html +146 -0
  283. package/coverage/lcov-report/{middleware/utils.js.html → src/sdk/app/applications/index.ts.html} +19 -19
  284. package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +268 -0
  285. package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +136 -0
  286. package/coverage/lcov-report/src/sdk/app/automations/index.html +131 -0
  287. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +100 -0
  288. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +214 -0
  289. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +91 -0
  290. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +604 -0
  291. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +682 -0
  292. package/coverage/lcov-report/src/sdk/app/backups/index.html +176 -0
  293. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +112 -0
  294. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +292 -0
  295. package/coverage/lcov-report/src/sdk/app/tables/index.html +116 -0
  296. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +265 -0
  297. package/coverage/lcov-report/{utilities/routing → src/sdk}/index.html +10 -10
  298. package/coverage/lcov-report/{api/routes/layout.js.html → src/sdk/index.ts.html} +24 -24
  299. package/coverage/lcov-report/src/sdk/users/index.html +131 -0
  300. package/coverage/lcov-report/src/sdk/users/index.ts.html +100 -0
  301. package/coverage/lcov-report/src/sdk/users/utils.ts.html +277 -0
  302. package/coverage/lcov-report/src/startup.ts.html +499 -0
  303. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +1966 -0
  304. package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +127 -0
  305. package/coverage/lcov-report/src/tests/utilities/index.html +161 -0
  306. package/coverage/lcov-report/{middleware/selfhost.js.html → src/tests/utilities/index.ts.html} +33 -30
  307. package/coverage/lcov-report/src/tests/utilities/structures.ts.html +667 -0
  308. package/coverage/lcov-report/src/threads/automation.ts.html +1594 -0
  309. package/coverage/lcov-report/src/threads/index.html +161 -0
  310. package/coverage/lcov-report/src/threads/index.ts.html +418 -0
  311. package/coverage/lcov-report/src/threads/query.ts.html +961 -0
  312. package/coverage/lcov-report/src/threads/utils.ts.html +373 -0
  313. package/coverage/lcov-report/{utilities/budibaseDir.js.html → src/utilities/budibaseDir.ts.html} +14 -14
  314. package/coverage/lcov-report/{utilities/centralPath.js.html → src/utilities/centralPath.ts.html} +16 -16
  315. package/coverage/lcov-report/{utilities/csvParser.js.html → src/utilities/csvParser.ts.html} +107 -59
  316. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +547 -0
  317. package/coverage/lcov-report/{api/controllers/table → src/utilities/fileSystem}/index.html +44 -44
  318. package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +1129 -0
  319. package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +142 -0
  320. package/coverage/lcov-report/{utilities/global.js.html → src/utilities/global.ts.html} +144 -111
  321. package/coverage/lcov-report/{utilities → src/utilities}/index.html +92 -77
  322. package/coverage/lcov-report/{utilities/index.js.html → src/utilities/index.ts.html} +98 -74
  323. package/coverage/lcov-report/{utilities/plugins.js.html → src/utilities/plugins.ts.html} +25 -22
  324. package/coverage/lcov-report/src/utilities/redis.ts.html +343 -0
  325. package/coverage/lcov-report/{api/controllers/query → src/utilities/routing}/index.html +8 -8
  326. package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
  327. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +146 -0
  328. package/coverage/lcov-report/{utilities/rowProcessor/index.js.html → src/utilities/rowProcessor/index.ts.html} +128 -359
  329. package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +373 -0
  330. package/coverage/lcov-report/{utilities/rowProcessor/utils.js.html → src/utilities/rowProcessor/utils.ts.html} +54 -42
  331. package/coverage/lcov-report/{utilities/scriptRunner.js.html → src/utilities/scriptRunner.ts.html} +31 -19
  332. package/coverage/lcov-report/{utilities/security.js.html → src/utilities/security.ts.html} +60 -78
  333. package/coverage/lcov-report/{utilities/statusCodes.js.html → src/utilities/statusCodes.ts.html} +11 -11
  334. package/coverage/lcov-report/{utilities → src/utilities}/usageQuota/index.html +30 -30
  335. package/coverage/lcov-report/{utilities/usageQuota/rows.js.html → src/utilities/usageQuota/rows.ts.html} +42 -54
  336. package/coverage/lcov-report/{utilities/usageQuota/usageQuoteReset.js.html → src/utilities/usageQuota/usageQuoteReset.ts.html} +13 -13
  337. package/coverage/lcov-report/{utilities/users.js.html → src/utilities/users.ts.html} +44 -50
  338. package/coverage/lcov-report/{utilities/workerRequests.js.html → src/utilities/workerRequests.ts.html} +127 -112
  339. package/coverage/lcov-report/{events/utils.js.html → src/watch.ts.html} +68 -71
  340. package/coverage/lcov-report/src/websocket.ts.html +163 -0
  341. package/coverage/lcov.info +19994 -7196
  342. package/dist/api/controllers/apikeys.js +12 -9
  343. package/dist/api/controllers/application.js +430 -446
  344. package/dist/api/controllers/automation.js +122 -82
  345. package/dist/api/controllers/cloud.js +85 -71
  346. package/dist/api/controllers/component.js +4 -2
  347. package/dist/api/controllers/datasource.js +151 -94
  348. package/dist/api/controllers/deploy/Deployment.js +10 -6
  349. package/dist/api/controllers/deploy/index.js +19 -16
  350. package/dist/api/controllers/dev.js +96 -81
  351. package/dist/api/controllers/integration.js +11 -8
  352. package/dist/api/controllers/layout.js +18 -15
  353. package/dist/api/controllers/metadata.js +51 -37
  354. package/dist/api/controllers/migrations.js +19 -11
  355. package/dist/api/controllers/permission.js +52 -43
  356. package/dist/api/controllers/plugin/index.js +6 -7
  357. package/dist/api/controllers/plugin/utils.js +2 -1
  358. package/dist/api/controllers/public/applications.js +17 -9
  359. package/dist/api/controllers/public/tables.js +29 -9
  360. package/dist/api/controllers/public/users.js +18 -0
  361. package/dist/api/controllers/public/utils.js +2 -2
  362. package/dist/api/controllers/query/import/index.js +1 -2
  363. package/dist/api/controllers/query/index.js +10 -13
  364. package/dist/api/controllers/query/validation.js +41 -33
  365. package/dist/api/controllers/role.js +29 -27
  366. package/dist/api/controllers/routing.js +71 -58
  367. package/dist/api/controllers/row/ExternalRequest.js +539 -542
  368. package/dist/api/controllers/row/external.js +258 -190
  369. package/dist/api/controllers/row/index.js +43 -14
  370. package/dist/api/controllers/row/internal.js +354 -295
  371. package/dist/api/controllers/row/internalSearch.js +95 -80
  372. package/dist/api/controllers/row/staticFormula.js +125 -112
  373. package/dist/api/controllers/row/utils.js +122 -84
  374. package/dist/api/controllers/screen.js +81 -66
  375. package/dist/api/controllers/script.js +13 -6
  376. package/dist/api/controllers/static/index.js +11 -14
  377. package/dist/api/controllers/table/bulkFormula.js +47 -35
  378. package/dist/api/controllers/table/external.js +89 -53
  379. package/dist/api/controllers/table/index.js +64 -31
  380. package/dist/api/controllers/table/internal.js +5 -6
  381. package/dist/api/controllers/table/utils.js +39 -35
  382. package/dist/api/controllers/templates.js +17 -10
  383. package/dist/api/controllers/user.js +65 -94
  384. package/dist/api/controllers/view/exporters.js +8 -4
  385. package/dist/api/controllers/view/index.js +201 -153
  386. package/dist/api/controllers/view/utils.js +151 -121
  387. package/dist/api/controllers/view/viewBuilder.js +4 -16
  388. package/dist/api/controllers/webhook.js +25 -2
  389. package/dist/api/index.js +38 -34
  390. package/dist/api/routes/analytics.js +29 -3
  391. package/dist/api/routes/apikeys.js +33 -7
  392. package/dist/api/routes/application.js +8 -9
  393. package/dist/api/routes/auth.js +1 -2
  394. package/dist/api/routes/automation.js +46 -20
  395. package/dist/api/routes/backup.js +3 -4
  396. package/dist/api/routes/cloud.js +32 -6
  397. package/dist/api/routes/component.js +32 -6
  398. package/dist/api/routes/datasource.js +39 -13
  399. package/dist/api/routes/deploy.js +34 -8
  400. package/dist/api/routes/dev.js +36 -10
  401. package/dist/api/routes/integration.js +33 -7
  402. package/dist/api/routes/layout.js +33 -7
  403. package/dist/api/routes/metadata.js +36 -10
  404. package/dist/api/routes/migrations.js +32 -6
  405. package/dist/api/routes/permission.js +38 -12
  406. package/dist/api/routes/plugin.js +5 -5
  407. package/dist/api/routes/public/index.js +11 -11
  408. package/dist/api/routes/public/tests/utils.js +33 -0
  409. package/dist/api/routes/query.js +42 -15
  410. package/dist/api/routes/role.js +36 -10
  411. package/dist/api/routes/routing.js +32 -6
  412. package/dist/api/routes/row.js +12 -11
  413. package/dist/api/routes/screen.js +35 -9
  414. package/dist/api/routes/script.js +32 -6
  415. package/dist/api/routes/static.js +9 -9
  416. package/dist/api/routes/table.js +40 -13
  417. package/dist/api/routes/templates.js +33 -7
  418. package/dist/api/routes/tests/utilities/TestFunctions.js +6 -8
  419. package/dist/api/routes/tests/utilities/index.js +69 -32
  420. package/dist/api/routes/user.js +40 -13
  421. package/dist/api/routes/utils/validators.js +142 -126
  422. package/dist/api/routes/view.js +38 -12
  423. package/dist/api/routes/webhook.js +1 -2
  424. package/dist/app.js +22 -22
  425. package/dist/automations/actions.js +53 -24
  426. package/dist/automations/automationUtils.js +31 -19
  427. package/dist/automations/bullboard.js +59 -29
  428. package/dist/automations/index.js +23 -18
  429. package/dist/automations/steps/bash.js +40 -10
  430. package/dist/automations/steps/createRow.js +2 -1
  431. package/dist/automations/steps/delay.js +9 -5
  432. package/dist/automations/steps/deleteRow.js +2 -1
  433. package/dist/automations/steps/discord.js +14 -7
  434. package/dist/automations/steps/executeQuery.js +34 -7
  435. package/dist/automations/steps/executeScript.js +34 -7
  436. package/dist/automations/steps/filter.js +20 -18
  437. package/dist/automations/steps/integromat.js +14 -7
  438. package/dist/automations/steps/loop.js +4 -1
  439. package/dist/automations/steps/outgoingWebhook.js +45 -14
  440. package/dist/automations/steps/queryRows.js +71 -38
  441. package/dist/automations/steps/sendSmtpEmail.js +33 -6
  442. package/dist/automations/steps/serverLog.js +12 -8
  443. package/dist/automations/steps/slack.js +14 -7
  444. package/dist/automations/steps/updateRow.js +34 -7
  445. package/dist/automations/steps/utils.js +22 -16
  446. package/dist/automations/steps/zapier.js +15 -7
  447. package/dist/automations/tests/utilities/index.js +62 -38
  448. package/dist/automations/triggerInfo/app.js +4 -1
  449. package/dist/automations/triggerInfo/cron.js +4 -1
  450. package/dist/automations/triggerInfo/index.js +31 -6
  451. package/dist/automations/triggerInfo/rowDeleted.js +4 -1
  452. package/dist/automations/triggerInfo/rowSaved.js +4 -1
  453. package/dist/automations/triggerInfo/rowUpdated.js +4 -1
  454. package/dist/automations/triggerInfo/webhook.js +4 -1
  455. package/dist/automations/triggers.js +90 -57
  456. package/dist/automations/utils.js +9 -8
  457. package/dist/constants/index.js +118 -104
  458. package/dist/constants/layouts.js +7 -10
  459. package/dist/constants/screens.js +49 -44
  460. package/dist/db/defaultData/datasource_bb_default.js +573 -0
  461. package/dist/db/defaultData/employeeImport.js +155 -0
  462. package/dist/db/defaultData/expensesImport.js +117 -0
  463. package/dist/db/defaultData/inventoryImport.js +109 -0
  464. package/dist/db/defaultData/jobsImport.js +152 -0
  465. package/dist/db/dynamoClient.js +20 -20
  466. package/dist/db/inMemoryView.js +47 -38
  467. package/dist/db/index.js +7 -4
  468. package/dist/db/linkedRows/LinkController.js +51 -70
  469. package/dist/db/linkedRows/LinkDocument.js +32 -0
  470. package/dist/db/linkedRows/index.js +93 -81
  471. package/dist/db/linkedRows/linkUtils.js +42 -32
  472. package/dist/db/utils.js +146 -119
  473. package/dist/db/views/staticViews.js +91 -74
  474. package/dist/environment.js +9 -6
  475. package/dist/events/AutomationEmitter.js +13 -10
  476. package/dist/events/BudibaseEmitter.js +24 -0
  477. package/dist/events/index.js +5 -23
  478. package/dist/events/utils.js +18 -10
  479. package/dist/integrations/base/types.js +2 -0
  480. package/dist/integrations/elasticsearch.js +26 -2
  481. package/dist/integrations/googlesheets.js +5 -6
  482. package/dist/integrations/index.js +15 -6
  483. package/dist/integrations/microsoftSqlServer.js +8 -3
  484. package/dist/integrations/oracle.js +8 -1
  485. package/dist/integrations/postgres.js +6 -3
  486. package/dist/integrations/s3.js +157 -1
  487. package/dist/middleware/appInfo.js +14 -9
  488. package/dist/middleware/authorized.js +22 -21
  489. package/dist/middleware/builder.js +41 -40
  490. package/dist/middleware/currentapp.js +39 -37
  491. package/dist/middleware/joi-validator.js +17 -10
  492. package/dist/middleware/publicApi.js +5 -6
  493. package/dist/middleware/resourceId.js +16 -9
  494. package/dist/middleware/selfhost.js +5 -4
  495. package/dist/middleware/utils.js +5 -2
  496. package/dist/migrations/functions/appUrls.js +7 -11
  497. package/dist/migrations/functions/backfill/global.js +1 -1
  498. package/dist/migrations/functions/tableSettings.js +130 -0
  499. package/dist/migrations/functions/usageQuotas/syncApps.js +3 -4
  500. package/dist/migrations/functions/usageQuotas/syncRows.js +3 -4
  501. package/dist/migrations/functions/userEmailViewCasing.js +3 -3
  502. package/dist/migrations/index.js +5 -0
  503. package/dist/package.json +11 -45
  504. package/dist/sdk/app/applications/index.js +28 -0
  505. package/dist/sdk/app/applications/sync.js +70 -0
  506. package/dist/sdk/app/applications/utils.js +21 -0
  507. package/dist/sdk/app/backups/exports.js +1 -2
  508. package/dist/sdk/app/backups/imports.js +2 -3
  509. package/dist/sdk/app/tables/index.js +5 -5
  510. package/dist/sdk/index.js +4 -2
  511. package/dist/sdk/users/index.js +27 -0
  512. package/dist/sdk/users/utils.js +65 -0
  513. package/dist/startup.js +10 -10
  514. package/dist/tests/utilities/TestConfiguration.js +111 -87
  515. package/dist/tests/utilities/controllers.js +38 -15
  516. package/dist/tests/utilities/structures.js +72 -53
  517. package/dist/threads/automation.js +49 -27
  518. package/dist/threads/query.js +17 -19
  519. package/dist/threads/utils.js +33 -8
  520. package/dist/tsconfig.build.tsbuildinfo +1 -1
  521. package/dist/utilities/budibaseDir.js +4 -2
  522. package/dist/utilities/centralPath.js +14 -7
  523. package/dist/utilities/csvParser.js +27 -21
  524. package/dist/utilities/fileSystem/clientLibrary.js +87 -73
  525. package/dist/utilities/fileSystem/index.js +203 -175
  526. package/dist/utilities/fileSystem/processor.js +8 -3
  527. package/dist/utilities/global.js +87 -66
  528. package/dist/utilities/index.js +102 -75
  529. package/dist/utilities/plugins.js +15 -9
  530. package/dist/utilities/redis.js +100 -65
  531. package/dist/utilities/routing/index.js +27 -23
  532. package/dist/utilities/rowProcessor/index.js +133 -191
  533. package/dist/utilities/rowProcessor/map.js +99 -0
  534. package/dist/utilities/rowProcessor/utils.js +35 -26
  535. package/dist/utilities/scriptRunner.js +8 -5
  536. package/dist/utilities/security.js +39 -35
  537. package/dist/utilities/usageQuota/rows.js +56 -49
  538. package/dist/utilities/users.js +31 -28
  539. package/dist/utilities/workerRequests.js +115 -82
  540. package/dist/watch.js +1 -2
  541. package/jest.config.ts +33 -0
  542. package/package.json +12 -46
  543. package/scripts/exportAppTemplate.js +2 -2
  544. package/scripts/integrations/mssql/data/setup.sql +3 -3
  545. package/scripts/integrations/postgres/emp-skill.sql +46 -0
  546. package/scripts/localdomain.js +34 -6
  547. package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
  548. package/src/api/controllers/application.ts +100 -135
  549. package/src/api/controllers/auth.ts +4 -3
  550. package/src/api/controllers/{automation.js → automation.ts} +48 -48
  551. package/src/api/controllers/{cloud.js → cloud.ts} +25 -24
  552. package/src/api/controllers/component.ts +2 -1
  553. package/src/api/controllers/{datasource.js → datasource.ts} +109 -49
  554. package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
  555. package/src/api/controllers/deploy/index.ts +19 -25
  556. package/src/api/controllers/{dev.js → dev.ts} +31 -37
  557. package/src/api/controllers/integration.ts +13 -0
  558. package/src/api/controllers/{layout.js → layout.ts} +8 -8
  559. package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
  560. package/src/api/controllers/migrations.ts +14 -0
  561. package/src/api/controllers/{permission.js → permission.ts} +49 -46
  562. package/src/api/controllers/plugin/index.ts +4 -5
  563. package/src/api/controllers/plugin/utils.ts +3 -5
  564. package/src/api/controllers/public/applications.ts +15 -9
  565. package/src/api/controllers/public/rows.ts +1 -1
  566. package/src/api/controllers/public/tables.ts +2 -2
  567. package/src/api/controllers/public/users.ts +25 -6
  568. package/src/api/controllers/public/utils.ts +2 -2
  569. package/src/api/controllers/query/import/index.ts +2 -3
  570. package/src/api/controllers/query/index.ts +11 -14
  571. package/src/api/controllers/query/{validation.js → validation.ts} +7 -7
  572. package/src/api/controllers/{role.js → role.ts} +21 -25
  573. package/src/api/controllers/{routing.js → routing.ts} +37 -34
  574. package/src/api/controllers/row/ExternalRequest.ts +605 -624
  575. package/src/api/controllers/row/{external.js → external.ts} +79 -62
  576. package/src/api/controllers/row/index.ts +19 -11
  577. package/src/api/controllers/row/{internal.js → internal.ts} +87 -73
  578. package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
  579. package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +30 -25
  580. package/src/api/controllers/row/{utils.js → utils.ts} +32 -22
  581. package/src/api/controllers/screen.ts +10 -6
  582. package/src/api/controllers/script.ts +12 -0
  583. package/src/api/controllers/static/index.ts +14 -16
  584. package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
  585. package/src/api/controllers/table/{external.js → external.ts} +86 -55
  586. package/src/api/controllers/table/{index.js → index.ts} +21 -18
  587. package/src/api/controllers/table/internal.ts +5 -6
  588. package/src/api/controllers/table/utils.ts +26 -21
  589. package/src/api/controllers/{templates.js → templates.ts} +10 -7
  590. package/src/api/controllers/{user.js → user.ts} +42 -101
  591. package/src/api/controllers/view/{exporters.js → exporters.ts} +5 -3
  592. package/src/api/controllers/view/{index.js → index.ts} +36 -27
  593. package/src/api/controllers/view/{utils.js → utils.ts} +26 -20
  594. package/src/api/controllers/view/{viewBuilder.js → viewBuilder.ts} +25 -11
  595. package/src/api/controllers/webhook.ts +1 -1
  596. package/src/api/{index.js → index.ts} +15 -22
  597. package/src/api/routes/analytics.ts +9 -0
  598. package/src/api/routes/apikeys.ts +12 -0
  599. package/src/api/routes/application.ts +17 -9
  600. package/src/api/routes/auth.ts +2 -2
  601. package/src/api/routes/automation.ts +87 -0
  602. package/src/api/routes/backup.ts +8 -4
  603. package/src/api/routes/cloud.ts +18 -0
  604. package/src/api/routes/component.ts +14 -0
  605. package/src/api/routes/datasource.ts +60 -0
  606. package/src/api/routes/deploy.ts +21 -0
  607. package/src/api/routes/dev.ts +38 -0
  608. package/src/api/routes/integration.ts +16 -0
  609. package/src/api/routes/layout.ts +16 -0
  610. package/src/api/routes/{metadata.js → metadata.ts} +13 -13
  611. package/src/api/routes/migrations.ts +14 -0
  612. package/src/api/routes/permission.ts +41 -0
  613. package/src/api/routes/plugin.ts +14 -6
  614. package/src/api/routes/public/index.ts +11 -14
  615. package/src/api/routes/public/tests/compare.spec.js +3 -21
  616. package/src/api/routes/public/tests/users.spec.js +38 -0
  617. package/src/api/routes/public/tests/utils.ts +28 -0
  618. package/src/api/routes/{query.js → query.ts} +19 -22
  619. package/src/api/routes/role.ts +24 -0
  620. package/src/api/routes/routing.ts +14 -0
  621. package/src/api/routes/row.ts +13 -15
  622. package/src/api/routes/screen.ts +23 -0
  623. package/src/api/routes/script.ts +10 -0
  624. package/src/api/routes/static.ts +7 -10
  625. package/src/api/routes/{table.js → table.ts} +10 -13
  626. package/src/api/routes/templates.ts +16 -0
  627. package/src/api/routes/tests/analytics.spec.js +1 -1
  628. package/src/api/routes/tests/application.spec.js +0 -1
  629. package/src/api/routes/tests/backup.spec.js +9 -1
  630. package/src/api/routes/tests/deployment.spec.ts +1 -1
  631. package/src/api/routes/tests/permissions.spec.js +2 -1
  632. package/src/api/routes/tests/query.spec.js +15 -10
  633. package/src/api/routes/tests/role.spec.js +7 -9
  634. package/src/api/routes/tests/routing.spec.js +2 -1
  635. package/src/api/routes/tests/row.spec.js +3 -4
  636. package/src/api/routes/tests/static.spec.js +2 -2
  637. package/src/api/routes/tests/table.spec.js +40 -36
  638. package/src/api/routes/tests/user.spec.js +2 -1
  639. package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
  640. package/src/api/routes/tests/utilities/{index.js → index.ts} +12 -12
  641. package/src/api/routes/tests/view.spec.js +3 -3
  642. package/src/api/routes/user.ts +51 -0
  643. package/src/api/routes/utils/{validators.js → validators.ts} +33 -37
  644. package/src/api/routes/view.ts +34 -0
  645. package/src/api/routes/webhook.ts +2 -2
  646. package/src/app.ts +15 -14
  647. package/src/automations/{actions.js → actions.ts} +26 -23
  648. package/src/automations/{automationUtils.js → automationUtils.ts} +13 -12
  649. package/src/automations/bullboard.ts +38 -0
  650. package/src/automations/index.ts +26 -0
  651. package/src/automations/steps/{bash.js → bash.ts} +13 -8
  652. package/src/automations/steps/createRow.ts +8 -3
  653. package/src/automations/steps/{delay.js → delay.ts} +9 -4
  654. package/src/automations/steps/deleteRow.ts +8 -3
  655. package/src/automations/steps/{discord.js → discord.ts} +10 -5
  656. package/src/automations/steps/{executeQuery.js → executeQuery.ts} +12 -7
  657. package/src/automations/steps/{executeScript.js → executeScript.ts} +17 -7
  658. package/src/automations/steps/{filter.js → filter.ts} +12 -9
  659. package/src/automations/steps/{integromat.js → integromat.ts} +10 -5
  660. package/src/automations/steps/{loop.js → loop.ts} +4 -2
  661. package/src/automations/steps/{outgoingWebhook.js → outgoingWebhook.ts} +18 -13
  662. package/src/automations/steps/{queryRows.js → queryRows.ts} +48 -36
  663. package/src/automations/steps/{sendSmtpEmail.js → sendSmtpEmail.ts} +10 -5
  664. package/src/automations/steps/{serverLog.js → serverLog.ts} +9 -3
  665. package/src/automations/steps/{slack.js → slack.ts} +10 -5
  666. package/src/automations/steps/{updateRow.js → updateRow.ts} +12 -7
  667. package/src/automations/steps/{utils.js → utils.ts} +10 -4
  668. package/src/automations/steps/{zapier.js → zapier.ts} +11 -5
  669. package/src/automations/tests/updateRow.spec.js +0 -1
  670. package/src/automations/tests/utilities/index.ts +60 -0
  671. package/src/automations/triggerInfo/{app.js → app.ts} +7 -2
  672. package/src/automations/triggerInfo/{cron.js → cron.ts} +7 -2
  673. package/src/automations/triggerInfo/index.ts +15 -0
  674. package/src/automations/triggerInfo/{rowDeleted.js → rowDeleted.ts} +7 -2
  675. package/src/automations/triggerInfo/{rowSaved.js → rowSaved.ts} +7 -2
  676. package/src/automations/triggerInfo/{rowUpdated.js → rowUpdated.ts} +7 -2
  677. package/src/automations/triggerInfo/{webhook.js → webhook.ts} +7 -2
  678. package/src/automations/{triggers.js → triggers.ts} +30 -26
  679. package/src/automations/utils.ts +9 -12
  680. package/src/constants/index.ts +204 -0
  681. package/src/constants/{layouts.js → layouts.ts} +3 -9
  682. package/src/constants/screens.ts +48 -0
  683. package/src/db/defaultData/datasource_bb_default.ts +658 -0
  684. package/src/db/defaultData/employeeImport.ts +152 -0
  685. package/src/db/defaultData/expensesImport.ts +114 -0
  686. package/src/db/defaultData/inventoryImport.ts +106 -0
  687. package/src/db/defaultData/jobsImport.ts +158 -0
  688. package/src/db/{dynamoClient.js → dynamoClient.ts} +39 -19
  689. package/src/db/{inMemoryView.js → inMemoryView.ts} +15 -9
  690. package/src/db/index.ts +16 -0
  691. package/src/db/linkedRows/{LinkController.js → LinkController.ts} +64 -85
  692. package/src/db/linkedRows/LinkDocument.ts +60 -0
  693. package/src/db/linkedRows/{index.js → index.ts} +43 -38
  694. package/src/db/linkedRows/{linkUtils.js → linkUtils.ts} +33 -24
  695. package/src/db/{newid.js → newid.ts} +1 -1
  696. package/src/db/tests/linkController.spec.js +73 -57
  697. package/src/db/tests/linkTests.spec.js +17 -14
  698. package/src/db/{utils.js → utils.ts} +77 -93
  699. package/src/db/views/{staticViews.js → staticViews.ts} +20 -13
  700. package/src/{environment.js → environment.ts} +11 -7
  701. package/src/events/{AutomationEmitter.js → AutomationEmitter.ts} +12 -7
  702. package/src/events/{index.js → BudibaseEmitter.ts} +7 -8
  703. package/src/events/index.ts +5 -0
  704. package/src/events/utils.ts +78 -0
  705. package/src/integrations/base/sql.ts +1 -1
  706. package/src/integrations/base/sqlTable.ts +1 -1
  707. package/src/integrations/base/types.ts +134 -0
  708. package/src/integrations/elasticsearch.ts +32 -2
  709. package/src/integrations/googlesheets.ts +5 -7
  710. package/src/integrations/index.ts +45 -41
  711. package/src/integrations/microsoftSqlServer.ts +14 -12
  712. package/src/integrations/mysql.ts +4 -3
  713. package/src/integrations/oracle.ts +17 -46
  714. package/src/integrations/postgres.ts +8 -2
  715. package/src/integrations/s3.ts +179 -3
  716. package/src/integrations/tests/s3.spec.ts +85 -1
  717. package/src/integrations/utils.ts +6 -2
  718. package/src/middleware/appInfo.ts +20 -0
  719. package/src/middleware/authorized.ts +21 -28
  720. package/src/middleware/{builder.js → builder.ts} +17 -15
  721. package/src/middleware/{currentapp.js → currentapp.ts} +42 -39
  722. package/src/middleware/{joi-validator.js → joi-validator.ts} +9 -8
  723. package/src/middleware/publicApi.ts +21 -0
  724. package/src/middleware/{resourceId.js → resourceId.ts} +16 -11
  725. package/src/middleware/{selfhost.js → selfhost.ts} +4 -2
  726. package/src/middleware/tests/authorized.spec.js +5 -6
  727. package/src/middleware/tests/currentapp.spec.js +118 -63
  728. package/src/middleware/{utils.js → utils.ts} +3 -1
  729. package/src/migrations/functions/appUrls.ts +4 -11
  730. package/src/migrations/functions/backfill/app/tables.ts +2 -5
  731. package/src/migrations/functions/backfill/global.ts +1 -1
  732. package/src/migrations/functions/tableSettings.ts +145 -0
  733. package/src/migrations/functions/tests/appUrls.spec.js +4 -4
  734. package/src/migrations/functions/tests/tableSettings.spec.ts +144 -0
  735. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +14 -9
  736. package/src/migrations/functions/usageQuotas/syncApps.ts +3 -4
  737. package/src/migrations/functions/usageQuotas/syncRows.ts +4 -5
  738. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
  739. package/src/migrations/functions/userEmailViewCasing.ts +3 -3
  740. package/src/migrations/index.ts +9 -0
  741. package/src/migrations/tests/index.spec.ts +1 -1
  742. package/src/sdk/app/applications/index.ts +7 -0
  743. package/src/sdk/app/applications/sync.ts +61 -0
  744. package/src/sdk/app/applications/utils.ts +17 -0
  745. package/src/sdk/app/backups/exports.ts +5 -3
  746. package/src/sdk/app/backups/imports.ts +7 -14
  747. package/src/sdk/app/backups/statistics.ts +9 -18
  748. package/src/sdk/app/tables/index.ts +7 -8
  749. package/src/sdk/index.ts +4 -3
  750. package/src/sdk/users/index.ts +5 -0
  751. package/src/sdk/users/utils.ts +64 -0
  752. package/src/startup.ts +5 -5
  753. package/{scripts/jestSetup.js → src/tests/jestSetup.ts} +11 -2
  754. package/src/tests/utilities/{TestConfiguration.js → TestConfiguration.ts} +111 -78
  755. package/src/tests/utilities/controllers.ts +14 -0
  756. package/src/tests/utilities/{index.js → index.ts} +2 -2
  757. package/src/tests/utilities/{structures.js → structures.ts} +41 -36
  758. package/src/threads/automation.ts +18 -19
  759. package/src/threads/query.ts +11 -16
  760. package/src/threads/utils.ts +4 -5
  761. package/src/utilities/budibaseDir.ts +3 -0
  762. package/src/utilities/{centralPath.js → centralPath.ts} +3 -3
  763. package/src/utilities/{csvParser.js → csvParser.ts} +42 -26
  764. package/src/utilities/fileSystem/{clientLibrary.js → clientLibrary.ts} +20 -20
  765. package/src/utilities/fileSystem/{index.js → index.ts} +61 -65
  766. package/src/utilities/fileSystem/{processor.js → processor.ts} +3 -5
  767. package/src/utilities/global.ts +138 -0
  768. package/src/utilities/{index.js → index.ts} +40 -32
  769. package/src/utilities/{plugins.js → plugins.ts} +5 -4
  770. package/src/utilities/{redis.js → redis.ts} +21 -20
  771. package/src/utilities/routing/index.ts +32 -0
  772. package/src/utilities/rowProcessor/{index.js → index.ts} +67 -144
  773. package/src/utilities/rowProcessor/map.ts +96 -0
  774. package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
  775. package/src/utilities/{scriptRunner.js → scriptRunner.ts} +8 -4
  776. package/src/utilities/security.ts +65 -0
  777. package/src/utilities/{statusCodes.js → statusCodes.ts} +1 -1
  778. package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
  779. package/src/utilities/usageQuota/{usageQuoteReset.js → usageQuoteReset.ts} +1 -1
  780. package/src/utilities/{users.js → users.ts} +11 -13
  781. package/src/utilities/{workerRequests.js → workerRequests.ts} +43 -38
  782. package/src/watch.ts +2 -3
  783. package/tsconfig.build.json +1 -2
  784. package/tsconfig.json +3 -1
  785. package/builder/assets/index.534f6c29.css +0 -6
  786. package/builder/assets/index.f1f9afd2.js +0 -1021
  787. package/coverage/lcov-report/api/controllers/index.html +0 -326
  788. package/coverage/lcov-report/automations/steps/index.html +0 -341
  789. package/coverage/lcov-report/db/linkedRows/index.html +0 -146
  790. package/dist/integrations/tests/TestConfiguration.js +0 -1
  791. package/dist/utilities/fileSystem/utilities.js +0 -22
  792. package/dist/utilities/queue/inMemoryQueue.js +0 -126
  793. package/src/api/controllers/integration.js +0 -14
  794. package/src/api/controllers/migrations.js +0 -13
  795. package/src/api/controllers/script.js +0 -11
  796. package/src/api/routes/analytics.js +0 -9
  797. package/src/api/routes/apikeys.js +0 -12
  798. package/src/api/routes/automation.js +0 -85
  799. package/src/api/routes/cloud.js +0 -14
  800. package/src/api/routes/component.js +0 -14
  801. package/src/api/routes/datasource.js +0 -51
  802. package/src/api/routes/deploy.js +0 -17
  803. package/src/api/routes/dev.js +0 -26
  804. package/src/api/routes/integration.js +0 -12
  805. package/src/api/routes/layout.js +0 -16
  806. package/src/api/routes/migrations.js +0 -14
  807. package/src/api/routes/permission.js +0 -33
  808. package/src/api/routes/role.js +0 -15
  809. package/src/api/routes/routing.js +0 -14
  810. package/src/api/routes/screen.js +0 -18
  811. package/src/api/routes/script.js +0 -10
  812. package/src/api/routes/templates.js +0 -16
  813. package/src/api/routes/user.js +0 -53
  814. package/src/api/routes/view.js +0 -31
  815. package/src/automations/bullboard.js +0 -39
  816. package/src/automations/index.js +0 -29
  817. package/src/automations/tests/utilities/index.js +0 -51
  818. package/src/automations/triggerInfo/index.js +0 -15
  819. package/src/constants/index.js +0 -208
  820. package/src/constants/screens.js +0 -46
  821. package/src/db/index.js +0 -16
  822. package/src/events/utils.js +0 -38
  823. package/src/middleware/appInfo.js +0 -19
  824. package/src/middleware/publicApi.js +0 -21
  825. package/src/module.d.ts +0 -14
  826. package/src/tests/utilities/controllers.js +0 -16
  827. package/src/utilities/budibaseDir.js +0 -3
  828. package/src/utilities/fileSystem/utilities.js +0 -36
  829. package/src/utilities/global.js +0 -127
  830. package/src/utilities/queue/inMemoryQueue.js +0 -122
  831. package/src/utilities/routing/index.js +0 -25
  832. package/src/utilities/security.js +0 -71
@@ -3,15 +3,15 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for api/routes/utils/validators.js</title>
6
+ <title>Code coverage report for src/api/routes/utils/validators.ts</title>
7
7
  <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../../prettify.css" />
9
- <link rel="stylesheet" href="../../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
8
+ <link rel="stylesheet" href="../../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
11
11
  <meta name="viewport" content="width=device-width, initial-scale=1" />
12
12
  <style type='text/css'>
13
13
  .coverage-summary .sorter {
14
- background-image: url(../../../sort-arrow-sprite.png);
14
+ background-image: url(../../../../sort-arrow-sprite.png);
15
15
  }
16
16
  </style>
17
17
  </head>
@@ -19,13 +19,13 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">api/routes/utils</a> validators.js</h1>
22
+ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/api/routes/utils</a> validators.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>42/42</span>
28
+ <span class='fraction'>41/41</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>42/42</span>
49
+ <span class='fraction'>41/41</span>
50
50
  </div>
51
51
 
52
52
 
@@ -303,27 +303,22 @@
303
303
  <a name='L238'></a><a href='#L238'>238</a>
304
304
  <a name='L239'></a><a href='#L239'>239</a>
305
305
  <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
311
- <span class="cline-any cline-yes">44x</span>
306
+ <a name='L241'></a><a href='#L241'>241</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">46x</span>
307
+ <span class="cline-any cline-yes">46x</span>
308
+ <span class="cline-any cline-yes">46x</span>
309
+ <span class="cline-any cline-yes">46x</span>
312
310
  <span class="cline-any cline-neutral">&nbsp;</span>
311
+ <span class="cline-any cline-yes">46x</span>
312
+ <span class="cline-any cline-yes">46x</span>
313
+ <span class="cline-any cline-yes">46x</span>
314
+ <span class="cline-any cline-yes">46x</span>
313
315
  <span class="cline-any cline-neutral">&nbsp;</span>
316
+ <span class="cline-any cline-yes">46x</span>
314
317
  <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-yes">44x</span>
316
- <span class="cline-any cline-yes">44x</span>
317
- <span class="cline-any cline-yes">44x</span>
318
+ <span class="cline-any cline-yes">138x</span>
318
319
  <span class="cline-any cline-neutral">&nbsp;</span>
319
- <span class="cline-any cline-yes">44x</span>
320
- <span class="cline-any cline-yes">44x</span>
321
- <span class="cline-any cline-yes">44x</span>
322
- <span class="cline-any cline-yes">44x</span>
323
320
  <span class="cline-any cline-neutral">&nbsp;</span>
324
- <span class="cline-any cline-yes">44x</span>
325
321
  <span class="cline-any cline-neutral">&nbsp;</span>
326
- <span class="cline-any cline-yes">132x</span>
327
322
  <span class="cline-any cline-neutral">&nbsp;</span>
328
323
  <span class="cline-any cline-neutral">&nbsp;</span>
329
324
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -332,19 +327,19 @@
332
327
  <span class="cline-any cline-neutral">&nbsp;</span>
333
328
  <span class="cline-any cline-neutral">&nbsp;</span>
334
329
  <span class="cline-any cline-neutral">&nbsp;</span>
330
+ <span class="cline-any cline-yes">46x</span>
335
331
  <span class="cline-any cline-neutral">&nbsp;</span>
332
+ <span class="cline-any cline-yes">184x</span>
336
333
  <span class="cline-any cline-neutral">&nbsp;</span>
337
334
  <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-yes">44x</span>
339
335
  <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-yes">176x</span>
341
336
  <span class="cline-any cline-neutral">&nbsp;</span>
337
+ <span class="cline-any cline-yes">46x</span>
342
338
  <span class="cline-any cline-neutral">&nbsp;</span>
339
+ <span class="cline-any cline-yes">46x</span>
343
340
  <span class="cline-any cline-neutral">&nbsp;</span>
344
341
  <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-yes">44x</span>
346
342
  <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-yes">44x</span>
348
343
  <span class="cline-any cline-neutral">&nbsp;</span>
349
344
  <span class="cline-any cline-neutral">&nbsp;</span>
350
345
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -355,10 +350,10 @@
355
350
  <span class="cline-any cline-neutral">&nbsp;</span>
356
351
  <span class="cline-any cline-neutral">&nbsp;</span>
357
352
  <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-yes">138x</span>
358
354
  <span class="cline-any cline-neutral">&nbsp;</span>
359
355
  <span class="cline-any cline-neutral">&nbsp;</span>
360
356
  <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-yes">132x</span>
362
357
  <span class="cline-any cline-neutral">&nbsp;</span>
363
358
  <span class="cline-any cline-neutral">&nbsp;</span>
364
359
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -370,12 +365,12 @@
370
365
  <span class="cline-any cline-neutral">&nbsp;</span>
371
366
  <span class="cline-any cline-neutral">&nbsp;</span>
372
367
  <span class="cline-any cline-neutral">&nbsp;</span>
368
+ <span class="cline-any cline-yes">46x</span>
373
369
  <span class="cline-any cline-neutral">&nbsp;</span>
370
+ <span class="cline-any cline-yes">46x</span>
374
371
  <span class="cline-any cline-neutral">&nbsp;</span>
375
372
  <span class="cline-any cline-neutral">&nbsp;</span>
376
- <span class="cline-any cline-yes">44x</span>
377
373
  <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-yes">44x</span>
379
374
  <span class="cline-any cline-neutral">&nbsp;</span>
380
375
  <span class="cline-any cline-neutral">&nbsp;</span>
381
376
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -384,11 +379,11 @@
384
379
  <span class="cline-any cline-neutral">&nbsp;</span>
385
380
  <span class="cline-any cline-neutral">&nbsp;</span>
386
381
  <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-yes">46x</span>
383
+ <span class="cline-any cline-yes">46x</span>
387
384
  <span class="cline-any cline-neutral">&nbsp;</span>
388
385
  <span class="cline-any cline-neutral">&nbsp;</span>
389
386
  <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-yes">44x</span>
391
- <span class="cline-any cline-yes">44x</span>
392
387
  <span class="cline-any cline-neutral">&nbsp;</span>
393
388
  <span class="cline-any cline-neutral">&nbsp;</span>
394
389
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -402,12 +397,12 @@
402
397
  <span class="cline-any cline-neutral">&nbsp;</span>
403
398
  <span class="cline-any cline-neutral">&nbsp;</span>
404
399
  <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <span class="cline-any cline-yes">46x</span>
405
401
  <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-yes">46x</span>
406
403
  <span class="cline-any cline-neutral">&nbsp;</span>
407
404
  <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-yes">44x</span>
409
405
  <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-yes">44x</span>
411
406
  <span class="cline-any cline-neutral">&nbsp;</span>
412
407
  <span class="cline-any cline-neutral">&nbsp;</span>
413
408
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -423,12 +418,12 @@
423
418
  <span class="cline-any cline-neutral">&nbsp;</span>
424
419
  <span class="cline-any cline-neutral">&nbsp;</span>
425
420
  <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-yes">46x</span>
426
422
  <span class="cline-any cline-neutral">&nbsp;</span>
423
+ <span class="cline-any cline-yes">46x</span>
427
424
  <span class="cline-any cline-neutral">&nbsp;</span>
428
425
  <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-yes">44x</span>
430
426
  <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">44x</span>
432
427
  <span class="cline-any cline-neutral">&nbsp;</span>
433
428
  <span class="cline-any cline-neutral">&nbsp;</span>
434
429
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -438,13 +433,13 @@
438
433
  <span class="cline-any cline-neutral">&nbsp;</span>
439
434
  <span class="cline-any cline-neutral">&nbsp;</span>
440
435
  <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-yes">46x</span>
437
+ <span class="cline-any cline-yes">46x</span>
441
438
  <span class="cline-any cline-neutral">&nbsp;</span>
439
+ <span class="cline-any cline-yes">46x</span>
442
440
  <span class="cline-any cline-neutral">&nbsp;</span>
443
441
  <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-yes">44x</span>
445
- <span class="cline-any cline-yes">44x</span>
446
442
  <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-yes">44x</span>
448
443
  <span class="cline-any cline-neutral">&nbsp;</span>
449
444
  <span class="cline-any cline-neutral">&nbsp;</span>
450
445
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -454,22 +449,22 @@
454
449
  <span class="cline-any cline-neutral">&nbsp;</span>
455
450
  <span class="cline-any cline-neutral">&nbsp;</span>
456
451
  <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-yes">46x</span>
453
+ <span class="cline-any cline-yes">92x</span>
457
454
  <span class="cline-any cline-neutral">&nbsp;</span>
455
+ <span class="cline-any cline-yes">92x</span>
458
456
  <span class="cline-any cline-neutral">&nbsp;</span>
459
457
  <span class="cline-any cline-neutral">&nbsp;</span>
460
- <span class="cline-any cline-yes">44x</span>
461
- <span class="cline-any cline-yes">88x</span>
462
458
  <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">88x</span>
464
459
  <span class="cline-any cline-neutral">&nbsp;</span>
465
460
  <span class="cline-any cline-neutral">&nbsp;</span>
466
461
  <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-yes">46x</span>
467
463
  <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-yes">46x</span>
468
465
  <span class="cline-any cline-neutral">&nbsp;</span>
469
466
  <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-yes">44x</span>
471
467
  <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-yes">44x</span>
473
468
  <span class="cline-any cline-neutral">&nbsp;</span>
474
469
  <span class="cline-any cline-neutral">&nbsp;</span>
475
470
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -489,10 +484,10 @@
489
484
  <span class="cline-any cline-neutral">&nbsp;</span>
490
485
  <span class="cline-any cline-neutral">&nbsp;</span>
491
486
  <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-yes">184x</span>
492
488
  <span class="cline-any cline-neutral">&nbsp;</span>
493
489
  <span class="cline-any cline-neutral">&nbsp;</span>
494
490
  <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-yes">176x</span>
496
491
  <span class="cline-any cline-neutral">&nbsp;</span>
497
492
  <span class="cline-any cline-neutral">&nbsp;</span>
498
493
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -502,12 +497,12 @@
502
497
  <span class="cline-any cline-neutral">&nbsp;</span>
503
498
  <span class="cline-any cline-neutral">&nbsp;</span>
504
499
  <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-yes">46x</span>
505
501
  <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-yes">92x</span>
506
503
  <span class="cline-any cline-neutral">&nbsp;</span>
507
504
  <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-yes">44x</span>
509
505
  <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-yes">88x</span>
511
506
  <span class="cline-any cline-neutral">&nbsp;</span>
512
507
  <span class="cline-any cline-neutral">&nbsp;</span>
513
508
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -516,30 +511,30 @@
516
511
  <span class="cline-any cline-neutral">&nbsp;</span>
517
512
  <span class="cline-any cline-neutral">&nbsp;</span>
518
513
  <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-yes">46x</span>
519
515
  <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-yes">184x</span>
520
517
  <span class="cline-any cline-neutral">&nbsp;</span>
521
518
  <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-yes">44x</span>
523
519
  <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-yes">176x</span>
525
520
  <span class="cline-any cline-neutral">&nbsp;</span>
526
521
  <span class="cline-any cline-neutral">&nbsp;</span>
527
522
  <span class="cline-any cline-neutral">&nbsp;</span>
528
523
  <span class="cline-any cline-neutral">&nbsp;</span>
529
524
  <span class="cline-any cline-neutral">&nbsp;</span>
525
+ <span class="cline-any cline-yes">184x</span>
530
526
  <span class="cline-any cline-neutral">&nbsp;</span>
531
527
  <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-yes">184x</span>
529
+ <span class="cline-any cline-yes">138x</span>
532
530
  <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-yes">176x</span>
531
+ <span class="cline-any cline-yes">46x</span>
534
532
  <span class="cline-any cline-neutral">&nbsp;</span>
535
533
  <span class="cline-any cline-neutral">&nbsp;</span>
536
- <span class="cline-any cline-yes">176x</span>
537
- <span class="cline-any cline-yes">132x</span>
534
+ <span class="cline-any cline-yes">184x</span>
538
535
  <span class="cline-any cline-neutral">&nbsp;</span>
539
- <span class="cline-any cline-yes">44x</span>
540
536
  <span class="cline-any cline-neutral">&nbsp;</span>
541
537
  <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-yes">176x</span>
543
538
  <span class="cline-any cline-neutral">&nbsp;</span>
544
539
  <span class="cline-any cline-neutral">&nbsp;</span>
545
540
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -548,26 +543,19 @@
548
543
  <span class="cline-any cline-neutral">&nbsp;</span>
549
544
  <span class="cline-any cline-neutral">&nbsp;</span>
550
545
  <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { joiValidator } = require("@budibase/backend-core/auth")
555
- const { DataSourceOperation } = require("../../../constants")
556
- const {
557
- BUILTIN_PERMISSION_IDS,
558
- PermissionLevels,
559
- } = require("@budibase/backend-core/permissions")
560
- const { WebhookActionType } = require("@budibase/types")
561
- const Joi = require("joi")
546
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { auth, permissions } from "@budibase/backend-core"
547
+ import { DataSourceOperation } from "../../../constants"
548
+ import { WebhookActionType } from "@budibase/types"
549
+ import Joi from "joi"
562
550
  &nbsp;
563
551
  const OPTIONAL_STRING = Joi.string().optional().allow(null).allow("")
564
552
  const OPTIONAL_NUMBER = Joi.number().optional().allow(null)
565
553
  const OPTIONAL_BOOLEAN = Joi.boolean().optional().allow(null)
566
554
  const APP_NAME_REGEX = /^[\w\s]+$/
567
555
  &nbsp;
568
- exports.tableValidator = () =&gt; {
556
+ export function tableValidator() {
569
557
  // prettier-ignore
570
- return joiValidator.body(Joi.object({
558
+ return auth.joiValidator.body(Joi.object({
571
559
  _id: OPTIONAL_STRING,
572
560
  _rev: OPTIONAL_STRING,
573
561
  type: OPTIONAL_STRING.valid("table", "internal", "external"),
@@ -579,16 +567,16 @@ exports.tableValidator = () =&gt; {
579
567
  }).unknown(true))
580
568
  }
581
569
  &nbsp;
582
- exports.nameValidator = () =&gt; {
570
+ export function nameValidator() {
583
571
  // prettier-ignore
584
- return joiValidator.body(Joi.object({
572
+ return auth.joiValidator.body(Joi.object({
585
573
  name: OPTIONAL_STRING,
586
574
  }))
587
575
  }
588
576
  &nbsp;
589
- exports.datasourceValidator = () =&gt; {
577
+ export function datasourceValidator() {
590
578
  // prettier-ignore
591
- return joiValidator.body(Joi.object({
579
+ return auth.joiValidator.body(Joi.object({
592
580
  _id: Joi.string(),
593
581
  _rev: Joi.string(),
594
582
  type: OPTIONAL_STRING.allow("datasource_plus"),
@@ -617,9 +605,9 @@ function filterObject() {
617
605
  }).unknown(true)
618
606
  }
619
607
  &nbsp;
620
- exports.internalSearchValidator = () =&gt; {
608
+ export function internalSearchValidator() {
621
609
  // prettier-ignore
622
- return joiValidator.body(Joi.object({
610
+ return auth.joiValidator.body(Joi.object({
623
611
  tableId: OPTIONAL_STRING,
624
612
  query: filterObject(),
625
613
  limit: OPTIONAL_NUMBER,
@@ -631,8 +619,8 @@ exports.internalSearchValidator = () =&gt; {
631
619
  }))
632
620
  }
633
621
  &nbsp;
634
- exports.externalSearchValidator = () =&gt; {
635
- return joiValidator.body(
622
+ export function externalSearchValidator() {
623
+ return auth.joiValidator.body(
636
624
  Joi.object({
637
625
  query: filterObject(),
638
626
  paginate: Joi.boolean().optional(),
@@ -649,9 +637,9 @@ exports.externalSearchValidator = () =&gt; {
649
637
  )
650
638
  }
651
639
  &nbsp;
652
- exports.datasourceQueryValidator = () =&gt; {
640
+ export function datasourceQueryValidator() {
653
641
  // prettier-ignore
654
- return joiValidator.body(Joi.object({
642
+ return auth.joiValidator.body(Joi.object({
655
643
  endpoint: Joi.object({
656
644
  datasourceId: Joi.string().required(),
657
645
  operation: Joi.string().required().valid(...Object.values(DataSourceOperation)),
@@ -670,9 +658,9 @@ exports.datasourceQueryValidator = () =&gt; {
670
658
  }))
671
659
  }
672
660
  &nbsp;
673
- exports.webhookValidator = () =&gt; {
661
+ export function webhookValidator() {
674
662
  // prettier-ignore
675
- return joiValidator.body(Joi.object({
663
+ return auth.joiValidator.body(Joi.object({
676
664
  live: Joi.bool(),
677
665
  _id: OPTIONAL_STRING,
678
666
  _rev: OPTIONAL_STRING,
@@ -685,15 +673,15 @@ exports.webhookValidator = () =&gt; {
685
673
  }).unknown(true))
686
674
  }
687
675
  &nbsp;
688
- exports.roleValidator = () =&gt; {
689
- const permLevelArray = Object.values(PermissionLevels)
676
+ export function roleValidator() {
677
+ const permLevelArray = Object.values(permissions.PermissionLevel)
690
678
  // prettier-ignore
691
- return joiValidator.body(Joi.object({
679
+ return auth.joiValidator.body(Joi.object({
692
680
  _id: OPTIONAL_STRING,
693
681
  _rev: OPTIONAL_STRING,
694
682
  name: Joi.string().required(),
695
683
  // this is the base permission ID (for now a built in)
696
- permissionId: Joi.string().valid(...Object.values(BUILTIN_PERMISSION_IDS)).required(),
684
+ permissionId: Joi.string().valid(...Object.values(permissions.BuiltinPermissionID)).required(),
697
685
  permissions: Joi.object()
698
686
  .pattern(/.*/, [Joi.string().valid(...permLevelArray)])
699
687
  .optional(),
@@ -701,19 +689,19 @@ exports.roleValidator = () =&gt; {
701
689
  }).unknown(true))
702
690
  }
703
691
  &nbsp;
704
- exports.permissionValidator = () =&gt; {
705
- const permLevelArray = Object.values(PermissionLevels)
692
+ export function permissionValidator() {
693
+ const permLevelArray = Object.values(permissions.PermissionLevel)
706
694
  // prettier-ignore
707
- return joiValidator.params(Joi.object({
695
+ return auth.joiValidator.params(Joi.object({
708
696
  level: Joi.string().valid(...permLevelArray).required(),
709
697
  resourceId: Joi.string(),
710
698
  roleId: Joi.string(),
711
699
  }).unknown(true))
712
700
  }
713
701
  &nbsp;
714
- exports.screenValidator = () =&gt; {
702
+ export function screenValidator() {
715
703
  // prettier-ignore
716
- return joiValidator.body(Joi.object({
704
+ return auth.joiValidator.body(Joi.object({
717
705
  name: Joi.string().required(),
718
706
  showNavigation: OPTIONAL_BOOLEAN,
719
707
  width: OPTIONAL_STRING,
@@ -734,7 +722,7 @@ exports.screenValidator = () =&gt; {
734
722
  }).unknown(true))
735
723
  }
736
724
  &nbsp;
737
- function generateStepSchema(allowStepTypes) {
725
+ function generateStepSchema(allowStepTypes: string[]) {
738
726
  // prettier-ignore
739
727
  return Joi.object({
740
728
  stepId: Joi.string().required(),
@@ -749,9 +737,9 @@ function generateStepSchema(allowStepTypes) {
749
737
  }).unknown(true)
750
738
  }
751
739
  &nbsp;
752
- exports.automationValidator = (existing = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span> =&gt; {
740
+ export function automationValidator(existing = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span> {
753
741
  // prettier-ignore
754
- return joiValidator.body(Joi.object({
742
+ return auth.joiValidator.body(Joi.object({
755
743
  _id: existing ? Joi.string().required() : OPTIONAL_STRING,
756
744
  _rev: existing ? Joi.string().required() : OPTIONAL_STRING,
757
745
  name: Joi.string().required(),
@@ -763,9 +751,9 @@ exports.automationValidator = (existing = <span class="branch-0 cbranch-no" titl
763
751
  }).unknown(true))
764
752
  }
765
753
  &nbsp;
766
- exports.applicationValidator = (opts = { isCreate: true }) =&gt; {
754
+ export function applicationValidator(opts = { isCreate: true }) {
767
755
  // prettier-ignore
768
- const base = {
756
+ const base: any = {
769
757
  _id: OPTIONAL_STRING,
770
758
  _rev: OPTIONAL_STRING,
771
759
  url: OPTIONAL_STRING,
@@ -783,7 +771,7 @@ exports.applicationValidator = (opts = { isCreate: true }) =&gt; {
783
771
  base.name = appNameValidator.optional()
784
772
  }
785
773
  &nbsp;
786
- return joiValidator.body(
774
+ return auth.joiValidator.body(
787
775
  Joi.object({
788
776
  _id: OPTIONAL_STRING,
789
777
  _rev: OPTIONAL_STRING,
@@ -802,16 +790,16 @@ exports.applicationValidator = (opts = { isCreate: true }) =&gt; {
802
790
  <div class='footer quiet pad2 space-top1 center small'>
803
791
  Code coverage generated by
804
792
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
805
- at Tue Dec 06 2022 14:43:08 GMT+0000 (Coordinated Universal Time)
793
+ at Fri Dec 09 2022 14:41:04 GMT+0000 (Coordinated Universal Time)
806
794
  </div>
807
- <script src="../../../prettify.js"></script>
795
+ <script src="../../../../prettify.js"></script>
808
796
  <script>
809
797
  window.onload = function () {
810
798
  prettyPrint();
811
799
  };
812
800
  </script>
813
- <script src="../../../sorter.js"></script>
814
- <script src="../../../block-navigation.js"></script>
801
+ <script src="../../../../sorter.js"></script>
802
+ <script src="../../../../block-navigation.js"></script>
815
803
  </body>
816
804
  </html>
817
805
 
@@ -3,15 +3,15 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for api/routes/view.js</title>
6
+ <title>Code coverage report for src/api/routes/view.ts</title>
7
7
  <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
8
+ <link rel="stylesheet" href="../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
11
  <meta name="viewport" content="width=device-width, initial-scale=1" />
12
12
  <style type='text/css'>
13
13
  .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
14
+ background-image: url(../../../sort-arrow-sprite.png);
15
15
  }
16
16
  </style>
17
17
  </head>
@@ -19,7 +19,7 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">api/routes</a> view.js</h1>
22
+ <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/routes</a> view.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
@@ -94,20 +94,23 @@
94
94
  <a name='L29'></a><a href='#L29'>29</a>
95
95
  <a name='L30'></a><a href='#L30'>30</a>
96
96
  <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
98
- <span class="cline-any cline-yes">44x</span>
99
- <span class="cline-any cline-yes">44x</span>
100
- <span class="cline-any cline-yes">44x</span>
101
- <span class="cline-any cline-yes">44x</span>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">46x</span>
101
+ <span class="cline-any cline-yes">46x</span>
102
+ <span class="cline-any cline-yes">46x</span>
103
+ <span class="cline-any cline-yes">46x</span>
104
+ <span class="cline-any cline-yes">46x</span>
105
+ <span class="cline-any cline-yes">46x</span>
102
106
  <span class="cline-any cline-neutral">&nbsp;</span>
107
+ <span class="cline-any cline-yes">46x</span>
103
108
  <span class="cline-any cline-neutral">&nbsp;</span>
109
+ <span class="cline-any cline-yes">46x</span>
104
110
  <span class="cline-any cline-neutral">&nbsp;</span>
105
111
  <span class="cline-any cline-neutral">&nbsp;</span>
106
- <span class="cline-any cline-yes">44x</span>
107
112
  <span class="cline-any cline-neutral">&nbsp;</span>
108
- <span class="cline-any cline-yes">44x</span>
109
113
  <span class="cline-any cline-neutral">&nbsp;</span>
110
- <span class="cline-any cline-yes">44x</span>
111
114
  <span class="cline-any cline-neutral">&nbsp;</span>
112
115
  <span class="cline-any cline-neutral">&nbsp;</span>
113
116
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -124,38 +127,44 @@
124
127
  <span class="cline-any cline-neutral">&nbsp;</span>
125
128
  <span class="cline-any cline-neutral">&nbsp;</span>
126
129
  <span class="cline-any cline-neutral">&nbsp;</span>
127
- <span class="cline-any cline-yes">44x</span>
128
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
129
- const viewController = require("../controllers/view")
130
- const rowController = require("../controllers/row")
131
- const authorized = require("../../middleware/authorized")
132
- const { paramResource } = require("../../middleware/resourceId")
133
- const {
134
- BUILDER,
135
- PermissionTypes,
136
- PermissionLevels,
137
- } = require("@budibase/backend-core/permissions")
130
+ <span class="cline-any cline-neutral">&nbsp;</span>
131
+ <span class="cline-any cline-neutral">&nbsp;</span>
132
+ <span class="cline-any cline-neutral">&nbsp;</span>
133
+ <span class="cline-any cline-yes">46x</span>
134
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Router from "@koa/router"
135
+ import * as viewController from "../controllers/view"
136
+ import * as rowController from "../controllers/row"
137
+ import authorized from "../../middleware/authorized"
138
+ import { paramResource } from "../../middleware/resourceId"
139
+ import { permissions } from "@budibase/backend-core"
138
140
  &nbsp;
139
- const router = new Router()
141
+ const router: Router = new Router()
140
142
  &nbsp;
141
143
  router
142
- .get("/api/views/export", authorized(BUILDER), viewController.exportView)
144
+ .get(
145
+ "/api/views/export",
146
+ authorized(permissions.BUILDER),
147
+ viewController.exportView
148
+ )
143
149
  .get(
144
150
  "/api/views/:viewName",
145
151
  paramResource("viewName"),
146
- authorized(PermissionTypes.VIEW, PermissionLevels.READ),
152
+ authorized(
153
+ permissions.PermissionType.VIEW,
154
+ permissions.PermissionLevel.READ
155
+ ),
147
156
  rowController.fetchView
148
157
  )
149
- .get("/api/views", authorized(BUILDER), viewController.fetch)
158
+ .get("/api/views", authorized(permissions.BUILDER), viewController.fetch)
150
159
  .delete(
151
160
  "/api/views/:viewName",
152
161
  paramResource("viewName"),
153
- authorized(BUILDER),
162
+ authorized(permissions.BUILDER),
154
163
  viewController.destroy
155
164
  )
156
- .post("/api/views", authorized(BUILDER), viewController.save)
165
+ .post("/api/views", authorized(permissions.BUILDER), viewController.save)
157
166
  &nbsp;
158
- module.exports = router
167
+ export = router
159
168
  &nbsp;</pre></td></tr></table></pre>
160
169
 
161
170
  <div class='push'></div><!-- for sticky footer -->
@@ -163,16 +172,16 @@ module.exports = router
163
172
  <div class='footer quiet pad2 space-top1 center small'>
164
173
  Code coverage generated by
165
174
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
166
- at Tue Dec 06 2022 14:43:08 GMT+0000 (Coordinated Universal Time)
175
+ at Fri Dec 09 2022 14:41:04 GMT+0000 (Coordinated Universal Time)
167
176
  </div>
168
- <script src="../../prettify.js"></script>
177
+ <script src="../../../prettify.js"></script>
169
178
  <script>
170
179
  window.onload = function () {
171
180
  prettyPrint();
172
181
  };
173
182
  </script>
174
- <script src="../../sorter.js"></script>
175
- <script src="../../block-navigation.js"></script>
183
+ <script src="../../../sorter.js"></script>
184
+ <script src="../../../block-navigation.js"></script>
176
185
  </body>
177
186
  </html>
178
187