@budibase/server 2.2.26 → 2.2.27
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/Dockerfile +1 -1
- package/__mocks__/aws-sdk.ts +19 -0
- package/__mocks__/node-fetch.ts +80 -0
- package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
- package/builder/assets/bg.29e85dd5.png +0 -0
- package/builder/assets/bulgaria.bd68393d.png +0 -0
- package/builder/assets/covanta.72c46c1e.png +0 -0
- package/builder/assets/index.3dd03883.css +6 -0
- package/builder/assets/index.56a96240.js +1802 -0
- package/builder/assets/schnellecke.cf1837a8.png +0 -0
- package/builder/index.html +3 -3
- package/coverage/clover.xml +6618 -6528
- package/coverage/coverage-final.json +282 -276
- package/coverage/lcov-report/index.html +489 -444
- package/coverage/lcov-report/src/api/controllers/analytics.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/application.ts.html +362 -266
- package/coverage/lcov-report/src/api/controllers/auth.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/automation.ts.html +61 -61
- package/coverage/lcov-report/src/api/controllers/backup.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/cloud.ts.html +93 -81
- package/coverage/lcov-report/src/api/controllers/component.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/datasource.ts.html +122 -98
- package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +21 -18
- package/coverage/lcov-report/src/api/controllers/deploy/index.html +21 -21
- package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +142 -196
- package/coverage/lcov-report/src/api/controllers/dev.ts.html +28 -28
- package/coverage/lcov-report/src/api/controllers/index.html +115 -115
- package/coverage/lcov-report/src/api/controllers/integration.ts.html +5 -5
- package/coverage/lcov-report/src/api/controllers/layout.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/metadata.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/migrations.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/permission.ts.html +14 -14
- package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +62 -62
- package/coverage/lcov-report/src/api/controllers/plugin/index.html +72 -72
- package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +150 -135
- package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +56 -56
- package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +75 -24
- package/coverage/lcov-report/src/api/controllers/public/index.html +58 -58
- package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +7 -7
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +25 -25
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +15 -15
- package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/users.ts.html +27 -27
- package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +23 -23
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +16 -16
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/index.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/index.ts.html +131 -107
- package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/role.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/routing.ts.html +10 -10
- package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +56 -41
- package/coverage/lcov-report/src/api/controllers/row/external.ts.html +87 -57
- package/coverage/lcov-report/src/api/controllers/row/index.html +66 -66
- package/coverage/lcov-report/src/api/controllers/row/index.ts.html +37 -37
- package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +181 -106
- package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +146 -146
- package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +44 -35
- package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +156 -39
- package/coverage/lcov-report/src/api/controllers/screen.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/script.ts.html +19 -19
- package/coverage/lcov-report/src/api/controllers/static/index.html +18 -18
- package/coverage/lcov-report/src/api/controllers/static/index.ts.html +56 -71
- package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +60 -60
- package/coverage/lcov-report/src/api/controllers/table/external.ts.html +56 -50
- package/coverage/lcov-report/src/api/controllers/table/index.html +48 -48
- package/coverage/lcov-report/src/api/controllers/table/index.ts.html +157 -70
- package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +58 -61
- package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +109 -112
- package/coverage/lcov-report/src/api/controllers/templates.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/user.ts.html +159 -135
- package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +64 -19
- package/coverage/lcov-report/src/api/controllers/view/index.html +38 -38
- package/coverage/lcov-report/src/api/controllers/view/index.ts.html +97 -133
- package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +37 -37
- package/coverage/lcov-report/src/api/controllers/webhook.ts.html +69 -63
- package/coverage/lcov-report/src/api/index.html +15 -15
- package/coverage/lcov-report/src/api/index.ts.html +40 -40
- package/coverage/lcov-report/src/api/routes/analytics.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/apikeys.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/application.ts.html +46 -13
- package/coverage/lcov-report/src/api/routes/auth.ts.html +9 -9
- package/coverage/lcov-report/src/api/routes/automation.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/backup.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/cloud.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/component.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/datasource.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/deploy.ts.html +11 -14
- package/coverage/lcov-report/src/api/routes/dev.ts.html +17 -17
- package/coverage/lcov-report/src/api/routes/index.html +68 -68
- package/coverage/lcov-report/src/api/routes/index.ts.html +49 -40
- package/coverage/lcov-report/src/api/routes/integration.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/layout.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/metadata.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/migrations.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/permission.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/plugin.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/public/applications.ts.html +147 -15
- package/coverage/lcov-report/src/api/routes/public/index.html +27 -27
- package/coverage/lcov-report/src/api/routes/public/index.ts.html +60 -60
- package/coverage/lcov-report/src/api/routes/public/middleware/index.html +15 -15
- package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +28 -16
- package/coverage/lcov-report/src/api/routes/public/queries.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/public/rows.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tables.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tests/index.html +7 -7
- package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +5 -5
- package/coverage/lcov-report/src/api/routes/public/users.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +21 -21
- package/coverage/lcov-report/src/api/routes/public/utils/index.html +5 -5
- package/coverage/lcov-report/src/api/routes/query.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/role.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/routing.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/row.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/screen.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/script.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/static.ts.html +18 -18
- package/coverage/lcov-report/src/api/routes/table.ts.html +29 -98
- package/coverage/lcov-report/src/api/routes/templates.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +27 -27
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +23 -23
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +33 -33
- package/coverage/lcov-report/src/api/routes/user.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/utils/index.html +3 -3
- package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +44 -44
- package/coverage/lcov-report/src/api/routes/view.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/webhook.ts.html +13 -13
- package/coverage/lcov-report/src/app.ts.html +53 -47
- package/coverage/lcov-report/src/automations/actions.ts.html +31 -31
- package/coverage/lcov-report/src/automations/automationUtils.ts.html +127 -55
- package/coverage/lcov-report/src/automations/bullboard.ts.html +19 -19
- package/coverage/lcov-report/src/automations/index.html +54 -54
- package/coverage/lcov-report/src/automations/index.ts.html +23 -23
- package/coverage/lcov-report/src/automations/logging/index.html +3 -3
- package/coverage/lcov-report/src/automations/logging/index.ts.html +15 -15
- package/coverage/lcov-report/src/automations/steps/bash.ts.html +34 -34
- package/coverage/lcov-report/src/automations/steps/createRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/delay.ts.html +7 -7
- package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/discord.ts.html +33 -33
- package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +35 -35
- package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +31 -31
- package/coverage/lcov-report/src/automations/steps/filter.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/index.html +129 -129
- package/coverage/lcov-report/src/automations/steps/integromat.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/loop.ts.html +5 -5
- package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +43 -43
- package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +28 -28
- package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/slack.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/utils.ts.html +18 -18
- package/coverage/lcov-report/src/automations/steps/zapier.ts.html +22 -22
- package/coverage/lcov-report/src/automations/tests/utilities/index.html +15 -15
- package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +32 -32
- package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/index.html +17 -17
- package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +10 -10
- package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggers.ts.html +53 -38
- package/coverage/lcov-report/src/automations/utils.ts.html +80 -80
- package/coverage/lcov-report/src/constants/index.html +19 -19
- package/coverage/lcov-report/src/constants/index.ts.html +103 -103
- package/coverage/lcov-report/src/constants/layouts.ts.html +9 -9
- package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
- package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -45
- package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/index.html +43 -43
- package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/dynamoClient.ts.html +26 -26
- package/coverage/lcov-report/src/db/inMemoryView.ts.html +13 -13
- package/coverage/lcov-report/src/db/index.html +34 -34
- package/coverage/lcov-report/src/db/index.ts.html +10 -10
- package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +38 -38
- package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +7 -7
- package/coverage/lcov-report/src/db/linkedRows/index.html +37 -37
- package/coverage/lcov-report/src/db/linkedRows/index.ts.html +40 -40
- package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +25 -25
- package/coverage/lcov-report/src/db/newid.ts.html +5 -5
- package/coverage/lcov-report/src/db/utils.ts.html +90 -90
- package/coverage/lcov-report/src/definitions/automations.ts.html +9 -6
- package/coverage/lcov-report/src/definitions/index.html +5 -20
- package/coverage/lcov-report/src/environment.ts.html +44 -32
- package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +14 -14
- package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +8 -8
- package/coverage/lcov-report/src/events/index.html +20 -20
- package/coverage/lcov-report/src/events/index.ts.html +7 -7
- package/coverage/lcov-report/src/events/utils.ts.html +11 -11
- package/coverage/lcov-report/src/index.html +47 -47
- package/coverage/lcov-report/src/index.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/airtable.ts.html +10 -10
- package/coverage/lcov-report/src/integrations/arangodb.ts.html +9 -9
- package/coverage/lcov-report/src/integrations/base/index.html +29 -29
- package/coverage/lcov-report/src/integrations/base/query.ts.html +15 -9
- package/coverage/lcov-report/src/integrations/base/sql.ts.html +38 -38
- package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +23 -23
- package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
- package/coverage/lcov-report/src/integrations/couchdb.ts.html +109 -31
- package/coverage/lcov-report/src/integrations/dynamodb.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +27 -15
- package/coverage/lcov-report/src/integrations/firebase.ts.html +12 -12
- package/coverage/lcov-report/src/integrations/googlesheets.ts.html +42 -42
- package/coverage/lcov-report/src/integrations/index.html +130 -130
- package/coverage/lcov-report/src/integrations/index.ts.html +50 -62
- package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/mongodb.ts.html +421 -289
- package/coverage/lcov-report/src/integrations/mysql.ts.html +28 -28
- package/coverage/lcov-report/src/integrations/oracle.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/postgres.ts.html +54 -54
- package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
- package/coverage/lcov-report/src/integrations/queries/sql.ts.html +24 -159
- package/coverage/lcov-report/src/integrations/redis.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/rest.ts.html +43 -52
- package/coverage/lcov-report/src/integrations/s3.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/snowflake.ts.html +15 -15
- 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 +54 -54
- package/coverage/lcov-report/src/middleware/appInfo.ts.html +11 -11
- package/coverage/lcov-report/src/middleware/authorized.ts.html +49 -37
- package/coverage/lcov-report/src/middleware/builder.ts.html +26 -26
- package/coverage/lcov-report/src/middleware/currentapp.ts.html +50 -47
- package/coverage/lcov-report/src/middleware/index.html +40 -40
- package/coverage/lcov-report/src/middleware/joi-validator.ts.html +10 -10
- package/coverage/lcov-report/src/middleware/publicApi.ts.html +9 -9
- package/coverage/lcov-report/src/middleware/resourceId.ts.html +23 -23
- package/coverage/lcov-report/src/middleware/selfhost.ts.html +2 -2
- package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +31 -31
- package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +21 -21
- package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +17 -14
- package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +19 -19
- package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +9 -9
- package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +23 -23
- package/coverage/lcov-report/src/migrations/functions/backfill/index.html +26 -26
- package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +14 -14
- package/coverage/lcov-report/src/migrations/functions/index.html +18 -18
- package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +3 -3
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/index.html +15 -15
- package/coverage/lcov-report/src/migrations/index.ts.html +43 -43
- package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/tests/index.html +6 -6
- package/coverage/lcov-report/src/migrations/tests/structures.ts.html +3 -3
- package/coverage/lcov-report/src/sdk/app/applications/index.html +20 -20
- package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +34 -34
- package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +15 -15
- package/coverage/lcov-report/src/sdk/app/automations/index.html +7 -7
- package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +8 -8
- package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +30 -30
- package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +45 -57
- package/coverage/lcov-report/src/sdk/app/backups/index.html +42 -42
- package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +7 -7
- package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +73 -73
- package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
- package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
- package/coverage/lcov-report/src/{utilities/statusCodes.ts.html → sdk/app/queries/index.ts.html} +22 -28
- package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
- package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
- package/coverage/lcov-report/src/sdk/app/tables/index.html +15 -15
- package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +29 -20
- package/coverage/lcov-report/src/sdk/index.html +7 -7
- package/coverage/lcov-report/src/sdk/index.ts.html +24 -12
- package/coverage/lcov-report/src/sdk/users/index.html +10 -10
- package/coverage/lcov-report/src/sdk/users/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/users/utils.ts.html +35 -35
- package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
- package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
- package/coverage/lcov-report/src/startup.ts.html +48 -63
- package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +218 -152
- package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +20 -20
- package/coverage/lcov-report/src/tests/utilities/index.html +33 -33
- package/coverage/lcov-report/src/tests/utilities/index.ts.html +2 -2
- package/coverage/lcov-report/src/tests/utilities/structures.ts.html +235 -46
- package/coverage/lcov-report/src/threads/automation.ts.html +212 -251
- package/coverage/lcov-report/src/threads/index.html +46 -46
- package/coverage/lcov-report/src/threads/index.ts.html +39 -39
- package/coverage/lcov-report/src/threads/query.ts.html +140 -101
- package/coverage/lcov-report/src/threads/utils.ts.html +29 -29
- package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
- package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +343 -0
- package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +20 -20
- package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +601 -0
- package/coverage/lcov-report/src/utilities/fileSystem/index.html +88 -28
- package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +20 -1049
- package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +277 -0
- package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +193 -0
- package/coverage/lcov-report/src/utilities/global.ts.html +60 -60
- package/coverage/lcov-report/src/utilities/index.html +89 -119
- package/coverage/lcov-report/src/utilities/index.ts.html +40 -172
- package/coverage/lcov-report/src/utilities/redis.ts.html +38 -38
- package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/src/utilities/routing/index.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/rowProcessor/index.html +34 -34
- package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +102 -75
- package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +54 -54
- package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +174 -234
- package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +33 -33
- package/coverage/lcov-report/src/utilities/security.ts.html +13 -13
- package/coverage/lcov-report/src/utilities/usageQuota/index.html +9 -9
- package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +38 -38
- package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +3 -3
- package/coverage/lcov-report/src/utilities/users.ts.html +7 -7
- package/coverage/lcov-report/src/utilities/workerRequests.ts.html +89 -62
- package/coverage/lcov-report/src/watch.ts.html +20 -20
- package/coverage/lcov-report/src/websocket.ts.html +15 -15
- package/coverage/lcov.info +13499 -12800
- package/dist/api/controllers/application.js +120 -109
- package/dist/api/controllers/cloud.js +6 -2
- package/dist/api/controllers/datasource.js +24 -15
- package/dist/api/controllers/deploy/index.js +43 -60
- package/dist/api/controllers/plugin/index.js +6 -6
- package/dist/api/controllers/public/applications.js +22 -1
- package/dist/api/controllers/query/index.js +23 -13
- package/dist/api/controllers/row/ExternalRequest.js +12 -4
- package/dist/api/controllers/row/external.js +20 -13
- package/dist/api/controllers/row/internal.js +52 -27
- package/dist/api/controllers/row/staticFormula.js +1 -1
- package/dist/api/controllers/row/utils.js +35 -3
- package/dist/api/controllers/static/index.js +47 -47
- package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/dist/api/controllers/table/external.js +16 -35
- package/dist/api/controllers/table/index.js +44 -15
- package/dist/api/controllers/table/internal.js +6 -7
- package/dist/api/controllers/table/utils.js +9 -9
- package/dist/api/controllers/user.js +14 -6
- package/dist/api/controllers/view/exporters.js +22 -6
- package/dist/api/controllers/view/index.js +23 -58
- package/dist/api/controllers/view/viewBuilder.js +15 -2
- package/dist/api/controllers/webhook.js +45 -43
- package/dist/api/routes/analytics.js +2 -1
- package/dist/api/routes/apikeys.js +2 -1
- package/dist/api/routes/application.js +5 -1
- package/dist/api/routes/auth.js +2 -1
- package/dist/api/routes/automation.js +2 -1
- package/dist/api/routes/backup.js +2 -1
- package/dist/api/routes/cloud.js +2 -1
- package/dist/api/routes/component.js +2 -1
- package/dist/api/routes/datasource.js +2 -1
- package/dist/api/routes/deploy.js +3 -3
- package/dist/api/routes/dev.js +2 -1
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/integration.js +2 -1
- package/dist/api/routes/layout.js +2 -1
- package/dist/api/routes/metadata.js +2 -1
- package/dist/api/routes/migrations.js +2 -1
- package/dist/api/routes/permission.js +2 -1
- package/dist/api/routes/public/applications.js +37 -0
- package/dist/api/routes/public/middleware/mapper.js +3 -0
- package/dist/api/routes/query.js +2 -1
- package/dist/api/routes/role.js +2 -1
- package/dist/api/routes/routing.js +2 -1
- package/dist/api/routes/row.js +2 -2
- package/dist/api/routes/screen.js +2 -1
- package/dist/api/routes/script.js +2 -1
- package/dist/api/routes/static.js +6 -5
- package/dist/api/routes/table.js +8 -38
- package/dist/api/routes/templates.js +2 -1
- package/dist/api/routes/user.js +2 -1
- package/dist/api/routes/utils/validators.js +1 -1
- package/dist/api/routes/view.js +2 -1
- package/dist/api/routes/webhook.js +2 -1
- package/dist/app.js +9 -7
- package/dist/automations/automationUtils.js +26 -1
- package/dist/automations/logging/index.js +5 -25
- package/dist/automations/triggers.js +1 -0
- package/dist/db/index.js +5 -2
- package/dist/db/linkedRows/LinkController.js +2 -1
- package/dist/db/linkedRows/LinkDocument.js +2 -1
- package/dist/db/newid.js +4 -2
- package/dist/definitions/datasource.js +0 -6
- package/dist/environment.js +7 -2
- package/dist/events/AutomationEmitter.js +2 -1
- package/dist/events/BudibaseEmitter.js +2 -1
- package/dist/events/index.js +2 -1
- package/dist/index.js +2 -2
- package/dist/integrations/base/query.js +7 -2
- package/dist/integrations/base/sqlTable.js +14 -14
- package/dist/integrations/couchdb.js +34 -8
- package/dist/integrations/dynamodb.js +8 -5
- package/dist/integrations/elasticsearch.js +7 -3
- package/dist/integrations/googlesheets.js +1 -1
- package/dist/integrations/index.js +6 -7
- package/dist/integrations/mongodb.js +311 -271
- package/dist/integrations/mysql.js +2 -2
- package/dist/integrations/queries/sql.js +73 -100
- package/dist/integrations/rest.js +16 -18
- package/dist/middleware/authorized.js +2 -1
- package/dist/middleware/builder.js +4 -2
- package/dist/middleware/currentapp.js +6 -3
- package/dist/middleware/publicApi.js +4 -2
- package/dist/middleware/selfhost.js +4 -1
- package/dist/migrations/functions/backfill/global/configs.js +4 -4
- package/dist/package.json +12 -8
- package/dist/sdk/app/backups/imports.js +2 -6
- package/dist/sdk/app/datasources/datasources.js +147 -0
- package/dist/sdk/app/datasources/index.js +27 -0
- package/dist/sdk/app/queries/index.js +27 -0
- package/dist/sdk/app/queries/queries.js +60 -0
- package/dist/sdk/app/tables/index.js +6 -2
- package/dist/sdk/index.js +4 -0
- package/dist/sdk/utils/index.js +29 -0
- package/dist/startup.js +17 -17
- package/dist/threads/automation.js +22 -35
- package/dist/threads/index.js +4 -4
- package/dist/threads/query.js +27 -13
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/app.js +97 -0
- package/dist/utilities/fileSystem/clientLibrary.js +3 -3
- package/dist/utilities/fileSystem/filesystem.js +184 -0
- package/dist/utilities/fileSystem/index.js +18 -342
- package/dist/utilities/fileSystem/plugin.js +66 -0
- package/dist/utilities/fileSystem/template.js +47 -0
- package/dist/utilities/index.js +1 -44
- package/dist/utilities/rowProcessor/index.js +12 -4
- package/dist/utilities/schema.js +108 -0
- package/dist/utilities/scriptRunner.js +2 -1
- package/dist/utilities/statusCodes.js +2 -1
- package/dist/utilities/workerRequests.js +2 -0
- package/dist/watch.js +2 -25
- package/jest.config.ts +5 -2
- package/package.json +13 -9
- package/scripts/dev/manage.js +3 -2
- package/specs/openapi.json +84 -0
- package/specs/openapi.yaml +53 -0
- package/specs/resources/application.js +19 -0
- package/src/api/controllers/application.ts +142 -110
- package/src/api/controllers/auth.ts +2 -2
- package/src/api/controllers/cloud.ts +10 -6
- package/src/api/controllers/datasource.ts +33 -25
- package/src/api/controllers/deploy/Deployment.ts +1 -0
- package/src/api/controllers/deploy/index.ts +40 -58
- package/src/api/controllers/plugin/index.ts +14 -9
- package/src/api/controllers/public/applications.ts +17 -0
- package/src/api/controllers/query/index.ts +49 -41
- package/src/api/controllers/row/ExternalRequest.ts +8 -3
- package/src/api/controllers/row/external.ts +24 -14
- package/src/api/controllers/row/internal.ts +66 -41
- package/src/api/controllers/row/staticFormula.ts +5 -2
- package/src/api/controllers/row/utils.ts +42 -3
- package/src/api/controllers/static/index.ts +22 -27
- package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/src/api/controllers/table/external.ts +18 -16
- package/src/api/controllers/table/index.ts +46 -17
- package/src/api/controllers/table/internal.ts +6 -7
- package/src/api/controllers/table/utils.ts +12 -13
- package/src/api/controllers/user.ts +21 -13
- package/src/api/controllers/view/exporters.ts +20 -5
- package/src/api/controllers/view/index.ts +30 -42
- package/src/api/controllers/view/tests/viewBuilder.spec.js +1 -1
- package/src/api/controllers/view/viewBuilder.ts +1 -1
- package/src/api/controllers/webhook.ts +48 -46
- package/src/api/routes/analytics.ts +1 -1
- package/src/api/routes/apikeys.ts +1 -1
- package/src/api/routes/application.ts +12 -1
- package/src/api/routes/auth.ts +1 -1
- package/src/api/routes/automation.ts +1 -1
- package/src/api/routes/backup.ts +1 -1
- package/src/api/routes/cloud.ts +1 -1
- package/src/api/routes/component.ts +1 -1
- package/src/api/routes/datasource.ts +1 -1
- package/src/api/routes/deploy.ts +1 -2
- package/src/api/routes/dev.ts +1 -1
- package/src/api/routes/index.ts +6 -3
- package/src/api/routes/integration.ts +1 -1
- package/src/api/routes/layout.ts +1 -1
- package/src/api/routes/metadata.ts +1 -1
- package/src/api/routes/migrations.ts +1 -1
- package/src/api/routes/permission.ts +1 -1
- package/src/api/routes/public/applications.ts +44 -0
- package/src/api/routes/public/middleware/mapper.ts +4 -0
- package/src/api/routes/query.ts +1 -1
- package/src/api/routes/role.ts +1 -1
- package/src/api/routes/routing.ts +1 -1
- package/src/api/routes/row.ts +1 -1
- package/src/api/routes/screen.ts +1 -1
- package/src/api/routes/script.ts +1 -1
- package/src/api/routes/static.ts +2 -2
- package/src/api/routes/table.ts +16 -39
- package/src/api/routes/templates.ts +1 -1
- package/src/api/routes/tests/__snapshots__/{datasource.spec.js.snap → datasource.spec.ts.snap} +0 -0
- package/src/api/routes/tests/{application.spec.js → application.spec.ts} +94 -18
- package/src/api/routes/tests/{backup.spec.js → backup.spec.ts} +17 -6
- package/src/api/routes/tests/cloud.spec.ts +65 -0
- package/src/api/routes/tests/data/budibase-component-1.0.1.tgz +0 -0
- package/src/api/routes/tests/data/comment-box-1.0.2.tar.gz +0 -0
- package/src/api/routes/tests/data/export-test.tar.gz +0 -0
- package/src/api/routes/tests/{datasource.spec.js → datasource.spec.ts} +56 -14
- package/src/api/routes/tests/misc.spec.js +4 -10
- package/src/api/routes/tests/permissions.spec.js +1 -1
- package/src/api/routes/tests/plugin.spec.ts +179 -0
- package/src/api/routes/tests/routing.spec.js +1 -2
- package/src/api/routes/tests/row.spec.js +4 -2
- package/src/api/routes/tests/static.spec.js +2 -17
- package/src/api/routes/tests/table.spec.js +16 -32
- package/src/api/routes/tests/user.spec.js +105 -0
- package/src/api/routes/tests/utilities/TestFunctions.ts +1 -1
- package/src/api/routes/tests/utilities/index.ts +2 -2
- package/src/api/routes/tests/webhook.spec.js +1 -1
- package/src/api/routes/user.ts +1 -1
- package/src/api/routes/utils/validators.ts +1 -1
- package/src/api/routes/view.ts +1 -1
- package/src/api/routes/webhook.ts +1 -1
- package/src/app.ts +5 -3
- package/src/automations/automationUtils.ts +24 -0
- package/src/automations/logging/index.ts +1 -1
- package/src/automations/tests/bash.spec.js +34 -0
- package/src/automations/tests/discord.spec.js +27 -0
- package/src/automations/tests/executeQuery.spec.js +49 -0
- package/src/automations/tests/executeScript.spec.js +48 -0
- package/src/automations/tests/loop.spec.ts +45 -0
- package/src/automations/tests/sendSmtpEmail.spec.js +71 -0
- package/src/automations/tests/serverLog.spec.js +22 -0
- package/src/automations/tests/utilities/index.ts +2 -2
- package/src/automations/tests/zapier.spec.js +27 -0
- package/src/automations/triggers.ts +6 -1
- package/src/automations/unitTests/automationUtils.spec.ts +65 -0
- package/src/db/index.ts +1 -1
- package/src/db/linkedRows/LinkController.ts +1 -1
- package/src/db/linkedRows/LinkDocument.ts +1 -1
- package/src/db/newid.ts +1 -1
- package/src/db/tests/linkController.spec.js +1 -1
- package/src/definitions/automations.ts +1 -0
- package/src/definitions/datasource.ts +0 -41
- package/src/definitions/openapi.ts +10 -0
- package/src/environment.ts +6 -2
- package/src/events/AutomationEmitter.ts +1 -1
- package/src/events/BudibaseEmitter.ts +1 -1
- package/src/events/index.ts +1 -1
- package/src/index.ts +1 -1
- package/src/integrations/base/query.ts +3 -1
- package/src/integrations/base/sqlTable.ts +1 -1
- package/src/integrations/couchdb.ts +40 -14
- package/src/integrations/dynamodb.ts +3 -3
- package/src/integrations/elasticsearch.ts +8 -4
- package/src/integrations/googlesheets.ts +1 -1
- package/src/integrations/index.ts +5 -9
- package/src/integrations/mongodb.ts +315 -271
- package/src/integrations/mysql.ts +1 -1
- package/src/integrations/queries/sql.ts +5 -50
- package/src/integrations/rest.ts +16 -19
- package/src/integrations/tests/couchdb.spec.ts +33 -21
- package/src/integrations/tests/rest.spec.ts +19 -15
- package/src/middleware/authorized.ts +5 -1
- package/src/middleware/builder.ts +1 -1
- package/src/middleware/currentapp.ts +4 -3
- package/src/middleware/publicApi.ts +1 -1
- package/src/middleware/selfhost.ts +1 -1
- package/src/middleware/tests/authorized.spec.js +1 -1
- package/src/middleware/tests/currentapp.spec.js +1 -1
- package/src/middleware/tests/selfhost.spec.js +1 -1
- package/src/migrations/functions/backfill/global/configs.ts +5 -4
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
- package/src/sdk/app/backups/imports.ts +2 -6
- package/src/sdk/app/datasources/datasources.ts +136 -0
- package/src/sdk/app/datasources/index.ts +5 -0
- package/src/sdk/app/queries/index.ts +5 -0
- package/src/sdk/app/queries/queries.ts +50 -0
- package/src/sdk/app/tables/index.ts +6 -3
- package/src/sdk/index.ts +4 -0
- package/src/sdk/tests/attachments.spec.ts +1 -4
- package/src/sdk/utils/index.ts +16 -0
- package/src/startup.ts +3 -8
- package/src/tests/jestEnv.ts +13 -0
- package/src/tests/jestSetup.ts +4 -15
- package/src/tests/utilities/TestConfiguration.ts +38 -16
- package/src/tests/utilities/structures.ts +65 -2
- package/src/threads/automation.ts +22 -35
- package/src/threads/definitions.ts +3 -0
- package/src/threads/index.ts +1 -1
- package/src/threads/query.ts +28 -15
- package/src/utilities/fileSystem/app.ts +86 -0
- package/src/utilities/fileSystem/clientLibrary.ts +1 -1
- package/src/utilities/fileSystem/filesystem.ts +172 -0
- package/src/utilities/fileSystem/index.ts +5 -348
- package/src/utilities/fileSystem/plugin.ts +64 -0
- package/src/utilities/fileSystem/template.ts +36 -0
- package/src/utilities/index.ts +1 -45
- package/src/utilities/rowProcessor/index.ts +17 -8
- package/src/utilities/rowProcessor/tests/utils.spec.ts +57 -0
- package/src/utilities/schema.ts +141 -0
- package/src/utilities/scriptRunner.ts +1 -1
- package/src/utilities/statusCodes.ts +1 -1
- package/src/utilities/workerRequests.ts +10 -1
- package/src/watch.ts +1 -1
- package/tsconfig.build.json +2 -0
- package/tsconfig.json +2 -1
- package/builder/assets/index.96b9ffed.css +0 -6
- package/builder/assets/index.fae8f9eb.js +0 -1024
- package/coverage/lcov-report/src/utilities/plugins.ts.html +0 -151
- package/dist/api/routes/tests/utilities/TestFunctions.js +0 -167
- package/dist/api/routes/tests/utilities/index.js +0 -131
- package/dist/automations/tests/utilities/index.js +0 -81
- package/dist/tests/utilities/TestConfiguration.js +0 -562
- package/dist/tests/utilities/controllers.js +0 -40
- package/dist/tests/utilities/structures.js +0 -168
- package/dist/utilities/csvParser.js +0 -152
- package/dist/utilities/plugins.js +0 -26
- package/src/api/routes/tests/deployment.spec.ts +0 -25
- package/src/automations/unitTests/automationUtils.spec.js +0 -17
- package/src/utilities/csvParser.ts +0 -161
- package/src/utilities/plugins.ts +0 -22
- package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
- package/src/utilities/tests/csvParser.spec.js +0 -112
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">82.37% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>201/244</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">55.07% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>38/69</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">94.59% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>35/37</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">82.27% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>195/237</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -546,37 +546,62 @@
|
|
|
546
546
|
<a name='L481'></a><a href='#L481'>481</a>
|
|
547
547
|
<a name='L482'></a><a href='#L482'>482</a>
|
|
548
548
|
<a name='L483'></a><a href='#L483'>483</a>
|
|
549
|
-
<a name='L484'></a><a href='#L484'>484</a
|
|
550
|
-
<
|
|
549
|
+
<a name='L484'></a><a href='#L484'>484</a>
|
|
550
|
+
<a name='L485'></a><a href='#L485'>485</a>
|
|
551
|
+
<a name='L486'></a><a href='#L486'>486</a>
|
|
552
|
+
<a name='L487'></a><a href='#L487'>487</a>
|
|
553
|
+
<a name='L488'></a><a href='#L488'>488</a>
|
|
554
|
+
<a name='L489'></a><a href='#L489'>489</a>
|
|
555
|
+
<a name='L490'></a><a href='#L490'>490</a>
|
|
556
|
+
<a name='L491'></a><a href='#L491'>491</a>
|
|
557
|
+
<a name='L492'></a><a href='#L492'>492</a>
|
|
558
|
+
<a name='L493'></a><a href='#L493'>493</a>
|
|
559
|
+
<a name='L494'></a><a href='#L494'>494</a>
|
|
560
|
+
<a name='L495'></a><a href='#L495'>495</a>
|
|
561
|
+
<a name='L496'></a><a href='#L496'>496</a>
|
|
562
|
+
<a name='L497'></a><a href='#L497'>497</a>
|
|
563
|
+
<a name='L498'></a><a href='#L498'>498</a>
|
|
564
|
+
<a name='L499'></a><a href='#L499'>499</a>
|
|
565
|
+
<a name='L500'></a><a href='#L500'>500</a>
|
|
566
|
+
<a name='L501'></a><a href='#L501'>501</a>
|
|
567
|
+
<a name='L502'></a><a href='#L502'>502</a>
|
|
568
|
+
<a name='L503'></a><a href='#L503'>503</a>
|
|
569
|
+
<a name='L504'></a><a href='#L504'>504</a>
|
|
570
|
+
<a name='L505'></a><a href='#L505'>505</a>
|
|
571
|
+
<a name='L506'></a><a href='#L506'>506</a>
|
|
572
|
+
<a name='L507'></a><a href='#L507'>507</a>
|
|
573
|
+
<a name='L508'></a><a href='#L508'>508</a>
|
|
574
|
+
<a name='L509'></a><a href='#L509'>509</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">56x</span>
|
|
551
575
|
<span class="cline-any cline-neutral"> </span>
|
|
552
576
|
<span class="cline-any cline-neutral"> </span>
|
|
553
577
|
<span class="cline-any cline-neutral"> </span>
|
|
554
578
|
<span class="cline-any cline-neutral"> </span>
|
|
555
579
|
<span class="cline-any cline-neutral"> </span>
|
|
556
580
|
<span class="cline-any cline-neutral"> </span>
|
|
557
|
-
<span class="cline-any cline-yes">
|
|
558
|
-
<span class="cline-any cline-yes">
|
|
581
|
+
<span class="cline-any cline-yes">56x</span>
|
|
582
|
+
<span class="cline-any cline-yes">56x</span>
|
|
559
583
|
<span class="cline-any cline-neutral"> </span>
|
|
560
584
|
<span class="cline-any cline-neutral"> </span>
|
|
561
585
|
<span class="cline-any cline-neutral"> </span>
|
|
562
586
|
<span class="cline-any cline-neutral"> </span>
|
|
563
|
-
<span class="cline-any cline-yes">
|
|
564
|
-
<span class="cline-any cline-yes">
|
|
565
|
-
<span class="cline-any cline-yes">
|
|
566
|
-
<span class="cline-any cline-yes">
|
|
567
|
-
<span class="cline-any cline-yes">
|
|
568
|
-
<span class="cline-any cline-yes">
|
|
569
|
-
<span class="cline-any cline-yes">
|
|
587
|
+
<span class="cline-any cline-yes">56x</span>
|
|
588
|
+
<span class="cline-any cline-yes">56x</span>
|
|
589
|
+
<span class="cline-any cline-yes">56x</span>
|
|
590
|
+
<span class="cline-any cline-yes">56x</span>
|
|
591
|
+
<span class="cline-any cline-yes">56x</span>
|
|
592
|
+
<span class="cline-any cline-yes">56x</span>
|
|
593
|
+
<span class="cline-any cline-yes">56x</span>
|
|
570
594
|
<span class="cline-any cline-neutral"> </span>
|
|
571
595
|
<span class="cline-any cline-neutral"> </span>
|
|
572
596
|
<span class="cline-any cline-neutral"> </span>
|
|
573
597
|
<span class="cline-any cline-neutral"> </span>
|
|
574
598
|
<span class="cline-any cline-neutral"> </span>
|
|
575
|
-
<span class="cline-any cline-yes">
|
|
576
|
-
<span class="cline-any cline-yes">
|
|
577
|
-
<span class="cline-any cline-yes">
|
|
578
|
-
<span class="cline-any cline-yes">
|
|
579
|
-
<span class="cline-any cline-yes">
|
|
599
|
+
<span class="cline-any cline-yes">56x</span>
|
|
600
|
+
<span class="cline-any cline-yes">56x</span>
|
|
601
|
+
<span class="cline-any cline-yes">56x</span>
|
|
602
|
+
<span class="cline-any cline-yes">56x</span>
|
|
603
|
+
<span class="cline-any cline-yes">56x</span>
|
|
604
|
+
<span class="cline-any cline-yes">56x</span>
|
|
580
605
|
<span class="cline-any cline-neutral"> </span>
|
|
581
606
|
<span class="cline-any cline-neutral"> </span>
|
|
582
607
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -585,7 +610,10 @@
|
|
|
585
610
|
<span class="cline-any cline-neutral"> </span>
|
|
586
611
|
<span class="cline-any cline-neutral"> </span>
|
|
587
612
|
<span class="cline-any cline-neutral"> </span>
|
|
588
|
-
<span class="cline-any cline-
|
|
613
|
+
<span class="cline-any cline-neutral"> </span>
|
|
614
|
+
<span class="cline-any cline-yes">56x</span>
|
|
615
|
+
<span class="cline-any cline-neutral"> </span>
|
|
616
|
+
<span class="cline-any cline-yes">56x</span>
|
|
589
617
|
<span class="cline-any cline-neutral"> </span>
|
|
590
618
|
<span class="cline-any cline-neutral"> </span>
|
|
591
619
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -633,7 +661,7 @@
|
|
|
633
661
|
<span class="cline-any cline-yes">7x</span>
|
|
634
662
|
<span class="cline-any cline-neutral"> </span>
|
|
635
663
|
<span class="cline-any cline-neutral"> </span>
|
|
636
|
-
<span class="cline-any cline-yes">
|
|
664
|
+
<span class="cline-any cline-yes">6x</span>
|
|
637
665
|
<span class="cline-any cline-yes">6x</span>
|
|
638
666
|
<span class="cline-any cline-yes">6x</span>
|
|
639
667
|
<span class="cline-any cline-yes">6x</span>
|
|
@@ -698,42 +726,42 @@
|
|
|
698
726
|
<span class="cline-any cline-neutral"> </span>
|
|
699
727
|
<span class="cline-any cline-neutral"> </span>
|
|
700
728
|
<span class="cline-any cline-neutral"> </span>
|
|
701
|
-
<span class="cline-any cline-yes">
|
|
702
|
-
<span class="cline-any cline-yes">
|
|
703
|
-
<span class="cline-any cline-yes">
|
|
704
|
-
<span class="cline-any cline-yes">
|
|
729
|
+
<span class="cline-any cline-yes">79x</span>
|
|
730
|
+
<span class="cline-any cline-yes">79x</span>
|
|
731
|
+
<span class="cline-any cline-yes">79x</span>
|
|
732
|
+
<span class="cline-any cline-yes">79x</span>
|
|
705
733
|
<span class="cline-any cline-neutral"> </span>
|
|
706
|
-
<span class="cline-any cline-yes">
|
|
707
|
-
<span class="cline-any cline-yes">
|
|
734
|
+
<span class="cline-any cline-yes">79x</span>
|
|
735
|
+
<span class="cline-any cline-yes">79x</span>
|
|
708
736
|
<span class="cline-any cline-neutral"> </span>
|
|
709
737
|
<span class="cline-any cline-neutral"> </span>
|
|
710
738
|
<span class="cline-any cline-neutral"> </span>
|
|
711
|
-
<span class="cline-any cline-yes">
|
|
712
|
-
<span class="cline-any cline-yes">
|
|
713
|
-
<span class="cline-any cline-yes">
|
|
739
|
+
<span class="cline-any cline-yes">79x</span>
|
|
740
|
+
<span class="cline-any cline-yes">79x</span>
|
|
741
|
+
<span class="cline-any cline-yes">79x</span>
|
|
714
742
|
<span class="cline-any cline-neutral"> </span>
|
|
715
743
|
<span class="cline-any cline-neutral"> </span>
|
|
716
744
|
<span class="cline-any cline-neutral"> </span>
|
|
717
745
|
<span class="cline-any cline-neutral"> </span>
|
|
718
|
-
<span class="cline-any cline-yes">
|
|
746
|
+
<span class="cline-any cline-yes">79x</span>
|
|
719
747
|
<span class="cline-any cline-no"> </span>
|
|
720
748
|
<span class="cline-any cline-neutral"> </span>
|
|
721
749
|
<span class="cline-any cline-neutral"> </span>
|
|
722
750
|
<span class="cline-any cline-neutral"> </span>
|
|
723
|
-
<span class="cline-any cline-yes">
|
|
751
|
+
<span class="cline-any cline-yes">79x</span>
|
|
724
752
|
<span class="cline-any cline-neutral"> </span>
|
|
725
753
|
<span class="cline-any cline-neutral"> </span>
|
|
726
754
|
<span class="cline-any cline-neutral"> </span>
|
|
727
755
|
<span class="cline-any cline-neutral"> </span>
|
|
728
756
|
<span class="cline-any cline-neutral"> </span>
|
|
729
757
|
<span class="cline-any cline-neutral"> </span>
|
|
730
|
-
<span class="cline-any cline-yes">
|
|
758
|
+
<span class="cline-any cline-yes">78x</span>
|
|
731
759
|
<span class="cline-any cline-neutral"> </span>
|
|
732
760
|
<span class="cline-any cline-neutral"> </span>
|
|
733
761
|
<span class="cline-any cline-neutral"> </span>
|
|
734
762
|
<span class="cline-any cline-neutral"> </span>
|
|
735
763
|
<span class="cline-any cline-neutral"> </span>
|
|
736
|
-
<span class="cline-any cline-yes">
|
|
764
|
+
<span class="cline-any cline-yes">9x</span>
|
|
737
765
|
<span class="cline-any cline-yes">9x</span>
|
|
738
766
|
<span class="cline-any cline-neutral"> </span>
|
|
739
767
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -800,7 +828,7 @@
|
|
|
800
828
|
<span class="cline-any cline-yes">5x</span>
|
|
801
829
|
<span class="cline-any cline-neutral"> </span>
|
|
802
830
|
<span class="cline-any cline-neutral"> </span>
|
|
803
|
-
<span class="cline-any cline-yes">
|
|
831
|
+
<span class="cline-any cline-yes">4x</span>
|
|
804
832
|
<span class="cline-any cline-yes">7x</span>
|
|
805
833
|
<span class="cline-any cline-neutral"> </span>
|
|
806
834
|
<span class="cline-any cline-yes">7x</span>
|
|
@@ -809,7 +837,7 @@
|
|
|
809
837
|
<span class="cline-any cline-yes">7x</span>
|
|
810
838
|
<span class="cline-any cline-neutral"> </span>
|
|
811
839
|
<span class="cline-any cline-neutral"> </span>
|
|
812
|
-
<span class="cline-any cline-yes">
|
|
840
|
+
<span class="cline-any cline-yes">18x</span>
|
|
813
841
|
<span class="cline-any cline-yes">18x</span>
|
|
814
842
|
<span class="cline-any cline-yes">18x</span>
|
|
815
843
|
<span class="cline-any cline-yes">18x</span>
|
|
@@ -817,7 +845,7 @@
|
|
|
817
845
|
<span class="cline-any cline-yes">15x</span>
|
|
818
846
|
<span class="cline-any cline-neutral"> </span>
|
|
819
847
|
<span class="cline-any cline-neutral"> </span>
|
|
820
|
-
<span class="cline-any cline-yes">
|
|
848
|
+
<span class="cline-any cline-yes">4x</span>
|
|
821
849
|
<span class="cline-any cline-yes">4x</span>
|
|
822
850
|
<span class="cline-any cline-yes">4x</span>
|
|
823
851
|
<span class="cline-any cline-yes">4x</span>
|
|
@@ -853,7 +881,7 @@
|
|
|
853
881
|
<span class="cline-any cline-yes">3x</span>
|
|
854
882
|
<span class="cline-any cline-neutral"> </span>
|
|
855
883
|
<span class="cline-any cline-neutral"> </span>
|
|
856
|
-
<span class="cline-any cline-yes">
|
|
884
|
+
<span class="cline-any cline-yes">2x</span>
|
|
857
885
|
<span class="cline-any cline-yes">2x</span>
|
|
858
886
|
<span class="cline-any cline-yes">2x</span>
|
|
859
887
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -892,46 +920,53 @@
|
|
|
892
920
|
<span class="cline-any cline-yes">2x</span>
|
|
893
921
|
<span class="cline-any cline-neutral"> </span>
|
|
894
922
|
<span class="cline-any cline-neutral"> </span>
|
|
895
|
-
<span class="cline-any cline-yes">
|
|
923
|
+
<span class="cline-any cline-yes">6x</span>
|
|
896
924
|
<span class="cline-any cline-neutral"> </span>
|
|
897
|
-
<span class="cline-any cline-yes">
|
|
925
|
+
<span class="cline-any cline-yes">6x</span>
|
|
898
926
|
<span class="cline-any cline-no"> </span>
|
|
899
927
|
<span class="cline-any cline-neutral"> </span>
|
|
900
928
|
<span class="cline-any cline-neutral"> </span>
|
|
901
|
-
<span class="cline-any cline-yes">
|
|
902
|
-
<span class="cline-any cline-yes">
|
|
903
|
-
<span class="cline-any cline-yes">
|
|
904
|
-
<span class="cline-any cline-yes">
|
|
905
|
-
<span class="cline-any cline-yes">
|
|
929
|
+
<span class="cline-any cline-yes">6x</span>
|
|
930
|
+
<span class="cline-any cline-yes">6x</span>
|
|
931
|
+
<span class="cline-any cline-yes">6x</span>
|
|
932
|
+
<span class="cline-any cline-yes">6x</span>
|
|
933
|
+
<span class="cline-any cline-yes">6x</span>
|
|
906
934
|
<span class="cline-any cline-neutral"> </span>
|
|
907
935
|
<span class="cline-any cline-neutral"> </span>
|
|
908
|
-
<span class="cline-any cline-yes">
|
|
936
|
+
<span class="cline-any cline-yes">6x</span>
|
|
937
|
+
<span class="cline-any cline-no"> </span>
|
|
938
|
+
<span class="cline-any cline-no"> </span>
|
|
939
|
+
<span class="cline-any cline-no"> </span>
|
|
909
940
|
<span class="cline-any cline-no"> </span>
|
|
910
941
|
<span class="cline-any cline-neutral"> </span>
|
|
911
|
-
<span class="cline-any cline-yes">4x</span>
|
|
912
942
|
<span class="cline-any cline-neutral"> </span>
|
|
913
943
|
<span class="cline-any cline-neutral"> </span>
|
|
944
|
+
<span class="cline-any cline-yes">6x</span>
|
|
945
|
+
<span class="cline-any cline-no"> </span>
|
|
914
946
|
<span class="cline-any cline-neutral"> </span>
|
|
915
|
-
<span class="cline-any cline-yes">
|
|
947
|
+
<span class="cline-any cline-yes">6x</span>
|
|
916
948
|
<span class="cline-any cline-neutral"> </span>
|
|
917
|
-
<span class="cline-any cline-
|
|
949
|
+
<span class="cline-any cline-neutral"> </span>
|
|
950
|
+
<span class="cline-any cline-neutral"> </span>
|
|
951
|
+
<span class="cline-any cline-yes">6x</span>
|
|
952
|
+
<span class="cline-any cline-neutral"> </span>
|
|
953
|
+
<span class="cline-any cline-yes">6x</span>
|
|
918
954
|
<span class="cline-any cline-no"> </span>
|
|
919
955
|
<span class="cline-any cline-neutral"> </span>
|
|
920
|
-
<span class="cline-any cline-yes">
|
|
921
|
-
<span class="cline-any cline-yes">
|
|
956
|
+
<span class="cline-any cline-yes">6x</span>
|
|
957
|
+
<span class="cline-any cline-yes">6x</span>
|
|
922
958
|
<span class="cline-any cline-neutral"> </span>
|
|
923
959
|
<span class="cline-any cline-neutral"> </span>
|
|
924
960
|
<span class="cline-any cline-yes">4x</span>
|
|
925
961
|
<span class="cline-any cline-neutral"> </span>
|
|
926
962
|
<span class="cline-any cline-neutral"> </span>
|
|
927
|
-
<span class="cline-any cline-yes">
|
|
963
|
+
<span class="cline-any cline-yes">2x</span>
|
|
928
964
|
<span class="cline-any cline-yes">2x</span>
|
|
929
965
|
<span class="cline-any cline-neutral"> </span>
|
|
930
966
|
<span class="cline-any cline-neutral"> </span>
|
|
931
967
|
<span class="cline-any cline-neutral"> </span>
|
|
932
968
|
<span class="cline-any cline-neutral"> </span>
|
|
933
969
|
<span class="cline-any cline-neutral"> </span>
|
|
934
|
-
<span class="cline-any cline-yes">47x</span>
|
|
935
970
|
<span class="cline-any cline-yes">2x</span>
|
|
936
971
|
<span class="cline-any cline-yes">2x</span>
|
|
937
972
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -940,9 +975,19 @@
|
|
|
940
975
|
<span class="cline-any cline-yes">2x</span>
|
|
941
976
|
<span class="cline-any cline-neutral"> </span>
|
|
942
977
|
<span class="cline-any cline-neutral"> </span>
|
|
978
|
+
<span class="cline-any cline-yes">2x</span>
|
|
979
|
+
<span class="cline-any cline-yes">2x</span>
|
|
980
|
+
<span class="cline-any cline-neutral"> </span>
|
|
981
|
+
<span class="cline-any cline-neutral"> </span>
|
|
982
|
+
<span class="cline-any cline-neutral"> </span>
|
|
943
983
|
<span class="cline-any cline-neutral"> </span>
|
|
984
|
+
<span class="cline-any cline-yes">2x</span>
|
|
944
985
|
<span class="cline-any cline-neutral"> </span>
|
|
945
986
|
<span class="cline-any cline-yes">2x</span>
|
|
987
|
+
<span class="cline-any cline-no"> </span>
|
|
988
|
+
<span class="cline-any cline-no"> </span>
|
|
989
|
+
<span class="cline-any cline-no"> </span>
|
|
990
|
+
<span class="cline-any cline-neutral"> </span>
|
|
946
991
|
<span class="cline-any cline-neutral"> </span>
|
|
947
992
|
<span class="cline-any cline-yes">2x</span>
|
|
948
993
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -960,16 +1005,21 @@
|
|
|
960
1005
|
<span class="cline-any cline-neutral"> </span>
|
|
961
1006
|
<span class="cline-any cline-neutral"> </span>
|
|
962
1007
|
<span class="cline-any cline-yes">2x</span>
|
|
963
|
-
<span class="cline-any cline-neutral"> </span>
|
|
964
1008
|
<span class="cline-any cline-yes">2x</span>
|
|
1009
|
+
<span class="cline-any cline-no"> </span>
|
|
1010
|
+
<span class="cline-any cline-no"> </span>
|
|
965
1011
|
<span class="cline-any cline-yes">2x</span>
|
|
966
|
-
<span class="cline-any cline-neutral"> </span>
|
|
967
|
-
<span class="cline-any cline-neutral"> </span>
|
|
968
1012
|
<span class="cline-any cline-yes">2x</span>
|
|
969
1013
|
<span class="cline-any cline-yes">2x</span>
|
|
1014
|
+
<span class="cline-any cline-no"> </span>
|
|
1015
|
+
<span class="cline-any cline-no"> </span>
|
|
1016
|
+
<span class="cline-any cline-no"> </span>
|
|
1017
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1018
|
+
<span class="cline-any cline-no"> </span>
|
|
1019
|
+
<span class="cline-any cline-neutral"> </span>
|
|
970
1020
|
<span class="cline-any cline-neutral"> </span>
|
|
971
1021
|
<span class="cline-any cline-neutral"> </span>
|
|
972
|
-
<span class="cline-any cline-yes">
|
|
1022
|
+
<span class="cline-any cline-yes">2x</span>
|
|
973
1023
|
<span class="cline-any cline-yes">2x</span>
|
|
974
1024
|
<span class="cline-any cline-yes">2x</span>
|
|
975
1025
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -1044,7 +1094,7 @@ import {
|
|
|
1044
1094
|
cleanupAttachments,
|
|
1045
1095
|
} from "../../../utilities/rowProcessor"
|
|
1046
1096
|
import { FieldTypes } from "../../../constants"
|
|
1047
|
-
import
|
|
1097
|
+
import * as utils from "./utils"
|
|
1048
1098
|
import { fullSearch, paginatedSearch } from "./internalSearch"
|
|
1049
1099
|
import { getGlobalUsersFromMetadata } from "../../../utilities/global"
|
|
1050
1100
|
import * as inMemoryViews from "../../../db/inMemoryView"
|
|
@@ -1058,16 +1108,19 @@ import {
|
|
|
1058
1108
|
import { cloneDeep } from "lodash/fp"
|
|
1059
1109
|
import { context, db as dbCore } from "@budibase/backend-core"
|
|
1060
1110
|
import { finaliseRow, updateRelatedFormula } from "./staticFormula"
|
|
1061
|
-
import
|
|
1111
|
+
import { csv, json, jsonWithSchema, Format } from "../view/exporters"
|
|
1062
1112
|
import { apiFileReturn } from "../../../utilities/fileSystem"
|
|
1063
1113
|
import {
|
|
1064
|
-
|
|
1114
|
+
Ctx,
|
|
1115
|
+
UserCtx,
|
|
1065
1116
|
Database,
|
|
1066
1117
|
LinkDocumentValue,
|
|
1067
1118
|
Row,
|
|
1068
1119
|
Table,
|
|
1069
1120
|
} from "@budibase/types"
|
|
1070
1121
|
|
|
1122
|
+
const { cleanExportRows } = require("./utils")
|
|
1123
|
+
|
|
1071
1124
|
const CALCULATION_TYPES = {
|
|
1072
1125
|
SUM: "sum",
|
|
1073
1126
|
COUNT: "count",
|
|
@@ -1100,7 +1153,7 @@ async function getView(db: Database, viewName: string) {
|
|
|
1100
1153
|
return viewInfo
|
|
1101
1154
|
}
|
|
1102
1155
|
|
|
1103
|
-
async function getRawTableData(ctx:
|
|
1156
|
+
async function getRawTableData(ctx: Ctx, db: Database, tableId: string) {
|
|
1104
1157
|
let rows
|
|
1105
1158
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1106
1159
|
<span class="cstat-no" title="statement not covered" > await userController.fetchMetadata(ctx)</span>
|
|
@@ -1116,7 +1169,7 @@ async function getRawTableData(ctx: BBContext, db: Database, tableId: string) {
|
|
|
1116
1169
|
return rows as Row[]
|
|
1117
1170
|
}
|
|
1118
1171
|
|
|
1119
|
-
export async function patch(ctx:
|
|
1172
|
+
export async function patch(ctx: UserCtx) {
|
|
1120
1173
|
const db = context.getAppDB()
|
|
1121
1174
|
const inputs = ctx.request.body
|
|
1122
1175
|
const tableId = inputs.tableId
|
|
@@ -1126,7 +1179,7 @@ export async function patch(ctx: BBContext) {
|
|
|
1126
1179
|
let dbTable = await db.get(tableId)
|
|
1127
1180
|
oldRow = await outputProcessing(
|
|
1128
1181
|
dbTable,
|
|
1129
|
-
await findRow(ctx, tableId, inputs._id)
|
|
1182
|
+
await utils.findRow(ctx, tableId, inputs._id)
|
|
1130
1183
|
)
|
|
1131
1184
|
} catch (err) {
|
|
1132
1185
|
<span class="cstat-no" title="statement not covered" > if (isUserTable) {</span>
|
|
@@ -1148,8 +1201,8 @@ export async function patch(ctx: BBContext) {
|
|
|
1148
1201
|
}
|
|
1149
1202
|
|
|
1150
1203
|
// this returns the table and row incase they have been updated
|
|
1151
|
-
let { table, row } = inputProcessing(ctx.user
|
|
1152
|
-
const validateResult = await
|
|
1204
|
+
let { table, row } = inputProcessing(ctx.user, dbTable, combinedRow)
|
|
1205
|
+
const validateResult = await utils.validate({
|
|
1153
1206
|
row,
|
|
1154
1207
|
table,
|
|
1155
1208
|
})
|
|
@@ -1181,7 +1234,7 @@ export async function patch(ctx: BBContext) {
|
|
|
1181
1234
|
})
|
|
1182
1235
|
}
|
|
1183
1236
|
|
|
1184
|
-
export async function save(ctx:
|
|
1237
|
+
export async function save(ctx: UserCtx) {
|
|
1185
1238
|
const db = context.getAppDB()
|
|
1186
1239
|
let inputs = ctx.request.body
|
|
1187
1240
|
inputs.tableId = ctx.params.tableId
|
|
@@ -1192,8 +1245,8 @@ export async function save(ctx: BBContext) {
|
|
|
1192
1245
|
|
|
1193
1246
|
// this returns the table and row incase they have been updated
|
|
1194
1247
|
const dbTable = await db.get(inputs.tableId)
|
|
1195
|
-
let { table, row } = inputProcessing(ctx.user
|
|
1196
|
-
const validateResult = await
|
|
1248
|
+
let { table, row } = inputProcessing(ctx.user, dbTable, inputs)
|
|
1249
|
+
const validateResult = await utils.validate({
|
|
1197
1250
|
row,
|
|
1198
1251
|
table,
|
|
1199
1252
|
})
|
|
@@ -1216,8 +1269,8 @@ export async function save(ctx: BBContext) {
|
|
|
1216
1269
|
})
|
|
1217
1270
|
}
|
|
1218
1271
|
|
|
1219
|
-
export async function fetchView(ctx:
|
|
1220
|
-
const viewName = ctx.params.viewName
|
|
1272
|
+
export async function fetchView(ctx: Ctx) {
|
|
1273
|
+
const viewName = decodeURIComponent(ctx.params.viewName)
|
|
1221
1274
|
|
|
1222
1275
|
// if this is a table view being looked for just transfer to that
|
|
1223
1276
|
if (viewName.startsWith(DocumentType.TABLE)) {
|
|
@@ -1274,7 +1327,7 @@ export async function fetchView(ctx: BBContext) {
|
|
|
1274
1327
|
calculation === CALCULATION_TYPES.COUNT ||
|
|
1275
1328
|
calculation === CALCULATION_TYPES.SUM
|
|
1276
1329
|
) {
|
|
1277
|
-
<span class="cstat-no" title="statement not covered" > rows = response.rows.map(<span class="fstat-no" title="function not covered" >row
|
|
1330
|
+
<span class="cstat-no" title="statement not covered" > rows = response.rows.map(<span class="fstat-no" title="function not covered" >row => (<span class="cstat-no" title="statement not covered" >{</span></span></span>
|
|
1278
1331
|
group: row.key,
|
|
1279
1332
|
field,
|
|
1280
1333
|
value: row.value,
|
|
@@ -1283,7 +1336,7 @@ export async function fetchView(ctx: BBContext) {
|
|
|
1283
1336
|
return rows
|
|
1284
1337
|
}
|
|
1285
1338
|
|
|
1286
|
-
export async function fetch(ctx:
|
|
1339
|
+
export async function fetch(ctx: Ctx) {
|
|
1287
1340
|
const db = context.getAppDB()
|
|
1288
1341
|
|
|
1289
1342
|
const tableId = ctx.params.tableId
|
|
@@ -1292,15 +1345,15 @@ export async function fetch(ctx: BBContext) {
|
|
|
1292
1345
|
return outputProcessing(table, rows)
|
|
1293
1346
|
}
|
|
1294
1347
|
|
|
1295
|
-
export async function find(ctx:
|
|
1348
|
+
export async function find(ctx: Ctx) {
|
|
1296
1349
|
const db = dbCore.getDB(ctx.appId)
|
|
1297
1350
|
const table = await db.get(ctx.params.tableId)
|
|
1298
|
-
let row = await findRow(ctx, ctx.params.tableId, ctx.params.rowId)
|
|
1351
|
+
let row = await utils.findRow(ctx, ctx.params.tableId, ctx.params.rowId)
|
|
1299
1352
|
row = await outputProcessing(table, row)
|
|
1300
1353
|
return row
|
|
1301
1354
|
}
|
|
1302
1355
|
|
|
1303
|
-
export async function destroy(ctx:
|
|
1356
|
+
export async function destroy(ctx: Ctx) {
|
|
1304
1357
|
const db = context.getAppDB()
|
|
1305
1358
|
const { _id } = ctx.request.body
|
|
1306
1359
|
let row = await db.get(_id)
|
|
@@ -1336,7 +1389,7 @@ export async function destroy(ctx: BBContext) {
|
|
|
1336
1389
|
return { response, row }
|
|
1337
1390
|
}
|
|
1338
1391
|
|
|
1339
|
-
export async function bulkDestroy(ctx:
|
|
1392
|
+
export async function bulkDestroy(ctx: Ctx) {
|
|
1340
1393
|
const db = context.getAppDB()
|
|
1341
1394
|
const tableId = ctx.params.tableId
|
|
1342
1395
|
const table = await db.get(tableId)
|
|
@@ -1358,7 +1411,7 @@ export async function bulkDestroy(ctx: BBContext) {
|
|
|
1358
1411
|
)
|
|
1359
1412
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1360
1413
|
<span class="cstat-no" title="statement not covered" > updates = updates.concat(</span>
|
|
1361
|
-
processedRows.map(<span class="fstat-no" title="function not covered" >row
|
|
1414
|
+
processedRows.map(<span class="fstat-no" title="function not covered" >row => {</span>
|
|
1362
1415
|
<span class="cstat-no" title="statement not covered" > ctx.params = {</span>
|
|
1363
1416
|
id: row._id,
|
|
1364
1417
|
}
|
|
@@ -1375,7 +1428,7 @@ export async function bulkDestroy(ctx: BBContext) {
|
|
|
1375
1428
|
return { response: { ok: true }, rows: processedRows }
|
|
1376
1429
|
}
|
|
1377
1430
|
|
|
1378
|
-
export async function search(ctx:
|
|
1431
|
+
export async function search(ctx: Ctx) {
|
|
1379
1432
|
// Fetch the whole table when running in cypress, as search doesn't work
|
|
1380
1433
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!env.COUCH_DB_URL && env.isCypress()) {
|
|
1381
1434
|
<span class="cstat-no" title="statement not covered" > return { rows: await fetch(ctx) }</span>
|
|
@@ -1386,6 +1439,14 @@ export async function search(ctx: BBContext) {
|
|
|
1386
1439
|
const { paginate, query, ...params } = ctx.request.body
|
|
1387
1440
|
params.version = ctx.version
|
|
1388
1441
|
params.tableId = tableId
|
|
1442
|
+
|
|
1443
|
+
let table
|
|
1444
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (params.sort && !params.sortType) {
|
|
1445
|
+
<span class="cstat-no" title="statement not covered" > table = await db.get(tableId)</span>
|
|
1446
|
+
const schema = <span class="cstat-no" title="statement not covered" >table.schema</span>
|
|
1447
|
+
const sortField = <span class="cstat-no" title="statement not covered" >schema[params.sort]</span>
|
|
1448
|
+
<span class="cstat-no" title="statement not covered" > params.sortType = sortField.type == "number" ? "number" : "string"</span>
|
|
1449
|
+
}
|
|
1389
1450
|
|
|
1390
1451
|
let response
|
|
1391
1452
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (paginate) {
|
|
@@ -1400,35 +1461,44 @@ export async function search(ctx: BBContext) {
|
|
|
1400
1461
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1401
1462
|
<span class="cstat-no" title="statement not covered" > response.rows = await getGlobalUsersFromMetadata(response.rows)</span>
|
|
1402
1463
|
}
|
|
1403
|
-
|
|
1464
|
+
table = table || (await db.get(tableId))
|
|
1404
1465
|
response.rows = await outputProcessing(table, response.rows)
|
|
1405
1466
|
}
|
|
1406
1467
|
|
|
1407
1468
|
return response
|
|
1408
1469
|
}
|
|
1409
1470
|
|
|
1410
|
-
export async function validate(ctx:
|
|
1411
|
-
return
|
|
1471
|
+
export async function validate(ctx: Ctx) {
|
|
1472
|
+
return utils.validate({
|
|
1412
1473
|
tableId: ctx.params.tableId,
|
|
1413
1474
|
row: ctx.request.body,
|
|
1414
1475
|
})
|
|
1415
1476
|
}
|
|
1416
1477
|
|
|
1417
|
-
export async function exportRows(ctx:
|
|
1478
|
+
export async function exportRows(ctx: Ctx) {
|
|
1418
1479
|
const db = context.getAppDB()
|
|
1419
1480
|
const table = await db.get(ctx.params.tableId)
|
|
1420
1481
|
const rowIds = ctx.request.body.rows
|
|
1421
1482
|
let format = ctx.query.format
|
|
1422
|
-
const { columns } = ctx.request.body
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1483
|
+
const { columns, query } = ctx.request.body
|
|
1484
|
+
|
|
1485
|
+
let result
|
|
1486
|
+
if (rowIds) {
|
|
1487
|
+
let response = (
|
|
1488
|
+
await db.allDocs({
|
|
1489
|
+
include_docs: true,
|
|
1490
|
+
keys: rowIds,
|
|
1491
|
+
})
|
|
1492
|
+
).rows.map(row => row.doc)
|
|
1493
|
+
|
|
1494
|
+
result = await outputProcessing(table, response)
|
|
1495
|
+
} else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span><span class="missing-if-branch" title="else path not taken" >E</span>if (query) {</span>
|
|
1496
|
+
let searchResponse = <span class="cstat-no" title="statement not covered" >await exports.search(ctx)</span>
|
|
1497
|
+
<span class="cstat-no" title="statement not covered" > result = searchResponse.rows</span>
|
|
1498
|
+
}
|
|
1429
1499
|
|
|
1430
|
-
let result = (await outputProcessing(table, response)) as Row[]
|
|
1431
1500
|
let rows: Row[] = []
|
|
1501
|
+
let schema = table.schema
|
|
1432
1502
|
|
|
1433
1503
|
// Filter data to only specified columns if required
|
|
1434
1504
|
if (columns && columns.length) {
|
|
@@ -1442,24 +1512,29 @@ export async function exportRows(ctx: BBContext) {
|
|
|
1442
1512
|
rows = result
|
|
1443
1513
|
}
|
|
1444
1514
|
|
|
1445
|
-
let
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1515
|
+
let exportRows = cleanExportRows(rows, schema, format, columns)
|
|
1516
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (format === Format.CSV) {
|
|
1517
|
+
<span class="cstat-no" title="statement not covered" > ctx.attachment("export.csv")</span>
|
|
1518
|
+
<span class="cstat-no" title="statement not covered" > return apiFileReturn(csv(Object.keys(rows[0]), exportRows))</span>
|
|
1519
|
+
} else if (format === Format.JSON) {
|
|
1520
|
+
ctx.attachment("export.json")
|
|
1521
|
+
return apiFileReturn(json(exportRows))
|
|
1522
|
+
} else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="else path not taken" >E</span>if (format === Format.JSON_WITH_SCHEMA) {</span>
|
|
1523
|
+
<span class="cstat-no" title="statement not covered" > ctx.attachment("export.json")</span>
|
|
1524
|
+
<span class="cstat-no" title="statement not covered" > return apiFileReturn(jsonWithSchema(schema, exportRows))</span>
|
|
1525
|
+
} else {
|
|
1526
|
+
<span class="cstat-no" title="statement not covered" > throw "Format not recognised"</span>
|
|
1527
|
+
}
|
|
1453
1528
|
}
|
|
1454
1529
|
|
|
1455
|
-
export async function fetchEnrichedRow(ctx:
|
|
1530
|
+
export async function fetchEnrichedRow(ctx: Ctx) {
|
|
1456
1531
|
const db = context.getAppDB()
|
|
1457
1532
|
const tableId = ctx.params.tableId
|
|
1458
1533
|
const rowId = ctx.params.rowId
|
|
1459
1534
|
// need table to work out where links go in row
|
|
1460
1535
|
let [table, row] = await Promise.all([
|
|
1461
1536
|
db.get(tableId),
|
|
1462
|
-
findRow(ctx, tableId, rowId),
|
|
1537
|
+
utils.findRow(ctx, tableId, rowId),
|
|
1463
1538
|
])
|
|
1464
1539
|
// get the link docs
|
|
1465
1540
|
const linkVals = (await linkRows.getLinkDocuments({
|
|
@@ -1519,7 +1594,7 @@ export async function fetchEnrichedRow(ctx: BBContext) {
|
|
|
1519
1594
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1520
1595
|
Code coverage generated by
|
|
1521
1596
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1522
|
-
at
|
|
1597
|
+
at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
|
|
1523
1598
|
</div>
|
|
1524
1599
|
<script src="../../../../prettify.js"></script>
|
|
1525
1600
|
<script>
|