@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">71.42% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>95/133</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">64.28% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>36/56</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">84.61% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>11/13</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">70.99% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>93/131</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -657,13 +657,57 @@
|
|
|
657
657
|
<a name='L592'></a><a href='#L592'>592</a>
|
|
658
658
|
<a name='L593'></a><a href='#L593'>593</a>
|
|
659
659
|
<a name='L594'></a><a href='#L594'>594</a>
|
|
660
|
-
<a name='L595'></a><a href='#L595'>595</a
|
|
660
|
+
<a name='L595'></a><a href='#L595'>595</a>
|
|
661
|
+
<a name='L596'></a><a href='#L596'>596</a>
|
|
662
|
+
<a name='L597'></a><a href='#L597'>597</a>
|
|
663
|
+
<a name='L598'></a><a href='#L598'>598</a>
|
|
664
|
+
<a name='L599'></a><a href='#L599'>599</a>
|
|
665
|
+
<a name='L600'></a><a href='#L600'>600</a>
|
|
666
|
+
<a name='L601'></a><a href='#L601'>601</a>
|
|
667
|
+
<a name='L602'></a><a href='#L602'>602</a>
|
|
668
|
+
<a name='L603'></a><a href='#L603'>603</a>
|
|
669
|
+
<a name='L604'></a><a href='#L604'>604</a>
|
|
670
|
+
<a name='L605'></a><a href='#L605'>605</a>
|
|
671
|
+
<a name='L606'></a><a href='#L606'>606</a>
|
|
672
|
+
<a name='L607'></a><a href='#L607'>607</a>
|
|
673
|
+
<a name='L608'></a><a href='#L608'>608</a>
|
|
674
|
+
<a name='L609'></a><a href='#L609'>609</a>
|
|
675
|
+
<a name='L610'></a><a href='#L610'>610</a>
|
|
676
|
+
<a name='L611'></a><a href='#L611'>611</a>
|
|
677
|
+
<a name='L612'></a><a href='#L612'>612</a>
|
|
678
|
+
<a name='L613'></a><a href='#L613'>613</a>
|
|
679
|
+
<a name='L614'></a><a href='#L614'>614</a>
|
|
680
|
+
<a name='L615'></a><a href='#L615'>615</a>
|
|
681
|
+
<a name='L616'></a><a href='#L616'>616</a>
|
|
682
|
+
<a name='L617'></a><a href='#L617'>617</a>
|
|
683
|
+
<a name='L618'></a><a href='#L618'>618</a>
|
|
684
|
+
<a name='L619'></a><a href='#L619'>619</a>
|
|
685
|
+
<a name='L620'></a><a href='#L620'>620</a>
|
|
686
|
+
<a name='L621'></a><a href='#L621'>621</a>
|
|
687
|
+
<a name='L622'></a><a href='#L622'>622</a>
|
|
688
|
+
<a name='L623'></a><a href='#L623'>623</a>
|
|
689
|
+
<a name='L624'></a><a href='#L624'>624</a>
|
|
690
|
+
<a name='L625'></a><a href='#L625'>625</a>
|
|
691
|
+
<a name='L626'></a><a href='#L626'>626</a>
|
|
692
|
+
<a name='L627'></a><a href='#L627'>627</a>
|
|
693
|
+
<a name='L628'></a><a href='#L628'>628</a>
|
|
694
|
+
<a name='L629'></a><a href='#L629'>629</a>
|
|
695
|
+
<a name='L630'></a><a href='#L630'>630</a>
|
|
696
|
+
<a name='L631'></a><a href='#L631'>631</a>
|
|
697
|
+
<a name='L632'></a><a href='#L632'>632</a>
|
|
698
|
+
<a name='L633'></a><a href='#L633'>633</a>
|
|
699
|
+
<a name='L634'></a><a href='#L634'>634</a>
|
|
700
|
+
<a name='L635'></a><a href='#L635'>635</a>
|
|
701
|
+
<a name='L636'></a><a href='#L636'>636</a>
|
|
702
|
+
<a name='L637'></a><a href='#L637'>637</a>
|
|
703
|
+
<a name='L638'></a><a href='#L638'>638</a>
|
|
704
|
+
<a name='L639'></a><a href='#L639'>639</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
661
705
|
<span class="cline-any cline-neutral"> </span>
|
|
662
706
|
<span class="cline-any cline-neutral"> </span>
|
|
663
707
|
<span class="cline-any cline-neutral"> </span>
|
|
664
708
|
<span class="cline-any cline-neutral"> </span>
|
|
709
|
+
<span class="cline-any cline-yes">60x</span>
|
|
665
710
|
<span class="cline-any cline-neutral"> </span>
|
|
666
|
-
<span class="cline-any cline-yes">49x</span>
|
|
667
711
|
<span class="cline-any cline-neutral"> </span>
|
|
668
712
|
<span class="cline-any cline-neutral"> </span>
|
|
669
713
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -672,6 +716,32 @@
|
|
|
672
716
|
<span class="cline-any cline-neutral"> </span>
|
|
673
717
|
<span class="cline-any cline-neutral"> </span>
|
|
674
718
|
<span class="cline-any cline-neutral"> </span>
|
|
719
|
+
<span class="cline-any cline-yes">60x</span>
|
|
720
|
+
<span class="cline-any cline-yes">60x</span>
|
|
721
|
+
<span class="cline-any cline-neutral"> </span>
|
|
722
|
+
<span class="cline-any cline-neutral"> </span>
|
|
723
|
+
<span class="cline-any cline-neutral"> </span>
|
|
724
|
+
<span class="cline-any cline-neutral"> </span>
|
|
725
|
+
<span class="cline-any cline-neutral"> </span>
|
|
726
|
+
<span class="cline-any cline-neutral"> </span>
|
|
727
|
+
<span class="cline-any cline-neutral"> </span>
|
|
728
|
+
<span class="cline-any cline-neutral"> </span>
|
|
729
|
+
<span class="cline-any cline-neutral"> </span>
|
|
730
|
+
<span class="cline-any cline-neutral"> </span>
|
|
731
|
+
<span class="cline-any cline-neutral"> </span>
|
|
732
|
+
<span class="cline-any cline-neutral"> </span>
|
|
733
|
+
<span class="cline-any cline-neutral"> </span>
|
|
734
|
+
<span class="cline-any cline-neutral"> </span>
|
|
735
|
+
<span class="cline-any cline-neutral"> </span>
|
|
736
|
+
<span class="cline-any cline-neutral"> </span>
|
|
737
|
+
<span class="cline-any cline-yes">60x</span>
|
|
738
|
+
<span class="cline-any cline-yes">60x</span>
|
|
739
|
+
<span class="cline-any cline-neutral"> </span>
|
|
740
|
+
<span class="cline-any cline-neutral"> </span>
|
|
741
|
+
<span class="cline-any cline-neutral"> </span>
|
|
742
|
+
<span class="cline-any cline-neutral"> </span>
|
|
743
|
+
<span class="cline-any cline-neutral"> </span>
|
|
744
|
+
<span class="cline-any cline-neutral"> </span>
|
|
675
745
|
<span class="cline-any cline-neutral"> </span>
|
|
676
746
|
<span class="cline-any cline-neutral"> </span>
|
|
677
747
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -685,7 +755,6 @@
|
|
|
685
755
|
<span class="cline-any cline-neutral"> </span>
|
|
686
756
|
<span class="cline-any cline-neutral"> </span>
|
|
687
757
|
<span class="cline-any cline-neutral"> </span>
|
|
688
|
-
<span class="cline-any cline-yes">49x</span>
|
|
689
758
|
<span class="cline-any cline-neutral"> </span>
|
|
690
759
|
<span class="cline-any cline-neutral"> </span>
|
|
691
760
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -946,6 +1015,8 @@
|
|
|
946
1015
|
<span class="cline-any cline-neutral"> </span>
|
|
947
1016
|
<span class="cline-any cline-neutral"> </span>
|
|
948
1017
|
<span class="cline-any cline-neutral"> </span>
|
|
1018
|
+
<span class="cline-any cline-yes">60x</span>
|
|
1019
|
+
<span class="cline-any cline-yes">60x</span>
|
|
949
1020
|
<span class="cline-any cline-neutral"> </span>
|
|
950
1021
|
<span class="cline-any cline-neutral"> </span>
|
|
951
1022
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -969,7 +1040,24 @@
|
|
|
969
1040
|
<span class="cline-any cline-neutral"> </span>
|
|
970
1041
|
<span class="cline-any cline-neutral"> </span>
|
|
971
1042
|
<span class="cline-any cline-neutral"> </span>
|
|
1043
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1044
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1045
|
+
<span class="cline-any cline-yes">60x</span>
|
|
1046
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1047
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1048
|
+
<span class="cline-any cline-yes">60x</span>
|
|
1049
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1050
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1051
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1052
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1053
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1054
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1055
|
+
<span class="cline-any cline-yes">10x</span>
|
|
972
1056
|
<span class="cline-any cline-yes">10x</span>
|
|
1057
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1058
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1059
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1060
|
+
<span class="cline-any cline-neutral"> </span>
|
|
973
1061
|
<span class="cline-any cline-yes">10x</span>
|
|
974
1062
|
<span class="cline-any cline-neutral"> </span>
|
|
975
1063
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -1247,7 +1335,7 @@
|
|
|
1247
1335
|
<span class="cline-any cline-neutral"> </span>
|
|
1248
1336
|
<span class="cline-any cline-neutral"> </span>
|
|
1249
1337
|
<span class="cline-any cline-neutral"> </span>
|
|
1250
|
-
<span class="cline-any cline-yes">
|
|
1338
|
+
<span class="cline-any cline-yes">128x</span>
|
|
1251
1339
|
<span class="cline-any cline-neutral"> </span>
|
|
1252
1340
|
<span class="cline-any cline-neutral"> </span>
|
|
1253
1341
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -1265,11 +1353,16 @@ import {
|
|
|
1265
1353
|
FindOneAndUpdateOptions,
|
|
1266
1354
|
UpdateOptions,
|
|
1267
1355
|
OperationOptions,
|
|
1356
|
+
MongoClientOptions,
|
|
1268
1357
|
} from "mongodb"
|
|
1358
|
+
import environment from "../environment"
|
|
1269
1359
|
|
|
1270
1360
|
interface MongoDBConfig {
|
|
1271
1361
|
connectionString: string
|
|
1272
1362
|
db: string
|
|
1363
|
+
tlsCertificateFile: string
|
|
1364
|
+
tlsCertificateKeyFile: string
|
|
1365
|
+
tlsCAFile: string
|
|
1273
1366
|
}
|
|
1274
1367
|
|
|
1275
1368
|
interface MongoDBQuery {
|
|
@@ -1279,292 +1372,331 @@ interface MongoDBQuery {
|
|
|
1279
1372
|
}
|
|
1280
1373
|
}
|
|
1281
1374
|
|
|
1282
|
-
const
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
type: QueryType.JSON,
|
|
1302
|
-
},
|
|
1303
|
-
read: {
|
|
1304
|
-
type: QueryType.JSON,
|
|
1375
|
+
const getSchema = () => {
|
|
1376
|
+
let schema = {
|
|
1377
|
+
docs: "https://github.com/mongodb/node-mongodb-native",
|
|
1378
|
+
friendlyName: "MongoDB",
|
|
1379
|
+
type: "Non-relational",
|
|
1380
|
+
description:
|
|
1381
|
+
"MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era.",
|
|
1382
|
+
datasource: {
|
|
1383
|
+
connectionString: {
|
|
1384
|
+
type: DatasourceFieldType.STRING,
|
|
1385
|
+
required: true,
|
|
1386
|
+
default: "mongodb://localhost:27017",
|
|
1387
|
+
display: "Connection string",
|
|
1388
|
+
},
|
|
1389
|
+
db: {
|
|
1390
|
+
type: DatasourceFieldType.STRING,
|
|
1391
|
+
required: true,
|
|
1392
|
+
display: "DB",
|
|
1393
|
+
},
|
|
1305
1394
|
},
|
|
1306
|
-
|
|
1307
|
-
|
|
1395
|
+
query: {
|
|
1396
|
+
create: {
|
|
1397
|
+
type: QueryType.JSON,
|
|
1398
|
+
},
|
|
1399
|
+
read: {
|
|
1400
|
+
type: QueryType.JSON,
|
|
1401
|
+
},
|
|
1402
|
+
update: {
|
|
1403
|
+
type: QueryType.JSON,
|
|
1404
|
+
},
|
|
1405
|
+
delete: {
|
|
1406
|
+
type: QueryType.JSON,
|
|
1407
|
+
},
|
|
1408
|
+
aggregate: {
|
|
1409
|
+
type: QueryType.JSON,
|
|
1410
|
+
readable: true,
|
|
1411
|
+
steps: [
|
|
1412
|
+
{
|
|
1413
|
+
key: "$addFields",
|
|
1414
|
+
template: "{\n\t\n}",
|
|
1415
|
+
},
|
|
1416
|
+
{
|
|
1417
|
+
key: "$bucket",
|
|
1418
|
+
template: `{
|
|
1419
|
+
"groupBy": "",
|
|
1420
|
+
"boundaries": [],
|
|
1421
|
+
"default": "",
|
|
1422
|
+
"output": {}
|
|
1423
|
+
}`,
|
|
1424
|
+
},
|
|
1425
|
+
{
|
|
1426
|
+
key: "$bucketAuto",
|
|
1427
|
+
template: `{
|
|
1428
|
+
"groupBy": "",
|
|
1429
|
+
"buckets": 1,
|
|
1430
|
+
"output": {},
|
|
1431
|
+
"granularity": "R5"
|
|
1432
|
+
}`,
|
|
1433
|
+
},
|
|
1434
|
+
{
|
|
1435
|
+
key: "$changeStream",
|
|
1436
|
+
template: `{
|
|
1437
|
+
"allChangesForCluster": true,
|
|
1438
|
+
"fullDocument": "",
|
|
1439
|
+
"fullDocumentBeforeChange": "",
|
|
1440
|
+
"resumeAfter": 1,
|
|
1441
|
+
"showExpandedEvents": true,
|
|
1442
|
+
"startAfter": {},
|
|
1443
|
+
"startAtOperationTime": ""
|
|
1444
|
+
}`,
|
|
1445
|
+
},
|
|
1446
|
+
{
|
|
1447
|
+
key: "$collStats",
|
|
1448
|
+
template: `{
|
|
1449
|
+
"latencyStats": { "histograms": true } },
|
|
1450
|
+
"storageStats": { "scale": 1 } },
|
|
1451
|
+
"count": {},
|
|
1452
|
+
"queryExecStats": {}
|
|
1453
|
+
}`,
|
|
1454
|
+
},
|
|
1455
|
+
{
|
|
1456
|
+
key: "$count",
|
|
1457
|
+
template: ``,
|
|
1458
|
+
},
|
|
1459
|
+
{
|
|
1460
|
+
key: "$densify",
|
|
1461
|
+
template: `{
|
|
1462
|
+
"field": "",
|
|
1463
|
+
"partitionByFields": [],
|
|
1464
|
+
"range": {
|
|
1465
|
+
"step": 1,
|
|
1466
|
+
"unit": 1,
|
|
1467
|
+
"bounds": "full"
|
|
1468
|
+
}
|
|
1469
|
+
}`,
|
|
1470
|
+
},
|
|
1471
|
+
{
|
|
1472
|
+
key: "$documents",
|
|
1473
|
+
template: `[]`,
|
|
1474
|
+
},
|
|
1475
|
+
{
|
|
1476
|
+
key: "$facet",
|
|
1477
|
+
template: `{\n\t\n}`,
|
|
1478
|
+
},
|
|
1479
|
+
{
|
|
1480
|
+
key: "$fill",
|
|
1481
|
+
template: `{
|
|
1482
|
+
"partitionBy": "",
|
|
1483
|
+
"partitionByFields": [],
|
|
1484
|
+
"sortBy": {},
|
|
1485
|
+
"output": {}
|
|
1486
|
+
}`,
|
|
1487
|
+
},
|
|
1488
|
+
{
|
|
1489
|
+
key: "$geoNear",
|
|
1490
|
+
template: `{
|
|
1491
|
+
"near": {
|
|
1492
|
+
"type": "Point",
|
|
1493
|
+
"coordinates": [
|
|
1494
|
+
-73.98142, 40.71782
|
|
1495
|
+
]
|
|
1308
1496
|
},
|
|
1309
|
-
|
|
1310
|
-
|
|
1497
|
+
"key": "location",
|
|
1498
|
+
"distanceField": "dist.calculated",
|
|
1499
|
+
"query": { "category": "Parks" }
|
|
1500
|
+
}`,
|
|
1501
|
+
},
|
|
1502
|
+
{
|
|
1503
|
+
key: "$graphLookup",
|
|
1504
|
+
template: `{
|
|
1505
|
+
"from": "",
|
|
1506
|
+
"startWith": "",
|
|
1507
|
+
"connectFromField": "",
|
|
1508
|
+
"connectToField": "",
|
|
1509
|
+
"as": "",
|
|
1510
|
+
"maxDepth": 1,
|
|
1511
|
+
"depthField": "",
|
|
1512
|
+
"restrictSearchWithMatch": {}
|
|
1513
|
+
}`,
|
|
1514
|
+
},
|
|
1515
|
+
{
|
|
1516
|
+
key: "$group",
|
|
1517
|
+
template: `{
|
|
1518
|
+
"_id": ""
|
|
1519
|
+
}`,
|
|
1520
|
+
},
|
|
1521
|
+
{
|
|
1522
|
+
key: "$indexStats",
|
|
1523
|
+
template: "{\n\t\n}",
|
|
1524
|
+
},
|
|
1525
|
+
{
|
|
1526
|
+
key: "$limit",
|
|
1527
|
+
template: `1`,
|
|
1528
|
+
},
|
|
1529
|
+
{
|
|
1530
|
+
key: "$listLocalSessions",
|
|
1531
|
+
template: `{\n\t\n}`,
|
|
1532
|
+
},
|
|
1533
|
+
{
|
|
1534
|
+
key: "$listSessions",
|
|
1535
|
+
template: `{\n\t\n}`,
|
|
1536
|
+
},
|
|
1537
|
+
{
|
|
1538
|
+
key: "$lookup",
|
|
1539
|
+
template: `{
|
|
1540
|
+
"from": "",
|
|
1541
|
+
"localField": "",
|
|
1542
|
+
"foreignField": "",
|
|
1543
|
+
"as": ""
|
|
1544
|
+
}`,
|
|
1545
|
+
},
|
|
1546
|
+
{
|
|
1547
|
+
key: "$match",
|
|
1548
|
+
template: "{\n\t\n}",
|
|
1549
|
+
},
|
|
1550
|
+
{
|
|
1551
|
+
key: "$merge",
|
|
1552
|
+
template: `{
|
|
1553
|
+
"into": {},
|
|
1554
|
+
"on": "_id",
|
|
1555
|
+
"whenMatched": "replace",
|
|
1556
|
+
"whenNotMatched": "insert"
|
|
1557
|
+
}`,
|
|
1558
|
+
},
|
|
1559
|
+
{
|
|
1560
|
+
key: "$out",
|
|
1561
|
+
template: `{
|
|
1562
|
+
"db": "",
|
|
1563
|
+
"coll": ""
|
|
1564
|
+
}`,
|
|
1565
|
+
},
|
|
1566
|
+
{
|
|
1567
|
+
key: "$planCacheStats",
|
|
1568
|
+
template: "{\n\t\n}",
|
|
1569
|
+
},
|
|
1570
|
+
{
|
|
1571
|
+
key: "$project",
|
|
1572
|
+
template: "{\n\t\n}",
|
|
1573
|
+
},
|
|
1574
|
+
{
|
|
1575
|
+
key: "$redact",
|
|
1576
|
+
template: "",
|
|
1577
|
+
},
|
|
1578
|
+
{
|
|
1579
|
+
key: "$replaceRoot",
|
|
1580
|
+
template: `{ "newRoot": "" }`,
|
|
1581
|
+
},
|
|
1582
|
+
{
|
|
1583
|
+
key: "$replaceWith",
|
|
1584
|
+
template: ``,
|
|
1585
|
+
},
|
|
1586
|
+
{
|
|
1587
|
+
key: "$sample",
|
|
1588
|
+
template: `{ "size": 3 }`,
|
|
1589
|
+
},
|
|
1590
|
+
{
|
|
1591
|
+
key: "$set",
|
|
1592
|
+
template: "{\n\t\n}",
|
|
1593
|
+
},
|
|
1594
|
+
{
|
|
1595
|
+
key: "$setWindowFields",
|
|
1596
|
+
template: `{
|
|
1597
|
+
"partitionBy": "",
|
|
1598
|
+
"sortBy": {},
|
|
1599
|
+
"output": {}
|
|
1600
|
+
}`,
|
|
1601
|
+
},
|
|
1602
|
+
{
|
|
1603
|
+
key: "$skip",
|
|
1604
|
+
template: `1`,
|
|
1605
|
+
},
|
|
1606
|
+
{
|
|
1607
|
+
key: "$sort",
|
|
1608
|
+
template: "{\n\t\n}",
|
|
1609
|
+
},
|
|
1610
|
+
{
|
|
1611
|
+
key: "$sortByCount",
|
|
1612
|
+
template: "",
|
|
1613
|
+
},
|
|
1614
|
+
{
|
|
1615
|
+
key: "$unionWith",
|
|
1616
|
+
template: `{
|
|
1617
|
+
"coll": "",
|
|
1618
|
+
"pipeline": []
|
|
1619
|
+
}`,
|
|
1620
|
+
},
|
|
1621
|
+
{
|
|
1622
|
+
key: "$unset",
|
|
1623
|
+
template: "",
|
|
1624
|
+
},
|
|
1625
|
+
{
|
|
1626
|
+
key: "$unwind",
|
|
1627
|
+
template: `{
|
|
1628
|
+
"path": "",
|
|
1629
|
+
"includeArrayIndex": "",
|
|
1630
|
+
"preserveNullAndEmptyArrays": true
|
|
1631
|
+
}`,
|
|
1632
|
+
},
|
|
1633
|
+
],
|
|
1634
|
+
},
|
|
1311
1635
|
},
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
},
|
|
1329
|
-
{
|
|
1330
|
-
key: "$bucketAuto",
|
|
1331
|
-
template: `{
|
|
1332
|
-
"groupBy": "",
|
|
1333
|
-
"buckets": 1,
|
|
1334
|
-
"output": {},
|
|
1335
|
-
"granularity": "R5"
|
|
1336
|
-
}`,
|
|
1337
|
-
},
|
|
1338
|
-
{
|
|
1339
|
-
key: "$changeStream",
|
|
1340
|
-
template: `{
|
|
1341
|
-
"allChangesForCluster": true,
|
|
1342
|
-
"fullDocument": "",
|
|
1343
|
-
"fullDocumentBeforeChange": "",
|
|
1344
|
-
"resumeAfter": 1,
|
|
1345
|
-
"showExpandedEvents": true,
|
|
1346
|
-
"startAfter": {},
|
|
1347
|
-
"startAtOperationTime": ""
|
|
1348
|
-
}`,
|
|
1349
|
-
},
|
|
1350
|
-
{
|
|
1351
|
-
key: "$collStats",
|
|
1352
|
-
template: `{
|
|
1353
|
-
"latencyStats": { "histograms": true } },
|
|
1354
|
-
"storageStats": { "scale": 1 } },
|
|
1355
|
-
"count": {},
|
|
1356
|
-
"queryExecStats": {}
|
|
1357
|
-
}`,
|
|
1358
|
-
},
|
|
1359
|
-
{
|
|
1360
|
-
key: "$count",
|
|
1361
|
-
template: ``,
|
|
1636
|
+
extra: {
|
|
1637
|
+
collection: {
|
|
1638
|
+
displayName: "Collection",
|
|
1639
|
+
type: DatasourceFieldType.STRING,
|
|
1640
|
+
required: true,
|
|
1641
|
+
},
|
|
1642
|
+
actionType: {
|
|
1643
|
+
displayName: "Query Type",
|
|
1644
|
+
type: DatasourceFieldType.LIST,
|
|
1645
|
+
required: true,
|
|
1646
|
+
data: {
|
|
1647
|
+
read: ["find", "findOne", "findOneAndUpdate", "count", "distinct"],
|
|
1648
|
+
create: ["insertOne", "insertMany"],
|
|
1649
|
+
update: ["updateOne", "updateMany"],
|
|
1650
|
+
delete: ["deleteOne", "deleteMany"],
|
|
1651
|
+
aggregate: ["json", "pipeline"],
|
|
1362
1652
|
},
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
template: `{
|
|
1366
|
-
"field": "",
|
|
1367
|
-
"partitionByFields": [],
|
|
1368
|
-
"range": {
|
|
1369
|
-
"step": 1,
|
|
1370
|
-
"unit": 1,
|
|
1371
|
-
"bounds": "full"
|
|
1653
|
+
},
|
|
1654
|
+
},
|
|
1372
1655
|
}
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
}
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
"type": "Point",
|
|
1397
|
-
"coordinates": [
|
|
1398
|
-
-73.98142, 40.71782
|
|
1399
|
-
]
|
|
1400
|
-
},
|
|
1401
|
-
"key": "location",
|
|
1402
|
-
"distanceField": "dist.calculated",
|
|
1403
|
-
"query": { "category": "Parks" }
|
|
1404
|
-
}`,
|
|
1405
|
-
},
|
|
1406
|
-
{
|
|
1407
|
-
key: "$graphLookup",
|
|
1408
|
-
template: `{
|
|
1409
|
-
"from": "",
|
|
1410
|
-
"startWith": "",
|
|
1411
|
-
"connectFromField": "",
|
|
1412
|
-
"connectToField": "",
|
|
1413
|
-
"as": "",
|
|
1414
|
-
"maxDepth": 1,
|
|
1415
|
-
"depthField": "",
|
|
1416
|
-
"restrictSearchWithMatch": {}
|
|
1417
|
-
}`,
|
|
1418
|
-
},
|
|
1419
|
-
{
|
|
1420
|
-
key: "$group",
|
|
1421
|
-
template: `{
|
|
1422
|
-
"_id": ""
|
|
1423
|
-
}`,
|
|
1424
|
-
},
|
|
1425
|
-
{
|
|
1426
|
-
key: "$indexStats",
|
|
1427
|
-
template: "{\n\t\n}",
|
|
1428
|
-
},
|
|
1429
|
-
{
|
|
1430
|
-
key: "$limit",
|
|
1431
|
-
template: `1`,
|
|
1432
|
-
},
|
|
1433
|
-
{
|
|
1434
|
-
key: "$listLocalSessions",
|
|
1435
|
-
template: `{\n\t\n}`,
|
|
1436
|
-
},
|
|
1437
|
-
{
|
|
1438
|
-
key: "$listSessions",
|
|
1439
|
-
template: `{\n\t\n}`,
|
|
1440
|
-
},
|
|
1441
|
-
{
|
|
1442
|
-
key: "$lookup",
|
|
1443
|
-
template: `{
|
|
1444
|
-
"from": "",
|
|
1445
|
-
"localField": "",
|
|
1446
|
-
"foreignField": "",
|
|
1447
|
-
"as": ""
|
|
1448
|
-
}`,
|
|
1449
|
-
},
|
|
1450
|
-
{
|
|
1451
|
-
key: "$match",
|
|
1452
|
-
template: "{\n\t\n}",
|
|
1453
|
-
},
|
|
1454
|
-
{
|
|
1455
|
-
key: "$merge",
|
|
1456
|
-
template: `{
|
|
1457
|
-
"into": {},
|
|
1458
|
-
"on": "_id",
|
|
1459
|
-
"whenMatched": "replace",
|
|
1460
|
-
"whenNotMatched": "insert"
|
|
1461
|
-
}`,
|
|
1656
|
+
if (environment.SELF_HOSTED) {
|
|
1657
|
+
schema.datasource = {
|
|
1658
|
+
...schema.datasource,
|
|
1659
|
+
//@ts-ignore
|
|
1660
|
+
tls: {
|
|
1661
|
+
type: DatasourceFieldType.FIELD_GROUP,
|
|
1662
|
+
display: "Configure SSL",
|
|
1663
|
+
fields: {
|
|
1664
|
+
tlsCertificateFile: {
|
|
1665
|
+
type: DatasourceFieldType.STRING,
|
|
1666
|
+
required: false,
|
|
1667
|
+
display: "Certificate file path",
|
|
1668
|
+
},
|
|
1669
|
+
tlsCertificateKeyFile: {
|
|
1670
|
+
type: DatasourceFieldType.STRING,
|
|
1671
|
+
required: false,
|
|
1672
|
+
display: "Certificate Key file path",
|
|
1673
|
+
},
|
|
1674
|
+
tlsCAFile: {
|
|
1675
|
+
type: DatasourceFieldType.STRING,
|
|
1676
|
+
required: false,
|
|
1677
|
+
display: "CA file path",
|
|
1678
|
+
},
|
|
1462
1679
|
},
|
|
1463
|
-
{
|
|
1464
|
-
key: "$out",
|
|
1465
|
-
template: `{
|
|
1466
|
-
"db": "",
|
|
1467
|
-
"coll": ""
|
|
1468
|
-
}`,
|
|
1469
|
-
},
|
|
1470
|
-
{
|
|
1471
|
-
key: "$planCacheStats",
|
|
1472
|
-
template: "{\n\t\n}",
|
|
1473
|
-
},
|
|
1474
|
-
{
|
|
1475
|
-
key: "$project",
|
|
1476
|
-
template: "{\n\t\n}",
|
|
1477
|
-
},
|
|
1478
|
-
{
|
|
1479
|
-
key: "$redact",
|
|
1480
|
-
template: "",
|
|
1481
|
-
},
|
|
1482
|
-
{
|
|
1483
|
-
key: "$replaceRoot",
|
|
1484
|
-
template: `{ "newRoot": "" }`,
|
|
1485
|
-
},
|
|
1486
|
-
{
|
|
1487
|
-
key: "$replaceWith",
|
|
1488
|
-
template: ``,
|
|
1489
|
-
},
|
|
1490
|
-
{
|
|
1491
|
-
key: "$sample",
|
|
1492
|
-
template: `{ "size": 3 }`,
|
|
1493
|
-
},
|
|
1494
|
-
{
|
|
1495
|
-
key: "$set",
|
|
1496
|
-
template: "{\n\t\n}",
|
|
1497
|
-
},
|
|
1498
|
-
{
|
|
1499
|
-
key: "$setWindowFields",
|
|
1500
|
-
template: `{
|
|
1501
|
-
"partitionBy": "",
|
|
1502
|
-
"sortBy": {},
|
|
1503
|
-
"output": {}
|
|
1504
|
-
}`,
|
|
1505
|
-
},
|
|
1506
|
-
{
|
|
1507
|
-
key: "$skip",
|
|
1508
|
-
template: `1`,
|
|
1509
|
-
},
|
|
1510
|
-
{
|
|
1511
|
-
key: "$sort",
|
|
1512
|
-
template: "{\n\t\n}",
|
|
1513
|
-
},
|
|
1514
|
-
{
|
|
1515
|
-
key: "$sortByCount",
|
|
1516
|
-
template: "",
|
|
1517
|
-
},
|
|
1518
|
-
{
|
|
1519
|
-
key: "$unionWith",
|
|
1520
|
-
template: `{
|
|
1521
|
-
"coll": "",
|
|
1522
|
-
"pipeline": []
|
|
1523
|
-
}`,
|
|
1524
|
-
},
|
|
1525
|
-
{
|
|
1526
|
-
key: "$unset",
|
|
1527
|
-
template: "",
|
|
1528
|
-
},
|
|
1529
|
-
{
|
|
1530
|
-
key: "$unwind",
|
|
1531
|
-
template: `{
|
|
1532
|
-
"path": "",
|
|
1533
|
-
"includeArrayIndex": "",
|
|
1534
|
-
"preserveNullAndEmptyArrays": true
|
|
1535
|
-
}`,
|
|
1536
|
-
},
|
|
1537
|
-
],
|
|
1538
|
-
},
|
|
1539
|
-
},
|
|
1540
|
-
extra: {
|
|
1541
|
-
collection: {
|
|
1542
|
-
displayName: "Collection",
|
|
1543
|
-
type: DatasourceFieldType.STRING,
|
|
1544
|
-
required: true,
|
|
1545
|
-
},
|
|
1546
|
-
actionType: {
|
|
1547
|
-
displayName: "Query Type",
|
|
1548
|
-
type: DatasourceFieldType.LIST,
|
|
1549
|
-
required: true,
|
|
1550
|
-
data: {
|
|
1551
|
-
read: ["find", "findOne", "findOneAndUpdate", "count", "distinct"],
|
|
1552
|
-
create: ["insertOne", "insertMany"],
|
|
1553
|
-
update: ["updateOne", "updateMany"],
|
|
1554
|
-
delete: ["deleteOne", "deleteMany"],
|
|
1555
|
-
aggregate: ["json", "pipeline"],
|
|
1556
1680
|
},
|
|
1557
|
-
}
|
|
1558
|
-
}
|
|
1681
|
+
}
|
|
1682
|
+
}
|
|
1683
|
+
return schema
|
|
1559
1684
|
}
|
|
1560
1685
|
|
|
1686
|
+
const SCHEMA: Integration = getSchema()
|
|
1687
|
+
|
|
1561
1688
|
class MongoIntegration implements IntegrationBase {
|
|
1562
1689
|
private config: MongoDBConfig
|
|
1563
1690
|
private client: any
|
|
1564
1691
|
|
|
1565
1692
|
constructor(config: MongoDBConfig) {
|
|
1566
1693
|
this.config = config
|
|
1567
|
-
|
|
1694
|
+
const options: MongoClientOptions = {
|
|
1695
|
+
tlsCertificateFile: config.tlsCertificateFile || undefined,
|
|
1696
|
+
tlsCertificateKeyFile: config.tlsCertificateKeyFile || undefined,
|
|
1697
|
+
tlsCAFile: config.tlsCAFile || undefined,
|
|
1698
|
+
}
|
|
1699
|
+
this.client = new MongoClient(config.connectionString, options)
|
|
1568
1700
|
}
|
|
1569
1701
|
|
|
1570
1702
|
async connect() {
|
|
@@ -1582,7 +1714,7 @@ class MongoIntegration implements IntegrationBase {
|
|
|
1582
1714
|
typeof json[field] === "string" &&
|
|
1583
1715
|
json[field].toLowerCase().startsWith("objectid")
|
|
1584
1716
|
) {
|
|
1585
|
-
const id = json[field].match(/(?<=objectid\(['"]).*(?=['"]\))/gi)
|
|
1717
|
+
const id = json[field].match(/(?<=objectid\(['"]).*(?=['"]\))/gi)?.[0]
|
|
1586
1718
|
if (id) {
|
|
1587
1719
|
json[field] = ObjectId.createFromHexString(id)
|
|
1588
1720
|
}
|
|
@@ -1803,7 +1935,7 @@ class MongoIntegration implements IntegrationBase {
|
|
|
1803
1935
|
}
|
|
1804
1936
|
}
|
|
1805
1937
|
|
|
1806
|
-
|
|
1938
|
+
<span class="fstat-no" title="function not covered" > async a</span>ggregate(query: {
|
|
1807
1939
|
json: object
|
|
1808
1940
|
steps: any[]
|
|
1809
1941
|
extra: { [key: string]: string }
|
|
@@ -1814,7 +1946,7 @@ class MongoIntegration implements IntegrationBase {
|
|
|
1814
1946
|
const collection = <span class="cstat-no" title="statement not covered" >db.collection(query.extra.collection)</span>
|
|
1815
1947
|
let response = <span class="cstat-no" title="statement not covered" >[]</span>
|
|
1816
1948
|
<span class="cstat-no" title="statement not covered" > if (query.extra?.actionType === "pipeline") {</span>
|
|
1817
|
-
<span class="cstat-no" title="statement not covered" > for await (const doc
|
|
1949
|
+
<span class="cstat-no" title="statement not covered" > for await (const doc of collection.aggregate(</span>
|
|
1818
1950
|
query.steps.map(<span class="fstat-no" title="function not covered" >({</span> key, value }) => {
|
|
1819
1951
|
let temp: any = <span class="cstat-no" title="statement not covered" >{}</span>
|
|
1820
1952
|
<span class="cstat-no" title="statement not covered" > temp[key] = JSON.parse(value.value)</span>
|
|
@@ -1824,8 +1956,8 @@ class MongoIntegration implements IntegrationBase {
|
|
|
1824
1956
|
<span class="cstat-no" title="statement not covered" > response.push(doc)</span>
|
|
1825
1957
|
}
|
|
1826
1958
|
} else {
|
|
1827
|
-
const stages: Array<any> = <span class="cstat-no" title="statement not covered" >query.json as Array<any>
|
|
1828
|
-
<span class="cstat-no" title="statement not covered" > for await (const doc
|
|
1959
|
+
const stages: Array<any> = <span class="cstat-no" title="statement not covered" >query.json </span>as Array<any>
|
|
1960
|
+
<span class="cstat-no" title="statement not covered" > for await (const doc of collection.aggregate(</span>
|
|
1829
1961
|
stages ? this.createObjectIds(stages) : []
|
|
1830
1962
|
)) {
|
|
1831
1963
|
<span class="cstat-no" title="statement not covered" > response.push(doc)</span>
|
|
@@ -1852,7 +1984,7 @@ export default {
|
|
|
1852
1984
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1853
1985
|
Code coverage generated by
|
|
1854
1986
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1855
|
-
at
|
|
1987
|
+
at Sun Feb 05 2023 23:58:26 GMT+0000 (Coordinated Universal Time)
|
|
1856
1988
|
</div>
|
|
1857
1989
|
<script src="../../prettify.js"></script>
|
|
1858
1990
|
<script>
|