@budibase/server 2.1.39 → 2.1.40-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__mocks__/aws-sdk.ts +14 -0
- package/__mocks__/node-fetch.ts +5 -1
- package/builder/assets/{index.534f6c29.css → index.144dddb2.css} +2 -2
- package/builder/assets/{index.a89ac148.js → index.93f18258.js} +308 -308
- package/builder/index.html +2 -2
- package/coverage/clover.xml +10747 -3757
- package/coverage/coverage-final.json +266 -118
- package/coverage/lcov-report/index.html +679 -184
- package/coverage/lcov-report/src/api/controllers/analytics.ts.html +190 -0
- package/coverage/lcov-report/{api/controllers/apikeys.js.html → src/api/controllers/apikeys.ts.html} +26 -26
- package/coverage/lcov-report/src/api/controllers/application.ts.html +2038 -0
- package/coverage/lcov-report/src/api/controllers/auth.ts.html +301 -0
- package/coverage/lcov-report/{api/controllers/automation.js.html → src/api/controllers/automation.ts.html} +75 -75
- package/coverage/lcov-report/src/api/controllers/backup.ts.html +148 -0
- package/coverage/lcov-report/{api/controllers/cloud.js.html → src/api/controllers/cloud.ts.html} +47 -47
- package/coverage/lcov-report/src/api/controllers/component.ts.html +259 -0
- package/coverage/lcov-report/{api/controllers/datasource.js.html → src/api/controllers/datasource.ts.html} +246 -87
- package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +259 -0
- package/coverage/lcov-report/{utilities/rowProcessor → src/api/controllers/deploy}/index.html +40 -40
- package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +730 -0
- package/coverage/lcov-report/{api/controllers/dev.js.html → src/api/controllers/dev.ts.html} +53 -71
- package/coverage/lcov-report/src/api/controllers/index.html +431 -0
- package/coverage/lcov-report/{api/controllers/integration.js.html → src/api/controllers/integration.ts.html} +19 -22
- package/coverage/lcov-report/{api/controllers/layout.js.html → src/api/controllers/layout.ts.html} +26 -26
- package/coverage/lcov-report/{api/controllers/metadata.js.html → src/api/controllers/metadata.ts.html} +26 -23
- package/coverage/lcov-report/{api/controllers/migrations.js.html → src/api/controllers/migrations.ts.html} +18 -15
- package/coverage/lcov-report/{api/controllers/permission.js.html → src/api/controllers/permission.ts.html} +80 -71
- package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +130 -0
- package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +310 -0
- package/coverage/lcov-report/src/api/controllers/plugin/index.html +206 -0
- package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +484 -0
- package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +253 -0
- package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +97 -0
- package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +121 -0
- package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +136 -0
- package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +334 -0
- package/coverage/lcov-report/src/api/controllers/public/index.html +191 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +181 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +191 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +124 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +202 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +178 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +163 -0
- package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +181 -0
- package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +145 -0
- package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +328 -0
- package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +253 -0
- package/coverage/lcov-report/src/api/controllers/public/users.ts.html +268 -0
- package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +220 -0
- package/coverage/lcov-report/src/api/controllers/query/import/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +373 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +131 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +379 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +157 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +403 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +146 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +586 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +712 -0
- package/coverage/lcov-report/src/api/controllers/query/index.html +131 -0
- package/coverage/lcov-report/src/api/controllers/query/index.ts.html +976 -0
- package/coverage/lcov-report/{api/controllers/query/validation.js.html → src/api/controllers/query/validation.ts.html} +17 -17
- package/coverage/lcov-report/{api/controllers/role.js.html → src/api/controllers/role.ts.html} +44 -56
- package/coverage/lcov-report/{api/controllers/routing.js.html → src/api/controllers/routing.ts.html} +65 -56
- package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +2260 -0
- package/coverage/lcov-report/{api/controllers/row/external.js.html → src/api/controllers/row/external.ts.html} +145 -94
- package/coverage/lcov-report/{api → src/api}/controllers/row/index.html +82 -52
- package/coverage/lcov-report/src/api/controllers/row/index.ts.html +541 -0
- package/coverage/lcov-report/{api/controllers/row/internal.js.html → src/api/controllers/row/internal.ts.html} +137 -95
- package/coverage/lcov-report/{api/controllers/row/internalSearch.js.html → src/api/controllers/row/internalSearch.ts.html} +182 -110
- package/coverage/lcov-report/{api/controllers/row/staticFormula.js.html → src/api/controllers/row/staticFormula.ts.html} +66 -51
- package/coverage/lcov-report/{api/controllers/row/utils.js.html → src/api/controllers/row/utils.ts.html} +77 -47
- package/coverage/lcov-report/src/api/controllers/screen.ts.html +463 -0
- package/coverage/lcov-report/{api/controllers/script.js.html → src/api/controllers/script.ts.html} +17 -14
- package/coverage/lcov-report/src/api/controllers/static/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/static/index.ts.html +694 -0
- package/coverage/lcov-report/{api/controllers/table/bulkFormula.js.html → src/api/controllers/table/bulkFormula.ts.html} +96 -54
- package/coverage/lcov-report/{api/controllers/table/external.js.html → src/api/controllers/table/external.ts.html} +196 -103
- package/coverage/lcov-report/src/api/controllers/table/index.html +176 -0
- package/coverage/lcov-report/{api/controllers/table/index.js.html → src/api/controllers/table/index.ts.html} +46 -37
- package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +661 -0
- package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +1255 -0
- package/coverage/lcov-report/{api/controllers/templates.js.html → src/api/controllers/templates.ts.html} +34 -25
- package/coverage/lcov-report/{api/controllers/user.js.html → src/api/controllers/user.ts.html} +79 -85
- package/coverage/lcov-report/{api/controllers/view/exporters.js.html → src/api/controllers/view/exporters.ts.html} +20 -14
- package/coverage/lcov-report/{api → src/api}/controllers/view/index.html +36 -36
- package/coverage/lcov-report/{api/controllers/view/index.js.html → src/api/controllers/view/index.ts.html} +75 -48
- package/coverage/lcov-report/{api/controllers/view/utils.js.html → src/api/controllers/view/utils.ts.html} +61 -43
- package/coverage/lcov-report/{api/controllers/view/viewBuilder.js.html → src/api/controllers/view/viewBuilder.ts.html} +74 -32
- package/coverage/lcov-report/src/api/controllers/webhook.ts.html +379 -0
- package/coverage/lcov-report/{api → src/api}/index.html +23 -23
- package/coverage/lcov-report/{api/index.js.html → src/api/index.ts.html} +35 -56
- package/coverage/lcov-report/{api/routes/analytics.js.html → src/api/routes/analytics.ts.html} +14 -14
- package/coverage/lcov-report/{api/routes/integration.js.html → src/api/routes/apikeys.ts.html} +18 -18
- package/coverage/lcov-report/{constants/screens.js.html → src/api/routes/application.ts.html} +63 -63
- package/coverage/lcov-report/src/api/routes/auth.ts.html +109 -0
- package/coverage/lcov-report/{api/routes/automation.js.html → src/api/routes/automation.ts.html} +48 -42
- package/coverage/lcov-report/{api/routes/cloud.js.html → src/api/routes/backup.ts.html} +21 -21
- package/coverage/lcov-report/{api/routes/deploy.js.html → src/api/routes/cloud.ts.html} +25 -22
- package/coverage/lcov-report/{api/routes/component.js.html → src/api/routes/component.ts.html} +17 -17
- package/coverage/lcov-report/src/api/routes/datasource.ts.html +265 -0
- package/coverage/lcov-report/src/api/routes/deploy.ts.html +148 -0
- package/coverage/lcov-report/src/api/routes/dev.ts.html +199 -0
- package/coverage/lcov-report/{api → src/api}/routes/index.html +167 -47
- package/coverage/lcov-report/src/api/routes/index.ts.html +289 -0
- package/coverage/lcov-report/src/api/routes/integration.ts.html +133 -0
- package/coverage/lcov-report/{api/routes/layout.js.html → src/api/routes/layout.ts.html} +18 -18
- package/coverage/lcov-report/{api/routes/metadata.js.html → src/api/routes/metadata.ts.html} +24 -24
- package/coverage/lcov-report/src/api/routes/migrations.ts.html +127 -0
- package/coverage/lcov-report/{api/routes/permission.js.html → src/api/routes/permission.ts.html} +48 -24
- package/coverage/lcov-report/src/api/routes/plugin.ts.html +151 -0
- package/coverage/lcov-report/src/api/routes/public/applications.ts.html +541 -0
- package/coverage/lcov-report/src/api/routes/public/index.html +191 -0
- package/coverage/lcov-report/src/api/routes/public/index.ts.html +493 -0
- package/coverage/lcov-report/src/api/routes/public/middleware/index.html +116 -0
- package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +328 -0
- package/coverage/lcov-report/src/api/routes/public/queries.ts.html +313 -0
- package/coverage/lcov-report/src/api/routes/public/rows.ts.html +598 -0
- package/coverage/lcov-report/src/api/routes/public/tables.ts.html +586 -0
- package/coverage/lcov-report/src/api/routes/public/users.ts.html +511 -0
- package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +238 -0
- package/coverage/lcov-report/src/api/routes/public/utils/index.html +116 -0
- package/coverage/lcov-report/{api/routes/query.js.html → src/api/routes/query.ts.html} +33 -42
- package/coverage/lcov-report/{utilities/routing/index.js.html → src/api/routes/role.ts.html} +39 -42
- package/coverage/lcov-report/{api/routes/routing.js.html → src/api/routes/routing.ts.html} +17 -17
- package/coverage/lcov-report/src/api/routes/row.ts.html +883 -0
- package/coverage/lcov-report/{api/routes/screen.js.html → src/api/routes/screen.ts.html} +36 -21
- package/coverage/lcov-report/{api/routes/script.js.html → src/api/routes/script.ts.html} +17 -17
- package/coverage/lcov-report/src/api/routes/static.ts.html +280 -0
- package/coverage/lcov-report/{api/routes/table.js.html → src/api/routes/table.ts.html} +24 -33
- package/coverage/lcov-report/{api/routes/templates.js.html → src/api/routes/templates.ts.html} +18 -18
- package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +550 -0
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +131 -0
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +367 -0
- package/coverage/lcov-report/{api/routes/user.js.html → src/api/routes/user.ts.html} +29 -35
- package/coverage/lcov-report/{api → src/api}/routes/utils/index.html +15 -15
- package/coverage/lcov-report/{api/routes/utils/validators.js.html → src/api/routes/utils/validators.ts.html} +46 -58
- package/coverage/lcov-report/{api/routes/view.js.html → src/api/routes/view.ts.html} +40 -31
- package/coverage/lcov-report/src/api/routes/webhook.ts.html +166 -0
- package/coverage/lcov-report/src/app.ts.html +406 -0
- package/coverage/lcov-report/{automations/actions.js.html → src/automations/actions.ts.html} +50 -41
- package/coverage/lcov-report/{automations/automationUtils.js.html → src/automations/automationUtils.ts.html} +30 -27
- package/coverage/lcov-report/{automations/bullboard.js.html → src/automations/bullboard.ts.html} +30 -33
- package/coverage/lcov-report/{automations → src/automations}/index.html +63 -48
- package/coverage/lcov-report/{api/routes/dev.js.html → src/automations/index.ts.html} +42 -42
- package/coverage/lcov-report/src/automations/logging/index.html +116 -0
- package/coverage/lcov-report/{events/utils.js.html → src/automations/logging/index.ts.html} +70 -70
- package/coverage/lcov-report/{automations/steps/bash.js.html → src/automations/steps/bash.ts.html} +40 -25
- package/coverage/lcov-report/src/automations/steps/createRow.ts.html +382 -0
- package/coverage/lcov-report/{automations/steps/delay.js.html → src/automations/steps/delay.ts.html} +32 -17
- package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +349 -0
- package/coverage/lcov-report/{automations/steps/discord.js.html → src/automations/steps/discord.ts.html} +38 -23
- package/coverage/lcov-report/{automations/steps/executeQuery.js.html → src/automations/steps/executeQuery.ts.html} +41 -26
- package/coverage/lcov-report/{automations/steps/executeScript.js.html → src/automations/steps/executeScript.ts.html} +54 -24
- package/coverage/lcov-report/{automations/steps/filter.js.html → src/automations/steps/filter.ts.html} +36 -27
- package/coverage/lcov-report/src/automations/steps/index.html +371 -0
- package/coverage/lcov-report/{automations/steps/integromat.js.html → src/automations/steps/integromat.ts.html} +35 -20
- package/coverage/lcov-report/{automations/steps/loop.js.html → src/automations/steps/loop.ts.html} +21 -15
- package/coverage/lcov-report/{automations/steps/outgoingWebhook.js.html → src/automations/steps/outgoingWebhook.ts.html} +48 -33
- package/coverage/lcov-report/{automations/steps/queryRows.js.html → src/automations/steps/queryRows.ts.html} +94 -58
- package/coverage/lcov-report/{automations/steps/sendSmtpEmail.js.html → src/automations/steps/sendSmtpEmail.ts.html} +37 -22
- package/coverage/lcov-report/{automations/steps/serverLog.js.html → src/automations/steps/serverLog.ts.html} +38 -20
- package/coverage/lcov-report/{automations/steps/slack.js.html → src/automations/steps/slack.ts.html} +35 -20
- package/coverage/lcov-report/{automations/steps/updateRow.js.html → src/automations/steps/updateRow.ts.html} +36 -21
- package/coverage/lcov-report/{automations/steps/utils.js.html → src/automations/steps/utils.ts.html} +44 -26
- package/coverage/lcov-report/{automations/steps/zapier.js.html → src/automations/steps/zapier.ts.html} +38 -20
- package/coverage/lcov-report/src/automations/tests/utilities/index.html +116 -0
- package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +265 -0
- package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +196 -0
- package/coverage/lcov-report/{automations/triggerInfo/cron.js.html → src/automations/triggerInfo/cron.ts.html} +30 -15
- package/coverage/lcov-report/{automations → src/automations}/triggerInfo/index.html +31 -31
- package/coverage/lcov-report/{automations/triggerInfo/index.js.html → src/automations/triggerInfo/index.ts.html} +17 -17
- package/coverage/lcov-report/{automations/triggerInfo/rowDeleted.js.html → src/automations/triggerInfo/rowDeleted.ts.html} +30 -15
- package/coverage/lcov-report/{automations/triggerInfo/rowSaved.js.html → src/automations/triggerInfo/rowSaved.ts.html} +30 -15
- package/coverage/lcov-report/{automations/triggerInfo/rowUpdated.js.html → src/automations/triggerInfo/rowUpdated.ts.html} +30 -15
- package/coverage/lcov-report/{automations/triggerInfo/webhook.js.html → src/automations/triggerInfo/webhook.ts.html} +30 -15
- package/coverage/lcov-report/{automations/triggers.js.html → src/automations/triggers.ts.html} +59 -47
- package/coverage/lcov-report/src/automations/utils.ts.html +886 -0
- package/coverage/lcov-report/{constants → src/constants}/index.html +26 -26
- package/coverage/lcov-report/{constants/index.js.html → src/constants/index.ts.html} +173 -185
- package/coverage/lcov-report/{constants/layouts.js.html → src/constants/layouts.ts.html} +16 -34
- package/coverage/lcov-report/{api/routes/datasource.js.html → src/constants/screens.ts.html} +56 -65
- package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +2032 -0
- package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +541 -0
- package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +427 -0
- package/coverage/lcov-report/src/db/defaultData/index.html +176 -0
- package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +403 -0
- package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +559 -0
- package/coverage/lcov-report/src/db/dynamoClient.ts.html +526 -0
- package/coverage/lcov-report/{db/inMemoryView.js.html → src/db/inMemoryView.ts.html} +44 -26
- package/coverage/lcov-report/{db → src/db}/index.html +48 -33
- package/coverage/lcov-report/src/db/index.ts.html +133 -0
- package/coverage/lcov-report/{db/linkedRows/LinkController.js.html → src/db/linkedRows/LinkController.ts.html} +92 -155
- package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +265 -0
- package/coverage/lcov-report/src/db/linkedRows/index.html +161 -0
- package/coverage/lcov-report/{db/linkedRows/index.js.html → src/db/linkedRows/index.ts.html} +83 -68
- package/coverage/lcov-report/{db/linkedRows/linkUtils.js.html → src/db/linkedRows/linkUtils.ts.html} +73 -46
- package/coverage/lcov-report/{db/newid.js.html → src/db/newid.ts.html} +11 -11
- package/coverage/lcov-report/{db/utils.js.html → src/db/utils.ts.html} +105 -153
- package/coverage/lcov-report/{automations/triggerInfo/app.js.html → src/definitions/automations.ts.html} +42 -42
- package/coverage/lcov-report/src/definitions/datasource.ts.html +235 -0
- package/coverage/lcov-report/src/definitions/index.html +131 -0
- package/coverage/lcov-report/src/environment.ts.html +457 -0
- package/coverage/lcov-report/{events/AutomationEmitter.js.html → src/events/AutomationEmitter.ts.html} +36 -21
- package/coverage/lcov-report/{events/index.js.html → src/events/BudibaseEmitter.ts.html} +23 -26
- package/coverage/lcov-report/{events → src/events}/index.html +48 -33
- package/coverage/lcov-report/src/events/index.ts.html +100 -0
- package/coverage/lcov-report/src/events/utils.ts.html +319 -0
- package/coverage/lcov-report/src/index.html +191 -0
- package/coverage/lcov-report/{db/index.js.html → src/index.ts.html} +35 -35
- package/coverage/lcov-report/{utilities/queue/inMemoryQueue.js.html → src/integrations/airtable.ts.html} +213 -135
- package/coverage/lcov-report/src/integrations/arangodb.ts.html +415 -0
- package/coverage/lcov-report/src/integrations/base/index.html +161 -0
- package/coverage/lcov-report/src/integrations/base/query.ts.html +133 -0
- package/coverage/lcov-report/src/integrations/base/sql.ts.html +1951 -0
- package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +691 -0
- package/coverage/lcov-report/src/integrations/base/utils.ts.html +121 -0
- package/coverage/lcov-report/src/integrations/couchdb.ts.html +406 -0
- package/coverage/lcov-report/src/integrations/dynamodb.ts.html +745 -0
- package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +634 -0
- package/coverage/lcov-report/src/integrations/firebase.ts.html +646 -0
- package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1315 -0
- package/coverage/lcov-report/src/integrations/index.html +371 -0
- package/coverage/lcov-report/src/integrations/index.ts.html +445 -0
- package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1006 -0
- package/coverage/lcov-report/src/integrations/mongodb.ts.html +1867 -0
- package/coverage/lcov-report/src/integrations/mysql.ts.html +964 -0
- package/coverage/lcov-report/src/integrations/oracle.ts.html +1474 -0
- package/coverage/lcov-report/src/integrations/postgres.ts.html +1069 -0
- package/coverage/lcov-report/src/integrations/queries/index.html +116 -0
- package/coverage/lcov-report/src/integrations/queries/sql.ts.html +463 -0
- package/coverage/lcov-report/src/integrations/redis.ts.html +550 -0
- package/coverage/lcov-report/src/integrations/rest.ts.html +1381 -0
- package/coverage/lcov-report/src/integrations/s3.ts.html +862 -0
- package/coverage/lcov-report/src/integrations/snowflake.ts.html +376 -0
- package/coverage/lcov-report/{integrations → src/integrations}/tests/TestConfiguration.js.html +10 -10
- package/coverage/lcov-report/{integrations → src/integrations}/tests/index.html +10 -10
- package/coverage/lcov-report/src/integrations/utils.ts.html +1018 -0
- package/coverage/lcov-report/{middleware/appInfo.js.html → src/middleware/appInfo.ts.html} +31 -28
- package/coverage/lcov-report/src/middleware/authorized.ts.html +460 -0
- package/coverage/lcov-report/{middleware/builder.js.html → src/middleware/builder.ts.html} +43 -37
- package/coverage/lcov-report/{middleware/currentapp.js.html → src/middleware/currentapp.ts.html} +77 -68
- package/coverage/lcov-report/{middleware → src/middleware}/index.html +78 -63
- package/coverage/lcov-report/{middleware/joi-validator.js.html → src/middleware/joi-validator.ts.html} +25 -22
- package/coverage/lcov-report/{middleware/publicApi.js.html → src/middleware/publicApi.ts.html} +24 -24
- package/coverage/lcov-report/{middleware/resourceId.js.html → src/middleware/resourceId.ts.html} +40 -25
- package/coverage/lcov-report/{api/routes/apikeys.js.html → src/middleware/selfhost.ts.html} +27 -27
- package/coverage/lcov-report/{middleware/utils.js.html → src/middleware/utils.ts.html} +19 -13
- package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +187 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +163 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +151 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +206 -0
- package/coverage/lcov-report/{automations/index.js.html → src/migrations/functions/backfill/app/layouts.ts.html} +53 -53
- package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +226 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +151 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +151 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +166 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +532 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +283 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +146 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +265 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +232 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +724 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/index.html +161 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +106 -0
- package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +235 -0
- package/coverage/lcov-report/src/migrations/functions/index.html +146 -0
- package/coverage/lcov-report/{api/routes/role.js.html → src/migrations/functions/syncQuotas.ts.html} +32 -32
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +161 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +94 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +127 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +115 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +169 -0
- package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +124 -0
- package/coverage/lcov-report/{utilities/queue → src/migrations}/index.html +23 -23
- package/coverage/lcov-report/src/migrations/index.ts.html +403 -0
- package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +205 -0
- package/coverage/lcov-report/src/migrations/tests/index.html +131 -0
- package/coverage/lcov-report/src/migrations/tests/structures.ts.html +283 -0
- package/coverage/lcov-report/src/sdk/app/automations/index.html +131 -0
- package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +100 -0
- package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +214 -0
- package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +91 -0
- package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +604 -0
- package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +682 -0
- package/coverage/lcov-report/src/sdk/app/backups/index.html +176 -0
- package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +112 -0
- package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +292 -0
- package/coverage/lcov-report/src/sdk/app/tables/index.html +116 -0
- package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +265 -0
- package/coverage/lcov-report/{utilities/routing → src/sdk}/index.html +10 -10
- package/coverage/lcov-report/{api/routes/migrations.js.html → src/sdk/index.ts.html} +24 -21
- package/coverage/lcov-report/src/startup.ts.html +499 -0
- package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +1966 -0
- package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +127 -0
- package/coverage/lcov-report/src/tests/utilities/index.html +161 -0
- package/coverage/lcov-report/{middleware/selfhost.js.html → src/tests/utilities/index.ts.html} +33 -30
- package/coverage/lcov-report/src/tests/utilities/structures.ts.html +667 -0
- package/coverage/lcov-report/src/threads/automation.ts.html +1594 -0
- package/coverage/lcov-report/src/threads/index.html +161 -0
- package/coverage/lcov-report/src/threads/index.ts.html +418 -0
- package/coverage/lcov-report/src/threads/query.ts.html +961 -0
- package/coverage/lcov-report/src/threads/utils.ts.html +373 -0
- package/coverage/lcov-report/{utilities/budibaseDir.js.html → src/utilities/budibaseDir.ts.html} +12 -12
- package/coverage/lcov-report/{utilities/centralPath.js.html → src/utilities/centralPath.ts.html} +13 -13
- package/coverage/lcov-report/{utilities/csvParser.js.html → src/utilities/csvParser.ts.html} +104 -56
- package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +547 -0
- package/coverage/lcov-report/{api/controllers/table → src/utilities/fileSystem}/index.html +43 -43
- package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +1117 -0
- package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +142 -0
- package/coverage/lcov-report/{utilities/global.js.html → src/utilities/global.ts.html} +107 -74
- package/coverage/lcov-report/{utilities → src/utilities}/index.html +92 -77
- package/coverage/lcov-report/{utilities/index.js.html → src/utilities/index.ts.html} +78 -54
- package/coverage/lcov-report/{utilities/plugins.js.html → src/utilities/plugins.ts.html} +22 -19
- package/coverage/lcov-report/src/utilities/redis.ts.html +343 -0
- package/coverage/lcov-report/{api/controllers/query → src/utilities/routing}/index.html +8 -8
- package/coverage/lcov-report/src/utilities/routing/index.ts.html +181 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/index.html +146 -0
- package/coverage/lcov-report/{utilities/rowProcessor/index.js.html → src/utilities/rowProcessor/index.ts.html} +115 -346
- package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +373 -0
- package/coverage/lcov-report/{utilities/rowProcessor/utils.js.html → src/utilities/rowProcessor/utils.ts.html} +50 -38
- package/coverage/lcov-report/{utilities/scriptRunner.js.html → src/utilities/scriptRunner.ts.html} +28 -16
- package/coverage/lcov-report/{utilities/security.js.html → src/utilities/security.ts.html} +56 -74
- package/coverage/lcov-report/{utilities/statusCodes.js.html → src/utilities/statusCodes.ts.html} +11 -11
- package/coverage/lcov-report/{utilities → src/utilities}/usageQuota/index.html +28 -28
- package/coverage/lcov-report/{utilities/usageQuota/rows.js.html → src/utilities/usageQuota/rows.ts.html} +34 -46
- package/coverage/lcov-report/{utilities/usageQuota/usageQuoteReset.js.html → src/utilities/usageQuota/usageQuoteReset.ts.html} +13 -13
- package/coverage/lcov-report/{utilities/users.js.html → src/utilities/users.ts.html} +29 -35
- package/coverage/lcov-report/{utilities/workerRequests.js.html → src/utilities/workerRequests.ts.html} +129 -114
- package/coverage/lcov-report/src/watch.ts.html +196 -0
- package/coverage/lcov-report/src/websocket.ts.html +163 -0
- package/coverage/lcov.info +19514 -6962
- package/dist/api/controllers/apikeys.js +12 -9
- package/dist/api/controllers/application.js +48 -45
- package/dist/api/controllers/automation.js +122 -82
- package/dist/api/controllers/cloud.js +84 -71
- package/dist/api/controllers/component.js +4 -2
- package/dist/api/controllers/datasource.js +144 -92
- package/dist/api/controllers/deploy/Deployment.js +10 -6
- package/dist/api/controllers/deploy/index.js +13 -16
- package/dist/api/controllers/dev.js +96 -81
- package/dist/api/controllers/integration.js +11 -8
- package/dist/api/controllers/layout.js +18 -15
- package/dist/api/controllers/metadata.js +51 -37
- package/dist/api/controllers/migrations.js +19 -11
- package/dist/api/controllers/permission.js +52 -43
- package/dist/api/controllers/plugin/index.js +6 -7
- package/dist/api/controllers/plugin/utils.js +2 -1
- package/dist/api/controllers/public/applications.js +17 -9
- package/dist/api/controllers/public/tables.js +29 -9
- package/dist/api/controllers/public/utils.js +2 -2
- package/dist/api/controllers/query/import/index.js +1 -2
- package/dist/api/controllers/query/index.js +10 -13
- 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 +538 -542
- package/dist/api/controllers/row/external.js +258 -190
- package/dist/api/controllers/row/index.js +43 -14
- package/dist/api/controllers/row/internal.js +354 -295
- package/dist/api/controllers/row/internalSearch.js +95 -80
- package/dist/api/controllers/row/staticFormula.js +125 -112
- package/dist/api/controllers/row/utils.js +122 -84
- package/dist/api/controllers/screen.js +81 -66
- package/dist/api/controllers/script.js +13 -6
- package/dist/api/controllers/static/index.js +11 -14
- package/dist/api/controllers/table/bulkFormula.js +47 -35
- package/dist/api/controllers/table/external.js +89 -53
- package/dist/api/controllers/table/index.js +64 -31
- package/dist/api/controllers/table/internal.js +5 -6
- package/dist/api/controllers/table/utils.js +39 -35
- 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/controllers/view/viewBuilder.js +4 -16
- package/dist/api/controllers/webhook.js +25 -2
- 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 +33 -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/public/index.js +11 -11
- 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 +12 -11
- 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/tests/utilities/index.js +69 -32
- 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 +22 -22
- package/dist/automations/actions.js +53 -24
- package/dist/automations/automationUtils.js +31 -19
- package/dist/automations/bullboard.js +59 -29
- package/dist/automations/index.js +23 -18
- package/dist/automations/steps/bash.js +40 -10
- package/dist/automations/steps/createRow.js +2 -1
- package/dist/automations/steps/delay.js +9 -5
- package/dist/automations/steps/deleteRow.js +2 -1
- package/dist/automations/steps/discord.js +14 -7
- package/dist/automations/steps/executeQuery.js +34 -7
- package/dist/automations/steps/executeScript.js +34 -7
- package/dist/automations/steps/filter.js +20 -18
- package/dist/automations/steps/integromat.js +14 -7
- package/dist/automations/steps/loop.js +4 -1
- package/dist/automations/steps/outgoingWebhook.js +45 -14
- package/dist/automations/steps/queryRows.js +71 -38
- package/dist/automations/steps/sendSmtpEmail.js +33 -6
- package/dist/automations/steps/serverLog.js +12 -8
- package/dist/automations/steps/slack.js +14 -7
- package/dist/automations/steps/updateRow.js +34 -7
- package/dist/automations/steps/utils.js +22 -16
- package/dist/automations/steps/zapier.js +15 -7
- package/dist/automations/tests/utilities/index.js +62 -38
- package/dist/automations/triggerInfo/app.js +4 -1
- package/dist/automations/triggerInfo/cron.js +4 -1
- package/dist/automations/triggerInfo/index.js +31 -6
- package/dist/automations/triggerInfo/rowDeleted.js +4 -1
- package/dist/automations/triggerInfo/rowSaved.js +4 -1
- package/dist/automations/triggerInfo/rowUpdated.js +4 -1
- package/dist/automations/triggerInfo/webhook.js +4 -1
- package/dist/automations/triggers.js +90 -57
- package/dist/automations/utils.js +9 -8
- package/dist/constants/index.js +118 -104
- package/dist/constants/layouts.js +7 -10
- package/dist/constants/screens.js +49 -44
- package/dist/db/defaultData/datasource_bb_default.js +571 -0
- package/dist/db/defaultData/employeeImport.js +155 -0
- package/dist/db/defaultData/expensesImport.js +117 -0
- package/dist/db/defaultData/inventoryImport.js +109 -0
- package/dist/db/defaultData/jobsImport.js +152 -0
- package/dist/db/dynamoClient.js +20 -20
- package/dist/db/inMemoryView.js +47 -38
- package/dist/db/index.js +7 -4
- package/dist/db/linkedRows/LinkController.js +51 -70
- package/dist/db/linkedRows/LinkDocument.js +32 -0
- package/dist/db/linkedRows/index.js +93 -81
- package/dist/db/linkedRows/linkUtils.js +42 -32
- package/dist/db/utils.js +146 -119
- package/dist/db/views/staticViews.js +91 -74
- package/dist/environment.js +9 -6
- package/dist/events/AutomationEmitter.js +13 -10
- package/dist/events/BudibaseEmitter.js +24 -0
- package/dist/events/index.js +5 -23
- package/dist/events/utils.js +18 -10
- package/dist/integrations/elasticsearch.js +26 -2
- package/dist/integrations/googlesheets.js +5 -6
- package/dist/integrations/index.js +15 -6
- package/dist/integrations/s3.js +157 -1
- package/dist/middleware/appInfo.js +14 -9
- package/dist/middleware/authorized.js +22 -21
- package/dist/middleware/builder.js +41 -40
- package/dist/middleware/currentapp.js +39 -37
- package/dist/middleware/joi-validator.js +17 -10
- package/dist/middleware/publicApi.js +5 -6
- package/dist/middleware/resourceId.js +16 -9
- package/dist/middleware/selfhost.js +5 -4
- package/dist/middleware/utils.js +5 -2
- package/dist/migrations/functions/appUrls.js +2 -2
- package/dist/migrations/functions/backfill/global.js +1 -1
- 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 +10 -44
- package/dist/sdk/app/backups/exports.js +1 -2
- package/dist/sdk/app/backups/imports.js +2 -3
- package/dist/sdk/app/tables/index.js +5 -5
- package/dist/startup.js +10 -10
- package/dist/tests/utilities/TestConfiguration.js +111 -87
- package/dist/tests/utilities/controllers.js +38 -15
- package/dist/tests/utilities/structures.js +72 -53
- package/dist/threads/automation.js +49 -27
- package/dist/threads/query.js +17 -19
- package/dist/threads/utils.js +33 -8
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/budibaseDir.js +4 -2
- package/dist/utilities/centralPath.js +14 -7
- package/dist/utilities/csvParser.js +27 -21
- package/dist/utilities/fileSystem/clientLibrary.js +87 -73
- package/dist/utilities/fileSystem/index.js +202 -175
- package/dist/utilities/fileSystem/processor.js +8 -3
- package/dist/utilities/global.js +87 -66
- package/dist/utilities/index.js +102 -75
- package/dist/utilities/plugins.js +15 -9
- package/dist/utilities/redis.js +100 -65
- package/dist/utilities/routing/index.js +27 -23
- package/dist/utilities/rowProcessor/index.js +133 -191
- package/dist/utilities/rowProcessor/map.js +99 -0
- package/dist/utilities/rowProcessor/utils.js +35 -26
- package/dist/utilities/scriptRunner.js +8 -5
- 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/jest.config.ts +33 -0
- package/package.json +11 -45
- package/scripts/exportAppTemplate.js +2 -2
- package/scripts/localdomain.js +34 -6
- package/src/api/controllers/{apikeys.js → apikeys.ts} +10 -10
- package/src/api/controllers/application.ts +56 -42
- package/src/api/controllers/auth.ts +4 -3
- 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} +100 -47
- package/src/api/controllers/deploy/{Deployment.js → Deployment.ts} +13 -10
- package/src/api/controllers/deploy/index.ts +13 -25
- package/src/api/controllers/{dev.js → dev.ts} +31 -37
- package/src/api/controllers/integration.ts +13 -0
- package/src/api/controllers/{layout.js → layout.ts} +8 -8
- package/src/api/controllers/{metadata.js → metadata.ts} +11 -10
- package/src/api/controllers/migrations.ts +14 -0
- package/src/api/controllers/{permission.js → permission.ts} +49 -46
- package/src/api/controllers/plugin/index.ts +4 -5
- package/src/api/controllers/plugin/utils.ts +3 -5
- package/src/api/controllers/public/applications.ts +15 -9
- package/src/api/controllers/public/rows.ts +1 -1
- package/src/api/controllers/public/tables.ts +2 -2
- package/src/api/controllers/public/utils.ts +2 -2
- package/src/api/controllers/query/import/index.ts +2 -3
- package/src/api/controllers/query/index.ts +11 -14
- 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 +602 -624
- package/src/api/controllers/row/{external.js → external.ts} +79 -62
- package/src/api/controllers/row/index.ts +19 -11
- package/src/api/controllers/row/{internal.js → internal.ts} +87 -73
- package/src/api/controllers/row/{internalSearch.js → internalSearch.ts} +92 -68
- package/src/api/controllers/row/{staticFormula.js → staticFormula.ts} +30 -25
- package/src/api/controllers/row/{utils.js → utils.ts} +32 -22
- package/src/api/controllers/screen.ts +10 -6
- package/src/api/controllers/script.ts +12 -0
- package/src/api/controllers/static/index.ts +14 -16
- package/src/api/controllers/table/{bulkFormula.js → bulkFormula.ts} +39 -25
- package/src/api/controllers/table/{external.js → external.ts} +86 -55
- package/src/api/controllers/table/{index.js → index.ts} +21 -18
- package/src/api/controllers/table/internal.ts +5 -6
- package/src/api/controllers/table/utils.ts +26 -21
- 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/controllers/view/{viewBuilder.js → viewBuilder.ts} +25 -11
- package/src/api/controllers/webhook.ts +1 -1
- 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/public/index.ts +11 -14
- package/src/api/routes/public/tests/compare.spec.js +1 -1
- package/src/api/routes/{query.js → query.ts} +19 -22
- package/src/api/routes/role.ts +24 -0
- package/src/api/routes/routing.ts +14 -0
- package/src/api/routes/row.ts +13 -15
- package/src/api/routes/screen.ts +23 -0
- package/src/api/routes/script.ts +10 -0
- package/src/api/routes/static.ts +7 -10
- package/src/api/routes/{table.js → table.ts} +10 -13
- package/src/api/routes/templates.ts +16 -0
- package/src/api/routes/tests/analytics.spec.js +1 -1
- package/src/api/routes/tests/backup.spec.js +9 -1
- package/src/api/routes/tests/deployment.spec.ts +1 -1
- package/src/api/routes/tests/permissions.spec.js +2 -1
- package/src/api/routes/tests/query.spec.js +15 -10
- package/src/api/routes/tests/role.spec.js +7 -9
- 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/static.spec.js +2 -2
- package/src/api/routes/tests/table.spec.js +40 -36
- package/src/api/routes/tests/user.spec.js +2 -1
- package/src/api/routes/tests/utilities/TestFunctions.ts +6 -8
- package/src/api/routes/tests/utilities/{index.js → index.ts} +12 -12
- package/src/api/routes/user.ts +51 -0
- 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 +15 -14
- package/src/automations/{actions.js → actions.ts} +26 -23
- package/src/automations/{automationUtils.js → automationUtils.ts} +13 -12
- package/src/automations/bullboard.ts +38 -0
- package/src/automations/index.ts +26 -0
- package/src/automations/steps/{bash.js → bash.ts} +13 -8
- package/src/automations/steps/createRow.ts +8 -3
- package/src/automations/steps/{delay.js → delay.ts} +9 -4
- package/src/automations/steps/deleteRow.ts +8 -3
- package/src/automations/steps/{discord.js → discord.ts} +10 -5
- package/src/automations/steps/{executeQuery.js → executeQuery.ts} +12 -7
- package/src/automations/steps/{executeScript.js → executeScript.ts} +17 -7
- package/src/automations/steps/{filter.js → filter.ts} +12 -9
- package/src/automations/steps/{integromat.js → integromat.ts} +10 -5
- package/src/automations/steps/{loop.js → loop.ts} +4 -2
- package/src/automations/steps/{outgoingWebhook.js → outgoingWebhook.ts} +18 -13
- package/src/automations/steps/{queryRows.js → queryRows.ts} +48 -36
- package/src/automations/steps/{sendSmtpEmail.js → sendSmtpEmail.ts} +10 -5
- package/src/automations/steps/{serverLog.js → serverLog.ts} +9 -3
- package/src/automations/steps/{slack.js → slack.ts} +10 -5
- package/src/automations/steps/{updateRow.js → updateRow.ts} +12 -7
- package/src/automations/steps/{utils.js → utils.ts} +10 -4
- package/src/automations/steps/{zapier.js → zapier.ts} +11 -5
- package/src/automations/tests/updateRow.spec.js +0 -1
- package/src/automations/tests/utilities/index.ts +60 -0
- package/src/automations/triggerInfo/{app.js → app.ts} +7 -2
- package/src/automations/triggerInfo/{cron.js → cron.ts} +7 -2
- package/src/automations/triggerInfo/index.ts +15 -0
- package/src/automations/triggerInfo/{rowDeleted.js → rowDeleted.ts} +7 -2
- package/src/automations/triggerInfo/{rowSaved.js → rowSaved.ts} +7 -2
- package/src/automations/triggerInfo/{rowUpdated.js → rowUpdated.ts} +7 -2
- package/src/automations/triggerInfo/{webhook.js → webhook.ts} +7 -2
- package/src/automations/{triggers.js → triggers.ts} +30 -26
- package/src/automations/utils.ts +9 -12
- package/src/constants/index.ts +204 -0
- package/src/constants/{layouts.js → layouts.ts} +3 -9
- package/src/constants/screens.ts +48 -0
- package/src/db/defaultData/datasource_bb_default.ts +649 -0
- package/src/db/defaultData/employeeImport.ts +152 -0
- package/src/db/defaultData/expensesImport.ts +114 -0
- package/src/db/defaultData/inventoryImport.ts +106 -0
- package/src/db/defaultData/jobsImport.ts +158 -0
- package/src/db/{dynamoClient.js → dynamoClient.ts} +39 -19
- package/src/db/{inMemoryView.js → inMemoryView.ts} +15 -9
- package/src/db/index.ts +16 -0
- package/src/db/linkedRows/{LinkController.js → LinkController.ts} +64 -85
- package/src/db/linkedRows/LinkDocument.ts +60 -0
- package/src/db/linkedRows/{index.js → index.ts} +43 -38
- package/src/db/linkedRows/{linkUtils.js → linkUtils.ts} +33 -24
- package/src/db/{newid.js → newid.ts} +1 -1
- package/src/db/tests/linkController.spec.js +73 -57
- package/src/db/tests/linkTests.spec.js +17 -14
- package/src/db/{utils.js → utils.ts} +77 -93
- package/src/db/views/{staticViews.js → staticViews.ts} +20 -13
- package/src/{environment.js → environment.ts} +11 -7
- package/src/events/{AutomationEmitter.js → AutomationEmitter.ts} +12 -7
- package/src/events/{index.js → BudibaseEmitter.ts} +7 -8
- package/src/events/index.ts +5 -0
- package/src/events/utils.ts +78 -0
- package/src/integrations/base/sql.ts +1 -1
- package/src/integrations/base/sqlTable.ts +1 -1
- package/src/integrations/elasticsearch.ts +32 -2
- package/src/integrations/googlesheets.ts +5 -7
- package/src/integrations/index.ts +45 -41
- package/src/integrations/s3.ts +179 -3
- package/src/integrations/tests/s3.spec.ts +85 -1
- package/src/integrations/utils.ts +6 -2
- package/src/middleware/appInfo.ts +20 -0
- package/src/middleware/authorized.ts +21 -28
- package/src/middleware/{builder.js → builder.ts} +17 -15
- package/src/middleware/{currentapp.js → currentapp.ts} +42 -39
- package/src/middleware/{joi-validator.js → joi-validator.ts} +9 -8
- package/src/middleware/publicApi.ts +21 -0
- package/src/middleware/{resourceId.js → resourceId.ts} +16 -11
- package/src/middleware/{selfhost.js → selfhost.ts} +4 -2
- package/src/middleware/tests/authorized.spec.js +5 -6
- package/src/middleware/tests/currentapp.spec.js +118 -63
- package/src/middleware/{utils.js → utils.ts} +3 -1
- package/src/migrations/functions/appUrls.ts +2 -2
- package/src/migrations/functions/backfill/app/tables.ts +2 -5
- package/src/migrations/functions/backfill/global.ts +1 -1
- 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 +4 -5
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +7 -7
- package/src/migrations/functions/userEmailViewCasing.ts +3 -3
- package/src/migrations/tests/index.spec.ts +1 -1
- package/src/sdk/app/backups/exports.ts +5 -3
- package/src/sdk/app/backups/imports.ts +7 -14
- package/src/sdk/app/backups/statistics.ts +9 -18
- package/src/sdk/app/tables/index.ts +7 -8
- package/src/startup.ts +5 -5
- package/{scripts/jestSetup.js → src/tests/jestSetup.ts} +11 -2
- package/src/tests/utilities/{TestConfiguration.js → TestConfiguration.ts} +111 -78
- package/src/tests/utilities/controllers.ts +14 -0
- package/src/tests/utilities/{index.js → index.ts} +2 -2
- package/src/tests/utilities/{structures.js → structures.ts} +41 -36
- package/src/threads/automation.ts +18 -19
- package/src/threads/query.ts +11 -16
- package/src/threads/utils.ts +4 -5
- package/src/utilities/budibaseDir.ts +3 -0
- package/src/utilities/{centralPath.js → centralPath.ts} +3 -3
- package/src/utilities/{csvParser.js → csvParser.ts} +42 -26
- package/src/utilities/fileSystem/{clientLibrary.js → clientLibrary.ts} +20 -20
- package/src/utilities/fileSystem/{index.js → index.ts} +55 -63
- package/src/utilities/fileSystem/{processor.js → processor.ts} +3 -5
- package/src/utilities/global.ts +138 -0
- package/src/utilities/{index.js → index.ts} +40 -32
- package/src/utilities/{plugins.js → plugins.ts} +5 -4
- 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} +67 -144
- package/src/utilities/rowProcessor/map.ts +96 -0
- package/src/utilities/rowProcessor/{utils.js → utils.ts} +19 -15
- package/src/utilities/{scriptRunner.js → scriptRunner.ts} +8 -4
- package/src/utilities/security.ts +65 -0
- package/src/utilities/{statusCodes.js → statusCodes.ts} +1 -1
- package/src/utilities/usageQuota/{rows.js → rows.ts} +14 -18
- package/src/utilities/usageQuota/{usageQuoteReset.js → usageQuoteReset.ts} +1 -1
- 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/tsconfig.build.json +1 -2
- package/tsconfig.json +3 -1
- package/coverage/lcov-report/api/controllers/index.html +0 -326
- package/coverage/lcov-report/automations/steps/index.html +0 -341
- package/coverage/lcov-report/db/linkedRows/index.html +0 -146
- package/dist/integrations/tests/TestConfiguration.js +0 -1
- package/dist/utilities/fileSystem/utilities.js +0 -22
- package/dist/utilities/queue/inMemoryQueue.js +0 -126
- package/src/api/controllers/integration.js +0 -14
- package/src/api/controllers/migrations.js +0 -13
- 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/user.js +0 -53
- package/src/api/routes/view.js +0 -31
- package/src/automations/bullboard.js +0 -39
- package/src/automations/index.js +0 -29
- package/src/automations/tests/utilities/index.js +0 -51
- package/src/automations/triggerInfo/index.js +0 -15
- package/src/constants/index.js +0 -208
- package/src/constants/screens.js +0 -46
- package/src/db/index.js +0 -16
- package/src/events/utils.js +0 -38
- package/src/middleware/appInfo.js +0 -19
- package/src/middleware/publicApi.js +0 -21
- package/src/module.d.ts +0 -14
- package/src/tests/utilities/controllers.js +0 -16
- package/src/utilities/budibaseDir.js +0 -3
- package/src/utilities/fileSystem/utilities.js +0 -36
- package/src/utilities/global.js +0 -127
- package/src/utilities/queue/inMemoryQueue.js +0 -122
- package/src/utilities/routing/index.js +0 -25
- package/src/utilities/security.js +0 -71
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
<html lang="en">
|
|
4
4
|
|
|
5
5
|
<head>
|
|
6
|
-
<title>Code coverage report for api/controllers/datasource.
|
|
6
|
+
<title>Code coverage report for src/api/controllers/datasource.ts</title>
|
|
7
7
|
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="
|
|
9
|
-
<link rel="stylesheet" href="
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="
|
|
8
|
+
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
|
+
<link rel="stylesheet" href="../../../base.css" />
|
|
10
|
+
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
|
11
11
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
12
|
<style type='text/css'>
|
|
13
13
|
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(
|
|
14
|
+
background-image: url(../../../sort-arrow-sprite.png);
|
|
15
15
|
}
|
|
16
16
|
</style>
|
|
17
17
|
</head>
|
|
@@ -19,34 +19,34 @@
|
|
|
19
19
|
<body>
|
|
20
20
|
<div class='wrapper'>
|
|
21
21
|
<div class='pad1'>
|
|
22
|
-
<h1><a href="
|
|
22
|
+
<h1><a href="../../../index.html">All files</a> / <a href="index.html">src/api/controllers</a> datasource.ts</h1>
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">55.69% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>88/158</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">43.85% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>25/57</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">47.82% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>11/
|
|
42
|
+
<span class='fraction'>11/23</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">55.69% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>88/158</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -346,7 +346,61 @@
|
|
|
346
346
|
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
347
|
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
348
|
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
-
<a name='L284'></a><a href='#L284'>284</a
|
|
349
|
+
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
+
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
+
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
+
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
+
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
|
+
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
|
+
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
+
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
+
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
+
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
+
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
+
<a name='L295'></a><a href='#L295'>295</a>
|
|
361
|
+
<a name='L296'></a><a href='#L296'>296</a>
|
|
362
|
+
<a name='L297'></a><a href='#L297'>297</a>
|
|
363
|
+
<a name='L298'></a><a href='#L298'>298</a>
|
|
364
|
+
<a name='L299'></a><a href='#L299'>299</a>
|
|
365
|
+
<a name='L300'></a><a href='#L300'>300</a>
|
|
366
|
+
<a name='L301'></a><a href='#L301'>301</a>
|
|
367
|
+
<a name='L302'></a><a href='#L302'>302</a>
|
|
368
|
+
<a name='L303'></a><a href='#L303'>303</a>
|
|
369
|
+
<a name='L304'></a><a href='#L304'>304</a>
|
|
370
|
+
<a name='L305'></a><a href='#L305'>305</a>
|
|
371
|
+
<a name='L306'></a><a href='#L306'>306</a>
|
|
372
|
+
<a name='L307'></a><a href='#L307'>307</a>
|
|
373
|
+
<a name='L308'></a><a href='#L308'>308</a>
|
|
374
|
+
<a name='L309'></a><a href='#L309'>309</a>
|
|
375
|
+
<a name='L310'></a><a href='#L310'>310</a>
|
|
376
|
+
<a name='L311'></a><a href='#L311'>311</a>
|
|
377
|
+
<a name='L312'></a><a href='#L312'>312</a>
|
|
378
|
+
<a name='L313'></a><a href='#L313'>313</a>
|
|
379
|
+
<a name='L314'></a><a href='#L314'>314</a>
|
|
380
|
+
<a name='L315'></a><a href='#L315'>315</a>
|
|
381
|
+
<a name='L316'></a><a href='#L316'>316</a>
|
|
382
|
+
<a name='L317'></a><a href='#L317'>317</a>
|
|
383
|
+
<a name='L318'></a><a href='#L318'>318</a>
|
|
384
|
+
<a name='L319'></a><a href='#L319'>319</a>
|
|
385
|
+
<a name='L320'></a><a href='#L320'>320</a>
|
|
386
|
+
<a name='L321'></a><a href='#L321'>321</a>
|
|
387
|
+
<a name='L322'></a><a href='#L322'>322</a>
|
|
388
|
+
<a name='L323'></a><a href='#L323'>323</a>
|
|
389
|
+
<a name='L324'></a><a href='#L324'>324</a>
|
|
390
|
+
<a name='L325'></a><a href='#L325'>325</a>
|
|
391
|
+
<a name='L326'></a><a href='#L326'>326</a>
|
|
392
|
+
<a name='L327'></a><a href='#L327'>327</a>
|
|
393
|
+
<a name='L328'></a><a href='#L328'>328</a>
|
|
394
|
+
<a name='L329'></a><a href='#L329'>329</a>
|
|
395
|
+
<a name='L330'></a><a href='#L330'>330</a>
|
|
396
|
+
<a name='L331'></a><a href='#L331'>331</a>
|
|
397
|
+
<a name='L332'></a><a href='#L332'>332</a>
|
|
398
|
+
<a name='L333'></a><a href='#L333'>333</a>
|
|
399
|
+
<a name='L334'></a><a href='#L334'>334</a>
|
|
400
|
+
<a name='L335'></a><a href='#L335'>335</a>
|
|
401
|
+
<a name='L336'></a><a href='#L336'>336</a>
|
|
402
|
+
<a name='L337'></a><a href='#L337'>337</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">45x</span>
|
|
403
|
+
<span class="cline-any cline-neutral"> </span>
|
|
350
404
|
<span class="cline-any cline-neutral"> </span>
|
|
351
405
|
<span class="cline-any cline-neutral"> </span>
|
|
352
406
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -359,7 +413,7 @@
|
|
|
359
413
|
<span class="cline-any cline-yes">45x</span>
|
|
360
414
|
<span class="cline-any cline-yes">45x</span>
|
|
361
415
|
<span class="cline-any cline-yes">45x</span>
|
|
362
|
-
<span class="cline-any cline-
|
|
416
|
+
<span class="cline-any cline-neutral"> </span>
|
|
363
417
|
<span class="cline-any cline-neutral"> </span>
|
|
364
418
|
<span class="cline-any cline-yes">45x</span>
|
|
365
419
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -369,11 +423,16 @@
|
|
|
369
423
|
<span class="cline-any cline-neutral"> </span>
|
|
370
424
|
<span class="cline-any cline-neutral"> </span>
|
|
371
425
|
<span class="cline-any cline-neutral"> </span>
|
|
372
|
-
<span class="cline-any cline-yes">2x</span>
|
|
373
426
|
<span class="cline-any cline-neutral"> </span>
|
|
374
427
|
<span class="cline-any cline-yes">2x</span>
|
|
428
|
+
<span class="cline-any cline-yes">2x</span>
|
|
429
|
+
<span class="cline-any cline-yes">2x</span>
|
|
430
|
+
<span class="cline-any cline-yes">2x</span>
|
|
431
|
+
<span class="cline-any cline-yes">2x</span>
|
|
375
432
|
<span class="cline-any cline-neutral"> </span>
|
|
376
433
|
<span class="cline-any cline-neutral"> </span>
|
|
434
|
+
<span class="cline-any cline-yes">2x</span>
|
|
435
|
+
<span class="cline-any cline-neutral"> </span>
|
|
377
436
|
<span class="cline-any cline-neutral"> </span>
|
|
378
437
|
<span class="cline-any cline-neutral"> </span>
|
|
379
438
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -386,11 +445,17 @@
|
|
|
386
445
|
<span class="cline-any cline-yes">1x</span>
|
|
387
446
|
<span class="cline-any cline-neutral"> </span>
|
|
388
447
|
<span class="cline-any cline-yes">2x</span>
|
|
389
|
-
<span class="cline-any cline-
|
|
448
|
+
<span class="cline-any cline-neutral"> </span>
|
|
449
|
+
<span class="cline-any cline-yes">2x</span>
|
|
450
|
+
<span class="cline-any cline-yes">3x</span>
|
|
390
451
|
<span class="cline-any cline-neutral"> </span>
|
|
391
452
|
<span class="cline-any cline-no"> </span>
|
|
392
453
|
<span class="cline-any cline-neutral"> </span>
|
|
393
454
|
<span class="cline-any cline-neutral"> </span>
|
|
455
|
+
<span class="cline-any cline-yes">3x</span>
|
|
456
|
+
<span class="cline-any cline-yes">2x</span>
|
|
457
|
+
<span class="cline-any cline-neutral"> </span>
|
|
458
|
+
<span class="cline-any cline-neutral"> </span>
|
|
394
459
|
<span class="cline-any cline-neutral"> </span>
|
|
395
460
|
<span class="cline-any cline-yes">2x</span>
|
|
396
461
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -407,8 +472,10 @@
|
|
|
407
472
|
<span class="cline-any cline-neutral"> </span>
|
|
408
473
|
<span class="cline-any cline-no"> </span>
|
|
409
474
|
<span class="cline-any cline-no"> </span>
|
|
475
|
+
<span class="cline-any cline-neutral"> </span>
|
|
410
476
|
<span class="cline-any cline-no"> </span>
|
|
411
477
|
<span class="cline-any cline-neutral"> </span>
|
|
478
|
+
<span class="cline-any cline-neutral"> </span>
|
|
412
479
|
<span class="cline-any cline-no"> </span>
|
|
413
480
|
<span class="cline-any cline-neutral"> </span>
|
|
414
481
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -430,7 +497,7 @@
|
|
|
430
497
|
<span class="cline-any cline-neutral"> </span>
|
|
431
498
|
<span class="cline-any cline-neutral"> </span>
|
|
432
499
|
<span class="cline-any cline-neutral"> </span>
|
|
433
|
-
<span class="cline-any cline-
|
|
500
|
+
<span class="cline-any cline-neutral"> </span>
|
|
434
501
|
<span class="cline-any cline-neutral"> </span>
|
|
435
502
|
<span class="cline-any cline-no"> </span>
|
|
436
503
|
<span class="cline-any cline-no"> </span>
|
|
@@ -448,7 +515,10 @@
|
|
|
448
515
|
<span class="cline-any cline-neutral"> </span>
|
|
449
516
|
<span class="cline-any cline-neutral"> </span>
|
|
450
517
|
<span class="cline-any cline-neutral"> </span>
|
|
451
|
-
<span class="cline-any cline-
|
|
518
|
+
<span class="cline-any cline-neutral"> </span>
|
|
519
|
+
<span class="cline-any cline-neutral"> </span>
|
|
520
|
+
<span class="cline-any cline-neutral"> </span>
|
|
521
|
+
<span class="cline-any cline-neutral"> </span>
|
|
452
522
|
<span class="cline-any cline-yes">6x</span>
|
|
453
523
|
<span class="cline-any cline-yes">6x</span>
|
|
454
524
|
<span class="cline-any cline-yes">6x</span>
|
|
@@ -544,12 +614,47 @@
|
|
|
544
614
|
<span class="cline-any cline-yes">63x</span>
|
|
545
615
|
<span class="cline-any cline-neutral"> </span>
|
|
546
616
|
<span class="cline-any cline-neutral"> </span>
|
|
617
|
+
<span class="cline-any cline-neutral"> </span>
|
|
618
|
+
<span class="cline-any cline-no"> </span>
|
|
619
|
+
<span class="cline-any cline-neutral"> </span>
|
|
620
|
+
<span class="cline-any cline-neutral"> </span>
|
|
621
|
+
<span class="cline-any cline-no"> </span>
|
|
622
|
+
<span class="cline-any cline-neutral"> </span>
|
|
623
|
+
<span class="cline-any cline-neutral"> </span>
|
|
624
|
+
<span class="cline-any cline-neutral"> </span>
|
|
625
|
+
<span class="cline-any cline-neutral"> </span>
|
|
626
|
+
<span class="cline-any cline-neutral"> </span>
|
|
627
|
+
<span class="cline-any cline-neutral"> </span>
|
|
628
|
+
<span class="cline-any cline-no"> </span>
|
|
629
|
+
<span class="cline-any cline-neutral"> </span>
|
|
630
|
+
<span class="cline-any cline-no"> </span>
|
|
631
|
+
<span class="cline-any cline-no"> </span>
|
|
632
|
+
<span class="cline-any cline-neutral"> </span>
|
|
633
|
+
<span class="cline-any cline-no"> </span>
|
|
634
|
+
<span class="cline-any cline-neutral"> </span>
|
|
635
|
+
<span class="cline-any cline-neutral"> </span>
|
|
636
|
+
<span class="cline-any cline-neutral"> </span>
|
|
637
|
+
<span class="cline-any cline-neutral"> </span>
|
|
638
|
+
<span class="cline-any cline-neutral"> </span>
|
|
639
|
+
<span class="cline-any cline-no"> </span>
|
|
640
|
+
<span class="cline-any cline-no"> </span>
|
|
641
|
+
<span class="cline-any cline-neutral"> </span>
|
|
642
|
+
<span class="cline-any cline-neutral"> </span>
|
|
643
|
+
<span class="cline-any cline-neutral"> </span>
|
|
644
|
+
<span class="cline-any cline-neutral"> </span>
|
|
645
|
+
<span class="cline-any cline-neutral"> </span>
|
|
646
|
+
<span class="cline-any cline-neutral"> </span>
|
|
647
|
+
<span class="cline-any cline-neutral"> </span>
|
|
547
648
|
<span class="cline-any cline-yes">45x</span>
|
|
548
649
|
<span class="cline-any cline-yes">1x</span>
|
|
549
650
|
<span class="cline-any cline-yes">1x</span>
|
|
550
651
|
<span class="cline-any cline-neutral"> </span>
|
|
551
652
|
<span class="cline-any cline-yes">1x</span>
|
|
552
653
|
<span class="cline-any cline-neutral"> </span>
|
|
654
|
+
<span class="cline-any cline-neutral"> </span>
|
|
655
|
+
<span class="cline-any cline-yes">1x</span>
|
|
656
|
+
<span class="cline-any cline-no"> </span>
|
|
657
|
+
<span class="cline-any cline-neutral"> </span>
|
|
553
658
|
<span class="cline-any cline-yes">1x</span>
|
|
554
659
|
<span class="cline-any cline-yes">1x</span>
|
|
555
660
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -560,6 +665,7 @@
|
|
|
560
665
|
<span class="cline-any cline-neutral"> </span>
|
|
561
666
|
<span class="cline-any cline-neutral"> </span>
|
|
562
667
|
<span class="cline-any cline-neutral"> </span>
|
|
668
|
+
<span class="cline-any cline-neutral"> </span>
|
|
563
669
|
<span class="cline-any cline-yes">1x</span>
|
|
564
670
|
<span class="cline-any cline-yes">1x</span>
|
|
565
671
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -599,7 +705,7 @@
|
|
|
599
705
|
<span class="cline-any cline-no"> </span>
|
|
600
706
|
<span class="cline-any cline-neutral"> </span>
|
|
601
707
|
<span class="cline-any cline-neutral"> </span>
|
|
602
|
-
<span class="cline-any cline-
|
|
708
|
+
<span class="cline-any cline-neutral"> </span>
|
|
603
709
|
<span class="cline-any cline-no"> </span>
|
|
604
710
|
<span class="cline-any cline-neutral"> </span>
|
|
605
711
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -629,34 +735,40 @@
|
|
|
629
735
|
<span class="cline-any cline-neutral"> </span>
|
|
630
736
|
<span class="cline-any cline-no"> </span>
|
|
631
737
|
<span class="cline-any cline-neutral"> </span>
|
|
632
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">
|
|
738
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {
|
|
633
739
|
generateDatasourceID,
|
|
634
740
|
getDatasourceParams,
|
|
635
741
|
getQueryParams,
|
|
636
742
|
DocumentType,
|
|
637
743
|
BudibaseInternalDB,
|
|
638
744
|
getTableParams,
|
|
639
|
-
}
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
745
|
+
} from "../../db/utils"
|
|
746
|
+
import { destroy as tableDestroy } from "./table/internal"
|
|
747
|
+
import { BuildSchemaErrors, InvalidColumns } from "../../constants"
|
|
748
|
+
import { getIntegration } from "../../integrations"
|
|
749
|
+
import { getDatasourceAndQuery } from "./row/utils"
|
|
750
|
+
import { invalidateDynamicVariables } from "../../threads/utils"
|
|
751
|
+
import { db as dbCore, context, events } from "@budibase/backend-core"
|
|
752
|
+
import { BBContext, Datasource, Row } from "@budibase/types"
|
|
753
|
+
|
|
754
|
+
export async function fetch(ctx: BBContext) {
|
|
648
755
|
// Get internal tables
|
|
649
|
-
const db = getAppDB()
|
|
756
|
+
const db = context.getAppDB()
|
|
650
757
|
const internalTables = await db.allDocs(
|
|
651
758
|
getTableParams(null, {
|
|
652
759
|
include_docs: true,
|
|
653
760
|
})
|
|
654
761
|
)
|
|
655
|
-
|
|
762
|
+
|
|
763
|
+
const internal = internalTables.rows.reduce((acc: any, row: Row) => {
|
|
764
|
+
const sourceId = row.doc.sourceId || "bb_internal"
|
|
765
|
+
acc[sourceId] = acc[sourceId] || []
|
|
766
|
+
acc[sourceId].push(row.doc)
|
|
767
|
+
return acc
|
|
768
|
+
}, {})
|
|
656
769
|
|
|
657
770
|
const bbInternalDb = {
|
|
658
771
|
...BudibaseInternalDB,
|
|
659
|
-
entities: internal,
|
|
660
772
|
}
|
|
661
773
|
|
|
662
774
|
// Get external datasources
|
|
@@ -668,29 +780,37 @@ exports.fetch = async function (ctx) {
|
|
|
668
780
|
)
|
|
669
781
|
).rows.map(row => row.doc)
|
|
670
782
|
|
|
671
|
-
|
|
783
|
+
const allDatasources = [bbInternalDb, ...datasources]
|
|
784
|
+
|
|
785
|
+
for (let datasource of allDatasources) {
|
|
672
786
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (datasource.config && datasource.config.auth) {
|
|
673
787
|
// strip secrets from response so they don't show in the network request
|
|
674
788
|
<span class="cstat-no" title="statement not covered" > delete datasource.config.auth</span>
|
|
675
789
|
}
|
|
790
|
+
|
|
791
|
+
if (datasource.type === dbCore.BUDIBASE_DATASOURCE_TYPE) {
|
|
792
|
+
datasource.entities = internal[datasource._id]
|
|
793
|
+
}
|
|
676
794
|
}
|
|
677
795
|
|
|
678
796
|
ctx.body = [bbInternalDb, ...datasources]
|
|
679
797
|
}
|
|
680
798
|
|
|
681
|
-
|
|
682
|
-
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
799
|
+
export async function <span class="fstat-no" title="function not covered" >buildSchemaFromDb(</span>ctx: BBContext) {
|
|
800
|
+
const db = <span class="cstat-no" title="statement not covered" >context.getAppDB()</span>
|
|
683
801
|
const datasource = <span class="cstat-no" title="statement not covered" >await db.get(ctx.params.datasourceId)</span>
|
|
684
802
|
const tablesFilter = <span class="cstat-no" title="statement not covered" >ctx.request.body.tablesFilter</span>
|
|
685
803
|
|
|
686
804
|
let { tables, error } = <span class="cstat-no" title="statement not covered" >await buildSchemaHelper(datasource)</span>
|
|
687
805
|
<span class="cstat-no" title="statement not covered" > if (tablesFilter) {</span>
|
|
688
|
-
<span class="cstat-no" title="statement not covered" > if (!datasource.entities) {</span>
|
|
806
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!datasource.entities) {</span>
|
|
689
807
|
<span class="cstat-no" title="statement not covered" > datasource.entities = {}</span>
|
|
690
808
|
}
|
|
691
809
|
<span class="cstat-no" title="statement not covered" > for (let key in tables) {</span>
|
|
692
|
-
<span class="cstat-no" title="statement not covered" > if (</span>
|
|
693
|
-
tablesFilter.some(
|
|
810
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
|
|
811
|
+
tablesFilter.some(
|
|
812
|
+
<span class="fstat-no" title="function not covered" > (f</span>ilter: any) => <span class="cstat-no" title="statement not covered" >filter.toLowerCase() === key.toLowerCase()</span>
|
|
813
|
+
)
|
|
694
814
|
) {
|
|
695
815
|
<span class="cstat-no" title="statement not covered" > datasource.entities[key] = tables[key]</span>
|
|
696
816
|
}
|
|
@@ -703,8 +823,8 @@ exports.buildSchemaFromDb = <span class="fstat-no" title="function not covered"
|
|
|
703
823
|
const dbResp = <span class="cstat-no" title="statement not covered" >await db.put(datasource)</span>
|
|
704
824
|
<span class="cstat-no" title="statement not covered" > datasource._rev = dbResp.rev</span>
|
|
705
825
|
|
|
706
|
-
const response = <span class="cstat-no" title="statement not covered" >{ datasource }</span>
|
|
707
|
-
<span class="cstat-no" title="statement not covered" > if (error) {</span>
|
|
826
|
+
const response: any = <span class="cstat-no" title="statement not covered" >{ datasource }</span>
|
|
827
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (error) {</span>
|
|
708
828
|
<span class="cstat-no" title="statement not covered" > response.error = error</span>
|
|
709
829
|
}
|
|
710
830
|
<span class="cstat-no" title="statement not covered" > ctx.body = response</span>
|
|
@@ -713,16 +833,16 @@ exports.buildSchemaFromDb = <span class="fstat-no" title="function not covered"
|
|
|
713
833
|
/**
|
|
714
834
|
* Make sure all datasource entities have a display name selected
|
|
715
835
|
*/
|
|
716
|
-
|
|
836
|
+
function <span class="fstat-no" title="function not covered" >setDefaultDisplayColumns(</span>datasource: Datasource) {
|
|
717
837
|
//
|
|
718
|
-
<span class="cstat-no" title="statement not covered" > for (let entity of Object.values(datasource.entities)) {</span>
|
|
719
|
-
<span class="cstat-no" title="statement not covered" > if (entity.primaryDisplay) {</span>
|
|
838
|
+
<span class="cstat-no" title="statement not covered" > for (let entity of Object.values(datasource.entities || {})) {</span>
|
|
839
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (entity.primaryDisplay) {</span>
|
|
720
840
|
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
721
841
|
}
|
|
722
842
|
const notAutoColumn = <span class="cstat-no" title="statement not covered" >Object.values(entity.schema).find(</span>
|
|
723
|
-
<span class="fstat-no" title="function not covered" >
|
|
843
|
+
<span class="fstat-no" title="function not covered" > schema </span>=> <span class="cstat-no" title="statement not covered" >!schema.autocolumn</span>
|
|
724
844
|
)
|
|
725
|
-
<span class="cstat-no" title="statement not covered" > if (notAutoColumn) {</span>
|
|
845
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (notAutoColumn) {</span>
|
|
726
846
|
<span class="cstat-no" title="statement not covered" > entity.primaryDisplay = notAutoColumn.name</span>
|
|
727
847
|
}
|
|
728
848
|
}
|
|
@@ -731,9 +851,12 @@ const setDefaultDisplayColumns = <span class="fstat-no" title="function not cove
|
|
|
731
851
|
/**
|
|
732
852
|
* Check for variables that have been updated or removed and invalidate them.
|
|
733
853
|
*/
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
854
|
+
async function invalidateVariables(
|
|
855
|
+
existingDatasource: Datasource,
|
|
856
|
+
updatedDatasource: Datasource
|
|
857
|
+
) {
|
|
858
|
+
const existingVariables: any = existingDatasource.config<span class="branch-0 cbranch-no" title="branch not covered" >?.d</span>ynamicVariables
|
|
859
|
+
const updatedVariables: any = updatedDatasource.config<span class="branch-0 cbranch-no" title="branch not covered" >?.d</span>ynamicVariables
|
|
737
860
|
const toInvalidate = []
|
|
738
861
|
|
|
739
862
|
if (!existingVariables) {
|
|
@@ -745,14 +868,14 @@ const invalidateVariables = async (existingDatasource, updatedDatasource) =>
|
|
|
745
868
|
<span class="cstat-no" title="statement not covered" > toInvalidate.push(...existingVariables)</span>
|
|
746
869
|
} else {
|
|
747
870
|
// invaldate changed / removed
|
|
748
|
-
existingVariables.forEach(existing => {
|
|
871
|
+
existingVariables.forEach((existing: any) => {
|
|
749
872
|
const unchanged = updatedVariables.find(
|
|
750
|
-
<span class="fstat-no" title="function not covered" >
|
|
873
|
+
<span class="fstat-no" title="function not covered" > (u</span>pdated: any) =>
|
|
751
874
|
<span class="cstat-no" title="statement not covered" > existing.name === updated.name &&</span>
|
|
752
875
|
existing.queryId === updated.queryId &&
|
|
753
876
|
existing.value === updated.value
|
|
754
877
|
)
|
|
755
|
-
|
|
878
|
+
if (!unchanged) {
|
|
756
879
|
toInvalidate.push(existing)
|
|
757
880
|
}
|
|
758
881
|
})
|
|
@@ -760,8 +883,8 @@ const invalidateVariables = async (existingDatasource, updatedDatasource) =>
|
|
|
760
883
|
await invalidateDynamicVariables(toInvalidate)
|
|
761
884
|
}
|
|
762
885
|
|
|
763
|
-
|
|
764
|
-
const db = getAppDB()
|
|
886
|
+
export async function update(ctx: BBContext) {
|
|
887
|
+
const db = context.getAppDB()
|
|
765
888
|
const datasourceId = ctx.params.datasourceId
|
|
766
889
|
let datasource = await db.get(datasourceId)
|
|
767
890
|
const auth = datasource.config.auth
|
|
@@ -777,7 +900,7 @@ exports.update = async function (ctx) {
|
|
|
777
900
|
datasource._rev = response.rev
|
|
778
901
|
|
|
779
902
|
// Drain connection pools when configuration is changed
|
|
780
|
-
|
|
903
|
+
if (datasource.source) {
|
|
781
904
|
const source = await getIntegration(datasource.source)
|
|
782
905
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (source && source.pool) {
|
|
783
906
|
<span class="cstat-no" title="statement not covered" > await source.pool.end()</span>
|
|
@@ -789,8 +912,8 @@ exports.update = async function (ctx) {
|
|
|
789
912
|
ctx.body = { datasource }
|
|
790
913
|
}
|
|
791
914
|
|
|
792
|
-
|
|
793
|
-
const db = getAppDB()
|
|
915
|
+
export async function save(ctx: BBContext) {
|
|
916
|
+
const db = context.getAppDB()
|
|
794
917
|
const plus = ctx.request.body.datasource.plus
|
|
795
918
|
const fetchSchema = ctx.request.body.fetchSchema
|
|
796
919
|
|
|
@@ -813,34 +936,70 @@ exports.save = async function (ctx) {
|
|
|
813
936
|
datasource._rev = dbResp.rev
|
|
814
937
|
|
|
815
938
|
// Drain connection pools when configuration is changed
|
|
816
|
-
|
|
939
|
+
if (datasource.source) {
|
|
817
940
|
const source = await getIntegration(datasource.source)
|
|
818
941
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (source && source.pool) {
|
|
819
942
|
<span class="cstat-no" title="statement not covered" > await source.pool.end()</span>
|
|
820
943
|
}
|
|
821
944
|
}
|
|
822
945
|
|
|
823
|
-
const response = { datasource }
|
|
946
|
+
const response: any = { datasource }
|
|
824
947
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (schemaError) {
|
|
825
948
|
<span class="cstat-no" title="statement not covered" > response.error = schemaError</span>
|
|
826
949
|
}
|
|
827
950
|
ctx.body = response
|
|
828
951
|
}
|
|
829
952
|
|
|
830
|
-
|
|
831
|
-
const db = getAppDB()
|
|
953
|
+
async function <span class="fstat-no" title="function not covered" >destroyInternalTablesBySourceId(</span>datasourceId: string) {
|
|
954
|
+
const db = <span class="cstat-no" title="statement not covered" >context.getAppDB()</span>
|
|
955
|
+
|
|
956
|
+
// Get all internal tables
|
|
957
|
+
const internalTables = <span class="cstat-no" title="statement not covered" >await db.allDocs(</span>
|
|
958
|
+
getTableParams(null, {
|
|
959
|
+
include_docs: true,
|
|
960
|
+
})
|
|
961
|
+
)
|
|
962
|
+
|
|
963
|
+
// Filter by datasource and return the docs.
|
|
964
|
+
const datasourceTableDocs = <span class="cstat-no" title="statement not covered" >internalTables.rows.reduce(</span>
|
|
965
|
+
<span class="fstat-no" title="function not covered" > (a</span>cc: any, table: any) => {
|
|
966
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (table.doc.sourceId == datasourceId) {</span>
|
|
967
|
+
<span class="cstat-no" title="statement not covered" > acc.push(table.doc)</span>
|
|
968
|
+
}
|
|
969
|
+
<span class="cstat-no" title="statement not covered" > return acc</span>
|
|
970
|
+
},
|
|
971
|
+
[]
|
|
972
|
+
)
|
|
973
|
+
|
|
974
|
+
// Destroy the tables.
|
|
975
|
+
<span class="cstat-no" title="statement not covered" > for (const table of datasourceTableDocs) {</span>
|
|
976
|
+
<span class="cstat-no" title="statement not covered" > await tableDestroy({</span>
|
|
977
|
+
params: {
|
|
978
|
+
tableId: table._id,
|
|
979
|
+
},
|
|
980
|
+
})
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
|
|
984
|
+
export async function destroy(ctx: BBContext) {
|
|
985
|
+
const db = context.getAppDB()
|
|
832
986
|
const datasourceId = ctx.params.datasourceId
|
|
833
987
|
|
|
834
988
|
const datasource = await db.get(datasourceId)
|
|
835
989
|
// Delete all queries for the datasource
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
990
|
+
|
|
991
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (datasource.type === dbCore.BUDIBASE_DATASOURCE_TYPE) {
|
|
992
|
+
<span class="cstat-no" title="statement not covered" > await destroyInternalTablesBySourceId(datasourceId)</span>
|
|
993
|
+
} else {
|
|
994
|
+
const queries = await db.allDocs(getQueryParams(datasourceId, null))
|
|
995
|
+
await db.bulkDocs(
|
|
996
|
+
queries.rows.map((row: any) => ({
|
|
997
|
+
_id: row.id,
|
|
998
|
+
_rev: row.value.rev,
|
|
999
|
+
_deleted: true,
|
|
1000
|
+
}))
|
|
1001
|
+
)
|
|
1002
|
+
}
|
|
844
1003
|
|
|
845
1004
|
// delete the datasource
|
|
846
1005
|
await db.remove(datasourceId, ctx.params.revId)
|
|
@@ -850,39 +1009,39 @@ exports.destroy = async function (ctx) {
|
|
|
850
1009
|
ctx.status = 200
|
|
851
1010
|
}
|
|
852
1011
|
|
|
853
|
-
|
|
854
|
-
const database = getAppDB()
|
|
1012
|
+
export async function find(ctx: BBContext) {
|
|
1013
|
+
const database = context.getAppDB()
|
|
855
1014
|
ctx.body = await database.get(ctx.params.datasourceId)
|
|
856
1015
|
}
|
|
857
1016
|
|
|
858
1017
|
// dynamic query functionality
|
|
859
|
-
|
|
1018
|
+
export async function query(ctx: BBContext) {
|
|
860
1019
|
const queryJson = ctx.request.body
|
|
861
1020
|
try {
|
|
862
1021
|
ctx.body = await getDatasourceAndQuery(queryJson)
|
|
863
|
-
} catch (err) {
|
|
1022
|
+
} catch (err: any) {
|
|
864
1023
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, err)</span>
|
|
865
1024
|
}
|
|
866
1025
|
}
|
|
867
1026
|
|
|
868
|
-
function <span class="fstat-no" title="function not covered" >getErrorTables(</span>errors, errorType) {
|
|
1027
|
+
function <span class="fstat-no" title="function not covered" >getErrorTables(</span>errors: any, errorType: string) {
|
|
869
1028
|
<span class="cstat-no" title="statement not covered" > return Object.entries(errors)</span>
|
|
870
|
-
.filter(<span class="fstat-no" title="function not covered" >
|
|
1029
|
+
.filter(<span class="fstat-no" title="function not covered" >entry </span>=> <span class="cstat-no" title="statement not covered" >entry[1] === errorType)</span>
|
|
871
1030
|
.map(<span class="fstat-no" title="function not covered" >([</span>name]) => <span class="cstat-no" title="statement not covered" >name)</span>
|
|
872
1031
|
}
|
|
873
1032
|
|
|
874
|
-
function <span class="fstat-no" title="function not covered" >updateError(</span>error, newError, tables) {
|
|
875
|
-
<span class="cstat-no" title="statement not covered" > if (!error) {</span>
|
|
1033
|
+
function <span class="fstat-no" title="function not covered" >updateError(</span>error: any, newError: any, tables: string[]) {
|
|
1034
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!error) {</span>
|
|
876
1035
|
<span class="cstat-no" title="statement not covered" > error = ""</span>
|
|
877
1036
|
}
|
|
878
|
-
<span class="cstat-no" title="statement not covered" > if (error.length > 0) {</span>
|
|
1037
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (error.length > 0) {</span>
|
|
879
1038
|
<span class="cstat-no" title="statement not covered" > error += "\n"</span>
|
|
880
1039
|
}
|
|
881
1040
|
<span class="cstat-no" title="statement not covered" > error += `${newError} ${tables.join(", ")}`</span>
|
|
882
1041
|
<span class="cstat-no" title="statement not covered" > return error</span>
|
|
883
1042
|
}
|
|
884
1043
|
|
|
885
|
-
|
|
1044
|
+
async function <span class="fstat-no" title="function not covered" >buildSchemaHelper(</span>datasource: Datasource) {
|
|
886
1045
|
const Connector = <span class="cstat-no" title="statement not covered" >await getIntegration(datasource.source)</span>
|
|
887
1046
|
|
|
888
1047
|
// Connect to the DB and build the schema
|
|
@@ -891,17 +1050,17 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
|
|
|
891
1050
|
|
|
892
1051
|
const errors = <span class="cstat-no" title="statement not covered" >connector.schemaErrors</span>
|
|
893
1052
|
let error = <span class="cstat-no" title="statement not covered" >null</span>
|
|
894
|
-
<span class="cstat-no" title="statement not covered" > if (errors && Object.keys(errors).length > 0) {</span>
|
|
1053
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (errors && Object.keys(errors).length > 0) {</span>
|
|
895
1054
|
const noKey = <span class="cstat-no" title="statement not covered" >getErrorTables(errors, BuildSchemaErrors.NO_KEY)</span>
|
|
896
1055
|
const invalidCol = <span class="cstat-no" title="statement not covered" >getErrorTables(errors, BuildSchemaErrors.INVALID_COLUMN)</span>
|
|
897
|
-
<span class="cstat-no" title="statement not covered" > if (noKey.length) {</span>
|
|
1056
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (noKey.length) {</span>
|
|
898
1057
|
<span class="cstat-no" title="statement not covered" > error = updateError(</span>
|
|
899
1058
|
error,
|
|
900
1059
|
"No primary key constraint found for the following:",
|
|
901
1060
|
noKey
|
|
902
1061
|
)
|
|
903
1062
|
}
|
|
904
|
-
<span class="cstat-no" title="statement not covered" > if (invalidCol.length) {</span>
|
|
1063
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (invalidCol.length) {</span>
|
|
905
1064
|
const invalidCols = <span class="cstat-no" title="statement not covered" >Object.values(InvalidColumns).join(", ")</span>
|
|
906
1065
|
<span class="cstat-no" title="statement not covered" > error = updateError(</span>
|
|
907
1066
|
error,
|
|
@@ -919,16 +1078,16 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
|
|
|
919
1078
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
920
1079
|
Code coverage generated by
|
|
921
1080
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
922
|
-
at
|
|
1081
|
+
at Tue Nov 29 2022 11:32:32 GMT+0000 (Coordinated Universal Time)
|
|
923
1082
|
</div>
|
|
924
|
-
<script src="
|
|
1083
|
+
<script src="../../../prettify.js"></script>
|
|
925
1084
|
<script>
|
|
926
1085
|
window.onload = function () {
|
|
927
1086
|
prettyPrint();
|
|
928
1087
|
};
|
|
929
1088
|
</script>
|
|
930
|
-
<script src="
|
|
931
|
-
<script src="
|
|
1089
|
+
<script src="../../../sorter.js"></script>
|
|
1090
|
+
<script src="../../../block-navigation.js"></script>
|
|
932
1091
|
</body>
|
|
933
1092
|
</html>
|
|
934
1093
|
|