@budibase/backend-core 2.9.39-alpha.8 → 2.9.39
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/dist/jest.config.js +25 -0
- package/dist/jest.config.js.map +1 -0
- package/dist/package.json +5 -5
- package/dist/src/accounts/accounts.js +75 -92
- package/dist/src/accounts/accounts.js.map +1 -7
- package/dist/src/accounts/api.js +85 -71
- package/dist/src/accounts/api.js.map +1 -7
- package/dist/src/accounts/index.js +16 -21
- package/dist/src/accounts/index.js.map +1 -7
- package/dist/src/auth/auth.js +178 -197
- package/dist/src/auth/auth.js.map +1 -7
- package/dist/src/auth/index.js +16 -21
- package/dist/src/auth/index.js.map +1 -7
- package/dist/src/blacklist/blacklist.js +69 -81
- package/dist/src/blacklist/blacklist.js.map +1 -7
- package/dist/src/blacklist/index.js +16 -21
- package/dist/src/blacklist/index.js.map +1 -7
- package/dist/src/cache/appMetadata.js +88 -78
- package/dist/src/cache/appMetadata.js.map +1 -7
- package/dist/src/cache/base/index.js +110 -92
- package/dist/src/cache/base/index.js.map +1 -7
- package/dist/src/cache/generic.js +26 -64
- package/dist/src/cache/generic.js.map +1 -7
- package/dist/src/cache/index.js +32 -48
- package/dist/src/cache/index.js.map +1 -7
- package/dist/src/cache/user.js +115 -91
- package/dist/src/cache/user.js.map +1 -7
- package/dist/src/cache/writethrough.js +144 -129
- package/dist/src/cache/writethrough.js.map +1 -7
- package/dist/src/configs/configs.js +265 -215
- package/dist/src/configs/configs.js.map +1 -7
- package/dist/src/configs/index.js +16 -21
- package/dist/src/configs/index.js.map +1 -7
- package/dist/src/constants/db.js +64 -104
- package/dist/src/constants/db.js.map +1 -7
- package/dist/src/constants/index.js +17 -23
- package/dist/src/constants/index.js.map +1 -7
- package/dist/src/constants/misc.js +53 -91
- package/dist/src/constants/misc.js.map +1 -7
- package/dist/src/context/Context.js +11 -33
- package/dist/src/context/Context.js.map +1 -7
- package/dist/src/context/identity.js +60 -75
- package/dist/src/context/identity.js.map +1 -7
- package/dist/src/context/index.js +31 -42
- package/dist/src/context/index.js.map +1 -7
- package/dist/src/context/mainContext.js +275 -264
- package/dist/src/context/mainContext.js.map +1 -7
- package/dist/src/context/types.js +2 -16
- package/dist/src/context/types.js.map +1 -7
- package/dist/src/db/Replication.js +81 -85
- package/dist/src/db/Replication.js.map +1 -7
- package/dist/src/db/constants.js +11 -37
- package/dist/src/db/constants.js.map +1 -7
- package/dist/src/db/couch/DatabaseImpl.js +236 -212
- package/dist/src/db/couch/DatabaseImpl.js.map +1 -7
- package/dist/src/db/couch/connections.js +81 -96
- package/dist/src/db/couch/connections.js.map +1 -7
- package/dist/src/db/couch/index.js +25 -42
- package/dist/src/db/couch/index.js.map +1 -7
- package/dist/src/db/couch/pouchDB.js +93 -103
- package/dist/src/db/couch/pouchDB.js.map +1 -7
- package/dist/src/db/couch/pouchDump.js +1 -1
- package/dist/src/db/couch/pouchDump.js.map +1 -7
- package/dist/src/db/couch/utils.js +49 -70
- package/dist/src/db/couch/utils.js.map +1 -7
- package/dist/src/db/db.js +49 -63
- package/dist/src/db/db.js.map +1 -7
- package/dist/src/db/errors.js +17 -38
- package/dist/src/db/errors.js.map +1 -7
- package/dist/src/db/index.js +45 -61
- package/dist/src/db/index.js.map +1 -7
- package/dist/src/db/lucene.js +655 -582
- package/dist/src/db/lucene.js.map +1 -7
- package/dist/src/db/searchIndexes/index.js +16 -21
- package/dist/src/db/searchIndexes/index.js.map +1 -7
- package/dist/src/db/searchIndexes/searchIndexes.js +72 -77
- package/dist/src/db/searchIndexes/searchIndexes.js.map +1 -7
- package/dist/src/db/utils.js +199 -184
- package/dist/src/db/utils.js.map +1 -7
- package/dist/src/db/views.js +187 -191
- package/dist/src/db/views.js.map +1 -7
- package/dist/src/docIds/conversions.js +48 -69
- package/dist/src/docIds/conversions.js.map +1 -7
- package/dist/src/docIds/ids.js +87 -76
- package/dist/src/docIds/ids.js.map +1 -7
- package/dist/src/docIds/index.js +17 -23
- package/dist/src/docIds/index.js.map +1 -7
- package/dist/src/docIds/newid.js +6 -29
- package/dist/src/docIds/newid.js.map +1 -7
- package/dist/src/docIds/params.js +111 -109
- package/dist/src/docIds/params.js.map +1 -7
- package/dist/src/docUpdates/index.js +29 -54
- package/dist/src/docUpdates/index.js.map +1 -7
- package/dist/src/environment.js +81 -152
- package/dist/src/environment.js.map +1 -7
- package/dist/src/errors/errors.js +77 -106
- package/dist/src/errors/errors.js.map +1 -7
- package/dist/src/errors/index.js +16 -21
- package/dist/src/errors/index.js.map +1 -7
- package/dist/src/events/analytics.js +38 -38
- package/dist/src/events/analytics.js.map +1 -7
- package/dist/src/events/asyncEvents/index.js +17 -23
- package/dist/src/events/asyncEvents/index.js.map +1 -7
- package/dist/src/events/asyncEvents/publisher.js +24 -36
- package/dist/src/events/asyncEvents/publisher.js.map +1 -7
- package/dist/src/events/asyncEvents/queue.js +21 -37
- package/dist/src/events/asyncEvents/queue.js.map +1 -7
- package/dist/src/events/backfill.js +170 -163
- package/dist/src/events/backfill.js.map +1 -7
- package/dist/src/events/documentId.js +23 -46
- package/dist/src/events/documentId.js.map +1 -7
- package/dist/src/events/events.js +68 -58
- package/dist/src/events/events.js.map +1 -7
- package/dist/src/events/identification.js +279 -254
- package/dist/src/events/identification.js.map +1 -7
- package/dist/src/events/index.js +42 -57
- package/dist/src/events/index.js.map +1 -7
- package/dist/src/events/processors/AnalyticsProcessor.js +81 -64
- package/dist/src/events/processors/AnalyticsProcessor.js.map +1 -7
- package/dist/src/events/processors/AuditLogsProcessor.js +79 -90
- package/dist/src/events/processors/AuditLogsProcessor.js.map +1 -7
- package/dist/src/events/processors/LoggingProcessor.js +39 -50
- package/dist/src/events/processors/LoggingProcessor.js.map +1 -7
- package/dist/src/events/processors/Processors.js +44 -49
- package/dist/src/events/processors/Processors.js.map +1 -7
- package/dist/src/events/processors/async/DocumentUpdateProcessor.js +37 -46
- package/dist/src/events/processors/async/DocumentUpdateProcessor.js.map +1 -7
- package/dist/src/events/processors/index.js +18 -52
- package/dist/src/events/processors/index.js.map +1 -7
- package/dist/src/events/processors/posthog/PosthogProcessor.js +126 -113
- package/dist/src/events/processors/posthog/PosthogProcessor.js.map +1 -7
- package/dist/src/events/processors/posthog/index.js +6 -34
- package/dist/src/events/processors/posthog/index.js.map +1 -7
- package/dist/src/events/processors/posthog/rateLimiting.js +104 -90
- package/dist/src/events/processors/posthog/rateLimiting.js.map +1 -7
- package/dist/src/events/processors/types.js +2 -28
- package/dist/src/events/processors/types.js.map +1 -7
- package/dist/src/events/publishers/account.js +37 -43
- package/dist/src/events/publishers/account.js.map +1 -7
- package/dist/src/events/publishers/app.js +139 -131
- package/dist/src/events/publishers/app.js.map +1 -7
- package/dist/src/events/publishers/auditLog.js +29 -37
- package/dist/src/events/publishers/auditLog.js.map +1 -7
- package/dist/src/events/publishers/auth.js +71 -71
- package/dist/src/events/publishers/auth.js.map +1 -7
- package/dist/src/events/publishers/automation.js +108 -102
- package/dist/src/events/publishers/automation.js.map +1 -7
- package/dist/src/events/publishers/backfill.js +75 -82
- package/dist/src/events/publishers/backfill.js.map +1 -7
- package/dist/src/events/publishers/backup.js +36 -44
- package/dist/src/events/publishers/backup.js.map +1 -7
- package/dist/src/events/publishers/datasource.js +46 -51
- package/dist/src/events/publishers/datasource.js.map +1 -7
- package/dist/src/events/publishers/email.js +25 -33
- package/dist/src/events/publishers/email.js.map +1 -7
- package/dist/src/events/publishers/environmentVariable.js +38 -47
- package/dist/src/events/publishers/environmentVariable.js.map +1 -7
- package/dist/src/events/publishers/group.js +97 -95
- package/dist/src/events/publishers/group.js.map +1 -7
- package/dist/src/events/publishers/index.js +53 -106
- package/dist/src/events/publishers/index.js.map +1 -7
- package/dist/src/events/publishers/installation.js +45 -49
- package/dist/src/events/publishers/installation.js.map +1 -7
- package/dist/src/events/publishers/layout.js +29 -37
- package/dist/src/events/publishers/layout.js.map +1 -7
- package/dist/src/events/publishers/license.js +67 -68
- package/dist/src/events/publishers/license.js.map +1 -7
- package/dist/src/events/publishers/org.js +44 -45
- package/dist/src/events/publishers/org.js.map +1 -7
- package/dist/src/events/publishers/plugin.js +49 -55
- package/dist/src/events/publishers/plugin.js.map +1 -7
- package/dist/src/events/publishers/query.js +70 -81
- package/dist/src/events/publishers/query.js.map +1 -7
- package/dist/src/events/publishers/role.js +61 -63
- package/dist/src/events/publishers/role.js.map +1 -7
- package/dist/src/events/publishers/rows.js +28 -39
- package/dist/src/events/publishers/rows.js.map +1 -7
- package/dist/src/events/publishers/screen.js +41 -47
- package/dist/src/events/publishers/screen.js.map +1 -7
- package/dist/src/events/publishers/serve.js +41 -47
- package/dist/src/events/publishers/serve.js.map +1 -7
- package/dist/src/events/publishers/table.js +69 -71
- package/dist/src/events/publishers/table.js.map +1 -7
- package/dist/src/events/publishers/user.js +184 -173
- package/dist/src/events/publishers/user.js.map +1 -7
- package/dist/src/events/publishers/view.js +98 -89
- package/dist/src/events/publishers/view.js.map +1 -7
- package/dist/src/features/index.js +88 -93
- package/dist/src/features/index.js.map +1 -7
- package/dist/src/features/installation.js +16 -38
- package/dist/src/features/installation.js.map +1 -7
- package/dist/src/helpers.js +11 -28
- package/dist/src/helpers.js.map +1 -7
- package/dist/src/index.js +77 -148
- package/dist/src/index.js.map +1 -7
- package/dist/src/installation.js +127 -128
- package/dist/src/installation.js.map +1 -7
- package/dist/src/logging/alerts.js +14 -39
- package/dist/src/logging/alerts.js.map +1 -7
- package/dist/src/logging/correlation/correlation.js +11 -35
- package/dist/src/logging/correlation/correlation.js.map +1 -7
- package/dist/src/logging/correlation/index.js +16 -21
- package/dist/src/logging/correlation/index.js.map +1 -7
- package/dist/src/logging/correlation/middleware.js +13 -33
- package/dist/src/logging/correlation/middleware.js.map +1 -7
- package/dist/src/logging/index.js +32 -45
- package/dist/src/logging/index.js.map +1 -7
- package/dist/src/logging/pino/logger.js +206 -185
- package/dist/src/logging/pino/logger.js.map +1 -7
- package/dist/src/logging/pino/middleware.js +38 -68
- package/dist/src/logging/pino/middleware.js.map +1 -7
- package/dist/src/logging/system.js +86 -95
- package/dist/src/logging/system.js.map +1 -7
- package/dist/src/middleware/adminOnly.js +16 -28
- package/dist/src/middleware/adminOnly.js.map +1 -7
- package/dist/src/middleware/auditLog.js +13 -24
- package/dist/src/middleware/auditLog.js.map +1 -7
- package/dist/src/middleware/authenticated.js +191 -165
- package/dist/src/middleware/authenticated.js.map +1 -7
- package/dist/src/middleware/builderOnly.js +29 -44
- package/dist/src/middleware/builderOnly.js.map +1 -7
- package/dist/src/middleware/builderOrAdmin.js +29 -44
- package/dist/src/middleware/builderOrAdmin.js.map +1 -7
- package/dist/src/middleware/csrf.js +75 -54
- package/dist/src/middleware/csrf.js.map +1 -7
- package/dist/src/middleware/errorHandling.js +60 -58
- package/dist/src/middleware/errorHandling.js.map +1 -7
- package/dist/src/middleware/index.js +61 -91
- package/dist/src/middleware/index.js.map +1 -7
- package/dist/src/middleware/internalApi.js +27 -36
- package/dist/src/middleware/internalApi.js.map +1 -7
- package/dist/src/middleware/joi-validator.js +39 -65
- package/dist/src/middleware/joi-validator.js.map +1 -7
- package/dist/src/middleware/matchers.js +36 -55
- package/dist/src/middleware/matchers.js.map +1 -7
- package/dist/src/middleware/passport/datasource/google.js +88 -96
- package/dist/src/middleware/passport/datasource/google.js.map +1 -7
- package/dist/src/middleware/passport/local.js +74 -66
- package/dist/src/middleware/passport/local.js.map +1 -7
- package/dist/src/middleware/passport/sso/google.js +81 -84
- package/dist/src/middleware/passport/sso/google.js.map +1 -7
- package/dist/src/middleware/passport/sso/oidc.js +140 -124
- package/dist/src/middleware/passport/sso/oidc.js.map +1 -7
- package/dist/src/middleware/passport/sso/sso.js +157 -141
- package/dist/src/middleware/passport/sso/sso.js.map +1 -7
- package/dist/src/middleware/passport/utils.js +60 -56
- package/dist/src/middleware/passport/utils.js.map +1 -7
- package/dist/src/middleware/querystringToBody.js +26 -42
- package/dist/src/middleware/querystringToBody.js.map +1 -7
- package/dist/src/middleware/tenancy.js +33 -42
- package/dist/src/middleware/tenancy.js.map +1 -7
- package/dist/src/migrations/definitions.js +37 -61
- package/dist/src/migrations/definitions.js.map +1 -7
- package/dist/src/migrations/index.js +17 -23
- package/dist/src/migrations/index.js.map +1 -7
- package/dist/src/migrations/migrations.js +182 -162
- package/dist/src/migrations/migrations.js.map +1 -7
- package/dist/src/objectStore/buckets/app.js +65 -57
- package/dist/src/objectStore/buckets/app.js.map +1 -7
- package/dist/src/objectStore/buckets/global.js +50 -55
- package/dist/src/objectStore/buckets/global.js.map +1 -7
- package/dist/src/objectStore/buckets/index.js +18 -25
- package/dist/src/objectStore/buckets/index.js.map +1 -7
- package/dist/src/objectStore/buckets/plugins.js +76 -82
- package/dist/src/objectStore/buckets/plugins.js.map +1 -7
- package/dist/src/objectStore/cloudfront.js +27 -61
- package/dist/src/objectStore/cloudfront.js.map +1 -7
- package/dist/src/objectStore/index.js +18 -25
- package/dist/src/objectStore/index.js.map +1 -7
- package/dist/src/objectStore/objectStore.js +351 -341
- package/dist/src/objectStore/objectStore.js.map +1 -7
- package/dist/src/objectStore/utils.js +26 -52
- package/dist/src/objectStore/utils.js.map +1 -7
- package/dist/src/platform/index.js +30 -42
- package/dist/src/platform/index.js.map +1 -7
- package/dist/src/platform/platformDb.js +7 -30
- package/dist/src/platform/platformDb.js.map +1 -7
- package/dist/src/platform/tenants.js +126 -110
- package/dist/src/platform/tenants.js.map +1 -7
- package/dist/src/platform/users.js +84 -92
- package/dist/src/platform/users.js.map +1 -7
- package/dist/src/plugin/index.js +16 -21
- package/dist/src/plugin/index.js.map +1 -7
- package/dist/src/plugin/utils.js +129 -137
- package/dist/src/plugin/utils.js.map +1 -7
- package/dist/src/queue/constants.js +10 -34
- package/dist/src/queue/constants.js.map +1 -7
- package/dist/src/queue/inMemoryQueue.js +137 -131
- package/dist/src/queue/inMemoryQueue.js.map +1 -7
- package/dist/src/queue/index.js +17 -23
- package/dist/src/queue/index.js.map +1 -7
- package/dist/src/queue/listeners.js +170 -161
- package/dist/src/queue/listeners.js.map +1 -7
- package/dist/src/queue/queue.js +83 -76
- package/dist/src/queue/queue.js.map +1 -7
- package/dist/src/redis/index.js +34 -45
- package/dist/src/redis/index.js.map +1 -7
- package/dist/src/redis/init.js +125 -115
- package/dist/src/redis/init.js.map +1 -7
- package/dist/src/redis/redis.js +302 -244
- package/dist/src/redis/redis.js.map +1 -7
- package/dist/src/redis/redlockImpl.js +152 -135
- package/dist/src/redis/redlockImpl.js.map +1 -7
- package/dist/src/redis/utils.js +115 -128
- package/dist/src/redis/utils.js.map +1 -7
- package/dist/src/security/encryption.js +141 -162
- package/dist/src/security/encryption.js.map +1 -7
- package/dist/src/security/permissions.js +132 -170
- package/dist/src/security/permissions.js.map +1 -7
- package/dist/src/security/roles.js +319 -298
- package/dist/src/security/roles.js.map +1 -7
- package/dist/src/security/sessions.js +106 -120
- package/dist/src/security/sessions.js.map +1 -7
- package/dist/src/tenancy/db.js +7 -30
- package/dist/src/tenancy/db.js.map +1 -7
- package/dist/src/tenancy/index.js +17 -23
- package/dist/src/tenancy/index.js.map +1 -7
- package/dist/src/tenancy/tenancy.js +101 -114
- package/dist/src/tenancy/tenancy.js.map +1 -7
- package/dist/src/timers/index.js +16 -21
- package/dist/src/timers/index.js.map +1 -7
- package/dist/src/timers/timers.js +18 -43
- package/dist/src/timers/timers.js.map +1 -7
- package/dist/src/users/db.js +403 -357
- package/dist/src/users/db.js.map +1 -7
- package/dist/src/users/events.js +150 -133
- package/dist/src/users/events.js.map +1 -7
- package/dist/src/users/index.js +21 -34
- package/dist/src/users/index.js.map +1 -7
- package/dist/src/users/lookup.js +104 -102
- package/dist/src/users/lookup.js.map +1 -7
- package/dist/src/users/users.js +244 -240
- package/dist/src/users/users.js.map +1 -7
- package/dist/src/users/utils.js +87 -90
- package/dist/src/users/utils.js.map +1 -7
- package/dist/src/utils/hashing.js +42 -48
- package/dist/src/utils/hashing.js.map +1 -7
- package/dist/src/utils/index.js +18 -25
- package/dist/src/utils/index.js.map +1 -7
- package/dist/src/utils/stringUtils.js +6 -30
- package/dist/src/utils/stringUtils.js.map +1 -7
- package/dist/src/utils/utils.js +212 -172
- package/dist/src/utils/utils.js.map +1 -7
- package/dist/tests/core/logging.js +21 -45
- package/dist/tests/core/logging.js.map +1 -7
- package/dist/tests/core/utilities/index.js +34 -51
- package/dist/tests/core/utilities/index.js.map +1 -7
- package/dist/tests/core/utilities/jestUtils.js +16 -45
- package/dist/tests/core/utilities/jestUtils.js.map +1 -7
- package/dist/tests/core/utilities/mocks/alerts.js +27 -38
- package/dist/tests/core/utilities/mocks/alerts.js.map +1 -7
- package/dist/tests/core/utilities/mocks/date.js +5 -31
- package/dist/tests/core/utilities/mocks/date.js.map +1 -7
- package/dist/tests/core/utilities/mocks/events.js +141 -131
- package/dist/tests/core/utilities/mocks/events.js.map +1 -7
- package/dist/tests/core/utilities/mocks/fetch.js +10 -34
- package/dist/tests/core/utilities/mocks/fetch.js.map +1 -7
- package/dist/tests/core/utilities/mocks/index.js +39 -51
- package/dist/tests/core/utilities/mocks/index.js.map +1 -7
- package/dist/tests/core/utilities/mocks/licenses.js +67 -107
- package/dist/tests/core/utilities/mocks/licenses.js.map +1 -7
- package/dist/tests/core/utilities/mocks/posthog.js +6 -6
- package/dist/tests/core/utilities/mocks/posthog.js.map +1 -7
- package/dist/tests/core/utilities/structures/Chance.js +17 -44
- package/dist/tests/core/utilities/structures/Chance.js.map +1 -7
- package/dist/tests/core/utilities/structures/accounts.js +61 -131
- package/dist/tests/core/utilities/structures/accounts.js.map +1 -7
- package/dist/tests/core/utilities/structures/apps.js +21 -44
- package/dist/tests/core/utilities/structures/apps.js.map +1 -7
- package/dist/tests/core/utilities/structures/common.js +8 -32
- package/dist/tests/core/utilities/structures/common.js.map +1 -7
- package/dist/tests/core/utilities/structures/db.js +11 -35
- package/dist/tests/core/utilities/structures/db.js.map +1 -7
- package/dist/tests/core/utilities/structures/documents/index.js +16 -21
- package/dist/tests/core/utilities/structures/documents/index.js.map +1 -7
- package/dist/tests/core/utilities/structures/documents/platform/index.js +26 -37
- package/dist/tests/core/utilities/structures/documents/platform/index.js.map +1 -7
- package/dist/tests/core/utilities/structures/documents/platform/installation.js +34 -44
- package/dist/tests/core/utilities/structures/documents/platform/installation.js.map +1 -7
- package/dist/tests/core/utilities/structures/generator.js +7 -38
- package/dist/tests/core/utilities/structures/generator.js.map +1 -7
- package/dist/tests/core/utilities/structures/index.js +43 -78
- package/dist/tests/core/utilities/structures/index.js.map +1 -7
- package/dist/tests/core/utilities/structures/koa.js +7 -39
- package/dist/tests/core/utilities/structures/koa.js.map +1 -7
- package/dist/tests/core/utilities/structures/licenses.js +121 -156
- package/dist/tests/core/utilities/structures/licenses.js.map +1 -7
- package/dist/tests/core/utilities/structures/plugins.js +20 -43
- package/dist/tests/core/utilities/structures/plugins.js.map +1 -7
- package/dist/tests/core/utilities/structures/quotas.js +67 -90
- package/dist/tests/core/utilities/structures/quotas.js.map +1 -7
- package/dist/tests/core/utilities/structures/scim.js +57 -84
- package/dist/tests/core/utilities/structures/scim.js.map +1 -7
- package/dist/tests/core/utilities/structures/shared.js +9 -41
- package/dist/tests/core/utilities/structures/shared.js.map +1 -7
- package/dist/tests/core/utilities/structures/sso.js +112 -124
- package/dist/tests/core/utilities/structures/sso.js.map +1 -7
- package/dist/tests/core/utilities/structures/tenants.js +6 -29
- package/dist/tests/core/utilities/structures/tenants.js.map +1 -7
- package/dist/tests/core/utilities/structures/userGroups.js +10 -33
- package/dist/tests/core/utilities/structures/userGroups.js.map +1 -7
- package/dist/tests/core/utilities/structures/users.js +36 -84
- package/dist/tests/core/utilities/structures/users.js.map +1 -7
- package/dist/tests/core/utilities/testContainerUtils.js +59 -84
- package/dist/tests/core/utilities/testContainerUtils.js.map +1 -7
- package/dist/tests/core/utilities/utils/index.js +26 -37
- package/dist/tests/core/utilities/utils/index.js.map +1 -7
- package/dist/tests/core/utilities/utils/time.js +5 -28
- package/dist/tests/core/utilities/utils/time.js.map +1 -7
- package/dist/tests/extra/DBTestConfiguration.js +50 -56
- package/dist/tests/extra/DBTestConfiguration.js.map +1 -7
- package/dist/tests/extra/index.js +30 -39
- package/dist/tests/extra/index.js.map +1 -7
- package/dist/tests/extra/testEnv.js +105 -84
- package/dist/tests/extra/testEnv.js.map +1 -7
- package/dist/tests/index.js +16 -21
- package/dist/tests/index.js.map +1 -7
- package/dist/tests/jestEnv.js +1 -1
- package/dist/tests/jestEnv.js.map +1 -7
- package/dist/tests/jestSetup.js +20 -33
- package/dist/tests/jestSetup.js.map +1 -7
- package/package.json +5 -5
- package/dist/plugins.js +0 -290
- package/dist/plugins.js.map +0 -7
- package/dist/plugins.js.meta.json +0 -1
- package/dist/src/auth/tests/auth.spec.js +0 -37
- package/dist/src/auth/tests/auth.spec.js.map +0 -7
- package/dist/src/blacklist/tests/blacklist.spec.js +0 -61
- package/dist/src/blacklist/tests/blacklist.spec.js.map +0 -7
- package/dist/src/cache/tests/writethrough.spec.js +0 -132
- package/dist/src/cache/tests/writethrough.spec.js.map +0 -7
- package/dist/src/configs/tests/configs.spec.js +0 -182
- package/dist/src/configs/tests/configs.spec.js.map +0 -7
- package/dist/src/context/tests/index.spec.js +0 -147
- package/dist/src/context/tests/index.spec.js.map +0 -7
- package/dist/src/db/tests/index.spec.js +0 -24
- package/dist/src/db/tests/index.spec.js.map +0 -7
- package/dist/src/db/tests/lucene.spec.js +0 -312
- package/dist/src/db/tests/lucene.spec.js.map +0 -7
- package/dist/src/db/tests/pouch.spec.js +0 -63
- package/dist/src/db/tests/pouch.spec.js.map +0 -7
- package/dist/src/db/tests/utils.spec.js +0 -50
- package/dist/src/db/tests/utils.spec.js.map +0 -7
- package/dist/src/events/processors/posthog/tests/PosthogProcessor.spec.js +0 -154
- package/dist/src/events/processors/posthog/tests/PosthogProcessor.spec.js.map +0 -7
- package/dist/src/features/tests/featureFlags.spec.js +0 -86
- package/dist/src/features/tests/featureFlags.spec.js.map +0 -7
- package/dist/src/logging/tests/system.spec.js +0 -59
- package/dist/src/logging/tests/system.spec.js.map +0 -7
- package/dist/src/middleware/passport/sso/tests/google.spec.js +0 -77
- package/dist/src/middleware/passport/sso/tests/google.spec.js.map +0 -7
- package/dist/src/middleware/passport/sso/tests/oidc.spec.js +0 -143
- package/dist/src/middleware/passport/sso/tests/oidc.spec.js.map +0 -7
- package/dist/src/middleware/passport/sso/tests/sso.spec.js +0 -167
- package/dist/src/middleware/passport/sso/tests/sso.spec.js.map +0 -7
- package/dist/src/middleware/tests/builder.spec.js +0 -169
- package/dist/src/middleware/tests/builder.spec.js.map +0 -7
- package/dist/src/middleware/tests/matchers.spec.js +0 -120
- package/dist/src/middleware/tests/matchers.spec.js.map +0 -7
- package/dist/src/migrations/tests/migrations.spec.js +0 -78
- package/dist/src/migrations/tests/migrations.spec.js.map +0 -7
- package/dist/src/objectStore/buckets/tests/app.spec.js +0 -171
- package/dist/src/objectStore/buckets/tests/app.spec.js.map +0 -7
- package/dist/src/objectStore/buckets/tests/global.spec.js +0 -87
- package/dist/src/objectStore/buckets/tests/global.spec.js.map +0 -7
- package/dist/src/objectStore/buckets/tests/plugins.spec.js +0 -123
- package/dist/src/objectStore/buckets/tests/plugins.spec.js.map +0 -7
- package/dist/src/platform/tests/tenants.spec.js +0 -46
- package/dist/src/platform/tests/tenants.spec.js.map +0 -7
- package/dist/src/plugin/tests/validation.spec.js +0 -97
- package/dist/src/plugin/tests/validation.spec.js.map +0 -7
- package/dist/src/security/tests/encryption.spec.js +0 -51
- package/dist/src/security/tests/encryption.spec.js.map +0 -7
- package/dist/src/security/tests/permissions.spec.js +0 -154
- package/dist/src/security/tests/permissions.spec.js.map +0 -7
- package/dist/src/security/tests/sessions.spec.js +0 -33
- package/dist/src/security/tests/sessions.spec.js.map +0 -7
- package/dist/src/tenancy/tests/tenancy.spec.js +0 -154
- package/dist/src/tenancy/tests/tenancy.spec.js.map +0 -7
- package/dist/src/utils/tests/utils.spec.js +0 -165
- package/dist/src/utils/tests/utils.spec.js.map +0 -7
|
@@ -1,149 +1,165 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
11
33
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
34
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
36
|
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
__export(sso_exports, {
|
|
31
|
-
authenticate: () => authenticate,
|
|
32
|
-
ssoSaveUserNoOp: () => ssoSaveUserNoOp
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(sso_exports);
|
|
35
|
-
var import_db = require("../../../db");
|
|
36
|
-
var import_utils = require("../utils");
|
|
37
|
-
var users = __toESM(require("../../../users"));
|
|
38
|
-
var context = __toESM(require("../../../context"));
|
|
39
|
-
var import_node_fetch = __toESM(require("node-fetch"));
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.authenticate = exports.ssoSaveUserNoOp = void 0;
|
|
39
|
+
const db_1 = require("../../../db");
|
|
40
|
+
const utils_1 = require("../utils");
|
|
41
|
+
const users = __importStar(require("../../../users"));
|
|
42
|
+
const context = __importStar(require("../../../context"));
|
|
43
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
44
|
+
// no-op function for user save
|
|
45
|
+
// - this allows datasource auth and access token refresh to work correctly
|
|
46
|
+
// - prefer no-op over an optional argument to ensure function is provided to login flows
|
|
40
47
|
const ssoSaveUserNoOp = (user, opts) => Promise.resolve(user);
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return (
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
48
|
+
exports.ssoSaveUserNoOp = ssoSaveUserNoOp;
|
|
49
|
+
/**
|
|
50
|
+
* Common authentication logic for third parties. e.g. OAuth, OIDC.
|
|
51
|
+
*/
|
|
52
|
+
function authenticate(details, requireLocalAccount = true, done, saveUserFn) {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
if (!saveUserFn) {
|
|
55
|
+
throw new Error("Save user function must be provided");
|
|
56
|
+
}
|
|
57
|
+
if (!details.userId) {
|
|
58
|
+
return (0, utils_1.authError)(done, "sso user id required");
|
|
59
|
+
}
|
|
60
|
+
if (!details.email) {
|
|
61
|
+
return (0, utils_1.authError)(done, "sso user email required");
|
|
62
|
+
}
|
|
63
|
+
// use the third party id
|
|
64
|
+
const userId = (0, db_1.generateGlobalUserID)(details.userId);
|
|
65
|
+
let dbUser;
|
|
66
|
+
// try to load by id
|
|
67
|
+
try {
|
|
68
|
+
dbUser = yield users.getById(userId);
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
// abort when not 404 error
|
|
72
|
+
if (!err.status || err.status !== 404) {
|
|
73
|
+
return (0, utils_1.authError)(done, "Unexpected error when retrieving existing user", err);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// fallback to loading by email
|
|
77
|
+
if (!dbUser) {
|
|
78
|
+
dbUser = yield users.getGlobalUserByEmail(details.email);
|
|
79
|
+
}
|
|
80
|
+
// exit early if there is still no user and auto creation is disabled
|
|
81
|
+
if (!dbUser && requireLocalAccount) {
|
|
82
|
+
return (0, utils_1.authError)(done, "Email does not yet exist. You must set up your local budibase account first.");
|
|
83
|
+
}
|
|
84
|
+
// first time creation
|
|
85
|
+
if (!dbUser) {
|
|
86
|
+
// setup a blank user using the third party id
|
|
87
|
+
dbUser = {
|
|
88
|
+
_id: userId,
|
|
89
|
+
email: details.email,
|
|
90
|
+
roles: {},
|
|
91
|
+
tenantId: context.getTenantId(),
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
let ssoUser = yield syncUser(dbUser, details);
|
|
95
|
+
// never prompt for password reset
|
|
96
|
+
ssoUser.forceResetPassword = false;
|
|
97
|
+
try {
|
|
98
|
+
// don't try to re-save any existing password
|
|
99
|
+
delete ssoUser.password;
|
|
100
|
+
// create or sync the user
|
|
101
|
+
ssoUser = (yield saveUserFn(ssoUser, {
|
|
102
|
+
hashPassword: false,
|
|
103
|
+
requirePassword: false,
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
return (0, utils_1.authError)(done, "Error saving user", err);
|
|
108
|
+
}
|
|
109
|
+
return done(null, ssoUser);
|
|
88
110
|
});
|
|
89
|
-
} catch (err) {
|
|
90
|
-
return (0, import_utils.authError)(done, "Error saving user", err);
|
|
91
|
-
}
|
|
92
|
-
return done(null, ssoUser);
|
|
93
111
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
112
|
+
exports.authenticate = authenticate;
|
|
113
|
+
function getProfilePictureUrl(user, details) {
|
|
114
|
+
var _a;
|
|
115
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
+
const pictureUrl = (_a = details.profile) === null || _a === void 0 ? void 0 : _a._json.picture;
|
|
117
|
+
if (pictureUrl) {
|
|
118
|
+
const response = yield (0, node_fetch_1.default)(pictureUrl);
|
|
119
|
+
if (response.status === 200) {
|
|
120
|
+
const type = response.headers.get("content-type");
|
|
121
|
+
if (type.startsWith("image/")) {
|
|
122
|
+
return pictureUrl;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
});
|
|
105
127
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
};
|
|
128
|
+
/**
|
|
129
|
+
* @returns a user that has been sync'd with third party information
|
|
130
|
+
*/
|
|
131
|
+
function syncUser(user, details) {
|
|
132
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
133
|
+
let firstName;
|
|
134
|
+
let lastName;
|
|
135
|
+
let pictureUrl;
|
|
136
|
+
let oauth2;
|
|
137
|
+
let thirdPartyProfile;
|
|
138
|
+
if (details.profile) {
|
|
139
|
+
const profile = details.profile;
|
|
140
|
+
if (profile.name) {
|
|
141
|
+
const name = profile.name;
|
|
142
|
+
// first name
|
|
143
|
+
if (name.givenName) {
|
|
144
|
+
firstName = name.givenName;
|
|
145
|
+
}
|
|
146
|
+
// last name
|
|
147
|
+
if (name.familyName) {
|
|
148
|
+
lastName = name.familyName;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
pictureUrl = yield getProfilePictureUrl(user, details);
|
|
152
|
+
thirdPartyProfile = Object.assign({}, profile._json);
|
|
153
|
+
}
|
|
154
|
+
// oauth tokens for future use
|
|
155
|
+
if (details.oauth2) {
|
|
156
|
+
oauth2 = Object.assign({}, details.oauth2);
|
|
157
|
+
}
|
|
158
|
+
return Object.assign(Object.assign({}, user), { provider: details.provider, providerType: details.providerType, firstName,
|
|
159
|
+
lastName,
|
|
160
|
+
thirdPartyProfile,
|
|
161
|
+
pictureUrl,
|
|
162
|
+
oauth2 });
|
|
163
|
+
});
|
|
143
164
|
}
|
|
144
|
-
|
|
145
|
-
0 && (module.exports = {
|
|
146
|
-
authenticate,
|
|
147
|
-
ssoSaveUserNoOp
|
|
148
|
-
});
|
|
149
|
-
//# sourceMappingURL=sso.js.map
|
|
165
|
+
//# sourceMappingURL=sso.js.map
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/middleware/passport/sso/sso.ts"],
|
|
4
|
-
"sourcesContent": ["import { generateGlobalUserID } from \"../../../db\"\nimport { authError } from \"../utils\"\nimport * as users from \"../../../users\"\nimport * as context from \"../../../context\"\nimport fetch from \"node-fetch\"\nimport {\n SaveSSOUserFunction,\n SaveUserOpts,\n SSOAuthDetails,\n SSOUser,\n User,\n} from \"@budibase/types\"\n\n// no-op function for user save\n// - this allows datasource auth and access token refresh to work correctly\n// - prefer no-op over an optional argument to ensure function is provided to login flows\nexport const ssoSaveUserNoOp: SaveSSOUserFunction = (\n user: SSOUser,\n opts: SaveUserOpts\n) => Promise.resolve(user)\n\n/**\n * Common authentication logic for third parties. e.g. OAuth, OIDC.\n */\nexport async function authenticate(\n details: SSOAuthDetails,\n requireLocalAccount: boolean = true,\n done: any,\n saveUserFn: SaveSSOUserFunction\n) {\n if (!saveUserFn) {\n throw new Error(\"Save user function must be provided\")\n }\n if (!details.userId) {\n return authError(done, \"sso user id required\")\n }\n if (!details.email) {\n return authError(done, \"sso user email required\")\n }\n\n // use the third party id\n const userId = generateGlobalUserID(details.userId)\n\n let dbUser: User | undefined\n\n // try to load by id\n try {\n dbUser = await users.getById(userId)\n } catch (err: any) {\n // abort when not 404 error\n if (!err.status || err.status !== 404) {\n return authError(\n done,\n \"Unexpected error when retrieving existing user\",\n err\n )\n }\n }\n\n // fallback to loading by email\n if (!dbUser) {\n dbUser = await users.getGlobalUserByEmail(details.email)\n }\n\n // exit early if there is still no user and auto creation is disabled\n if (!dbUser && requireLocalAccount) {\n return authError(\n done,\n \"Email does not yet exist. You must set up your local budibase account first.\"\n )\n }\n\n // first time creation\n if (!dbUser) {\n // setup a blank user using the third party id\n dbUser = {\n _id: userId,\n email: details.email,\n roles: {},\n tenantId: context.getTenantId(),\n }\n }\n\n let ssoUser = await syncUser(dbUser, details)\n // never prompt for password reset\n ssoUser.forceResetPassword = false\n\n try {\n // don't try to re-save any existing password\n delete ssoUser.password\n // create or sync the user\n ssoUser = (await saveUserFn(ssoUser, {\n hashPassword: false,\n requirePassword: false,\n })) as SSOUser\n } catch (err: any) {\n return authError(done, \"Error saving user\", err)\n }\n\n return done(null, ssoUser)\n}\n\nasync function getProfilePictureUrl(user: User, details: SSOAuthDetails) {\n const pictureUrl = details.profile?._json.picture\n if (pictureUrl) {\n const response = await fetch(pictureUrl)\n if (response.status === 200) {\n const type = response.headers.get(\"content-type\") as string\n if (type.startsWith(\"image/\")) {\n return pictureUrl\n }\n }\n }\n}\n\n/**\n * @returns a user that has been sync'd with third party information\n */\nasync function syncUser(user: User, details: SSOAuthDetails): Promise<SSOUser> {\n let firstName\n let lastName\n let pictureUrl\n let oauth2\n let thirdPartyProfile\n\n if (details.profile) {\n const profile = details.profile\n\n if (profile.name) {\n const name = profile.name\n // first name\n if (name.givenName) {\n firstName = name.givenName\n }\n // last name\n if (name.familyName) {\n lastName = name.familyName\n }\n }\n\n pictureUrl = await getProfilePictureUrl(user, details)\n\n thirdPartyProfile = {\n ...profile._json,\n }\n }\n\n // oauth tokens for future use\n if (details.oauth2) {\n oauth2 = {\n ...details.oauth2,\n }\n }\n\n return {\n ...user,\n provider: details.provider,\n providerType: details.providerType,\n firstName,\n lastName,\n thirdPartyProfile,\n pictureUrl,\n oauth2,\n }\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAqC;AACrC,mBAA0B;AAC1B,YAAuB;AACvB,cAAyB;AACzB,wBAAkB;AAYX,MAAM,kBAAuC,CAClD,MACA,SACG,QAAQ,QAAQ,IAAI;AAKzB,eAAsB,aACpB,SACA,sBAA+B,MAC/B,MACA,YACA;AACA,MAAI,CAAC,YAAY;AACf,UAAM,IAAI,MAAM,qCAAqC;AAAA,EACvD;AACA,MAAI,CAAC,QAAQ,QAAQ;AACnB,eAAO,wBAAU,MAAM,sBAAsB;AAAA,EAC/C;AACA,MAAI,CAAC,QAAQ,OAAO;AAClB,eAAO,wBAAU,MAAM,yBAAyB;AAAA,EAClD;AAGA,QAAM,aAAS,gCAAqB,QAAQ,MAAM;AAElD,MAAI;AAGJ,MAAI;AACF,aAAS,MAAM,MAAM,QAAQ,MAAM;AAAA,EACrC,SAAS,KAAU;AAEjB,QAAI,CAAC,IAAI,UAAU,IAAI,WAAW,KAAK;AACrC,iBAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,QAAQ;AACX,aAAS,MAAM,MAAM,qBAAqB,QAAQ,KAAK;AAAA,EACzD;AAGA,MAAI,CAAC,UAAU,qBAAqB;AAClC,eAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,QAAQ;AAEX,aAAS;AAAA,MACP,KAAK;AAAA,MACL,OAAO,QAAQ;AAAA,MACf,OAAO,CAAC;AAAA,MACR,UAAU,QAAQ,YAAY;AAAA,IAChC;AAAA,EACF;AAEA,MAAI,UAAU,MAAM,SAAS,QAAQ,OAAO;AAE5C,UAAQ,qBAAqB;AAE7B,MAAI;AAEF,WAAO,QAAQ;AAEf,cAAW,MAAM,WAAW,SAAS;AAAA,MACnC,cAAc;AAAA,MACd,iBAAiB;AAAA,IACnB,CAAC;AAAA,EACH,SAAS,KAAU;AACjB,eAAO,wBAAU,MAAM,qBAAqB,GAAG;AAAA,EACjD;AAEA,SAAO,KAAK,MAAM,OAAO;AAC3B;AAEA,eAAe,qBAAqB,MAAY,SAAyB;AACvE,QAAM,aAAa,QAAQ,SAAS,MAAM;AAC1C,MAAI,YAAY;AACd,UAAM,WAAW,UAAM,kBAAAA,SAAM,UAAU;AACvC,QAAI,SAAS,WAAW,KAAK;AAC3B,YAAM,OAAO,SAAS,QAAQ,IAAI,cAAc;AAChD,UAAI,KAAK,WAAW,QAAQ,GAAG;AAC7B,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;AAKA,eAAe,SAAS,MAAY,SAA2C;AAC7E,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,MAAI;AAEJ,MAAI,QAAQ,SAAS;AACnB,UAAM,UAAU,QAAQ;AAExB,QAAI,QAAQ,MAAM;AAChB,YAAM,OAAO,QAAQ;AAErB,UAAI,KAAK,WAAW;AAClB,oBAAY,KAAK;AAAA,MACnB;AAEA,UAAI,KAAK,YAAY;AACnB,mBAAW,KAAK;AAAA,MAClB;AAAA,IACF;AAEA,iBAAa,MAAM,qBAAqB,MAAM,OAAO;AAErD,wBAAoB;AAAA,MAClB,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAGA,MAAI,QAAQ,QAAQ;AAClB,aAAS;AAAA,MACP,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,QAAQ;AAAA,IAClB,cAAc,QAAQ;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
|
-
"names": ["fetch"]
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"sso.js","sourceRoot":"","sources":["../../../../../src/middleware/passport/sso/sso.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,62 +1,66 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
11
24
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
19
33
|
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
authError: () => authError,
|
|
32
|
-
ssoCallbackUrl: () => ssoCallbackUrl
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(utils_exports);
|
|
35
|
-
var import_context = require("../../context");
|
|
36
|
-
var configs = __toESM(require("../../configs"));
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.ssoCallbackUrl = exports.authError = void 0;
|
|
36
|
+
const context_1 = require("../../context");
|
|
37
|
+
const configs = __importStar(require("../../configs"));
|
|
38
|
+
/**
|
|
39
|
+
* Utility to handle authentication errors.
|
|
40
|
+
*
|
|
41
|
+
* @param {*} done The passport callback.
|
|
42
|
+
* @param {*} message Message that will be returned in the response body
|
|
43
|
+
* @param {*} err (Optional) error that will be logged
|
|
44
|
+
*/
|
|
37
45
|
function authError(done, message, err) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
null,
|
|
41
|
-
// never return a user
|
|
42
|
-
{ message }
|
|
43
|
-
);
|
|
46
|
+
return done(err, null, // never return a user
|
|
47
|
+
{ message: message });
|
|
44
48
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
49
|
+
exports.authError = authError;
|
|
50
|
+
function ssoCallbackUrl(type, config) {
|
|
51
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
// incase there is a callback URL from before
|
|
53
|
+
if (config && config.callbackURL) {
|
|
54
|
+
return config.callbackURL;
|
|
55
|
+
}
|
|
56
|
+
const settingsConfig = yield configs.getSettingsConfig();
|
|
57
|
+
let callbackUrl = `/api/global/auth`;
|
|
58
|
+
if ((0, context_1.isMultiTenant)()) {
|
|
59
|
+
callbackUrl += `/${(0, context_1.getTenantId)()}`;
|
|
60
|
+
}
|
|
61
|
+
callbackUrl += `/${type}/callback`;
|
|
62
|
+
return `${settingsConfig.platformUrl}${callbackUrl}`;
|
|
63
|
+
});
|
|
56
64
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
authError,
|
|
60
|
-
ssoCallbackUrl
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=utils.js.map
|
|
65
|
+
exports.ssoCallbackUrl = ssoCallbackUrl;
|
|
66
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/middleware/passport/utils.ts"],
|
|
4
|
-
"sourcesContent": ["import { getTenantId, isMultiTenant } from \"../../context\"\nimport * as configs from \"../../configs\"\nimport { ConfigType, GoogleInnerConfig } from \"@budibase/types\"\n\n/**\n * Utility to handle authentication errors.\n *\n * @param {*} done The passport callback.\n * @param {*} message Message that will be returned in the response body\n * @param {*} err (Optional) error that will be logged\n */\n\nexport function authError(done: Function, message: string, err?: any) {\n return done(\n err,\n null, // never return a user\n { message: message }\n )\n}\n\nexport async function ssoCallbackUrl(\n type: ConfigType,\n config?: GoogleInnerConfig\n) {\n // incase there is a callback URL from before\n if (config && (config as GoogleInnerConfig).callbackURL) {\n return (config as GoogleInnerConfig).callbackURL as string\n }\n const settingsConfig = await configs.getSettingsConfig()\n\n let callbackUrl = `/api/global/auth`\n if (isMultiTenant()) {\n callbackUrl += `/${getTenantId()}`\n }\n callbackUrl += `/${type}/callback`\n\n return `${settingsConfig.platformUrl}${callbackUrl}`\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA2C;AAC3C,cAAyB;AAWlB,SAAS,UAAU,MAAgB,SAAiB,KAAW;AACpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA,IACA,EAAE,QAAiB;AAAA,EACrB;AACF;AAEA,eAAsB,eACpB,MACA,QACA;AAEA,MAAI,UAAW,OAA6B,aAAa;AACvD,WAAQ,OAA6B;AAAA,EACvC;AACA,QAAM,iBAAiB,MAAM,QAAQ,kBAAkB;AAEvD,MAAI,cAAc;AAClB,UAAI,8BAAc,GAAG;AACnB,mBAAe,QAAI,4BAAY,CAAC;AAAA,EAClC;AACA,iBAAe,IAAI,IAAI;AAEvB,SAAO,GAAG,eAAe,WAAW,GAAG,WAAW;AACpD;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/middleware/passport/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA0D;AAC1D,uDAAwC;AAGxC;;;;;;GAMG;AAEH,SAAgB,SAAS,CAAC,IAAc,EAAE,OAAe,EAAE,GAAS;IAClE,OAAO,IAAI,CACT,GAAG,EACH,IAAI,EAAE,sBAAsB;IAC5B,EAAE,OAAO,EAAE,OAAO,EAAE,CACrB,CAAA;AACH,CAAC;AAND,8BAMC;AAED,SAAsB,cAAc,CAClC,IAAgB,EAChB,MAA0B;;QAE1B,6CAA6C;QAC7C,IAAI,MAAM,IAAK,MAA4B,CAAC,WAAW,EAAE;YACvD,OAAQ,MAA4B,CAAC,WAAqB,CAAA;SAC3D;QACD,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAA;QAExD,IAAI,WAAW,GAAG,kBAAkB,CAAA;QACpC,IAAI,IAAA,uBAAa,GAAE,EAAE;YACnB,WAAW,IAAI,IAAI,IAAA,qBAAW,GAAE,EAAE,CAAA;SACnC;QACD,WAAW,IAAI,IAAI,IAAI,WAAW,CAAA;QAElC,OAAO,GAAG,cAAc,CAAC,WAAW,GAAG,WAAW,EAAE,CAAA;IACtD,CAAC;CAAA;AAjBD,wCAiBC"}
|
|
@@ -1,45 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (ctx.request.method.toLowerCase() !== "get") {
|
|
27
|
-
ctx.throw(
|
|
28
|
-
500,
|
|
29
|
-
"Query to download middleware can only be used for get requests."
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
if (!queryString) {
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Expects a standard "query" query string property which is the JSON body
|
|
5
|
+
* of the request, which has to be sent via query string due to the requirement
|
|
6
|
+
* of making an endpoint a GET request e.g. downloading a file stream.
|
|
7
|
+
*/
|
|
8
|
+
function default_1(ctx, next) {
|
|
9
|
+
var _a;
|
|
10
|
+
const queryString = (_a = ctx.request.query) === null || _a === void 0 ? void 0 : _a.query;
|
|
11
|
+
if (ctx.request.method.toLowerCase() !== "get") {
|
|
12
|
+
ctx.throw(500, "Query to download middleware can only be used for get requests.");
|
|
13
|
+
}
|
|
14
|
+
if (!queryString) {
|
|
15
|
+
return next();
|
|
16
|
+
}
|
|
17
|
+
const decoded = decodeURIComponent(queryString);
|
|
18
|
+
let json;
|
|
19
|
+
try {
|
|
20
|
+
json = JSON.parse(decoded);
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
return next();
|
|
24
|
+
}
|
|
25
|
+
ctx.request.body = json;
|
|
33
26
|
return next();
|
|
34
|
-
}
|
|
35
|
-
const decoded = decodeURIComponent(queryString);
|
|
36
|
-
let json;
|
|
37
|
-
try {
|
|
38
|
-
json = JSON.parse(decoded);
|
|
39
|
-
} catch (err) {
|
|
40
|
-
return next();
|
|
41
|
-
}
|
|
42
|
-
ctx.request.body = json;
|
|
43
|
-
return next();
|
|
44
27
|
}
|
|
45
|
-
|
|
28
|
+
exports.default = default_1;
|
|
29
|
+
//# sourceMappingURL=querystringToBody.js.map
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/middleware/querystringToBody.ts"],
|
|
4
|
-
"sourcesContent": ["import { Ctx } from \"@budibase/types\"\n\n/**\n * Expects a standard \"query\" query string property which is the JSON body\n * of the request, which has to be sent via query string due to the requirement\n * of making an endpoint a GET request e.g. downloading a file stream.\n */\nexport default function (ctx: Ctx, next: any) {\n const queryString = ctx.request.query?.query as string | undefined\n if (ctx.request.method.toLowerCase() !== \"get\") {\n ctx.throw(\n 500,\n \"Query to download middleware can only be used for get requests.\"\n )\n }\n if (!queryString) {\n return next()\n }\n const decoded = decodeURIComponent(queryString)\n let json\n try {\n json = JSON.parse(decoded)\n } catch (err) {\n return next()\n }\n ctx.request.body = json\n return next()\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOe,SAAR,0BAAkB,KAAU,MAAW;AAC5C,QAAM,cAAc,IAAI,QAAQ,OAAO;AACvC,MAAI,IAAI,QAAQ,OAAO,YAAY,MAAM,OAAO;AAC9C,QAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,MAAI,CAAC,aAAa;AAChB,WAAO,KAAK;AAAA,EACd;AACA,QAAM,UAAU,mBAAmB,WAAW;AAC9C,MAAI;AACJ,MAAI;AACF,WAAO,KAAK,MAAM,OAAO;AAAA,EAC3B,SAAS,KAAK;AACZ,WAAO,KAAK;AAAA,EACd;AACA,MAAI,QAAQ,OAAO;AACnB,SAAO,KAAK;AACd;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"querystringToBody.js","sourceRoot":"","sources":["../../../src/middleware/querystringToBody.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;AACH,mBAAyB,GAAQ,EAAE,IAAS;;IAC1C,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,CAAC,KAAK,0CAAE,KAA2B,CAAA;IAClE,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;QAC9C,GAAG,CAAC,KAAK,CACP,GAAG,EACH,iEAAiE,CAClE,CAAA;KACF;IACD,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,IAAI,EAAE,CAAA;KACd;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAA;IAC/C,IAAI,IAAI,CAAA;IACR,IAAI;QACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,IAAI,EAAE,CAAA;KACd;IACD,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;IACvB,OAAO,IAAI,EAAE,CAAA;AACf,CAAC;AApBD,4BAoBC"}
|