@budibase/server 2.1.45 → 2.1.46-alpha.0

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.538092be.css +6 -0
  4. package/builder/assets/index.f3d43c3f.js +1020 -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
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">72.11% </span>
26
+ <span class="strong">68.9% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>2951/4092</span>
28
+ <span class='fraction'>7533/10933</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">55.01% </span>
33
+ <span class="strong">49.8% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>965/1754</span>
35
+ <span class='fraction'>2120/4257</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">68.66% </span>
40
+ <span class="strong">68.46% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>412/600</span>
42
+ <span class='fraction'>1216/1776</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">72.18% </span>
47
+ <span class="strong">68.65% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>2904/4023</span>
49
+ <span class='fraction'>7258/10571</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,232 +79,547 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file high" data-value="api"><a href="api/index.html">api</a></td>
82
+ <td class="file medium" data-value="src"><a href="src/index.html">src</a></td>
83
+ <td data-value="57.14" class="pic medium">
84
+ <div class="chart"><div class="cover-fill" style="width: 57%"></div><div class="cover-empty" style="width: 43%"></div></div>
85
+ </td>
86
+ <td data-value="57.14" class="pct medium">57.14%</td>
87
+ <td data-value="182" class="abs medium">104/182</td>
88
+ <td data-value="44.15" class="pct low">44.15%</td>
89
+ <td data-value="77" class="abs low">34/77</td>
90
+ <td data-value="45.45" class="pct low">45.45%</td>
91
+ <td data-value="33" class="abs low">15/33</td>
92
+ <td data-value="57.3" class="pct medium">57.3%</td>
93
+ <td data-value="178" class="abs medium">102/178</td>
94
+ </tr>
95
+
96
+ <tr>
97
+ <td class="file high" data-value="src/api"><a href="src/api/index.html">src/api</a></td>
83
98
  <td data-value="97.29" class="pic high">
84
99
  <div class="chart"><div class="cover-fill" style="width: 97%"></div><div class="cover-empty" style="width: 3%"></div></div>
85
100
  </td>
86
101
  <td data-value="97.29" class="pct high">97.29%</td>
87
102
  <td data-value="37" class="abs high">36/37</td>
88
- <td data-value="40" class="pct low">40%</td>
89
- <td data-value="5" class="abs low">2/5</td>
90
- <td data-value="100" class="pct high">100%</td>
91
- <td data-value="4" class="abs high">4/4</td>
92
- <td data-value="97.14" class="pct high">97.14%</td>
93
- <td data-value="35" class="abs high">34/35</td>
103
+ <td data-value="25" class="pct low">25%</td>
104
+ <td data-value="4" class="abs low">1/4</td>
105
+ <td data-value="85.71" class="pct high">85.71%</td>
106
+ <td data-value="7" class="abs high">6/7</td>
107
+ <td data-value="96.96" class="pct high">96.96%</td>
108
+ <td data-value="33" class="abs high">32/33</td>
94
109
  </tr>
95
110
 
96
111
  <tr>
97
- <td class="file medium" data-value="api/controllers"><a href="api/controllers/index.html">api/controllers</a></td>
98
- <td data-value="68.1" class="pic medium">
99
- <div class="chart"><div class="cover-fill" style="width: 68%"></div><div class="cover-empty" style="width: 32%"></div></div>
112
+ <td class="file medium" data-value="src/api/controllers"><a href="src/api/controllers/index.html">src/api/controllers</a></td>
113
+ <td data-value="74.8" class="pic medium">
114
+ <div class="chart"><div class="cover-fill" style="width: 74%"></div><div class="cover-empty" style="width: 26%"></div></div>
100
115
  </td>
101
- <td data-value="68.1" class="pct medium">68.1%</td>
102
- <td data-value="837" class="abs medium">570/837</td>
103
- <td data-value="44.77" class="pct low">44.77%</td>
104
- <td data-value="268" class="abs low">120/268</td>
105
- <td data-value="61.41" class="pct medium">61.41%</td>
106
- <td data-value="127" class="abs medium">78/127</td>
107
- <td data-value="67.96" class="pct medium">67.96%</td>
108
- <td data-value="824" class="abs medium">560/824</td>
116
+ <td data-value="74.8" class="pct medium">74.8%</td>
117
+ <td data-value="1302" class="abs medium">974/1302</td>
118
+ <td data-value="51.85" class="pct medium">51.85%</td>
119
+ <td data-value="405" class="abs medium">210/405</td>
120
+ <td data-value="70.79" class="pct medium">70.79%</td>
121
+ <td data-value="202" class="abs medium">143/202</td>
122
+ <td data-value="74.66" class="pct medium">74.66%</td>
123
+ <td data-value="1267" class="abs medium">946/1267</td>
109
124
  </tr>
110
125
 
111
126
  <tr>
112
- <td class="file high" data-value="api/controllers/query"><a href="api/controllers/query/index.html">api/controllers/query</a></td>
113
- <td data-value="100" class="pic high">
114
- <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
127
+ <td class="file medium" data-value="src/api/controllers/deploy"><a href="src/api/controllers/deploy/index.html">src/api/controllers/deploy</a></td>
128
+ <td data-value="71.01" class="pic medium">
129
+ <div class="chart"><div class="cover-fill" style="width: 71%"></div><div class="cover-empty" style="width: 29%"></div></div>
115
130
  </td>
131
+ <td data-value="71.01" class="pct medium">71.01%</td>
132
+ <td data-value="138" class="abs medium">98/138</td>
133
+ <td data-value="36.84" class="pct low">36.84%</td>
134
+ <td data-value="19" class="abs low">7/19</td>
135
+ <td data-value="56.25" class="pct medium">56.25%</td>
136
+ <td data-value="16" class="abs medium">9/16</td>
137
+ <td data-value="71.53" class="pct medium">71.53%</td>
138
+ <td data-value="137" class="abs medium">98/137</td>
139
+ </tr>
140
+
141
+ <tr>
142
+ <td class="file low" data-value="src/api/controllers/plugin"><a href="src/api/controllers/plugin/index.html">src/api/controllers/plugin</a></td>
143
+ <td data-value="26.99" class="pic low">
144
+ <div class="chart"><div class="cover-fill" style="width: 26%"></div><div class="cover-empty" style="width: 74%"></div></div>
145
+ </td>
146
+ <td data-value="26.99" class="pct low">26.99%</td>
147
+ <td data-value="163" class="abs low">44/163</td>
148
+ <td data-value="0.73" class="pct low">0.73%</td>
149
+ <td data-value="136" class="abs low">1/136</td>
150
+ <td data-value="5.26" class="pct low">5.26%</td>
151
+ <td data-value="19" class="abs low">1/19</td>
152
+ <td data-value="25.47" class="pct low">25.47%</td>
153
+ <td data-value="157" class="abs low">40/157</td>
154
+ </tr>
155
+
156
+ <tr>
157
+ <td class="file high" data-value="src/api/controllers/public"><a href="src/api/controllers/public/index.html">src/api/controllers/public</a></td>
158
+ <td data-value="90.67" class="pic high">
159
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
160
+ </td>
161
+ <td data-value="90.67" class="pct high">90.67%</td>
162
+ <td data-value="193" class="abs high">175/193</td>
163
+ <td data-value="76.36" class="pct medium">76.36%</td>
164
+ <td data-value="55" class="abs medium">42/55</td>
165
+ <td data-value="97.29" class="pct high">97.29%</td>
166
+ <td data-value="37" class="abs high">36/37</td>
167
+ <td data-value="90.52" class="pct high">90.52%</td>
168
+ <td data-value="190" class="abs high">172/190</td>
169
+ </tr>
170
+
171
+ <tr>
172
+ <td class="file high" data-value="src/api/controllers/public/mapping"><a href="src/api/controllers/public/mapping/index.html">src/api/controllers/public/mapping</a></td>
173
+ <td data-value="92.1" class="pic high">
174
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
175
+ </td>
176
+ <td data-value="92.1" class="pct high">92.1%</td>
177
+ <td data-value="38" class="abs high">35/38</td>
178
+ <td data-value="83.33" class="pct high">83.33%</td>
179
+ <td data-value="6" class="abs high">5/6</td>
180
+ <td data-value="85" class="pct high">85%</td>
181
+ <td data-value="20" class="abs high">17/20</td>
182
+ <td data-value="93.93" class="pct high">93.93%</td>
183
+ <td data-value="33" class="abs high">31/33</td>
184
+ </tr>
185
+
186
+ <tr>
187
+ <td class="file high" data-value="src/api/controllers/query"><a href="src/api/controllers/query/index.html">src/api/controllers/query</a></td>
188
+ <td data-value="82.16" class="pic high">
189
+ <div class="chart"><div class="cover-fill" style="width: 82%"></div><div class="cover-empty" style="width: 18%"></div></div>
190
+ </td>
191
+ <td data-value="82.16" class="pct high">82.16%</td>
192
+ <td data-value="157" class="abs high">129/157</td>
193
+ <td data-value="68.08" class="pct medium">68.08%</td>
194
+ <td data-value="47" class="abs medium">32/47</td>
195
+ <td data-value="88" class="pct high">88%</td>
196
+ <td data-value="25" class="abs high">22/25</td>
197
+ <td data-value="82.23" class="pct high">82.23%</td>
198
+ <td data-value="152" class="abs high">125/152</td>
199
+ </tr>
200
+
201
+ <tr>
202
+ <td class="file high" data-value="src/api/controllers/query/import"><a href="src/api/controllers/query/import/index.html">src/api/controllers/query/import</a></td>
203
+ <td data-value="91.83" class="pic high">
204
+ <div class="chart"><div class="cover-fill" style="width: 91%"></div><div class="cover-empty" style="width: 9%"></div></div>
205
+ </td>
206
+ <td data-value="91.83" class="pct high">91.83%</td>
207
+ <td data-value="49" class="abs high">45/49</td>
208
+ <td data-value="50" class="pct medium">50%</td>
209
+ <td data-value="4" class="abs medium">2/4</td>
116
210
  <td data-value="100" class="pct high">100%</td>
117
- <td data-value="9" class="abs high">9/9</td>
118
- <td data-value="100" class="pct high">100%</td>
119
- <td data-value="0" class="abs high">0/0</td>
120
- <td data-value="100" class="pct high">100%</td>
121
- <td data-value="3" class="abs high">3/3</td>
211
+ <td data-value="11" class="abs high">11/11</td>
212
+ <td data-value="91.3" class="pct high">91.3%</td>
213
+ <td data-value="46" class="abs high">42/46</td>
214
+ </tr>
215
+
216
+ <tr>
217
+ <td class="file high" data-value="src/api/controllers/query/import/sources"><a href="src/api/controllers/query/import/sources/index.html">src/api/controllers/query/import/sources</a></td>
218
+ <td data-value="95.98" class="pic high">
219
+ <div class="chart"><div class="cover-fill" style="width: 95%"></div><div class="cover-empty" style="width: 5%"></div></div>
220
+ </td>
221
+ <td data-value="95.98" class="pct high">95.98%</td>
222
+ <td data-value="224" class="abs high">215/224</td>
223
+ <td data-value="79.1" class="pct medium">79.1%</td>
224
+ <td data-value="67" class="abs medium">53/67</td>
225
+ <td data-value="97.61" class="pct high">97.61%</td>
226
+ <td data-value="42" class="abs high">41/42</td>
227
+ <td data-value="95.81" class="pct high">95.81%</td>
228
+ <td data-value="215" class="abs high">206/215</td>
229
+ </tr>
230
+
231
+ <tr>
232
+ <td class="file high" data-value="src/api/controllers/query/import/sources/base"><a href="src/api/controllers/query/import/sources/base/index.html">src/api/controllers/query/import/sources/base</a></td>
233
+ <td data-value="98.03" class="pic high">
234
+ <div class="chart"><div class="cover-fill" style="width: 98%"></div><div class="cover-empty" style="width: 2%"></div></div>
235
+ </td>
236
+ <td data-value="98.03" class="pct high">98.03%</td>
237
+ <td data-value="51" class="abs high">50/51</td>
238
+ <td data-value="80" class="pct high">80%</td>
239
+ <td data-value="20" class="abs high">16/20</td>
122
240
  <td data-value="100" class="pct high">100%</td>
123
241
  <td data-value="9" class="abs high">9/9</td>
242
+ <td data-value="98" class="pct high">98%</td>
243
+ <td data-value="50" class="abs high">49/50</td>
244
+ </tr>
245
+
246
+ <tr>
247
+ <td class="file medium" data-value="src/api/controllers/row"><a href="src/api/controllers/row/index.html">src/api/controllers/row</a></td>
248
+ <td data-value="50.87" class="pic medium">
249
+ <div class="chart"><div class="cover-fill" style="width: 50%"></div><div class="cover-empty" style="width: 50%"></div></div>
250
+ </td>
251
+ <td data-value="50.87" class="pct medium">50.87%</td>
252
+ <td data-value="1081" class="abs medium">550/1081</td>
253
+ <td data-value="29.26" class="pct low">29.26%</td>
254
+ <td data-value="492" class="abs low">144/492</td>
255
+ <td data-value="55.55" class="pct medium">55.55%</td>
256
+ <td data-value="153" class="abs medium">85/153</td>
257
+ <td data-value="50.04" class="pct medium">50.04%</td>
258
+ <td data-value="1045" class="abs medium">523/1045</td>
124
259
  </tr>
125
260
 
126
261
  <tr>
127
- <td class="file medium" data-value="api/controllers/row"><a href="api/controllers/row/index.html">api/controllers/row</a></td>
128
- <td data-value="64.73" class="pic medium">
129
- <div class="chart"><div class="cover-fill" style="width: 64%"></div><div class="cover-empty" style="width: 36%"></div></div>
262
+ <td class="file medium" data-value="src/api/controllers/static"><a href="src/api/controllers/static/index.html">src/api/controllers/static</a></td>
263
+ <td data-value="63.82" class="pic medium">
264
+ <div class="chart"><div class="cover-fill" style="width: 63%"></div><div class="cover-empty" style="width: 37%"></div></div>
130
265
  </td>
131
- <td data-value="64.73" class="pct medium">64.73%</td>
132
- <td data-value="689" class="abs medium">446/689</td>
133
- <td data-value="48.62" class="pct low">48.62%</td>
134
- <td data-value="327" class="abs low">159/327</td>
135
- <td data-value="61.7" class="pct medium">61.7%</td>
136
- <td data-value="94" class="abs medium">58/94</td>
137
- <td data-value="64.58" class="pct medium">64.58%</td>
138
- <td data-value="672" class="abs medium">434/672</td>
266
+ <td data-value="63.82" class="pct medium">63.82%</td>
267
+ <td data-value="94" class="abs medium">60/94</td>
268
+ <td data-value="66" class="pct medium">66%</td>
269
+ <td data-value="50" class="abs medium">33/50</td>
270
+ <td data-value="36.36" class="pct low">36.36%</td>
271
+ <td data-value="11" class="abs low">4/11</td>
272
+ <td data-value="61.17" class="pct medium">61.17%</td>
273
+ <td data-value="85" class="abs medium">52/85</td>
139
274
  </tr>
140
275
 
141
276
  <tr>
142
- <td class="file low" data-value="api/controllers/table"><a href="api/controllers/table/index.html">api/controllers/table</a></td>
143
- <td data-value="43.2" class="pic low">
144
- <div class="chart"><div class="cover-fill" style="width: 43%"></div><div class="cover-empty" style="width: 57%"></div></div>
277
+ <td class="file medium" data-value="src/api/controllers/table"><a href="src/api/controllers/table/index.html">src/api/controllers/table</a></td>
278
+ <td data-value="55.61" class="pic medium">
279
+ <div class="chart"><div class="cover-fill" style="width: 55%"></div><div class="cover-empty" style="width: 45%"></div></div>
145
280
  </td>
146
- <td data-value="43.2" class="pct low">43.2%</td>
147
- <td data-value="287" class="abs low">124/287</td>
148
- <td data-value="28.99" class="pct low">28.99%</td>
149
- <td data-value="169" class="abs low">49/169</td>
150
- <td data-value="51.28" class="pct medium">51.28%</td>
151
- <td data-value="39" class="abs medium">20/39</td>
152
- <td data-value="43.1" class="pct low">43.1%</td>
153
- <td data-value="283" class="abs low">122/283</td>
281
+ <td data-value="55.61" class="pct medium">55.61%</td>
282
+ <td data-value="570" class="abs medium">317/570</td>
283
+ <td data-value="36.51" class="pct low">36.51%</td>
284
+ <td data-value="241" class="abs low">88/241</td>
285
+ <td data-value="55.84" class="pct medium">55.84%</td>
286
+ <td data-value="77" class="abs medium">43/77</td>
287
+ <td data-value="55.75" class="pct medium">55.75%</td>
288
+ <td data-value="556" class="abs medium">310/556</td>
154
289
  </tr>
155
290
 
156
291
  <tr>
157
- <td class="file medium" data-value="api/controllers/view"><a href="api/controllers/view/index.html">api/controllers/view</a></td>
292
+ <td class="file medium" data-value="src/api/controllers/view"><a href="src/api/controllers/view/index.html">src/api/controllers/view</a></td>
158
293
  <td data-value="77.27" class="pic medium">
159
294
  <div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
160
295
  </td>
161
296
  <td data-value="77.27" class="pct medium">77.27%</td>
162
297
  <td data-value="242" class="abs medium">187/242</td>
163
- <td data-value="76.69" class="pct medium">76.69%</td>
164
- <td data-value="133" class="abs medium">102/133</td>
298
+ <td data-value="77.27" class="pct medium">77.27%</td>
299
+ <td data-value="110" class="abs medium">85/110</td>
165
300
  <td data-value="79.31" class="pct medium">79.31%</td>
166
301
  <td data-value="29" class="abs medium">23/29</td>
167
- <td data-value="77.5" class="pct medium">77.5%</td>
168
- <td data-value="240" class="abs medium">186/240</td>
302
+ <td data-value="77.31" class="pct medium">77.31%</td>
303
+ <td data-value="238" class="abs medium">184/238</td>
169
304
  </tr>
170
305
 
171
306
  <tr>
172
- <td class="file high" data-value="api/routes"><a href="api/routes/index.html">api/routes</a></td>
173
- <td data-value="95.9" class="pic high">
174
- <div class="chart"><div class="cover-fill" style="width: 95%"></div><div class="cover-empty" style="width: 5%"></div></div>
307
+ <td class="file high" data-value="src/api/routes"><a href="src/api/routes/index.html">src/api/routes</a></td>
308
+ <td data-value="97.38" class="pic high">
309
+ <div class="chart"><div class="cover-fill" style="width: 97%"></div><div class="cover-empty" style="width: 3%"></div></div>
175
310
  </td>
176
- <td data-value="95.9" class="pct high">95.9%</td>
177
- <td data-value="171" class="abs high">164/171</td>
178
- <td data-value="50" class="pct medium">50%</td>
179
- <td data-value="4" class="abs medium">2/4</td>
311
+ <td data-value="97.38" class="pct high">97.38%</td>
312
+ <td data-value="268" class="abs high">261/268</td>
313
+ <td data-value="75" class="pct medium">75%</td>
314
+ <td data-value="4" class="abs medium">3/4</td>
180
315
  <td data-value="100" class="pct high">100%</td>
181
- <td data-value="1" class="abs high">1/1</td>
182
- <td data-value="95.9" class="pct high">95.9%</td>
183
- <td data-value="171" class="abs high">164/171</td>
316
+ <td data-value="3" class="abs high">3/3</td>
317
+ <td data-value="97.36" class="pct high">97.36%</td>
318
+ <td data-value="266" class="abs high">259/266</td>
319
+ </tr>
320
+
321
+ <tr>
322
+ <td class="file high" data-value="src/api/routes/public"><a href="src/api/routes/public/index.html">src/api/routes/public</a></td>
323
+ <td data-value="89.65" class="pic high">
324
+ <div class="chart"><div class="cover-fill" style="width: 89%"></div><div class="cover-empty" style="width: 11%"></div></div>
325
+ </td>
326
+ <td data-value="89.65" class="pct high">89.65%</td>
327
+ <td data-value="116" class="abs high">104/116</td>
328
+ <td data-value="61.9" class="pct medium">61.9%</td>
329
+ <td data-value="21" class="abs medium">13/21</td>
330
+ <td data-value="80" class="pct high">80%</td>
331
+ <td data-value="5" class="abs high">4/5</td>
332
+ <td data-value="89.56" class="pct high">89.56%</td>
333
+ <td data-value="115" class="abs high">103/115</td>
184
334
  </tr>
185
335
 
186
336
  <tr>
187
- <td class="file high" data-value="api/routes/utils"><a href="api/routes/utils/index.html">api/routes/utils</a></td>
337
+ <td class="file high" data-value="src/api/routes/public/middleware"><a href="src/api/routes/public/middleware/index.html">src/api/routes/public/middleware</a></td>
338
+ <td data-value="97.61" class="pic high">
339
+ <div class="chart"><div class="cover-fill" style="width: 97%"></div><div class="cover-empty" style="width: 3%"></div></div>
340
+ </td>
341
+ <td data-value="97.61" class="pct high">97.61%</td>
342
+ <td data-value="42" class="abs high">41/42</td>
343
+ <td data-value="95" class="pct high">95%</td>
344
+ <td data-value="20" class="abs high">19/20</td>
345
+ <td data-value="100" class="pct high">100%</td>
346
+ <td data-value="9" class="abs high">9/9</td>
347
+ <td data-value="97.56" class="pct high">97.56%</td>
348
+ <td data-value="41" class="abs high">40/41</td>
349
+ </tr>
350
+
351
+ <tr>
352
+ <td class="file high" data-value="src/api/routes/public/tests"><a href="src/api/routes/public/tests/index.html">src/api/routes/public/tests</a></td>
353
+ <td data-value="100" class="pic high">
354
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
355
+ </td>
356
+ <td data-value="100" class="pct high">100%</td>
357
+ <td data-value="15" class="abs high">15/15</td>
358
+ <td data-value="100" class="pct high">100%</td>
359
+ <td data-value="3" class="abs high">3/3</td>
360
+ <td data-value="100" class="pct high">100%</td>
361
+ <td data-value="3" class="abs high">3/3</td>
362
+ <td data-value="100" class="pct high">100%</td>
363
+ <td data-value="15" class="abs high">15/15</td>
364
+ </tr>
365
+
366
+ <tr>
367
+ <td class="file high" data-value="src/api/routes/public/utils"><a href="src/api/routes/public/utils/index.html">src/api/routes/public/utils</a></td>
368
+ <td data-value="100" class="pic high">
369
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
370
+ </td>
371
+ <td data-value="100" class="pct high">100%</td>
372
+ <td data-value="18" class="abs high">18/18</td>
373
+ <td data-value="100" class="pct high">100%</td>
374
+ <td data-value="0" class="abs high">0/0</td>
375
+ <td data-value="100" class="pct high">100%</td>
376
+ <td data-value="5" class="abs high">5/5</td>
377
+ <td data-value="100" class="pct high">100%</td>
378
+ <td data-value="18" class="abs high">18/18</td>
379
+ </tr>
380
+
381
+ <tr>
382
+ <td class="file high" data-value="src/api/routes/tests/utilities"><a href="src/api/routes/tests/utilities/index.html">src/api/routes/tests/utilities</a></td>
383
+ <td data-value="92.12" class="pic high">
384
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
385
+ </td>
386
+ <td data-value="92.12" class="pct high">92.12%</td>
387
+ <td data-value="127" class="abs high">117/127</td>
388
+ <td data-value="84.21" class="pct high">84.21%</td>
389
+ <td data-value="19" class="abs high">16/19</td>
390
+ <td data-value="87.8" class="pct high">87.8%</td>
391
+ <td data-value="41" class="abs high">36/41</td>
392
+ <td data-value="92.15" class="pct high">92.15%</td>
393
+ <td data-value="102" class="abs high">94/102</td>
394
+ </tr>
395
+
396
+ <tr>
397
+ <td class="file high" data-value="src/api/routes/utils"><a href="src/api/routes/utils/index.html">src/api/routes/utils</a></td>
188
398
  <td data-value="100" class="pic high">
189
399
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
190
400
  </td>
191
401
  <td data-value="100" class="pct high">100%</td>
192
- <td data-value="42" class="abs high">42/42</td>
402
+ <td data-value="41" class="abs high">41/41</td>
193
403
  <td data-value="87.5" class="pct high">87.5%</td>
194
404
  <td data-value="8" class="abs high">7/8</td>
195
405
  <td data-value="100" class="pct high">100%</td>
196
406
  <td data-value="14" class="abs high">14/14</td>
197
407
  <td data-value="100" class="pct high">100%</td>
198
- <td data-value="42" class="abs high">42/42</td>
408
+ <td data-value="41" class="abs high">41/41</td>
199
409
  </tr>
200
410
 
201
411
  <tr>
202
- <td class="file high" data-value="automations"><a href="automations/index.html">automations</a></td>
203
- <td data-value="83.95" class="pic high">
204
- <div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
412
+ <td class="file medium" data-value="src/automations"><a href="src/automations/index.html">src/automations</a></td>
413
+ <td data-value="76.62" class="pic medium">
414
+ <div class="chart"><div class="cover-fill" style="width: 76%"></div><div class="cover-empty" style="width: 24%"></div></div>
205
415
  </td>
206
- <td data-value="83.95" class="pct high">83.95%</td>
207
- <td data-value="187" class="abs high">157/187</td>
208
- <td data-value="70.88" class="pct medium">70.88%</td>
209
- <td data-value="79" class="abs medium">56/79</td>
210
- <td data-value="77.27" class="pct medium">77.27%</td>
211
- <td data-value="22" class="abs medium">17/22</td>
212
- <td data-value="83.87" class="pct high">83.87%</td>
213
- <td data-value="186" class="abs high">156/186</td>
416
+ <td data-value="76.62" class="pct medium">76.62%</td>
417
+ <td data-value="308" class="abs medium">236/308</td>
418
+ <td data-value="53.84" class="pct medium">53.84%</td>
419
+ <td data-value="117" class="abs medium">63/117</td>
420
+ <td data-value="76" class="pct medium">76%</td>
421
+ <td data-value="50" class="abs medium">38/50</td>
422
+ <td data-value="76.09" class="pct medium">76.09%</td>
423
+ <td data-value="297" class="abs medium">226/297</td>
424
+ </tr>
425
+
426
+ <tr>
427
+ <td class="file medium" data-value="src/automations/logging"><a href="src/automations/logging/index.html">src/automations/logging</a></td>
428
+ <td data-value="54.54" class="pic medium">
429
+ <div class="chart"><div class="cover-fill" style="width: 54%"></div><div class="cover-empty" style="width: 46%"></div></div>
430
+ </td>
431
+ <td data-value="54.54" class="pct medium">54.54%</td>
432
+ <td data-value="22" class="abs medium">12/22</td>
433
+ <td data-value="25" class="pct low">25%</td>
434
+ <td data-value="4" class="abs low">1/4</td>
435
+ <td data-value="100" class="pct high">100%</td>
436
+ <td data-value="2" class="abs high">2/2</td>
437
+ <td data-value="54.54" class="pct medium">54.54%</td>
438
+ <td data-value="22" class="abs medium">12/22</td>
439
+ </tr>
440
+
441
+ <tr>
442
+ <td class="file medium" data-value="src/automations/steps"><a href="src/automations/steps/index.html">src/automations/steps</a></td>
443
+ <td data-value="74.57" class="pic medium">
444
+ <div class="chart"><div class="cover-fill" style="width: 74%"></div><div class="cover-empty" style="width: 26%"></div></div>
445
+ </td>
446
+ <td data-value="74.57" class="pct medium">74.57%</td>
447
+ <td data-value="291" class="abs medium">217/291</td>
448
+ <td data-value="71.87" class="pct medium">71.87%</td>
449
+ <td data-value="96" class="abs medium">69/96</td>
450
+ <td data-value="65.38" class="pct medium">65.38%</td>
451
+ <td data-value="26" class="abs medium">17/26</td>
452
+ <td data-value="75.6" class="pct medium">75.6%</td>
453
+ <td data-value="287" class="abs medium">217/287</td>
214
454
  </tr>
215
455
 
216
456
  <tr>
217
- <td class="file medium" data-value="automations/steps"><a href="automations/steps/index.html">automations/steps</a></td>
218
- <td data-value="70.16" class="pic medium">
219
- <div class="chart"><div class="cover-fill" style="width: 70%"></div><div class="cover-empty" style="width: 30%"></div></div>
457
+ <td class="file high" data-value="src/automations/tests/utilities"><a href="src/automations/tests/utilities/index.html">src/automations/tests/utilities</a></td>
458
+ <td data-value="90.62" class="pic high">
459
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
220
460
  </td>
221
- <td data-value="70.16" class="pct medium">70.16%</td>
222
- <td data-value="238" class="abs medium">167/238</td>
223
- <td data-value="66.05" class="pct medium">66.05%</td>
224
- <td data-value="109" class="abs medium">72/109</td>
225
- <td data-value="52.38" class="pct medium">52.38%</td>
226
- <td data-value="21" class="abs medium">11/21</td>
227
- <td data-value="70.16" class="pct medium">70.16%</td>
228
- <td data-value="238" class="abs medium">167/238</td>
461
+ <td data-value="90.62" class="pct high">90.62%</td>
462
+ <td data-value="32" class="abs high">29/32</td>
463
+ <td data-value="80" class="pct high">80%</td>
464
+ <td data-value="15" class="abs high">12/15</td>
465
+ <td data-value="100" class="pct high">100%</td>
466
+ <td data-value="7" class="abs high">7/7</td>
467
+ <td data-value="90.32" class="pct high">90.32%</td>
468
+ <td data-value="31" class="abs high">28/31</td>
229
469
  </tr>
230
470
 
231
471
  <tr>
232
- <td class="file high" data-value="automations/triggerInfo"><a href="automations/triggerInfo/index.html">automations/triggerInfo</a></td>
472
+ <td class="file high" data-value="src/automations/triggerInfo"><a href="src/automations/triggerInfo/index.html">src/automations/triggerInfo</a></td>
233
473
  <td data-value="100" class="pic high">
234
474
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
235
475
  </td>
236
476
  <td data-value="100" class="pct high">100%</td>
237
- <td data-value="13" class="abs high">13/13</td>
477
+ <td data-value="19" class="abs high">19/19</td>
238
478
  <td data-value="100" class="pct high">100%</td>
239
479
  <td data-value="0" class="abs high">0/0</td>
240
480
  <td data-value="100" class="pct high">100%</td>
241
481
  <td data-value="0" class="abs high">0/0</td>
242
482
  <td data-value="100" class="pct high">100%</td>
243
- <td data-value="13" class="abs high">13/13</td>
483
+ <td data-value="19" class="abs high">19/19</td>
244
484
  </tr>
245
485
 
246
486
  <tr>
247
- <td class="file high" data-value="constants"><a href="constants/index.html">constants</a></td>
487
+ <td class="file high" data-value="src/constants"><a href="src/constants/index.html">src/constants</a></td>
248
488
  <td data-value="100" class="pic high">
249
489
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
250
490
  </td>
251
491
  <td data-value="100" class="pct high">100%</td>
252
- <td data-value="35" class="abs high">35/35</td>
253
- <td data-value="50" class="pct medium">50%</td>
254
- <td data-value="2" class="abs medium">1/2</td>
492
+ <td data-value="98" class="abs high">98/98</td>
493
+ <td data-value="96.87" class="pct high">96.87%</td>
494
+ <td data-value="32" class="abs high">31/32</td>
255
495
  <td data-value="100" class="pct high">100%</td>
256
- <td data-value="2" class="abs high">2/2</td>
496
+ <td data-value="17" class="abs high">17/17</td>
257
497
  <td data-value="100" class="pct high">100%</td>
258
- <td data-value="34" class="abs high">34/34</td>
498
+ <td data-value="98" class="abs high">98/98</td>
499
+ </tr>
500
+
501
+ <tr>
502
+ <td class="file medium" data-value="src/db"><a href="src/db/index.html">src/db</a></td>
503
+ <td data-value="62.64" class="pic medium">
504
+ <div class="chart"><div class="cover-fill" style="width: 62%"></div><div class="cover-empty" style="width: 38%"></div></div>
505
+ </td>
506
+ <td data-value="62.64" class="pct medium">62.64%</td>
507
+ <td data-value="174" class="abs medium">109/174</td>
508
+ <td data-value="18.33" class="pct low">18.33%</td>
509
+ <td data-value="60" class="abs low">11/60</td>
510
+ <td data-value="59.45" class="pct medium">59.45%</td>
511
+ <td data-value="37" class="abs medium">22/37</td>
512
+ <td data-value="63.37" class="pct medium">63.37%</td>
513
+ <td data-value="172" class="abs medium">109/172</td>
259
514
  </tr>
260
515
 
261
516
  <tr>
262
- <td class="file medium" data-value="db"><a href="db/index.html">db</a></td>
263
- <td data-value="75.57" class="pic medium">
264
- <div class="chart"><div class="cover-fill" style="width: 75%"></div><div class="cover-empty" style="width: 25%"></div></div>
517
+ <td class="file medium" data-value="src/db/defaultData"><a href="src/db/defaultData/index.html">src/db/defaultData</a></td>
518
+ <td data-value="61.9" class="pic medium">
519
+ <div class="chart"><div class="cover-fill" style="width: 61%"></div><div class="cover-empty" style="width: 39%"></div></div>
265
520
  </td>
266
- <td data-value="75.57" class="pct medium">75.57%</td>
267
- <td data-value="131" class="abs medium">99/131</td>
268
- <td data-value="21.95" class="pct low">21.95%</td>
269
- <td data-value="41" class="abs low">9/41</td>
270
- <td data-value="65.62" class="pct medium">65.62%</td>
271
- <td data-value="32" class="abs medium">21/32</td>
272
- <td data-value="76.74" class="pct medium">76.74%</td>
273
- <td data-value="129" class="abs medium">99/129</td>
521
+ <td data-value="61.9" class="pct medium">61.9%</td>
522
+ <td data-value="42" class="abs medium">26/42</td>
523
+ <td data-value="0" class="pct low">0%</td>
524
+ <td data-value="3" class="abs low">0/3</td>
525
+ <td data-value="0" class="pct low">0%</td>
526
+ <td data-value="5" class="abs low">0/5</td>
527
+ <td data-value="61.9" class="pct medium">61.9%</td>
528
+ <td data-value="42" class="abs medium">26/42</td>
274
529
  </tr>
275
530
 
276
531
  <tr>
277
- <td class="file high" data-value="db/linkedRows"><a href="db/linkedRows/index.html">db/linkedRows</a></td>
278
- <td data-value="95.77" class="pic high">
532
+ <td class="file high" data-value="src/db/linkedRows"><a href="src/db/linkedRows/index.html">src/db/linkedRows</a></td>
533
+ <td data-value="95.55" class="pic high">
279
534
  <div class="chart"><div class="cover-fill" style="width: 95%"></div><div class="cover-empty" style="width: 5%"></div></div>
280
535
  </td>
281
- <td data-value="95.77" class="pct high">95.77%</td>
282
- <td data-value="308" class="abs high">295/308</td>
283
- <td data-value="84.32" class="pct high">84.32%</td>
284
- <td data-value="134" class="abs high">113/134</td>
285
- <td data-value="95.08" class="pct high">95.08%</td>
286
- <td data-value="61" class="abs high">58/61</td>
287
- <td data-value="95.95" class="pct high">95.95%</td>
288
- <td data-value="297" class="abs high">285/297</td>
536
+ <td data-value="95.55" class="pct high">95.55%</td>
537
+ <td data-value="315" class="abs high">301/315</td>
538
+ <td data-value="82.97" class="pct high">82.97%</td>
539
+ <td data-value="141" class="abs high">117/141</td>
540
+ <td data-value="90.76" class="pct high">90.76%</td>
541
+ <td data-value="65" class="abs high">59/65</td>
542
+ <td data-value="95.66" class="pct high">95.66%</td>
543
+ <td data-value="300" class="abs high">287/300</td>
289
544
  </tr>
290
545
 
291
546
  <tr>
292
- <td class="file high" data-value="events"><a href="events/index.html">events</a></td>
293
- <td data-value="89.74" class="pic high">
294
- <div class="chart"><div class="cover-fill" style="width: 89%"></div><div class="cover-empty" style="width: 11%"></div></div>
547
+ <td class="file high" data-value="src/definitions"><a href="src/definitions/index.html">src/definitions</a></td>
548
+ <td data-value="100" class="pic high">
549
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
550
+ </td>
551
+ <td data-value="100" class="pct high">100%</td>
552
+ <td data-value="6" class="abs high">6/6</td>
553
+ <td data-value="100" class="pct high">100%</td>
554
+ <td data-value="4" class="abs high">4/4</td>
555
+ <td data-value="100" class="pct high">100%</td>
556
+ <td data-value="2" class="abs high">2/2</td>
557
+ <td data-value="100" class="pct high">100%</td>
558
+ <td data-value="6" class="abs high">6/6</td>
559
+ </tr>
560
+
561
+ <tr>
562
+ <td class="file high" data-value="src/events"><a href="src/events/index.html">src/events</a></td>
563
+ <td data-value="90.9" class="pic high">
564
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
295
565
  </td>
296
- <td data-value="89.74" class="pct high">89.74%</td>
297
- <td data-value="39" class="abs high">35/39</td>
298
- <td data-value="55" class="pct medium">55%</td>
299
- <td data-value="20" class="abs medium">11/20</td>
566
+ <td data-value="90.9" class="pct high">90.9%</td>
567
+ <td data-value="44" class="abs high">40/44</td>
568
+ <td data-value="73.33" class="pct medium">73.33%</td>
569
+ <td data-value="30" class="abs medium">22/30</td>
300
570
  <td data-value="87.5" class="pct high">87.5%</td>
301
571
  <td data-value="8" class="abs high">7/8</td>
302
- <td data-value="89.74" class="pct high">89.74%</td>
303
- <td data-value="39" class="abs high">35/39</td>
572
+ <td data-value="90.9" class="pct high">90.9%</td>
573
+ <td data-value="44" class="abs high">40/44</td>
574
+ </tr>
575
+
576
+ <tr>
577
+ <td class="file medium" data-value="src/integrations"><a href="src/integrations/index.html">src/integrations</a></td>
578
+ <td data-value="54.56" class="pic medium">
579
+ <div class="chart"><div class="cover-fill" style="width: 54%"></div><div class="cover-empty" style="width: 46%"></div></div>
580
+ </td>
581
+ <td data-value="54.56" class="pct medium">54.56%</td>
582
+ <td data-value="1217" class="abs medium">664/1217</td>
583
+ <td data-value="44.91" class="pct low">44.91%</td>
584
+ <td data-value="541" class="abs low">243/541</td>
585
+ <td data-value="51.75" class="pct medium">51.75%</td>
586
+ <td data-value="228" class="abs medium">118/228</td>
587
+ <td data-value="54.77" class="pct medium">54.77%</td>
588
+ <td data-value="1194" class="abs medium">654/1194</td>
589
+ </tr>
590
+
591
+ <tr>
592
+ <td class="file low" data-value="src/integrations/base"><a href="src/integrations/base/index.html">src/integrations/base</a></td>
593
+ <td data-value="48.64" class="pic low">
594
+ <div class="chart"><div class="cover-fill" style="width: 48%"></div><div class="cover-empty" style="width: 52%"></div></div>
595
+ </td>
596
+ <td data-value="48.64" class="pct low">48.64%</td>
597
+ <td data-value="405" class="abs low">197/405</td>
598
+ <td data-value="33.33" class="pct low">33.33%</td>
599
+ <td data-value="321" class="abs low">107/321</td>
600
+ <td data-value="51.72" class="pct medium">51.72%</td>
601
+ <td data-value="58" class="abs medium">30/58</td>
602
+ <td data-value="49.25" class="pct low">49.25%</td>
603
+ <td data-value="400" class="abs low">197/400</td>
604
+ </tr>
605
+
606
+ <tr>
607
+ <td class="file low" data-value="src/integrations/queries"><a href="src/integrations/queries/index.html">src/integrations/queries</a></td>
608
+ <td data-value="34.48" class="pic low">
609
+ <div class="chart"><div class="cover-fill" style="width: 34%"></div><div class="cover-empty" style="width: 66%"></div></div>
610
+ </td>
611
+ <td data-value="34.48" class="pct low">34.48%</td>
612
+ <td data-value="58" class="abs low">20/58</td>
613
+ <td data-value="50" class="pct medium">50%</td>
614
+ <td data-value="30" class="abs medium">15/30</td>
615
+ <td data-value="33.33" class="pct low">33.33%</td>
616
+ <td data-value="6" class="abs low">2/6</td>
617
+ <td data-value="35.08" class="pct low">35.08%</td>
618
+ <td data-value="57" class="abs low">20/57</td>
304
619
  </tr>
305
620
 
306
621
  <tr>
307
- <td class="file empty" data-value="integrations/tests"><a href="integrations/tests/index.html">integrations/tests</a></td>
622
+ <td class="file empty" data-value="src/integrations/tests"><a href="src/integrations/tests/index.html">src/integrations/tests</a></td>
308
623
  <td data-value="0" class="pic empty">
309
624
  <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
310
625
  </td>
@@ -319,74 +634,299 @@
319
634
  </tr>
320
635
 
321
636
  <tr>
322
- <td class="file medium" data-value="middleware"><a href="middleware/index.html">middleware</a></td>
323
- <td data-value="75.8" class="pic medium">
324
- <div class="chart"><div class="cover-fill" style="width: 75%"></div><div class="cover-empty" style="width: 25%"></div></div>
637
+ <td class="file medium" data-value="src/middleware"><a href="src/middleware/index.html">src/middleware</a></td>
638
+ <td data-value="77.77" class="pic medium">
639
+ <div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
325
640
  </td>
326
- <td data-value="75.8" class="pct medium">75.8%</td>
327
- <td data-value="186" class="abs medium">141/186</td>
328
- <td data-value="71.65" class="pct medium">71.65%</td>
329
- <td data-value="127" class="abs medium">91/127</td>
330
- <td data-value="84" class="pct high">84%</td>
331
- <td data-value="25" class="abs high">21/25</td>
332
- <td data-value="75.8" class="pct medium">75.8%</td>
333
- <td data-value="186" class="abs medium">141/186</td>
641
+ <td data-value="77.77" class="pct medium">77.77%</td>
642
+ <td data-value="234" class="abs medium">182/234</td>
643
+ <td data-value="72.18" class="pct medium">72.18%</td>
644
+ <td data-value="151" class="abs medium">109/151</td>
645
+ <td data-value="87.5" class="pct high">87.5%</td>
646
+ <td data-value="40" class="abs high">35/40</td>
647
+ <td data-value="77.19" class="pct medium">77.19%</td>
648
+ <td data-value="228" class="abs medium">176/228</td>
334
649
  </tr>
335
650
 
336
651
  <tr>
337
- <td class="file medium" data-value="utilities"><a href="utilities/index.html">utilities</a></td>
338
- <td data-value="73.95" class="pic medium">
339
- <div class="chart"><div class="cover-fill" style="width: 73%"></div><div class="cover-empty" style="width: 27%"></div></div>
652
+ <td class="file high" data-value="src/migrations"><a href="src/migrations/index.html">src/migrations</a></td>
653
+ <td data-value="80.48" class="pic high">
654
+ <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
340
655
  </td>
341
- <td data-value="73.95" class="pct medium">73.95%</td>
342
- <td data-value="384" class="abs medium">284/384</td>
343
- <td data-value="59.14" class="pct medium">59.14%</td>
344
- <td data-value="164" class="abs medium">97/164</td>
345
- <td data-value="73.97" class="pct medium">73.97%</td>
346
- <td data-value="73" class="abs medium">54/73</td>
347
- <td data-value="73.74" class="pct medium">73.74%</td>
348
- <td data-value="377" class="abs medium">278/377</td>
656
+ <td data-value="80.48" class="pct high">80.48%</td>
657
+ <td data-value="41" class="abs high">33/41</td>
658
+ <td data-value="77.77" class="pct medium">77.77%</td>
659
+ <td data-value="9" class="abs medium">7/9</td>
660
+ <td data-value="14.28" class="pct low">14.28%</td>
661
+ <td data-value="7" class="abs low">1/7</td>
662
+ <td data-value="83.78" class="pct high">83.78%</td>
663
+ <td data-value="37" class="abs high">31/37</td>
349
664
  </tr>
350
665
 
351
666
  <tr>
352
- <td class="file low" data-value="utilities/queue"><a href="utilities/queue/index.html">utilities/queue</a></td>
353
- <td data-value="0" class="pic low">
354
- <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
667
+ <td class="file high" data-value="src/migrations/functions"><a href="src/migrations/functions/index.html">src/migrations/functions</a></td>
668
+ <td data-value="92.59" class="pic high">
669
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
355
670
  </td>
356
- <td data-value="0" class="pct low">0%</td>
357
- <td data-value="23" class="abs low">0/23</td>
358
- <td data-value="0" class="pct low">0%</td>
359
- <td data-value="7" class="abs low">0/7</td>
360
- <td data-value="0" class="pct low">0%</td>
361
- <td data-value="12" class="abs low">0/12</td>
362
- <td data-value="0" class="pct low">0%</td>
363
- <td data-value="23" class="abs low">0/23</td>
671
+ <td data-value="92.59" class="pct high">92.59%</td>
672
+ <td data-value="81" class="abs high">75/81</td>
673
+ <td data-value="85.29" class="pct high">85.29%</td>
674
+ <td data-value="34" class="abs high">29/34</td>
675
+ <td data-value="100" class="pct high">100%</td>
676
+ <td data-value="14" class="abs high">14/14</td>
677
+ <td data-value="91.66" class="pct high">91.66%</td>
678
+ <td data-value="72" class="abs high">66/72</td>
679
+ </tr>
680
+
681
+ <tr>
682
+ <td class="file medium" data-value="src/migrations/functions/backfill"><a href="src/migrations/functions/backfill/index.html">src/migrations/functions/backfill</a></td>
683
+ <td data-value="69.23" class="pic medium">
684
+ <div class="chart"><div class="cover-fill" style="width: 69%"></div><div class="cover-empty" style="width: 31%"></div></div>
685
+ </td>
686
+ <td data-value="69.23" class="pct medium">69.23%</td>
687
+ <td data-value="195" class="abs medium">135/195</td>
688
+ <td data-value="54.28" class="pct medium">54.28%</td>
689
+ <td data-value="35" class="abs medium">19/35</td>
690
+ <td data-value="57.14" class="pct medium">57.14%</td>
691
+ <td data-value="21" class="abs medium">12/21</td>
692
+ <td data-value="68.64" class="pct medium">68.64%</td>
693
+ <td data-value="185" class="abs medium">127/185</td>
364
694
  </tr>
365
695
 
366
696
  <tr>
367
- <td class="file high" data-value="utilities/routing"><a href="utilities/routing/index.html">utilities/routing</a></td>
697
+ <td class="file high" data-value="src/migrations/functions/backfill/app"><a href="src/migrations/functions/backfill/app/index.html">src/migrations/functions/backfill/app</a></td>
698
+ <td data-value="96.46" class="pic high">
699
+ <div class="chart"><div class="cover-fill" style="width: 96%"></div><div class="cover-empty" style="width: 4%"></div></div>
700
+ </td>
701
+ <td data-value="96.46" class="pct high">96.46%</td>
702
+ <td data-value="113" class="abs high">109/113</td>
703
+ <td data-value="66.66" class="pct medium">66.66%</td>
704
+ <td data-value="12" class="abs medium">8/12</td>
705
+ <td data-value="100" class="pct high">100%</td>
706
+ <td data-value="34" class="abs high">34/34</td>
707
+ <td data-value="95.4" class="pct high">95.4%</td>
708
+ <td data-value="87" class="abs high">83/87</td>
709
+ </tr>
710
+
711
+ <tr>
712
+ <td class="file high" data-value="src/migrations/functions/backfill/global"><a href="src/migrations/functions/backfill/global/index.html">src/migrations/functions/backfill/global</a></td>
713
+ <td data-value="97.97" class="pic high">
714
+ <div class="chart"><div class="cover-fill" style="width: 97%"></div><div class="cover-empty" style="width: 3%"></div></div>
715
+ </td>
716
+ <td data-value="97.97" class="pct high">97.97%</td>
717
+ <td data-value="99" class="abs high">97/99</td>
718
+ <td data-value="90.32" class="pct high">90.32%</td>
719
+ <td data-value="31" class="abs high">28/31</td>
720
+ <td data-value="94.44" class="pct high">94.44%</td>
721
+ <td data-value="18" class="abs high">17/18</td>
722
+ <td data-value="97.77" class="pct high">97.77%</td>
723
+ <td data-value="90" class="abs high">88/90</td>
724
+ </tr>
725
+
726
+ <tr>
727
+ <td class="file high" data-value="src/migrations/functions/usageQuotas"><a href="src/migrations/functions/usageQuotas/index.html">src/migrations/functions/usageQuotas</a></td>
728
+ <td data-value="90.47" class="pic high">
729
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
730
+ </td>
731
+ <td data-value="90.47" class="pct high">90.47%</td>
732
+ <td data-value="42" class="abs high">38/42</td>
733
+ <td data-value="50" class="pct medium">50%</td>
734
+ <td data-value="4" class="abs medium">2/4</td>
735
+ <td data-value="80" class="pct high">80%</td>
736
+ <td data-value="10" class="abs high">8/10</td>
737
+ <td data-value="90.9" class="pct high">90.9%</td>
738
+ <td data-value="33" class="abs high">30/33</td>
739
+ </tr>
740
+
741
+ <tr>
742
+ <td class="file high" data-value="src/migrations/tests"><a href="src/migrations/tests/index.html">src/migrations/tests</a></td>
743
+ <td data-value="100" class="pic high">
744
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
745
+ </td>
746
+ <td data-value="100" class="pct high">100%</td>
747
+ <td data-value="45" class="abs high">45/45</td>
748
+ <td data-value="100" class="pct high">100%</td>
749
+ <td data-value="1" class="abs high">1/1</td>
750
+ <td data-value="100" class="pct high">100%</td>
751
+ <td data-value="14" class="abs high">14/14</td>
752
+ <td data-value="100" class="pct high">100%</td>
753
+ <td data-value="32" class="abs high">32/32</td>
754
+ </tr>
755
+
756
+ <tr>
757
+ <td class="file high" data-value="src/sdk"><a href="src/sdk/index.html">src/sdk</a></td>
368
758
  <td data-value="100" class="pic high">
369
759
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
370
760
  </td>
371
761
  <td data-value="100" class="pct high">100%</td>
372
- <td data-value="10" class="abs high">10/10</td>
762
+ <td data-value="7" class="abs high">7/7</td>
373
763
  <td data-value="100" class="pct high">100%</td>
374
764
  <td data-value="0" class="abs high">0/0</td>
375
765
  <td data-value="100" class="pct high">100%</td>
376
- <td data-value="2" class="abs high">2/2</td>
766
+ <td data-value="0" class="abs high">0/0</td>
767
+ <td data-value="100" class="pct high">100%</td>
768
+ <td data-value="7" class="abs high">7/7</td>
769
+ </tr>
770
+
771
+ <tr>
772
+ <td class="file high" data-value="src/sdk/app/applications"><a href="src/sdk/app/applications/index.html">src/sdk/app/applications</a></td>
773
+ <td data-value="86.84" class="pic high">
774
+ <div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
775
+ </td>
776
+ <td data-value="86.84" class="pct high">86.84%</td>
777
+ <td data-value="38" class="abs high">33/38</td>
778
+ <td data-value="73.33" class="pct medium">73.33%</td>
779
+ <td data-value="30" class="abs medium">22/30</td>
780
+ <td data-value="100" class="pct high">100%</td>
781
+ <td data-value="3" class="abs high">3/3</td>
782
+ <td data-value="86.84" class="pct high">86.84%</td>
783
+ <td data-value="38" class="abs high">33/38</td>
784
+ </tr>
785
+
786
+ <tr>
787
+ <td class="file high" data-value="src/sdk/app/automations"><a href="src/sdk/app/automations/index.html">src/sdk/app/automations</a></td>
788
+ <td data-value="90" class="pic high">
789
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
790
+ </td>
791
+ <td data-value="90" class="pct high">90%</td>
792
+ <td data-value="20" class="abs high">18/20</td>
793
+ <td data-value="57.14" class="pct medium">57.14%</td>
794
+ <td data-value="7" class="abs medium">4/7</td>
795
+ <td data-value="100" class="pct high">100%</td>
796
+ <td data-value="4" class="abs high">4/4</td>
797
+ <td data-value="90" class="pct high">90%</td>
798
+ <td data-value="20" class="abs high">18/20</td>
799
+ </tr>
800
+
801
+ <tr>
802
+ <td class="file low" data-value="src/sdk/app/backups"><a href="src/sdk/app/backups/index.html">src/sdk/app/backups</a></td>
803
+ <td data-value="46.91" class="pic low">
804
+ <div class="chart"><div class="cover-fill" style="width: 46%"></div><div class="cover-empty" style="width: 54%"></div></div>
805
+ </td>
806
+ <td data-value="46.91" class="pct low">46.91%</td>
807
+ <td data-value="211" class="abs low">99/211</td>
808
+ <td data-value="51.25" class="pct medium">51.25%</td>
809
+ <td data-value="80" class="abs medium">41/80</td>
810
+ <td data-value="35" class="pct low">35%</td>
811
+ <td data-value="40" class="abs low">14/40</td>
812
+ <td data-value="47.29" class="pct low">47.29%</td>
813
+ <td data-value="203" class="abs low">96/203</td>
814
+ </tr>
815
+
816
+ <tr>
817
+ <td class="file medium" data-value="src/sdk/app/tables"><a href="src/sdk/app/tables/index.html">src/sdk/app/tables</a></td>
818
+ <td data-value="52.17" class="pic medium">
819
+ <div class="chart"><div class="cover-fill" style="width: 52%"></div><div class="cover-empty" style="width: 48%"></div></div>
820
+ </td>
821
+ <td data-value="52.17" class="pct medium">52.17%</td>
822
+ <td data-value="23" class="abs medium">12/23</td>
823
+ <td data-value="50" class="pct medium">50%</td>
824
+ <td data-value="8" class="abs medium">4/8</td>
825
+ <td data-value="60" class="pct medium">60%</td>
826
+ <td data-value="5" class="abs medium">3/5</td>
827
+ <td data-value="50" class="pct medium">50%</td>
828
+ <td data-value="22" class="abs medium">11/22</td>
829
+ </tr>
830
+
831
+ <tr>
832
+ <td class="file high" data-value="src/sdk/users"><a href="src/sdk/users/index.html">src/sdk/users</a></td>
833
+ <td data-value="100" class="pic high">
834
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
835
+ </td>
836
+ <td data-value="100" class="pct high">100%</td>
837
+ <td data-value="32" class="abs high">32/32</td>
838
+ <td data-value="87.5" class="pct high">87.5%</td>
839
+ <td data-value="8" class="abs high">7/8</td>
840
+ <td data-value="100" class="pct high">100%</td>
841
+ <td data-value="5" class="abs high">5/5</td>
842
+ <td data-value="100" class="pct high">100%</td>
843
+ <td data-value="32" class="abs high">32/32</td>
844
+ </tr>
845
+
846
+ <tr>
847
+ <td class="file high" data-value="src/tests/utilities"><a href="src/tests/utilities/index.html">src/tests/utilities</a></td>
848
+ <td data-value="94.69" class="pic high">
849
+ <div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
850
+ </td>
851
+ <td data-value="94.69" class="pct high">94.69%</td>
852
+ <td data-value="283" class="abs high">268/283</td>
853
+ <td data-value="84.03" class="pct high">84.03%</td>
854
+ <td data-value="119" class="abs high">100/119</td>
855
+ <td data-value="94.87" class="pct high">94.87%</td>
856
+ <td data-value="78" class="abs high">74/78</td>
857
+ <td data-value="94.56" class="pct high">94.56%</td>
858
+ <td data-value="276" class="abs high">261/276</td>
859
+ </tr>
860
+
861
+ <tr>
862
+ <td class="file medium" data-value="src/threads"><a href="src/threads/index.html">src/threads</a></td>
863
+ <td data-value="56.66" class="pic medium">
864
+ <div class="chart"><div class="cover-fill" style="width: 56%"></div><div class="cover-empty" style="width: 44%"></div></div>
865
+ </td>
866
+ <td data-value="56.66" class="pct medium">56.66%</td>
867
+ <td data-value="450" class="abs medium">255/450</td>
868
+ <td data-value="32.96" class="pct low">32.96%</td>
869
+ <td data-value="179" class="abs low">59/179</td>
870
+ <td data-value="63.15" class="pct medium">63.15%</td>
871
+ <td data-value="57" class="abs medium">36/57</td>
872
+ <td data-value="56.49" class="pct medium">56.49%</td>
873
+ <td data-value="439" class="abs medium">248/439</td>
874
+ </tr>
875
+
876
+ <tr>
877
+ <td class="file medium" data-value="src/utilities"><a href="src/utilities/index.html">src/utilities</a></td>
878
+ <td data-value="68.44" class="pic medium">
879
+ <div class="chart"><div class="cover-fill" style="width: 68%"></div><div class="cover-empty" style="width: 32%"></div></div>
880
+ </td>
881
+ <td data-value="68.44" class="pct medium">68.44%</td>
882
+ <td data-value="431" class="abs medium">295/431</td>
883
+ <td data-value="56.04" class="pct medium">56.04%</td>
884
+ <td data-value="182" class="abs medium">102/182</td>
885
+ <td data-value="64.28" class="pct medium">64.28%</td>
886
+ <td data-value="84" class="abs medium">54/84</td>
887
+ <td data-value="68.63" class="pct medium">68.63%</td>
888
+ <td data-value="424" class="abs medium">291/424</td>
889
+ </tr>
890
+
891
+ <tr>
892
+ <td class="file low" data-value="src/utilities/fileSystem"><a href="src/utilities/fileSystem/index.html">src/utilities/fileSystem</a></td>
893
+ <td data-value="36.15" class="pic low">
894
+ <div class="chart"><div class="cover-fill" style="width: 36%"></div><div class="cover-empty" style="width: 64%"></div></div>
895
+ </td>
896
+ <td data-value="36.15" class="pct low">36.15%</td>
897
+ <td data-value="177" class="abs low">64/177</td>
898
+ <td data-value="10.81" class="pct low">10.81%</td>
899
+ <td data-value="37" class="abs low">4/37</td>
900
+ <td data-value="26.92" class="pct low">26.92%</td>
901
+ <td data-value="26" class="abs low">7/26</td>
902
+ <td data-value="36.57" class="pct low">36.57%</td>
903
+ <td data-value="175" class="abs low">64/175</td>
904
+ </tr>
905
+
906
+ <tr>
907
+ <td class="file high" data-value="src/utilities/routing"><a href="src/utilities/routing/index.html">src/utilities/routing</a></td>
908
+ <td data-value="100" class="pic high">
909
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
910
+ </td>
377
911
  <td data-value="100" class="pct high">100%</td>
378
912
  <td data-value="9" class="abs high">9/9</td>
913
+ <td data-value="100" class="pct high">100%</td>
914
+ <td data-value="0" class="abs high">0/0</td>
915
+ <td data-value="100" class="pct high">100%</td>
916
+ <td data-value="2" class="abs high">2/2</td>
917
+ <td data-value="100" class="pct high">100%</td>
918
+ <td data-value="8" class="abs high">8/8</td>
379
919
  </tr>
380
920
 
381
921
  <tr>
382
- <td class="file medium" data-value="utilities/rowProcessor"><a href="utilities/rowProcessor/index.html">utilities/rowProcessor</a></td>
922
+ <td class="file medium" data-value="src/utilities/rowProcessor"><a href="src/utilities/rowProcessor/index.html">src/utilities/rowProcessor</a></td>
383
923
  <td data-value="55.8" class="pic medium">
384
924
  <div class="chart"><div class="cover-fill" style="width: 55%"></div><div class="cover-empty" style="width: 45%"></div></div>
385
925
  </td>
386
926
  <td data-value="55.8" class="pct medium">55.8%</td>
387
927
  <td data-value="181" class="abs medium">101/181</td>
388
- <td data-value="44.82" class="pct low">44.82%</td>
389
- <td data-value="145" class="abs low">65/145</td>
928
+ <td data-value="48.33" class="pct low">48.33%</td>
929
+ <td data-value="120" class="abs low">58/120</td>
390
930
  <td data-value="52.17" class="pct medium">52.17%</td>
391
931
  <td data-value="23" class="abs medium">12/23</td>
392
932
  <td data-value="57.8" class="pct medium">57.8%</td>
@@ -394,18 +934,18 @@
394
934
  </tr>
395
935
 
396
936
  <tr>
397
- <td class="file high" data-value="utilities/usageQuota"><a href="utilities/usageQuota/index.html">utilities/usageQuota</a></td>
398
- <td data-value="83.72" class="pic high">
399
- <div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
937
+ <td class="file high" data-value="src/utilities/usageQuota"><a href="src/utilities/usageQuota/index.html">src/utilities/usageQuota</a></td>
938
+ <td data-value="85.71" class="pic high">
939
+ <div class="chart"><div class="cover-fill" style="width: 85%"></div><div class="cover-empty" style="width: 15%"></div></div>
400
940
  </td>
401
- <td data-value="83.72" class="pct high">83.72%</td>
402
- <td data-value="43" class="abs high">36/43</td>
403
- <td data-value="75" class="pct medium">75%</td>
404
- <td data-value="12" class="abs medium">9/12</td>
405
- <td data-value="75" class="pct medium">75%</td>
406
- <td data-value="8" class="abs medium">6/8</td>
407
- <td data-value="83.72" class="pct high">83.72%</td>
408
- <td data-value="43" class="abs high">36/43</td>
941
+ <td data-value="85.71" class="pct high">85.71%</td>
942
+ <td data-value="42" class="abs high">36/42</td>
943
+ <td data-value="87.5" class="pct high">87.5%</td>
944
+ <td data-value="8" class="abs high">7/8</td>
945
+ <td data-value="77.77" class="pct medium">77.77%</td>
946
+ <td data-value="9" class="abs medium">7/9</td>
947
+ <td data-value="85.36" class="pct high">85.36%</td>
948
+ <td data-value="41" class="abs high">35/41</td>
409
949
  </tr>
410
950
 
411
951
  </tbody>
@@ -416,7 +956,7 @@
416
956
  <div class='footer quiet pad2 space-top1 center small'>
417
957
  Code coverage generated by
418
958
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
419
- at Tue Dec 06 2022 14:43:08 GMT+0000 (Coordinated Universal Time)
959
+ at Fri Dec 09 2022 13:50:48 GMT+0000 (Coordinated Universal Time)
420
960
  </div>
421
961
  <script src="prettify.js"></script>
422
962
  <script>