@budibase/server 2.1.32-alpha.5 → 2.1.32-alpha.7
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/builder/assets/{index.192baaa3.js → index.e0fdcf54.js} +184 -184
- package/builder/index.html +1 -1
- package/coverage/clover.xml +3112 -3177
- package/coverage/coverage-final.json +105 -106
- package/coverage/lcov-report/index.html +145 -145
- package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/{apikeys.js.html → apikeys.ts.html} +19 -19
- package/coverage/lcov-report/src/api/controllers/application.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/auth.ts.html +3 -3
- package/coverage/lcov-report/src/api/controllers/{automation.js.html → automation.ts.html} +68 -68
- package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/{cloud.js.html → cloud.ts.html} +40 -40
- package/coverage/lcov-report/src/api/controllers/component.ts.html +6 -3
- package/coverage/lcov-report/src/api/controllers/{datasource.js.html → datasource.ts.html} +100 -79
- package/coverage/lcov-report/src/api/controllers/deploy/{Deployment.js.html → Deployment.ts.html} +30 -21
- package/coverage/lcov-report/src/api/controllers/deploy/index.html +6 -6
- package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/index.html +108 -108
- package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/src/api/controllers/{layout.js.html → layout.ts.html} +19 -19
- package/coverage/lcov-report/src/api/controllers/{metadata.js.html → metadata.ts.html} +19 -16
- package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
- package/coverage/lcov-report/src/api/controllers/{permission.js.html → permission.ts.html} +73 -64
- package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/plugin/index.html +11 -11
- package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +10 -13
- package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +3 -3
- package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/index.html +11 -11
- package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +8 -11
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/index.html +2 -2
- package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/query/{validation.js.html → validation.ts.html} +10 -10
- package/coverage/lcov-report/src/api/controllers/{role.js.html → role.ts.html} +37 -49
- package/coverage/lcov-report/src/api/controllers/{routing.js.html → routing.ts.html} +58 -49
- package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +6 -18
- package/coverage/lcov-report/src/api/controllers/row/external.js.html +4 -4
- package/coverage/lcov-report/src/api/controllers/row/index.html +35 -35
- package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/controllers/row/internal.js.html +17 -20
- package/coverage/lcov-report/src/api/controllers/row/{internalSearch.js.html → internalSearch.ts.html} +175 -103
- package/coverage/lcov-report/src/api/controllers/row/{staticFormula.js.html → staticFormula.ts.html} +62 -47
- package/coverage/lcov-report/src/api/controllers/row/{utils.js.html → utils.ts.html} +57 -36
- package/coverage/lcov-report/src/api/controllers/screen.ts.html +29 -17
- package/coverage/lcov-report/src/api/controllers/{script.js.html → script.ts.html} +10 -7
- package/coverage/lcov-report/src/api/controllers/static/index.html +10 -10
- package/coverage/lcov-report/src/api/controllers/static/index.ts.html +15 -27
- package/coverage/lcov-report/src/api/controllers/table/{bulkFormula.js.html → bulkFormula.ts.html} +89 -47
- package/coverage/lcov-report/src/api/controllers/table/{external.js.html → external.ts.html} +192 -87
- package/coverage/lcov-report/src/api/controllers/table/index.html +39 -39
- package/coverage/lcov-report/src/api/controllers/table/{index.js.html → index.ts.html} +28 -28
- package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +3 -6
- package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/{templates.js.html → templates.ts.html} +27 -18
- package/coverage/lcov-report/src/api/controllers/{user.js.html → user.ts.html} +72 -78
- package/coverage/lcov-report/src/api/controllers/view/{exporters.js.html → exporters.ts.html} +13 -7
- package/coverage/lcov-report/src/api/controllers/view/index.html +21 -21
- package/coverage/lcov-report/src/api/controllers/view/{index.js.html → index.ts.html} +68 -41
- package/coverage/lcov-report/src/api/controllers/view/{utils.js.html → utils.ts.html} +54 -36
- package/coverage/lcov-report/src/api/controllers/view/viewBuilder.js.html +1 -1
- package/coverage/lcov-report/src/api/controllers/webhook.ts.html +1 -1
- package/coverage/lcov-report/src/api/index.html +14 -14
- package/coverage/lcov-report/src/api/{index.js.html → index.ts.html} +28 -49
- package/coverage/lcov-report/src/api/routes/{analytics.js.html → analytics.ts.html} +7 -7
- package/coverage/lcov-report/src/api/routes/{apikeys.js.html → apikeys.ts.html} +11 -11
- package/coverage/lcov-report/src/api/routes/application.ts.html +35 -11
- package/coverage/lcov-report/src/api/routes/auth.ts.html +3 -3
- package/coverage/lcov-report/src/api/routes/{automation.js.html → automation.ts.html} +41 -35
- package/coverage/lcov-report/src/api/routes/backup.ts.html +18 -6
- package/coverage/lcov-report/src/api/routes/{deploy.js.html → cloud.ts.html} +18 -15
- package/coverage/lcov-report/src/api/routes/{component.js.html → component.ts.html} +10 -10
- package/coverage/lcov-report/src/api/routes/{datasource.js.html → datasource.ts.html} +53 -26
- package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
- package/coverage/lcov-report/src/api/routes/{dev.js.html → dev.ts.html} +54 -18
- package/coverage/lcov-report/src/api/routes/index.html +41 -41
- package/coverage/lcov-report/src/api/routes/index.ts.html +3 -3
- package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
- package/coverage/lcov-report/src/api/routes/{layout.js.html → layout.ts.html} +11 -11
- package/coverage/lcov-report/src/api/routes/{metadata.js.html → metadata.ts.html} +17 -17
- package/coverage/lcov-report/src/api/routes/{migrations.js.html → migrations.ts.html} +12 -12
- package/coverage/lcov-report/src/api/routes/{permission.js.html → permission.ts.html} +41 -17
- package/coverage/lcov-report/src/api/routes/plugin.ts.html +32 -8
- package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
- package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
- package/coverage/lcov-report/src/api/routes/{query.js.html → query.ts.html} +24 -33
- package/coverage/lcov-report/src/{utilities/routing/index.js.html → api/routes/role.ts.html} +32 -35
- package/coverage/lcov-report/src/api/routes/{routing.js.html → routing.ts.html} +10 -10
- package/coverage/lcov-report/src/api/routes/row.ts.html +8 -14
- package/coverage/lcov-report/src/api/routes/{screen.js.html → screen.ts.html} +29 -14
- package/coverage/lcov-report/src/api/routes/{script.js.html → script.ts.html} +10 -10
- package/coverage/lcov-report/src/api/routes/static.ts.html +9 -18
- package/coverage/lcov-report/src/api/routes/{table.js.html → table.ts.html} +16 -25
- package/coverage/lcov-report/src/api/routes/{templates.js.html → templates.ts.html} +11 -11
- package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +12 -18
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +10 -10
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +1 -1
- package/coverage/lcov-report/src/api/routes/{user.js.html → user.ts.html} +14 -20
- package/coverage/lcov-report/src/api/routes/utils/index.html +6 -6
- package/coverage/lcov-report/src/api/routes/utils/{validators.js.html → validators.ts.html} +39 -51
- package/coverage/lcov-report/src/api/routes/{view.js.html → view.ts.html} +33 -24
- package/coverage/lcov-report/src/api/routes/webhook.ts.html +3 -3
- package/coverage/lcov-report/src/app.ts.html +9 -12
- package/coverage/lcov-report/src/automations/actions.js.html +1 -1
- package/coverage/lcov-report/src/automations/automationUtils.js.html +1 -1
- package/coverage/lcov-report/src/automations/bullboard.js.html +1 -1
- package/coverage/lcov-report/src/automations/index.html +10 -10
- package/coverage/lcov-report/src/automations/index.js.html +1 -1
- package/coverage/lcov-report/src/automations/logging/index.html +1 -1
- package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
- package/coverage/lcov-report/src/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
- package/coverage/lcov-report/src/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
- package/coverage/lcov-report/src/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/index.html +1 -1
- package/coverage/lcov-report/src/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/loop.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/updateRow.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/src/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
- package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/src/automations/triggers.js.html +11 -14
- package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
- package/coverage/lcov-report/src/constants/index.html +5 -5
- package/coverage/lcov-report/src/constants/index.js.html +7 -13
- package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/src/constants/screens.js.html +3 -3
- package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +1 -1
- package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +1 -1
- package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +1 -1
- package/coverage/lcov-report/src/db/defaultData/index.html +1 -1
- package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +1 -1
- package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +1 -1
- package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
- package/coverage/lcov-report/src/db/inMemoryView.js.html +4 -4
- package/coverage/lcov-report/src/db/index.html +1 -1
- package/coverage/lcov-report/src/db/index.js.html +1 -1
- package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +3 -3
- package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +1 -1
- package/coverage/lcov-report/src/db/linkedRows/index.html +1 -1
- package/coverage/lcov-report/src/db/linkedRows/index.js.html +3 -3
- package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +4 -4
- package/coverage/lcov-report/src/db/newid.js.html +1 -1
- package/coverage/lcov-report/src/db/utils.ts.html +2 -2
- package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
- package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
- package/coverage/lcov-report/src/definitions/index.html +1 -1
- package/coverage/lcov-report/src/environment.js.html +1 -1
- package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/src/events/index.html +1 -1
- package/coverage/lcov-report/src/events/index.js.html +1 -1
- package/coverage/lcov-report/src/events/utils.js.html +1 -1
- package/coverage/lcov-report/src/index.html +17 -32
- package/coverage/lcov-report/src/index.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/base/index.html +1 -1
- package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/base/sql.ts.html +2 -2
- package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +2 -2
- package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/index.html +4 -4
- package/coverage/lcov-report/src/integrations/index.ts.html +58 -46
- package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
- package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
- package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/authorized.ts.html +30 -51
- package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/index.html +10 -10
- package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
- package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +3 -3
- package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +9 -9
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +7 -10
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -10
- package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/index.html +1 -1
- package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
- package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
- package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
- package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +16 -10
- package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +9 -21
- package/coverage/lcov-report/src/sdk/app/backups/index.html +16 -16
- package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/app/tables/index.html +1 -1
- package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +1 -1
- package/coverage/lcov-report/src/sdk/index.html +1 -1
- package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
- package/coverage/lcov-report/src/startup.ts.html +3 -3
- package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +61 -49
- package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
- package/coverage/lcov-report/src/tests/utilities/index.html +15 -15
- package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
- package/coverage/lcov-report/src/tests/utilities/structures.js.html +9 -12
- package/coverage/lcov-report/src/threads/automation.ts.html +20 -23
- package/coverage/lcov-report/src/threads/index.html +24 -24
- package/coverage/lcov-report/src/threads/index.ts.html +1 -1
- package/coverage/lcov-report/src/threads/query.ts.html +18 -33
- package/coverage/lcov-report/src/threads/utils.ts.html +10 -13
- package/coverage/lcov-report/src/utilities/{budibaseDir.js.html → budibaseDir.ts.html} +5 -5
- package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
- package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +13 -13
- package/coverage/lcov-report/src/utilities/fileSystem/index.html +5 -20
- package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +16 -16
- package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
- package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
- package/coverage/lcov-report/src/utilities/index.html +44 -44
- package/coverage/lcov-report/src/utilities/{index.js.html → index.ts.html} +68 -44
- package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
- package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
- package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/src/utilities/{redis.js.html → redis.ts.html} +36 -33
- package/coverage/lcov-report/src/utilities/routing/index.html +6 -6
- package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/index.html +38 -23
- package/coverage/lcov-report/src/utilities/rowProcessor/{index.js.html → index.ts.html} +106 -337
- package/coverage/lcov-report/src/utilities/rowProcessor/map.js.html +370 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/{utils.js.html → utils.ts.html} +43 -31
- package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/src/utilities/{security.js.html → security.ts.html} +49 -67
- package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/src/utilities/usageQuota/index.html +18 -18
- package/coverage/lcov-report/src/utilities/usageQuota/{rows.js.html → rows.ts.html} +27 -39
- package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/src/utilities/{users.js.html → users.ts.html} +22 -28
- package/coverage/lcov-report/src/utilities/{workerRequests.js.html → workerRequests.ts.html} +69 -54
- package/coverage/lcov-report/src/watch.ts.html +8 -11
- package/coverage/lcov-report/src/websocket.ts.html +1 -1
- package/coverage/lcov.info +5519 -5768
- package/dist/api/controllers/apikeys.js +12 -9
- package/dist/api/controllers/automation.js +104 -84
- package/dist/api/controllers/cloud.js +84 -71
- package/dist/api/controllers/component.js +4 -2
- package/dist/api/controllers/datasource.js +125 -111
- package/dist/api/controllers/deploy/Deployment.js +10 -6
- package/dist/api/controllers/layout.js +18 -15
- package/dist/api/controllers/metadata.js +51 -37
- package/dist/api/controllers/permission.js +52 -43
- package/dist/api/controllers/plugin/index.js +6 -7
- package/dist/api/controllers/public/tables.js +29 -9
- package/dist/api/controllers/query/import/index.js +1 -2
- package/dist/api/controllers/query/validation.js +41 -33
- package/dist/api/controllers/role.js +29 -27
- package/dist/api/controllers/routing.js +71 -58
- package/dist/api/controllers/row/ExternalRequest.js +6 -7
- package/dist/api/controllers/row/external.js +3 -3
- package/dist/api/controllers/row/internal.js +11 -12
- package/dist/api/controllers/row/internalSearch.js +95 -80
- package/dist/api/controllers/row/staticFormula.js +85 -75
- package/dist/api/controllers/row/utils.js +118 -84
- package/dist/api/controllers/screen.js +81 -66
- package/dist/api/controllers/script.js +13 -6
- package/dist/api/controllers/static/index.js +9 -11
- package/dist/api/controllers/table/bulkFormula.js +47 -35
- package/dist/api/controllers/table/external.js +67 -54
- package/dist/api/controllers/table/index.js +66 -33
- package/dist/api/controllers/table/internal.js +1 -2
- package/dist/api/controllers/table/utils.js +8 -9
- package/dist/api/controllers/templates.js +17 -10
- package/dist/api/controllers/user.js +82 -70
- package/dist/api/controllers/view/exporters.js +8 -4
- package/dist/api/controllers/view/index.js +201 -153
- package/dist/api/controllers/view/utils.js +151 -121
- package/dist/api/index.js +38 -34
- package/dist/api/routes/analytics.js +29 -3
- package/dist/api/routes/apikeys.js +33 -7
- package/dist/api/routes/application.js +8 -9
- package/dist/api/routes/auth.js +1 -2
- package/dist/api/routes/automation.js +46 -20
- package/dist/api/routes/backup.js +3 -4
- package/dist/api/routes/cloud.js +32 -6
- package/dist/api/routes/component.js +32 -6
- package/dist/api/routes/datasource.js +39 -13
- package/dist/api/routes/deploy.js +34 -8
- package/dist/api/routes/dev.js +36 -10
- package/dist/api/routes/integration.js +10 -7
- package/dist/api/routes/layout.js +33 -7
- package/dist/api/routes/metadata.js +36 -10
- package/dist/api/routes/migrations.js +32 -6
- package/dist/api/routes/permission.js +38 -12
- package/dist/api/routes/plugin.js +5 -5
- package/dist/api/routes/query.js +42 -15
- package/dist/api/routes/role.js +36 -10
- package/dist/api/routes/routing.js +32 -6
- package/dist/api/routes/row.js +2 -1
- package/dist/api/routes/screen.js +35 -9
- package/dist/api/routes/script.js +32 -6
- package/dist/api/routes/static.js +9 -9
- package/dist/api/routes/table.js +40 -13
- package/dist/api/routes/templates.js +33 -7
- package/dist/api/routes/tests/utilities/TestFunctions.js +6 -8
- package/dist/api/routes/user.js +40 -13
- package/dist/api/routes/utils/validators.js +142 -126
- package/dist/api/routes/view.js +38 -12
- package/dist/api/routes/webhook.js +1 -2
- package/dist/app.js +3 -4
- package/dist/automations/triggers.js +5 -6
- package/dist/constants/index.js +3 -5
- package/dist/constants/screens.js +2 -2
- package/dist/db/inMemoryView.js +3 -3
- package/dist/db/linkedRows/LinkController.js +2 -2
- package/dist/db/linkedRows/index.js +2 -2
- package/dist/db/linkedRows/linkUtils.js +3 -3
- package/dist/db/views/staticViews.js +4 -4
- package/dist/integrations/index.js +15 -6
- package/dist/middleware/authorized.js +22 -21
- package/dist/migrations/functions/appUrls.js +2 -2
- package/dist/migrations/functions/usageQuotas/syncApps.js +3 -4
- package/dist/migrations/functions/usageQuotas/syncRows.js +3 -4
- package/dist/migrations/functions/userEmailViewCasing.js +3 -3
- package/dist/package.json +6 -6
- package/dist/sdk/app/backups/exports.js +1 -2
- package/dist/sdk/app/backups/imports.js +2 -3
- package/dist/startup.js +4 -4
- package/dist/tests/utilities/TestConfiguration.js +27 -35
- package/dist/tests/utilities/structures.js +3 -4
- package/dist/threads/automation.js +15 -16
- package/dist/threads/query.js +17 -19
- package/dist/threads/utils.js +11 -9
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/budibaseDir.js +4 -2
- package/dist/utilities/fileSystem/clientLibrary.js +12 -12
- package/dist/utilities/fileSystem/index.js +3 -3
- package/dist/utilities/index.js +102 -75
- package/dist/utilities/redis.js +100 -65
- package/dist/utilities/routing/index.js +27 -23
- package/dist/utilities/rowProcessor/index.js +124 -191
- package/dist/utilities/rowProcessor/map.js +96 -0
- package/dist/utilities/rowProcessor/utils.js +35 -26
- package/dist/utilities/security.js +39 -35
- package/dist/utilities/usageQuota/rows.js +56 -49
- package/dist/utilities/users.js +31 -28
- package/dist/utilities/workerRequests.js +115 -82
- package/dist/watch.js +1 -2
- package/package.json +7 -7
- package/scripts/exportAppTemplate.js +2 -2
- package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
- package/src/api/controllers/auth.ts +2 -2
- package/src/api/controllers/{automation.js → automation.ts} +48 -48
- package/src/api/controllers/{cloud.js → cloud.ts} +24 -24
- package/src/api/controllers/component.ts +2 -1
- package/src/api/controllers/{datasource.js → datasource.ts} +55 -48
- package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
- package/src/api/controllers/{layout.js → layout.ts} +8 -8
- package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
- package/src/api/controllers/{permission.js → permission.ts} +49 -46
- package/src/api/controllers/plugin/index.ts +4 -5
- package/src/api/controllers/public/tables.ts +2 -2
- package/src/api/controllers/query/import/index.ts +2 -3
- package/src/api/controllers/query/{validation.js → validation.ts} +7 -7
- package/src/api/controllers/{role.js → role.ts} +21 -25
- package/src/api/controllers/{routing.js → routing.ts} +37 -34
- package/src/api/controllers/row/ExternalRequest.ts +4 -8
- package/src/api/controllers/row/external.js +3 -3
- package/src/api/controllers/row/internal.js +11 -12
- package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
- package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +28 -23
- package/src/api/controllers/row/{utils.js → utils.ts} +25 -18
- package/src/api/controllers/screen.ts +10 -6
- package/src/api/controllers/script.ts +12 -0
- package/src/api/controllers/static/index.ts +9 -13
- package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
- package/src/api/controllers/table/{external.js → external.ts} +86 -51
- package/src/api/controllers/table/{index.js → index.ts} +17 -17
- package/src/api/controllers/table/internal.ts +1 -2
- package/src/api/controllers/table/utils.ts +10 -10
- package/src/api/controllers/{templates.js → templates.ts} +10 -7
- package/src/api/controllers/{user.js → user.ts} +47 -49
- package/src/api/controllers/view/{exporters.js → exporters.ts} +5 -3
- package/src/api/controllers/view/{index.js → index.ts} +36 -27
- package/src/api/controllers/view/{utils.js → utils.ts} +26 -20
- package/src/api/{index.js → index.ts} +15 -22
- package/src/api/routes/analytics.ts +9 -0
- package/src/api/routes/apikeys.ts +12 -0
- package/src/api/routes/application.ts +17 -9
- package/src/api/routes/auth.ts +2 -2
- package/src/api/routes/automation.ts +87 -0
- package/src/api/routes/backup.ts +8 -4
- package/src/api/routes/cloud.ts +18 -0
- package/src/api/routes/component.ts +14 -0
- package/src/api/routes/datasource.ts +60 -0
- package/src/api/routes/deploy.ts +21 -0
- package/src/api/routes/dev.ts +38 -0
- package/src/api/routes/integration.ts +16 -0
- package/src/api/routes/layout.ts +16 -0
- package/src/api/routes/{metadata.js → metadata.ts} +13 -13
- package/src/api/routes/migrations.ts +14 -0
- package/src/api/routes/permission.ts +41 -0
- package/src/api/routes/plugin.ts +14 -6
- package/src/api/routes/{query.js → query.ts} +17 -20
- package/src/api/routes/role.ts +24 -0
- package/src/api/routes/routing.ts +14 -0
- package/src/api/routes/row.ts +3 -5
- package/src/api/routes/screen.ts +23 -0
- package/src/api/routes/script.ts +10 -0
- package/src/api/routes/static.ts +4 -7
- package/src/api/routes/{table.js → table.ts} +9 -12
- package/src/api/routes/templates.ts +16 -0
- package/src/api/routes/tests/backup.spec.js +9 -1
- package/src/api/routes/tests/permissions.spec.js +2 -1
- package/src/api/routes/tests/role.spec.js +3 -5
- package/src/api/routes/tests/routing.spec.js +2 -1
- package/src/api/routes/tests/row.spec.js +3 -4
- package/src/api/routes/tests/user.spec.js +2 -1
- package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
- package/src/api/routes/{user.js → user.ts} +7 -9
- package/src/api/routes/utils/{validators.js → validators.ts} +33 -37
- package/src/api/routes/view.ts +34 -0
- package/src/api/routes/webhook.ts +2 -2
- package/src/app.ts +3 -4
- package/src/automations/triggers.js +5 -6
- package/src/constants/index.js +3 -5
- package/src/constants/screens.js +2 -2
- package/src/db/inMemoryView.js +3 -3
- package/src/db/linkedRows/LinkController.js +2 -2
- package/src/db/linkedRows/index.js +2 -2
- package/src/db/linkedRows/linkUtils.js +3 -3
- package/src/db/utils.ts +1 -1
- package/src/db/views/staticViews.js +4 -4
- package/src/integrations/base/sql.ts +1 -1
- package/src/integrations/base/sqlTable.ts +1 -1
- package/src/integrations/index.ts +45 -41
- package/src/middleware/authorized.ts +21 -28
- package/src/middleware/tests/authorized.spec.js +5 -6
- package/src/migrations/functions/appUrls.ts +2 -2
- package/src/migrations/functions/tests/appUrls.spec.js +4 -4
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +14 -9
- package/src/migrations/functions/usageQuotas/syncApps.ts +3 -4
- package/src/migrations/functions/usageQuotas/syncRows.ts +3 -4
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
- package/src/migrations/functions/userEmailViewCasing.ts +3 -3
- package/src/sdk/app/backups/exports.ts +5 -3
- package/src/sdk/app/backups/imports.ts +3 -7
- package/src/startup.ts +2 -2
- package/src/tests/utilities/TestConfiguration.js +39 -35
- package/src/tests/utilities/structures.js +3 -4
- package/src/threads/automation.ts +14 -15
- package/src/threads/query.ts +11 -16
- package/src/threads/utils.ts +4 -5
- package/src/utilities/budibaseDir.ts +3 -0
- package/src/utilities/fileSystem/clientLibrary.js +12 -12
- package/src/utilities/fileSystem/index.js +8 -8
- package/src/utilities/{index.js → index.ts} +40 -32
- package/src/utilities/{redis.js → redis.ts} +21 -20
- package/src/utilities/routing/index.ts +32 -0
- package/src/utilities/rowProcessor/{index.js → index.ts} +65 -142
- package/src/utilities/rowProcessor/map.js +95 -0
- package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
- package/src/utilities/security.ts +65 -0
- package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
- package/src/utilities/{users.js → users.ts} +11 -13
- package/src/utilities/{workerRequests.js → workerRequests.ts} +43 -38
- package/src/watch.ts +2 -3
- package/coverage/lcov-report/src/api/routes/cloud.js.html +0 -127
- package/coverage/lcov-report/src/api/routes/integration.js.html +0 -121
- package/coverage/lcov-report/src/api/routes/role.js.html +0 -130
- package/coverage/lcov-report/src/module.d.ts.html +0 -127
- package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +0 -193
- package/dist/utilities/fileSystem/utilities.js +0 -22
- package/src/api/controllers/script.js +0 -11
- package/src/api/routes/analytics.js +0 -9
- package/src/api/routes/apikeys.js +0 -12
- package/src/api/routes/automation.js +0 -85
- package/src/api/routes/cloud.js +0 -14
- package/src/api/routes/component.js +0 -14
- package/src/api/routes/datasource.js +0 -51
- package/src/api/routes/deploy.js +0 -17
- package/src/api/routes/dev.js +0 -26
- package/src/api/routes/integration.js +0 -12
- package/src/api/routes/layout.js +0 -16
- package/src/api/routes/migrations.js +0 -14
- package/src/api/routes/permission.js +0 -33
- package/src/api/routes/role.js +0 -15
- package/src/api/routes/routing.js +0 -14
- package/src/api/routes/screen.js +0 -18
- package/src/api/routes/script.js +0 -10
- package/src/api/routes/templates.js +0 -16
- package/src/api/routes/view.js +0 -31
- package/src/module.d.ts +0 -14
- package/src/utilities/budibaseDir.js +0 -3
- package/src/utilities/fileSystem/utilities.js +0 -36
- package/src/utilities/routing/index.js +0 -25
- package/src/utilities/security.js +0 -71
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
require("../../db").init()
|
|
2
|
-
const { BUILTIN_ROLE_IDS } = require("@budibase/backend-core/roles")
|
|
3
2
|
const env = require("../../environment")
|
|
4
3
|
const {
|
|
5
4
|
basicTable,
|
|
@@ -13,18 +12,21 @@ const {
|
|
|
13
12
|
basicWebhook,
|
|
14
13
|
TENANT_ID,
|
|
15
14
|
} = require("./structures")
|
|
15
|
+
const {
|
|
16
|
+
constants,
|
|
17
|
+
tenancy,
|
|
18
|
+
sessions,
|
|
19
|
+
cache,
|
|
20
|
+
context,
|
|
21
|
+
db: dbCore,
|
|
22
|
+
encryption,
|
|
23
|
+
auth,
|
|
24
|
+
roles,
|
|
25
|
+
} = require("@budibase/backend-core")
|
|
16
26
|
const controllers = require("./controllers")
|
|
17
27
|
const supertest = require("supertest")
|
|
18
28
|
const { cleanup } = require("../../utilities/fileSystem")
|
|
19
|
-
const { Cookie, Header } = require("@budibase/backend-core/constants")
|
|
20
|
-
const { jwt } = require("@budibase/backend-core/auth")
|
|
21
|
-
const { doInTenant, doWithGlobalDB } = require("@budibase/backend-core/tenancy")
|
|
22
|
-
const { createASession } = require("@budibase/backend-core/sessions")
|
|
23
|
-
const { user: userCache } = require("@budibase/backend-core/cache")
|
|
24
29
|
const newid = require("../../db/newid")
|
|
25
|
-
const context = require("@budibase/backend-core/context")
|
|
26
|
-
const { generateDevInfoID, SEPARATOR } = require("@budibase/backend-core/db")
|
|
27
|
-
const { encrypt } = require("@budibase/backend-core/encryption")
|
|
28
30
|
const { DocumentType, generateUserMetadataID } = require("../../db/utils")
|
|
29
31
|
const { startup } = require("../../startup")
|
|
30
32
|
|
|
@@ -83,7 +85,7 @@ class TestConfiguration {
|
|
|
83
85
|
if (!appId) {
|
|
84
86
|
appId = this.appId
|
|
85
87
|
}
|
|
86
|
-
return doInTenant(TENANT_ID, () => {
|
|
88
|
+
return tenancy.doInTenant(TENANT_ID, () => {
|
|
87
89
|
// check if already in a context
|
|
88
90
|
if (context.getAppId() == null && appId !== null) {
|
|
89
91
|
return context.doInAppContext(appId, async () => {
|
|
@@ -155,7 +157,7 @@ class TestConfiguration {
|
|
|
155
157
|
email = EMAIL,
|
|
156
158
|
roles,
|
|
157
159
|
} = {}) {
|
|
158
|
-
return doWithGlobalDB(TENANT_ID, async db => {
|
|
160
|
+
return tenancy.doWithGlobalDB(TENANT_ID, async db => {
|
|
159
161
|
let existing
|
|
160
162
|
try {
|
|
161
163
|
existing = await db.get(id)
|
|
@@ -170,7 +172,7 @@ class TestConfiguration {
|
|
|
170
172
|
firstName,
|
|
171
173
|
lastName,
|
|
172
174
|
}
|
|
173
|
-
await createASession(id, {
|
|
175
|
+
await sessions.createASession(id, {
|
|
174
176
|
sessionId: "sessionid",
|
|
175
177
|
tenantId: TENANT_ID,
|
|
176
178
|
csrfToken: CSRF_TOKEN,
|
|
@@ -212,7 +214,7 @@ class TestConfiguration {
|
|
|
212
214
|
admin,
|
|
213
215
|
roles,
|
|
214
216
|
})
|
|
215
|
-
await
|
|
217
|
+
await cache.user.invalidateUser(globalId)
|
|
216
218
|
return {
|
|
217
219
|
...resp,
|
|
218
220
|
globalId,
|
|
@@ -227,19 +229,19 @@ class TestConfiguration {
|
|
|
227
229
|
throw "Server has not been opened, cannot login."
|
|
228
230
|
}
|
|
229
231
|
// make sure the user exists in the global DB
|
|
230
|
-
if (roleId !== BUILTIN_ROLE_IDS.PUBLIC) {
|
|
232
|
+
if (roleId !== roles.BUILTIN_ROLE_IDS.PUBLIC) {
|
|
231
233
|
await this.globalUser({
|
|
232
234
|
id: userId,
|
|
233
235
|
builder,
|
|
234
236
|
roles: { [this.prodAppId]: roleId },
|
|
235
237
|
})
|
|
236
238
|
}
|
|
237
|
-
await createASession(userId, {
|
|
239
|
+
await sessions.createASession(userId, {
|
|
238
240
|
sessionId: "sessionid",
|
|
239
241
|
tenantId: TENANT_ID,
|
|
240
242
|
})
|
|
241
243
|
// have to fake this
|
|
242
|
-
const
|
|
244
|
+
const authObj = {
|
|
243
245
|
userId,
|
|
244
246
|
sessionId: "sessionid",
|
|
245
247
|
tenantId: TENANT_ID,
|
|
@@ -248,45 +250,45 @@ class TestConfiguration {
|
|
|
248
250
|
roleId: roleId,
|
|
249
251
|
appId,
|
|
250
252
|
}
|
|
251
|
-
const authToken = jwt.sign(
|
|
252
|
-
const appToken = jwt.sign(app, env.JWT_SECRET)
|
|
253
|
+
const authToken = auth.jwt.sign(authObj, env.JWT_SECRET)
|
|
254
|
+
const appToken = auth.jwt.sign(app, env.JWT_SECRET)
|
|
253
255
|
|
|
254
256
|
// returning necessary request headers
|
|
255
|
-
await
|
|
257
|
+
await cache.user.invalidateUser(userId)
|
|
256
258
|
return {
|
|
257
259
|
Accept: "application/json",
|
|
258
260
|
Cookie: [
|
|
259
|
-
`${Cookie.Auth}=${authToken}`,
|
|
260
|
-
`${Cookie.CurrentApp}=${appToken}`,
|
|
261
|
+
`${constants.Cookie.Auth}=${authToken}`,
|
|
262
|
+
`${constants.Cookie.CurrentApp}=${appToken}`,
|
|
261
263
|
],
|
|
262
|
-
[Header.APP_ID]: appId,
|
|
264
|
+
[constants.Header.APP_ID]: appId,
|
|
263
265
|
}
|
|
264
266
|
})
|
|
265
267
|
}
|
|
266
268
|
|
|
267
269
|
defaultHeaders(extras = {}) {
|
|
268
|
-
const
|
|
270
|
+
const authObj = {
|
|
269
271
|
userId: GLOBAL_USER_ID,
|
|
270
272
|
sessionId: "sessionid",
|
|
271
273
|
tenantId: TENANT_ID,
|
|
272
274
|
}
|
|
273
275
|
const app = {
|
|
274
|
-
roleId: BUILTIN_ROLE_IDS.ADMIN,
|
|
276
|
+
roleId: roles.BUILTIN_ROLE_IDS.ADMIN,
|
|
275
277
|
appId: this.appId,
|
|
276
278
|
}
|
|
277
|
-
const authToken = jwt.sign(
|
|
278
|
-
const appToken = jwt.sign(app, env.JWT_SECRET)
|
|
279
|
+
const authToken = auth.jwt.sign(authObj, env.JWT_SECRET)
|
|
280
|
+
const appToken = auth.jwt.sign(app, env.JWT_SECRET)
|
|
279
281
|
const headers = {
|
|
280
282
|
Accept: "application/json",
|
|
281
283
|
Cookie: [
|
|
282
|
-
`${Cookie.Auth}=${authToken}`,
|
|
283
|
-
`${Cookie.CurrentApp}=${appToken}`,
|
|
284
|
+
`${constants.Cookie.Auth}=${authToken}`,
|
|
285
|
+
`${constants.Cookie.CurrentApp}=${appToken}`,
|
|
284
286
|
],
|
|
285
|
-
[Header.CSRF_TOKEN]: CSRF_TOKEN,
|
|
287
|
+
[constants.Header.CSRF_TOKEN]: CSRF_TOKEN,
|
|
286
288
|
...extras,
|
|
287
289
|
}
|
|
288
290
|
if (this.appId) {
|
|
289
|
-
headers[Header.APP_ID] = this.appId
|
|
291
|
+
headers[constants.Header.APP_ID] = this.appId
|
|
290
292
|
}
|
|
291
293
|
return headers
|
|
292
294
|
}
|
|
@@ -298,14 +300,14 @@ class TestConfiguration {
|
|
|
298
300
|
Accept: "application/json",
|
|
299
301
|
}
|
|
300
302
|
if (appId) {
|
|
301
|
-
headers[Header.APP_ID] = appId
|
|
303
|
+
headers[constants.Header.APP_ID] = appId
|
|
302
304
|
}
|
|
303
305
|
return headers
|
|
304
306
|
}
|
|
305
307
|
|
|
306
308
|
async roleHeaders({
|
|
307
309
|
email = EMAIL,
|
|
308
|
-
roleId = BUILTIN_ROLE_IDS.ADMIN,
|
|
310
|
+
roleId = roles.BUILTIN_ROLE_IDS.ADMIN,
|
|
309
311
|
builder = false,
|
|
310
312
|
prodApp = true,
|
|
311
313
|
} = {}) {
|
|
@@ -315,15 +317,17 @@ class TestConfiguration {
|
|
|
315
317
|
// API
|
|
316
318
|
|
|
317
319
|
async generateApiKey(userId = GLOBAL_USER_ID) {
|
|
318
|
-
return doWithGlobalDB(TENANT_ID, async db => {
|
|
319
|
-
const id = generateDevInfoID(userId)
|
|
320
|
+
return tenancy.doWithGlobalDB(TENANT_ID, async db => {
|
|
321
|
+
const id = dbCore.generateDevInfoID(userId)
|
|
320
322
|
let devInfo
|
|
321
323
|
try {
|
|
322
324
|
devInfo = await db.get(id)
|
|
323
325
|
} catch (err) {
|
|
324
326
|
devInfo = { _id: id, userId }
|
|
325
327
|
}
|
|
326
|
-
devInfo.apiKey = encrypt(
|
|
328
|
+
devInfo.apiKey = encryption.encrypt(
|
|
329
|
+
`${TENANT_ID}${dbCore.SEPARATOR}${newid()}`
|
|
330
|
+
)
|
|
327
331
|
await db.put(devInfo)
|
|
328
332
|
return devInfo.apiKey
|
|
329
333
|
})
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
const {
|
|
2
|
-
const { BuiltinPermissionID } = require("@budibase/backend-core/permissions")
|
|
1
|
+
const { roles, permissions } = require("@budibase/backend-core")
|
|
3
2
|
const { createHomeScreen } = require("../../constants/screens")
|
|
4
3
|
const { EMPTY_LAYOUT } = require("../../constants/layouts")
|
|
5
4
|
const { cloneDeep } = require("lodash/fp")
|
|
@@ -134,8 +133,8 @@ exports.basicLinkedRow = (tableId, linkedRowId, linkField = "link") => {
|
|
|
134
133
|
exports.basicRole = () => {
|
|
135
134
|
return {
|
|
136
135
|
name: "NewRole",
|
|
137
|
-
inherits: BUILTIN_ROLE_IDS.BASIC,
|
|
138
|
-
permissionId: BuiltinPermissionID.READ_ONLY,
|
|
136
|
+
inherits: roles.BUILTIN_ROLE_IDS.BASIC,
|
|
137
|
+
permissionId: permissions.BuiltinPermissionID.READ_ONLY,
|
|
139
138
|
}
|
|
140
139
|
}
|
|
141
140
|
|
|
@@ -23,15 +23,14 @@ import {
|
|
|
23
23
|
AutomationMetadata,
|
|
24
24
|
} from "../definitions/automations"
|
|
25
25
|
import { WorkerCallback } from "./definitions"
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
import { context, logging } from "@budibase/backend-core"
|
|
27
|
+
import { processObject } from "@budibase/string-templates"
|
|
28
|
+
import { cloneDeep } from "lodash/fp"
|
|
29
|
+
import env from "../environment"
|
|
29
30
|
const FILTER_STEP_ID = actions.ACTION_DEFINITIONS.FILTER.stepId
|
|
30
31
|
const LOOP_STEP_ID = actions.ACTION_DEFINITIONS.LOOP.stepId
|
|
31
32
|
const CRON_STEP_ID = triggerDefs.CRON.stepId
|
|
32
33
|
const STOPPED_STATUS = { success: true, status: AutomationStatus.STOPPED }
|
|
33
|
-
const { cloneDeep } = require("lodash/fp")
|
|
34
|
-
const env = require("../environment")
|
|
35
34
|
|
|
36
35
|
function typecastForLooping(loopStep: LoopStep, input: LoopInput) {
|
|
37
36
|
if (!input || !input.binding) {
|
|
@@ -121,7 +120,7 @@ class Orchestrator {
|
|
|
121
120
|
|
|
122
121
|
async getMetadata(): Promise<AutomationMetadata> {
|
|
123
122
|
const metadataId = generateAutomationMetadataID(this._automation._id!)
|
|
124
|
-
const db = getAppDB()
|
|
123
|
+
const db = context.getAppDB()
|
|
125
124
|
let metadata: AutomationMetadata
|
|
126
125
|
try {
|
|
127
126
|
metadata = await db.get(metadataId)
|
|
@@ -138,7 +137,7 @@ class Orchestrator {
|
|
|
138
137
|
if (!this._job.opts.repeat) {
|
|
139
138
|
return
|
|
140
139
|
}
|
|
141
|
-
logWarn(
|
|
140
|
+
logging.logWarn(
|
|
142
141
|
`CRON disabled reason=${reason} - ${this._appId}/${this._automation._id}`
|
|
143
142
|
)
|
|
144
143
|
const automation = this._automation
|
|
@@ -184,14 +183,14 @@ class Orchestrator {
|
|
|
184
183
|
} else {
|
|
185
184
|
metadata.errorCount = 0
|
|
186
185
|
}
|
|
187
|
-
const db = getAppDB()
|
|
186
|
+
const db = context.getAppDB()
|
|
188
187
|
try {
|
|
189
188
|
await db.put(metadata)
|
|
190
189
|
} catch (err) {
|
|
191
|
-
logAlertWithInfo(
|
|
190
|
+
logging.logAlertWithInfo(
|
|
192
191
|
"Failed to write automation metadata",
|
|
193
192
|
db.name,
|
|
194
|
-
automation._id
|
|
193
|
+
automation._id!,
|
|
195
194
|
err
|
|
196
195
|
)
|
|
197
196
|
}
|
|
@@ -265,7 +264,7 @@ class Orchestrator {
|
|
|
265
264
|
|
|
266
265
|
for (let step of automation.definition.steps) {
|
|
267
266
|
stepCount++
|
|
268
|
-
let input,
|
|
267
|
+
let input: any,
|
|
269
268
|
iterations = 1,
|
|
270
269
|
iterationCount = 0
|
|
271
270
|
|
|
@@ -283,7 +282,7 @@ class Orchestrator {
|
|
|
283
282
|
let originalStepInput = cloneDeep(step.inputs)
|
|
284
283
|
// Handle if the user has set a max iteration count or if it reaches the max limit set by us
|
|
285
284
|
if (loopStep && input.binding) {
|
|
286
|
-
let newInput = await processObject(
|
|
285
|
+
let newInput: any = await processObject(
|
|
287
286
|
loopStep.inputs,
|
|
288
287
|
cloneDeep(this._context)
|
|
289
288
|
)
|
|
@@ -352,7 +351,7 @@ class Orchestrator {
|
|
|
352
351
|
}
|
|
353
352
|
}
|
|
354
353
|
if (
|
|
355
|
-
index === env.
|
|
354
|
+
index === env.AUTOMATION_MAX_ITERATIONS ||
|
|
356
355
|
index === parseInt(loopStep.inputs.iterations)
|
|
357
356
|
) {
|
|
358
357
|
this.updateContextAndOutput(loopStepNumber, step, tempOutput, {
|
|
@@ -481,7 +480,7 @@ export function execute(job: Job, callback: WorkerCallback) {
|
|
|
481
480
|
if (!appId) {
|
|
482
481
|
throw new Error("Unable to execute, event doesn't contain app ID.")
|
|
483
482
|
}
|
|
484
|
-
doInAppContext(appId, async () => {
|
|
483
|
+
return context.doInAppContext(appId, async () => {
|
|
485
484
|
const automationOrchestrator = new Orchestrator(job)
|
|
486
485
|
try {
|
|
487
486
|
const response = await automationOrchestrator.execute()
|
|
@@ -497,7 +496,7 @@ export const removeStalled = async (job: Job) => {
|
|
|
497
496
|
if (!appId) {
|
|
498
497
|
throw new Error("Unable to execute, event doesn't contain app ID.")
|
|
499
498
|
}
|
|
500
|
-
await doInAppContext(appId, async () => {
|
|
499
|
+
await context.doInAppContext(appId, async () => {
|
|
501
500
|
const automationOrchestrator = new Orchestrator(job)
|
|
502
501
|
await automationOrchestrator.stopCron("stalled")
|
|
503
502
|
})
|
package/src/threads/query.ts
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
import { default as threadUtils } from "./utils"
|
|
2
2
|
threadUtils.threadSetup()
|
|
3
3
|
import { WorkerCallback, QueryEvent, QueryVariable } from "./definitions"
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
updateUserOAuth,
|
|
11
|
-
} = require("@budibase/backend-core/auth")
|
|
12
|
-
const { user: userCache } = require("@budibase/backend-core/cache")
|
|
13
|
-
const { getGlobalIDFromUserMetadataID } = require("../db/utils")
|
|
14
|
-
const { cloneDeep } = require("lodash/fp")
|
|
4
|
+
import ScriptRunner from "../utilities/scriptRunner"
|
|
5
|
+
import { getIntegration } from "../integrations"
|
|
6
|
+
import { processStringSync } from "@budibase/string-templates"
|
|
7
|
+
import { context, cache, auth } from "@budibase/backend-core"
|
|
8
|
+
import { getGlobalIDFromUserMetadataID } from "../db/utils"
|
|
9
|
+
import { cloneDeep } from "lodash/fp"
|
|
15
10
|
|
|
16
11
|
const { isSQL } = require("../integrations/utils")
|
|
17
12
|
const {
|
|
@@ -170,7 +165,7 @@ class QueryRunner {
|
|
|
170
165
|
}
|
|
171
166
|
|
|
172
167
|
async runAnotherQuery(queryId: string, parameters: any) {
|
|
173
|
-
const db = getAppDB()
|
|
168
|
+
const db = context.getAppDB()
|
|
174
169
|
const query = await db.get(queryId)
|
|
175
170
|
const datasource = await db.get(query.datasourceId)
|
|
176
171
|
return new QueryRunner(
|
|
@@ -194,7 +189,7 @@ class QueryRunner {
|
|
|
194
189
|
throw new Error("No refresh token found for authenticated user")
|
|
195
190
|
}
|
|
196
191
|
|
|
197
|
-
const resp = await refreshOAuthToken(
|
|
192
|
+
const resp: any = await auth.refreshOAuthToken(
|
|
198
193
|
oauth2.refreshToken,
|
|
199
194
|
providerType,
|
|
200
195
|
configId
|
|
@@ -204,8 +199,8 @@ class QueryRunner {
|
|
|
204
199
|
// There are several other properties available in 'resp'
|
|
205
200
|
if (!resp.err) {
|
|
206
201
|
const globalUserId = getGlobalIDFromUserMetadataID(_id)
|
|
207
|
-
await updateUserOAuth(globalUserId, resp)
|
|
208
|
-
this.ctx.user = await
|
|
202
|
+
await auth.updateUserOAuth(globalUserId, resp)
|
|
203
|
+
this.ctx.user = await cache.user.getUser(globalUserId)
|
|
209
204
|
} else {
|
|
210
205
|
// In this event the user may have oAuth issues that
|
|
211
206
|
// could require re-authenticating with their provider.
|
|
@@ -285,7 +280,7 @@ class QueryRunner {
|
|
|
285
280
|
}
|
|
286
281
|
|
|
287
282
|
export function execute(input: QueryEvent, callback: WorkerCallback) {
|
|
288
|
-
doInAppContext(input.appId
|
|
283
|
+
context.doInAppContext(input.appId!, async () => {
|
|
289
284
|
const Runner = new QueryRunner(input)
|
|
290
285
|
try {
|
|
291
286
|
const response = await Runner.execute()
|
package/src/threads/utils.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { QueryVariable } from "./definitions"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const { SEPARATOR } = require("@budibase/backend-core/db")
|
|
2
|
+
import env from "../environment"
|
|
3
|
+
import db from "../db"
|
|
4
|
+
import { redis, db as dbCore } from "@budibase/backend-core"
|
|
6
5
|
|
|
7
6
|
const VARIABLE_TTL_SECONDS = 3600
|
|
8
7
|
let client: any
|
|
@@ -21,7 +20,7 @@ process.on("exit", async () => {
|
|
|
21
20
|
})
|
|
22
21
|
|
|
23
22
|
function makeVariableKey(queryId: string, variable: string) {
|
|
24
|
-
return `${queryId}${SEPARATOR}${variable}`
|
|
23
|
+
return `${queryId}${dbCore.SEPARATOR}${variable}`
|
|
25
24
|
}
|
|
26
25
|
|
|
27
26
|
export function threadSetup() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const { join } = require("path")
|
|
2
2
|
const { ObjectStoreBuckets } = require("../../constants")
|
|
3
3
|
const fs = require("fs")
|
|
4
|
-
const {
|
|
4
|
+
const { objectStore } = require("@budibase/backend-core")
|
|
5
5
|
const { resolve } = require("../centralPath")
|
|
6
6
|
const env = require("../../environment")
|
|
7
7
|
const TOP_LEVEL_PATH = join(__dirname, "..", "..", "..")
|
|
@@ -38,13 +38,13 @@ exports.backupClientLibrary = async appId => {
|
|
|
38
38
|
let tmpManifestPath
|
|
39
39
|
try {
|
|
40
40
|
// Try to load the manifest from the new file location
|
|
41
|
-
tmpManifestPath = await retrieveToTmp(
|
|
41
|
+
tmpManifestPath = await objectStore.retrieveToTmp(
|
|
42
42
|
ObjectStoreBuckets.APPS,
|
|
43
43
|
join(appId, "manifest.json")
|
|
44
44
|
)
|
|
45
45
|
} catch (error) {
|
|
46
46
|
// Fallback to loading it from the old location for old apps
|
|
47
|
-
tmpManifestPath = await retrieveToTmp(
|
|
47
|
+
tmpManifestPath = await objectStore.retrieveToTmp(
|
|
48
48
|
ObjectStoreBuckets.APPS,
|
|
49
49
|
join(
|
|
50
50
|
appId,
|
|
@@ -58,19 +58,19 @@ exports.backupClientLibrary = async appId => {
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
// Copy existing client lib to tmp
|
|
61
|
-
const tmpClientPath = await retrieveToTmp(
|
|
61
|
+
const tmpClientPath = await objectStore.retrieveToTmp(
|
|
62
62
|
ObjectStoreBuckets.APPS,
|
|
63
63
|
join(appId, "budibase-client.js")
|
|
64
64
|
)
|
|
65
65
|
|
|
66
66
|
// Upload manifest and client library as backups
|
|
67
|
-
const manifestUpload = upload({
|
|
67
|
+
const manifestUpload = objectStore.upload({
|
|
68
68
|
bucket: ObjectStoreBuckets.APPS,
|
|
69
69
|
filename: join(appId, "manifest.json.bak"),
|
|
70
70
|
path: tmpManifestPath,
|
|
71
71
|
type: "application/json",
|
|
72
72
|
})
|
|
73
|
-
const clientUpload = upload({
|
|
73
|
+
const clientUpload = objectStore.upload({
|
|
74
74
|
bucket: ObjectStoreBuckets.APPS,
|
|
75
75
|
filename: join(appId, "budibase-client.js.bak"),
|
|
76
76
|
path: tmpClientPath,
|
|
@@ -99,7 +99,7 @@ exports.updateClientLibrary = async appId => {
|
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
// Upload latest manifest and client library
|
|
102
|
-
const manifestUpload = streamUpload(
|
|
102
|
+
const manifestUpload = objectStore.streamUpload(
|
|
103
103
|
ObjectStoreBuckets.APPS,
|
|
104
104
|
join(appId, "manifest.json"),
|
|
105
105
|
fs.createReadStream(manifest),
|
|
@@ -107,7 +107,7 @@ exports.updateClientLibrary = async appId => {
|
|
|
107
107
|
ContentType: "application/json",
|
|
108
108
|
}
|
|
109
109
|
)
|
|
110
|
-
const clientUpload = streamUpload(
|
|
110
|
+
const clientUpload = objectStore.streamUpload(
|
|
111
111
|
ObjectStoreBuckets.APPS,
|
|
112
112
|
join(appId, "budibase-client.js"),
|
|
113
113
|
fs.createReadStream(client),
|
|
@@ -126,25 +126,25 @@ exports.updateClientLibrary = async appId => {
|
|
|
126
126
|
*/
|
|
127
127
|
exports.revertClientLibrary = async appId => {
|
|
128
128
|
// Copy backups manifest to tmp directory
|
|
129
|
-
const tmpManifestPath = await retrieveToTmp(
|
|
129
|
+
const tmpManifestPath = await objectStore.retrieveToTmp(
|
|
130
130
|
ObjectStoreBuckets.APPS,
|
|
131
131
|
join(appId, "manifest.json.bak")
|
|
132
132
|
)
|
|
133
133
|
|
|
134
134
|
// Copy backup client lib to tmp
|
|
135
|
-
const tmpClientPath = await retrieveToTmp(
|
|
135
|
+
const tmpClientPath = await objectStore.retrieveToTmp(
|
|
136
136
|
ObjectStoreBuckets.APPS,
|
|
137
137
|
join(appId, "budibase-client.js.bak")
|
|
138
138
|
)
|
|
139
139
|
|
|
140
140
|
// Upload backups as new versions
|
|
141
|
-
const manifestUpload = upload({
|
|
141
|
+
const manifestUpload = objectStore.upload({
|
|
142
142
|
bucket: ObjectStoreBuckets.APPS,
|
|
143
143
|
filename: join(appId, "manifest.json"),
|
|
144
144
|
path: tmpManifestPath,
|
|
145
145
|
type: "application/json",
|
|
146
146
|
})
|
|
147
|
-
const clientUpload = upload({
|
|
147
|
+
const clientUpload = objectStore.upload({
|
|
148
148
|
bucket: ObjectStoreBuckets.APPS,
|
|
149
149
|
filename: join(appId, "budibase-client.js"),
|
|
150
150
|
path: tmpClientPath,
|
|
@@ -2,7 +2,13 @@ const { budibaseTempDir } = require("../budibaseDir")
|
|
|
2
2
|
const fs = require("fs")
|
|
3
3
|
const { join } = require("path")
|
|
4
4
|
const uuid = require("uuid/v4")
|
|
5
|
+
const { context, objectStore } = require("@budibase/backend-core")
|
|
5
6
|
const { ObjectStoreBuckets } = require("../../constants")
|
|
7
|
+
const { updateClientLibrary } = require("./clientLibrary")
|
|
8
|
+
const { checkSlashesInUrl } = require("../")
|
|
9
|
+
const env = require("../../environment")
|
|
10
|
+
const tar = require("tar")
|
|
11
|
+
const fetch = require("node-fetch")
|
|
6
12
|
const {
|
|
7
13
|
upload,
|
|
8
14
|
retrieve,
|
|
@@ -11,13 +17,7 @@ const {
|
|
|
11
17
|
downloadTarball,
|
|
12
18
|
downloadTarballDirect,
|
|
13
19
|
deleteFiles,
|
|
14
|
-
} =
|
|
15
|
-
const { updateClientLibrary } = require("./clientLibrary")
|
|
16
|
-
const { checkSlashesInUrl } = require("../")
|
|
17
|
-
const env = require("../../environment")
|
|
18
|
-
const { getAppId } = require("@budibase/backend-core/context")
|
|
19
|
-
const tar = require("tar")
|
|
20
|
-
const fetch = require("node-fetch")
|
|
20
|
+
} = objectStore
|
|
21
21
|
|
|
22
22
|
const TOP_LEVEL_PATH = join(__dirname, "..", "..", "..")
|
|
23
23
|
const NODE_MODULES_PATH = join(TOP_LEVEL_PATH, "node_modules")
|
|
@@ -165,7 +165,7 @@ exports.downloadTemplate = async (type, name) => {
|
|
|
165
165
|
* Retrieves component libraries from object store (or tmp symlink if in local)
|
|
166
166
|
*/
|
|
167
167
|
exports.getComponentLibraryManifest = async library => {
|
|
168
|
-
const appId = getAppId()
|
|
168
|
+
const appId = context.getAppId()
|
|
169
169
|
const filename = "manifest.json"
|
|
170
170
|
/* istanbul ignore next */
|
|
171
171
|
// when testing in cypress and so on we need to get the package
|