@budibase/server 1.0.49-alpha.6 → 1.0.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__mocks__/arangojs.ts +1 -1
- package/__mocks__/aws-sdk.ts +4 -4
- package/__mocks__/mongodb.ts +5 -4
- package/__mocks__/mssql.ts +3 -3
- package/__mocks__/node-fetch.ts +1 -2
- package/__mocks__/pg.ts +5 -3
- package/builder/assets/{index.1b905242.js → index.2c37968e.js} +231 -234
- package/builder/assets/index.39e01193.css +1 -0
- package/builder/assets/{vendor.d526bfe8.js → vendor.f9faf6ab.js} +12 -12
- package/builder/index.html +3 -3
- package/coverage/clover.xml +2816 -3119
- package/coverage/coverage-final.json +101 -106
- 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 +152 -257
- package/coverage/lcov-report/api/controllers/auth.js.html +13 -22
- package/coverage/lcov-report/api/controllers/automation.js.html +69 -39
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +11 -8
- package/coverage/lcov-report/api/controllers/component.js.html +16 -13
- package/coverage/lcov-report/api/controllers/datasource.js.html +51 -81
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/{utilities/usageQuota/usageQuoteReset.js.html → api/controllers/hosting.js.html} +48 -36
- package/coverage/lcov-report/api/controllers/index.html +76 -76
- 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 +21 -6
- 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 +35 -38
- 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 +10 -7
- package/coverage/lcov-report/api/controllers/row/external.js.html +27 -21
- package/coverage/lcov-report/api/controllers/row/index.html +34 -49
- package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
- package/coverage/lcov-report/api/controllers/row/internal.js.html +226 -118
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +34 -52
- package/coverage/lcov-report/api/controllers/row/utils.js.html +62 -47
- package/coverage/lcov-report/api/controllers/screen.js.html +21 -15
- package/coverage/lcov-report/api/controllers/script.js.html +4 -4
- package/coverage/lcov-report/api/controllers/table/external.js.html +34 -25
- package/coverage/lcov-report/api/controllers/table/index.html +43 -58
- package/coverage/lcov-report/api/controllers/table/index.js.html +82 -58
- package/coverage/lcov-report/api/controllers/table/internal.js.html +66 -81
- package/coverage/lcov-report/api/controllers/table/utils.js.html +110 -218
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +50 -47
- 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 +33 -27
- package/coverage/lcov-report/api/controllers/view/utils.js.html +20 -35
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
- package/coverage/lcov-report/api/controllers/webhook.js.html +28 -34
- 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/{migrations.js.html → hosting.js.html} +14 -17
- 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/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 +2 -17
- 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 +10 -7
- 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 +22 -13
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +20 -11
- 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 +55 -61
- package/coverage/lcov-report/automations/utils.js.html +42 -54
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +26 -53
- 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 +37 -25
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +96 -51
- 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 +120 -135
- 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 +65 -173
- package/coverage/lcov-report/middleware/builder.js.html +10 -10
- package/coverage/lcov-report/middleware/currentapp.js.html +83 -95
- 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 +53 -281
- package/coverage/lcov-report/middleware/utils.js.html +2 -2
- package/coverage/lcov-report/threads/automation.js.html +24 -30
- 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 +26 -62
- 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 +49 -58
- package/coverage/lcov-report/utilities/index.html +37 -37
- package/coverage/lcov-report/utilities/index.js.html +73 -43
- 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 +103 -97
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +27 -75
- 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/users.js.html +9 -9
- package/coverage/lcov-report/utilities/workerRequests.js.html +112 -43
- package/coverage/lcov.info +4423 -5022
- package/dist/api/controllers/application.js +60 -90
- package/dist/api/controllers/auth.js +5 -8
- package/dist/api/controllers/automation.js +19 -14
- package/dist/api/controllers/cloud.js +3 -2
- package/dist/api/controllers/component.js +4 -3
- package/dist/api/controllers/datasource.js +10 -20
- package/dist/api/controllers/deploy/Deployment.js +6 -3
- package/dist/api/controllers/deploy/index.js +13 -12
- package/dist/api/controllers/dev.js +5 -5
- package/dist/api/controllers/hosting.js +30 -0
- package/dist/api/controllers/layout.js +3 -3
- package/dist/api/controllers/metadata.js +4 -4
- package/dist/api/controllers/permission.js +4 -4
- package/dist/api/controllers/query/import/index.js +6 -4
- package/dist/api/controllers/query/index.js +10 -11
- package/dist/api/controllers/role.js +5 -5
- package/dist/api/controllers/routing.js +6 -5
- package/dist/api/controllers/row/ExternalRequest.js +63 -76
- package/dist/api/controllers/row/external.js +4 -4
- package/dist/api/controllers/row/internal.js +93 -55
- package/dist/api/controllers/row/internalSearch.js +17 -23
- package/dist/api/controllers/row/utils.js +14 -13
- package/dist/api/controllers/screen.js +7 -5
- package/dist/api/controllers/static/index.js +12 -61
- package/dist/api/controllers/table/external.js +10 -7
- package/dist/api/controllers/table/index.js +13 -16
- package/dist/api/controllers/table/internal.js +16 -22
- package/dist/api/controllers/table/utils.js +35 -62
- package/dist/api/controllers/user.js +20 -18
- package/dist/api/controllers/view/index.js +10 -8
- package/dist/api/controllers/view/utils.js +4 -9
- package/dist/api/controllers/webhook.js +8 -10
- package/dist/api/routes/hosting.js +11 -0
- package/dist/api/routes/index.js +2 -2
- package/dist/api/routes/static.js +1 -2
- package/dist/api/routes/tests/utilities/TestFunctions.js +17 -37
- package/dist/app.js +5 -35
- package/dist/automations/automationUtils.js +3 -2
- package/dist/automations/steps/createRow.js +5 -3
- package/dist/automations/steps/deleteRow.js +4 -1
- package/dist/automations/steps/updateRow.js +1 -1
- package/dist/automations/triggers.js +25 -27
- package/dist/automations/utils.js +5 -10
- package/dist/constants/index.js +0 -7
- package/dist/db/linkedRows/LinkController.js +7 -3
- package/dist/db/linkedRows/index.js +27 -16
- package/dist/db/linkedRows/linkUtils.js +6 -6
- package/dist/db/views/staticViews.js +10 -9
- package/dist/definitions/datasource.js +0 -1
- package/dist/environment.js +1 -4
- package/dist/integrations/base/sql.js +6 -13
- package/dist/integrations/index.js +0 -3
- package/dist/integrations/utils.js +9 -60
- package/dist/middleware/authorized.js +30 -57
- package/dist/middleware/builder.js +2 -2
- package/dist/middleware/currentapp.js +37 -41
- package/dist/middleware/usageQuota.js +15 -82
- package/dist/package.json +5 -8
- package/dist/tests/utilities/TestConfiguration.js +50 -80
- package/dist/threads/automation.js +11 -13
- package/dist/threads/query.js +13 -23
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/index.js +3 -4
- package/dist/utilities/global.js +12 -15
- package/dist/utilities/index.js +17 -7
- package/dist/utilities/routing/index.js +5 -5
- package/dist/utilities/rowProcessor/index.js +17 -23
- package/dist/utilities/rowProcessor/utils.js +4 -14
- package/dist/utilities/{usageQuota/index.js → usageQuota.js} +31 -45
- package/dist/utilities/users.js +3 -3
- package/dist/utilities/workerRequests.js +24 -4
- package/nodemon.json +1 -1
- package/package.json +6 -9
- package/scripts/likeCypress.ts +1 -1
- package/src/api/controllers/application.js +50 -85
- package/src/api/controllers/auth.js +5 -8
- package/src/api/controllers/automation.js +23 -13
- package/src/api/controllers/cloud.js +3 -2
- package/src/api/controllers/component.js +4 -3
- package/src/api/controllers/datasource.js +11 -21
- package/src/api/controllers/deploy/Deployment.js +7 -3
- package/src/api/controllers/deploy/index.js +13 -20
- package/src/api/controllers/dev.js +5 -5
- package/src/api/controllers/hosting.js +22 -0
- package/src/api/controllers/layout.js +3 -3
- package/src/api/controllers/metadata.js +9 -4
- package/src/api/controllers/permission.js +4 -4
- package/src/api/controllers/query/import/index.ts +6 -4
- package/src/api/controllers/query/import/tests/index.spec.js +1 -2
- package/src/api/controllers/query/index.js +10 -11
- package/src/api/controllers/role.js +5 -5
- package/src/api/controllers/routing.js +6 -5
- package/src/api/controllers/row/ExternalRequest.ts +42 -53
- package/src/api/controllers/row/external.js +6 -4
- package/src/api/controllers/row/internal.js +90 -54
- package/src/api/controllers/row/internalSearch.js +17 -23
- package/src/api/controllers/row/utils.js +18 -13
- package/src/api/controllers/screen.js +7 -5
- package/src/api/controllers/static/index.js +12 -65
- package/src/api/controllers/table/external.js +10 -7
- package/src/api/controllers/table/index.js +28 -20
- package/src/api/controllers/table/internal.js +19 -24
- package/src/api/controllers/table/utils.js +42 -78
- package/src/api/controllers/user.js +20 -19
- package/src/api/controllers/view/index.js +10 -8
- package/src/api/controllers/view/utils.js +4 -9
- package/src/api/controllers/webhook.js +8 -10
- package/src/api/routes/hosting.js +13 -0
- package/src/api/routes/index.js +2 -2
- package/src/api/routes/static.js +0 -5
- package/src/api/routes/tests/application.spec.js +2 -2
- package/src/api/routes/tests/auth.spec.js +2 -1
- package/src/api/routes/tests/automation.spec.js +0 -1
- package/src/api/routes/tests/hosting.spec.js +36 -0
- package/src/api/routes/tests/misc.spec.js +1 -0
- package/src/api/routes/tests/routing.spec.js +12 -21
- package/src/api/routes/tests/row.spec.js +4 -7
- package/src/api/routes/tests/utilities/TestFunctions.js +17 -39
- package/src/app.ts +5 -18
- package/src/automations/automationUtils.js +3 -2
- package/src/automations/steps/createRow.js +5 -2
- package/src/automations/steps/deleteRow.js +4 -1
- package/src/automations/steps/updateRow.js +1 -1
- package/src/automations/triggers.js +31 -33
- package/src/automations/utils.js +5 -9
- package/src/constants/index.js +0 -9
- package/src/db/linkedRows/LinkController.js +7 -3
- package/src/db/linkedRows/index.js +31 -16
- package/src/db/linkedRows/linkUtils.js +6 -6
- package/src/db/tests/linkController.spec.js +1 -0
- package/src/db/tests/linkTests.spec.js +6 -5
- package/src/db/views/staticViews.js +10 -8
- package/src/definitions/common.ts +0 -3
- package/src/definitions/datasource.ts +0 -3
- package/src/environment.js +1 -4
- package/src/integrations/base/sql.ts +7 -14
- package/src/integrations/index.ts +0 -3
- package/src/integrations/tests/sql.spec.js +0 -16
- package/src/integrations/utils.ts +12 -75
- package/src/middleware/authorized.js +30 -66
- package/src/middleware/builder.js +2 -2
- package/src/middleware/currentapp.js +46 -50
- package/src/middleware/tests/authorized.spec.js +6 -13
- package/src/middleware/tests/currentapp.spec.js +0 -6
- package/src/middleware/tests/usageQuota.spec.js +24 -18
- package/src/middleware/usageQuota.js +17 -93
- package/src/tests/utilities/TestConfiguration.js +55 -82
- package/src/threads/automation.js +15 -17
- package/src/threads/query.js +14 -26
- package/src/utilities/fileSystem/index.js +3 -4
- package/src/utilities/global.js +12 -15
- package/src/utilities/index.js +17 -7
- package/src/utilities/routing/index.js +5 -5
- package/src/utilities/rowProcessor/index.js +27 -25
- package/src/utilities/rowProcessor/utils.js +7 -23
- package/src/utilities/usageQuota.js +73 -0
- package/src/utilities/users.js +3 -3
- package/src/utilities/workerRequests.js +27 -4
- package/builder/assets/index.83c0944f.css +0 -1
- package/coverage/lcov-report/api/controllers/migrations.js.html +0 -119
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +0 -548
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +0 -599
- package/coverage/lcov-report/utilities/usageQuota/index.html +0 -141
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +0 -359
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +0 -305
- package/dist/api/controllers/migrations.js +0 -21
- package/dist/api/controllers/row/staticFormula.js +0 -147
- package/dist/api/controllers/table/bulkFormula.js +0 -159
- package/dist/api/routes/migrations.js +0 -9
- package/dist/integrations/googlesheets.js +0 -340
- package/dist/migrations/functions/appUrls.js +0 -46
- package/dist/migrations/functions/quotas1.js +0 -50
- package/dist/migrations/functions/usageQuotas/index.js +0 -20
- package/dist/migrations/functions/usageQuotas/syncApps.js +0 -30
- package/dist/migrations/functions/usageQuotas/syncRows.js +0 -33
- package/dist/migrations/functions/userEmailViewCasing.js +0 -24
- package/dist/migrations/index.js +0 -62
- package/dist/utilities/usageQuota/rows.js +0 -78
- package/dist/utilities/usageQuota/usageQuoteReset.js +0 -16
- package/src/api/controllers/migrations.js +0 -13
- package/src/api/controllers/row/staticFormula.js +0 -156
- package/src/api/controllers/table/bulkFormula.js +0 -173
- package/src/api/routes/migrations.js +0 -14
- package/src/api/routes/tests/static.spec.js +0 -98
- package/src/integrations/googlesheets.ts +0 -353
- package/src/migrations/functions/appUrls.ts +0 -34
- package/src/migrations/functions/quotas1.ts +0 -20
- package/src/migrations/functions/tests/appUrls.spec.js +0 -29
- package/src/migrations/functions/tests/quotas1.spec.js +0 -27
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +0 -25
- package/src/migrations/functions/usageQuotas/index.ts +0 -8
- package/src/migrations/functions/usageQuotas/syncApps.ts +0 -19
- package/src/migrations/functions/usageQuotas/syncRows.ts +0 -22
- package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +0 -37
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +0 -43
- package/src/migrations/functions/userEmailViewCasing.ts +0 -13
- package/src/migrations/index.ts +0 -56
- package/src/utilities/tests/usageQuota/usageQuota.spec.js +0 -72
- package/src/utilities/usageQuota/index.js +0 -93
- package/src/utilities/usageQuota/rows.js +0 -75
- package/src/utilities/usageQuota/usageQuoteReset.js +0 -18
|
@@ -8,12 +8,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
const CouchDB = require("../../../db");
|
|
11
12
|
const Deployment = require("./Deployment");
|
|
12
|
-
const { Replication,
|
|
13
|
+
const { Replication, getDeployedAppID } = require("@budibase/backend-core/db");
|
|
13
14
|
const { DocumentTypes, getAutomationParams } = require("../../../db/utils");
|
|
14
15
|
const { disableAllCrons, enableCronTrigger, } = require("../../../automations/utils");
|
|
15
16
|
const { app: appCache } = require("@budibase/backend-core/cache");
|
|
16
|
-
const { getAppId, getAppDB, getProdAppDB, } = require("@budibase/backend-core/context");
|
|
17
17
|
// the max time we can wait for an invalidation to complete before considering it failed
|
|
18
18
|
const MAX_PENDING_TIME_MS = 30 * 60000;
|
|
19
19
|
const DeploymentStatus = {
|
|
@@ -39,8 +39,9 @@ function checkAllDeployments(deployments) {
|
|
|
39
39
|
}
|
|
40
40
|
function storeDeploymentHistory(deployment) {
|
|
41
41
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
const appId = deployment.getAppId();
|
|
42
43
|
const deploymentJSON = deployment.getJSON();
|
|
43
|
-
const db =
|
|
44
|
+
const db = new CouchDB(appId);
|
|
44
45
|
let deploymentDoc;
|
|
45
46
|
try {
|
|
46
47
|
// theres only one deployment doc per app database
|
|
@@ -61,7 +62,7 @@ function storeDeploymentHistory(deployment) {
|
|
|
61
62
|
}
|
|
62
63
|
function initDeployedApp(prodAppId) {
|
|
63
64
|
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
-
const db =
|
|
65
|
+
const db = new CouchDB(prodAppId);
|
|
65
66
|
console.log("Reading automation docs");
|
|
66
67
|
const automations = (yield db.allDocs(getAutomationParams(null, {
|
|
67
68
|
include_docs: true,
|
|
@@ -82,17 +83,15 @@ function initDeployedApp(prodAppId) {
|
|
|
82
83
|
function deployApp(deployment) {
|
|
83
84
|
return __awaiter(this, void 0, void 0, function* () {
|
|
84
85
|
try {
|
|
85
|
-
const
|
|
86
|
-
const devAppId = getDevelopmentAppID(appId);
|
|
87
|
-
const productionAppId = getProdAppID(appId);
|
|
86
|
+
const productionAppId = getDeployedAppID(deployment.appId);
|
|
88
87
|
const replication = new Replication({
|
|
89
|
-
source:
|
|
88
|
+
source: deployment.appId,
|
|
90
89
|
target: productionAppId,
|
|
91
90
|
});
|
|
92
91
|
console.log("Replication object created");
|
|
93
92
|
yield replication.replicate();
|
|
94
93
|
console.log("replication complete.. replacing app meta doc");
|
|
95
|
-
const db =
|
|
94
|
+
const db = new CouchDB(productionAppId);
|
|
96
95
|
const appDoc = yield db.get(DocumentTypes.APP_METADATA);
|
|
97
96
|
appDoc.appId = productionAppId;
|
|
98
97
|
appDoc.instance._id = productionAppId;
|
|
@@ -114,7 +113,8 @@ function deployApp(deployment) {
|
|
|
114
113
|
exports.fetchDeployments = function (ctx) {
|
|
115
114
|
return __awaiter(this, void 0, void 0, function* () {
|
|
116
115
|
try {
|
|
117
|
-
const
|
|
116
|
+
const appId = ctx.appId;
|
|
117
|
+
const db = new CouchDB(appId);
|
|
118
118
|
const deploymentDoc = yield db.get(DocumentTypes.DEPLOYMENTS);
|
|
119
119
|
const { updated, deployments } = yield checkAllDeployments(deploymentDoc, ctx.user);
|
|
120
120
|
if (updated) {
|
|
@@ -130,7 +130,8 @@ exports.fetchDeployments = function (ctx) {
|
|
|
130
130
|
exports.deploymentProgress = function (ctx) {
|
|
131
131
|
return __awaiter(this, void 0, void 0, function* () {
|
|
132
132
|
try {
|
|
133
|
-
const
|
|
133
|
+
const appId = ctx.appId;
|
|
134
|
+
const db = new CouchDB(appId);
|
|
134
135
|
const deploymentDoc = yield db.get(DocumentTypes.DEPLOYMENTS);
|
|
135
136
|
ctx.body = deploymentDoc[ctx.params.deploymentId];
|
|
136
137
|
}
|
|
@@ -141,7 +142,7 @@ exports.deploymentProgress = function (ctx) {
|
|
|
141
142
|
};
|
|
142
143
|
exports.deployApp = function (ctx) {
|
|
143
144
|
return __awaiter(this, void 0, void 0, function* () {
|
|
144
|
-
let deployment = new Deployment();
|
|
145
|
+
let deployment = new Deployment(ctx.appId);
|
|
145
146
|
console.log("Deployment object created");
|
|
146
147
|
deployment.setStatus(DeploymentStatus.PENDING);
|
|
147
148
|
console.log("Deployment object set to pending");
|
|
@@ -9,14 +9,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
const fetch = require("node-fetch");
|
|
12
|
+
const CouchDB = require("../../db");
|
|
12
13
|
const env = require("../../environment");
|
|
13
14
|
const { checkSlashesInUrl } = require("../../utilities");
|
|
14
15
|
const { request } = require("../../utilities/workerRequests");
|
|
15
16
|
const { clearLock } = require("../../utilities/redis");
|
|
16
|
-
const { Replication
|
|
17
|
+
const { Replication } = require("@budibase/backend-core/db");
|
|
17
18
|
const { DocumentTypes } = require("../../db/utils");
|
|
18
19
|
const { app: appCache } = require("@budibase/backend-core/cache");
|
|
19
|
-
const { getProdAppDB, getAppDB } = require("@budibase/backend-core/context");
|
|
20
20
|
function redirect(ctx, method, path = "global") {
|
|
21
21
|
return __awaiter(this, void 0, void 0, function* () {
|
|
22
22
|
const { devPath } = ctx.params;
|
|
@@ -76,10 +76,10 @@ exports.clearLock = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
76
76
|
});
|
|
77
77
|
exports.revert = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
78
78
|
const { appId } = ctx.params;
|
|
79
|
-
const productionAppId =
|
|
79
|
+
const productionAppId = appId.replace("_dev", "");
|
|
80
80
|
// App must have been deployed first
|
|
81
81
|
try {
|
|
82
|
-
const db =
|
|
82
|
+
const db = new CouchDB(productionAppId, { skip_setup: true });
|
|
83
83
|
const info = yield db.info();
|
|
84
84
|
if (info.error)
|
|
85
85
|
throw info.error;
|
|
@@ -99,7 +99,7 @@ exports.revert = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
99
99
|
});
|
|
100
100
|
yield replication.rollback();
|
|
101
101
|
// update appID in reverted app to be dev version again
|
|
102
|
-
const db =
|
|
102
|
+
const db = new CouchDB(appId);
|
|
103
103
|
const appDoc = yield db.get(DocumentTypes.APP_METADATA);
|
|
104
104
|
appDoc.appId = appId;
|
|
105
105
|
appDoc.instance._id = appId;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
const CouchDB = require("../../db");
|
|
12
|
+
const { getDeployedApps } = require("../../utilities/workerRequests");
|
|
13
|
+
const { getScopedConfig } = require("@budibase/backend-core/db");
|
|
14
|
+
const { Configs } = require("@budibase/backend-core/constants");
|
|
15
|
+
const { checkSlashesInUrl } = require("../../utilities");
|
|
16
|
+
exports.fetchUrls = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
+
const appId = ctx.appId;
|
|
18
|
+
const db = new CouchDB(appId);
|
|
19
|
+
const settings = yield getScopedConfig(db, { type: Configs.SETTINGS });
|
|
20
|
+
let appUrl = "http://localhost:10000/app";
|
|
21
|
+
if (settings && settings["platformUrl"]) {
|
|
22
|
+
appUrl = checkSlashesInUrl(`${settings["platformUrl"]}/app`);
|
|
23
|
+
}
|
|
24
|
+
ctx.body = {
|
|
25
|
+
app: appUrl,
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
exports.getDeployedApps = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
ctx.body = yield getDeployedApps();
|
|
30
|
+
});
|
|
@@ -9,11 +9,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
const { EMPTY_LAYOUT, BASE_LAYOUT_PROP_IDS, } = require("../../constants/layouts");
|
|
12
|
+
const CouchDB = require("../../db");
|
|
12
13
|
const { generateLayoutID, getScreenParams } = require("../../db/utils");
|
|
13
|
-
const { getAppDB } = require("@budibase/backend-core/context");
|
|
14
14
|
exports.save = function (ctx) {
|
|
15
15
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
const db =
|
|
16
|
+
const db = new CouchDB(ctx.appId);
|
|
17
17
|
let layout = ctx.request.body;
|
|
18
18
|
if (!layout.props) {
|
|
19
19
|
layout = Object.assign(Object.assign({}, EMPTY_LAYOUT), layout);
|
|
@@ -28,7 +28,7 @@ exports.save = function (ctx) {
|
|
|
28
28
|
};
|
|
29
29
|
exports.destroy = function (ctx) {
|
|
30
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
const db =
|
|
31
|
+
const db = new CouchDB(ctx.appId);
|
|
32
32
|
const layoutId = ctx.params.layoutId, layoutRev = ctx.params.layoutRev;
|
|
33
33
|
if (Object.values(BASE_LAYOUT_PROP_IDS).includes(layoutId)) {
|
|
34
34
|
ctx.throw(400, "Cannot delete a built-in layout");
|
|
@@ -9,9 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
const { MetadataTypes } = require("../../constants");
|
|
12
|
+
const CouchDB = require("../../db");
|
|
12
13
|
const { generateMetadataID } = require("../../db/utils");
|
|
13
14
|
const { saveEntityMetadata, deleteEntityMetadata } = require("../../utilities");
|
|
14
|
-
const { getAppDB } = require("@budibase/backend-core/context");
|
|
15
15
|
exports.getTypes = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
16
16
|
ctx.body = {
|
|
17
17
|
types: MetadataTypes,
|
|
@@ -22,18 +22,18 @@ exports.saveMetadata = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
22
22
|
if (type === MetadataTypes.AUTOMATION_TEST_HISTORY) {
|
|
23
23
|
ctx.throw(400, "Cannot save automation history type");
|
|
24
24
|
}
|
|
25
|
-
ctx.body = yield saveEntityMetadata(type, entityId, ctx.request.body);
|
|
25
|
+
ctx.body = yield saveEntityMetadata(ctx.appId, type, entityId, ctx.request.body);
|
|
26
26
|
});
|
|
27
27
|
exports.deleteMetadata = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
28
|
const { type, entityId } = ctx.params;
|
|
29
|
-
yield deleteEntityMetadata(type, entityId);
|
|
29
|
+
yield deleteEntityMetadata(ctx.appId, type, entityId);
|
|
30
30
|
ctx.body = {
|
|
31
31
|
message: "Metadata deleted successfully",
|
|
32
32
|
};
|
|
33
33
|
});
|
|
34
34
|
exports.getMetadata = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
35
35
|
const { type, entityId } = ctx.params;
|
|
36
|
-
const db =
|
|
36
|
+
const db = new CouchDB(ctx.appId);
|
|
37
37
|
const id = generateMetadataID(type, entityId);
|
|
38
38
|
try {
|
|
39
39
|
ctx.body = yield db.get(id);
|
|
@@ -11,9 +11,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
const { getBuiltinPermissions } = require("@budibase/backend-core/permissions");
|
|
12
12
|
const { isBuiltin, getDBRoleID, getExternalRoleID, getBuiltinRoles, } = require("@budibase/backend-core/roles");
|
|
13
13
|
const { getRoleParams } = require("../../db/utils");
|
|
14
|
+
const CouchDB = require("../../db");
|
|
14
15
|
const { CURRENTLY_SUPPORTED_LEVELS, getBasePermissions, } = require("../../utilities/security");
|
|
15
16
|
const { removeFromArray } = require("../../utilities");
|
|
16
|
-
const { getAppDB } = require("@budibase/backend-core/context");
|
|
17
17
|
const PermissionUpdateType = {
|
|
18
18
|
REMOVE: "remove",
|
|
19
19
|
ADD: "add",
|
|
@@ -30,7 +30,7 @@ function getAllDBRoles(db) {
|
|
|
30
30
|
}
|
|
31
31
|
function updatePermissionOnRole(appId, { roleId, resourceId, level }, updateType) {
|
|
32
32
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
const db =
|
|
33
|
+
const db = new CouchDB(appId);
|
|
34
34
|
const remove = updateType === PermissionUpdateType.REMOVE;
|
|
35
35
|
const isABuiltin = isBuiltin(roleId);
|
|
36
36
|
const dbRoleId = getDBRoleID(roleId);
|
|
@@ -93,7 +93,7 @@ exports.fetchLevels = function (ctx) {
|
|
|
93
93
|
};
|
|
94
94
|
exports.fetch = function (ctx) {
|
|
95
95
|
return __awaiter(this, void 0, void 0, function* () {
|
|
96
|
-
const db =
|
|
96
|
+
const db = new CouchDB(ctx.appId);
|
|
97
97
|
const roles = yield getAllDBRoles(db);
|
|
98
98
|
let permissions = {};
|
|
99
99
|
// create an object with structure role ID -> resource ID -> level
|
|
@@ -121,7 +121,7 @@ exports.fetch = function (ctx) {
|
|
|
121
121
|
exports.getResourcePerms = function (ctx) {
|
|
122
122
|
return __awaiter(this, void 0, void 0, function* () {
|
|
123
123
|
const resourceId = ctx.params.resourceId;
|
|
124
|
-
const db =
|
|
124
|
+
const db = new CouchDB(ctx.appId);
|
|
125
125
|
const body = yield db.allDocs(getRoleParams(null, {
|
|
126
126
|
include_docs: true,
|
|
127
127
|
}));
|
|
@@ -8,14 +8,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.RestImporter = void 0;
|
|
16
|
+
const db_1 = __importDefault(require("../../../../db"));
|
|
13
17
|
const validation_1 = require("../validation");
|
|
14
18
|
const utils_1 = require("../../../../db/utils");
|
|
15
19
|
const openapi2_1 = require("./sources/openapi2");
|
|
16
20
|
const curl_1 = require("./sources/curl");
|
|
17
|
-
// @ts-ignore
|
|
18
|
-
const context_1 = require("@budibase/backend-core/context");
|
|
19
21
|
class RestImporter {
|
|
20
22
|
constructor(data) {
|
|
21
23
|
this.init = () => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -29,7 +31,7 @@ class RestImporter {
|
|
|
29
31
|
this.getInfo = () => __awaiter(this, void 0, void 0, function* () {
|
|
30
32
|
return this.source.getInfo();
|
|
31
33
|
});
|
|
32
|
-
this.importQueries = (datasourceId) => __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
this.importQueries = (appId, datasourceId) => __awaiter(this, void 0, void 0, function* () {
|
|
33
35
|
// constuct the queries
|
|
34
36
|
let queries = yield this.source.getQueries(datasourceId);
|
|
35
37
|
// validate queries
|
|
@@ -49,7 +51,7 @@ class RestImporter {
|
|
|
49
51
|
return query;
|
|
50
52
|
});
|
|
51
53
|
// persist queries
|
|
52
|
-
const db =
|
|
54
|
+
const db = new db_1.default(appId);
|
|
53
55
|
const response = yield db.bulkDocs(queries);
|
|
54
56
|
// create index to seperate queries and errors
|
|
55
57
|
const queryIndex = queries.reduce((acc, query) => {
|
|
@@ -8,6 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
const CouchDB = require("../../../db");
|
|
11
12
|
const { generateQueryID, getQueryParams, isProdAppID, } = require("../../../db/utils");
|
|
12
13
|
const { BaseQueryVerbs } = require("../../../constants");
|
|
13
14
|
const { Thread, ThreadType } = require("../../../threads");
|
|
@@ -15,7 +16,6 @@ const { save: saveDatasource } = require("../datasource");
|
|
|
15
16
|
const { RestImporter } = require("./import");
|
|
16
17
|
const { invalidateDynamicVariables } = require("../../../threads/utils");
|
|
17
18
|
const environment = require("../../../environment");
|
|
18
|
-
const { getAppDB } = require("@budibase/backend-core/context");
|
|
19
19
|
const Runner = new Thread(ThreadType.QUERY, {
|
|
20
20
|
timeoutMs: environment.QUERY_THREAD_TIMEOUT || 10000,
|
|
21
21
|
});
|
|
@@ -32,7 +32,7 @@ function enrichQueries(input) {
|
|
|
32
32
|
}
|
|
33
33
|
exports.fetch = function (ctx) {
|
|
34
34
|
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const db =
|
|
35
|
+
const db = new CouchDB(ctx.appId);
|
|
36
36
|
const body = yield db.allDocs(getQueryParams(null, {
|
|
37
37
|
include_docs: true,
|
|
38
38
|
}));
|
|
@@ -67,13 +67,13 @@ exports.import = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
67
67
|
// use existing datasource
|
|
68
68
|
datasourceId = body.datasourceId;
|
|
69
69
|
}
|
|
70
|
-
const importResult = yield importer.importQueries(datasourceId);
|
|
70
|
+
const importResult = yield importer.importQueries(ctx.appId, datasourceId);
|
|
71
71
|
ctx.body = Object.assign(Object.assign({}, importResult), { datasourceId });
|
|
72
72
|
ctx.status = 200;
|
|
73
73
|
});
|
|
74
74
|
exports.save = function (ctx) {
|
|
75
75
|
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
const db =
|
|
76
|
+
const db = new CouchDB(ctx.appId);
|
|
77
77
|
const query = ctx.request.body;
|
|
78
78
|
if (!query._id) {
|
|
79
79
|
query._id = generateQueryID(query.datasourceId);
|
|
@@ -86,7 +86,7 @@ exports.save = function (ctx) {
|
|
|
86
86
|
};
|
|
87
87
|
exports.find = function (ctx) {
|
|
88
88
|
return __awaiter(this, void 0, void 0, function* () {
|
|
89
|
-
const db =
|
|
89
|
+
const db = new CouchDB(ctx.appId);
|
|
90
90
|
const query = enrichQueries(yield db.get(ctx.params.queryId));
|
|
91
91
|
// remove properties that could be dangerous in real app
|
|
92
92
|
if (isProdAppID(ctx.appId)) {
|
|
@@ -98,7 +98,7 @@ exports.find = function (ctx) {
|
|
|
98
98
|
};
|
|
99
99
|
exports.preview = function (ctx) {
|
|
100
100
|
return __awaiter(this, void 0, void 0, function* () {
|
|
101
|
-
const db =
|
|
101
|
+
const db = new CouchDB(ctx.appId);
|
|
102
102
|
const datasource = yield db.get(ctx.request.body.datasourceId);
|
|
103
103
|
// preview may not have a queryId as it hasn't been saved, but if it does
|
|
104
104
|
// this stops dynamic variables from calling the same query
|
|
@@ -127,7 +127,7 @@ exports.preview = function (ctx) {
|
|
|
127
127
|
};
|
|
128
128
|
function execute(ctx, opts = { rowsOnly: false }) {
|
|
129
129
|
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
const db =
|
|
130
|
+
const db = new CouchDB(ctx.appId);
|
|
131
131
|
const query = yield db.get(ctx.params.queryId);
|
|
132
132
|
const datasource = yield db.get(query.datasourceId);
|
|
133
133
|
const enrichedParameters = ctx.request.body.parameters || {};
|
|
@@ -173,8 +173,7 @@ exports.executeV2 = function (ctx) {
|
|
|
173
173
|
return execute(ctx, { rowsOnly: false });
|
|
174
174
|
});
|
|
175
175
|
};
|
|
176
|
-
const removeDynamicVariables = (queryId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
177
|
-
const db = getAppDB();
|
|
176
|
+
const removeDynamicVariables = (db, queryId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
178
177
|
const query = yield db.get(queryId);
|
|
179
178
|
const datasource = yield db.get(query.datasourceId);
|
|
180
179
|
const dynamicVariables = datasource.config.dynamicVariables;
|
|
@@ -189,8 +188,8 @@ const removeDynamicVariables = (queryId) => __awaiter(void 0, void 0, void 0, fu
|
|
|
189
188
|
});
|
|
190
189
|
exports.destroy = function (ctx) {
|
|
191
190
|
return __awaiter(this, void 0, void 0, function* () {
|
|
192
|
-
const db =
|
|
193
|
-
yield removeDynamicVariables(ctx.params.queryId);
|
|
191
|
+
const db = new CouchDB(ctx.appId);
|
|
192
|
+
yield removeDynamicVariables(db, ctx.params.queryId);
|
|
194
193
|
yield db.remove(ctx.params.queryId, ctx.params.revId);
|
|
195
194
|
ctx.message = `Query deleted.`;
|
|
196
195
|
ctx.status = 200;
|
|
@@ -8,9 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
const CouchDB = require("../../db");
|
|
11
12
|
const { Role, getRole, isBuiltin, getAllRoles, } = require("@budibase/backend-core/roles");
|
|
12
13
|
const { generateRoleID, getUserMetadataParams, InternalTables, } = require("../../db/utils");
|
|
13
|
-
const { getAppDB } = require("@budibase/backend-core/context");
|
|
14
14
|
const UpdateRolesOptions = {
|
|
15
15
|
CREATED: "created",
|
|
16
16
|
REMOVED: "removed",
|
|
@@ -42,17 +42,17 @@ function updateRolesOnUserTable(db, roleId, updateOption) {
|
|
|
42
42
|
}
|
|
43
43
|
exports.fetch = function (ctx) {
|
|
44
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
ctx.body = yield getAllRoles();
|
|
45
|
+
ctx.body = yield getAllRoles(ctx.appId);
|
|
46
46
|
});
|
|
47
47
|
};
|
|
48
48
|
exports.find = function (ctx) {
|
|
49
49
|
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
-
ctx.body = yield getRole(ctx.params.roleId);
|
|
50
|
+
ctx.body = yield getRole(ctx.appId, ctx.params.roleId);
|
|
51
51
|
});
|
|
52
52
|
};
|
|
53
53
|
exports.save = function (ctx) {
|
|
54
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
const db =
|
|
55
|
+
const db = new CouchDB(ctx.appId);
|
|
56
56
|
let { _id, name, inherits, permissionId } = ctx.request.body;
|
|
57
57
|
if (!_id) {
|
|
58
58
|
_id = generateRoleID();
|
|
@@ -75,7 +75,7 @@ exports.save = function (ctx) {
|
|
|
75
75
|
};
|
|
76
76
|
exports.destroy = function (ctx) {
|
|
77
77
|
return __awaiter(this, void 0, void 0, function* () {
|
|
78
|
-
const db =
|
|
78
|
+
const db = new CouchDB(ctx.appId);
|
|
79
79
|
const roleId = ctx.params.roleId;
|
|
80
80
|
if (isBuiltin(roleId)) {
|
|
81
81
|
ctx.throw(400, "Cannot delete builtin role.");
|
|
@@ -40,12 +40,13 @@ Routing.prototype.addScreenId = function (fullpath, roleId, screenId) {
|
|
|
40
40
|
};
|
|
41
41
|
/**
|
|
42
42
|
* Gets the full routing structure by querying the routing view and processing the result into the tree.
|
|
43
|
+
* @param {string} appId The application to produce the routing structure for.
|
|
43
44
|
* @returns {Promise<object>} The routing structure, this is the full structure designed for use in the builder,
|
|
44
45
|
* if the client routing is required then the updateRoutingStructureForUserRole should be used.
|
|
45
46
|
*/
|
|
46
|
-
function getRoutingStructure() {
|
|
47
|
+
function getRoutingStructure(appId) {
|
|
47
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
const screenRoutes = yield getRoutingInfo();
|
|
49
|
+
const screenRoutes = yield getRoutingInfo(appId);
|
|
49
50
|
const routing = new Routing();
|
|
50
51
|
for (let screenRoute of screenRoutes) {
|
|
51
52
|
let fullpath = screenRoute.routing.route;
|
|
@@ -56,12 +57,12 @@ function getRoutingStructure() {
|
|
|
56
57
|
});
|
|
57
58
|
}
|
|
58
59
|
exports.fetch = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
59
|
-
ctx.body = yield getRoutingStructure();
|
|
60
|
+
ctx.body = yield getRoutingStructure(ctx.appId);
|
|
60
61
|
});
|
|
61
62
|
exports.clientFetch = (ctx) => __awaiter(void 0, void 0, void 0, function* () {
|
|
62
|
-
const routing = yield getRoutingStructure();
|
|
63
|
+
const routing = yield getRoutingStructure(ctx.appId);
|
|
63
64
|
let roleId = ctx.user.role._id;
|
|
64
|
-
const roleIds = yield getUserRoleHierarchy(roleId);
|
|
65
|
+
const roleIds = yield getUserRoleHierarchy(ctx.appId, roleId);
|
|
65
66
|
for (let topLevel of Object.values(routing.routes)) {
|
|
66
67
|
for (let subpathKey of Object.keys(topLevel.subpaths)) {
|
|
67
68
|
let found = false;
|