@budibase/server 1.0.49 → 1.0.50-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__mocks__/arangojs.ts +1 -1
- package/__mocks__/aws-sdk.ts +4 -4
- package/__mocks__/mongodb.ts +4 -5
- package/__mocks__/mssql.ts +3 -3
- package/__mocks__/node-fetch.ts +2 -1
- package/__mocks__/pg.ts +3 -5
- package/builder/assets/index.c0cc369d.css +6 -0
- package/builder/assets/{index.2c37968e.js → index.ff2bad21.js} +252 -249
- package/builder/assets/{vendor.f9faf6ab.js → vendor.5ad9695a.js} +202 -106
- package/builder/index.html +3 -3
- package/coverage/clover.xml +3105 -2814
- package/coverage/coverage-final.json +106 -101
- package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/application.js.html +257 -152
- package/coverage/lcov-report/api/controllers/auth.js.html +22 -13
- package/coverage/lcov-report/api/controllers/automation.js.html +39 -69
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +8 -11
- package/coverage/lcov-report/api/controllers/component.js.html +13 -16
- package/coverage/lcov-report/api/controllers/datasource.js.html +81 -51
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/api/controllers/index.html +78 -78
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
- package/coverage/lcov-report/api/controllers/metadata.js.html +6 -21
- package/coverage/lcov-report/api/controllers/migrations.js.html +119 -0
- package/coverage/lcov-report/api/controllers/permission.js.html +19 -19
- package/coverage/lcov-report/api/controllers/query/index.html +10 -10
- package/coverage/lcov-report/api/controllers/query/index.js.html +38 -35
- package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
- package/coverage/lcov-report/api/controllers/role.js.html +16 -16
- package/coverage/lcov-report/api/controllers/routing.js.html +7 -10
- package/coverage/lcov-report/api/controllers/row/external.js.html +48 -141
- package/coverage/lcov-report/api/controllers/row/index.html +55 -40
- package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
- package/coverage/lcov-report/api/controllers/row/internal.js.html +118 -226
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +52 -34
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +548 -0
- package/coverage/lcov-report/api/controllers/row/utils.js.html +47 -62
- package/coverage/lcov-report/api/controllers/screen.js.html +15 -21
- package/coverage/lcov-report/api/controllers/script.js.html +4 -4
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +599 -0
- package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
- package/coverage/lcov-report/api/controllers/table/index.html +58 -43
- package/coverage/lcov-report/api/controllers/table/index.js.html +58 -82
- package/coverage/lcov-report/api/controllers/table/internal.js.html +81 -66
- package/coverage/lcov-report/api/controllers/table/utils.js.html +218 -110
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +79 -76
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
- package/coverage/lcov-report/api/controllers/view/index.html +16 -16
- package/coverage/lcov-report/api/controllers/view/index.js.html +27 -33
- package/coverage/lcov-report/api/controllers/view/utils.js.html +35 -20
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
- package/coverage/lcov-report/api/controllers/webhook.js.html +34 -28
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +8 -8
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/application.js.html +1 -1
- package/coverage/lcov-report/api/routes/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +18 -18
- package/coverage/lcov-report/api/routes/index.js.html +3 -3
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/{hosting.js.html → migrations.js.html} +17 -14
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/row.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/static.js.html +17 -2
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +24 -24
- package/coverage/lcov-report/automations/automationUtils.js.html +7 -10
- package/coverage/lcov-report/automations/bullboard.js.html +16 -16
- package/coverage/lcov-report/automations/index.html +18 -18
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
- package/coverage/lcov-report/automations/steps/createRow.js.html +13 -22
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +11 -20
- package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
- package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
- package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
- package/coverage/lcov-report/automations/steps/index.html +13 -13
- package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
- package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
- package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
- package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
- package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
- package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
- package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
- package/coverage/lcov-report/automations/triggers.js.html +61 -55
- package/coverage/lcov-report/automations/utils.js.html +54 -42
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +53 -26
- package/coverage/lcov-report/constants/layouts.js.html +5 -5
- package/coverage/lcov-report/constants/screens.js.html +4 -4
- package/coverage/lcov-report/db/client.js.html +18 -18
- package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
- package/coverage/lcov-report/db/index.html +15 -15
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +25 -37
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +51 -96
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +42 -42
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +87 -87
- package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +5 -5
- package/coverage/lcov-report/events/utils.js.html +3 -3
- package/coverage/lcov-report/index.html +135 -120
- package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
- package/coverage/lcov-report/middleware/authorized.js.html +173 -65
- package/coverage/lcov-report/middleware/builder.js.html +10 -10
- package/coverage/lcov-report/middleware/currentapp.js.html +95 -83
- package/coverage/lcov-report/middleware/index.html +38 -38
- package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +281 -53
- package/coverage/lcov-report/middleware/utils.js.html +2 -2
- package/coverage/lcov-report/threads/automation.js.html +30 -24
- package/coverage/lcov-report/threads/index.html +26 -26
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +39 -24
- package/coverage/lcov-report/threads/utils.js.html +14 -14
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
- package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
- package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
- package/coverage/lcov-report/utilities/global.js.html +58 -49
- package/coverage/lcov-report/utilities/index.html +37 -37
- package/coverage/lcov-report/utilities/index.js.html +43 -73
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
- package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +97 -103
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +75 -27
- package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
- package/coverage/lcov-report/utilities/security.js.html +8 -8
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +141 -0
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +359 -0
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +305 -0
- package/coverage/lcov-report/{api/controllers/hosting.js.html → utilities/usageQuota/usageQuoteReset.js.html} +36 -48
- package/coverage/lcov-report/utilities/users.js.html +9 -9
- package/coverage/lcov-report/utilities/workerRequests.js.html +43 -112
- package/coverage/lcov.info +5010 -4425
- package/dist/api/controllers/application.js +90 -60
- package/dist/api/controllers/auth.js +8 -5
- package/dist/api/controllers/automation.js +14 -19
- package/dist/api/controllers/cloud.js +2 -3
- package/dist/api/controllers/component.js +3 -4
- package/dist/api/controllers/datasource.js +20 -10
- package/dist/api/controllers/deploy/Deployment.js +3 -6
- package/dist/api/controllers/deploy/index.js +12 -13
- package/dist/api/controllers/dev.js +5 -5
- package/dist/api/controllers/layout.js +3 -3
- package/dist/api/controllers/metadata.js +4 -4
- package/dist/api/controllers/migrations.js +21 -0
- package/dist/api/controllers/permission.js +4 -4
- package/dist/api/controllers/query/import/index.js +4 -6
- package/dist/api/controllers/query/index.js +11 -10
- package/dist/api/controllers/role.js +5 -5
- package/dist/api/controllers/routing.js +5 -6
- package/dist/api/controllers/row/ExternalRequest.js +90 -67
- package/dist/api/controllers/row/external.js +14 -22
- package/dist/api/controllers/row/internal.js +55 -93
- package/dist/api/controllers/row/internalSearch.js +23 -17
- package/dist/api/controllers/row/staticFormula.js +147 -0
- package/dist/api/controllers/row/utils.js +13 -14
- package/dist/api/controllers/screen.js +5 -7
- package/dist/api/controllers/static/index.js +62 -16
- package/dist/api/controllers/table/bulkFormula.js +159 -0
- package/dist/api/controllers/table/external.js +7 -10
- package/dist/api/controllers/table/index.js +16 -13
- package/dist/api/controllers/table/internal.js +22 -16
- package/dist/api/controllers/table/utils.js +62 -35
- package/dist/api/controllers/user.js +43 -43
- package/dist/api/controllers/view/index.js +8 -10
- package/dist/api/controllers/view/utils.js +9 -4
- package/dist/api/controllers/webhook.js +10 -8
- package/dist/api/routes/index.js +2 -2
- package/dist/api/routes/migrations.js +9 -0
- package/dist/api/routes/static.js +2 -1
- package/dist/api/routes/tests/utilities/TestFunctions.js +37 -17
- package/dist/app.js +35 -5
- package/dist/automations/automationUtils.js +2 -3
- package/dist/automations/steps/createRow.js +3 -5
- package/dist/automations/steps/deleteRow.js +1 -4
- package/dist/automations/steps/updateRow.js +1 -1
- package/dist/automations/triggers.js +27 -25
- package/dist/automations/utils.js +10 -5
- package/dist/constants/index.js +7 -0
- package/dist/db/linkedRows/LinkController.js +3 -7
- package/dist/db/linkedRows/index.js +16 -27
- package/dist/db/linkedRows/linkUtils.js +6 -6
- package/dist/db/views/staticViews.js +9 -10
- package/dist/definitions/datasource.js +1 -0
- package/dist/environment.js +4 -1
- package/dist/integrations/base/sql.js +62 -21
- package/dist/integrations/googlesheets.js +340 -0
- package/dist/integrations/index.js +3 -0
- package/dist/integrations/utils.js +60 -9
- package/dist/middleware/authorized.js +57 -30
- package/dist/middleware/builder.js +2 -2
- package/dist/middleware/currentapp.js +41 -37
- package/dist/middleware/usageQuota.js +82 -15
- package/dist/migrations/functions/appUrls.js +46 -0
- package/dist/migrations/functions/quotas1.js +50 -0
- package/dist/migrations/functions/usageQuotas/index.js +20 -0
- package/dist/migrations/functions/usageQuotas/syncApps.js +29 -0
- package/dist/migrations/functions/usageQuotas/syncRows.js +33 -0
- package/dist/migrations/functions/userEmailViewCasing.js +24 -0
- package/dist/migrations/index.js +62 -0
- package/dist/package.json +8 -5
- package/dist/tests/utilities/TestConfiguration.js +80 -50
- package/dist/threads/automation.js +13 -11
- package/dist/threads/query.js +15 -11
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/index.js +4 -3
- package/dist/utilities/global.js +15 -12
- package/dist/utilities/index.js +7 -17
- package/dist/utilities/routing/index.js +5 -5
- package/dist/utilities/rowProcessor/index.js +23 -17
- package/dist/utilities/rowProcessor/utils.js +14 -4
- package/dist/utilities/{usageQuota.js → usageQuota/index.js} +45 -31
- package/dist/utilities/usageQuota/rows.js +78 -0
- package/dist/utilities/usageQuota/usageQuoteReset.js +16 -0
- package/dist/utilities/users.js +3 -3
- package/dist/utilities/workerRequests.js +4 -24
- package/nodemon.json +1 -1
- package/package.json +9 -6
- package/scripts/integrations/mssql/data/Dockerfile +1 -1
- package/scripts/integrations/mssql/data/setup.sql +17 -4
- package/scripts/integrations/postgres/init.sql +11 -6
- package/scripts/likeCypress.ts +1 -1
- package/src/api/controllers/application.js +85 -50
- package/src/api/controllers/auth.js +8 -5
- package/src/api/controllers/automation.js +13 -23
- package/src/api/controllers/cloud.js +2 -3
- package/src/api/controllers/component.js +3 -4
- package/src/api/controllers/datasource.js +21 -11
- package/src/api/controllers/deploy/Deployment.js +3 -7
- package/src/api/controllers/deploy/index.js +20 -13
- package/src/api/controllers/dev.js +5 -5
- package/src/api/controllers/layout.js +3 -3
- package/src/api/controllers/metadata.js +4 -9
- package/src/api/controllers/migrations.js +13 -0
- package/src/api/controllers/permission.js +4 -4
- package/src/api/controllers/query/import/index.ts +4 -6
- package/src/api/controllers/query/import/tests/index.spec.js +2 -1
- package/src/api/controllers/query/index.js +11 -10
- package/src/api/controllers/role.js +5 -5
- package/src/api/controllers/routing.js +5 -6
- package/src/api/controllers/row/ExternalRequest.ts +67 -43
- package/src/api/controllers/row/external.js +27 -58
- package/src/api/controllers/row/internal.js +54 -90
- package/src/api/controllers/row/internalSearch.js +23 -17
- package/src/api/controllers/row/staticFormula.js +156 -0
- package/src/api/controllers/row/utils.js +13 -18
- package/src/api/controllers/screen.js +5 -7
- package/src/api/controllers/static/index.js +66 -15
- package/src/api/controllers/table/bulkFormula.js +173 -0
- package/src/api/controllers/table/external.js +7 -10
- package/src/api/controllers/table/index.js +20 -28
- package/src/api/controllers/table/internal.js +24 -19
- package/src/api/controllers/table/utils.js +78 -42
- package/src/api/controllers/user.js +46 -45
- package/src/api/controllers/view/index.js +8 -10
- package/src/api/controllers/view/utils.js +9 -4
- package/src/api/controllers/webhook.js +10 -8
- package/src/api/routes/index.js +2 -2
- package/src/api/routes/migrations.js +14 -0
- package/src/api/routes/static.js +5 -0
- package/src/api/routes/tests/application.spec.js +2 -2
- package/src/api/routes/tests/auth.spec.js +1 -2
- package/src/api/routes/tests/automation.spec.js +1 -0
- package/src/api/routes/tests/misc.spec.js +0 -1
- package/src/api/routes/tests/routing.spec.js +21 -12
- package/src/api/routes/tests/row.spec.js +7 -4
- package/src/api/routes/tests/static.spec.js +98 -0
- package/src/api/routes/tests/utilities/TestFunctions.js +39 -17
- package/src/app.ts +18 -5
- package/src/automations/automationUtils.js +2 -3
- package/src/automations/steps/createRow.js +2 -5
- package/src/automations/steps/deleteRow.js +1 -4
- package/src/automations/steps/updateRow.js +1 -1
- package/src/automations/triggers.js +33 -31
- package/src/automations/utils.js +9 -5
- package/src/constants/index.js +9 -0
- package/src/db/linkedRows/LinkController.js +3 -7
- package/src/db/linkedRows/index.js +16 -31
- package/src/db/linkedRows/linkUtils.js +6 -6
- package/src/db/tests/linkController.spec.js +0 -1
- package/src/db/tests/linkTests.spec.js +5 -6
- package/src/db/views/staticViews.js +8 -10
- package/src/definitions/common.ts +3 -0
- package/src/definitions/datasource.ts +3 -0
- package/src/environment.js +4 -1
- package/src/integrations/base/sql.ts +75 -29
- package/src/integrations/googlesheets.ts +353 -0
- package/src/integrations/index.ts +3 -0
- package/src/integrations/tests/sql.spec.js +16 -0
- package/src/integrations/utils.ts +75 -12
- package/src/middleware/authorized.js +66 -30
- package/src/middleware/builder.js +2 -2
- package/src/middleware/currentapp.js +50 -46
- package/src/middleware/tests/authorized.spec.js +13 -6
- package/src/middleware/tests/currentapp.spec.js +6 -0
- package/src/middleware/tests/usageQuota.spec.js +18 -24
- package/src/middleware/usageQuota.js +93 -17
- package/src/migrations/functions/appUrls.ts +34 -0
- package/src/migrations/functions/quotas1.ts +20 -0
- package/src/migrations/functions/tests/appUrls.spec.js +29 -0
- package/src/migrations/functions/tests/quotas1.spec.js +27 -0
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
- package/src/migrations/functions/usageQuotas/index.ts +8 -0
- package/src/migrations/functions/usageQuotas/syncApps.ts +18 -0
- package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
- package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +37 -0
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +43 -0
- package/src/migrations/functions/userEmailViewCasing.ts +13 -0
- package/src/migrations/index.ts +56 -0
- package/src/module.d.ts +3 -0
- package/src/tests/utilities/TestConfiguration.js +82 -55
- package/src/threads/automation.js +17 -15
- package/src/threads/query.js +17 -12
- package/src/utilities/fileSystem/index.js +4 -3
- package/src/utilities/global.js +15 -12
- package/src/utilities/index.js +7 -17
- package/src/utilities/routing/index.js +5 -5
- package/src/utilities/rowProcessor/index.js +25 -27
- package/src/utilities/rowProcessor/utils.js +23 -7
- package/src/utilities/tests/usageQuota/usageQuota.spec.js +72 -0
- package/src/utilities/usageQuota/index.js +93 -0
- package/src/utilities/usageQuota/rows.js +75 -0
- package/src/utilities/usageQuota/usageQuoteReset.js +18 -0
- package/src/utilities/users.js +3 -3
- package/src/utilities/workerRequests.js +4 -27
- package/tsconfig.json +2 -1
- package/builder/assets/index.39e01193.css +0 -1
- package/dist/api/controllers/hosting.js +0 -30
- package/dist/api/routes/hosting.js +0 -11
- package/src/api/controllers/hosting.js +0 -22
- package/src/api/routes/hosting.js +0 -13
- package/src/api/routes/tests/hosting.spec.js +0 -36
- package/src/utilities/usageQuota.js +0 -73
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">83.6% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>51/61</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">78.57% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>22/28</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">84.74% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>50/59</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -161,68 +161,74 @@
|
|
|
161
161
|
<a name='L102'></a><a href='#L102'>102</a>
|
|
162
162
|
<a name='L103'></a><a href='#L103'>103</a>
|
|
163
163
|
<a name='L104'></a><a href='#L104'>104</a>
|
|
164
|
-
<a name='L105'></a><a href='#L105'>105</a
|
|
164
|
+
<a name='L105'></a><a href='#L105'>105</a>
|
|
165
|
+
<a name='L106'></a><a href='#L106'>106</a>
|
|
166
|
+
<a name='L107'></a><a href='#L107'>107</a>
|
|
167
|
+
<a name='L108'></a><a href='#L108'>108</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
165
168
|
<span class="cline-any cline-neutral"> </span>
|
|
166
169
|
<span class="cline-any cline-neutral"> </span>
|
|
167
|
-
<span class="cline-any cline-yes">
|
|
168
|
-
<span class="cline-any cline-yes">
|
|
169
|
-
<span class="cline-any cline-yes">
|
|
170
|
-
<span class="cline-any cline-yes">
|
|
171
|
-
<span class="cline-any cline-yes">
|
|
170
|
+
<span class="cline-any cline-yes">44x</span>
|
|
171
|
+
<span class="cline-any cline-yes">44x</span>
|
|
172
|
+
<span class="cline-any cline-yes">44x</span>
|
|
173
|
+
<span class="cline-any cline-yes">44x</span>
|
|
174
|
+
<span class="cline-any cline-yes">44x</span>
|
|
172
175
|
<span class="cline-any cline-neutral"> </span>
|
|
173
176
|
<span class="cline-any cline-neutral"> </span>
|
|
174
177
|
<span class="cline-any cline-neutral"> </span>
|
|
175
|
-
<span class="cline-any cline-yes">
|
|
176
|
-
<span class="cline-any cline-yes">
|
|
178
|
+
<span class="cline-any cline-yes">44x</span>
|
|
179
|
+
<span class="cline-any cline-yes">44x</span>
|
|
180
|
+
<span class="cline-any cline-yes">44x</span>
|
|
177
181
|
<span class="cline-any cline-neutral"> </span>
|
|
178
|
-
<span class="cline-any cline-yes">
|
|
179
|
-
<span class="cline-any cline-yes">
|
|
182
|
+
<span class="cline-any cline-yes">44x</span>
|
|
183
|
+
<span class="cline-any cline-yes">173x</span>
|
|
184
|
+
<span class="cline-any cline-yes">173x</span>
|
|
180
185
|
<span class="cline-any cline-yes">3x</span>
|
|
181
186
|
<span class="cline-any cline-neutral"> </span>
|
|
182
187
|
<span class="cline-any cline-neutral"> </span>
|
|
183
|
-
<span class="cline-any cline-yes">
|
|
188
|
+
<span class="cline-any cline-yes">170x</span>
|
|
184
189
|
<span class="cline-any cline-no"> </span>
|
|
185
190
|
<span class="cline-any cline-no"> </span>
|
|
186
191
|
<span class="cline-any cline-no"> </span>
|
|
187
192
|
<span class="cline-any cline-no"> </span>
|
|
188
193
|
<span class="cline-any cline-neutral"> </span>
|
|
189
194
|
<span class="cline-any cline-neutral"> </span>
|
|
190
|
-
<span class="cline-any cline-yes">
|
|
195
|
+
<span class="cline-any cline-yes">170x</span>
|
|
191
196
|
<span class="cline-any cline-neutral"> </span>
|
|
192
|
-
<span class="cline-any cline-yes">
|
|
193
|
-
<span class="cline-any cline-yes">
|
|
194
|
-
<span class="cline-any cline-yes">
|
|
195
|
-
<span class="cline-any cline-
|
|
197
|
+
<span class="cline-any cline-yes">170x</span>
|
|
198
|
+
<span class="cline-any cline-yes">138x</span>
|
|
199
|
+
<span class="cline-any cline-yes">32x</span>
|
|
200
|
+
<span class="cline-any cline-yes">27x</span>
|
|
196
201
|
<span class="cline-any cline-neutral"> </span>
|
|
197
|
-
<span class="cline-any cline-yes">
|
|
198
|
-
<span class="cline-any cline-yes">
|
|
202
|
+
<span class="cline-any cline-yes">170x</span>
|
|
203
|
+
<span class="cline-any cline-yes">170x</span>
|
|
199
204
|
<span class="cline-any cline-neutral"> </span>
|
|
200
205
|
<span class="cline-any cline-neutral"> </span>
|
|
201
206
|
<span class="cline-any cline-neutral"> </span>
|
|
202
|
-
<span class="cline-any cline-yes">
|
|
203
|
-
<span class="cline-any cline-yes">
|
|
207
|
+
<span class="cline-any cline-yes">166x</span>
|
|
208
|
+
<span class="cline-any cline-yes">166x</span>
|
|
204
209
|
<span class="cline-any cline-neutral"> </span>
|
|
205
|
-
<span class="cline-any cline-yes">
|
|
210
|
+
<span class="cline-any cline-yes">166x</span>
|
|
206
211
|
<span class="cline-any cline-neutral"> </span>
|
|
207
212
|
<span class="cline-any cline-neutral"> </span>
|
|
208
|
-
<span class="cline-any cline-yes">
|
|
213
|
+
<span class="cline-any cline-yes">44x</span>
|
|
209
214
|
<span class="cline-any cline-neutral"> </span>
|
|
210
215
|
<span class="cline-any cline-neutral"> </span>
|
|
211
|
-
<span class="cline-any cline-yes">
|
|
212
|
-
<span class="cline-any cline-yes">
|
|
216
|
+
<span class="cline-any cline-yes">164x</span>
|
|
217
|
+
<span class="cline-any cline-yes">164x</span>
|
|
213
218
|
<span class="cline-any cline-neutral"> </span>
|
|
214
219
|
<span class="cline-any cline-neutral"> </span>
|
|
215
|
-
<span class="cline-any cline-yes">
|
|
220
|
+
<span class="cline-any cline-yes">44x</span>
|
|
216
221
|
<span class="cline-any cline-yes">2x</span>
|
|
217
222
|
<span class="cline-any cline-yes">2x</span>
|
|
218
223
|
<span class="cline-any cline-neutral"> </span>
|
|
219
224
|
<span class="cline-any cline-neutral"> </span>
|
|
220
|
-
<span class="cline-any cline-yes">
|
|
225
|
+
<span class="cline-any cline-yes">44x</span>
|
|
221
226
|
<span class="cline-any cline-yes">2x</span>
|
|
222
227
|
<span class="cline-any cline-yes">2x</span>
|
|
223
228
|
<span class="cline-any cline-neutral"> </span>
|
|
224
229
|
<span class="cline-any cline-neutral"> </span>
|
|
225
|
-
<span class="cline-any cline-yes">
|
|
230
|
+
<span class="cline-any cline-yes">44x</span>
|
|
231
|
+
<span class="cline-any cline-yes">32x</span>
|
|
226
232
|
<span class="cline-any cline-yes">32x</span>
|
|
227
233
|
<span class="cline-any cline-neutral"> </span>
|
|
228
234
|
<span class="cline-any cline-yes">32x</span>
|
|
@@ -252,7 +258,7 @@
|
|
|
252
258
|
<span class="cline-any cline-yes">32x</span>
|
|
253
259
|
<span class="cline-any cline-neutral"> </span>
|
|
254
260
|
<span class="cline-any cline-neutral"> </span>
|
|
255
|
-
<span class="cline-any cline-yes">
|
|
261
|
+
<span class="cline-any cline-yes">44x</span>
|
|
256
262
|
<span class="cline-any cline-yes">30x</span>
|
|
257
263
|
<span class="cline-any cline-yes">30x</span>
|
|
258
264
|
<span class="cline-any cline-no"> </span>
|
|
@@ -270,7 +276,7 @@
|
|
|
270
276
|
getGlobalIDFromUserMetadataID,
|
|
271
277
|
} = require("../db/utils")
|
|
272
278
|
const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
|
|
273
|
-
const {
|
|
279
|
+
const { getProdAppID } = require("@budibase/backend-core/db")
|
|
274
280
|
const { getGlobalUserParams } = require("@budibase/backend-core/db")
|
|
275
281
|
const { user: userCache } = require("@budibase/backend-core/cache")
|
|
276
282
|
const {
|
|
@@ -278,8 +284,10 @@ const {
|
|
|
278
284
|
isUserInAppTenant,
|
|
279
285
|
} = require("@budibase/backend-core/tenancy")
|
|
280
286
|
const env = require("../environment")
|
|
287
|
+
const { getAppId } = require("@budibase/backend-core/context")
|
|
281
288
|
|
|
282
|
-
exports.updateAppRole = (
|
|
289
|
+
exports.updateAppRole = (user, { appId } = {}) => {
|
|
290
|
+
appId = appId || getAppId()
|
|
283
291
|
if (!user || !user.roles) {
|
|
284
292
|
return user
|
|
285
293
|
}
|
|
@@ -291,29 +299,29 @@ exports.updateAppRole = (appId, user) => {
|
|
|
291
299
|
<span class="cstat-no" title="statement not covered" > return user</span>
|
|
292
300
|
}
|
|
293
301
|
// always use the deployed app
|
|
294
|
-
user.roleId = user.roles[
|
|
302
|
+
user.roleId = user.roles[getProdAppID(appId)]
|
|
295
303
|
// if a role wasn't found then either set as admin (builder) or public (everyone else)
|
|
296
304
|
if (!user.roleId && user.builder && user.builder.global) {
|
|
297
305
|
user.roleId = BUILTIN_ROLE_IDS.ADMIN
|
|
298
|
-
} else
|
|
299
|
-
|
|
306
|
+
} else if (!user.roleId) {
|
|
307
|
+
user.roleId = BUILTIN_ROLE_IDS.PUBLIC
|
|
300
308
|
}
|
|
301
309
|
delete user.roles
|
|
302
310
|
return user
|
|
303
311
|
}
|
|
304
312
|
|
|
305
|
-
function processUser(
|
|
313
|
+
function processUser(user, { appId } = {}) {
|
|
306
314
|
if (user) {
|
|
307
315
|
delete user.password
|
|
308
316
|
}
|
|
309
|
-
return exports.updateAppRole(
|
|
317
|
+
return exports.updateAppRole(user, { appId })
|
|
310
318
|
}
|
|
311
319
|
|
|
312
320
|
exports.getCachedSelf = async (ctx, appId) => {
|
|
313
321
|
// this has to be tenant aware, can't depend on the context to find it out
|
|
314
322
|
// running some middlewares before the tenancy causes context to break
|
|
315
323
|
const user = await userCache.getUser(ctx.user._id)
|
|
316
|
-
return processUser(
|
|
324
|
+
return processUser(user, { appId })
|
|
317
325
|
}
|
|
318
326
|
|
|
319
327
|
exports.getRawGlobalUser = async userId => {
|
|
@@ -321,12 +329,13 @@ exports.getRawGlobalUser = async userId => {
|
|
|
321
329
|
return db.get(getGlobalIDFromUserMetadataID(userId))
|
|
322
330
|
}
|
|
323
331
|
|
|
324
|
-
exports.getGlobalUser = async
|
|
332
|
+
exports.getGlobalUser = async userId => {
|
|
325
333
|
let user = await exports.getRawGlobalUser(userId)
|
|
326
|
-
return processUser(
|
|
334
|
+
return processUser(user)
|
|
327
335
|
}
|
|
328
336
|
|
|
329
|
-
exports.getGlobalUsers = async (
|
|
337
|
+
exports.getGlobalUsers = async (users = null) => {
|
|
338
|
+
const appId = getAppId()
|
|
330
339
|
const db = getGlobalDB()
|
|
331
340
|
let globalUsers
|
|
332
341
|
if (users) {
|
|
@@ -353,11 +362,11 @@ exports.getGlobalUsers = async (appId = <span class="branch-0 cbranch-no" title=
|
|
|
353
362
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!appId) {
|
|
354
363
|
<span class="cstat-no" title="statement not covered" > return globalUsers</span>
|
|
355
364
|
}
|
|
356
|
-
return globalUsers.map(user => exports.updateAppRole(
|
|
365
|
+
return globalUsers.map(user => exports.updateAppRole(user))
|
|
357
366
|
}
|
|
358
367
|
|
|
359
|
-
exports.getGlobalUsersFromMetadata = async
|
|
360
|
-
const globalUsers = await exports.getGlobalUsers(
|
|
368
|
+
exports.getGlobalUsersFromMetadata = async users => {
|
|
369
|
+
const globalUsers = await exports.getGlobalUsers(users)
|
|
361
370
|
return users.map(<span class="fstat-no" title="function not covered" >us</span>er => {
|
|
362
371
|
const globalUser = <span class="cstat-no" title="statement not covered" >globalUsers.find(</span>
|
|
363
372
|
<span class="fstat-no" title="function not covered" > gl</span>obalUser => <span class="cstat-no" title="statement not covered" >globalUser && user._id.includes(globalUser._id)</span>
|
|
@@ -376,7 +385,7 @@ exports.getGlobalUsersFromMetadata = async (appId, users) => {
|
|
|
376
385
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
377
386
|
Code coverage generated by
|
|
378
387
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
379
|
-
at
|
|
388
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
380
389
|
</div>
|
|
381
390
|
</div>
|
|
382
391
|
<script src="../prettify.js"></script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">72.
|
|
26
|
+
<span class="strong">72.83% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>236/324</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">56.81% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>75/132</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">68.
|
|
40
|
+
<span class="strong">68.85% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>42/61</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">72.
|
|
47
|
+
<span class="strong">72.55% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>230/317</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -134,32 +134,32 @@
|
|
|
134
134
|
|
|
135
135
|
<tr>
|
|
136
136
|
<td class="file high" data-value="global.js"><a href="global.js.html">global.js</a></td>
|
|
137
|
-
<td data-value="
|
|
138
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
137
|
+
<td data-value="83.6" class="pic high">
|
|
138
|
+
<div class="chart"><div class="cover-fill" style="width: 83%"></div><div class="cover-empty" style="width: 17%"></div></div>
|
|
139
139
|
</td>
|
|
140
|
-
<td data-value="
|
|
141
|
-
<td data-value="
|
|
142
|
-
<td data-value="
|
|
143
|
-
<td data-value="
|
|
140
|
+
<td data-value="83.6" class="pct high">83.6%</td>
|
|
141
|
+
<td data-value="61" class="abs high">51/61</td>
|
|
142
|
+
<td data-value="78.57" class="pct medium">78.57%</td>
|
|
143
|
+
<td data-value="28" class="abs medium">22/28</td>
|
|
144
144
|
<td data-value="73.33" class="pct medium">73.33%</td>
|
|
145
145
|
<td data-value="15" class="abs medium">11/15</td>
|
|
146
|
-
<td data-value="
|
|
147
|
-
<td data-value="
|
|
146
|
+
<td data-value="84.74" class="pct high">84.74%</td>
|
|
147
|
+
<td data-value="59" class="abs high">50/59</td>
|
|
148
148
|
</tr>
|
|
149
149
|
|
|
150
150
|
<tr>
|
|
151
151
|
<td class="file medium" data-value="index.js"><a href="index.js.html">index.js</a></td>
|
|
152
|
-
<td data-value="
|
|
153
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
152
|
+
<td data-value="77.77" class="pic medium">
|
|
153
|
+
<div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
|
|
154
154
|
</td>
|
|
155
|
-
<td data-value="
|
|
156
|
-
<td data-value="
|
|
157
|
-
<td data-value="
|
|
158
|
-
<td data-value="
|
|
159
|
-
<td data-value="
|
|
160
|
-
<td data-value="
|
|
161
|
-
<td data-value="
|
|
162
|
-
<td data-value="
|
|
155
|
+
<td data-value="77.77" class="pct medium">77.77%</td>
|
|
156
|
+
<td data-value="72" class="abs medium">56/72</td>
|
|
157
|
+
<td data-value="53.84" class="pct medium">53.84%</td>
|
|
158
|
+
<td data-value="26" class="abs medium">14/26</td>
|
|
159
|
+
<td data-value="80" class="pct high">80%</td>
|
|
160
|
+
<td data-value="15" class="abs high">12/15</td>
|
|
161
|
+
<td data-value="77.14" class="pct medium">77.14%</td>
|
|
162
|
+
<td data-value="70" class="abs medium">54/70</td>
|
|
163
163
|
</tr>
|
|
164
164
|
|
|
165
165
|
<tr>
|
|
@@ -224,17 +224,17 @@
|
|
|
224
224
|
|
|
225
225
|
<tr>
|
|
226
226
|
<td class="file medium" data-value="workerRequests.js"><a href="workerRequests.js.html">workerRequests.js</a></td>
|
|
227
|
-
<td data-value="
|
|
228
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
227
|
+
<td data-value="52.38" class="pic medium">
|
|
228
|
+
<div class="chart"><div class="cover-fill" style="width: 52%"></div><div class="cover-empty" style="width: 48%"></div></div>
|
|
229
229
|
</td>
|
|
230
|
-
<td data-value="
|
|
231
|
-
<td data-value="
|
|
232
|
-
<td data-value="
|
|
233
|
-
<td data-value="
|
|
234
|
-
<td data-value="
|
|
235
|
-
<td data-value="
|
|
236
|
-
<td data-value="
|
|
237
|
-
<td data-value="
|
|
230
|
+
<td data-value="52.38" class="pct medium">52.38%</td>
|
|
231
|
+
<td data-value="42" class="abs medium">22/42</td>
|
|
232
|
+
<td data-value="32" class="pct low">32%</td>
|
|
233
|
+
<td data-value="25" class="abs low">8/25</td>
|
|
234
|
+
<td data-value="50" class="pct medium">50%</td>
|
|
235
|
+
<td data-value="4" class="abs medium">2/4</td>
|
|
236
|
+
<td data-value="52.38" class="pct medium">52.38%</td>
|
|
237
|
+
<td data-value="42" class="abs medium">22/42</td>
|
|
238
238
|
</tr>
|
|
239
239
|
|
|
240
240
|
</tbody>
|
|
@@ -245,7 +245,7 @@
|
|
|
245
245
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
246
246
|
Code coverage generated by
|
|
247
247
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
248
|
-
at
|
|
248
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
249
249
|
</div>
|
|
250
250
|
</div>
|
|
251
251
|
<script src="../prettify.js"></script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">77.77% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>56/72</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">53.84% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>14/
|
|
35
|
+
<span class='fraction'>14/26</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">80% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>12/
|
|
42
|
+
<span class='fraction'>12/15</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">77.14% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>54/70</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -210,30 +210,20 @@
|
|
|
210
210
|
<a name='L151'></a><a href='#L151'>151</a>
|
|
211
211
|
<a name='L152'></a><a href='#L152'>152</a>
|
|
212
212
|
<a name='L153'></a><a href='#L153'>153</a>
|
|
213
|
-
<a name='L154'></a><a href='#L154'>154</a>
|
|
214
|
-
<
|
|
215
|
-
<
|
|
216
|
-
<
|
|
217
|
-
<
|
|
218
|
-
<
|
|
219
|
-
<
|
|
220
|
-
<
|
|
221
|
-
<
|
|
222
|
-
<
|
|
223
|
-
<
|
|
224
|
-
<span class="cline-any cline-yes">
|
|
225
|
-
<span class="cline-any cline-
|
|
226
|
-
<span class="cline-any cline-yes">
|
|
227
|
-
<span class="cline-any cline-yes">37x</span>
|
|
228
|
-
<span class="cline-any cline-yes">37x</span>
|
|
229
|
-
<span class="cline-any cline-neutral"> </span>
|
|
230
|
-
<span class="cline-any cline-yes">37x</span>
|
|
231
|
-
<span class="cline-any cline-neutral"> </span>
|
|
232
|
-
<span class="cline-any cline-yes">37x</span>
|
|
233
|
-
<span class="cline-any cline-neutral"> </span>
|
|
234
|
-
<span class="cline-any cline-yes">37x</span>
|
|
235
|
-
<span class="cline-any cline-neutral"> </span>
|
|
236
|
-
<span class="cline-any cline-yes">37x</span>
|
|
213
|
+
<a name='L154'></a><a href='#L154'>154</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">41x</span>
|
|
214
|
+
<span class="cline-any cline-yes">41x</span>
|
|
215
|
+
<span class="cline-any cline-yes">41x</span>
|
|
216
|
+
<span class="cline-any cline-yes">41x</span>
|
|
217
|
+
<span class="cline-any cline-yes">41x</span>
|
|
218
|
+
<span class="cline-any cline-yes">41x</span>
|
|
219
|
+
<span class="cline-any cline-neutral"> </span>
|
|
220
|
+
<span class="cline-any cline-yes">41x</span>
|
|
221
|
+
<span class="cline-any cline-neutral"> </span>
|
|
222
|
+
<span class="cline-any cline-yes">41x</span>
|
|
223
|
+
<span class="cline-any cline-neutral"> </span>
|
|
224
|
+
<span class="cline-any cline-yes">41x</span>
|
|
225
|
+
<span class="cline-any cline-neutral"> </span>
|
|
226
|
+
<span class="cline-any cline-yes">41x</span>
|
|
237
227
|
<span class="cline-any cline-yes">1x</span>
|
|
238
228
|
<span class="cline-any cline-yes">1x</span>
|
|
239
229
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -247,15 +237,15 @@
|
|
|
247
237
|
<span class="cline-any cline-neutral"> </span>
|
|
248
238
|
<span class="cline-any cline-neutral"> </span>
|
|
249
239
|
<span class="cline-any cline-neutral"> </span>
|
|
250
|
-
<span class="cline-any cline-yes">
|
|
251
|
-
<span class="cline-any cline-yes">
|
|
240
|
+
<span class="cline-any cline-yes">41x</span>
|
|
241
|
+
<span class="cline-any cline-yes">13x</span>
|
|
252
242
|
<span class="cline-any cline-neutral"> </span>
|
|
253
243
|
<span class="cline-any cline-neutral"> </span>
|
|
254
244
|
<span class="cline-any cline-neutral"> </span>
|
|
255
245
|
<span class="cline-any cline-neutral"> </span>
|
|
256
246
|
<span class="cline-any cline-neutral"> </span>
|
|
257
247
|
<span class="cline-any cline-neutral"> </span>
|
|
258
|
-
<span class="cline-any cline-yes">
|
|
248
|
+
<span class="cline-any cline-yes">41x</span>
|
|
259
249
|
<span class="cline-any cline-yes">2x</span>
|
|
260
250
|
<span class="cline-any cline-neutral"> </span>
|
|
261
251
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -274,8 +264,8 @@
|
|
|
274
264
|
<span class="cline-any cline-neutral"> </span>
|
|
275
265
|
<span class="cline-any cline-neutral"> </span>
|
|
276
266
|
<span class="cline-any cline-neutral"> </span>
|
|
277
|
-
<span class="cline-any cline-yes">
|
|
278
|
-
<span class="cline-any cline-yes">
|
|
267
|
+
<span class="cline-any cline-yes">41x</span>
|
|
268
|
+
<span class="cline-any cline-yes">204x</span>
|
|
279
269
|
<span class="cline-any cline-no"> </span>
|
|
280
270
|
<span class="cline-any cline-neutral"> </span>
|
|
281
271
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -285,17 +275,17 @@
|
|
|
285
275
|
<span class="cline-any cline-neutral"> </span>
|
|
286
276
|
<span class="cline-any cline-no"> </span>
|
|
287
277
|
<span class="cline-any cline-neutral"> </span>
|
|
288
|
-
<span class="cline-any cline-yes">
|
|
278
|
+
<span class="cline-any cline-yes">204x</span>
|
|
289
279
|
<span class="cline-any cline-neutral"> </span>
|
|
290
280
|
<span class="cline-any cline-neutral"> </span>
|
|
291
281
|
<span class="cline-any cline-neutral"> </span>
|
|
292
|
-
<span class="cline-any cline-yes">
|
|
282
|
+
<span class="cline-any cline-yes">41x</span>
|
|
293
283
|
<span class="cline-any cline-yes">2x</span>
|
|
294
284
|
<span class="cline-any cline-neutral"> </span>
|
|
295
285
|
<span class="cline-any cline-neutral"> </span>
|
|
296
286
|
<span class="cline-any cline-neutral"> </span>
|
|
297
287
|
<span class="cline-any cline-neutral"> </span>
|
|
298
|
-
<span class="cline-any cline-yes">
|
|
288
|
+
<span class="cline-any cline-yes">41x</span>
|
|
299
289
|
<span class="cline-any cline-yes">3x</span>
|
|
300
290
|
<span class="cline-any cline-yes">3x</span>
|
|
301
291
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -321,13 +311,13 @@
|
|
|
321
311
|
<span class="cline-any cline-neutral"> </span>
|
|
322
312
|
<span class="cline-any cline-neutral"> </span>
|
|
323
313
|
<span class="cline-any cline-neutral"> </span>
|
|
324
|
-
<span class="cline-any cline-yes">
|
|
314
|
+
<span class="cline-any cline-yes">41x</span>
|
|
325
315
|
<span class="cline-any cline-yes">1x</span>
|
|
326
316
|
<span class="cline-any cline-yes">1x</span>
|
|
327
317
|
<span class="cline-any cline-neutral"> </span>
|
|
328
318
|
<span class="cline-any cline-neutral"> </span>
|
|
329
319
|
<span class="cline-any cline-neutral"> </span>
|
|
330
|
-
<span class="cline-any cline-yes">
|
|
320
|
+
<span class="cline-any cline-yes">41x</span>
|
|
331
321
|
<span class="cline-any cline-yes">4x</span>
|
|
332
322
|
<span class="cline-any cline-yes">4x</span>
|
|
333
323
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -344,7 +334,7 @@
|
|
|
344
334
|
<span class="cline-any cline-neutral"> </span>
|
|
345
335
|
<span class="cline-any cline-neutral"> </span>
|
|
346
336
|
<span class="cline-any cline-neutral"> </span>
|
|
347
|
-
<span class="cline-any cline-yes">
|
|
337
|
+
<span class="cline-any cline-yes">41x</span>
|
|
348
338
|
<span class="cline-any cline-no"> </span>
|
|
349
339
|
<span class="cline-any cline-neutral"> </span>
|
|
350
340
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -354,7 +344,7 @@
|
|
|
354
344
|
<span class="cline-any cline-neutral"> </span>
|
|
355
345
|
<span class="cline-any cline-neutral"> </span>
|
|
356
346
|
<span class="cline-any cline-neutral"> </span>
|
|
357
|
-
<span class="cline-any cline-yes">
|
|
347
|
+
<span class="cline-any cline-yes">41x</span>
|
|
358
348
|
<span class="cline-any cline-no"> </span>
|
|
359
349
|
<span class="cline-any cline-neutral"> </span>
|
|
360
350
|
<span class="cline-any cline-no"> </span>
|
|
@@ -363,17 +353,7 @@
|
|
|
363
353
|
<span class="cline-any cline-neutral"> </span>
|
|
364
354
|
<span class="cline-any cline-neutral"> </span>
|
|
365
355
|
<span class="cline-any cline-neutral"> </span>
|
|
366
|
-
<span class="cline-any cline-yes">
|
|
367
|
-
<span class="cline-any cline-no"> </span>
|
|
368
|
-
<span class="cline-any cline-no"> </span>
|
|
369
|
-
<span class="cline-any cline-no"> </span>
|
|
370
|
-
<span class="cline-any cline-no"> </span>
|
|
371
|
-
<span class="cline-any cline-neutral"> </span>
|
|
372
|
-
<span class="cline-any cline-no"> </span>
|
|
373
|
-
<span class="cline-any cline-neutral"> </span>
|
|
374
|
-
<span class="cline-any cline-neutral"> </span>
|
|
375
|
-
<span class="cline-any cline-neutral"> </span>
|
|
376
|
-
<span class="cline-any cline-yes">37x</span>
|
|
356
|
+
<span class="cline-any cline-yes">41x</span>
|
|
377
357
|
<span class="cline-any cline-yes">29x</span>
|
|
378
358
|
<span class="cline-any cline-yes">29x</span>
|
|
379
359
|
<span class="cline-any cline-yes">29x</span>
|
|
@@ -386,9 +366,9 @@
|
|
|
386
366
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const env = require("../environment")
|
|
387
367
|
const { OBJ_STORE_DIRECTORY } = require("../constants")
|
|
388
368
|
const { sanitizeKey } = require("@budibase/backend-core/objectStore")
|
|
389
|
-
const CouchDB = require("../db")
|
|
390
369
|
const { generateMetadataID } = require("../db/utils")
|
|
391
370
|
const Readable = require("stream").Readable
|
|
371
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
392
372
|
|
|
393
373
|
const BB_CDN = "https://cdn.budi.live"
|
|
394
374
|
|
|
@@ -458,8 +438,8 @@ exports.attachmentsRelativeURL = attachmentKey => {
|
|
|
458
438
|
)
|
|
459
439
|
}
|
|
460
440
|
|
|
461
|
-
exports.updateEntityMetadata = async (
|
|
462
|
-
const db =
|
|
441
|
+
exports.updateEntityMetadata = async (type, entityId, updateFn) => {
|
|
442
|
+
const db = getAppDB()
|
|
463
443
|
const id = generateMetadataID(type, entityId)
|
|
464
444
|
// read it to see if it exists, we'll overwrite it no matter what
|
|
465
445
|
let rev,
|
|
@@ -484,14 +464,14 @@ exports.updateEntityMetadata = async (appId, type, entityId, updateFn) => {
|
|
|
484
464
|
}
|
|
485
465
|
}
|
|
486
466
|
|
|
487
|
-
exports.saveEntityMetadata = async (
|
|
488
|
-
return exports.updateEntityMetadata(
|
|
467
|
+
exports.saveEntityMetadata = async (type, entityId, metadata) => {
|
|
468
|
+
return exports.updateEntityMetadata(type, entityId, () => {
|
|
489
469
|
return metadata
|
|
490
470
|
})
|
|
491
471
|
}
|
|
492
472
|
|
|
493
|
-
exports.deleteEntityMetadata = async (
|
|
494
|
-
const db =
|
|
473
|
+
exports.deleteEntityMetadata = async (type, entityId) => {
|
|
474
|
+
const db = getAppDB()
|
|
495
475
|
const id = generateMetadataID(type, entityId)
|
|
496
476
|
let rev
|
|
497
477
|
try {
|
|
@@ -526,16 +506,6 @@ exports.stringToReadStream = <span class="fstat-no" title="function not covered"
|
|
|
526
506
|
})
|
|
527
507
|
}
|
|
528
508
|
|
|
529
|
-
exports.doesDatabaseExist = <span class="fstat-no" title="function not covered" >as</span>ync dbName => {
|
|
530
|
-
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
531
|
-
const db = <span class="cstat-no" title="statement not covered" >new CouchDB(dbName, { skip_setup: true })</span>
|
|
532
|
-
const info = <span class="cstat-no" title="statement not covered" >await db.info()</span>
|
|
533
|
-
<span class="cstat-no" title="statement not covered" > return info && !info.error</span>
|
|
534
|
-
} catch (err) {
|
|
535
|
-
<span class="cstat-no" title="statement not covered" > return false</span>
|
|
536
|
-
}
|
|
537
|
-
}
|
|
538
|
-
|
|
539
509
|
exports.formatBytes = bytes => {
|
|
540
510
|
const units = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
|
|
541
511
|
const byteIncrements = 1024
|
|
@@ -553,7 +523,7 @@ exports.formatBytes = bytes => {
|
|
|
553
523
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
554
524
|
Code coverage generated by
|
|
555
525
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
556
|
-
at
|
|
526
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
557
527
|
</div>
|
|
558
528
|
</div>
|
|
559
529
|
<script src="../prettify.js"></script>
|