@budibase/server 2.1.32-alpha.4 → 2.1.32-alpha.6
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.dfb2f13a.js → index.3ca79a83.js} +1 -1
- 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 +15 -15
- 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 +5516 -5765
- 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
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<html lang="en">
|
|
4
4
|
|
|
5
5
|
<head>
|
|
6
|
-
<title>Code coverage report for src/api/controllers/script.
|
|
6
|
+
<title>Code coverage report for src/api/controllers/script.ts</title>
|
|
7
7
|
<meta charset="utf-8" />
|
|
8
8
|
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
9
|
<link rel="stylesheet" href="../../../base.css" />
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<body>
|
|
20
20
|
<div class='wrapper'>
|
|
21
21
|
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> script.
|
|
22
|
+
<h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> script.ts</h1>
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
@@ -74,7 +74,9 @@
|
|
|
74
74
|
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
75
|
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
76
|
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
-
<a name='L12'></a><a href='#L12'>12</a
|
|
77
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
+
<a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">45x</span>
|
|
79
|
+
<span class="cline-any cline-neutral"> </span>
|
|
78
80
|
<span class="cline-any cline-neutral"> </span>
|
|
79
81
|
<span class="cline-any cline-yes">45x</span>
|
|
80
82
|
<span class="cline-any cline-no"> </span>
|
|
@@ -85,15 +87,16 @@
|
|
|
85
87
|
<span class="cline-any cline-yes">45x</span>
|
|
86
88
|
<span class="cline-any cline-no"> </span>
|
|
87
89
|
<span class="cline-any cline-neutral"> </span>
|
|
88
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">
|
|
90
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import ScriptRunner from "../../utilities/scriptRunner"
|
|
91
|
+
import { BBContext } from "@budibase/types"
|
|
89
92
|
|
|
90
|
-
|
|
93
|
+
export async function <span class="fstat-no" title="function not covered" >execute(</span>ctx: BBContext) {
|
|
91
94
|
const { script, context } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
|
|
92
95
|
const runner = <span class="cstat-no" title="statement not covered" >new ScriptRunner(script, context)</span>
|
|
93
96
|
<span class="cstat-no" title="statement not covered" > ctx.body = runner.execute()</span>
|
|
94
97
|
}
|
|
95
98
|
|
|
96
|
-
|
|
99
|
+
export async function <span class="fstat-no" title="function not covered" >save(</span>ctx: BBContext) {
|
|
97
100
|
<span class="cstat-no" title="statement not covered" > ctx.throw(501, "Not currently implemented")</span>
|
|
98
101
|
}
|
|
99
102
|
</pre></td></tr></table></pre>
|
|
@@ -103,7 +106,7 @@ exports.save = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
|
103
106
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
104
107
|
Code coverage generated by
|
|
105
108
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
106
|
-
at
|
|
109
|
+
at Wed Nov 23 2022 13:28:07 GMT+0000 (Coordinated Universal Time)
|
|
107
110
|
</div>
|
|
108
111
|
<script src="../../../prettify.js"></script>
|
|
109
112
|
<script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">64.
|
|
26
|
+
<span class="strong">64.21% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>61/95</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">62
|
|
47
|
+
<span class="strong">61.62% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>53/86</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -80,17 +80,17 @@
|
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
82
|
<td class="file medium" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
|
83
|
-
<td data-value="64.
|
|
83
|
+
<td data-value="64.21" class="pic medium">
|
|
84
84
|
<div class="chart"><div class="cover-fill" style="width: 64%"></div><div class="cover-empty" style="width: 36%"></div></div>
|
|
85
85
|
</td>
|
|
86
|
-
<td data-value="64.
|
|
87
|
-
<td data-value="
|
|
86
|
+
<td data-value="64.21" class="pct medium">64.21%</td>
|
|
87
|
+
<td data-value="95" class="abs medium">61/95</td>
|
|
88
88
|
<td data-value="66" class="pct medium">66%</td>
|
|
89
89
|
<td data-value="50" class="abs medium">33/50</td>
|
|
90
90
|
<td data-value="36.36" class="pct low">36.36%</td>
|
|
91
91
|
<td data-value="11" class="abs low">4/11</td>
|
|
92
|
-
<td data-value="62
|
|
93
|
-
<td data-value="
|
|
92
|
+
<td data-value="61.62" class="pct medium">61.62%</td>
|
|
93
|
+
<td data-value="86" class="abs medium">53/86</td>
|
|
94
94
|
</tr>
|
|
95
95
|
|
|
96
96
|
</tbody>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at
|
|
104
|
+
at Wed Nov 23 2022 13:28:07 GMT+0000 (Coordinated Universal Time)
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../../../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">64.
|
|
26
|
+
<span class="strong">64.21% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>61/95</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">62
|
|
47
|
+
<span class="strong">61.62% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>53/86</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -264,11 +264,7 @@
|
|
|
264
264
|
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
265
|
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
266
|
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
-
<a name='L206'></a><a href='#L206'>206</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
|
|
267
|
+
<a name='L202'></a><a href='#L202'>202</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
|
|
272
268
|
<span class="cline-any cline-neutral"> </span>
|
|
273
269
|
<span class="cline-any cline-yes">44x</span>
|
|
274
270
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -290,10 +286,6 @@
|
|
|
290
286
|
<span class="cline-any cline-yes">44x</span>
|
|
291
287
|
<span class="cline-any cline-yes">44x</span>
|
|
292
288
|
<span class="cline-any cline-yes">44x</span>
|
|
293
|
-
<span class="cline-any cline-yes">44x</span>
|
|
294
|
-
<span class="cline-any cline-neutral"> </span>
|
|
295
|
-
<span class="cline-any cline-neutral"> </span>
|
|
296
|
-
<span class="cline-any cline-yes">44x</span>
|
|
297
289
|
<span class="cline-any cline-neutral"> </span>
|
|
298
290
|
<span class="cline-any cline-neutral"> </span>
|
|
299
291
|
<span class="cline-any cline-no"> </span>
|
|
@@ -492,13 +484,9 @@ const { clientLibraryPath } = require("../../../utilities")
|
|
|
492
484
|
const { upload, deleteFiles } = require("../../../utilities/fileSystem")
|
|
493
485
|
const { attachmentsRelativeURL } = require("../../../utilities")
|
|
494
486
|
const { DocumentType } = require("../../../db/utils")
|
|
495
|
-
const {
|
|
496
|
-
const { setCookie, clearCookie } = require("@budibase/backend-core/utils")
|
|
487
|
+
const { context, objectStore, utils } = require("@budibase/backend-core")
|
|
497
488
|
const AWS = require("aws-sdk")
|
|
498
489
|
const fs = require("fs")
|
|
499
|
-
const {
|
|
500
|
-
downloadTarballDirect,
|
|
501
|
-
} = require("../../../utilities/fileSystem/utilities")
|
|
502
490
|
|
|
503
491
|
async function <span class="fstat-no" title="function not covered" >prepareUpload(</span>{ s3Key, bucket, metadata, file }: any) {
|
|
504
492
|
const response = <span class="cstat-no" title="statement not covered" >await upload({</span>
|
|
@@ -523,7 +511,7 @@ export const toggleBetaUiFeature = <span class="fstat-no" title="function not co
|
|
|
523
511
|
const cookieName = <span class="cstat-no" title="statement not covered" >`beta:${ctx.params.feature}`</span>
|
|
524
512
|
|
|
525
513
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.cookies.get(cookieName)) {</span>
|
|
526
|
-
<span class="cstat-no" title="statement not covered" > clearCookie(ctx, cookieName)</span>
|
|
514
|
+
<span class="cstat-no" title="statement not covered" > utils.clearCookie(ctx, cookieName)</span>
|
|
527
515
|
<span class="cstat-no" title="statement not covered" > ctx.body = {</span>
|
|
528
516
|
message: `${ctx.params.feature} disabled`,
|
|
529
517
|
}
|
|
@@ -536,11 +524,11 @@ export const toggleBetaUiFeature = <span class="fstat-no" title="function not co
|
|
|
536
524
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!fs.existsSync(builderPath)) {</span>
|
|
537
525
|
<span class="cstat-no" title="statement not covered" > fs.mkdirSync(builderPath)</span>
|
|
538
526
|
}
|
|
539
|
-
<span class="cstat-no" title="statement not covered" > await downloadTarballDirect(</span>
|
|
527
|
+
<span class="cstat-no" title="statement not covered" > await objectStore.downloadTarballDirect(</span>
|
|
540
528
|
"https://cdn.budi.live/beta:design_ui/new_ui.tar.gz",
|
|
541
529
|
builderPath
|
|
542
530
|
)
|
|
543
|
-
<span class="cstat-no" title="statement not covered" > setCookie(ctx, {}, cookieName)</span>
|
|
531
|
+
<span class="cstat-no" title="statement not covered" > utils.setCookie(ctx, {}, cookieName)</span>
|
|
544
532
|
|
|
545
533
|
<span class="cstat-no" title="statement not covered" > ctx.body = {</span>
|
|
546
534
|
message: `${ctx.params.feature} enabled`,
|
|
@@ -578,9 +566,9 @@ export const deleteObjects = <span class="fstat-no" title="function not covered"
|
|
|
578
566
|
}
|
|
579
567
|
|
|
580
568
|
export const serveApp = async function (ctx: any) {
|
|
581
|
-
const db = getAppDB({ skip_setup: true })
|
|
569
|
+
const db = context.getAppDB({ skip_setup: true })
|
|
582
570
|
const appInfo = await db.get(DocumentType.APP_METADATA)
|
|
583
|
-
let appId = getAppId()
|
|
571
|
+
let appId = context.getAppId()
|
|
584
572
|
|
|
585
573
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!env.isJest()) {
|
|
586
574
|
const App = <span class="cstat-no" title="statement not covered" >require("./templates/BudibaseApp.svelte").default</span>
|
|
@@ -609,11 +597,11 @@ export const serveApp = async function (ctx: any) {
|
|
|
609
597
|
}
|
|
610
598
|
|
|
611
599
|
export const serveBuilderPreview = async function (ctx: any) {
|
|
612
|
-
const db = getAppDB({ skip_setup: true })
|
|
600
|
+
const db = context.getAppDB({ skip_setup: true })
|
|
613
601
|
const appInfo = await db.get(DocumentType.APP_METADATA)
|
|
614
602
|
|
|
615
603
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!env.isJest()) {
|
|
616
|
-
let appId = <span class="cstat-no" title="statement not covered" >getAppId()</span>
|
|
604
|
+
let appId = <span class="cstat-no" title="statement not covered" >context.getAppId()</span>
|
|
617
605
|
const previewHbs = <span class="cstat-no" title="statement not covered" >loadHandlebarsFile(`${__dirname}/templates/preview.hbs`)</span>
|
|
618
606
|
<span class="cstat-no" title="statement not covered" > ctx.body = await processString(previewHbs, {</span>
|
|
619
607
|
clientLibPath: clientLibraryPath(appId, appInfo.version, ctx),
|
|
@@ -631,7 +619,7 @@ export const serveClientLibrary = <span class="fstat-no" title="function not cov
|
|
|
631
619
|
}
|
|
632
620
|
|
|
633
621
|
export const getSignedUploadURL = async function (ctx: any) {
|
|
634
|
-
const database = getAppDB()
|
|
622
|
+
const database = context.getAppDB()
|
|
635
623
|
|
|
636
624
|
// Ensure datasource is valid
|
|
637
625
|
let datasource
|
|
@@ -685,7 +673,7 @@ export const getSignedUploadURL = async function (ctx: any) {
|
|
|
685
673
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
686
674
|
Code coverage generated by
|
|
687
675
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
688
|
-
at
|
|
676
|
+
at Wed Nov 23 2022 13:28:07 GMT+0000 (Coordinated Universal Time)
|
|
689
677
|
</div>
|
|
690
678
|
<script src="../../../../prettify.js"></script>
|
|
691
679
|
<script>
|
package/coverage/lcov-report/src/api/controllers/table/{bulkFormula.js.html → bulkFormula.ts.html}
RENAMED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<html lang="en">
|
|
4
4
|
|
|
5
5
|
<head>
|
|
6
|
-
<title>Code coverage report for src/api/controllers/table/bulkFormula.
|
|
6
|
+
<title>Code coverage report for src/api/controllers/table/bulkFormula.ts</title>
|
|
7
7
|
<meta charset="utf-8" />
|
|
8
8
|
<link rel="stylesheet" href="../../../../prettify.css" />
|
|
9
9
|
<link rel="stylesheet" href="../../../../base.css" />
|
|
@@ -19,20 +19,20 @@
|
|
|
19
19
|
<body>
|
|
20
20
|
<div class='wrapper'>
|
|
21
21
|
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/api/controllers/table</a> bulkFormula.
|
|
22
|
+
<h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/api/controllers/table</a> bulkFormula.ts</h1>
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">69.
|
|
26
|
+
<span class="strong">69.51% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>57/82</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">36.73% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>18/49</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">69.
|
|
47
|
+
<span class="strong">69.62% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>55/79</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -237,13 +237,28 @@
|
|
|
237
237
|
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
238
|
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
239
|
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
-
<a name='L175'></a><a href='#L175'>175</a
|
|
240
|
+
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
+
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
+
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
+
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
+
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
+
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
+
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
+
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
+
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
+
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
+
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
+
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
+
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
+
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
+
<a name='L189'></a><a href='#L189'>189</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">45x</span>
|
|
241
255
|
<span class="cline-any cline-yes">45x</span>
|
|
242
256
|
<span class="cline-any cline-yes">45x</span>
|
|
243
257
|
<span class="cline-any cline-yes">45x</span>
|
|
244
258
|
<span class="cline-any cline-yes">45x</span>
|
|
245
259
|
<span class="cline-any cline-yes">45x</span>
|
|
246
260
|
<span class="cline-any cline-yes">45x</span>
|
|
261
|
+
<span class="cline-any cline-neutral"> </span>
|
|
247
262
|
<span class="cline-any cline-yes">45x</span>
|
|
248
263
|
<span class="cline-any cline-neutral"> </span>
|
|
249
264
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -279,6 +294,9 @@
|
|
|
279
294
|
<span class="cline-any cline-neutral"> </span>
|
|
280
295
|
<span class="cline-any cline-neutral"> </span>
|
|
281
296
|
<span class="cline-any cline-neutral"> </span>
|
|
297
|
+
<span class="cline-any cline-neutral"> </span>
|
|
298
|
+
<span class="cline-any cline-neutral"> </span>
|
|
299
|
+
<span class="cline-any cline-neutral"> </span>
|
|
282
300
|
<span class="cline-any cline-yes">133x</span>
|
|
283
301
|
<span class="cline-any cline-yes">308x</span>
|
|
284
302
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -294,6 +312,9 @@
|
|
|
294
312
|
<span class="cline-any cline-yes">2x</span>
|
|
295
313
|
<span class="cline-any cline-neutral"> </span>
|
|
296
314
|
<span class="cline-any cline-yes">287x</span>
|
|
315
|
+
<span class="cline-any cline-no"> </span>
|
|
316
|
+
<span class="cline-any cline-neutral"> </span>
|
|
317
|
+
<span class="cline-any cline-yes">287x</span>
|
|
297
318
|
<span class="cline-any cline-yes">287x</span>
|
|
298
319
|
<span class="cline-any cline-no"> </span>
|
|
299
320
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -338,6 +359,7 @@
|
|
|
338
359
|
<span class="cline-any cline-neutral"> </span>
|
|
339
360
|
<span class="cline-any cline-neutral"> </span>
|
|
340
361
|
<span class="cline-any cline-yes">133x</span>
|
|
362
|
+
<span class="cline-any cline-yes">133x</span>
|
|
341
363
|
<span class="cline-any cline-neutral"> </span>
|
|
342
364
|
<span class="cline-any cline-yes">133x</span>
|
|
343
365
|
<span class="cline-any cline-yes">308x</span>
|
|
@@ -391,6 +413,9 @@
|
|
|
391
413
|
<span class="cline-any cline-neutral"> </span>
|
|
392
414
|
<span class="cline-any cline-neutral"> </span>
|
|
393
415
|
<span class="cline-any cline-neutral"> </span>
|
|
416
|
+
<span class="cline-any cline-neutral"> </span>
|
|
417
|
+
<span class="cline-any cline-neutral"> </span>
|
|
418
|
+
<span class="cline-any cline-neutral"> </span>
|
|
394
419
|
<span class="cline-any cline-yes">130x</span>
|
|
395
420
|
<span class="cline-any cline-neutral"> </span>
|
|
396
421
|
<span class="cline-any cline-yes">318x</span>
|
|
@@ -405,22 +430,26 @@
|
|
|
405
430
|
<span class="cline-any cline-neutral"> </span>
|
|
406
431
|
<span class="cline-any cline-neutral"> </span>
|
|
407
432
|
<span class="cline-any cline-yes">45x</span>
|
|
433
|
+
<span class="cline-any cline-neutral"> </span>
|
|
434
|
+
<span class="cline-any cline-neutral"> </span>
|
|
435
|
+
<span class="cline-any cline-neutral"> </span>
|
|
408
436
|
<span class="cline-any cline-yes">133x</span>
|
|
409
437
|
<span class="cline-any cline-yes">133x</span>
|
|
410
438
|
<span class="cline-any cline-yes">133x</span>
|
|
411
439
|
<span class="cline-any cline-yes">130x</span>
|
|
412
440
|
<span class="cline-any cline-neutral"> </span>
|
|
413
441
|
<span class="cline-any cline-neutral"> </span>
|
|
414
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
442
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { FieldTypes, FormulaTypes } from "../../../constants"
|
|
443
|
+
import { clearColumns } from "./utils"
|
|
444
|
+
import { doesContainStrings } from "@budibase/string-templates"
|
|
445
|
+
import { cloneDeep } from "lodash/fp"
|
|
446
|
+
import { isEqual, uniq } from "lodash"
|
|
447
|
+
import { updateAllFormulasInTable } from "../row/staticFormula"
|
|
448
|
+
import { context } from "@budibase/backend-core"
|
|
449
|
+
import { FieldSchema, Table } from "@budibase/types"
|
|
450
|
+
import sdk from "../../../sdk"
|
|
422
451
|
|
|
423
|
-
function isStaticFormula(column) {
|
|
452
|
+
function isStaticFormula(column: FieldSchema) {
|
|
424
453
|
return (
|
|
425
454
|
column.type === FieldTypes.FORMULA &&
|
|
426
455
|
<span class="branch-1 cbranch-no" title="branch not covered" > column.formulaType === FormulaTypes.STATIC</span>
|
|
@@ -431,15 +460,15 @@ function isStaticFormula(column) {
|
|
|
431
460
|
* This retrieves the formula columns from a table schema that use a specified column name
|
|
432
461
|
* in the formula.
|
|
433
462
|
*/
|
|
434
|
-
function getFormulaThatUseColumn(table, columnNames) {
|
|
435
|
-
let formula = []
|
|
463
|
+
function getFormulaThatUseColumn(table: Table, columnNames: string[] | string) {
|
|
464
|
+
let formula: string[] = []
|
|
436
465
|
columnNames = Array.isArray(columnNames) ? <span class="branch-0 cbranch-no" title="branch not covered" >columnNames </span>: [columnNames]
|
|
437
466
|
for (let column of Object.values(table.schema)) {
|
|
438
467
|
// not a static formula, or doesn't contain a relationship
|
|
439
|
-
|
|
468
|
+
if (!isStaticFormula(column)) {
|
|
440
469
|
continue
|
|
441
470
|
}
|
|
442
|
-
<span class="cstat-no" title="statement not covered" > if (!doesContainStrings(column?.formula ?? "", columnNames)) {</span>
|
|
471
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!doesContainStrings(column?.formula ?? "", columnNames)) {</span>
|
|
443
472
|
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
444
473
|
}
|
|
445
474
|
<span class="cstat-no" title="statement not covered" > formula.push(column.name)</span>
|
|
@@ -451,7 +480,10 @@ function getFormulaThatUseColumn(table, columnNames) {
|
|
|
451
480
|
* This functions checks for when a related table, column or related column is deleted, if any
|
|
452
481
|
* tables need to have the formula column removed.
|
|
453
482
|
*/
|
|
454
|
-
async function checkIfFormulaNeedsCleared(
|
|
483
|
+
async function checkIfFormulaNeedsCleared(
|
|
484
|
+
table: Table,
|
|
485
|
+
{ oldTable, deletion }: { oldTable?: Table; deletion?: boolean }
|
|
486
|
+
) {
|
|
455
487
|
// start by retrieving all tables, remove the current table from the list
|
|
456
488
|
const tables = (await sdk.tables.getAllInternalTables()).filter(
|
|
457
489
|
tbl => tbl._id !== table._id
|
|
@@ -462,38 +494,41 @@ async function checkIfFormulaNeedsCleared(table, { oldTable, deletion }) {
|
|
|
462
494
|
)
|
|
463
495
|
// remove any formula columns that used related columns
|
|
464
496
|
for (let removed of removedColumns) {
|
|
465
|
-
let tableToUse = table
|
|
497
|
+
let tableToUse: Table | undefined = table
|
|
466
498
|
// if relationship, get the related table
|
|
467
499
|
if (removed.type === FieldTypes.LINK) {
|
|
468
500
|
tableToUse = tables.find(table => table._id === removed.tableId)
|
|
469
501
|
}
|
|
502
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!tableToUse) {
|
|
503
|
+
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
504
|
+
}
|
|
470
505
|
const columnsToDelete = getFormulaThatUseColumn(tableToUse, removed.name)
|
|
471
506
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (columnsToDelete.length > 0) {
|
|
472
507
|
<span class="cstat-no" title="statement not covered" > await clearColumns(table, columnsToDelete)</span>
|
|
473
508
|
}
|
|
474
509
|
// need a special case, where a column has been removed from this table, but was used
|
|
475
510
|
// in a different, related tables formula
|
|
476
|
-
|
|
511
|
+
if (!table.relatedFormula) {
|
|
477
512
|
continue
|
|
478
513
|
}
|
|
479
514
|
<span class="cstat-no" title="statement not covered" > for (let relatedTableId of table.relatedFormula) {</span>
|
|
480
515
|
const relatedColumns = <span class="cstat-no" title="statement not covered" >Object.values(table.schema).filter(</span>
|
|
481
|
-
<span class="fstat-no" title="function not covered" >
|
|
516
|
+
<span class="fstat-no" title="function not covered" > column </span>=> <span class="cstat-no" title="statement not covered" >column.tableId === relatedTableId</span>
|
|
482
517
|
)
|
|
483
|
-
const relatedTable = <span class="cstat-no" title="statement not covered" >tables.find(<span class="fstat-no" title="function not covered" >
|
|
518
|
+
const relatedTable = <span class="cstat-no" title="statement not covered" >tables.find(<span class="fstat-no" title="function not covered" >table </span>=> <span class="cstat-no" title="statement not covered" >table._id === relatedTableId)</span></span>
|
|
484
519
|
// look to see if the column was used in a relationship formula,
|
|
485
520
|
// relationships won't be used for this
|
|
486
|
-
<span class="cstat-no" title="statement not covered" > if (relatedTable && relatedColumns && removed.type !== FieldTypes.LINK) {</span>
|
|
487
|
-
let relatedFormulaToRemove = <span class="cstat-no" title="statement not covered" >[]</span>
|
|
521
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (relatedTable && relatedColumns && removed.type !== FieldTypes.LINK) {</span>
|
|
522
|
+
let relatedFormulaToRemove: string[] = <span class="cstat-no" title="statement not covered" >[]</span>
|
|
488
523
|
<span class="cstat-no" title="statement not covered" > for (let column of relatedColumns) {</span>
|
|
489
524
|
<span class="cstat-no" title="statement not covered" > relatedFormulaToRemove = relatedFormulaToRemove.concat(</span>
|
|
490
525
|
getFormulaThatUseColumn(relatedTable, [
|
|
491
|
-
column.fieldName
|
|
526
|
+
column.fieldName!,
|
|
492
527
|
removed.name,
|
|
493
528
|
])
|
|
494
529
|
)
|
|
495
530
|
}
|
|
496
|
-
<span class="cstat-no" title="statement not covered" > if (relatedFormulaToRemove.length > 0) {</span>
|
|
531
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (relatedFormulaToRemove.length > 0) {</span>
|
|
497
532
|
<span class="cstat-no" title="statement not covered" > await clearColumns(relatedTable, uniq(relatedFormulaToRemove))</span>
|
|
498
533
|
}
|
|
499
534
|
}
|
|
@@ -508,13 +543,14 @@ async function checkIfFormulaNeedsCleared(table, { oldTable, deletion }) {
|
|
|
508
543
|
* specifically only for static formula.
|
|
509
544
|
*/
|
|
510
545
|
async function updateRelatedFormulaLinksOnTables(
|
|
511
|
-
table,
|
|
512
|
-
{ deletion } = <span class="branch-0 cbranch-no" title="branch not covered" >{
|
|
546
|
+
table: Table,
|
|
547
|
+
{ deletion }: { deletion?: boolean } = <span class="branch-0 cbranch-no" title="branch not covered" >{}</span>
|
|
513
548
|
) {
|
|
514
|
-
const
|
|
549
|
+
const tableId: string = table._id!
|
|
550
|
+
const db = context.getAppDB()
|
|
515
551
|
// start by retrieving all tables, remove the current table from the list
|
|
516
552
|
const tables = (await sdk.tables.getAllInternalTables()).filter(
|
|
517
|
-
tbl => tbl._id !==
|
|
553
|
+
tbl => tbl._id !== tableId
|
|
518
554
|
)
|
|
519
555
|
// clone the tables, so we can compare at end
|
|
520
556
|
const initialTables = cloneDeep(tables)
|
|
@@ -524,11 +560,11 @@ async function updateRelatedFormulaLinksOnTables(
|
|
|
524
560
|
)
|
|
525
561
|
// we start by removing the formula field from all tables
|
|
526
562
|
for (let otherTable of tables) {
|
|
527
|
-
|
|
563
|
+
if (!otherTable.relatedFormula) {
|
|
528
564
|
continue
|
|
529
565
|
}
|
|
530
|
-
const index = <span class="cstat-no" title="statement not covered" >otherTable.relatedFormula.indexOf(
|
|
531
|
-
<span class="cstat-no" title="statement not covered" > if (index !== -1) {</span>
|
|
566
|
+
const index = <span class="cstat-no" title="statement not covered" >otherTable.relatedFormula.indexOf(tableId)</span>
|
|
567
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (index !== -1) {</span>
|
|
532
568
|
<span class="cstat-no" title="statement not covered" > otherTable.relatedFormula.splice(index, 1)</span>
|
|
533
569
|
}
|
|
534
570
|
}
|
|
@@ -536,21 +572,21 @@ async function updateRelatedFormulaLinksOnTables(
|
|
|
536
572
|
if (!deletion) {
|
|
537
573
|
for (let relatedCol of relatedColumns) {
|
|
538
574
|
let columns = getFormulaThatUseColumn(table, relatedCol.name)
|
|
539
|
-
|
|
575
|
+
if (!columns || columns.length === 0) {
|
|
540
576
|
continue
|
|
541
577
|
}
|
|
542
578
|
const relatedTable = <span class="cstat-no" title="statement not covered" >tables.find(</span>
|
|
543
|
-
<span class="fstat-no" title="function not covered" >
|
|
579
|
+
<span class="fstat-no" title="function not covered" > related </span>=> <span class="cstat-no" title="statement not covered" >related._id === relatedCol.tableId</span>
|
|
544
580
|
)
|
|
545
581
|
// check if the table is already in the list of related formula, if it isn't, then add it
|
|
546
|
-
<span class="cstat-no" title="statement not covered" > if (</span>
|
|
582
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
|
|
547
583
|
relatedTable &&
|
|
548
584
|
(!relatedTable.relatedFormula ||
|
|
549
|
-
!relatedTable.relatedFormula.includes(
|
|
585
|
+
!relatedTable.relatedFormula.includes(tableId))
|
|
550
586
|
) {
|
|
551
587
|
<span class="cstat-no" title="statement not covered" > relatedTable.relatedFormula = relatedTable.relatedFormula</span>
|
|
552
|
-
? [...relatedTable.relatedFormula,
|
|
553
|
-
: [
|
|
588
|
+
? [...relatedTable.relatedFormula, tableId]
|
|
589
|
+
: [tableId]
|
|
554
590
|
}
|
|
555
591
|
}
|
|
556
592
|
}
|
|
@@ -563,7 +599,10 @@ async function updateRelatedFormulaLinksOnTables(
|
|
|
563
599
|
}
|
|
564
600
|
}
|
|
565
601
|
|
|
566
|
-
async function checkIfFormulaUpdated(
|
|
602
|
+
async function checkIfFormulaUpdated(
|
|
603
|
+
table: Table,
|
|
604
|
+
{ oldTable }: { oldTable?: Table }
|
|
605
|
+
) {
|
|
567
606
|
// look to see if any formula values have changed
|
|
568
607
|
const shouldUpdate = Object.values(table.schema).find(
|
|
569
608
|
column =>
|
|
@@ -578,7 +617,10 @@ async function checkIfFormulaUpdated(table, { oldTable }) {
|
|
|
578
617
|
}
|
|
579
618
|
}
|
|
580
619
|
|
|
581
|
-
|
|
620
|
+
export async function runStaticFormulaChecks(
|
|
621
|
+
table: Table,
|
|
622
|
+
{ oldTable, deletion }: { oldTable?: Table; deletion?: boolean }
|
|
623
|
+
) {
|
|
582
624
|
await updateRelatedFormulaLinksOnTables(table, { deletion })
|
|
583
625
|
await checkIfFormulaNeedsCleared(table, { oldTable, deletion })
|
|
584
626
|
if (!deletion) {
|
|
@@ -592,7 +634,7 @@ exports.runStaticFormulaChecks = async (table, { oldTable, deletion }) => {
|
|
|
592
634
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
593
635
|
Code coverage generated by
|
|
594
636
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
595
|
-
at
|
|
637
|
+
at Wed Nov 23 2022 13:28:07 GMT+0000 (Coordinated Universal Time)
|
|
596
638
|
</div>
|
|
597
639
|
<script src="../../../../prettify.js"></script>
|
|
598
640
|
<script>
|