@budibase/server 2.1.22-alpha.6 → 2.1.22-alpha.8

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 (419) hide show
  1. package/__mocks__/node-fetch.ts +5 -1
  2. package/builder/assets/{index.5ec5f06c.js → index.dba40c82.js} +2 -2
  3. package/builder/index.html +1 -1
  4. package/coverage/clover.xml +1182 -1209
  5. package/coverage/coverage-final.json +35 -35
  6. package/coverage/lcov-report/index.html +94 -94
  7. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  8. package/coverage/lcov-report/src/api/controllers/apikeys.js.html +1 -1
  9. package/coverage/lcov-report/src/api/controllers/application.ts.html +45 -60
  10. package/coverage/lcov-report/src/api/controllers/auth.ts.html +7 -4
  11. package/coverage/lcov-report/src/api/controllers/automation.js.html +1 -1
  12. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/cloud.js.html +1 -1
  14. package/coverage/lcov-report/src/api/controllers/component.ts.html +1 -1
  15. package/coverage/lcov-report/src/api/controllers/datasource.js.html +1 -1
  16. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.js.html +1 -1
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.html +10 -10
  18. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +19 -55
  19. package/coverage/lcov-report/src/api/controllers/{dev.js.html → dev.ts.html} +46 -64
  20. package/coverage/lcov-report/src/api/controllers/index.html +25 -25
  21. package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
  22. package/coverage/lcov-report/src/api/controllers/layout.js.html +1 -1
  23. package/coverage/lcov-report/src/api/controllers/metadata.js.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/permission.js.html +1 -1
  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 +1 -1
  29. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +1 -1
  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 +37 -19
  35. package/coverage/lcov-report/src/api/controllers/public/index.html +16 -16
  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 +1 -1
  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 +1 -1
  49. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +1 -1
  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 +10 -10
  58. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +17 -26
  59. package/coverage/lcov-report/src/api/controllers/query/validation.js.html +1 -1
  60. package/coverage/lcov-report/src/api/controllers/role.js.html +1 -1
  61. package/coverage/lcov-report/src/api/controllers/routing.js.html +1 -1
  62. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +1 -1
  63. package/coverage/lcov-report/src/api/controllers/row/external.js.html +1 -1
  64. package/coverage/lcov-report/src/api/controllers/row/index.html +1 -1
  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 +3 -3
  67. package/coverage/lcov-report/src/api/controllers/row/internalSearch.js.html +1 -1
  68. package/coverage/lcov-report/src/api/controllers/row/staticFormula.js.html +1 -1
  69. package/coverage/lcov-report/src/api/controllers/row/utils.js.html +1 -1
  70. package/coverage/lcov-report/src/api/controllers/screen.ts.html +1 -1
  71. package/coverage/lcov-report/src/api/controllers/script.js.html +1 -1
  72. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  73. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +1 -1
  74. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.js.html +1 -1
  75. package/coverage/lcov-report/src/api/controllers/table/external.js.html +1 -1
  76. package/coverage/lcov-report/src/api/controllers/table/index.html +1 -1
  77. package/coverage/lcov-report/src/api/controllers/table/index.js.html +1 -1
  78. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +1 -1
  79. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +1 -1
  80. package/coverage/lcov-report/src/api/controllers/templates.js.html +1 -1
  81. package/coverage/lcov-report/src/api/controllers/user.js.html +1 -1
  82. package/coverage/lcov-report/src/api/controllers/view/exporters.js.html +1 -1
  83. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  84. package/coverage/lcov-report/src/api/controllers/view/index.js.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/utils.js.html +1 -1
  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 +1 -1
  89. package/coverage/lcov-report/src/api/index.js.html +1 -1
  90. package/coverage/lcov-report/src/api/routes/analytics.js.html +1 -1
  91. package/coverage/lcov-report/src/api/routes/apikeys.js.html +1 -1
  92. package/coverage/lcov-report/src/api/routes/application.ts.html +1 -1
  93. package/coverage/lcov-report/src/api/routes/auth.ts.html +1 -1
  94. package/coverage/lcov-report/src/api/routes/automation.js.html +5 -5
  95. package/coverage/lcov-report/src/api/routes/backup.ts.html +1 -1
  96. package/coverage/lcov-report/src/api/routes/cloud.js.html +1 -1
  97. package/coverage/lcov-report/src/api/routes/component.js.html +1 -1
  98. package/coverage/lcov-report/src/api/routes/datasource.js.html +6 -6
  99. package/coverage/lcov-report/src/api/routes/deploy.js.html +1 -1
  100. package/coverage/lcov-report/src/api/routes/dev.js.html +1 -1
  101. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  102. package/coverage/lcov-report/src/api/routes/index.ts.html +1 -1
  103. package/coverage/lcov-report/src/api/routes/integration.js.html +1 -1
  104. package/coverage/lcov-report/src/api/routes/layout.js.html +1 -1
  105. package/coverage/lcov-report/src/api/routes/metadata.js.html +1 -1
  106. package/coverage/lcov-report/src/api/routes/migrations.js.html +1 -1
  107. package/coverage/lcov-report/src/api/routes/permission.js.html +1 -1
  108. package/coverage/lcov-report/src/api/routes/plugin.ts.html +1 -1
  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 +11 -11
  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 +6 -6
  121. package/coverage/lcov-report/src/api/routes/role.js.html +1 -1
  122. package/coverage/lcov-report/src/api/routes/routing.js.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/row.ts.html +13 -13
  124. package/coverage/lcov-report/src/api/routes/screen.js.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/script.js.html +1 -1
  126. package/coverage/lcov-report/src/api/routes/static.ts.html +6 -6
  127. package/coverage/lcov-report/src/api/routes/table.js.html +4 -4
  128. package/coverage/lcov-report/src/api/routes/templates.js.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  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 +11 -11
  133. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  134. package/coverage/lcov-report/src/api/routes/utils/validators.js.html +6 -6
  135. package/coverage/lcov-report/src/api/routes/view.js.html +4 -4
  136. package/coverage/lcov-report/src/api/routes/webhook.ts.html +1 -1
  137. package/coverage/lcov-report/src/app.ts.html +1 -1
  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 +15 -15
  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 +17 -17
  165. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +33 -15
  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 +1 -1
  175. package/coverage/lcov-report/src/automations/utils.ts.html +20 -29
  176. package/coverage/lcov-report/src/constants/index.html +1 -1
  177. package/coverage/lcov-report/src/constants/index.js.html +1 -1
  178. package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
  179. package/coverage/lcov-report/src/constants/screens.js.html +1 -1
  180. package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
  181. package/coverage/lcov-report/src/db/inMemoryView.js.html +3 -3
  182. package/coverage/lcov-report/src/db/index.html +16 -16
  183. package/coverage/lcov-report/src/db/index.js.html +9 -9
  184. package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +1 -1
  185. package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
  186. package/coverage/lcov-report/src/db/linkedRows/index.js.html +1 -1
  187. package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +1 -1
  188. package/coverage/lcov-report/src/db/newid.js.html +1 -1
  189. package/coverage/lcov-report/src/db/{utils.js.html → utils.ts.html} +97 -145
  190. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  191. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  192. package/coverage/lcov-report/src/definitions/index.html +1 -1
  193. package/coverage/lcov-report/src/environment.js.html +4 -4
  194. package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
  195. package/coverage/lcov-report/src/events/index.html +1 -1
  196. package/coverage/lcov-report/src/events/index.js.html +1 -1
  197. package/coverage/lcov-report/src/events/utils.js.html +1 -1
  198. package/coverage/lcov-report/src/index.html +1 -1
  199. package/coverage/lcov-report/src/index.ts.html +1 -1
  200. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  201. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  202. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  203. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  204. package/coverage/lcov-report/src/integrations/base/sql.ts.html +1 -1
  205. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +1 -1
  206. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  207. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  208. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  209. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  211. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +10 -19
  212. package/coverage/lcov-report/src/integrations/index.html +11 -11
  213. package/coverage/lcov-report/src/integrations/index.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  219. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  220. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  221. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  223. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  224. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  226. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  227. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  228. package/coverage/lcov-report/src/middleware/{appInfo.js.html → appInfo.ts.html} +24 -21
  229. package/coverage/lcov-report/src/middleware/authorized.ts.html +7 -7
  230. package/coverage/lcov-report/src/middleware/{builder.js.html → builder.ts.html} +36 -30
  231. package/coverage/lcov-report/src/middleware/{currentapp.js.html → currentapp.ts.html} +70 -61
  232. package/coverage/lcov-report/src/middleware/index.html +55 -55
  233. package/coverage/lcov-report/src/middleware/{joi-validator.js.html → joi-validator.ts.html} +18 -15
  234. package/coverage/lcov-report/src/middleware/{publicApi.js.html → publicApi.ts.html} +17 -17
  235. package/coverage/lcov-report/src/middleware/{resourceId.js.html → resourceId.ts.html} +33 -18
  236. package/coverage/lcov-report/src/middleware/{selfhost.js.html → selfhost.ts.html} +18 -12
  237. package/coverage/lcov-report/src/middleware/{utils.js.html → utils.ts.html} +12 -6
  238. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +1 -1
  239. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  240. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  241. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +4 -4
  242. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  243. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  244. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  245. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  246. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +6 -15
  247. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +1 -1
  264. package/coverage/lcov-report/src/migrations/index.html +1 -1
  265. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  266. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  267. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  268. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  269. package/coverage/lcov-report/src/module.d.ts.html +1 -1
  270. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  271. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  272. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  273. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  274. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +1 -1
  275. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +7 -16
  276. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  277. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  278. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +12 -39
  279. package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +8 -11
  281. package/coverage/lcov-report/src/sdk/index.html +1 -1
  282. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  283. package/coverage/lcov-report/src/startup.ts.html +1 -1
  284. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +24 -24
  285. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
  286. package/coverage/lcov-report/src/tests/utilities/index.html +19 -19
  287. package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
  288. package/coverage/lcov-report/src/tests/utilities/structures.js.html +3 -3
  289. package/coverage/lcov-report/src/threads/automation.ts.html +2 -2
  290. package/coverage/lcov-report/src/threads/index.html +1 -1
  291. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  292. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  293. package/coverage/lcov-report/src/threads/utils.ts.html +1 -1
  294. package/coverage/lcov-report/src/utilities/budibaseDir.js.html +1 -1
  295. package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
  296. package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
  297. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +1 -1
  298. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  299. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +1 -1
  300. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
  301. package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +1 -1
  302. package/coverage/lcov-report/src/utilities/{global.js.html → global.ts.html} +100 -67
  303. package/coverage/lcov-report/src/utilities/index.html +16 -16
  304. package/coverage/lcov-report/src/utilities/index.js.html +1 -1
  305. package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
  306. package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
  307. package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
  308. package/coverage/lcov-report/src/utilities/redis.js.html +1 -1
  309. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  310. package/coverage/lcov-report/src/utilities/routing/index.js.html +1 -1
  311. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  312. package/coverage/lcov-report/src/utilities/rowProcessor/index.js.html +1 -1
  313. package/coverage/lcov-report/src/utilities/rowProcessor/utils.js.html +1 -1
  314. package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
  315. package/coverage/lcov-report/src/utilities/security.js.html +13 -13
  316. package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
  317. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  318. package/coverage/lcov-report/src/utilities/usageQuota/rows.js.html +1 -1
  319. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  320. package/coverage/lcov-report/src/utilities/users.js.html +1 -1
  321. package/coverage/lcov-report/src/utilities/workerRequests.js.html +4 -4
  322. package/coverage/lcov-report/src/watch.ts.html +1 -1
  323. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  324. package/coverage/lcov.info +2052 -2049
  325. package/dist/api/controllers/application.js +35 -43
  326. package/dist/api/controllers/deploy/index.js +13 -16
  327. package/dist/api/controllers/dev.js +96 -81
  328. package/dist/api/controllers/public/applications.js +17 -9
  329. package/dist/api/controllers/query/index.js +10 -13
  330. package/dist/api/controllers/row/internal.js +2 -2
  331. package/dist/api/routes/automation.js +3 -3
  332. package/dist/api/routes/datasource.js +4 -4
  333. package/dist/api/routes/public/index.js +9 -9
  334. package/dist/api/routes/query.js +4 -4
  335. package/dist/api/routes/row.js +11 -11
  336. package/dist/api/routes/static.js +3 -3
  337. package/dist/api/routes/table.js +2 -2
  338. package/dist/api/routes/user.js +9 -9
  339. package/dist/api/routes/utils/validators.js +4 -4
  340. package/dist/api/routes/view.js +2 -2
  341. package/dist/automations/tests/utilities/index.js +21 -12
  342. package/dist/automations/utils.js +9 -8
  343. package/dist/db/inMemoryView.js +2 -2
  344. package/dist/db/utils.js +145 -118
  345. package/dist/integrations/googlesheets.js +4 -6
  346. package/dist/middleware/appInfo.js +14 -9
  347. package/dist/middleware/authorized.js +5 -5
  348. package/dist/middleware/builder.js +41 -40
  349. package/dist/middleware/currentapp.js +39 -37
  350. package/dist/middleware/joi-validator.js +17 -10
  351. package/dist/middleware/publicApi.js +5 -6
  352. package/dist/middleware/resourceId.js +16 -9
  353. package/dist/middleware/selfhost.js +5 -4
  354. package/dist/middleware/utils.js +5 -2
  355. package/dist/package.json +6 -6
  356. package/dist/sdk/app/tables/index.js +4 -4
  357. package/dist/tests/utilities/TestConfiguration.js +9 -9
  358. package/dist/tests/utilities/structures.js +2 -2
  359. package/dist/tsconfig.build.tsbuildinfo +1 -1
  360. package/dist/utilities/global.js +87 -66
  361. package/dist/utilities/security.js +10 -10
  362. package/dist/utilities/workerRequests.js +3 -3
  363. package/jest.config.ts +1 -0
  364. package/package.json +7 -7
  365. package/src/api/controllers/application.ts +34 -39
  366. package/src/api/controllers/auth.ts +3 -2
  367. package/src/api/controllers/deploy/index.ts +13 -25
  368. package/src/api/controllers/{dev.js → dev.ts} +31 -37
  369. package/src/api/controllers/public/applications.ts +15 -9
  370. package/src/api/controllers/query/index.ts +11 -14
  371. package/src/api/controllers/row/internal.js +2 -2
  372. package/src/api/routes/automation.js +4 -4
  373. package/src/api/routes/datasource.js +5 -5
  374. package/src/api/routes/public/index.ts +10 -10
  375. package/src/api/routes/public/tests/compare.spec.js +1 -1
  376. package/src/api/routes/query.js +5 -5
  377. package/src/api/routes/row.ts +12 -12
  378. package/src/api/routes/static.ts +5 -5
  379. package/src/api/routes/table.js +3 -3
  380. package/src/api/routes/tests/analytics.spec.js +1 -1
  381. package/src/api/routes/tests/query.spec.js +15 -10
  382. package/src/api/routes/tests/role.spec.js +5 -5
  383. package/src/api/routes/tests/static.spec.js +2 -2
  384. package/src/api/routes/tests/table.spec.js +38 -35
  385. package/src/api/routes/user.js +10 -10
  386. package/src/api/routes/utils/validators.js +5 -5
  387. package/src/api/routes/view.js +3 -3
  388. package/src/automations/tests/updateRow.spec.js +0 -1
  389. package/src/automations/tests/utilities/index.js +10 -4
  390. package/src/automations/utils.ts +9 -12
  391. package/src/db/inMemoryView.js +2 -2
  392. package/src/db/tests/linkController.spec.js +73 -57
  393. package/src/db/tests/linkTests.spec.js +17 -14
  394. package/src/db/{utils.js → utils.ts} +76 -92
  395. package/src/integrations/googlesheets.ts +4 -7
  396. package/src/middleware/appInfo.ts +20 -0
  397. package/src/middleware/authorized.ts +6 -6
  398. package/src/middleware/{builder.js → builder.ts} +17 -15
  399. package/src/middleware/{currentapp.js → currentapp.ts} +42 -39
  400. package/src/middleware/{joi-validator.js → joi-validator.ts} +9 -8
  401. package/src/middleware/publicApi.ts +21 -0
  402. package/src/middleware/{resourceId.js → resourceId.ts} +16 -11
  403. package/src/middleware/{selfhost.js → selfhost.ts} +4 -2
  404. package/src/middleware/tests/authorized.spec.js +5 -5
  405. package/src/middleware/tests/currentapp.spec.js +118 -63
  406. package/src/middleware/{utils.js → utils.ts} +3 -1
  407. package/src/migrations/functions/backfill/app/tables.ts +2 -5
  408. package/src/sdk/app/backups/imports.ts +4 -7
  409. package/src/sdk/app/backups/statistics.ts +9 -18
  410. package/src/sdk/app/tables/index.ts +6 -7
  411. package/src/tests/utilities/TestConfiguration.js +9 -9
  412. package/src/tests/utilities/structures.js +2 -2
  413. package/src/threads/automation.ts +1 -1
  414. package/src/utilities/global.ts +138 -0
  415. package/src/utilities/security.js +12 -12
  416. package/src/utilities/workerRequests.js +3 -3
  417. package/src/middleware/appInfo.js +0 -19
  418. package/src/middleware/publicApi.js +0 -21
  419. package/src/utilities/global.js +0 -127
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">78.75% </span>
26
+ <span class="strong">78.05% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>189/240</span>
28
+ <span class='fraction'>185/237</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">75% </span>
33
+ <span class="strong">72.18% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>123/164</span>
35
+ <span class='fraction'>109/151</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">85.29% </span>
40
+ <span class="strong">87.5% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>29/34</span>
42
+ <span class='fraction'>35/40</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">78.66% </span>
47
+ <span class="strong">77.48% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>188/239</span>
49
+ <span class='fraction'>179/231</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,18 +79,18 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file high" data-value="appInfo.js"><a href="appInfo.js.html">appInfo.js</a></td>
83
- <td data-value="80" class="pic high">
84
- <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
82
+ <td class="file high" data-value="appInfo.ts"><a href="appInfo.ts.html">appInfo.ts</a></td>
83
+ <td data-value="83.33" class="pic high">
84
+ <div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
85
85
  </td>
86
- <td data-value="80" class="pct high">80%</td>
87
- <td data-value="10" class="abs high">8/10</td>
86
+ <td data-value="83.33" class="pct high">83.33%</td>
87
+ <td data-value="12" class="abs high">10/12</td>
88
88
  <td data-value="54.54" class="pct medium">54.54%</td>
89
89
  <td data-value="11" class="abs medium">6/11</td>
90
90
  <td data-value="100" class="pct high">100%</td>
91
- <td data-value="2" class="abs high">2/2</td>
92
- <td data-value="80" class="pct high">80%</td>
93
- <td data-value="10" class="abs high">8/10</td>
91
+ <td data-value="3" class="abs high">3/3</td>
92
+ <td data-value="83.33" class="pct high">83.33%</td>
93
+ <td data-value="12" class="abs high">10/12</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -109,44 +109,44 @@
109
109
  </tr>
110
110
 
111
111
  <tr>
112
- <td class="file high" data-value="builder.js"><a href="builder.js.html">builder.js</a></td>
113
- <td data-value="88.09" class="pic high">
114
- <div class="chart"><div class="cover-fill" style="width: 88%"></div><div class="cover-empty" style="width: 12%"></div></div>
112
+ <td class="file high" data-value="builder.ts"><a href="builder.ts.html">builder.ts</a></td>
113
+ <td data-value="87.5" class="pic high">
114
+ <div class="chart"><div class="cover-fill" style="width: 87%"></div><div class="cover-empty" style="width: 13%"></div></div>
115
115
  </td>
116
- <td data-value="88.09" class="pct high">88.09%</td>
117
- <td data-value="42" class="abs high">37/42</td>
118
- <td data-value="78.57" class="pct medium">78.57%</td>
119
- <td data-value="28" class="abs medium">22/28</td>
116
+ <td data-value="87.5" class="pct high">87.5%</td>
117
+ <td data-value="40" class="abs high">35/40</td>
118
+ <td data-value="63.63" class="pct medium">63.63%</td>
119
+ <td data-value="33" class="abs medium">21/33</td>
120
120
  <td data-value="100" class="pct high">100%</td>
121
- <td data-value="4" class="abs high">4/4</td>
122
- <td data-value="88.09" class="pct high">88.09%</td>
123
- <td data-value="42" class="abs high">37/42</td>
121
+ <td data-value="5" class="abs high">5/5</td>
122
+ <td data-value="87.17" class="pct high">87.17%</td>
123
+ <td data-value="39" class="abs high">34/39</td>
124
124
  </tr>
125
125
 
126
126
  <tr>
127
- <td class="file medium" data-value="currentapp.js"><a href="currentapp.js.html">currentapp.js</a></td>
128
- <td data-value="77.27" class="pic medium">
129
- <div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
127
+ <td class="file medium" data-value="currentapp.ts"><a href="currentapp.ts.html">currentapp.ts</a></td>
128
+ <td data-value="74.19" class="pic medium">
129
+ <div class="chart"><div class="cover-fill" style="width: 74%"></div><div class="cover-empty" style="width: 26%"></div></div>
130
130
  </td>
131
- <td data-value="77.27" class="pct medium">77.27%</td>
132
- <td data-value="66" class="abs medium">51/66</td>
133
- <td data-value="80.7" class="pct high">80.7%</td>
134
- <td data-value="57" class="abs high">46/57</td>
131
+ <td data-value="74.19" class="pct medium">74.19%</td>
132
+ <td data-value="62" class="abs medium">46/62</td>
133
+ <td data-value="80.85" class="pct high">80.85%</td>
134
+ <td data-value="47" class="abs high">38/47</td>
135
135
  <td data-value="100" class="pct high">100%</td>
136
- <td data-value="2" class="abs high">2/2</td>
137
- <td data-value="77.27" class="pct medium">77.27%</td>
138
- <td data-value="66" class="abs medium">51/66</td>
136
+ <td data-value="4" class="abs high">4/4</td>
137
+ <td data-value="73.33" class="pct medium">73.33%</td>
138
+ <td data-value="60" class="abs medium">44/60</td>
139
139
  </tr>
140
140
 
141
141
  <tr>
142
- <td class="file low" data-value="joi-validator.js"><a href="joi-validator.js.html">joi-validator.js</a></td>
142
+ <td class="file low" data-value="joi-validator.ts"><a href="joi-validator.ts.html">joi-validator.ts</a></td>
143
143
  <td data-value="0" class="pic low">
144
144
  <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
145
145
  </td>
146
146
  <td data-value="0" class="pct low">0%</td>
147
147
  <td data-value="20" class="abs low">0/20</td>
148
148
  <td data-value="0" class="pct low">0%</td>
149
- <td data-value="10" class="abs low">0/10</td>
149
+ <td data-value="8" class="abs low">0/8</td>
150
150
  <td data-value="0" class="pct low">0%</td>
151
151
  <td data-value="4" class="abs low">0/4</td>
152
152
  <td data-value="0" class="pct low">0%</td>
@@ -154,29 +154,29 @@
154
154
  </tr>
155
155
 
156
156
  <tr>
157
- <td class="file high" data-value="publicApi.js"><a href="publicApi.js.html">publicApi.js</a></td>
157
+ <td class="file high" data-value="publicApi.ts"><a href="publicApi.ts.html">publicApi.ts</a></td>
158
158
  <td data-value="80" class="pic high">
159
159
  <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
160
160
  </td>
161
161
  <td data-value="80" class="pct high">80%</td>
162
162
  <td data-value="10" class="abs high">8/10</td>
163
- <td data-value="57.14" class="pct medium">57.14%</td>
164
- <td data-value="7" class="abs medium">4/7</td>
163
+ <td data-value="40" class="pct low">40%</td>
164
+ <td data-value="5" class="abs low">2/5</td>
165
165
  <td data-value="100" class="pct high">100%</td>
166
- <td data-value="2" class="abs high">2/2</td>
167
- <td data-value="80" class="pct high">80%</td>
168
- <td data-value="10" class="abs high">8/10</td>
166
+ <td data-value="3" class="abs high">3/3</td>
167
+ <td data-value="77.77" class="pct medium">77.77%</td>
168
+ <td data-value="9" class="abs medium">7/9</td>
169
169
  </tr>
170
170
 
171
171
  <tr>
172
- <td class="file high" data-value="resourceId.js"><a href="resourceId.js.html">resourceId.js</a></td>
172
+ <td class="file high" data-value="resourceId.ts"><a href="resourceId.ts.html">resourceId.ts</a></td>
173
173
  <td data-value="100" class="pic high">
174
174
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
175
175
  </td>
176
176
  <td data-value="100" class="pct high">100%</td>
177
177
  <td data-value="29" class="abs high">29/29</td>
178
178
  <td data-value="100" class="pct high">100%</td>
179
- <td data-value="12" class="abs high">12/12</td>
179
+ <td data-value="9" class="abs high">9/9</td>
180
180
  <td data-value="100" class="pct high">100%</td>
181
181
  <td data-value="9" class="abs high">9/9</td>
182
182
  <td data-value="100" class="pct high">100%</td>
@@ -184,22 +184,22 @@
184
184
  </tr>
185
185
 
186
186
  <tr>
187
- <td class="file high" data-value="selfhost.js"><a href="selfhost.js.html">selfhost.js</a></td>
188
- <td data-value="83.33" class="pic high">
189
- <div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
187
+ <td class="file high" data-value="selfhost.ts"><a href="selfhost.ts.html">selfhost.ts</a></td>
188
+ <td data-value="85.71" class="pic high">
189
+ <div class="chart"><div class="cover-fill" style="width: 85%"></div><div class="cover-empty" style="width: 15%"></div></div>
190
190
  </td>
191
- <td data-value="83.33" class="pct high">83.33%</td>
192
- <td data-value="6" class="abs high">5/6</td>
193
- <td data-value="50" class="pct medium">50%</td>
194
- <td data-value="2" class="abs medium">1/2</td>
191
+ <td data-value="85.71" class="pct high">85.71%</td>
192
+ <td data-value="7" class="abs high">6/7</td>
195
193
  <td data-value="100" class="pct high">100%</td>
196
194
  <td data-value="1" class="abs high">1/1</td>
195
+ <td data-value="100" class="pct high">100%</td>
196
+ <td data-value="2" class="abs high">2/2</td>
197
197
  <td data-value="83.33" class="pct high">83.33%</td>
198
198
  <td data-value="6" class="abs high">5/6</td>
199
199
  </tr>
200
200
 
201
201
  <tr>
202
- <td class="file high" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
202
+ <td class="file high" data-value="utils.ts"><a href="utils.ts.html">utils.ts</a></td>
203
203
  <td data-value="100" class="pic high">
204
204
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
205
205
  </td>
@@ -221,7 +221,7 @@
221
221
  <div class='footer quiet pad2 space-top1 center small'>
222
222
  Code coverage generated by
223
223
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
224
- at Wed Nov 16 2022 13:32:43 GMT+0000 (Coordinated Universal Time)
224
+ at Fri Nov 18 2022 09:28:41 GMT+0000 (Coordinated Universal Time)
225
225
  </div>
226
226
  <script src="../../prettify.js"></script>
227
227
  <script>
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for src/middleware/joi-validator.js</title>
6
+ <title>Code coverage report for src/middleware/joi-validator.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="../../prettify.css" />
9
9
  <link rel="stylesheet" href="../../base.css" />
@@ -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">src/middleware</a> joi-validator.js</h1>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/middleware</a> joi-validator.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
@@ -32,7 +32,7 @@
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/10</span>
35
+ <span class='fraction'>0/8</span>
36
36
  </div>
37
37
 
38
38
 
@@ -102,7 +102,9 @@
102
102
  <a name='L37'></a><a href='#L37'>37</a>
103
103
  <a name='L38'></a><a href='#L38'>38</a>
104
104
  <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
107
+ <span class="cline-any cline-neutral">&nbsp;</span>
106
108
  <span class="cline-any cline-neutral">&nbsp;</span>
107
109
  <span class="cline-any cline-neutral">&nbsp;</span>
108
110
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -141,23 +143,24 @@
141
143
  <span class="cline-any cline-no">&nbsp;</span>
142
144
  <span class="cline-any cline-no">&nbsp;</span>
143
145
  <span class="cline-any cline-neutral">&nbsp;</span>
144
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Joi = <span class="cstat-no" title="statement not covered" >require("joi")</span>
146
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import Joi from "joi"</span>
147
+ import { BBContext } from "@budibase/types"
145
148
  &nbsp;
146
- function <span class="fstat-no" title="function not covered" >validate(</span>schema, property) {
149
+ function <span class="fstat-no" title="function not covered" >validate(</span>schema: Joi.Schema, property: string) {
147
150
  // Return a Koa middleware function
148
- <span class="cstat-no" title="statement not covered" > return <span class="fstat-no" title="function not covered" >(c</span>tx, next) =&gt; {</span>
149
- <span class="cstat-no" title="statement not covered" > if (!schema) {</span>
151
+ <span class="cstat-no" title="statement not covered" > return <span class="fstat-no" title="function not covered" >(c</span>tx: BBContext, next: any) =&gt; {</span>
152
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!schema) {</span>
150
153
  <span class="cstat-no" title="statement not covered" > return next()</span>
151
154
  }
152
155
  let params = <span class="cstat-no" title="statement not covered" >null</span>
153
156
  <span class="cstat-no" title="statement not covered" > if (ctx[property] != null) {</span>
154
157
  <span class="cstat-no" title="statement not covered" > params = ctx[property]</span>
155
- } else <span class="cstat-no" title="statement not covered" >if (ctx.request[property] != null) {</span>
156
- <span class="cstat-no" title="statement not covered" > params = ctx.request[property]</span>
158
+ } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.request.get(property) != null) {</span>
159
+ <span class="cstat-no" title="statement not covered" > params = ctx.request.get(property)</span>
157
160
  }
158
161
  &nbsp;
159
162
  // not all schemas have the append property e.g. array schemas
160
- <span class="cstat-no" title="statement not covered" > if (schema.append) {</span>
163
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if ("append" in schema &amp;&amp; schema.append) {</span>
161
164
  <span class="cstat-no" title="statement not covered" > schema = schema.append({</span>
162
165
  createdAt: Joi.any().optional(),
163
166
  updatedAt: Joi.any().optional(),
@@ -165,7 +168,7 @@ function <span class="fstat-no" title="function not covered" >validate(</span>sc
165
168
  }
166
169
  &nbsp;
167
170
  const { error } = <span class="cstat-no" title="statement not covered" >schema.validate(params)</span>
168
- <span class="cstat-no" title="statement not covered" > if (error) {</span>
171
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (error) {</span>
169
172
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, `Invalid ${property} - ${error.message}`)</span>
170
173
  <span class="cstat-no" title="statement not covered" > return</span>
171
174
  }
@@ -173,11 +176,11 @@ function <span class="fstat-no" title="function not covered" >validate(</span>sc
173
176
  }
174
177
  }
175
178
  &nbsp;
176
- <span class="cstat-no" title="statement not covered" >module.exports.body = <span class="fstat-no" title="function not covered" >sc</span>hema =&gt; {</span>
179
+ <span class="cstat-no" title="statement not covered" >export function <span class="fstat-no" title="function not covered" >b</span>ody(</span>schema: Joi.Schema) {
177
180
  <span class="cstat-no" title="statement not covered" > return validate(schema, "body")</span>
178
181
  }
179
182
  &nbsp;
180
- <span class="cstat-no" title="statement not covered" >module.exports.params = <span class="fstat-no" title="function not covered" >sc</span>hema =&gt; {</span>
183
+ <span class="cstat-no" title="statement not covered" >export function <span class="fstat-no" title="function not covered" >p</span>arams(</span>schema: Joi.Schema) {
181
184
  <span class="cstat-no" title="statement not covered" > return validate(schema, "params")</span>
182
185
  }
183
186
  &nbsp;</pre></td></tr></table></pre>
@@ -187,7 +190,7 @@ function <span class="fstat-no" title="function not covered" >validate(</span>sc
187
190
  <div class='footer quiet pad2 space-top1 center small'>
188
191
  Code coverage generated by
189
192
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
190
- at Wed Nov 16 2022 13:32:43 GMT+0000 (Coordinated Universal Time)
193
+ at Fri Nov 18 2022 09:28:41 GMT+0000 (Coordinated Universal Time)
191
194
  </div>
192
195
  <script src="../../prettify.js"></script>
193
196
  <script>
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for src/middleware/publicApi.js</title>
6
+ <title>Code coverage report for src/middleware/publicApi.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="../../prettify.css" />
9
9
  <link rel="stylesheet" href="../../base.css" />
@@ -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">src/middleware</a> publicApi.js</h1>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/middleware</a> publicApi.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
@@ -30,23 +30,23 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">57.14% </span>
33
+ <span class="strong">40% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>4/7</span>
35
+ <span class='fraction'>2/5</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>2/2</span>
42
+ <span class='fraction'>3/3</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">80% </span>
47
+ <span class="strong">77.77% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>8/10</span>
49
+ <span class='fraction'>7/9</span>
50
50
  </div>
51
51
 
52
52
 
@@ -85,7 +85,7 @@
85
85
  <a name='L20'></a><a href='#L20'>20</a>
86
86
  <a name='L21'></a><a href='#L21'>21</a>
87
87
  <a name='L22'></a><a href='#L22'>22</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
88
- <span class="cline-any cline-yes">44x</span>
88
+ <span class="cline-any cline-neutral">&nbsp;</span>
89
89
  <span class="cline-any cline-neutral">&nbsp;</span>
90
90
  <span class="cline-any cline-yes">44x</span>
91
91
  <span class="cline-any cline-yes">220x</span>
@@ -105,22 +105,22 @@
105
105
  <span class="cline-any cline-yes">21x</span>
106
106
  <span class="cline-any cline-neutral">&nbsp;</span>
107
107
  <span class="cline-any cline-neutral">&nbsp;</span>
108
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const { Headers } = require("@budibase/backend-core/constants")
109
- const { getAppIdFromCtx } = require("@budibase/backend-core/utils")
108
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { constants, utils } from "@budibase/backend-core"
109
+ import { BBContext } from "@budibase/types"
110
110
  &nbsp;
111
- module.exports = function ({ requiresAppId } = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
112
- return async (ctx, next) =&gt; {
113
- const appId = await getAppIdFromCtx(ctx)
111
+ export = function ({ requiresAppId }: { requiresAppId?: boolean } = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
112
+ return async (ctx: BBContext, next: any) =&gt; {
113
+ const appId = await utils.getAppIdFromCtx(ctx)
114
114
  <span class="missing-if-branch" title="if path not taken" >I</span>if (requiresAppId &amp;&amp; !appId) {
115
115
  <span class="cstat-no" title="statement not covered" > ctx.throw(</span>
116
116
  400,
117
- `Invalid app ID provided, please check the ${Headers.APP_ID} header.`
117
+ `Invalid app ID provided, please check the ${constants.Header.APP_ID} header.`
118
118
  )
119
119
  }
120
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!ctx.headers[Headers.API_KEY]) {
120
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!ctx.headers[constants.Header.API_KEY]) {
121
121
  <span class="cstat-no" title="statement not covered" > ctx.throw(</span>
122
122
  400,
123
- `Invalid API key provided, please check the ${Headers.API_KEY} header.`
123
+ `Invalid API key provided, please check the ${constants.Header.API_KEY} header.`
124
124
  )
125
125
  }
126
126
  return next()
@@ -133,7 +133,7 @@ module.exports = function ({ requiresAppId } = <span class="branch-0 cbranch-no"
133
133
  <div class='footer quiet pad2 space-top1 center small'>
134
134
  Code coverage generated by
135
135
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
136
- at Wed Nov 16 2022 13:32:43 GMT+0000 (Coordinated Universal Time)
136
+ at Fri Nov 18 2022 09:28:41 GMT+0000 (Coordinated Universal Time)
137
137
  </div>
138
138
  <script src="../../prettify.js"></script>
139
139
  <script>
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for src/middleware/resourceId.js</title>
6
+ <title>Code coverage report for src/middleware/resourceId.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="../../prettify.css" />
9
9
  <link rel="stylesheet" href="../../base.css" />
@@ -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">src/middleware</a> resourceId.js</h1>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/middleware</a> resourceId.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
@@ -32,7 +32,7 @@
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>12/12</span>
35
+ <span class='fraction'>9/9</span>
36
36
  </div>
37
37
 
38
38
 
@@ -124,7 +124,18 @@
124
124
  <a name='L59'></a><a href='#L59'>59</a>
125
125
  <a name='L60'></a><a href='#L60'>60</a>
126
126
  <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
133
+ <span class="cline-any cline-neutral">&nbsp;</span>
134
+ <span class="cline-any cline-yes">45x</span>
135
+ <span class="cline-any cline-neutral">&nbsp;</span>
136
+ <span class="cline-any cline-neutral">&nbsp;</span>
137
+ <span class="cline-any cline-neutral">&nbsp;</span>
138
+ <span class="cline-any cline-neutral">&nbsp;</span>
128
139
  <span class="cline-any cline-neutral">&nbsp;</span>
129
140
  <span class="cline-any cline-yes">1502x</span>
130
141
  <span class="cline-any cline-yes">1502x</span>
@@ -147,6 +158,7 @@
147
158
  <span class="cline-any cline-yes">1502x</span>
148
159
  <span class="cline-any cline-yes">1502x</span>
149
160
  <span class="cline-any cline-yes">1502x</span>
161
+ <span class="cline-any cline-neutral">&nbsp;</span>
150
162
  <span class="cline-any cline-yes">102x</span>
151
163
  <span class="cline-any cline-yes">102x</span>
152
164
  <span class="cline-any cline-yes">1x</span>
@@ -163,8 +175,6 @@
163
175
  <span class="cline-any cline-neutral">&nbsp;</span>
164
176
  <span class="cline-any cline-neutral">&nbsp;</span>
165
177
  <span class="cline-any cline-yes">45x</span>
166
- <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-yes">45x</span>
168
178
  <span class="cline-any cline-yes">1190x</span>
169
179
  <span class="cline-any cline-neutral">&nbsp;</span>
170
180
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -185,20 +195,26 @@
185
195
  <span class="cline-any cline-neutral">&nbsp;</span>
186
196
  <span class="cline-any cline-neutral">&nbsp;</span>
187
197
  <span class="cline-any cline-neutral">&nbsp;</span>
188
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">class ResourceIdGetter {
189
- constructor(ctxProperty) {
198
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { BBContext } from "@budibase/types"
199
+ &nbsp;
200
+ export class ResourceIdGetter {
201
+ parameter: string
202
+ main: string | null
203
+ sub: string | null
204
+ &nbsp;
205
+ constructor(ctxProperty: string) {
190
206
  this.parameter = ctxProperty
191
207
  this.main = null
192
208
  this.sub = null
193
209
  return this
194
210
  }
195
211
  &nbsp;
196
- mainResource(field) {
212
+ mainResource(field: string) {
197
213
  this.main = field
198
214
  return this
199
215
  }
200
216
  &nbsp;
201
- subResource(field) {
217
+ subResource(field: string) {
202
218
  this.sub = field
203
219
  return this
204
220
  }
@@ -207,7 +223,8 @@
207
223
  const parameter = this.parameter,
208
224
  main = this.main,
209
225
  sub = this.sub
210
- return (ctx, next) =&gt; {
226
+ return (ctx: BBContext, next: any) =&gt; {
227
+ // @ts-ignore
211
228
  const request = ctx.request[parameter] || ctx[parameter]
212
229
  if (request == null) {
213
230
  return next()
@@ -223,24 +240,22 @@
223
240
  }
224
241
  }
225
242
  &nbsp;
226
- module.exports.ResourceIdGetter = ResourceIdGetter
227
- &nbsp;
228
- module.exports.paramResource = main =&gt; {
243
+ export function paramResource(main: string) {
229
244
  return new ResourceIdGetter("params").mainResource(main).build()
230
245
  }
231
246
  &nbsp;
232
- module.exports.paramSubResource = (main, sub) =&gt; {
247
+ export function paramSubResource(main: string, sub: string) {
233
248
  return new ResourceIdGetter("params")
234
249
  .mainResource(main)
235
250
  .subResource(sub)
236
251
  .build()
237
252
  }
238
253
  &nbsp;
239
- module.exports.bodyResource = main =&gt; {
254
+ export function bodyResource(main: string) {
240
255
  return new ResourceIdGetter("body").mainResource(main).build()
241
256
  }
242
257
  &nbsp;
243
- module.exports.bodySubResource = (main, sub) =&gt; {
258
+ export function bodySubResource(main: string, sub: string) {
244
259
  return new ResourceIdGetter("body")
245
260
  .mainResource(main)
246
261
  .subResource(sub)
@@ -253,7 +268,7 @@ module.exports.bodySubResource = (main, sub) =&gt; {
253
268
  <div class='footer quiet pad2 space-top1 center small'>
254
269
  Code coverage generated by
255
270
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
256
- at Wed Nov 16 2022 13:32:43 GMT+0000 (Coordinated Universal Time)
271
+ at Fri Nov 18 2022 09:28:41 GMT+0000 (Coordinated Universal Time)
257
272
  </div>
258
273
  <script src="../../prettify.js"></script>
259
274
  <script>