@budibase/server 1.0.49-alpha.1 → 1.0.49-alpha.13
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.ba78c49d.css → index.83c0944f.css} +1 -1
- package/builder/assets/{index.ed1cf508.js → index.f686d3cd.js} +184 -184
- package/builder/index.html +2 -2
- package/coverage/clover.xml +2656 -2712
- package/coverage/coverage-final.json +104 -105
- 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 +157 -136
- package/coverage/lcov-report/api/controllers/auth.js.html +11 -14
- 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 +10 -13
- package/coverage/lcov-report/api/controllers/datasource.js.html +31 -37
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/api/controllers/index.html +69 -54
- 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/{migrations/usageQuotas/syncApps.js.html → api/controllers/migrations.js.html} +30 -45
- 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 +28 -28
- package/coverage/lcov-report/api/controllers/row/index.js.html +13 -13
- package/coverage/lcov-report/api/controllers/row/internal.js.html +60 -105
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +25 -31
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +21 -24
- package/coverage/lcov-report/api/controllers/row/utils.js.html +27 -24
- 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 +27 -57
- package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
- package/coverage/lcov-report/api/controllers/table/index.html +37 -37
- package/coverage/lcov-report/api/controllers/table/index.js.html +20 -20
- package/coverage/lcov-report/api/controllers/table/internal.js.html +45 -54
- package/coverage/lcov-report/api/controllers/table/utils.js.html +67 -103
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +43 -52
- 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 +3 -3
- 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 +22 -7
- package/coverage/lcov-report/api/routes/index.js.html +10 -4
- 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/{migrations/usageQuotas/index.js.html → api/routes/migrations.js.html} +25 -55
- 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 +1 -1
- 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 +7 -10
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
- 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 +1 -1
- 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 +1 -1
- package/coverage/lcov-report/constants/index.js.html +26 -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 +1 -1
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +15 -27
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +40 -82
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +40 -40
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +74 -74
- 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 +97 -112
- 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 +21 -15
- package/coverage/lcov-report/middleware/builder.js.html +3 -3
- package/coverage/lcov-report/middleware/currentapp.js.html +72 -60
- package/coverage/lcov-report/middleware/index.html +28 -28
- 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 +29 -35
- 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 +25 -25
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +26 -47
- 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 +57 -48
- package/coverage/lcov-report/utilities/index.html +27 -27
- package/coverage/lcov-report/utilities/index.js.html +42 -72
- 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 +11 -11
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +32 -74
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +4 -4
- 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 +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +13 -10
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +5 -2
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +9 -9
- package/coverage/lcov-report/utilities/workerRequests.js.html +16 -16
- package/coverage/lcov.info +4018 -4092
- package/dist/api/controllers/application.js +49 -48
- package/dist/api/controllers/auth.js +4 -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 +9 -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 +29 -44
- package/dist/api/controllers/row/internalSearch.js +11 -13
- package/dist/api/controllers/row/staticFormula.js +11 -11
- package/dist/api/controllers/row/utils.js +7 -6
- package/dist/api/controllers/screen.js +5 -7
- package/dist/api/controllers/static/index.js +4 -4
- package/dist/api/controllers/table/bulkFormula.js +14 -15
- package/dist/api/controllers/table/external.js +7 -10
- package/dist/api/controllers/table/index.js +5 -5
- package/dist/api/controllers/table/internal.js +16 -19
- package/dist/api/controllers/table/utils.js +29 -31
- package/dist/api/controllers/user.js +16 -20
- 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 -0
- package/dist/api/routes/migrations.js +9 -0
- 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 +1 -1
- package/dist/automations/steps/updateRow.js +1 -1
- package/dist/automations/triggers.js +27 -25
- package/dist/automations/utils.js +10 -5
- package/dist/db/linkedRows/LinkController.js +3 -7
- package/dist/db/linkedRows/index.js +16 -26
- package/dist/db/linkedRows/linkUtils.js +6 -6
- package/dist/db/views/staticViews.js +9 -10
- package/dist/environment.js +3 -1
- package/dist/integrations/base/sql.js +49 -15
- package/dist/integrations/utils.js +3 -0
- package/dist/middleware/authorized.js +5 -3
- package/dist/middleware/builder.js +2 -2
- package/dist/middleware/currentapp.js +41 -37
- package/dist/middleware/usageQuota.js +2 -4
- package/dist/migrations/functions/appUrls.js +46 -0
- package/dist/migrations/functions/quotas1.js +50 -0
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/index.js +6 -10
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncApps.js +12 -9
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncRows.js +16 -12
- package/dist/migrations/functions/userEmailViewCasing.js +24 -0
- package/dist/migrations/index.js +62 -0
- package/dist/package.json +4 -4
- package/dist/tests/utilities/TestConfiguration.js +70 -44
- package/dist/threads/automation.js +13 -11
- package/dist/threads/query.js +13 -19
- 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 +9 -10
- package/dist/utilities/usageQuota/index.js +1 -0
- package/dist/utilities/usageQuota/rows.js +1 -0
- package/dist/utilities/users.js +3 -3
- package/dist/utilities/workerRequests.js +4 -4
- package/package.json +5 -5
- 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 +38 -31
- package/src/api/controllers/auth.js +4 -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 +9 -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 +29 -44
- package/src/api/controllers/row/internalSearch.js +11 -13
- package/src/api/controllers/row/staticFormula.js +10 -11
- package/src/api/controllers/row/utils.js +7 -6
- package/src/api/controllers/screen.js +5 -7
- package/src/api/controllers/static/index.js +4 -4
- package/src/api/controllers/table/bulkFormula.js +13 -23
- package/src/api/controllers/table/external.js +7 -10
- package/src/api/controllers/table/index.js +5 -5
- package/src/api/controllers/table/internal.js +18 -21
- package/src/api/controllers/table/utils.js +29 -41
- package/src/api/controllers/user.js +17 -20
- 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 -0
- package/src/api/routes/migrations.js +14 -0
- 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/utilities/TestFunctions.js +39 -17
- package/src/app.ts +18 -5
- package/src/automations/automationUtils.js +2 -3
- package/src/automations/steps/createRow.js +0 -1
- package/src/automations/steps/updateRow.js +1 -1
- package/src/automations/triggers.js +33 -31
- package/src/automations/utils.js +9 -5
- package/src/db/linkedRows/LinkController.js +3 -7
- package/src/db/linkedRows/index.js +16 -30
- 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/environment.js +3 -1
- package/src/integrations/base/sql.ts +61 -22
- package/src/integrations/utils.ts +4 -1
- package/src/middleware/authorized.js +5 -3
- package/src/middleware/builder.js +2 -2
- package/src/middleware/currentapp.js +50 -46
- package/src/middleware/tests/authorized.spec.js +7 -2
- package/src/middleware/tests/currentapp.spec.js +6 -0
- package/src/middleware/usageQuota.js +2 -4
- 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/{tests/usageQuotas/index.spec.js → functions/tests/quotas1.spec.js} +5 -5
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
- package/src/migrations/functions/usageQuotas/index.ts +8 -0
- package/src/migrations/{usageQuotas/syncApps.js → functions/usageQuotas/syncApps.ts} +6 -6
- package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
- package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncApps.spec.js +4 -4
- package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncRows.spec.js +4 -4
- 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 +73 -50
- package/src/threads/automation.js +17 -15
- package/src/threads/query.js +14 -21
- 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 +9 -23
- package/src/utilities/usageQuota/index.js +1 -0
- package/src/utilities/usageQuota/rows.js +1 -0
- package/src/utilities/users.js +3 -3
- package/src/utilities/workerRequests.js +4 -4
- package/tsconfig.json +2 -1
- package/coverage/lcov-report/migrations/usageQuotas/index.html +0 -141
- package/coverage/lcov-report/migrations/usageQuotas/syncRows.js.html +0 -143
- package/src/migrations/usageQuotas/index.js +0 -24
- package/src/migrations/usageQuotas/syncRows.js +0 -21
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">31.66% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>38/120</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">31.93% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>38/119</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -289,29 +289,27 @@
|
|
|
289
289
|
<a name='L230'></a><a href='#L230'>230</a>
|
|
290
290
|
<a name='L231'></a><a href='#L231'>231</a>
|
|
291
291
|
<a name='L232'></a><a href='#L232'>232</a>
|
|
292
|
-
<a name='L233'></a><a href='#L233'>233</a>
|
|
293
|
-
<a name='L234'></a><a href='#L234'>234</a>
|
|
294
|
-
<a name='L235'></a><a href='#L235'>235</a>
|
|
295
|
-
<a name='L236'></a><a href='#L236'>236</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">37x</span>
|
|
292
|
+
<a name='L233'></a><a href='#L233'>233</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
296
293
|
<span class="cline-any cline-neutral"> </span>
|
|
297
294
|
<span class="cline-any cline-neutral"> </span>
|
|
298
295
|
<span class="cline-any cline-neutral"> </span>
|
|
296
|
+
<span class="cline-any cline-yes">39x</span>
|
|
297
|
+
<span class="cline-any cline-yes">39x</span>
|
|
298
|
+
<span class="cline-any cline-yes">39x</span>
|
|
299
|
+
<span class="cline-any cline-yes">39x</span>
|
|
300
|
+
<span class="cline-any cline-yes">39x</span>
|
|
301
|
+
<span class="cline-any cline-yes">39x</span>
|
|
299
302
|
<span class="cline-any cline-neutral"> </span>
|
|
300
|
-
<span class="cline-any cline-yes">37x</span>
|
|
301
|
-
<span class="cline-any cline-yes">37x</span>
|
|
302
|
-
<span class="cline-any cline-yes">37x</span>
|
|
303
|
-
<span class="cline-any cline-yes">37x</span>
|
|
304
|
-
<span class="cline-any cline-yes">37x</span>
|
|
305
|
-
<span class="cline-any cline-yes">37x</span>
|
|
306
303
|
<span class="cline-any cline-neutral"> </span>
|
|
307
304
|
<span class="cline-any cline-neutral"> </span>
|
|
308
305
|
<span class="cline-any cline-neutral"> </span>
|
|
309
|
-
<span class="cline-any cline-yes">
|
|
310
|
-
<span class="cline-any cline-yes">
|
|
311
|
-
<span class="cline-any cline-yes">
|
|
306
|
+
<span class="cline-any cline-yes">39x</span>
|
|
307
|
+
<span class="cline-any cline-yes">39x</span>
|
|
308
|
+
<span class="cline-any cline-yes">39x</span>
|
|
312
309
|
<span class="cline-any cline-neutral"> </span>
|
|
313
310
|
<span class="cline-any cline-neutral"> </span>
|
|
314
311
|
<span class="cline-any cline-yes">2x</span>
|
|
312
|
+
<span class="cline-any cline-yes">2x</span>
|
|
315
313
|
<span class="cline-any cline-neutral"> </span>
|
|
316
314
|
<span class="cline-any cline-neutral"> </span>
|
|
317
315
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -348,13 +346,10 @@
|
|
|
348
346
|
<span class="cline-any cline-no"> </span>
|
|
349
347
|
<span class="cline-any cline-neutral"> </span>
|
|
350
348
|
<span class="cline-any cline-neutral"> </span>
|
|
351
|
-
<span class="cline-any cline-yes">
|
|
349
|
+
<span class="cline-any cline-yes">39x</span>
|
|
352
350
|
<span class="cline-any cline-neutral"> </span>
|
|
353
351
|
<span class="cline-any cline-no"> </span>
|
|
354
352
|
<span class="cline-any cline-no"> </span>
|
|
355
|
-
<span class="cline-any cline-neutral"> </span>
|
|
356
|
-
<span class="cline-any cline-neutral"> </span>
|
|
357
|
-
<span class="cline-any cline-neutral"> </span>
|
|
358
353
|
<span class="cline-any cline-no"> </span>
|
|
359
354
|
<span class="cline-any cline-no"> </span>
|
|
360
355
|
<span class="cline-any cline-no"> </span>
|
|
@@ -365,7 +360,7 @@
|
|
|
365
360
|
<span class="cline-any cline-no"> </span>
|
|
366
361
|
<span class="cline-any cline-neutral"> </span>
|
|
367
362
|
<span class="cline-any cline-neutral"> </span>
|
|
368
|
-
<span class="cline-any cline-yes">
|
|
363
|
+
<span class="cline-any cline-yes">39x</span>
|
|
369
364
|
<span class="cline-any cline-no"> </span>
|
|
370
365
|
<span class="cline-any cline-neutral"> </span>
|
|
371
366
|
<span class="cline-any cline-no"> </span>
|
|
@@ -436,7 +431,7 @@
|
|
|
436
431
|
<span class="cline-any cline-neutral"> </span>
|
|
437
432
|
<span class="cline-any cline-neutral"> </span>
|
|
438
433
|
<span class="cline-any cline-neutral"> </span>
|
|
439
|
-
<span class="cline-any cline-yes">
|
|
434
|
+
<span class="cline-any cline-yes">39x</span>
|
|
440
435
|
<span class="cline-any cline-yes">2x</span>
|
|
441
436
|
<span class="cline-any cline-yes">2x</span>
|
|
442
437
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -456,7 +451,7 @@
|
|
|
456
451
|
<span class="cline-any cline-yes">2x</span>
|
|
457
452
|
<span class="cline-any cline-neutral"> </span>
|
|
458
453
|
<span class="cline-any cline-neutral"> </span>
|
|
459
|
-
<span class="cline-any cline-yes">
|
|
454
|
+
<span class="cline-any cline-yes">39x</span>
|
|
460
455
|
<span class="cline-any cline-neutral"> </span>
|
|
461
456
|
<span class="cline-any cline-no"> </span>
|
|
462
457
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -466,8 +461,7 @@
|
|
|
466
461
|
<span class="cline-any cline-no"> </span>
|
|
467
462
|
<span class="cline-any cline-neutral"> </span>
|
|
468
463
|
<span class="cline-any cline-neutral"> </span>
|
|
469
|
-
<span class="cline-any cline-yes">
|
|
470
|
-
<span class="cline-any cline-yes">1x</span>
|
|
464
|
+
<span class="cline-any cline-yes">39x</span>
|
|
471
465
|
<span class="cline-any cline-yes">1x</span>
|
|
472
466
|
<span class="cline-any cline-yes">1x</span>
|
|
473
467
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -479,7 +473,7 @@
|
|
|
479
473
|
<span class="cline-any cline-yes">1x</span>
|
|
480
474
|
<span class="cline-any cline-neutral"> </span>
|
|
481
475
|
<span class="cline-any cline-neutral"> </span>
|
|
482
|
-
<span class="cline-any cline-yes">
|
|
476
|
+
<span class="cline-any cline-yes">39x</span>
|
|
483
477
|
<span class="cline-any cline-yes">1x</span>
|
|
484
478
|
<span class="cline-any cline-yes">1x</span>
|
|
485
479
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -492,11 +486,11 @@
|
|
|
492
486
|
<span class="cline-any cline-neutral"> </span>
|
|
493
487
|
<span class="cline-any cline-neutral"> </span>
|
|
494
488
|
<span class="cline-any cline-neutral"> </span>
|
|
495
|
-
<span class="cline-any cline-yes">
|
|
489
|
+
<span class="cline-any cline-yes">39x</span>
|
|
496
490
|
<span class="cline-any cline-yes">1x</span>
|
|
497
491
|
<span class="cline-any cline-neutral"> </span>
|
|
498
492
|
<span class="cline-any cline-neutral"> </span>
|
|
499
|
-
<span class="cline-any cline-yes">
|
|
493
|
+
<span class="cline-any cline-yes">39x</span>
|
|
500
494
|
<span class="cline-any cline-no"> </span>
|
|
501
495
|
<span class="cline-any cline-no"> </span>
|
|
502
496
|
<span class="cline-any cline-no"> </span>
|
|
@@ -515,7 +509,7 @@
|
|
|
515
509
|
<span class="cline-any cline-no"> </span>
|
|
516
510
|
<span class="cline-any cline-neutral"> </span>
|
|
517
511
|
<span class="cline-any cline-neutral"> </span>
|
|
518
|
-
<span class="cline-any cline-yes">
|
|
512
|
+
<span class="cline-any cline-yes">39x</span>
|
|
519
513
|
<span class="cline-any cline-no"> </span>
|
|
520
514
|
<span class="cline-any cline-no"> </span>
|
|
521
515
|
<span class="cline-any cline-no"> </span>
|
|
@@ -527,8 +521,7 @@
|
|
|
527
521
|
<span class="cline-any cline-neutral"> </span>
|
|
528
522
|
<span class="cline-any cline-no"> </span>
|
|
529
523
|
<span class="cline-any cline-neutral"> </span>
|
|
530
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
531
|
-
const {
|
|
524
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const {
|
|
532
525
|
generateUserMetadataID,
|
|
533
526
|
getUserMetadataParams,
|
|
534
527
|
generateUserFlagID,
|
|
@@ -540,12 +533,14 @@ const { isEqual } = require("lodash")
|
|
|
540
533
|
const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
|
|
541
534
|
const {
|
|
542
535
|
getDevelopmentAppID,
|
|
543
|
-
|
|
536
|
+
getProdAppIDs,
|
|
537
|
+
dbExists,
|
|
544
538
|
} = require("@budibase/backend-core/db")
|
|
545
|
-
const { doesDatabaseExist } = require("../../utilities")
|
|
546
539
|
const { UserStatus } = require("@budibase/backend-core/constants")
|
|
540
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
547
541
|
|
|
548
|
-
async function rawMetadata(
|
|
542
|
+
async function rawMetadata() {
|
|
543
|
+
const db = getAppDB()
|
|
549
544
|
return (
|
|
550
545
|
await db.allDocs(
|
|
551
546
|
getUserMetadataParams(null, {
|
|
@@ -583,13 +578,10 @@ function <span class="fstat-no" title="function not covered" >combineMetadataAnd
|
|
|
583
578
|
<span class="cstat-no" title="statement not covered" > return null</span>
|
|
584
579
|
}
|
|
585
580
|
|
|
586
|
-
exports.syncGlobalUsers = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
581
|
+
exports.syncGlobalUsers = <span class="fstat-no" title="function not covered" >as</span>ync () => {
|
|
587
582
|
// sync user metadata
|
|
588
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
589
|
-
const [users, metadata] = <span class="cstat-no" title="statement not covered" >await Promise.all([</span>
|
|
590
|
-
getGlobalUsers(appId),
|
|
591
|
-
rawMetadata(db),
|
|
592
|
-
])
|
|
583
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
584
|
+
const [users, metadata] = <span class="cstat-no" title="statement not covered" >await Promise.all([getGlobalUsers(), rawMetadata()])</span>
|
|
593
585
|
const toWrite = <span class="cstat-no" title="statement not covered" >[]</span>
|
|
594
586
|
<span class="cstat-no" title="statement not covered" > for (let user of users) {</span>
|
|
595
587
|
const combined = <span class="cstat-no" title="statement not covered" >await combineMetadataAndUser(user, metadata)</span>
|
|
@@ -623,7 +615,7 @@ exports.syncUser = <span class="fstat-no" title="function not covered" >as</span
|
|
|
623
615
|
let prodAppIds
|
|
624
616
|
// if they are a builder then get all production app IDs
|
|
625
617
|
<span class="cstat-no" title="statement not covered" > if ((user.builder && user.builder.global) || deleting) {</span>
|
|
626
|
-
<span class="cstat-no" title="statement not covered" > prodAppIds = await
|
|
618
|
+
<span class="cstat-no" title="statement not covered" > prodAppIds = await getProdAppIDs()</span>
|
|
627
619
|
} else {
|
|
628
620
|
<span class="cstat-no" title="statement not covered" > prodAppIds = Object.entries(roles)</span>
|
|
629
621
|
.filter(<span class="fstat-no" title="function not covered" >en</span>try => <span class="cstat-no" title="statement not covered" >entry[1] !== BUILTIN_ROLE_IDS.PUBLIC)</span>
|
|
@@ -633,10 +625,10 @@ exports.syncUser = <span class="fstat-no" title="function not covered" >as</span
|
|
|
633
625
|
const roleId = <span class="cstat-no" title="statement not covered" >roles[prodAppId]</span>
|
|
634
626
|
const devAppId = <span class="cstat-no" title="statement not covered" >getDevelopmentAppID(prodAppId)</span>
|
|
635
627
|
<span class="cstat-no" title="statement not covered" > for (let appId of [prodAppId, devAppId]) {</span>
|
|
636
|
-
<span class="cstat-no" title="statement not covered" > if (!(await
|
|
628
|
+
<span class="cstat-no" title="statement not covered" > if (!(await dbExists(appId))) {</span>
|
|
637
629
|
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
638
630
|
}
|
|
639
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
631
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
640
632
|
const metadataId = <span class="cstat-no" title="statement not covered" >generateUserMetadataID(userId)</span>
|
|
641
633
|
let metadata
|
|
642
634
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
@@ -672,8 +664,8 @@ exports.syncUser = <span class="fstat-no" title="function not covered" >as</span
|
|
|
672
664
|
}
|
|
673
665
|
|
|
674
666
|
exports.fetchMetadata = async function (ctx) {
|
|
675
|
-
const database =
|
|
676
|
-
const global = await getGlobalUsers(
|
|
667
|
+
const database = getAppDB()
|
|
668
|
+
const global = await getGlobalUsers()
|
|
677
669
|
const metadata = await rawMetadata(database)
|
|
678
670
|
const users = []
|
|
679
671
|
for (let user of global) {
|
|
@@ -702,8 +694,7 @@ exports.updateSelfMetadata = <span class="fstat-no" title="function not covered"
|
|
|
702
694
|
}
|
|
703
695
|
|
|
704
696
|
exports.updateMetadata = async function (ctx) {
|
|
705
|
-
const
|
|
706
|
-
const db = new CouchDB(appId)
|
|
697
|
+
const db = getAppDB()
|
|
707
698
|
const user = ctx.request.body
|
|
708
699
|
// this isn't applicable to the user
|
|
709
700
|
delete user.roles
|
|
@@ -715,7 +706,7 @@ exports.updateMetadata = async function (ctx) {
|
|
|
715
706
|
}
|
|
716
707
|
|
|
717
708
|
exports.destroyMetadata = async function (ctx) {
|
|
718
|
-
const db =
|
|
709
|
+
const db = getAppDB()
|
|
719
710
|
try {
|
|
720
711
|
const dbUser = await db.get(ctx.params.id)
|
|
721
712
|
<span class="cstat-no" title="statement not covered" > await db.remove(dbUser._id, dbUser._rev)</span>
|
|
@@ -738,7 +729,7 @@ exports.setFlag = <span class="fstat-no" title="function not covered" >as</span>
|
|
|
738
729
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "Must supply a 'flag' field in request body.")</span>
|
|
739
730
|
}
|
|
740
731
|
const flagDocId = <span class="cstat-no" title="statement not covered" >generateUserFlagID(userId)</span>
|
|
741
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
732
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
742
733
|
let doc
|
|
743
734
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
744
735
|
<span class="cstat-no" title="statement not covered" > doc = await db.get(flagDocId)</span>
|
|
@@ -753,7 +744,7 @@ exports.setFlag = <span class="fstat-no" title="function not covered" >as</span>
|
|
|
753
744
|
exports.getFlags = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
|
|
754
745
|
const userId = <span class="cstat-no" title="statement not covered" >ctx.user._id</span>
|
|
755
746
|
const docId = <span class="cstat-no" title="statement not covered" >generateUserFlagID(userId)</span>
|
|
756
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
747
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
757
748
|
let doc
|
|
758
749
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
759
750
|
<span class="cstat-no" title="statement not covered" > doc = await db.get(docId)</span>
|
|
@@ -769,7 +760,7 @@ exports.getFlags = <span class="fstat-no" title="function not covered" >as</span
|
|
|
769
760
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
770
761
|
Code coverage generated by
|
|
771
762
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
772
|
-
at Mon
|
|
763
|
+
at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
|
|
773
764
|
</div>
|
|
774
765
|
</div>
|
|
775
766
|
<script src="../../prettify.js"></script>
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
<a name='L21'></a><a href='#L21'>21</a>
|
|
81
81
|
<a name='L22'></a><a href='#L22'>22</a>
|
|
82
82
|
<a name='L23'></a><a href='#L23'>23</a>
|
|
83
|
-
<a name='L24'></a><a href='#L24'>24</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
83
|
+
<a name='L24'></a><a href='#L24'>24</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">38x</span>
|
|
84
84
|
<span class="cline-any cline-yes">2x</span>
|
|
85
85
|
<span class="cline-any cline-neutral"> </span>
|
|
86
86
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -95,11 +95,11 @@
|
|
|
95
95
|
<span class="cline-any cline-yes">1x</span>
|
|
96
96
|
<span class="cline-any cline-neutral"> </span>
|
|
97
97
|
<span class="cline-any cline-neutral"> </span>
|
|
98
|
-
<span class="cline-any cline-yes">
|
|
98
|
+
<span class="cline-any cline-yes">38x</span>
|
|
99
99
|
<span class="cline-any cline-yes">1x</span>
|
|
100
100
|
<span class="cline-any cline-neutral"> </span>
|
|
101
101
|
<span class="cline-any cline-neutral"> </span>
|
|
102
|
-
<span class="cline-any cline-yes">
|
|
102
|
+
<span class="cline-any cline-yes">38x</span>
|
|
103
103
|
<span class="cline-any cline-neutral"> </span>
|
|
104
104
|
<span class="cline-any cline-neutral"> </span>
|
|
105
105
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -133,7 +133,7 @@ exports.ExportFormats = {
|
|
|
133
133
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
134
134
|
Code coverage generated by
|
|
135
135
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
136
|
-
at Mon
|
|
136
|
+
at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
|
|
137
137
|
</div>
|
|
138
138
|
</div>
|
|
139
139
|
<script src="../../../prettify.js"></script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">73.
|
|
26
|
+
<span class="strong">73.84% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>144/195</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">74.09% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>143/193</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -89,32 +89,32 @@
|
|
|
89
89
|
|
|
90
90
|
<tr>
|
|
91
91
|
<td class="file high" data-value="index.js"><a href="index.js.html">index.js</a></td>
|
|
92
|
-
<td data-value="88.
|
|
92
|
+
<td data-value="88.4" class="pic high">
|
|
93
93
|
<div class="chart"><div class="cover-fill" style="width: 88%"></div><div class="cover-empty" style="width: 12%"></div></div>
|
|
94
94
|
</td>
|
|
95
|
-
<td data-value="88.
|
|
96
|
-
<td data-value="
|
|
95
|
+
<td data-value="88.4" class="pct high">88.4%</td>
|
|
96
|
+
<td data-value="69" class="abs high">61/69</td>
|
|
97
97
|
<td data-value="72" class="pct medium">72%</td>
|
|
98
98
|
<td data-value="25" class="abs medium">18/25</td>
|
|
99
99
|
<td data-value="62.5" class="pct medium">62.5%</td>
|
|
100
100
|
<td data-value="8" class="abs medium">5/8</td>
|
|
101
|
-
<td data-value="
|
|
102
|
-
<td data-value="
|
|
101
|
+
<td data-value="89.7" class="pct high">89.7%</td>
|
|
102
|
+
<td data-value="68" class="abs high">61/68</td>
|
|
103
103
|
</tr>
|
|
104
104
|
|
|
105
105
|
<tr>
|
|
106
106
|
<td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
|
|
107
|
-
<td data-value="
|
|
108
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
107
|
+
<td data-value="53.08" class="pic medium">
|
|
108
|
+
<div class="chart"><div class="cover-fill" style="width: 53%"></div><div class="cover-empty" style="width: 47%"></div></div>
|
|
109
109
|
</td>
|
|
110
|
-
<td data-value="
|
|
111
|
-
<td data-value="
|
|
110
|
+
<td data-value="53.08" class="pct medium">53.08%</td>
|
|
111
|
+
<td data-value="81" class="abs medium">43/81</td>
|
|
112
112
|
<td data-value="34.61" class="pct low">34.61%</td>
|
|
113
113
|
<td data-value="26" class="abs low">9/26</td>
|
|
114
114
|
<td data-value="66.66" class="pct medium">66.66%</td>
|
|
115
115
|
<td data-value="9" class="abs medium">6/9</td>
|
|
116
|
-
<td data-value="
|
|
117
|
-
<td data-value="
|
|
116
|
+
<td data-value="53.08" class="pct medium">53.08%</td>
|
|
117
|
+
<td data-value="81" class="abs medium">43/81</td>
|
|
118
118
|
</tr>
|
|
119
119
|
|
|
120
120
|
<tr>
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
141
141
|
Code coverage generated by
|
|
142
142
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
143
|
-
at Mon
|
|
143
|
+
at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
|
|
144
144
|
</div>
|
|
145
145
|
</div>
|
|
146
146
|
<script src="../../../prettify.js"></script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">88.
|
|
26
|
+
<span class="strong">88.4% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>61/69</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">89.7% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>61/68</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -176,23 +176,20 @@
|
|
|
176
176
|
<a name='L117'></a><a href='#L117'>117</a>
|
|
177
177
|
<a name='L118'></a><a href='#L118'>118</a>
|
|
178
178
|
<a name='L119'></a><a href='#L119'>119</a>
|
|
179
|
-
<a name='L120'></a><a href='#L120'>120</a>
|
|
180
|
-
<
|
|
181
|
-
<
|
|
182
|
-
<span class="cline-any cline-yes">
|
|
183
|
-
<span class="cline-any cline-yes">
|
|
184
|
-
<span class="cline-any cline-yes">
|
|
185
|
-
<span class="cline-any cline-yes">
|
|
186
|
-
<span class="cline-any cline-yes">
|
|
187
|
-
<span class="cline-any cline-
|
|
188
|
-
<span class="cline-any cline-yes">
|
|
189
|
-
<span class="cline-any cline-neutral"> </span>
|
|
190
|
-
<span class="cline-any cline-yes">36x</span>
|
|
191
|
-
<span class="cline-any cline-yes">1x</span>
|
|
179
|
+
<a name='L120'></a><a href='#L120'>120</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">38x</span>
|
|
180
|
+
<span class="cline-any cline-yes">38x</span>
|
|
181
|
+
<span class="cline-any cline-yes">38x</span>
|
|
182
|
+
<span class="cline-any cline-yes">38x</span>
|
|
183
|
+
<span class="cline-any cline-yes">38x</span>
|
|
184
|
+
<span class="cline-any cline-yes">38x</span>
|
|
185
|
+
<span class="cline-any cline-yes">38x</span>
|
|
186
|
+
<span class="cline-any cline-yes">38x</span>
|
|
187
|
+
<span class="cline-any cline-neutral"> </span>
|
|
188
|
+
<span class="cline-any cline-yes">38x</span>
|
|
192
189
|
<span class="cline-any cline-yes">1x</span>
|
|
193
190
|
<span class="cline-any cline-neutral"> </span>
|
|
194
191
|
<span class="cline-any cline-neutral"> </span>
|
|
195
|
-
<span class="cline-any cline-yes">
|
|
192
|
+
<span class="cline-any cline-yes">38x</span>
|
|
196
193
|
<span class="cline-any cline-yes">8x</span>
|
|
197
194
|
<span class="cline-any cline-yes">8x</span>
|
|
198
195
|
<span class="cline-any cline-yes">8x</span>
|
|
@@ -221,7 +218,7 @@
|
|
|
221
218
|
<span class="cline-any cline-neutral"> </span>
|
|
222
219
|
<span class="cline-any cline-neutral"> </span>
|
|
223
220
|
<span class="cline-any cline-neutral"> </span>
|
|
224
|
-
<span class="cline-any cline-yes">
|
|
221
|
+
<span class="cline-any cline-yes">38x</span>
|
|
225
222
|
<span class="cline-any cline-yes">1x</span>
|
|
226
223
|
<span class="cline-any cline-yes">1x</span>
|
|
227
224
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -232,8 +229,7 @@
|
|
|
232
229
|
<span class="cline-any cline-yes">1x</span>
|
|
233
230
|
<span class="cline-any cline-neutral"> </span>
|
|
234
231
|
<span class="cline-any cline-neutral"> </span>
|
|
235
|
-
<span class="cline-any cline-yes">
|
|
236
|
-
<span class="cline-any cline-yes">2x</span>
|
|
232
|
+
<span class="cline-any cline-yes">38x</span>
|
|
237
233
|
<span class="cline-any cline-yes">2x</span>
|
|
238
234
|
<span class="cline-any cline-yes">2x</span>
|
|
239
235
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -299,22 +295,21 @@
|
|
|
299
295
|
<span class="cline-any cline-yes">2x</span>
|
|
300
296
|
<span class="cline-any cline-yes">2x</span>
|
|
301
297
|
<span class="cline-any cline-neutral"> </span>
|
|
302
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
303
|
-
const viewTemplate = require("./viewBuilder")
|
|
298
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const viewTemplate = require("./viewBuilder")
|
|
304
299
|
const { apiFileReturn } = require("../../../utilities/fileSystem")
|
|
305
300
|
const exporters = require("./exporters")
|
|
306
301
|
const { saveView, getView, getViews, deleteView } = require("./utils")
|
|
307
302
|
const { fetchView } = require("../row")
|
|
308
303
|
const { getTable } = require("../table/utils")
|
|
309
304
|
const { FieldTypes } = require("../../../constants")
|
|
305
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
310
306
|
|
|
311
307
|
exports.fetch = async ctx => {
|
|
312
|
-
|
|
313
|
-
ctx.body = await getViews(db)
|
|
308
|
+
ctx.body = await getViews()
|
|
314
309
|
}
|
|
315
310
|
|
|
316
311
|
exports.save = async ctx => {
|
|
317
|
-
const db =
|
|
312
|
+
const db = getAppDB()
|
|
318
313
|
const { originalName, ...viewToSave } = ctx.request.body
|
|
319
314
|
const view = viewTemplate(viewToSave)
|
|
320
315
|
|
|
@@ -322,7 +317,7 @@ exports.save = async ctx => {
|
|
|
322
317
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "Cannot create view without a name")</span>
|
|
323
318
|
}
|
|
324
319
|
|
|
325
|
-
await saveView(
|
|
320
|
+
await saveView(originalName, viewToSave.name, view)
|
|
326
321
|
|
|
327
322
|
// add views to table document
|
|
328
323
|
const table = await db.get(ctx.request.body.tableId)
|
|
@@ -343,9 +338,9 @@ exports.save = async ctx => {
|
|
|
343
338
|
}
|
|
344
339
|
|
|
345
340
|
exports.destroy = async ctx => {
|
|
346
|
-
const db =
|
|
341
|
+
const db = getAppDB()
|
|
347
342
|
const viewName = decodeURI(ctx.params.viewName)
|
|
348
|
-
const view = await deleteView(
|
|
343
|
+
const view = await deleteView(viewName)
|
|
349
344
|
const table = await db.get(view.meta.tableId)
|
|
350
345
|
delete table.views[viewName]
|
|
351
346
|
await db.put(table)
|
|
@@ -354,9 +349,8 @@ exports.destroy = async ctx => {
|
|
|
354
349
|
}
|
|
355
350
|
|
|
356
351
|
exports.exportView = async ctx => {
|
|
357
|
-
const db = new CouchDB(ctx.appId)
|
|
358
352
|
const viewName = decodeURI(ctx.query.view)
|
|
359
|
-
const view = await getView(
|
|
353
|
+
const view = await getView(viewName)
|
|
360
354
|
|
|
361
355
|
const format = ctx.query.format
|
|
362
356
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!format || !Object.values(exporters.ExportFormats).includes(format)) {
|
|
@@ -384,7 +378,7 @@ exports.exportView = async ctx => {
|
|
|
384
378
|
let schema = view && view.meta && view.meta.schema
|
|
385
379
|
if (!schema) {
|
|
386
380
|
const tableId = ctx.params.tableId || view.meta.tableId
|
|
387
|
-
const table = await getTable(
|
|
381
|
+
const table = await getTable(tableId)
|
|
388
382
|
schema = table.schema
|
|
389
383
|
}
|
|
390
384
|
|
|
@@ -427,7 +421,7 @@ exports.exportView = async ctx => {
|
|
|
427
421
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
428
422
|
Code coverage generated by
|
|
429
423
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
430
|
-
at Mon
|
|
424
|
+
at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
|
|
431
425
|
</div>
|
|
432
426
|
</div>
|
|
433
427
|
<script src="../../../prettify.js"></script>
|