@budibase/server 1.0.80-alpha.3 → 1.0.80

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 (316) hide show
  1. package/__mocks__/node-fetch.ts +0 -1
  2. package/builder/assets/index.22a39cc9.js +1352 -0
  3. package/builder/assets/{index.c57242d4.css → index.c8d1e8f0.css} +2 -2
  4. package/builder/assets/{vendor.a7c6ad0a.js → vendor.20f80cec.js} +216 -190
  5. package/builder/index.html +3 -3
  6. package/coverage/clover.xml +2327 -2390
  7. package/coverage/coverage-final.json +137 -138
  8. package/coverage/lcov-report/api/controllers/analytics.js.html +6 -6
  9. package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
  10. package/coverage/lcov-report/api/controllers/application.js.html +149 -152
  11. package/coverage/lcov-report/api/controllers/auth.js.html +7 -7
  12. package/coverage/lcov-report/api/controllers/automation.js.html +21 -21
  13. package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
  14. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -11
  15. package/coverage/lcov-report/api/controllers/component.js.html +5 -5
  16. package/coverage/lcov-report/api/controllers/datasource.js.html +16 -16
  17. package/coverage/lcov-report/api/controllers/dev.js.html +19 -19
  18. package/coverage/lcov-report/api/controllers/index.html +16 -16
  19. package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
  20. package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
  21. package/coverage/lcov-report/api/controllers/metadata.js.html +9 -9
  22. package/coverage/lcov-report/api/controllers/migrations.js.html +4 -4
  23. package/coverage/lcov-report/api/controllers/permission.js.html +15 -15
  24. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  25. package/coverage/lcov-report/api/controllers/query/index.js.html +26 -26
  26. package/coverage/lcov-report/api/controllers/query/validation.js.html +10 -10
  27. package/coverage/lcov-report/api/controllers/role.js.html +9 -9
  28. package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
  29. package/coverage/lcov-report/api/controllers/row/external.js.html +16 -16
  30. package/coverage/lcov-report/api/controllers/row/index.html +27 -27
  31. package/coverage/lcov-report/api/controllers/row/index.js.html +46 -46
  32. package/coverage/lcov-report/api/controllers/row/internal.js.html +82 -94
  33. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +204 -204
  34. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -24
  35. package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -29
  36. package/coverage/lcov-report/api/controllers/screen.js.html +7 -7
  37. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  38. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +49 -49
  39. package/coverage/lcov-report/api/controllers/table/external.js.html +12 -12
  40. package/coverage/lcov-report/api/controllers/table/index.html +11 -11
  41. package/coverage/lcov-report/api/controllers/table/index.js.html +44 -47
  42. package/coverage/lcov-report/api/controllers/table/internal.js.html +50 -50
  43. package/coverage/lcov-report/api/controllers/table/utils.js.html +80 -80
  44. package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
  45. package/coverage/lcov-report/api/controllers/user.js.html +19 -19
  46. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  47. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  48. package/coverage/lcov-report/api/controllers/view/index.js.html +14 -14
  49. package/coverage/lcov-report/api/controllers/view/utils.js.html +12 -12
  50. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  51. package/coverage/lcov-report/api/controllers/webhook.js.html +27 -18
  52. package/coverage/lcov-report/api/index.html +10 -10
  53. package/coverage/lcov-report/api/index.js.html +28 -37
  54. package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
  55. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
  56. package/coverage/lcov-report/api/routes/application.js.html +9 -9
  57. package/coverage/lcov-report/api/routes/auth.js.html +6 -6
  58. package/coverage/lcov-report/api/routes/automation.js.html +109 -19
  59. package/coverage/lcov-report/api/routes/backup.js.html +8 -8
  60. package/coverage/lcov-report/api/routes/cloud.js.html +8 -8
  61. package/coverage/lcov-report/api/routes/component.js.html +8 -8
  62. package/coverage/lcov-report/api/routes/datasource.js.html +156 -18
  63. package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
  64. package/coverage/lcov-report/api/routes/dev.js.html +13 -13
  65. package/coverage/lcov-report/api/routes/index.html +35 -35
  66. package/coverage/lcov-report/api/routes/index.js.html +32 -38
  67. package/coverage/lcov-report/api/routes/integration.js.html +8 -8
  68. package/coverage/lcov-report/api/routes/layout.js.html +8 -8
  69. package/coverage/lcov-report/api/routes/metadata.js.html +9 -9
  70. package/coverage/lcov-report/api/routes/migrations.js.html +7 -7
  71. package/coverage/lcov-report/api/routes/permission.js.html +58 -16
  72. package/coverage/lcov-report/api/routes/query.js.html +10 -10
  73. package/coverage/lcov-report/api/routes/role.js.html +78 -15
  74. package/coverage/lcov-report/api/routes/routing.js.html +8 -8
  75. package/coverage/lcov-report/api/routes/row.js.html +14 -17
  76. package/coverage/lcov-report/api/routes/screen.js.html +95 -14
  77. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/static.js.html +13 -13
  79. package/coverage/lcov-report/api/routes/table.js.html +62 -17
  80. package/coverage/lcov-report/api/routes/templates.js.html +8 -8
  81. package/coverage/lcov-report/api/routes/user.js.html +8 -8
  82. package/coverage/lcov-report/api/routes/view.js.html +10 -10
  83. package/coverage/lcov-report/api/routes/webhook.js.html +62 -14
  84. package/coverage/lcov-report/automations/actions.js.html +24 -24
  85. package/coverage/lcov-report/automations/automationUtils.js.html +5 -5
  86. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  87. package/coverage/lcov-report/automations/index.html +1 -1
  88. package/coverage/lcov-report/automations/index.js.html +7 -7
  89. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  90. package/coverage/lcov-report/automations/steps/createRow.js.html +7 -7
  91. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  92. package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
  93. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  94. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  95. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  96. package/coverage/lcov-report/automations/steps/filter.js.html +9 -12
  97. package/coverage/lcov-report/automations/steps/index.html +1 -1
  98. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  99. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  100. package/coverage/lcov-report/automations/steps/queryRows.js.html +11 -11
  101. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  102. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  103. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  104. package/coverage/lcov-report/automations/steps/updateRow.js.html +6 -6
  105. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  106. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  107. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  108. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  109. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  111. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  112. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  113. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  114. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  115. package/coverage/lcov-report/automations/triggers.js.html +26 -26
  116. package/coverage/lcov-report/automations/utils.js.html +35 -35
  117. package/coverage/lcov-report/constants/index.html +5 -5
  118. package/coverage/lcov-report/constants/index.js.html +28 -40
  119. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  120. package/coverage/lcov-report/constants/screens.js.html +4 -4
  121. package/coverage/lcov-report/db/client.js.html +18 -18
  122. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  123. package/coverage/lcov-report/db/index.html +15 -15
  124. package/coverage/lcov-report/db/index.js.html +3 -3
  125. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +21 -21
  126. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  127. package/coverage/lcov-report/db/linkedRows/index.js.html +36 -36
  128. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +30 -30
  129. package/coverage/lcov-report/db/newid.js.html +4 -4
  130. package/coverage/lcov-report/db/utils.js.html +87 -123
  131. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  132. package/coverage/lcov-report/events/index.html +1 -1
  133. package/coverage/lcov-report/events/index.js.html +8 -8
  134. package/coverage/lcov-report/events/utils.js.html +18 -18
  135. package/coverage/lcov-report/index.html +74 -89
  136. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  137. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  138. package/coverage/lcov-report/middleware/appInfo.js.html +5 -5
  139. package/coverage/lcov-report/middleware/authorized.js.html +29 -29
  140. package/coverage/lcov-report/middleware/builder.js.html +16 -16
  141. package/coverage/lcov-report/middleware/currentapp.js.html +44 -44
  142. package/coverage/lcov-report/middleware/index.html +1 -1
  143. package/coverage/lcov-report/middleware/joi-validator.js.html +14 -14
  144. package/coverage/lcov-report/middleware/resourceId.js.html +29 -29
  145. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  146. package/coverage/lcov-report/middleware/usageQuota.js.html +17 -17
  147. package/coverage/lcov-report/middleware/utils.js.html +4 -4
  148. package/coverage/lcov-report/threads/automation.js.html +1 -1
  149. package/coverage/lcov-report/threads/index.html +19 -19
  150. package/coverage/lcov-report/threads/index.js.html +10 -10
  151. package/coverage/lcov-report/threads/query.js.html +39 -123
  152. package/coverage/lcov-report/threads/utils.js.html +14 -14
  153. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  154. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  155. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  156. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  157. package/coverage/lcov-report/utilities/global.js.html +28 -28
  158. package/coverage/lcov-report/utilities/index.html +18 -18
  159. package/coverage/lcov-report/utilities/index.js.html +24 -24
  160. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +9 -9
  161. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  162. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  163. package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
  164. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  165. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +60 -60
  166. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +13 -13
  167. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  168. package/coverage/lcov-report/utilities/security.js.html +8 -8
  169. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  170. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  171. package/coverage/lcov-report/utilities/usageQuota/index.js.html +12 -12
  172. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +8 -8
  173. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  174. package/coverage/lcov-report/utilities/users.js.html +5 -5
  175. package/coverage/lcov-report/utilities/workerRequests.js.html +53 -200
  176. package/coverage/lcov.info +3233 -3332
  177. package/dist/api/controllers/application.js +0 -1
  178. package/dist/api/controllers/row/internal.js +1 -4
  179. package/dist/api/controllers/table/index.js +1 -2
  180. package/dist/api/controllers/webhook.js +5 -3
  181. package/dist/api/index.js +1 -3
  182. package/dist/api/routes/automation.js +31 -3
  183. package/dist/api/routes/datasource.js +50 -3
  184. package/dist/api/routes/index.js +0 -2
  185. package/dist/api/routes/permission.js +14 -4
  186. package/dist/api/routes/role.js +19 -3
  187. package/dist/api/routes/row.js +4 -3
  188. package/dist/api/routes/screen.js +23 -2
  189. package/dist/api/routes/table.js +17 -3
  190. package/dist/api/routes/tests/utilities/index.js +0 -23
  191. package/dist/api/routes/webhook.js +17 -2
  192. package/dist/automations/steps/filter.js +2 -2
  193. package/dist/automations/steps/queryRows.js +1 -1
  194. package/dist/automations/utils.js +2 -2
  195. package/dist/constants/index.js +0 -3
  196. package/dist/db/utils.js +0 -11
  197. package/dist/environment.js +0 -1
  198. package/dist/integrations/base/sql.js +1 -16
  199. package/dist/integrations/base/sqlTable.js +4 -8
  200. package/dist/integrations/googlesheets.js +0 -3
  201. package/dist/integrations/microsoftSqlServer.js +43 -60
  202. package/dist/integrations/mysql.js +0 -3
  203. package/dist/integrations/oracle.js +19 -14
  204. package/dist/integrations/postgres.js +28 -34
  205. package/dist/integrations/utils.js +15 -32
  206. package/dist/package.json +7 -11
  207. package/dist/tests/utilities/TestConfiguration.js +8 -25
  208. package/dist/threads/query.js +8 -33
  209. package/dist/tsconfig.tsbuildinfo +1 -1
  210. package/dist/utilities/workerRequests.js +15 -50
  211. package/package.json +8 -12
  212. package/scripts/integrations/mssql/data/setup.sql +1 -18
  213. package/scripts/integrations/oracle/oracle.md +2 -2
  214. package/scripts/integrations/postgres/init.sql +3 -11
  215. package/scripts/likeCypress.ts +6 -9
  216. package/scripts/proxy/generateProxyConfig.js +70 -0
  217. package/src/api/controllers/application.js +0 -1
  218. package/src/api/controllers/row/ExternalRequest.ts +1 -1
  219. package/src/api/controllers/row/internal.js +0 -4
  220. package/src/api/controllers/table/index.js +1 -2
  221. package/src/api/controllers/webhook.js +6 -3
  222. package/src/api/index.js +1 -4
  223. package/src/api/routes/automation.js +33 -3
  224. package/src/api/routes/datasource.js +52 -6
  225. package/src/api/routes/index.js +0 -2
  226. package/src/api/routes/permission.js +18 -4
  227. package/src/api/routes/role.js +24 -3
  228. package/src/api/routes/row.js +2 -3
  229. package/src/api/routes/screen.js +29 -2
  230. package/src/api/routes/table.js +19 -4
  231. package/src/api/routes/tests/utilities/index.js +0 -24
  232. package/src/api/routes/webhook.js +18 -2
  233. package/src/automations/steps/filter.js +2 -3
  234. package/src/automations/steps/queryRows.js +1 -1
  235. package/src/automations/utils.js +2 -2
  236. package/src/constants/index.js +0 -4
  237. package/src/db/utils.js +0 -12
  238. package/src/definitions/common.ts +0 -4
  239. package/src/definitions/datasource.ts +0 -1
  240. package/src/environment.js +0 -1
  241. package/src/integrations/base/datasourcePlus.ts +0 -3
  242. package/src/integrations/base/sql.ts +1 -16
  243. package/src/integrations/base/sqlTable.ts +7 -11
  244. package/src/integrations/googlesheets.ts +2 -5
  245. package/src/integrations/microsoftSqlServer.ts +61 -86
  246. package/src/integrations/mysql.ts +0 -4
  247. package/src/integrations/oracle.ts +35 -27
  248. package/src/integrations/postgres.ts +26 -33
  249. package/src/integrations/utils.ts +15 -43
  250. package/src/tests/utilities/TestConfiguration.js +2 -23
  251. package/src/threads/query.js +9 -37
  252. package/src/utilities/workerRequests.js +16 -65
  253. package/builder/assets/index.f8c92447.js +0 -1288
  254. package/coverage/lcov-report/api/routes/utils/index.html +0 -111
  255. package/coverage/lcov-report/api/routes/utils/validators.js.html +0 -737
  256. package/dist/api/controllers/public/applications.js +0 -94
  257. package/dist/api/controllers/public/mapping/applications.js +0 -29
  258. package/dist/api/controllers/public/mapping/index.js +0 -11
  259. package/dist/api/controllers/public/mapping/queries.js +0 -36
  260. package/dist/api/controllers/public/mapping/rows.js +0 -24
  261. package/dist/api/controllers/public/mapping/tables.js +0 -23
  262. package/dist/api/controllers/public/mapping/types.js +0 -2
  263. package/dist/api/controllers/public/mapping/users.js +0 -29
  264. package/dist/api/controllers/public/queries.js +0 -38
  265. package/dist/api/controllers/public/rows.js +0 -97
  266. package/dist/api/controllers/public/tables.js +0 -75
  267. package/dist/api/controllers/public/users.js +0 -95
  268. package/dist/api/controllers/public/utils.js +0 -49
  269. package/dist/api/routes/public/applications.js +0 -141
  270. package/dist/api/routes/public/index.js +0 -101
  271. package/dist/api/routes/public/middleware/mapper.js +0 -94
  272. package/dist/api/routes/public/queries.js +0 -77
  273. package/dist/api/routes/public/rows.js +0 -229
  274. package/dist/api/routes/public/tables.js +0 -154
  275. package/dist/api/routes/public/users.js +0 -137
  276. package/dist/api/routes/public/utils/Endpoint.js +0 -36
  277. package/dist/api/routes/utils/validators.js +0 -200
  278. package/dist/definitions/openapi.js +0 -6
  279. package/specs/generate.js +0 -94
  280. package/specs/openapi.json +0 -2232
  281. package/specs/openapi.yaml +0 -1538
  282. package/specs/parameters.js +0 -59
  283. package/specs/resources/application.js +0 -101
  284. package/specs/resources/index.js +0 -24
  285. package/specs/resources/misc.js +0 -12
  286. package/specs/resources/query.js +0 -189
  287. package/specs/resources/row.js +0 -125
  288. package/specs/resources/table.js +0 -191
  289. package/specs/resources/user.js +0 -126
  290. package/specs/resources/utils/Resource.js +0 -26
  291. package/specs/resources/utils/index.js +0 -11
  292. package/specs/security.js +0 -7
  293. package/src/api/controllers/public/applications.ts +0 -74
  294. package/src/api/controllers/public/mapping/applications.ts +0 -32
  295. package/src/api/controllers/public/mapping/index.ts +0 -13
  296. package/src/api/controllers/public/mapping/queries.ts +0 -39
  297. package/src/api/controllers/public/mapping/rows.ts +0 -31
  298. package/src/api/controllers/public/mapping/tables.ts +0 -26
  299. package/src/api/controllers/public/mapping/types.ts +0 -13
  300. package/src/api/controllers/public/mapping/users.ts +0 -32
  301. package/src/api/controllers/public/queries.ts +0 -20
  302. package/src/api/controllers/public/rows.ts +0 -77
  303. package/src/api/controllers/public/tables.ts +0 -56
  304. package/src/api/controllers/public/users.ts +0 -82
  305. package/src/api/controllers/public/utils.ts +0 -38
  306. package/src/api/routes/public/applications.ts +0 -156
  307. package/src/api/routes/public/index.ts +0 -118
  308. package/src/api/routes/public/middleware/mapper.ts +0 -81
  309. package/src/api/routes/public/queries.ts +0 -81
  310. package/src/api/routes/public/rows.ts +0 -242
  311. package/src/api/routes/public/tables.ts +0 -169
  312. package/src/api/routes/public/tests/compare.spec.js +0 -184
  313. package/src/api/routes/public/users.ts +0 -144
  314. package/src/api/routes/public/utils/Endpoint.ts +0 -51
  315. package/src/api/routes/utils/validators.js +0 -219
  316. package/src/definitions/openapi.ts +0 -943
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>8/8</span>
28
+ <span class='fraction'>10/10</span>
29
29
  </div>
30
30
 
31
31
 
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/0</span>
42
+ <span class='fraction'>1/1</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>8/8</span>
49
+ <span class='fraction'>10/10</span>
50
50
  </div>
51
51
 
52
52
 
@@ -75,35 +75,116 @@
75
75
  <a name='L16'></a><a href='#L16'>16</a>
76
76
  <a name='L17'></a><a href='#L17'>17</a>
77
77
  <a name='L18'></a><a href='#L18'>18</a>
78
- <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
79
- <span class="cline-any cline-yes">24x</span>
80
- <span class="cline-any cline-yes">24x</span>
81
- <span class="cline-any cline-yes">24x</span>
82
- <span class="cline-any cline-yes">24x</span>
78
+ <a name='L19'></a><a href='#L19'>19</a>
79
+ <a name='L20'></a><a href='#L20'>20</a>
80
+ <a name='L21'></a><a href='#L21'>21</a>
81
+ <a name='L22'></a><a href='#L22'>22</a>
82
+ <a name='L23'></a><a href='#L23'>23</a>
83
+ <a name='L24'></a><a href='#L24'>24</a>
84
+ <a name='L25'></a><a href='#L25'>25</a>
85
+ <a name='L26'></a><a href='#L26'>26</a>
86
+ <a name='L27'></a><a href='#L27'>27</a>
87
+ <a name='L28'></a><a href='#L28'>28</a>
88
+ <a name='L29'></a><a href='#L29'>29</a>
89
+ <a name='L30'></a><a href='#L30'>30</a>
90
+ <a name='L31'></a><a href='#L31'>31</a>
91
+ <a name='L32'></a><a href='#L32'>32</a>
92
+ <a name='L33'></a><a href='#L33'>33</a>
93
+ <a name='L34'></a><a href='#L34'>34</a>
94
+ <a name='L35'></a><a href='#L35'>35</a>
95
+ <a name='L36'></a><a href='#L36'>36</a>
96
+ <a name='L37'></a><a href='#L37'>37</a>
97
+ <a name='L38'></a><a href='#L38'>38</a>
98
+ <a name='L39'></a><a href='#L39'>39</a>
99
+ <a name='L40'></a><a href='#L40'>40</a>
100
+ <a name='L41'></a><a href='#L41'>41</a>
101
+ <a name='L42'></a><a href='#L42'>42</a>
102
+ <a name='L43'></a><a href='#L43'>43</a>
103
+ <a name='L44'></a><a href='#L44'>44</a>
104
+ <a name='L45'></a><a href='#L45'>45</a>
105
+ <a name='L46'></a><a href='#L46'>46</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
106
+ <span class="cline-any cline-yes">23x</span>
107
+ <span class="cline-any cline-yes">23x</span>
108
+ <span class="cline-any cline-yes">23x</span>
109
+ <span class="cline-any cline-yes">23x</span>
110
+ <span class="cline-any cline-yes">23x</span>
111
+ <span class="cline-any cline-neutral">&nbsp;</span>
112
+ <span class="cline-any cline-yes">23x</span>
113
+ <span class="cline-any cline-neutral">&nbsp;</span>
114
+ <span class="cline-any cline-neutral">&nbsp;</span>
115
+ <span class="cline-any cline-neutral">&nbsp;</span>
116
+ <span class="cline-any cline-yes">23x</span>
117
+ <span class="cline-any cline-neutral">&nbsp;</span>
118
+ <span class="cline-any cline-neutral">&nbsp;</span>
119
+ <span class="cline-any cline-neutral">&nbsp;</span>
120
+ <span class="cline-any cline-neutral">&nbsp;</span>
121
+ <span class="cline-any cline-neutral">&nbsp;</span>
122
+ <span class="cline-any cline-neutral">&nbsp;</span>
123
+ <span class="cline-any cline-neutral">&nbsp;</span>
124
+ <span class="cline-any cline-neutral">&nbsp;</span>
125
+ <span class="cline-any cline-neutral">&nbsp;</span>
126
+ <span class="cline-any cline-neutral">&nbsp;</span>
83
127
  <span class="cline-any cline-neutral">&nbsp;</span>
84
- <span class="cline-any cline-yes">24x</span>
85
128
  <span class="cline-any cline-neutral">&nbsp;</span>
86
- <span class="cline-any cline-yes">24x</span>
87
129
  <span class="cline-any cline-neutral">&nbsp;</span>
88
130
  <span class="cline-any cline-neutral">&nbsp;</span>
89
131
  <span class="cline-any cline-neutral">&nbsp;</span>
90
132
  <span class="cline-any cline-neutral">&nbsp;</span>
91
133
  <span class="cline-any cline-neutral">&nbsp;</span>
92
134
  <span class="cline-any cline-neutral">&nbsp;</span>
135
+ <span class="cline-any cline-yes">23x</span>
93
136
  <span class="cline-any cline-neutral">&nbsp;</span>
94
137
  <span class="cline-any cline-neutral">&nbsp;</span>
95
- <span class="cline-any cline-yes">24x</span>
138
+ <span class="cline-any cline-neutral">&nbsp;</span>
139
+ <span class="cline-any cline-neutral">&nbsp;</span>
140
+ <span class="cline-any cline-neutral">&nbsp;</span>
141
+ <span class="cline-any cline-neutral">&nbsp;</span>
142
+ <span class="cline-any cline-neutral">&nbsp;</span>
143
+ <span class="cline-any cline-neutral">&nbsp;</span>
144
+ <span class="cline-any cline-neutral">&nbsp;</span>
145
+ <span class="cline-any cline-neutral">&nbsp;</span>
146
+ <span class="cline-any cline-neutral">&nbsp;</span>
147
+ <span class="cline-any cline-neutral">&nbsp;</span>
148
+ <span class="cline-any cline-neutral">&nbsp;</span>
149
+ <span class="cline-any cline-yes">23x</span>
96
150
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
97
151
  const controller = require("../controllers/screen")
98
152
  const authorized = require("../../middleware/authorized")
99
153
  const { BUILDER } = require("@budibase/backend-core/permissions")
100
- const { screenValidator } = require("./utils/validators")
154
+ const joiValidator = require("../../middleware/joi-validator")
155
+ const Joi = require("joi")
101
156
  &nbsp;
102
157
  const router = Router()
103
158
  &nbsp;
159
+ function generateSaveValidation() {
160
+ // prettier-ignore
161
+ return joiValidator.body(Joi.object({
162
+ name: Joi.string().required(),
163
+ routing: Joi.object({
164
+ route: Joi.string().required(),
165
+ roleId: Joi.string().required().allow(""),
166
+ }).required().unknown(true),
167
+ props: Joi.object({
168
+ _id: Joi.string().required(),
169
+ _component: Joi.string().required(),
170
+ _children: Joi.array().required(),
171
+ _instanceName: Joi.string().required(),
172
+ _styles: Joi.object().required(),
173
+ type: Joi.string().optional(),
174
+ table: Joi.string().optional(),
175
+ layoutId: Joi.string().optional(),
176
+ }).required().unknown(true),
177
+ }).unknown(true))
178
+ }
179
+ &nbsp;
104
180
  router
105
181
  .get("/api/screens", authorized(BUILDER), controller.fetch)
106
- .post("/api/screens", authorized(BUILDER), screenValidator(), controller.save)
182
+ .post(
183
+ "/api/screens",
184
+ authorized(BUILDER),
185
+ generateSaveValidation(),
186
+ controller.save
187
+ )
107
188
  .delete(
108
189
  "/api/screens/:screenId/:screenRev",
109
190
  authorized(BUILDER),
@@ -118,7 +199,7 @@ module.exports = router
118
199
  <div class='footer quiet pad2 space-top1 center small'>
119
200
  Code coverage generated by
120
201
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
121
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
202
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
122
203
  </div>
123
204
  </div>
124
205
  <script src="../../prettify.js"></script>
@@ -94,7 +94,7 @@ const router = <span class="cstat-no" title="statement not covered" >Router()</s
94
94
  <div class='footer quiet pad2 space-top1 center small'>
95
95
  Code coverage generated by
96
96
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
97
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
97
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
98
98
  </div>
99
99
  </div>
100
100
  <script src="../../prettify.js"></script>
@@ -112,19 +112,19 @@
112
112
  <a name='L53'></a><a href='#L53'>53</a>
113
113
  <a name='L54'></a><a href='#L54'>54</a>
114
114
  <a name='L55'></a><a href='#L55'>55</a>
115
- <a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
116
- <span class="cline-any cline-yes">24x</span>
117
- <span class="cline-any cline-yes">24x</span>
118
- <span class="cline-any cline-yes">24x</span>
115
+ <a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
116
+ <span class="cline-any cline-yes">23x</span>
117
+ <span class="cline-any cline-yes">23x</span>
118
+ <span class="cline-any cline-yes">23x</span>
119
119
  <span class="cline-any cline-neutral">&nbsp;</span>
120
120
  <span class="cline-any cline-neutral">&nbsp;</span>
121
121
  <span class="cline-any cline-neutral">&nbsp;</span>
122
122
  <span class="cline-any cline-neutral">&nbsp;</span>
123
- <span class="cline-any cline-yes">24x</span>
124
- <span class="cline-any cline-yes">24x</span>
125
- <span class="cline-any cline-yes">24x</span>
123
+ <span class="cline-any cline-yes">23x</span>
124
+ <span class="cline-any cline-yes">23x</span>
125
+ <span class="cline-any cline-yes">23x</span>
126
126
  <span class="cline-any cline-neutral">&nbsp;</span>
127
- <span class="cline-any cline-yes">24x</span>
127
+ <span class="cline-any cline-yes">23x</span>
128
128
  <span class="cline-any cline-neutral">&nbsp;</span>
129
129
  <span class="cline-any cline-neutral">&nbsp;</span>
130
130
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -144,11 +144,11 @@
144
144
  <span class="cline-any cline-neutral">&nbsp;</span>
145
145
  <span class="cline-any cline-neutral">&nbsp;</span>
146
146
  <span class="cline-any cline-neutral">&nbsp;</span>
147
- <span class="cline-any cline-yes">24x</span>
148
- <span class="cline-any cline-yes">24x</span>
147
+ <span class="cline-any cline-yes">23x</span>
148
+ <span class="cline-any cline-yes">23x</span>
149
149
  <span class="cline-any cline-neutral">&nbsp;</span>
150
150
  <span class="cline-any cline-neutral">&nbsp;</span>
151
- <span class="cline-any cline-yes">24x</span>
151
+ <span class="cline-any cline-yes">23x</span>
152
152
  <span class="cline-any cline-neutral">&nbsp;</span>
153
153
  <span class="cline-any cline-neutral">&nbsp;</span>
154
154
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -166,7 +166,7 @@
166
166
  <span class="cline-any cline-neutral">&nbsp;</span>
167
167
  <span class="cline-any cline-neutral">&nbsp;</span>
168
168
  <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-yes">24x</span>
169
+ <span class="cline-any cline-yes">23x</span>
170
170
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
171
171
  const controller = require("../controllers/static")
172
172
  const { budibaseTempDir } = require("../../utilities/budibaseDir")
@@ -229,7 +229,7 @@ module.exports = router
229
229
  <div class='footer quiet pad2 space-top1 center small'>
230
230
  Code coverage generated by
231
231
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
232
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
232
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
233
233
  </div>
234
234
  </div>
235
235
  <script src="../../prettify.js"></script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>9/9</span>
28
+ <span class='fraction'>11/11</span>
29
29
  </div>
30
30
 
31
31
 
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/0</span>
42
+ <span class='fraction'>1/1</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>9/9</span>
49
+ <span class='fraction'>11/11</span>
50
50
  </div>
51
51
 
52
52
 
@@ -253,26 +253,50 @@
253
253
  <a name='L194'></a><a href='#L194'>194</a>
254
254
  <a name='L195'></a><a href='#L195'>195</a>
255
255
  <a name='L196'></a><a href='#L196'>196</a>
256
- <a name='L197'></a><a href='#L197'>197</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
257
- <span class="cline-any cline-yes">24x</span>
258
- <span class="cline-any cline-yes">24x</span>
259
- <span class="cline-any cline-yes">24x</span>
256
+ <a name='L197'></a><a href='#L197'>197</a>
257
+ <a name='L198'></a><a href='#L198'>198</a>
258
+ <a name='L199'></a><a href='#L199'>199</a>
259
+ <a name='L200'></a><a href='#L200'>200</a>
260
+ <a name='L201'></a><a href='#L201'>201</a>
261
+ <a name='L202'></a><a href='#L202'>202</a>
262
+ <a name='L203'></a><a href='#L203'>203</a>
263
+ <a name='L204'></a><a href='#L204'>204</a>
264
+ <a name='L205'></a><a href='#L205'>205</a>
265
+ <a name='L206'></a><a href='#L206'>206</a>
266
+ <a name='L207'></a><a href='#L207'>207</a>
267
+ <a name='L208'></a><a href='#L208'>208</a>
268
+ <a name='L209'></a><a href='#L209'>209</a>
269
+ <a name='L210'></a><a href='#L210'>210</a>
270
+ <a name='L211'></a><a href='#L211'>211</a>
271
+ <a name='L212'></a><a href='#L212'>212</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
272
+ <span class="cline-any cline-yes">23x</span>
273
+ <span class="cline-any cline-yes">23x</span>
274
+ <span class="cline-any cline-yes">23x</span>
275
+ <span class="cline-any cline-neutral">&nbsp;</span>
276
+ <span class="cline-any cline-neutral">&nbsp;</span>
277
+ <span class="cline-any cline-neutral">&nbsp;</span>
278
+ <span class="cline-any cline-neutral">&nbsp;</span>
279
+ <span class="cline-any cline-yes">23x</span>
280
+ <span class="cline-any cline-yes">23x</span>
281
+ <span class="cline-any cline-yes">23x</span>
282
+ <span class="cline-any cline-neutral">&nbsp;</span>
283
+ <span class="cline-any cline-yes">23x</span>
284
+ <span class="cline-any cline-neutral">&nbsp;</span>
285
+ <span class="cline-any cline-neutral">&nbsp;</span>
260
286
  <span class="cline-any cline-neutral">&nbsp;</span>
287
+ <span class="cline-any cline-yes">23x</span>
261
288
  <span class="cline-any cline-neutral">&nbsp;</span>
262
289
  <span class="cline-any cline-neutral">&nbsp;</span>
263
290
  <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-yes">24x</span>
265
- <span class="cline-any cline-yes">24x</span>
266
291
  <span class="cline-any cline-neutral">&nbsp;</span>
267
- <span class="cline-any cline-yes">24x</span>
268
292
  <span class="cline-any cline-neutral">&nbsp;</span>
269
- <span class="cline-any cline-yes">24x</span>
270
293
  <span class="cline-any cline-neutral">&nbsp;</span>
271
294
  <span class="cline-any cline-neutral">&nbsp;</span>
272
295
  <span class="cline-any cline-neutral">&nbsp;</span>
273
296
  <span class="cline-any cline-neutral">&nbsp;</span>
274
297
  <span class="cline-any cline-neutral">&nbsp;</span>
275
298
  <span class="cline-any cline-neutral">&nbsp;</span>
299
+ <span class="cline-any cline-yes">23x</span>
276
300
  <span class="cline-any cline-neutral">&nbsp;</span>
277
301
  <span class="cline-any cline-neutral">&nbsp;</span>
278
302
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -448,7 +472,13 @@
448
472
  <span class="cline-any cline-neutral">&nbsp;</span>
449
473
  <span class="cline-any cline-neutral">&nbsp;</span>
450
474
  <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-yes">24x</span>
475
+ <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-neutral">&nbsp;</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-yes">23x</span>
452
482
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
453
483
  const tableController = require("../controllers/table")
454
484
  const authorized = require("../../middleware/authorized")
@@ -458,10 +488,25 @@ const {
458
488
  PermissionLevels,
459
489
  PermissionTypes,
460
490
  } = require("@budibase/backend-core/permissions")
461
- const { tableValidator } = require("./utils/validators")
491
+ const joiValidator = require("../../middleware/joi-validator")
492
+ const Joi = require("joi")
462
493
  &nbsp;
463
494
  const router = Router()
464
495
  &nbsp;
496
+ function generateSaveValidator() {
497
+ // prettier-ignore
498
+ return joiValidator.body(Joi.object({
499
+ _id: Joi.string(),
500
+ _rev: Joi.string(),
501
+ type: Joi.string().valid("table", "internal", "external"),
502
+ primaryDisplay: Joi.string(),
503
+ schema: Joi.object().required(),
504
+ name: Joi.string().required(),
505
+ views: Joi.object(),
506
+ dataImport: Joi.object(),
507
+ }).unknown(true))
508
+ }
509
+ &nbsp;
465
510
  router
466
511
  /**
467
512
  * @api {get} /api/tables Fetch all tables
@@ -489,8 +534,8 @@ router
489
534
  * @apiSuccess {object[]} body The response body will be the table that was found.
490
535
  */
491
536
  .get(
492
- "/api/tables/:tableId",
493
- paramResource("tableId"),
537
+ "/api/tables/:id",
538
+ paramResource("id"),
494
539
  authorized(PermissionTypes.TABLE, PermissionLevels.READ),
495
540
  tableController.find
496
541
  )
@@ -572,7 +617,7 @@ router
572
617
  // allows control over updating a table
573
618
  bodyResource("_id"),
574
619
  authorized(BUILDER),
575
- tableValidator(),
620
+ generateSaveValidator(),
576
621
  tableController.save
577
622
  )
578
623
  /**
@@ -652,7 +697,7 @@ module.exports = router
652
697
  <div class='footer quiet pad2 space-top1 center small'>
653
698
  Code coverage generated by
654
699
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
655
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
700
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
656
701
  </div>
657
702
  </div>
658
703
  <script src="../../prettify.js"></script>
@@ -73,14 +73,14 @@
73
73
  <a name='L14'></a><a href='#L14'>14</a>
74
74
  <a name='L15'></a><a href='#L15'>15</a>
75
75
  <a name='L16'></a><a href='#L16'>16</a>
76
- <a name='L17'></a><a href='#L17'>17</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
77
- <span class="cline-any cline-yes">24x</span>
78
- <span class="cline-any cline-yes">24x</span>
79
- <span class="cline-any cline-yes">24x</span>
76
+ <a name='L17'></a><a href='#L17'>17</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
77
+ <span class="cline-any cline-yes">23x</span>
78
+ <span class="cline-any cline-yes">23x</span>
79
+ <span class="cline-any cline-yes">23x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span>
81
- <span class="cline-any cline-yes">24x</span>
81
+ <span class="cline-any cline-yes">23x</span>
82
82
  <span class="cline-any cline-neutral">&nbsp;</span>
83
- <span class="cline-any cline-yes">24x</span>
83
+ <span class="cline-any cline-yes">23x</span>
84
84
  <span class="cline-any cline-neutral">&nbsp;</span>
85
85
  <span class="cline-any cline-neutral">&nbsp;</span>
86
86
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -88,7 +88,7 @@
88
88
  <span class="cline-any cline-neutral">&nbsp;</span>
89
89
  <span class="cline-any cline-neutral">&nbsp;</span>
90
90
  <span class="cline-any cline-neutral">&nbsp;</span>
91
- <span class="cline-any cline-yes">24x</span>
91
+ <span class="cline-any cline-yes">23x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
93
93
  const controller = require("../controllers/templates")
94
94
  const authorized = require("../../middleware/authorized")
@@ -112,7 +112,7 @@ module.exports = router
112
112
  <div class='footer quiet pad2 space-top1 center small'>
113
113
  Code coverage generated by
114
114
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
115
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
115
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
116
116
  </div>
117
117
  </div>
118
118
  <script src="../../prettify.js"></script>
@@ -110,17 +110,17 @@
110
110
  <a name='L51'></a><a href='#L51'>51</a>
111
111
  <a name='L52'></a><a href='#L52'>52</a>
112
112
  <a name='L53'></a><a href='#L53'>53</a>
113
- <a name='L54'></a><a href='#L54'>54</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
114
- <span class="cline-any cline-yes">24x</span>
115
- <span class="cline-any cline-yes">24x</span>
113
+ <a name='L54'></a><a href='#L54'>54</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
114
+ <span class="cline-any cline-yes">23x</span>
115
+ <span class="cline-any cline-yes">23x</span>
116
116
  <span class="cline-any cline-neutral">&nbsp;</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
118
118
  <span class="cline-any cline-neutral">&nbsp;</span>
119
- <span class="cline-any cline-yes">24x</span>
119
+ <span class="cline-any cline-yes">23x</span>
120
120
  <span class="cline-any cline-neutral">&nbsp;</span>
121
- <span class="cline-any cline-yes">24x</span>
121
+ <span class="cline-any cline-yes">23x</span>
122
122
  <span class="cline-any cline-neutral">&nbsp;</span>
123
- <span class="cline-any cline-yes">24x</span>
123
+ <span class="cline-any cline-yes">23x</span>
124
124
  <span class="cline-any cline-neutral">&nbsp;</span>
125
125
  <span class="cline-any cline-neutral">&nbsp;</span>
126
126
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -162,7 +162,7 @@
162
162
  <span class="cline-any cline-neutral">&nbsp;</span>
163
163
  <span class="cline-any cline-neutral">&nbsp;</span>
164
164
  <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-yes">24x</span>
165
+ <span class="cline-any cline-yes">23x</span>
166
166
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
167
167
  const controller = require("../controllers/user")
168
168
  const authorized = require("../../middleware/authorized")
@@ -223,7 +223,7 @@ module.exports = router
223
223
  <div class='footer quiet pad2 space-top1 center small'>
224
224
  Code coverage generated by
225
225
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
226
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
226
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
227
227
  </div>
228
228
  </div>
229
229
  <script src="../../prettify.js"></script>
@@ -88,20 +88,20 @@
88
88
  <a name='L29'></a><a href='#L29'>29</a>
89
89
  <a name='L30'></a><a href='#L30'>30</a>
90
90
  <a name='L31'></a><a href='#L31'>31</a>
91
- <a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
92
- <span class="cline-any cline-yes">24x</span>
93
- <span class="cline-any cline-yes">24x</span>
94
- <span class="cline-any cline-yes">24x</span>
95
- <span class="cline-any cline-yes">24x</span>
91
+ <a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
92
+ <span class="cline-any cline-yes">23x</span>
93
+ <span class="cline-any cline-yes">23x</span>
94
+ <span class="cline-any cline-yes">23x</span>
95
+ <span class="cline-any cline-yes">23x</span>
96
96
  <span class="cline-any cline-neutral">&nbsp;</span>
97
97
  <span class="cline-any cline-neutral">&nbsp;</span>
98
98
  <span class="cline-any cline-neutral">&nbsp;</span>
99
99
  <span class="cline-any cline-neutral">&nbsp;</span>
100
- <span class="cline-any cline-yes">24x</span>
100
+ <span class="cline-any cline-yes">23x</span>
101
101
  <span class="cline-any cline-neutral">&nbsp;</span>
102
- <span class="cline-any cline-yes">24x</span>
102
+ <span class="cline-any cline-yes">23x</span>
103
103
  <span class="cline-any cline-neutral">&nbsp;</span>
104
- <span class="cline-any cline-yes">24x</span>
104
+ <span class="cline-any cline-yes">23x</span>
105
105
  <span class="cline-any cline-neutral">&nbsp;</span>
106
106
  <span class="cline-any cline-neutral">&nbsp;</span>
107
107
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -118,7 +118,7 @@
118
118
  <span class="cline-any cline-neutral">&nbsp;</span>
119
119
  <span class="cline-any cline-neutral">&nbsp;</span>
120
120
  <span class="cline-any cline-neutral">&nbsp;</span>
121
- <span class="cline-any cline-yes">24x</span>
121
+ <span class="cline-any cline-yes">23x</span>
122
122
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
123
123
  const viewController = require("../controllers/view")
124
124
  const rowController = require("../controllers/row")
@@ -157,7 +157,7 @@ module.exports = router
157
157
  <div class='footer quiet pad2 space-top1 center small'>
158
158
  Code coverage generated by
159
159
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
160
- at Mon Mar 07 2022 17:22:13 GMT+0000 (Coordinated Universal Time)
160
+ at Tue Mar 08 2022 08:50:56 GMT+0000 (Coordinated Universal Time)
161
161
  </div>
162
162
  </div>
163
163
  <script src="../../prettify.js"></script>