@budibase/server 1.0.49-alpha.6 → 1.0.49

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 (376) hide show
  1. package/__mocks__/arangojs.ts +1 -1
  2. package/__mocks__/aws-sdk.ts +4 -4
  3. package/__mocks__/mongodb.ts +5 -4
  4. package/__mocks__/mssql.ts +3 -3
  5. package/__mocks__/node-fetch.ts +1 -2
  6. package/__mocks__/pg.ts +5 -3
  7. package/builder/assets/{index.1b905242.js → index.2c37968e.js} +231 -234
  8. package/builder/assets/index.39e01193.css +1 -0
  9. package/builder/assets/{vendor.d526bfe8.js → vendor.f9faf6ab.js} +12 -12
  10. package/builder/index.html +3 -3
  11. package/coverage/clover.xml +2816 -3119
  12. package/coverage/coverage-final.json +101 -106
  13. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/application.js.html +152 -257
  16. package/coverage/lcov-report/api/controllers/auth.js.html +13 -22
  17. package/coverage/lcov-report/api/controllers/automation.js.html +69 -39
  18. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -8
  20. package/coverage/lcov-report/api/controllers/component.js.html +16 -13
  21. package/coverage/lcov-report/api/controllers/datasource.js.html +51 -81
  22. package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
  23. package/coverage/lcov-report/{utilities/usageQuota/usageQuoteReset.js.html → api/controllers/hosting.js.html} +48 -36
  24. package/coverage/lcov-report/api/controllers/index.html +76 -76
  25. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  26. package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
  27. package/coverage/lcov-report/api/controllers/metadata.js.html +21 -6
  28. package/coverage/lcov-report/api/controllers/permission.js.html +19 -19
  29. package/coverage/lcov-report/api/controllers/query/index.html +10 -10
  30. package/coverage/lcov-report/api/controllers/query/index.js.html +35 -38
  31. package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
  32. package/coverage/lcov-report/api/controllers/role.js.html +16 -16
  33. package/coverage/lcov-report/api/controllers/routing.js.html +10 -7
  34. package/coverage/lcov-report/api/controllers/row/external.js.html +27 -21
  35. package/coverage/lcov-report/api/controllers/row/index.html +34 -49
  36. package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
  37. package/coverage/lcov-report/api/controllers/row/internal.js.html +226 -118
  38. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +34 -52
  39. package/coverage/lcov-report/api/controllers/row/utils.js.html +62 -47
  40. package/coverage/lcov-report/api/controllers/screen.js.html +21 -15
  41. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  42. package/coverage/lcov-report/api/controllers/table/external.js.html +34 -25
  43. package/coverage/lcov-report/api/controllers/table/index.html +43 -58
  44. package/coverage/lcov-report/api/controllers/table/index.js.html +82 -58
  45. package/coverage/lcov-report/api/controllers/table/internal.js.html +66 -81
  46. package/coverage/lcov-report/api/controllers/table/utils.js.html +110 -218
  47. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  48. package/coverage/lcov-report/api/controllers/user.js.html +50 -47
  49. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  50. package/coverage/lcov-report/api/controllers/view/index.html +16 -16
  51. package/coverage/lcov-report/api/controllers/view/index.js.html +33 -27
  52. package/coverage/lcov-report/api/controllers/view/utils.js.html +20 -35
  53. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  54. package/coverage/lcov-report/api/controllers/webhook.js.html +28 -34
  55. package/coverage/lcov-report/api/index.html +1 -1
  56. package/coverage/lcov-report/api/index.js.html +8 -8
  57. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/{migrations.js.html → hosting.js.html} +14 -17
  69. package/coverage/lcov-report/api/routes/index.html +18 -18
  70. package/coverage/lcov-report/api/routes/index.js.html +3 -3
  71. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  81. package/coverage/lcov-report/api/routes/static.js.html +2 -17
  82. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  83. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  84. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  85. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  86. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  87. package/coverage/lcov-report/automations/actions.js.html +24 -24
  88. package/coverage/lcov-report/automations/automationUtils.js.html +10 -7
  89. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  90. package/coverage/lcov-report/automations/index.html +18 -18
  91. package/coverage/lcov-report/automations/index.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  93. package/coverage/lcov-report/automations/steps/createRow.js.html +22 -13
  94. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  95. package/coverage/lcov-report/automations/steps/deleteRow.js.html +20 -11
  96. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  97. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  98. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  99. package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
  100. package/coverage/lcov-report/automations/steps/index.html +13 -13
  101. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  102. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  103. package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
  104. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  105. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  106. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  107. package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
  108. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  109. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  110. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  111. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  112. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  113. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  114. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  115. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  116. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  117. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  118. package/coverage/lcov-report/automations/triggers.js.html +55 -61
  119. package/coverage/lcov-report/automations/utils.js.html +42 -54
  120. package/coverage/lcov-report/constants/index.html +5 -5
  121. package/coverage/lcov-report/constants/index.js.html +26 -53
  122. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  123. package/coverage/lcov-report/constants/screens.js.html +4 -4
  124. package/coverage/lcov-report/db/client.js.html +18 -18
  125. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  126. package/coverage/lcov-report/db/index.html +15 -15
  127. package/coverage/lcov-report/db/index.js.html +3 -3
  128. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +37 -25
  129. package/coverage/lcov-report/db/linkedRows/index.html +27 -27
  130. package/coverage/lcov-report/db/linkedRows/index.js.html +96 -51
  131. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +42 -42
  132. package/coverage/lcov-report/db/newid.js.html +4 -4
  133. package/coverage/lcov-report/db/utils.js.html +87 -87
  134. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  135. package/coverage/lcov-report/events/index.html +1 -1
  136. package/coverage/lcov-report/events/index.js.html +5 -5
  137. package/coverage/lcov-report/events/utils.js.html +3 -3
  138. package/coverage/lcov-report/index.html +120 -135
  139. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  140. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  141. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  142. package/coverage/lcov-report/middleware/authorized.js.html +65 -173
  143. package/coverage/lcov-report/middleware/builder.js.html +10 -10
  144. package/coverage/lcov-report/middleware/currentapp.js.html +83 -95
  145. package/coverage/lcov-report/middleware/index.html +38 -38
  146. package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
  147. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  148. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  149. package/coverage/lcov-report/middleware/usageQuota.js.html +53 -281
  150. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  151. package/coverage/lcov-report/threads/automation.js.html +24 -30
  152. package/coverage/lcov-report/threads/index.html +26 -26
  153. package/coverage/lcov-report/threads/index.js.html +10 -10
  154. package/coverage/lcov-report/threads/query.js.html +26 -62
  155. package/coverage/lcov-report/threads/utils.js.html +14 -14
  156. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  157. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  158. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  159. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  160. package/coverage/lcov-report/utilities/global.js.html +49 -58
  161. package/coverage/lcov-report/utilities/index.html +37 -37
  162. package/coverage/lcov-report/utilities/index.js.html +73 -43
  163. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
  164. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  165. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  166. package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
  167. package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
  168. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +103 -97
  169. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +27 -75
  170. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  171. package/coverage/lcov-report/utilities/security.js.html +8 -8
  172. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  173. package/coverage/lcov-report/utilities/users.js.html +9 -9
  174. package/coverage/lcov-report/utilities/workerRequests.js.html +112 -43
  175. package/coverage/lcov.info +4423 -5022
  176. package/dist/api/controllers/application.js +60 -90
  177. package/dist/api/controllers/auth.js +5 -8
  178. package/dist/api/controllers/automation.js +19 -14
  179. package/dist/api/controllers/cloud.js +3 -2
  180. package/dist/api/controllers/component.js +4 -3
  181. package/dist/api/controllers/datasource.js +10 -20
  182. package/dist/api/controllers/deploy/Deployment.js +6 -3
  183. package/dist/api/controllers/deploy/index.js +13 -12
  184. package/dist/api/controllers/dev.js +5 -5
  185. package/dist/api/controllers/hosting.js +30 -0
  186. package/dist/api/controllers/layout.js +3 -3
  187. package/dist/api/controllers/metadata.js +4 -4
  188. package/dist/api/controllers/permission.js +4 -4
  189. package/dist/api/controllers/query/import/index.js +6 -4
  190. package/dist/api/controllers/query/index.js +10 -11
  191. package/dist/api/controllers/role.js +5 -5
  192. package/dist/api/controllers/routing.js +6 -5
  193. package/dist/api/controllers/row/ExternalRequest.js +63 -76
  194. package/dist/api/controllers/row/external.js +4 -4
  195. package/dist/api/controllers/row/internal.js +93 -55
  196. package/dist/api/controllers/row/internalSearch.js +17 -23
  197. package/dist/api/controllers/row/utils.js +14 -13
  198. package/dist/api/controllers/screen.js +7 -5
  199. package/dist/api/controllers/static/index.js +12 -61
  200. package/dist/api/controllers/table/external.js +10 -7
  201. package/dist/api/controllers/table/index.js +13 -16
  202. package/dist/api/controllers/table/internal.js +16 -22
  203. package/dist/api/controllers/table/utils.js +35 -62
  204. package/dist/api/controllers/user.js +20 -18
  205. package/dist/api/controllers/view/index.js +10 -8
  206. package/dist/api/controllers/view/utils.js +4 -9
  207. package/dist/api/controllers/webhook.js +8 -10
  208. package/dist/api/routes/hosting.js +11 -0
  209. package/dist/api/routes/index.js +2 -2
  210. package/dist/api/routes/static.js +1 -2
  211. package/dist/api/routes/tests/utilities/TestFunctions.js +17 -37
  212. package/dist/app.js +5 -35
  213. package/dist/automations/automationUtils.js +3 -2
  214. package/dist/automations/steps/createRow.js +5 -3
  215. package/dist/automations/steps/deleteRow.js +4 -1
  216. package/dist/automations/steps/updateRow.js +1 -1
  217. package/dist/automations/triggers.js +25 -27
  218. package/dist/automations/utils.js +5 -10
  219. package/dist/constants/index.js +0 -7
  220. package/dist/db/linkedRows/LinkController.js +7 -3
  221. package/dist/db/linkedRows/index.js +27 -16
  222. package/dist/db/linkedRows/linkUtils.js +6 -6
  223. package/dist/db/views/staticViews.js +10 -9
  224. package/dist/definitions/datasource.js +0 -1
  225. package/dist/environment.js +1 -4
  226. package/dist/integrations/base/sql.js +6 -13
  227. package/dist/integrations/index.js +0 -3
  228. package/dist/integrations/utils.js +9 -60
  229. package/dist/middleware/authorized.js +30 -57
  230. package/dist/middleware/builder.js +2 -2
  231. package/dist/middleware/currentapp.js +37 -41
  232. package/dist/middleware/usageQuota.js +15 -82
  233. package/dist/package.json +5 -8
  234. package/dist/tests/utilities/TestConfiguration.js +50 -80
  235. package/dist/threads/automation.js +11 -13
  236. package/dist/threads/query.js +13 -23
  237. package/dist/tsconfig.tsbuildinfo +1 -1
  238. package/dist/utilities/fileSystem/index.js +3 -4
  239. package/dist/utilities/global.js +12 -15
  240. package/dist/utilities/index.js +17 -7
  241. package/dist/utilities/routing/index.js +5 -5
  242. package/dist/utilities/rowProcessor/index.js +17 -23
  243. package/dist/utilities/rowProcessor/utils.js +4 -14
  244. package/dist/utilities/{usageQuota/index.js → usageQuota.js} +31 -45
  245. package/dist/utilities/users.js +3 -3
  246. package/dist/utilities/workerRequests.js +24 -4
  247. package/nodemon.json +1 -1
  248. package/package.json +6 -9
  249. package/scripts/likeCypress.ts +1 -1
  250. package/src/api/controllers/application.js +50 -85
  251. package/src/api/controllers/auth.js +5 -8
  252. package/src/api/controllers/automation.js +23 -13
  253. package/src/api/controllers/cloud.js +3 -2
  254. package/src/api/controllers/component.js +4 -3
  255. package/src/api/controllers/datasource.js +11 -21
  256. package/src/api/controllers/deploy/Deployment.js +7 -3
  257. package/src/api/controllers/deploy/index.js +13 -20
  258. package/src/api/controllers/dev.js +5 -5
  259. package/src/api/controllers/hosting.js +22 -0
  260. package/src/api/controllers/layout.js +3 -3
  261. package/src/api/controllers/metadata.js +9 -4
  262. package/src/api/controllers/permission.js +4 -4
  263. package/src/api/controllers/query/import/index.ts +6 -4
  264. package/src/api/controllers/query/import/tests/index.spec.js +1 -2
  265. package/src/api/controllers/query/index.js +10 -11
  266. package/src/api/controllers/role.js +5 -5
  267. package/src/api/controllers/routing.js +6 -5
  268. package/src/api/controllers/row/ExternalRequest.ts +42 -53
  269. package/src/api/controllers/row/external.js +6 -4
  270. package/src/api/controllers/row/internal.js +90 -54
  271. package/src/api/controllers/row/internalSearch.js +17 -23
  272. package/src/api/controllers/row/utils.js +18 -13
  273. package/src/api/controllers/screen.js +7 -5
  274. package/src/api/controllers/static/index.js +12 -65
  275. package/src/api/controllers/table/external.js +10 -7
  276. package/src/api/controllers/table/index.js +28 -20
  277. package/src/api/controllers/table/internal.js +19 -24
  278. package/src/api/controllers/table/utils.js +42 -78
  279. package/src/api/controllers/user.js +20 -19
  280. package/src/api/controllers/view/index.js +10 -8
  281. package/src/api/controllers/view/utils.js +4 -9
  282. package/src/api/controllers/webhook.js +8 -10
  283. package/src/api/routes/hosting.js +13 -0
  284. package/src/api/routes/index.js +2 -2
  285. package/src/api/routes/static.js +0 -5
  286. package/src/api/routes/tests/application.spec.js +2 -2
  287. package/src/api/routes/tests/auth.spec.js +2 -1
  288. package/src/api/routes/tests/automation.spec.js +0 -1
  289. package/src/api/routes/tests/hosting.spec.js +36 -0
  290. package/src/api/routes/tests/misc.spec.js +1 -0
  291. package/src/api/routes/tests/routing.spec.js +12 -21
  292. package/src/api/routes/tests/row.spec.js +4 -7
  293. package/src/api/routes/tests/utilities/TestFunctions.js +17 -39
  294. package/src/app.ts +5 -18
  295. package/src/automations/automationUtils.js +3 -2
  296. package/src/automations/steps/createRow.js +5 -2
  297. package/src/automations/steps/deleteRow.js +4 -1
  298. package/src/automations/steps/updateRow.js +1 -1
  299. package/src/automations/triggers.js +31 -33
  300. package/src/automations/utils.js +5 -9
  301. package/src/constants/index.js +0 -9
  302. package/src/db/linkedRows/LinkController.js +7 -3
  303. package/src/db/linkedRows/index.js +31 -16
  304. package/src/db/linkedRows/linkUtils.js +6 -6
  305. package/src/db/tests/linkController.spec.js +1 -0
  306. package/src/db/tests/linkTests.spec.js +6 -5
  307. package/src/db/views/staticViews.js +10 -8
  308. package/src/definitions/common.ts +0 -3
  309. package/src/definitions/datasource.ts +0 -3
  310. package/src/environment.js +1 -4
  311. package/src/integrations/base/sql.ts +7 -14
  312. package/src/integrations/index.ts +0 -3
  313. package/src/integrations/tests/sql.spec.js +0 -16
  314. package/src/integrations/utils.ts +12 -75
  315. package/src/middleware/authorized.js +30 -66
  316. package/src/middleware/builder.js +2 -2
  317. package/src/middleware/currentapp.js +46 -50
  318. package/src/middleware/tests/authorized.spec.js +6 -13
  319. package/src/middleware/tests/currentapp.spec.js +0 -6
  320. package/src/middleware/tests/usageQuota.spec.js +24 -18
  321. package/src/middleware/usageQuota.js +17 -93
  322. package/src/tests/utilities/TestConfiguration.js +55 -82
  323. package/src/threads/automation.js +15 -17
  324. package/src/threads/query.js +14 -26
  325. package/src/utilities/fileSystem/index.js +3 -4
  326. package/src/utilities/global.js +12 -15
  327. package/src/utilities/index.js +17 -7
  328. package/src/utilities/routing/index.js +5 -5
  329. package/src/utilities/rowProcessor/index.js +27 -25
  330. package/src/utilities/rowProcessor/utils.js +7 -23
  331. package/src/utilities/usageQuota.js +73 -0
  332. package/src/utilities/users.js +3 -3
  333. package/src/utilities/workerRequests.js +27 -4
  334. package/builder/assets/index.83c0944f.css +0 -1
  335. package/coverage/lcov-report/api/controllers/migrations.js.html +0 -119
  336. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +0 -548
  337. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +0 -599
  338. package/coverage/lcov-report/utilities/usageQuota/index.html +0 -141
  339. package/coverage/lcov-report/utilities/usageQuota/index.js.html +0 -359
  340. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +0 -305
  341. package/dist/api/controllers/migrations.js +0 -21
  342. package/dist/api/controllers/row/staticFormula.js +0 -147
  343. package/dist/api/controllers/table/bulkFormula.js +0 -159
  344. package/dist/api/routes/migrations.js +0 -9
  345. package/dist/integrations/googlesheets.js +0 -340
  346. package/dist/migrations/functions/appUrls.js +0 -46
  347. package/dist/migrations/functions/quotas1.js +0 -50
  348. package/dist/migrations/functions/usageQuotas/index.js +0 -20
  349. package/dist/migrations/functions/usageQuotas/syncApps.js +0 -30
  350. package/dist/migrations/functions/usageQuotas/syncRows.js +0 -33
  351. package/dist/migrations/functions/userEmailViewCasing.js +0 -24
  352. package/dist/migrations/index.js +0 -62
  353. package/dist/utilities/usageQuota/rows.js +0 -78
  354. package/dist/utilities/usageQuota/usageQuoteReset.js +0 -16
  355. package/src/api/controllers/migrations.js +0 -13
  356. package/src/api/controllers/row/staticFormula.js +0 -156
  357. package/src/api/controllers/table/bulkFormula.js +0 -173
  358. package/src/api/routes/migrations.js +0 -14
  359. package/src/api/routes/tests/static.spec.js +0 -98
  360. package/src/integrations/googlesheets.ts +0 -353
  361. package/src/migrations/functions/appUrls.ts +0 -34
  362. package/src/migrations/functions/quotas1.ts +0 -20
  363. package/src/migrations/functions/tests/appUrls.spec.js +0 -29
  364. package/src/migrations/functions/tests/quotas1.spec.js +0 -27
  365. package/src/migrations/functions/tests/userEmailViewCasing.spec.js +0 -25
  366. package/src/migrations/functions/usageQuotas/index.ts +0 -8
  367. package/src/migrations/functions/usageQuotas/syncApps.ts +0 -19
  368. package/src/migrations/functions/usageQuotas/syncRows.ts +0 -22
  369. package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +0 -37
  370. package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +0 -43
  371. package/src/migrations/functions/userEmailViewCasing.ts +0 -13
  372. package/src/migrations/index.ts +0 -56
  373. package/src/utilities/tests/usageQuota/usageQuota.spec.js +0 -72
  374. package/src/utilities/usageQuota/index.js +0 -93
  375. package/src/utilities/usageQuota/rows.js +0 -75
  376. package/src/utilities/usageQuota/usageQuoteReset.js +0 -18
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">63.9% </span>
26
+ <span class="strong">64.13% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>131/205</span>
28
+ <span class='fraction'>118/184</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">40% </span>
33
+ <span class="strong">41.41% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>38/95</span>
35
+ <span class='fraction'>41/99</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">58.82% </span>
40
+ <span class="strong">60.71% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>20/34</span>
42
+ <span class='fraction'>17/28</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">64.32% </span>
47
+ <span class="strong">64.64% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>128/199</span>
49
+ <span class='fraction'>117/181</span>
50
50
  </div>
51
51
 
52
52
 
@@ -438,99 +438,39 @@
438
438
  <a name='L379'></a><a href='#L379'>379</a>
439
439
  <a name='L380'></a><a href='#L380'>380</a>
440
440
  <a name='L381'></a><a href='#L381'>381</a>
441
- <a name='L382'></a><a href='#L382'>382</a>
442
- <a name='L383'></a><a href='#L383'>383</a>
443
- <a name='L384'></a><a href='#L384'>384</a>
444
- <a name='L385'></a><a href='#L385'>385</a>
445
- <a name='L386'></a><a href='#L386'>386</a>
446
- <a name='L387'></a><a href='#L387'>387</a>
447
- <a name='L388'></a><a href='#L388'>388</a>
448
- <a name='L389'></a><a href='#L389'>389</a>
449
- <a name='L390'></a><a href='#L390'>390</a>
450
- <a name='L391'></a><a href='#L391'>391</a>
451
- <a name='L392'></a><a href='#L392'>392</a>
452
- <a name='L393'></a><a href='#L393'>393</a>
453
- <a name='L394'></a><a href='#L394'>394</a>
454
- <a name='L395'></a><a href='#L395'>395</a>
455
- <a name='L396'></a><a href='#L396'>396</a>
456
- <a name='L397'></a><a href='#L397'>397</a>
457
- <a name='L398'></a><a href='#L398'>398</a>
458
- <a name='L399'></a><a href='#L399'>399</a>
459
- <a name='L400'></a><a href='#L400'>400</a>
460
- <a name='L401'></a><a href='#L401'>401</a>
461
- <a name='L402'></a><a href='#L402'>402</a>
462
- <a name='L403'></a><a href='#L403'>403</a>
463
- <a name='L404'></a><a href='#L404'>404</a>
464
- <a name='L405'></a><a href='#L405'>405</a>
465
- <a name='L406'></a><a href='#L406'>406</a>
466
- <a name='L407'></a><a href='#L407'>407</a>
467
- <a name='L408'></a><a href='#L408'>408</a>
468
- <a name='L409'></a><a href='#L409'>409</a>
469
- <a name='L410'></a><a href='#L410'>410</a>
470
- <a name='L411'></a><a href='#L411'>411</a>
471
- <a name='L412'></a><a href='#L412'>412</a>
472
- <a name='L413'></a><a href='#L413'>413</a>
473
- <a name='L414'></a><a href='#L414'>414</a>
474
- <a name='L415'></a><a href='#L415'>415</a>
475
- <a name='L416'></a><a href='#L416'>416</a>
476
- <a name='L417'></a><a href='#L417'>417</a>
477
- <a name='L418'></a><a href='#L418'>418</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
441
+ <a name='L382'></a><a href='#L382'>382</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
442
+ <span class="cline-any cline-yes">34x</span>
478
443
  <span class="cline-any cline-neutral">&nbsp;</span>
479
444
  <span class="cline-any cline-neutral">&nbsp;</span>
480
445
  <span class="cline-any cline-neutral">&nbsp;</span>
481
446
  <span class="cline-any cline-neutral">&nbsp;</span>
447
+ <span class="cline-any cline-yes">34x</span>
448
+ <span class="cline-any cline-yes">34x</span>
449
+ <span class="cline-any cline-yes">34x</span>
450
+ <span class="cline-any cline-yes">34x</span>
482
451
  <span class="cline-any cline-neutral">&nbsp;</span>
483
452
  <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-yes">39x</span>
485
- <span class="cline-any cline-yes">39x</span>
486
- <span class="cline-any cline-yes">39x</span>
487
453
  <span class="cline-any cline-neutral">&nbsp;</span>
488
454
  <span class="cline-any cline-neutral">&nbsp;</span>
455
+ <span class="cline-any cline-yes">34x</span>
489
456
  <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-yes">39x</span>
491
457
  <span class="cline-any cline-neutral">&nbsp;</span>
492
458
  <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-yes">34x</span>
460
+ <span class="cline-any cline-yes">34x</span>
461
+ <span class="cline-any cline-yes">34x</span>
493
462
  <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-yes">39x</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-yes">39x</span>
501
- <span class="cline-any cline-yes">39x</span>
502
- <span class="cline-any cline-yes">39x</span>
503
- <span class="cline-any cline-yes">39x</span>
504
- <span class="cline-any cline-yes">39x</span>
505
- <span class="cline-any cline-yes">39x</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-yes">39x</span>
508
- <span class="cline-any cline-no">&nbsp;</span>
509
- <span class="cline-any cline-no">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-no">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-no">&nbsp;</span>
517
- <span class="cline-any cline-no">&nbsp;</span>
518
- <span class="cline-any cline-neutral">&nbsp;</span>
519
- <span class="cline-any cline-neutral">&nbsp;</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-yes">39x</span>
523
- <span class="cline-any cline-yes">101x</span>
524
- <span class="cline-any cline-yes">101x</span>
525
- <span class="cline-any cline-yes">101x</span>
526
- <span class="cline-any cline-yes">101x</span>
527
- <span class="cline-any cline-yes">101x</span>
463
+ <span class="cline-any cline-yes">34x</span>
464
+ <span class="cline-any cline-yes">99x</span>
465
+ <span class="cline-any cline-yes">99x</span>
466
+ <span class="cline-any cline-yes">99x</span>
467
+ <span class="cline-any cline-yes">99x</span>
528
468
  <span class="cline-any cline-yes">4x</span>
529
469
  <span class="cline-any cline-yes">11x</span>
530
470
  <span class="cline-any cline-neutral">&nbsp;</span>
531
471
  <span class="cline-any cline-neutral">&nbsp;</span>
532
472
  <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-yes">101x</span>
473
+ <span class="cline-any cline-yes">99x</span>
534
474
  <span class="cline-any cline-neutral">&nbsp;</span>
535
475
  <span class="cline-any cline-yes">1x</span>
536
476
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -541,8 +481,6 @@
541
481
  <span class="cline-any cline-yes">1x</span>
542
482
  <span class="cline-any cline-yes">1x</span>
543
483
  <span class="cline-any cline-yes">1x</span>
544
- <span class="cline-any cline-yes">1x</span>
545
- <span class="cline-any cline-yes">1x</span>
546
484
  <span class="cline-any cline-no">&nbsp;</span>
547
485
  <span class="cline-any cline-no">&nbsp;</span>
548
486
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -551,15 +489,13 @@
551
489
  <span class="cline-any cline-neutral">&nbsp;</span>
552
490
  <span class="cline-any cline-neutral">&nbsp;</span>
553
491
  <span class="cline-any cline-yes">1x</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-yes">1x</span>
556
492
  <span class="cline-any cline-yes">1x</span>
557
493
  <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-yes">101x</span>
494
+ <span class="cline-any cline-yes">99x</span>
559
495
  <span class="cline-any cline-neutral">&nbsp;</span>
560
496
  <span class="cline-any cline-neutral">&nbsp;</span>
561
497
  <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-yes">39x</span>
498
+ <span class="cline-any cline-yes">34x</span>
563
499
  <span class="cline-any cline-yes">4x</span>
564
500
  <span class="cline-any cline-no">&nbsp;</span>
565
501
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -579,9 +515,9 @@
579
515
  <span class="cline-any cline-yes">4x</span>
580
516
  <span class="cline-any cline-neutral">&nbsp;</span>
581
517
  <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-yes">39x</span>
583
- <span class="cline-any cline-yes">102x</span>
584
- <span class="cline-any cline-yes">101x</span>
518
+ <span class="cline-any cline-yes">34x</span>
519
+ <span class="cline-any cline-yes">100x</span>
520
+ <span class="cline-any cline-yes">99x</span>
585
521
  <span class="cline-any cline-neutral">&nbsp;</span>
586
522
  <span class="cline-any cline-neutral">&nbsp;</span>
587
523
  <span class="cline-any cline-yes">1x</span>
@@ -620,19 +556,15 @@
620
556
  <span class="cline-any cline-neutral">&nbsp;</span>
621
557
  <span class="cline-any cline-neutral">&nbsp;</span>
622
558
  <span class="cline-any cline-yes">1x</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-neutral">&nbsp;</span>
625
- <span class="cline-any cline-yes">1x</span>
626
- <span class="cline-any cline-yes">1x</span>
627
559
  <span class="cline-any cline-yes">1x</span>
628
560
  <span class="cline-any cline-yes">1x</span>
629
561
  <span class="cline-any cline-yes">1x</span>
630
562
  <span class="cline-any cline-neutral">&nbsp;</span>
631
563
  <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-yes">39x</span>
633
- <span class="cline-any cline-yes">101x</span>
564
+ <span class="cline-any cline-yes">34x</span>
565
+ <span class="cline-any cline-yes">99x</span>
634
566
  <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-yes">101x</span>
567
+ <span class="cline-any cline-yes">99x</span>
636
568
  <span class="cline-any cline-yes">2x</span>
637
569
  <span class="cline-any cline-yes">2x</span>
638
570
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -670,12 +602,12 @@
670
602
  <span class="cline-any cline-neutral">&nbsp;</span>
671
603
  <span class="cline-any cline-neutral">&nbsp;</span>
672
604
  <span class="cline-any cline-neutral">&nbsp;</span>
673
- <span class="cline-any cline-yes">101x</span>
605
+ <span class="cline-any cline-yes">99x</span>
674
606
  <span class="cline-any cline-neutral">&nbsp;</span>
675
607
  <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-yes">39x</span>
608
+ <span class="cline-any cline-yes">34x</span>
677
609
  <span class="cline-any cline-neutral">&nbsp;</span>
678
- <span class="cline-any cline-yes">101x</span>
610
+ <span class="cline-any cline-yes">99x</span>
679
611
  <span class="cline-any cline-yes">1x</span>
680
612
  <span class="cline-any cline-neutral">&nbsp;</span>
681
613
  <span class="cline-any cline-yes">5x</span>
@@ -683,62 +615,60 @@
683
615
  <span class="cline-any cline-neutral">&nbsp;</span>
684
616
  <span class="cline-any cline-neutral">&nbsp;</span>
685
617
  <span class="cline-any cline-neutral">&nbsp;</span>
686
- <span class="cline-any cline-yes">101x</span>
618
+ <span class="cline-any cline-yes">99x</span>
687
619
  <span class="cline-any cline-neutral">&nbsp;</span>
688
620
  <span class="cline-any cline-neutral">&nbsp;</span>
689
621
  <span class="cline-any cline-neutral">&nbsp;</span>
690
622
  <span class="cline-any cline-neutral">&nbsp;</span>
691
- <span class="cline-any cline-yes">101x</span>
692
- <span class="cline-any cline-yes">101x</span>
693
- <span class="cline-any cline-yes">101x</span>
694
- <span class="cline-any cline-yes">101x</span>
623
+ <span class="cline-any cline-yes">99x</span>
624
+ <span class="cline-any cline-yes">99x</span>
625
+ <span class="cline-any cline-yes">99x</span>
626
+ <span class="cline-any cline-yes">99x</span>
695
627
  <span class="cline-any cline-neutral">&nbsp;</span>
696
- <span class="cline-any cline-yes">101x</span>
628
+ <span class="cline-any cline-yes">99x</span>
629
+ <span class="cline-any cline-yes">99x</span>
697
630
  <span class="cline-any cline-neutral">&nbsp;</span>
631
+ <span class="cline-any cline-yes">99x</span>
698
632
  <span class="cline-any cline-neutral">&nbsp;</span>
699
633
  <span class="cline-any cline-neutral">&nbsp;</span>
700
634
  <span class="cline-any cline-neutral">&nbsp;</span>
701
- <span class="cline-any cline-yes">101x</span>
702
- <span class="cline-any cline-yes">4x</span>
703
635
  <span class="cline-any cline-neutral">&nbsp;</span>
704
- <span class="cline-any cline-yes">101x</span>
705
- <span class="cline-any cline-yes">101x</span>
636
+ <span class="cline-any cline-yes">99x</span>
637
+ <span class="cline-any cline-yes">4x</span>
706
638
  <span class="cline-any cline-neutral">&nbsp;</span>
639
+ <span class="cline-any cline-yes">99x</span>
640
+ <span class="cline-any cline-yes">99x</span>
707
641
  <span class="cline-any cline-neutral">&nbsp;</span>
708
642
  <span class="cline-any cline-neutral">&nbsp;</span>
709
643
  <span class="cline-any cline-neutral">&nbsp;</span>
710
- <span class="cline-any cline-yes">101x</span>
711
- <span class="cline-any cline-yes">101x</span>
712
- <span class="cline-any cline-yes">101x</span>
713
644
  <span class="cline-any cline-neutral">&nbsp;</span>
645
+ <span class="cline-any cline-yes">99x</span>
714
646
  <span class="cline-any cline-neutral">&nbsp;</span>
715
647
  <span class="cline-any cline-neutral">&nbsp;</span>
716
648
  <span class="cline-any cline-neutral">&nbsp;</span>
717
- <span class="cline-any cline-yes">101x</span>
718
- <span class="cline-any cline-yes">101x</span>
719
- <span class="cline-any cline-yes">101x</span>
720
649
  <span class="cline-any cline-neutral">&nbsp;</span>
650
+ <span class="cline-any cline-yes">99x</span>
651
+ <span class="cline-any cline-yes">99x</span>
721
652
  <span class="cline-any cline-neutral">&nbsp;</span>
722
653
  <span class="cline-any cline-neutral">&nbsp;</span>
723
- <span class="cline-any cline-yes">101x</span>
724
654
  <span class="cline-any cline-neutral">&nbsp;</span>
725
655
  <span class="cline-any cline-neutral">&nbsp;</span>
656
+ <span class="cline-any cline-yes">99x</span>
657
+ <span class="cline-any cline-yes">99x</span>
726
658
  <span class="cline-any cline-neutral">&nbsp;</span>
727
- <span class="cline-any cline-yes">39x</span>
728
- <span class="cline-any cline-yes">207x</span>
729
- <span class="cline-any cline-yes">207x</span>
730
659
  <span class="cline-any cline-neutral">&nbsp;</span>
731
660
  <span class="cline-any cline-neutral">&nbsp;</span>
732
661
  <span class="cline-any cline-neutral">&nbsp;</span>
733
662
  <span class="cline-any cline-neutral">&nbsp;</span>
734
- <span class="cline-any cline-yes">474x</span>
663
+ <span class="cline-any cline-yes">99x</span>
735
664
  <span class="cline-any cline-neutral">&nbsp;</span>
736
665
  <span class="cline-any cline-neutral">&nbsp;</span>
737
666
  <span class="cline-any cline-neutral">&nbsp;</span>
667
+ <span class="cline-any cline-yes">99x</span>
738
668
  <span class="cline-any cline-neutral">&nbsp;</span>
739
669
  <span class="cline-any cline-neutral">&nbsp;</span>
740
670
  <span class="cline-any cline-neutral">&nbsp;</span>
741
- <span class="cline-any cline-yes">39x</span>
671
+ <span class="cline-any cline-yes">34x</span>
742
672
  <span class="cline-any cline-no">&nbsp;</span>
743
673
  <span class="cline-any cline-no">&nbsp;</span>
744
674
  <span class="cline-any cline-no">&nbsp;</span>
@@ -747,24 +677,22 @@
747
677
  <span class="cline-any cline-no">&nbsp;</span>
748
678
  <span class="cline-any cline-neutral">&nbsp;</span>
749
679
  <span class="cline-any cline-neutral">&nbsp;</span>
750
- <span class="cline-any cline-yes">39x</span>
680
+ <span class="cline-any cline-yes">34x</span>
751
681
  <span class="cline-any cline-no">&nbsp;</span>
752
682
  <span class="cline-any cline-no">&nbsp;</span>
753
683
  <span class="cline-any cline-neutral">&nbsp;</span>
754
684
  <span class="cline-any cline-neutral">&nbsp;</span>
755
- <span class="cline-any cline-yes">39x</span>
685
+ <span class="cline-any cline-yes">34x</span>
756
686
  <span class="cline-any cline-yes">30x</span>
757
687
  <span class="cline-any cline-yes">30x</span>
758
688
  <span class="cline-any cline-no">&nbsp;</span>
759
689
  <span class="cline-any cline-no">&nbsp;</span>
760
- <span class="cline-any cline-no">&nbsp;</span>
761
- <span class="cline-any cline-no">&nbsp;</span>
762
690
  <span class="cline-any cline-neutral">&nbsp;</span>
763
691
  <span class="cline-any cline-yes">30x</span>
764
692
  <span class="cline-any cline-neutral">&nbsp;</span>
765
693
  <span class="cline-any cline-neutral">&nbsp;</span>
766
694
  <span class="cline-any cline-neutral">&nbsp;</span>
767
- <span class="cline-any cline-yes">39x</span>
695
+ <span class="cline-any cline-yes">34x</span>
768
696
  <span class="cline-any cline-yes">1x</span>
769
697
  <span class="cline-any cline-yes">1x</span>
770
698
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -836,15 +764,15 @@
836
764
  <span class="cline-any cline-neutral">&nbsp;</span>
837
765
  <span class="cline-any cline-neutral">&nbsp;</span>
838
766
  <span class="cline-any cline-neutral">&nbsp;</span>
839
- <span class="cline-any cline-yes">39x</span>
767
+ <span class="cline-any cline-yes">34x</span>
840
768
  <span class="cline-any cline-no">&nbsp;</span>
841
769
  <span class="cline-any cline-neutral">&nbsp;</span>
842
770
  <span class="cline-any cline-neutral">&nbsp;</span>
843
- <span class="cline-any cline-yes">39x</span>
771
+ <span class="cline-any cline-yes">34x</span>
844
772
  <span class="cline-any cline-no">&nbsp;</span>
845
773
  <span class="cline-any cline-neutral">&nbsp;</span>
846
774
  <span class="cline-any cline-neutral">&nbsp;</span>
847
- <span class="cline-any cline-yes">39x</span>
775
+ <span class="cline-any cline-yes">34x</span>
848
776
  <span class="cline-any cline-no">&nbsp;</span>
849
777
  <span class="cline-any cline-neutral">&nbsp;</span>
850
778
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -856,7 +784,7 @@
856
784
  <span class="cline-any cline-no">&nbsp;</span>
857
785
  <span class="cline-any cline-neutral">&nbsp;</span>
858
786
  <span class="cline-any cline-neutral">&nbsp;</span>
859
- <span class="cline-any cline-yes">39x</span>
787
+ <span class="cline-any cline-yes">34x</span>
860
788
  <span class="cline-any cline-no">&nbsp;</span>
861
789
  <span class="cline-any cline-neutral">&nbsp;</span>
862
790
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -873,9 +801,9 @@
873
801
  <span class="cline-any cline-no">&nbsp;</span>
874
802
  <span class="cline-any cline-neutral">&nbsp;</span>
875
803
  <span class="cline-any cline-neutral">&nbsp;</span>
876
- <span class="cline-any cline-yes">39x</span>
877
- <span class="cline-any cline-yes">101x</span>
878
- <span class="cline-any cline-yes">97x</span>
804
+ <span class="cline-any cline-yes">34x</span>
805
+ <span class="cline-any cline-yes">99x</span>
806
+ <span class="cline-any cline-yes">95x</span>
879
807
  <span class="cline-any cline-neutral">&nbsp;</span>
880
808
  <span class="cline-any cline-yes">4x</span>
881
809
  <span class="cline-any cline-yes">11x</span>
@@ -890,21 +818,17 @@
890
818
  <span class="cline-any cline-yes">4x</span>
891
819
  <span class="cline-any cline-neutral">&nbsp;</span>
892
820
  <span class="cline-any cline-neutral">&nbsp;</span>
893
- <span class="cline-any cline-yes">39x</span>
894
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const csvParser = require("../../../utilities/csvParser")
821
+ <span class="cline-any cline-yes">34x</span>
822
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">const CouchDB = require("../../../db")
823
+ const csvParser = require("../../../utilities/csvParser")
895
824
  const {
896
825
  getRowParams,
897
826
  generateRowID,
898
827
  InternalTables,
899
- getTableParams,
900
- BudibaseInternalDB,
901
828
  } = require("../../../db/utils")
902
- const { isEqual } = require("lodash")
829
+ const { isEqual } = require("lodash/fp")
903
830
  const { AutoFieldSubTypes, FieldTypes } = require("../../../constants")
904
- const {
905
- inputProcessing,
906
- cleanupAttachments,
907
- } = require("../../../utilities/rowProcessor")
831
+ const { inputProcessing } = require("../../../utilities/rowProcessor")
908
832
  const {
909
833
  USERS_TABLE_SCHEMA,
910
834
  SwitchableTypes,
@@ -913,31 +837,11 @@ const {
913
837
  const {
914
838
  isExternalTable,
915
839
  breakExternalTableId,
916
- isSQL,
917
840
  } = require("../../../integrations/utils")
918
841
  const { getViews, saveView } = require("../view/utils")
919
842
  const viewTemplate = require("../view/viewBuilder")
920
- const usageQuota = require("../../../utilities/usageQuota")
921
- const { getAppDB } = require("@budibase/backend-core/context")
922
- const { cloneDeep } = require("lodash/fp")
923
843
  &nbsp;
924
- exports.clearColumns = <span class="fstat-no" title="function not covered" >as</span>ync (table, columnNames) =&gt; {
925
- const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
926
- const rows = <span class="cstat-no" title="statement not covered" >await db.allDocs(</span>
927
- getRowParams(table._id, null, {
928
- include_docs: true,
929
- })
930
- )
931
- <span class="cstat-no" title="statement not covered" > return db.bulkDocs(</span>
932
- rows.rows.map(<span class="fstat-no" title="function not covered" >({</span> doc }) =&gt; {
933
- <span class="cstat-no" title="statement not covered" > columnNames.forEach(<span class="fstat-no" title="function not covered" >co</span>lName =&gt; <span class="cstat-no" title="statement not covered" >delete doc[colName])</span></span>
934
- <span class="cstat-no" title="statement not covered" > return doc</span>
935
- })
936
- )
937
- }
938
- &nbsp;
939
- exports.checkForColumnUpdates = async (oldTable, updatedTable) =&gt; {
940
- const db = getAppDB()
844
+ exports.checkForColumnUpdates = async (db, oldTable, updatedTable) =&gt; {
941
845
  let updatedRows = []
942
846
  const rename = updatedTable._rename
943
847
  let deletedColumns = []
@@ -954,22 +858,18 @@ exports.checkForColumnUpdates = async (oldTable, updatedTable) =&gt; {
954
858
  include_docs: true,
955
859
  })
956
860
  )
957
- const rawRows = rows.rows.map(({ doc }) =&gt; doc)
958
- updatedRows = rawRows.map(row =&gt; {
959
- row = cloneDeep(row)
861
+ updatedRows = rows.rows.map(({ doc }) =&gt; {
960
862
  if (rename) {
961
- row[rename.updated] = row[rename.old]
962
- delete row[rename.old]
863
+ doc[rename.updated] = doc[rename.old]
864
+ delete doc[rename.old]
963
865
  } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="else path not taken" >E</span>if (deletedColumns.length !== 0) {</span>
964
- <span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >co</span>lName =&gt; <span class="cstat-no" title="statement not covered" >delete row[colName])</span></span>
866
+ <span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >co</span>lName =&gt; <span class="cstat-no" title="statement not covered" >delete doc[colName])</span></span>
965
867
  }
966
- return row
868
+ return doc
967
869
  })
968
870
  &nbsp;
969
- // cleanup any attachments from object storage for deleted attachment columns
970
- await cleanupAttachments(updatedTable, { oldTable, rows: rawRows })
971
871
  // Update views
972
- await exports.checkForViewUpdates(updatedTable, rename, deletedColumns)
872
+ await exports.checkForViewUpdates(db, updatedTable, rename, deletedColumns)
973
873
  delete updatedTable._rename
974
874
  }
975
875
  return { rows: updatedRows, table: updatedTable }
@@ -996,12 +896,12 @@ exports.makeSureTableUpToDate = (table, tableToSave) =&gt; {
996
896
  return tableToSave
997
897
  }
998
898
  &nbsp;
999
- exports.handleDataImport = async (user, table, dataImport) =&gt; {
899
+ exports.handleDataImport = async (appId, user, table, dataImport) =&gt; {
1000
900
  if (!dataImport || !dataImport.csvString) {
1001
901
  return table
1002
902
  }
1003
903
  &nbsp;
1004
- const db = getAppDB()
904
+ const db = new CouchDB(appId)
1005
905
  // Populate the table with rows imported from CSV in a bulk update
1006
906
  const data = await csvParser.transform({
1007
907
  ...dataImport,
@@ -1036,18 +936,14 @@ exports.handleDataImport = async (user, table, dataImport) =&gt; {
1036
936
  finalData.push(row)
1037
937
  }
1038
938
  &nbsp;
1039
- await usageQuota.update(usageQuota.Properties.ROW, finalData.length, {
1040
- dryRun: true,
1041
- })
1042
939
  await db.bulkDocs(finalData)
1043
- await usageQuota.update(usageQuota.Properties.ROW, finalData.length)
1044
940
  let response = await db.put(table)
1045
941
  table._rev = response._rev
1046
942
  return table
1047
943
  }
1048
944
  &nbsp;
1049
- exports.handleSearchIndexes = async table =&gt; {
1050
- const db = getAppDB()
945
+ exports.handleSearchIndexes = async (appId, table) =&gt; {
946
+ const db = new CouchDB(appId)
1051
947
  // create relevant search indexes
1052
948
  if (table.indexes &amp;&amp; table.indexes.length &gt; 0) {
1053
949
  const currentIndexes = await db.getIndexes()
@@ -1104,9 +1000,12 @@ exports.checkStaticTables = table =&gt; {
1104
1000
  }
1105
1001
  &nbsp;
1106
1002
  class TableSaveFunctions {
1107
- constructor({ user, oldTable, dataImport }) {
1108
- this.db = getAppDB()
1109
- this.user = user
1003
+ constructor({ db, ctx, oldTable, dataImport }) {
1004
+ this.db = db
1005
+ this.ctx = ctx
1006
+ if (this.ctx &amp;&amp; this.ctx.user) {
1007
+ this.appId = this.ctx.appId
1008
+ }
1110
1009
  this.oldTable = oldTable
1111
1010
  this.dataImport = dataImport
1112
1011
  // any rows that need updated
@@ -1124,15 +1023,24 @@ class TableSaveFunctions {
1124
1023
  &nbsp;
1125
1024
  // when confirmed valid
1126
1025
  async mid(table) {
1127
- let response = await exports.checkForColumnUpdates(this.oldTable, table)
1026
+ let response = await exports.checkForColumnUpdates(
1027
+ this.db,
1028
+ this.oldTable,
1029
+ table
1030
+ )
1128
1031
  this.rows = this.rows.concat(response.rows)
1129
1032
  return table
1130
1033
  }
1131
1034
  &nbsp;
1132
1035
  // after saving
1133
1036
  async after(table) {
1134
- table = await exports.handleSearchIndexes(table)
1135
- table = await exports.handleDataImport(this.user, table, this.dataImport)
1037
+ table = await exports.handleSearchIndexes(this.appId, table)
1038
+ table = await exports.handleDataImport(
1039
+ this.appId,
1040
+ this.ctx.user,
1041
+ table,
1042
+ this.dataImport
1043
+ )
1136
1044
  return table
1137
1045
  }
1138
1046
  &nbsp;
@@ -1141,22 +1049,8 @@ class TableSaveFunctions {
1141
1049
  }
1142
1050
  }
1143
1051
  &nbsp;
1144
- exports.getAllInternalTables = async () =&gt; {
1145
- const db = getAppDB()
1146
- const internalTables = await db.allDocs(
1147
- getTableParams(null, {
1148
- include_docs: true,
1149
- })
1150
- )
1151
- return internalTables.rows.map(tableDoc =&gt; ({
1152
- ...tableDoc.doc,
1153
- type: "internal",
1154
- sourceId: BudibaseInternalDB._id,
1155
- }))
1156
- }
1157
- &nbsp;
1158
- exports.getAllExternalTables = <span class="fstat-no" title="function not covered" >as</span>ync datasourceId =&gt; {
1159
- const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
1052
+ exports.getAllExternalTables = <span class="fstat-no" title="function not covered" >as</span>ync (appId, datasourceId) =&gt; {
1053
+ const db = <span class="cstat-no" title="statement not covered" >new CouchDB(appId)</span>
1160
1054
  const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
1161
1055
  <span class="cstat-no" title="statement not covered" > if (!datasource || !datasource.entities) {</span>
1162
1056
  <span class="cstat-no" title="statement not covered" > throw "Datasource is not configured fully."</span>
@@ -1164,25 +1058,23 @@ exports.getAllExternalTables = <span class="fstat-no" title="function not covere
1164
1058
  <span class="cstat-no" title="statement not covered" > return datasource.entities</span>
1165
1059
  }
1166
1060
  &nbsp;
1167
- exports.getExternalTable = <span class="fstat-no" title="function not covered" >as</span>ync (datasourceId, tableName) =&gt; {
1168
- const entities = <span class="cstat-no" title="statement not covered" >await exports.getAllExternalTables(datasourceId)</span>
1061
+ exports.getExternalTable = <span class="fstat-no" title="function not covered" >as</span>ync (appId, datasourceId, tableName) =&gt; {
1062
+ const entities = <span class="cstat-no" title="statement not covered" >await exports.getAllExternalTables(appId, datasourceId)</span>
1169
1063
  <span class="cstat-no" title="statement not covered" > return entities[tableName]</span>
1170
1064
  }
1171
1065
  &nbsp;
1172
- exports.getTable = async tableId =&gt; {
1173
- const db = getAppDB()
1066
+ exports.getTable = async (appId, tableId) =&gt; {
1067
+ const db = new CouchDB(appId)
1174
1068
  <span class="missing-if-branch" title="if path not taken" >I</span>if (isExternalTable(tableId)) {
1175
1069
  let { datasourceId, tableName } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(tableId)</span>
1176
- const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
1177
- const table = <span class="cstat-no" title="statement not covered" >await exports.getExternalTable(datasourceId, tableName)</span>
1178
- <span class="cstat-no" title="statement not covered" > return { ...table, sql: isSQL(datasource) }</span>
1070
+ <span class="cstat-no" title="statement not covered" > return exports.getExternalTable(appId, datasourceId, tableName)</span>
1179
1071
  } else {
1180
1072
  return db.get(tableId)
1181
1073
  }
1182
1074
  }
1183
1075
  &nbsp;
1184
- exports.checkForViewUpdates = async (table, rename, deletedColumns) =&gt; {
1185
- const views = await getViews()
1076
+ exports.checkForViewUpdates = async (db, table, rename, deletedColumns) =&gt; {
1077
+ const views = await getViews(db)
1186
1078
  const tableViews = views.filter(<span class="fstat-no" title="function not covered" >vi</span>ew =&gt; <span class="cstat-no" title="statement not covered" >view.meta.tableId === table._id)</span>
1187
1079
  &nbsp;
1188
1080
  // Check each table view to see if impacted by this table action
@@ -1244,7 +1136,7 @@ exports.checkForViewUpdates = async (table, rename, deletedColumns) =&gt; {
1244
1136
  // Update view if required
1245
1137
  <span class="cstat-no" title="statement not covered" > if (needsUpdated) {</span>
1246
1138
  const newViewTemplate = <span class="cstat-no" title="statement not covered" >viewTemplate(view.meta)</span>
1247
- <span class="cstat-no" title="statement not covered" > await saveView(null, view.name, newViewTemplate)</span>
1139
+ <span class="cstat-no" title="statement not covered" > await saveView(db, null, view.name, newViewTemplate)</span>
1248
1140
  <span class="cstat-no" title="statement not covered" > if (!newViewTemplate.meta.schema) {</span>
1249
1141
  <span class="cstat-no" title="statement not covered" > newViewTemplate.meta.schema = table.schema</span>
1250
1142
  }
@@ -1315,7 +1207,7 @@ exports.TableSaveFunctions = TableSaveFunctions
1315
1207
  <div class='footer quiet pad2 space-top1 center small'>
1316
1208
  Code coverage generated by
1317
1209
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1318
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
1210
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
1319
1211
  </div>
1320
1212
  </div>
1321
1213
  <script src="../../../prettify.js"></script>
@@ -181,7 +181,7 @@ exports.downloadTemplate = async function (ctx) {
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
184
- at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
184
+ at Fri Feb 04 2022 12:19:28 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  </div>
187
187
  <script src="../../prettify.js"></script>