payload 3.0.0-beta.6 → 3.0.0-beta.60
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/bin.js +6 -3
- package/dist/admin/LanguageOptions.d.ts +6 -0
- package/dist/admin/LanguageOptions.d.ts.map +1 -0
- package/dist/admin/LanguageOptions.js +3 -0
- package/dist/admin/LanguageOptions.js.map +1 -0
- package/dist/admin/RichText.d.ts +139 -24
- package/dist/admin/RichText.d.ts.map +1 -1
- package/dist/admin/RichText.js.map +1 -1
- package/dist/admin/elements/Cell.d.ts +1 -7
- package/dist/admin/elements/Cell.d.ts.map +1 -1
- package/dist/admin/elements/Cell.js.map +1 -1
- package/dist/admin/elements/DatePicker.js.map +1 -1
- package/dist/admin/elements/PreviewButton.js.map +1 -1
- package/dist/admin/elements/PublishButton.js.map +1 -1
- package/dist/admin/elements/SaveButton.js.map +1 -1
- package/dist/admin/elements/SaveDraftButton.js.map +1 -1
- package/dist/admin/elements/Tab.d.ts +3 -0
- package/dist/admin/elements/Tab.d.ts.map +1 -1
- package/dist/admin/elements/Tab.js.map +1 -1
- package/dist/admin/elements/Upload.d.ts +3 -0
- package/dist/admin/elements/Upload.d.ts.map +1 -0
- package/dist/admin/elements/Upload.js +3 -0
- package/dist/admin/elements/Upload.js.map +1 -0
- package/dist/admin/elements/WithServerSideProps.d.ts +6 -2
- package/dist/admin/elements/WithServerSideProps.d.ts.map +1 -1
- package/dist/admin/elements/WithServerSideProps.js.map +1 -1
- package/dist/admin/forms/Error.js.map +1 -1
- package/dist/admin/forms/FieldDescription.d.ts +1 -1
- package/dist/admin/forms/FieldDescription.d.ts.map +1 -1
- package/dist/admin/forms/FieldDescription.js.map +1 -1
- package/dist/admin/forms/FieldTypes.js.map +1 -1
- package/dist/admin/forms/Form.js.map +1 -1
- package/dist/admin/forms/Label.d.ts +3 -2
- package/dist/admin/forms/Label.d.ts.map +1 -1
- package/dist/admin/forms/Label.js.map +1 -1
- package/dist/admin/forms/RowLabel.d.ts +1 -1
- package/dist/admin/forms/RowLabel.d.ts.map +1 -1
- package/dist/admin/forms/RowLabel.js.map +1 -1
- package/dist/admin/types.d.ts +5 -3
- package/dist/admin/types.d.ts.map +1 -1
- package/dist/admin/types.js.map +1 -1
- package/dist/admin/views/types.d.ts +5 -3
- package/dist/admin/views/types.d.ts.map +1 -1
- package/dist/admin/views/types.js.map +1 -1
- package/dist/assets/assets.d.js.map +1 -1
- package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
- package/dist/auth/baseFields/accountLock.js.map +1 -1
- package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
- package/dist/auth/baseFields/apiKey.js +6 -4
- package/dist/auth/baseFields/apiKey.js.map +1 -1
- package/dist/auth/baseFields/auth.d.ts.map +1 -1
- package/dist/auth/baseFields/auth.js +0 -14
- package/dist/auth/baseFields/auth.js.map +1 -1
- package/dist/auth/baseFields/loginField.d.ts +4 -0
- package/dist/auth/baseFields/loginField.d.ts.map +1 -0
- package/dist/auth/baseFields/loginField.js +35 -0
- package/dist/auth/baseFields/loginField.js.map +1 -0
- package/dist/auth/baseFields/verification.d.ts.map +1 -1
- package/dist/auth/baseFields/verification.js.map +1 -1
- package/dist/auth/cookies.d.ts +17 -5
- package/dist/auth/cookies.d.ts.map +1 -1
- package/dist/auth/cookies.js +45 -14
- package/dist/auth/cookies.js.map +1 -1
- package/dist/auth/crypto.js.map +1 -1
- package/dist/auth/defaultAccess.js.map +1 -1
- package/dist/auth/defaultUser.js.map +1 -1
- package/dist/auth/executeAccess.d.ts.map +1 -1
- package/dist/auth/executeAccess.js.map +1 -1
- package/dist/auth/executeAuthStrategies.d.ts +2 -3
- package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
- package/dist/auth/executeAuthStrategies.js +6 -4
- package/dist/auth/executeAuthStrategies.js.map +1 -1
- package/dist/auth/extractJWT.d.ts +1 -1
- package/dist/auth/extractJWT.d.ts.map +1 -1
- package/dist/auth/extractJWT.js.map +1 -1
- package/dist/auth/getAccessResults.js +1 -1
- package/dist/auth/getAccessResults.js.map +1 -1
- package/dist/auth/getFieldsToSign.d.ts +1 -1
- package/dist/auth/getFieldsToSign.d.ts.map +1 -1
- package/dist/auth/getFieldsToSign.js.map +1 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/isLocked.js.map +1 -1
- package/dist/auth/operations/access.d.ts.map +1 -1
- package/dist/auth/operations/access.js.map +1 -1
- package/dist/auth/operations/auth.d.ts +3 -3
- package/dist/auth/operations/auth.d.ts.map +1 -1
- package/dist/auth/operations/auth.js +3 -5
- package/dist/auth/operations/auth.js.map +1 -1
- package/dist/auth/operations/forgotPassword.d.ts +5 -5
- package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/forgotPassword.js +18 -15
- package/dist/auth/operations/forgotPassword.js.map +1 -1
- package/dist/auth/operations/init.d.ts.map +1 -1
- package/dist/auth/operations/init.js.map +1 -1
- package/dist/auth/operations/local/auth.d.ts.map +1 -1
- package/dist/auth/operations/local/auth.js.map +1 -1
- package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
- package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/local/forgotPassword.js.map +1 -1
- package/dist/auth/operations/local/index.js.map +1 -1
- package/dist/auth/operations/local/login.d.ts +5 -9
- package/dist/auth/operations/local/login.d.ts.map +1 -1
- package/dist/auth/operations/local/login.js.map +1 -1
- package/dist/auth/operations/local/resetPassword.d.ts +3 -4
- package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/local/resetPassword.js.map +1 -1
- package/dist/auth/operations/local/unlock.d.ts +3 -4
- package/dist/auth/operations/local/unlock.d.ts.map +1 -1
- package/dist/auth/operations/local/unlock.js.map +1 -1
- package/dist/auth/operations/local/verifyEmail.d.ts +3 -4
- package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/local/verifyEmail.js.map +1 -1
- package/dist/auth/operations/login.d.ts +6 -9
- package/dist/auth/operations/login.d.ts.map +1 -1
- package/dist/auth/operations/login.js +49 -5
- package/dist/auth/operations/login.js.map +1 -1
- package/dist/auth/operations/logout.d.ts.map +1 -1
- package/dist/auth/operations/logout.js.map +1 -1
- package/dist/auth/operations/me.d.ts +2 -1
- package/dist/auth/operations/me.d.ts.map +1 -1
- package/dist/auth/operations/me.js +25 -9
- package/dist/auth/operations/me.js.map +1 -1
- package/dist/auth/operations/refresh.d.ts +3 -3
- package/dist/auth/operations/refresh.d.ts.map +1 -1
- package/dist/auth/operations/refresh.js +35 -17
- package/dist/auth/operations/refresh.js.map +1 -1
- package/dist/auth/operations/registerFirstUser.d.ts +7 -13
- package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
- package/dist/auth/operations/registerFirstUser.js.map +1 -1
- package/dist/auth/operations/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/resetPassword.js +1 -0
- package/dist/auth/operations/resetPassword.js.map +1 -1
- package/dist/auth/operations/unlock.d.ts.map +1 -1
- package/dist/auth/operations/unlock.js.map +1 -1
- package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/verifyEmail.js.map +1 -1
- package/dist/auth/sendVerificationEmail.d.ts +5 -6
- package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
- package/dist/auth/sendVerificationEmail.js +7 -8
- package/dist/auth/sendVerificationEmail.js.map +1 -1
- package/dist/auth/strategies/apiKey.d.ts.map +1 -1
- package/dist/auth/strategies/apiKey.js +9 -3
- package/dist/auth/strategies/apiKey.js.map +1 -1
- package/dist/auth/strategies/jwt.d.ts.map +1 -1
- package/dist/auth/strategies/jwt.js +9 -3
- package/dist/auth/strategies/jwt.js.map +1 -1
- package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
- package/dist/auth/strategies/local/authenticate.js.map +1 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts +3 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.js +10 -7
- package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
- package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
- package/dist/auth/strategies/local/register.d.ts.map +1 -1
- package/dist/auth/strategies/local/register.js +19 -7
- package/dist/auth/strategies/local/register.js.map +1 -1
- package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
- package/dist/auth/types.d.ts +17 -12
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js.map +1 -1
- package/dist/bin/generateTypes.d.ts +3 -1
- package/dist/bin/generateTypes.d.ts.map +1 -1
- package/dist/bin/generateTypes.js +23 -9
- package/dist/bin/generateTypes.js.map +1 -1
- package/dist/bin/index.js.map +1 -1
- package/dist/bin/loadEnv.d.ts +2 -2
- package/dist/bin/loadEnv.d.ts.map +1 -1
- package/dist/bin/loadEnv.js +18 -17
- package/dist/bin/loadEnv.js.map +1 -1
- package/dist/bin/loader/clientExtensions.js.map +1 -1
- package/dist/bin/loader/compile.js.map +1 -1
- package/dist/bin/loader/ignores.d.ts +2 -0
- package/dist/bin/loader/ignores.d.ts.map +1 -0
- package/dist/bin/loader/ignores.js +5 -0
- package/dist/bin/loader/ignores.js.map +1 -0
- package/dist/bin/loader/index.d.ts.map +1 -1
- package/dist/bin/loader/index.js +14 -15
- package/dist/bin/loader/index.js.map +1 -1
- package/dist/bin/loader/read-default-tsconfig.d.ts +25 -0
- package/dist/bin/loader/read-default-tsconfig.d.ts.map +1 -1
- package/dist/bin/loader/read-default-tsconfig.js +25 -1
- package/dist/bin/loader/read-default-tsconfig.js.map +1 -1
- package/dist/bin/loader/resolveOriginalPath.d.ts +10 -0
- package/dist/bin/loader/resolveOriginalPath.d.ts.map +1 -0
- package/dist/bin/loader/resolveOriginalPath.js +36 -0
- package/dist/bin/loader/resolveOriginalPath.js.map +1 -0
- package/dist/bin/migrate.d.ts.map +1 -1
- package/dist/bin/migrate.js.map +1 -1
- package/dist/collections/config/build.js.map +1 -1
- package/dist/collections/config/client.d.ts +137 -138
- package/dist/collections/config/client.d.ts.map +1 -1
- package/dist/collections/config/client.js +3 -1
- package/dist/collections/config/client.js.map +1 -1
- package/dist/collections/config/defaults.d.ts +9 -5
- package/dist/collections/config/defaults.d.ts.map +1 -1
- package/dist/collections/config/defaults.js +5 -1
- package/dist/collections/config/defaults.js.map +1 -1
- package/dist/collections/config/sanitize.d.ts +2 -3
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +17 -6
- package/dist/collections/config/sanitize.js.map +1 -1
- package/dist/collections/config/schema.d.ts.map +1 -1
- package/dist/collections/config/schema.js +25 -13
- package/dist/collections/config/schema.js.map +1 -1
- package/dist/collections/config/types.d.ts +71 -17
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js.map +1 -1
- package/dist/collections/dataloader.d.ts +14 -0
- package/dist/collections/dataloader.d.ts.map +1 -1
- package/dist/collections/dataloader.js +27 -12
- package/dist/collections/dataloader.js.map +1 -1
- package/dist/collections/operations/count.d.ts +14 -0
- package/dist/collections/operations/count.d.ts.map +1 -0
- package/dist/collections/operations/count.js +75 -0
- package/dist/collections/operations/count.js.map +1 -0
- package/dist/collections/operations/create.d.ts +5 -9
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +7 -13
- package/dist/collections/operations/create.js.map +1 -1
- package/dist/collections/operations/delete.d.ts +5 -5
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +1 -0
- package/dist/collections/operations/delete.js.map +1 -1
- package/dist/collections/operations/deleteByID.d.ts +4 -3
- package/dist/collections/operations/deleteByID.d.ts.map +1 -1
- package/dist/collections/operations/deleteByID.js +1 -0
- package/dist/collections/operations/deleteByID.js.map +1 -1
- package/dist/collections/operations/docAccess.js.map +1 -1
- package/dist/collections/operations/duplicate.d.ts +3 -3
- package/dist/collections/operations/duplicate.d.ts.map +1 -1
- package/dist/collections/operations/duplicate.js +3 -1
- package/dist/collections/operations/duplicate.js.map +1 -1
- package/dist/collections/operations/find.d.ts +3 -2
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +1 -0
- package/dist/collections/operations/find.js.map +1 -1
- package/dist/collections/operations/findByID.d.ts +3 -2
- package/dist/collections/operations/findByID.d.ts.map +1 -1
- package/dist/collections/operations/findByID.js +3 -3
- package/dist/collections/operations/findByID.js.map +1 -1
- package/dist/collections/operations/findVersionByID.d.ts +1 -1
- package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/findVersionByID.js +1 -0
- package/dist/collections/operations/findVersionByID.js.map +1 -1
- package/dist/collections/operations/findVersions.d.ts +1 -1
- package/dist/collections/operations/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/findVersions.js +1 -0
- package/dist/collections/operations/findVersions.js.map +1 -1
- package/dist/collections/operations/local/count.d.ts +20 -0
- package/dist/collections/operations/local/count.d.ts.map +1 -0
- package/dist/collections/operations/local/count.js +19 -0
- package/dist/collections/operations/local/count.js.map +1 -0
- package/dist/collections/operations/local/create.d.ts +7 -8
- package/dist/collections/operations/local/create.d.ts.map +1 -1
- package/dist/collections/operations/local/create.js.map +1 -1
- package/dist/collections/operations/local/delete.d.ts +13 -15
- package/dist/collections/operations/local/delete.d.ts.map +1 -1
- package/dist/collections/operations/local/delete.js.map +1 -1
- package/dist/collections/operations/local/duplicate.d.ts +6 -5
- package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
- package/dist/collections/operations/local/duplicate.js.map +1 -1
- package/dist/collections/operations/local/find.d.ts +7 -6
- package/dist/collections/operations/local/find.d.ts.map +1 -1
- package/dist/collections/operations/local/find.js +1 -1
- package/dist/collections/operations/local/find.js.map +1 -1
- package/dist/collections/operations/local/findByID.d.ts +7 -6
- package/dist/collections/operations/local/findByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findByID.js.map +1 -1
- package/dist/collections/operations/local/findVersionByID.d.ts +7 -6
- package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersionByID.js.map +1 -1
- package/dist/collections/operations/local/findVersions.d.ts +7 -6
- package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersions.js.map +1 -1
- package/dist/collections/operations/local/index.d.ts +4 -2
- package/dist/collections/operations/local/index.d.ts.map +1 -1
- package/dist/collections/operations/local/index.js +4 -2
- package/dist/collections/operations/local/index.js.map +1 -1
- package/dist/collections/operations/local/restoreVersion.d.ts +7 -6
- package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/local/restoreVersion.js.map +1 -1
- package/dist/collections/operations/local/update.d.ts +12 -12
- package/dist/collections/operations/local/update.d.ts.map +1 -1
- package/dist/collections/operations/local/update.js.map +1 -1
- package/dist/collections/operations/restoreVersion.d.ts +1 -1
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +2 -0
- package/dist/collections/operations/restoreVersion.js.map +1 -1
- package/dist/collections/operations/update.d.ts +5 -6
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +6 -3
- package/dist/collections/operations/update.js.map +1 -1
- package/dist/collections/operations/updateByID.d.ts +5 -7
- package/dist/collections/operations/updateByID.d.ts.map +1 -1
- package/dist/collections/operations/updateByID.js +6 -2
- package/dist/collections/operations/updateByID.js.map +1 -1
- package/dist/collections/operations/utils.d.ts +42 -33
- package/dist/collections/operations/utils.d.ts.map +1 -1
- package/dist/collections/operations/utils.js +0 -1
- package/dist/collections/operations/utils.js.map +1 -1
- package/dist/config/build.d.ts.map +1 -1
- package/dist/config/build.js +3 -4
- package/dist/config/build.js.map +1 -1
- package/dist/config/client.d.ts +2 -1
- package/dist/config/client.d.ts.map +1 -1
- package/dist/config/client.js +3 -1
- package/dist/config/client.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +17 -4
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/find.d.ts.map +1 -1
- package/dist/config/find.js +20 -22
- package/dist/config/find.js.map +1 -1
- package/dist/config/sanitize.d.ts +1 -1
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sanitize.js +49 -10
- package/dist/config/sanitize.js.map +1 -1
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +36 -10
- package/dist/config/schema.js.map +1 -1
- package/dist/config/shared/adminViewSchema.js.map +1 -1
- package/dist/config/shared/componentSchema.js.map +1 -1
- package/dist/config/shared/openGraphSchema.d.ts +3 -0
- package/dist/config/shared/openGraphSchema.d.ts.map +1 -0
- package/dist/config/shared/openGraphSchema.js +16 -0
- package/dist/config/shared/openGraphSchema.js.map +1 -0
- package/dist/config/types.d.ts +162 -78
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +7 -13
- package/dist/config/types.js.map +1 -1
- package/dist/config/validate.js.map +1 -1
- package/dist/database/combineQueries.js.map +1 -1
- package/dist/database/createDatabaseAdapter.js.map +1 -1
- package/dist/database/flattenWhereToOperators.js.map +1 -1
- package/dist/database/getLocalizedPaths.js.map +1 -1
- package/dist/database/migrations/createMigration.js.map +1 -1
- package/dist/database/migrations/getMigrations.js.map +1 -1
- package/dist/database/migrations/getPredefinedMigration.d.ts +12 -0
- package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -0
- package/dist/database/migrations/getPredefinedMigration.js +38 -0
- package/dist/database/migrations/getPredefinedMigration.js.map +1 -0
- package/dist/database/migrations/migrate.js.map +1 -1
- package/dist/database/migrations/migrateDown.js.map +1 -1
- package/dist/database/migrations/migrateRefresh.js.map +1 -1
- package/dist/database/migrations/migrateReset.js.map +1 -1
- package/dist/database/migrations/migrateStatus.js.map +1 -1
- package/dist/database/migrations/migrationTemplate.js.map +1 -1
- package/dist/database/migrations/migrationsCollection.js.map +1 -1
- package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
- package/dist/database/migrations/readMigrationFiles.js.map +1 -1
- package/dist/database/queryValidation/types.js.map +1 -1
- package/dist/database/queryValidation/validateQueryPaths.js +4 -4
- package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
- package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
- package/dist/database/types.d.ts +22 -8
- package/dist/database/types.d.ts.map +1 -1
- package/dist/database/types.js.map +1 -1
- package/dist/email/consoleEmailAdapter.d.ts +3 -0
- package/dist/email/consoleEmailAdapter.d.ts.map +1 -0
- package/dist/email/consoleEmailAdapter.js +17 -0
- package/dist/email/consoleEmailAdapter.js.map +1 -0
- package/dist/email/defaults.d.ts +2 -2
- package/dist/email/defaults.d.ts.map +1 -1
- package/dist/email/defaults.js +3 -3
- package/dist/email/defaults.js.map +1 -1
- package/dist/email/getStringifiedToAddress.d.ts +3 -0
- package/dist/email/getStringifiedToAddress.d.ts.map +1 -0
- package/dist/email/getStringifiedToAddress.js +20 -0
- package/dist/email/getStringifiedToAddress.js.map +1 -0
- package/dist/email/sendEmail.d.ts +3 -2
- package/dist/email/sendEmail.d.ts.map +1 -1
- package/dist/email/sendEmail.js +8 -4
- package/dist/email/sendEmail.js.map +1 -1
- package/dist/email/types.d.ts +26 -18
- package/dist/email/types.d.ts.map +1 -1
- package/dist/email/types.js +5 -1
- package/dist/email/types.js.map +1 -1
- package/dist/errors/APIError.d.ts +2 -2
- package/dist/errors/APIError.d.ts.map +1 -1
- package/dist/errors/APIError.js +5 -3
- package/dist/errors/APIError.js.map +1 -1
- package/dist/errors/AuthenticationError.d.ts +3 -4
- package/dist/errors/AuthenticationError.d.ts.map +1 -1
- package/dist/errors/AuthenticationError.js +4 -5
- package/dist/errors/AuthenticationError.js.map +1 -1
- package/dist/errors/DuplicateCollection.d.ts +2 -3
- package/dist/errors/DuplicateCollection.d.ts.map +1 -1
- package/dist/errors/DuplicateCollection.js +2 -3
- package/dist/errors/DuplicateCollection.js.map +1 -1
- package/dist/errors/DuplicateFieldName.d.ts +2 -3
- package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
- package/dist/errors/DuplicateFieldName.js +2 -3
- package/dist/errors/DuplicateFieldName.js.map +1 -1
- package/dist/errors/DuplicateGlobal.d.ts +2 -3
- package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
- package/dist/errors/DuplicateGlobal.js +2 -3
- package/dist/errors/DuplicateGlobal.js.map +1 -1
- package/dist/errors/ErrorDeletingFile.d.ts +2 -3
- package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
- package/dist/errors/ErrorDeletingFile.js +2 -3
- package/dist/errors/ErrorDeletingFile.js.map +1 -1
- package/dist/errors/FileRetrievalError.d.ts +6 -0
- package/dist/errors/FileRetrievalError.d.ts.map +1 -0
- package/dist/errors/FileRetrievalError.js +13 -0
- package/dist/errors/FileRetrievalError.js.map +1 -0
- package/dist/errors/FileUploadError.d.ts +2 -3
- package/dist/errors/FileUploadError.d.ts.map +1 -1
- package/dist/errors/FileUploadError.js +2 -3
- package/dist/errors/FileUploadError.js.map +1 -1
- package/dist/errors/Forbidden.d.ts +2 -3
- package/dist/errors/Forbidden.d.ts.map +1 -1
- package/dist/errors/Forbidden.js +2 -3
- package/dist/errors/Forbidden.js.map +1 -1
- package/dist/errors/InvalidConfiguration.d.ts +2 -3
- package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
- package/dist/errors/InvalidConfiguration.js +2 -3
- package/dist/errors/InvalidConfiguration.js.map +1 -1
- package/dist/errors/InvalidFieldName.d.ts +2 -3
- package/dist/errors/InvalidFieldName.d.ts.map +1 -1
- package/dist/errors/InvalidFieldName.js +2 -3
- package/dist/errors/InvalidFieldName.js.map +1 -1
- package/dist/errors/InvalidFieldRelationship.d.ts +2 -3
- package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
- package/dist/errors/InvalidFieldRelationship.js +2 -3
- package/dist/errors/InvalidFieldRelationship.js.map +1 -1
- package/dist/errors/InvalidSchema.d.ts +2 -3
- package/dist/errors/InvalidSchema.d.ts.map +1 -1
- package/dist/errors/InvalidSchema.js +2 -3
- package/dist/errors/InvalidSchema.js.map +1 -1
- package/dist/errors/LockedAuth.d.ts +2 -3
- package/dist/errors/LockedAuth.d.ts.map +1 -1
- package/dist/errors/LockedAuth.js +2 -3
- package/dist/errors/LockedAuth.js.map +1 -1
- package/dist/errors/MissingCollectionLabel.d.ts +2 -3
- package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
- package/dist/errors/MissingCollectionLabel.js +2 -3
- package/dist/errors/MissingCollectionLabel.js.map +1 -1
- package/dist/errors/MissingEditorProp.d.ts +2 -3
- package/dist/errors/MissingEditorProp.d.ts.map +1 -1
- package/dist/errors/MissingEditorProp.js +3 -4
- package/dist/errors/MissingEditorProp.js.map +1 -1
- package/dist/errors/MissingFieldInputOptions.d.ts +2 -3
- package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
- package/dist/errors/MissingFieldInputOptions.js +2 -3
- package/dist/errors/MissingFieldInputOptions.js.map +1 -1
- package/dist/errors/MissingFieldType.d.ts +2 -3
- package/dist/errors/MissingFieldType.d.ts.map +1 -1
- package/dist/errors/MissingFieldType.js +2 -3
- package/dist/errors/MissingFieldType.js.map +1 -1
- package/dist/errors/MissingFile.d.ts +2 -3
- package/dist/errors/MissingFile.d.ts.map +1 -1
- package/dist/errors/MissingFile.js +2 -3
- package/dist/errors/MissingFile.js.map +1 -1
- package/dist/errors/NotFound.d.ts +2 -3
- package/dist/errors/NotFound.d.ts.map +1 -1
- package/dist/errors/NotFound.js +2 -3
- package/dist/errors/NotFound.js.map +1 -1
- package/dist/errors/QueryError.d.ts +2 -3
- package/dist/errors/QueryError.d.ts.map +1 -1
- package/dist/errors/QueryError.js +2 -3
- package/dist/errors/QueryError.js.map +1 -1
- package/dist/errors/TimestampsRequired.d.ts +2 -3
- package/dist/errors/TimestampsRequired.d.ts.map +1 -1
- package/dist/errors/TimestampsRequired.js +2 -3
- package/dist/errors/TimestampsRequired.js.map +1 -1
- package/dist/errors/UnathorizedError.d.ts +2 -3
- package/dist/errors/UnathorizedError.d.ts.map +1 -1
- package/dist/errors/UnathorizedError.js +2 -3
- package/dist/errors/UnathorizedError.js.map +1 -1
- package/dist/errors/ValidationError.d.ts +15 -8
- package/dist/errors/ValidationError.d.ts.map +1 -1
- package/dist/errors/ValidationError.js +5 -6
- package/dist/errors/ValidationError.js.map +1 -1
- package/dist/errors/index.d.ts +21 -19
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +21 -19
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/types.js.map +1 -1
- package/dist/exports/i18n/ar.js.map +1 -1
- package/dist/exports/i18n/az.js.map +1 -1
- package/dist/exports/i18n/bg.js.map +1 -1
- package/dist/exports/i18n/cs.js.map +1 -1
- package/dist/exports/i18n/de.js.map +1 -1
- package/dist/exports/i18n/en.js.map +1 -1
- package/dist/exports/i18n/es.js.map +1 -1
- package/dist/exports/i18n/fa.js.map +1 -1
- package/dist/exports/i18n/fr.js.map +1 -1
- package/dist/exports/i18n/he.d.ts +2 -0
- package/dist/exports/i18n/he.d.ts.map +1 -0
- package/dist/exports/i18n/he.js +3 -0
- package/dist/exports/i18n/he.js.map +1 -0
- package/dist/exports/i18n/hr.js.map +1 -1
- package/dist/exports/i18n/hu.js.map +1 -1
- package/dist/exports/i18n/it.js.map +1 -1
- package/dist/exports/i18n/ja.js.map +1 -1
- package/dist/exports/i18n/ko.js.map +1 -1
- package/dist/exports/i18n/my.js.map +1 -1
- package/dist/exports/i18n/nb.js.map +1 -1
- package/dist/exports/i18n/nl.js.map +1 -1
- package/dist/exports/i18n/pl.js.map +1 -1
- package/dist/exports/i18n/pt.js.map +1 -1
- package/dist/exports/i18n/ro.js.map +1 -1
- package/dist/exports/i18n/rs.js.map +1 -1
- package/dist/exports/i18n/rsLatin.js.map +1 -1
- package/dist/exports/i18n/ru.js.map +1 -1
- package/dist/exports/i18n/sv.js.map +1 -1
- package/dist/exports/i18n/th.js.map +1 -1
- package/dist/exports/i18n/tr.js.map +1 -1
- package/dist/exports/i18n/uk.js.map +1 -1
- package/dist/exports/i18n/vi.js.map +1 -1
- package/dist/exports/i18n/zh.js.map +1 -1
- package/dist/exports/i18n/zhTw.js.map +1 -1
- package/dist/exports/node.d.ts +5 -0
- package/dist/exports/node.d.ts.map +1 -1
- package/dist/exports/node.js +5 -1
- package/dist/exports/node.js.map +1 -1
- package/dist/exports/shared.d.ts +22 -0
- package/dist/exports/shared.d.ts.map +1 -0
- package/dist/exports/shared.js +23 -0
- package/dist/exports/shared.js.map +1 -0
- package/dist/fields/baseFields/baseBlockFields.js.map +1 -1
- package/dist/fields/baseFields/baseIDField.js.map +1 -1
- package/dist/fields/config/client.d.ts +692 -455
- package/dist/fields/config/client.d.ts.map +1 -1
- package/dist/fields/config/client.js +3 -1
- package/dist/fields/config/client.js.map +1 -1
- package/dist/fields/config/sanitize.d.ts +7 -2
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +53 -34
- package/dist/fields/config/sanitize.js.map +1 -1
- package/dist/fields/config/sanitize.spec.js +76 -85
- package/dist/fields/config/sanitize.spec.js.map +1 -1
- package/dist/fields/config/schema.d.ts.map +1 -1
- package/dist/fields/config/schema.js +39 -11
- package/dist/fields/config/schema.js.map +1 -1
- package/dist/fields/config/types.d.ts +135 -46
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js.map +1 -1
- package/dist/fields/getDefaultValue.d.ts.map +1 -1
- package/dist/fields/getDefaultValue.js.map +1 -1
- package/dist/fields/getFieldPaths.d.ts +10 -0
- package/dist/fields/getFieldPaths.d.ts.map +1 -0
- package/dist/fields/getFieldPaths.js +45 -0
- package/dist/fields/getFieldPaths.js.map +1 -0
- package/dist/fields/hooks/afterChange/index.d.ts +6 -0
- package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/index.js +2 -0
- package/dist/fields/hooks/afterChange/index.js.map +1 -1
- package/dist/fields/hooks/afterChange/promise.d.ts +9 -1
- package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/promise.js +67 -3
- package/dist/fields/hooks/afterChange/promise.js.map +1 -1
- package/dist/fields/hooks/afterChange/traverseFields.d.ts +3 -1
- package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/traverseFields.js +3 -1
- package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
- package/dist/fields/hooks/afterRead/index.d.ts +2 -1
- package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/index.js +5 -2
- package/dist/fields/hooks/afterRead/index.js.map +1 -1
- package/dist/fields/hooks/afterRead/promise.d.ts +13 -1
- package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/promise.js +146 -35
- package/dist/fields/hooks/afterRead/promise.js.map +1 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +16 -10
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
- package/dist/fields/hooks/afterRead/traverseFields.d.ts +7 -1
- package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/traverseFields.js +4 -1
- package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
- package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +1 -1
- package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -1
- package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
- package/dist/fields/hooks/beforeChange/index.d.ts +1 -1
- package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/index.js +8 -3
- package/dist/fields/hooks/beforeChange/index.js.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.d.ts +9 -2
- package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.js +80 -11
- package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts +16 -3
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.js +4 -3
- package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.js +2 -0
- package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.d.ts +9 -1
- package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.js +71 -4
- package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +9 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js +3 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
- package/dist/fields/mergeBaseFields.js.map +1 -1
- package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -1
- package/dist/fields/sortableFieldTypes.js.map +1 -1
- package/dist/fields/validations.d.ts +16 -7
- package/dist/fields/validations.d.ts.map +1 -1
- package/dist/fields/validations.js +66 -8
- package/dist/fields/validations.js.map +1 -1
- package/dist/fields/validations.spec.js +1 -0
- package/dist/fields/validations.spec.js.map +1 -1
- package/dist/globals/config/client.d.ts +3 -3
- package/dist/globals/config/client.d.ts.map +1 -1
- package/dist/globals/config/client.js +2 -1
- package/dist/globals/config/client.js.map +1 -1
- package/dist/globals/config/sanitize.d.ts +2 -3
- package/dist/globals/config/sanitize.d.ts.map +1 -1
- package/dist/globals/config/sanitize.js +43 -37
- package/dist/globals/config/sanitize.js.map +1 -1
- package/dist/globals/config/schema.d.ts.map +1 -1
- package/dist/globals/config/schema.js +12 -2
- package/dist/globals/config/schema.js.map +1 -1
- package/dist/globals/config/types.d.ts +12 -7
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js.map +1 -1
- package/dist/globals/operations/docAccess.d.ts.map +1 -1
- package/dist/globals/operations/docAccess.js.map +1 -1
- package/dist/globals/operations/findOne.d.ts +0 -1
- package/dist/globals/operations/findOne.d.ts.map +1 -1
- package/dist/globals/operations/findOne.js +1 -0
- package/dist/globals/operations/findOne.js.map +1 -1
- package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/findVersionByID.js +1 -0
- package/dist/globals/operations/findVersionByID.js.map +1 -1
- package/dist/globals/operations/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/findVersions.js +1 -0
- package/dist/globals/operations/findVersions.js.map +1 -1
- package/dist/globals/operations/local/findOne.d.ts +7 -6
- package/dist/globals/operations/local/findOne.d.ts.map +1 -1
- package/dist/globals/operations/local/findOne.js.map +1 -1
- package/dist/globals/operations/local/findVersionByID.d.ts +7 -6
- package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersionByID.js.map +1 -1
- package/dist/globals/operations/local/findVersions.d.ts +7 -6
- package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersions.js.map +1 -1
- package/dist/globals/operations/local/index.js.map +1 -1
- package/dist/globals/operations/local/restoreVersion.d.ts +7 -6
- package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/local/restoreVersion.js.map +1 -1
- package/dist/globals/operations/local/update.d.ts +7 -6
- package/dist/globals/operations/local/update.d.ts.map +1 -1
- package/dist/globals/operations/local/update.js.map +1 -1
- package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/restoreVersion.js +1 -0
- package/dist/globals/operations/restoreVersion.js.map +1 -1
- package/dist/globals/operations/update.d.ts +5 -7
- package/dist/globals/operations/update.d.ts.map +1 -1
- package/dist/globals/operations/update.js +3 -1
- package/dist/globals/operations/update.js.map +1 -1
- package/dist/index.d.ts +214 -49
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +215 -15
- package/dist/index.js.map +1 -1
- package/dist/preferences/deleteUserPreferences.js.map +1 -1
- package/dist/preferences/operations/delete.js +2 -2
- package/dist/preferences/operations/delete.js.map +1 -1
- package/dist/preferences/operations/findOne.d.ts +2 -2
- package/dist/preferences/operations/findOne.d.ts.map +1 -1
- package/dist/preferences/operations/findOne.js.map +1 -1
- package/dist/preferences/operations/update.js +1 -1
- package/dist/preferences/operations/update.js.map +1 -1
- package/dist/preferences/preferencesCollection.js.map +1 -1
- package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/delete.js +18 -5
- package/dist/preferences/requestHandlers/delete.js.map +1 -1
- package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/findOne.js +18 -5
- package/dist/preferences/requestHandlers/findOne.js.map +1 -1
- package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/update.js +19 -7
- package/dist/preferences/requestHandlers/update.js.map +1 -1
- package/dist/preferences/types.js.map +1 -1
- package/dist/translations/getLocalI18n.d.ts +1 -1
- package/dist/translations/getLocalI18n.d.ts.map +1 -1
- package/dist/translations/getLocalI18n.js +1 -1
- package/dist/translations/getLocalI18n.js.map +1 -1
- package/dist/types/constants.js.map +1 -1
- package/dist/types/index.d.ts +35 -32
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/uploads/canResizeImage.d.ts +1 -1
- package/dist/uploads/canResizeImage.d.ts.map +1 -1
- package/dist/uploads/canResizeImage.js +1 -1
- package/dist/uploads/canResizeImage.js.map +1 -1
- package/dist/uploads/cropImage.d.ts +1 -1
- package/dist/uploads/cropImage.d.ts.map +1 -1
- package/dist/uploads/cropImage.js +12 -5
- package/dist/uploads/cropImage.js.map +1 -1
- package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
- package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
- package/dist/uploads/docWithFilenameExists.js.map +1 -1
- package/dist/uploads/fileExists.d.ts.map +1 -1
- package/dist/uploads/fileExists.js.map +1 -1
- package/dist/uploads/formatFilesize.js.map +1 -1
- package/dist/uploads/generateFileData.d.ts +3 -1
- package/dist/uploads/generateFileData.d.ts.map +1 -1
- package/dist/uploads/generateFileData.js +83 -33
- package/dist/uploads/generateFileData.js.map +1 -1
- package/dist/uploads/getBaseFields.d.ts.map +1 -1
- package/dist/uploads/getBaseFields.js +23 -4
- package/dist/uploads/getBaseFields.js.map +1 -1
- package/dist/uploads/getExternalFile.d.ts +4 -3
- package/dist/uploads/getExternalFile.d.ts.map +1 -1
- package/dist/uploads/getExternalFile.js +10 -6
- package/dist/uploads/getExternalFile.js.map +1 -1
- package/dist/uploads/getFileByPath.d.ts +2 -2
- package/dist/uploads/getFileByPath.d.ts.map +1 -1
- package/dist/uploads/getFileByPath.js +2 -3
- package/dist/uploads/getFileByPath.js.map +1 -1
- package/dist/uploads/getImageSize.d.ts +1 -1
- package/dist/uploads/getImageSize.d.ts.map +1 -1
- package/dist/uploads/getImageSize.js +19 -5
- package/dist/uploads/getImageSize.js.map +1 -1
- package/dist/uploads/getSafeFilename.d.ts +2 -2
- package/dist/uploads/getSafeFilename.d.ts.map +1 -1
- package/dist/uploads/getSafeFilename.js +1 -2
- package/dist/uploads/getSafeFilename.js.map +1 -1
- package/dist/uploads/imageResizer.d.ts +9 -11
- package/dist/uploads/imageResizer.d.ts.map +1 -1
- package/dist/uploads/imageResizer.js +73 -37
- package/dist/uploads/imageResizer.js.map +1 -1
- package/dist/uploads/isImage.d.ts +1 -1
- package/dist/uploads/isImage.d.ts.map +1 -1
- package/dist/uploads/isImage.js +1 -1
- package/dist/uploads/isImage.js.map +1 -1
- package/dist/uploads/mimeTypeValidator.js.map +1 -1
- package/dist/uploads/mimeTypeValidator.spec.js.map +1 -1
- package/dist/uploads/saveBufferToFile.d.ts +0 -1
- package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
- package/dist/uploads/saveBufferToFile.js.map +1 -1
- package/dist/uploads/tempFile.d.ts +7 -0
- package/dist/uploads/tempFile.d.ts.map +1 -0
- package/dist/uploads/tempFile.js +39 -0
- package/dist/uploads/tempFile.js.map +1 -0
- package/dist/uploads/types.d.ts +98 -8
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js.map +1 -1
- package/dist/uploads/unlinkTempFiles.js.map +1 -1
- package/dist/uploads/uploadFiles.d.ts.map +1 -1
- package/dist/uploads/uploadFiles.js.map +1 -1
- package/dist/utilities/checkDuplicateCollections.js +1 -1
- package/dist/utilities/checkDuplicateCollections.js.map +1 -1
- package/dist/utilities/combineMerge.js.map +1 -1
- package/dist/utilities/commitTransaction.js.map +1 -1
- package/dist/utilities/configToJSONSchema.d.ts +1 -0
- package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
- package/dist/utilities/configToJSONSchema.js +136 -5
- package/dist/utilities/configToJSONSchema.js.map +1 -1
- package/dist/utilities/configToJSONSchema.spec.js +156 -2
- package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
- package/dist/utilities/convertData.js.map +1 -1
- package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
- package/dist/utilities/createLocalReq.d.ts.map +1 -1
- package/dist/utilities/createLocalReq.js +8 -5
- package/dist/utilities/createLocalReq.js.map +1 -1
- package/dist/utilities/deepCopyObject.js.map +1 -1
- package/dist/utilities/deepMerge.js.map +1 -1
- package/dist/utilities/dependencies/getDependencies.d.ts +9 -0
- package/dist/utilities/dependencies/getDependencies.d.ts.map +1 -0
- package/dist/utilities/dependencies/getDependencies.js +71 -0
- package/dist/utilities/dependencies/getDependencies.js.map +1 -0
- package/dist/utilities/dependencies/isError.d.ts +5 -0
- package/dist/utilities/dependencies/isError.d.ts.map +1 -0
- package/dist/utilities/dependencies/isError.js +19 -0
- package/dist/utilities/dependencies/isError.js.map +1 -0
- package/dist/utilities/dependencies/realPath.d.ts +3 -0
- package/dist/utilities/dependencies/realPath.d.ts.map +1 -0
- package/dist/utilities/dependencies/realPath.js +23 -0
- package/dist/utilities/dependencies/realPath.js.map +1 -0
- package/dist/utilities/dependencies/resolveFrom.d.ts +2 -0
- package/dist/utilities/dependencies/resolveFrom.d.ts.map +1 -0
- package/dist/utilities/dependencies/resolveFrom.js +58 -0
- package/dist/utilities/dependencies/resolveFrom.js.map +1 -0
- package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
- package/dist/utilities/fieldSchemaToJSON.js.map +1 -1
- package/dist/utilities/flattenTopLevelFields.js.map +1 -1
- package/dist/utilities/formatLabels.js.map +1 -1
- package/dist/utilities/formatLabels.spec.js.map +1 -1
- package/dist/utilities/getCSSVariable.js.map +1 -1
- package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -1
- package/dist/utilities/getDataByPath.d.ts +3 -0
- package/dist/utilities/getDataByPath.d.ts.map +1 -0
- package/dist/utilities/getDataByPath.js +18 -0
- package/dist/utilities/getDataByPath.js.map +1 -0
- package/dist/utilities/getEntityPolicies.js.map +1 -1
- package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
- package/dist/utilities/getObjectDotNotation.js.map +1 -1
- package/dist/utilities/getSiblingData.d.ts +3 -0
- package/dist/utilities/getSiblingData.d.ts.map +1 -0
- package/dist/utilities/getSiblingData.js +33 -0
- package/dist/utilities/getSiblingData.js.map +1 -0
- package/dist/utilities/getUniqueListBy.d.ts +1 -1
- package/dist/utilities/getUniqueListBy.d.ts.map +1 -1
- package/dist/utilities/getUniqueListBy.js +1 -1
- package/dist/utilities/getUniqueListBy.js.map +1 -1
- package/dist/utilities/importWithoutClientFiles.d.ts.map +1 -1
- package/dist/utilities/importWithoutClientFiles.js +10 -4
- package/dist/utilities/importWithoutClientFiles.js.map +1 -1
- package/dist/utilities/initTransaction.d.ts.map +1 -1
- package/dist/utilities/initTransaction.js +9 -9
- package/dist/utilities/initTransaction.js.map +1 -1
- package/dist/utilities/isEntityHidden.d.ts +3 -3
- package/dist/utilities/isEntityHidden.d.ts.map +1 -1
- package/dist/utilities/isEntityHidden.js.map +1 -1
- package/dist/utilities/isNumber.js.map +1 -1
- package/dist/utilities/isPlainObject.js.map +1 -1
- package/dist/utilities/isReactComponent.d.ts +2 -3
- package/dist/utilities/isReactComponent.d.ts.map +1 -1
- package/dist/utilities/isReactComponent.js +17 -11
- package/dist/utilities/isReactComponent.js.map +1 -1
- package/dist/utilities/isValidID.d.ts +1 -1
- package/dist/utilities/isValidID.js.map +1 -1
- package/dist/utilities/isolateObjectProperty.d.ts +1 -1
- package/dist/utilities/isolateObjectProperty.d.ts.map +1 -1
- package/dist/utilities/isolateObjectProperty.js +14 -5
- package/dist/utilities/isolateObjectProperty.js.map +1 -1
- package/dist/utilities/killTransaction.js +1 -1
- package/dist/utilities/killTransaction.js.map +1 -1
- package/dist/utilities/logger.d.ts.map +1 -1
- package/dist/utilities/logger.js.map +1 -1
- package/dist/utilities/mapAsync.js.map +1 -1
- package/dist/utilities/mergeListSearchAndWhere.js.map +1 -1
- package/dist/utilities/overwriteMerge.js.map +1 -1
- package/dist/utilities/parseCookies.d.ts +1 -1
- package/dist/utilities/parseCookies.d.ts.map +1 -1
- package/dist/utilities/parseCookies.js +1 -1
- package/dist/utilities/parseCookies.js.map +1 -1
- package/dist/utilities/reduceFieldsToValues.d.ts +10 -0
- package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -0
- package/dist/utilities/reduceFieldsToValues.js +22 -0
- package/dist/utilities/reduceFieldsToValues.js.map +1 -0
- package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
- package/dist/utilities/sanitizeInternalFields.js.map +1 -1
- package/dist/utilities/setsAreEqual.d.ts.map +1 -1
- package/dist/utilities/setsAreEqual.js.map +1 -1
- package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
- package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
- package/dist/utilities/telemetry/events/serverInit.js.map +1 -1
- package/dist/utilities/telemetry/index.d.ts +9 -0
- package/dist/utilities/telemetry/index.d.ts.map +1 -1
- package/dist/utilities/telemetry/index.js +64 -17
- package/dist/utilities/telemetry/index.js.map +1 -1
- package/dist/utilities/telemetry/oneWayHash.d.ts +0 -1
- package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
- package/dist/utilities/telemetry/oneWayHash.js.map +1 -1
- package/dist/utilities/timestamp.js.map +1 -1
- package/dist/utilities/toKebabCase.js.map +1 -1
- package/dist/utilities/unflatten.d.ts +9 -0
- package/dist/utilities/unflatten.d.ts.map +1 -0
- package/dist/utilities/unflatten.js +64 -0
- package/dist/utilities/unflatten.js.map +1 -0
- package/dist/utilities/wait.js.map +1 -1
- package/dist/utilities/wordBoundariesRegex.js.map +1 -1
- package/dist/versions/baseFields.js.map +1 -1
- package/dist/versions/buildCollectionFields.js.map +1 -1
- package/dist/versions/buildGlobalFields.js.map +1 -1
- package/dist/versions/defaults.d.ts +4 -0
- package/dist/versions/defaults.d.ts.map +1 -0
- package/dist/versions/defaults.js +5 -0
- package/dist/versions/defaults.js.map +1 -0
- package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
- package/dist/versions/deleteCollectionVersions.js.map +1 -1
- package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
- package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
- package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
- package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
- package/dist/versions/enforceMaxVersions.js +1 -1
- package/dist/versions/enforceMaxVersions.js.map +1 -1
- package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
- package/dist/versions/getLatestCollectionVersion.js.map +1 -1
- package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
- package/dist/versions/getLatestGlobalVersion.js.map +1 -1
- package/dist/versions/saveVersion.d.ts.map +1 -1
- package/dist/versions/saveVersion.js +2 -1
- package/dist/versions/saveVersion.js.map +1 -1
- package/dist/versions/types.d.ts +2 -0
- package/dist/versions/types.d.ts.map +1 -1
- package/dist/versions/types.js.map +1 -1
- package/package.json +94 -117
- package/auth.d.ts +0 -6
- package/auth.js +0 -6
- package/config.d.ts +0 -14
- package/config.js +0 -14
- package/database.d.ts +0 -23
- package/database.js +0 -22
- package/dist/email/build.d.ts +0 -5
- package/dist/email/build.d.ts.map +0 -1
- package/dist/email/build.js +0 -63
- package/dist/email/build.js.map +0 -1
- package/dist/email/mockHandler.d.ts +0 -5
- package/dist/email/mockHandler.d.ts.map +0 -1
- package/dist/email/mockHandler.js +0 -24
- package/dist/email/mockHandler.js.map +0 -1
- package/dist/exports/auth.d.ts +0 -6
- package/dist/exports/auth.d.ts.map +0 -1
- package/dist/exports/auth.js +0 -6
- package/dist/exports/auth.js.map +0 -1
- package/dist/exports/components/utilities.d.ts +0 -2
- package/dist/exports/components/utilities.d.ts.map +0 -1
- package/dist/exports/components/utilities.js +0 -2
- package/dist/exports/components/utilities.js.map +0 -1
- package/dist/exports/config.d.ts +0 -14
- package/dist/exports/config.d.ts.map +0 -1
- package/dist/exports/config.js +0 -14
- package/dist/exports/config.js.map +0 -1
- package/dist/exports/database.d.ts +0 -23
- package/dist/exports/database.d.ts.map +0 -1
- package/dist/exports/database.js +0 -22
- package/dist/exports/database.js.map +0 -1
- package/dist/exports/errors.d.ts +0 -2
- package/dist/exports/errors.d.ts.map +0 -1
- package/dist/exports/errors.js +0 -3
- package/dist/exports/errors.js.map +0 -1
- package/dist/exports/fields/index.d.ts +0 -3
- package/dist/exports/fields/index.d.ts.map +0 -1
- package/dist/exports/fields/index.js +0 -4
- package/dist/exports/fields/index.js.map +0 -1
- package/dist/exports/fields/validations.d.ts +0 -2
- package/dist/exports/fields/validations.d.ts.map +0 -1
- package/dist/exports/fields/validations.js +0 -3
- package/dist/exports/fields/validations.js.map +0 -1
- package/dist/exports/operations.d.ts +0 -30
- package/dist/exports/operations.d.ts.map +0 -1
- package/dist/exports/operations.js +0 -31
- package/dist/exports/operations.js.map +0 -1
- package/dist/exports/types.d.ts +0 -17
- package/dist/exports/types.d.ts.map +0 -1
- package/dist/exports/types.js +0 -5
- package/dist/exports/types.js.map +0 -1
- package/dist/exports/uploads.d.ts +0 -2
- package/dist/exports/uploads.d.ts.map +0 -1
- package/dist/exports/uploads.js +0 -3
- package/dist/exports/uploads.js.map +0 -1
- package/dist/exports/utilities.d.ts +0 -31
- package/dist/exports/utilities.d.ts.map +0 -1
- package/dist/exports/utilities.js +0 -32
- package/dist/exports/utilities.js.map +0 -1
- package/dist/exports/versions.d.ts +0 -9
- package/dist/exports/versions.d.ts.map +0 -1
- package/dist/exports/versions.js +0 -9
- package/dist/exports/versions.js.map +0 -1
- package/errors.d.ts +0 -2
- package/errors.js +0 -3
- package/node.d.ts +0 -3
- package/node.js +0 -4
- package/operations.d.ts +0 -30
- package/operations.js +0 -31
- package/src/index.ts +0 -498
- package/types.d.ts +0 -17
- package/types.js +0 -5
- package/uploads.d.ts +0 -2
- package/uploads.js +0 -3
- package/utilities.d.ts +0 -31
- package/utilities.js +0 -32
- package/versions.d.ts +0 -9
- package/versions.js +0 -9
package/dist/index.js
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
|
+
import { spawn } from 'child_process';
|
|
1
2
|
import crypto from 'crypto';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import path from 'path';
|
|
2
5
|
import { decrypt, encrypt } from './auth/crypto.js';
|
|
3
6
|
import { APIKeyAuthentication } from './auth/strategies/apiKey.js';
|
|
4
7
|
import { JWTAuthentication } from './auth/strategies/jwt.js';
|
|
5
8
|
import localOperations from './collections/operations/local/index.js';
|
|
6
9
|
import { validateSchema } from './config/validate.js';
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import sendEmail from './email/sendEmail.js';
|
|
10
|
-
import { fieldAffectsData } from './exports/types.js';
|
|
10
|
+
import { consoleEmailAdapter } from './email/consoleEmailAdapter.js';
|
|
11
|
+
import { fieldAffectsData } from './fields/config/types.js';
|
|
11
12
|
import localGlobalOperations from './globals/operations/local/index.js';
|
|
13
|
+
import { getDependencies } from './utilities/dependencies/getDependencies.js';
|
|
12
14
|
import flattenFields from './utilities/flattenTopLevelFields.js';
|
|
13
15
|
import Logger from './utilities/logger.js';
|
|
14
16
|
import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/serverInit.js';
|
|
17
|
+
const filename = fileURLToPath(import.meta.url);
|
|
18
|
+
const dirname = path.dirname(filename);
|
|
15
19
|
/**
|
|
16
20
|
* @description Payload
|
|
17
21
|
*/ export class BasePayload {
|
|
18
22
|
/**
|
|
19
23
|
* @description Authorization and Authentication using headers and cookies to run auth user strategies
|
|
20
|
-
* @returns cookies: Map<string, string>
|
|
21
24
|
* @returns permissions: Permissions
|
|
22
25
|
* @returns user: User
|
|
23
26
|
*/ auth = async (options)=>{
|
|
@@ -28,6 +31,14 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
28
31
|
collections = {};
|
|
29
32
|
config;
|
|
30
33
|
/**
|
|
34
|
+
* @description Performs count operation
|
|
35
|
+
* @param options
|
|
36
|
+
* @returns count of documents satisfying query
|
|
37
|
+
*/ count = async (options)=>{
|
|
38
|
+
const { count } = localOperations;
|
|
39
|
+
return count(this, options);
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
31
42
|
* @description Performs create operation
|
|
32
43
|
* @param options
|
|
33
44
|
* @returns created document
|
|
@@ -42,7 +53,6 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
42
53
|
return duplicate(this, options);
|
|
43
54
|
};
|
|
44
55
|
email;
|
|
45
|
-
emailOptions;
|
|
46
56
|
// TODO: re-implement or remove?
|
|
47
57
|
// errorHandler: ErrorHandler
|
|
48
58
|
encrypt = encrypt;
|
|
@@ -149,6 +159,25 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
149
159
|
return verifyEmail(this, options);
|
|
150
160
|
};
|
|
151
161
|
versions = {};
|
|
162
|
+
async bin({ args, cwd, log }) {
|
|
163
|
+
return new Promise((resolve, reject)=>{
|
|
164
|
+
const spawned = spawn('node', [
|
|
165
|
+
path.resolve(dirname, '../bin.js'),
|
|
166
|
+
...args
|
|
167
|
+
], {
|
|
168
|
+
cwd,
|
|
169
|
+
stdio: log || log === undefined ? 'inherit' : 'ignore'
|
|
170
|
+
});
|
|
171
|
+
spawned.on('exit', (code)=>{
|
|
172
|
+
resolve({
|
|
173
|
+
code
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
spawned.on('error', (error)=>{
|
|
177
|
+
reject(error);
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
}
|
|
152
181
|
delete(options) {
|
|
153
182
|
const { deleteLocal } = localOperations;
|
|
154
183
|
return deleteLocal(this, options);
|
|
@@ -157,6 +186,52 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
157
186
|
* @description Initializes Payload
|
|
158
187
|
* @param options
|
|
159
188
|
*/ async init(options) {
|
|
189
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
190
|
+
// First load. First check if there are mismatching dependency versions of payload packages
|
|
191
|
+
const resolvedDependencies = await getDependencies(dirname, [
|
|
192
|
+
'@payloadcms/ui/shared',
|
|
193
|
+
'payload',
|
|
194
|
+
'@payloadcms/next/utilities',
|
|
195
|
+
'@payloadcms/richtext-lexical',
|
|
196
|
+
'@payloadcms/richtext-slate',
|
|
197
|
+
'@payloadcms/graphql',
|
|
198
|
+
'@payloadcms/plugin-cloud',
|
|
199
|
+
'@payloadcms/db-mongodb',
|
|
200
|
+
'@payloadcms/db-postgres',
|
|
201
|
+
'@payloadcms/plugin-form-builder',
|
|
202
|
+
'@payloadcms/plugin-nested-docs',
|
|
203
|
+
'@payloadcms/plugin-seo',
|
|
204
|
+
'@payloadcms/plugin-search',
|
|
205
|
+
'@payloadcms/plugin-cloud-storage',
|
|
206
|
+
'@payloadcms/plugin-stripe',
|
|
207
|
+
'@payloadcms/plugin-zapier',
|
|
208
|
+
'@payloadcms/plugin-redirects',
|
|
209
|
+
'@payloadcms/plugin-sentry',
|
|
210
|
+
'@payloadcms/bundler-webpack',
|
|
211
|
+
'@payloadcms/bundler-vite',
|
|
212
|
+
'@payloadcms/live-preview',
|
|
213
|
+
'@payloadcms/live-preview-react',
|
|
214
|
+
'@payloadcms/translations',
|
|
215
|
+
'@payloadcms/email-nodemailer',
|
|
216
|
+
'@payloadcms/email-resend',
|
|
217
|
+
'@payloadcms/storage-azure',
|
|
218
|
+
'@payloadcms/storage-s3',
|
|
219
|
+
'@payloadcms/storage-gcs',
|
|
220
|
+
'@payloadcms/storage-vercel-blob',
|
|
221
|
+
'@payloadcms/storage-uploadthing'
|
|
222
|
+
]);
|
|
223
|
+
// Go through each resolved dependency. If any dependency has a mismatching version, throw an error
|
|
224
|
+
const foundVersions = {};
|
|
225
|
+
for (const [_pkg, { version }] of resolvedDependencies.resolved){
|
|
226
|
+
if (!Object.keys(foundVersions).includes(version)) {
|
|
227
|
+
foundVersions[version] = _pkg;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
if (Object.keys(foundVersions).length > 1) {
|
|
231
|
+
const formattedVersionsWithPackageNameString = Object.entries(foundVersions).map(([version, pkg])=>`${pkg}@${version}`).join(', ');
|
|
232
|
+
throw new Error(`Mismatching payload dependency versions found: ${formattedVersionsWithPackageNameString}. All payload and @payloadcms/* packages must have the same version. This is an error with your set-up, caused by you, not a bug in payload. Please go to your package.json and ensure all payload and @payloadcms/* packages have the same version.`);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
160
235
|
if (!options?.config) {
|
|
161
236
|
throw new Error('Error: the payload config is required to initialize payload.');
|
|
162
237
|
}
|
|
@@ -181,6 +256,17 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
181
256
|
customIDType
|
|
182
257
|
};
|
|
183
258
|
});
|
|
259
|
+
// Generate types on startup
|
|
260
|
+
if (process.env.NODE_ENV !== 'production' && this.config.typescript.autoGenerate !== false) {
|
|
261
|
+
// We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.
|
|
262
|
+
// see: https://github.com/vercel/next.js/issues/66723
|
|
263
|
+
void this.bin({
|
|
264
|
+
args: [
|
|
265
|
+
'generate:types'
|
|
266
|
+
],
|
|
267
|
+
log: false
|
|
268
|
+
});
|
|
269
|
+
}
|
|
184
270
|
this.db = this.config.db.init({
|
|
185
271
|
payload: this
|
|
186
272
|
});
|
|
@@ -191,16 +277,27 @@ import { serverInit as serverInitTelemetry } from './utilities/telemetry/events/
|
|
|
191
277
|
if (!options.disableDBConnect && this.db.connect) {
|
|
192
278
|
await this.db.connect();
|
|
193
279
|
}
|
|
194
|
-
//
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
280
|
+
// Load email adapter
|
|
281
|
+
if (this.config.email instanceof Promise) {
|
|
282
|
+
const awaitedAdapter = await this.config.email;
|
|
283
|
+
this.email = awaitedAdapter({
|
|
284
|
+
payload: this
|
|
285
|
+
});
|
|
286
|
+
} else if (this.config.email) {
|
|
287
|
+
this.email = this.config.email({
|
|
288
|
+
payload: this
|
|
289
|
+
});
|
|
290
|
+
} else {
|
|
291
|
+
this.logger.warn(`No email adapter provided. Email will be written to console. More info at https://payloadcms.com/docs/email/overview.`);
|
|
292
|
+
this.email = consoleEmailAdapter({
|
|
293
|
+
payload: this
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
// Warn if image resizing is enabled but sharp is not installed
|
|
297
|
+
if (!this.config.sharp && this.config.collections.some((c)=>c.upload.imageSizes || c.upload.formatOptions)) {
|
|
298
|
+
this.logger.warn(`Image resizing is enabled for one or more collections, but sharp not installed. Please install 'sharp' and pass into the config.`);
|
|
200
299
|
}
|
|
201
|
-
this.
|
|
202
|
-
this.email = buildEmail(this.emailOptions, this.logger);
|
|
203
|
-
this.sendEmail = sendEmail.bind(this);
|
|
300
|
+
this.sendEmail = this.email['sendEmail'];
|
|
204
301
|
serverInitTelemetry(this);
|
|
205
302
|
// 1. loop over collections, if collection has auth strategy, initialize and push to array
|
|
206
303
|
let jwtStrategyEnabled = false;
|
|
@@ -269,5 +366,108 @@ export const getPayload = async (options)=>{
|
|
|
269
366
|
}
|
|
270
367
|
return cached.payload;
|
|
271
368
|
};
|
|
369
|
+
export * from './types/index.js';
|
|
370
|
+
export { createDataloaderCacheKey, getDataLoader } from './collections/dataloader.js';
|
|
371
|
+
export { buildConfig } from './config/build.js';
|
|
372
|
+
export { APIError, AuthenticationError, DuplicateCollection, DuplicateFieldName, DuplicateGlobal, ErrorDeletingFile, FileRetrievalError, FileUploadError, Forbidden, InvalidConfiguration, InvalidFieldName, InvalidFieldRelationship, LockedAuth, MissingCollectionLabel, MissingEditorProp, MissingFieldInputOptions, MissingFieldType, MissingFile, NotFound, QueryError, ValidationError } from './errors/index.js';
|
|
373
|
+
export { traverseFields as afterChangeTraverseFields } from './fields/hooks/afterChange/traverseFields.js';
|
|
374
|
+
export { promise as afterReadPromise } from './fields/hooks/afterRead/promise.js';
|
|
375
|
+
export { traverseFields as afterReadTraverseFields } from './fields/hooks/afterRead/traverseFields.js';
|
|
376
|
+
export { traverseFields as beforeChangeTraverseFields } from './fields/hooks/beforeChange/traverseFields.js';
|
|
377
|
+
export { traverseFields as beforeValidateTraverseFields } from './fields/hooks/beforeValidate/traverseFields.js';
|
|
378
|
+
export { getLocalI18n } from './translations/getLocalI18n.js';
|
|
379
|
+
export { combineMerge } from './utilities/combineMerge.js';
|
|
380
|
+
export { configToJSONSchema, entityToJSONSchema, fieldsToJSONSchema, withNullableJSONSchemaType } from './utilities/configToJSONSchema.js';
|
|
381
|
+
export { createArrayFromCommaDelineated } from './utilities/createArrayFromCommaDelineated.js';
|
|
382
|
+
export { createLocalReq } from './utilities/createLocalReq.js';
|
|
383
|
+
export { deepCopyObject } from './utilities/deepCopyObject.js';
|
|
384
|
+
export { deepMerge } from './utilities/deepMerge.js';
|
|
385
|
+
export { default as flattenTopLevelFields } from './utilities/flattenTopLevelFields.js';
|
|
386
|
+
export { formatLabels, formatNames, toWords } from './utilities/formatLabels.js';
|
|
387
|
+
export { getCollectionIDFieldTypes } from './utilities/getCollectionIDFieldTypes.js';
|
|
388
|
+
export { getObjectDotNotation } from './utilities/getObjectDotNotation.js';
|
|
389
|
+
export { isEntityHidden } from './utilities/isEntityHidden.js';
|
|
390
|
+
export { isPlainObject } from './utilities/isPlainObject.js';
|
|
391
|
+
export { isValidID } from './utilities/isValidID.js';
|
|
392
|
+
export { default as isolateObjectProperty } from './utilities/isolateObjectProperty.js';
|
|
393
|
+
export { mapAsync } from './utilities/mapAsync.js';
|
|
394
|
+
export { mergeListSearchAndWhere } from './utilities/mergeListSearchAndWhere.js';
|
|
395
|
+
export { buildVersionCollectionFields } from './versions/buildCollectionFields.js';
|
|
396
|
+
export { buildVersionGlobalFields } from './versions/buildGlobalFields.js';
|
|
397
|
+
export { versionDefaults } from './versions/defaults.js';
|
|
398
|
+
export { deleteCollectionVersions } from './versions/deleteCollectionVersions.js';
|
|
399
|
+
export { enforceMaxVersions } from './versions/enforceMaxVersions.js';
|
|
400
|
+
export { getLatestCollectionVersion } from './versions/getLatestCollectionVersion.js';
|
|
401
|
+
export { getLatestGlobalVersion } from './versions/getLatestGlobalVersion.js';
|
|
402
|
+
export { saveVersion } from './versions/saveVersion.js';
|
|
403
|
+
export * from './config/types.js';
|
|
404
|
+
export { createClientCollectionConfig } from './collections/config/client.js';
|
|
405
|
+
export { createClientConfig } from './config/client.js';
|
|
406
|
+
export { defaults } from './config/defaults.js';
|
|
407
|
+
export { baseBlockFields } from './fields/baseFields/baseBlockFields.js';
|
|
408
|
+
export { baseIDField } from './fields/baseFields/baseIDField.js';
|
|
409
|
+
export { createClientFieldConfig } from './fields/config/client.js';
|
|
410
|
+
export { sanitizeFields } from './fields/config/sanitize.js';
|
|
411
|
+
export { createClientGlobalConfig } from './globals/config/client.js';
|
|
412
|
+
export { accessOperation } from './auth/operations/access.js';
|
|
413
|
+
export { forgotPasswordOperation } from './auth/operations/forgotPassword.js';
|
|
414
|
+
export { initOperation } from './auth/operations/init.js';
|
|
415
|
+
export { loginOperation } from './auth/operations/login.js';
|
|
416
|
+
export { logoutOperation } from './auth/operations/logout.js';
|
|
417
|
+
export { meOperation } from './auth/operations/me.js';
|
|
418
|
+
export { refreshOperation } from './auth/operations/refresh.js';
|
|
419
|
+
export { registerFirstUserOperation } from './auth/operations/registerFirstUser.js';
|
|
420
|
+
export { resetPasswordOperation } from './auth/operations/resetPassword.js';
|
|
421
|
+
export { unlockOperation } from './auth/operations/unlock.js';
|
|
422
|
+
export { verifyEmailOperation } from './auth/operations/verifyEmail.js';
|
|
423
|
+
export { countOperation } from './collections/operations/count.js';
|
|
424
|
+
export { createOperation } from './collections/operations/create.js';
|
|
425
|
+
export { deleteOperation } from './collections/operations/delete.js';
|
|
426
|
+
export { deleteByIDOperation } from './collections/operations/deleteByID.js';
|
|
427
|
+
export { docAccessOperation } from './collections/operations/docAccess.js';
|
|
428
|
+
export { duplicateOperation } from './collections/operations/duplicate.js';
|
|
429
|
+
export { findOperation } from './collections/operations/find.js';
|
|
430
|
+
export { findByIDOperation } from './collections/operations/findByID.js';
|
|
431
|
+
export { findVersionByIDOperation } from './collections/operations/findVersionByID.js';
|
|
432
|
+
export { findVersionsOperation } from './collections/operations/findVersions.js';
|
|
433
|
+
export { restoreVersionOperation } from './collections/operations/restoreVersion.js';
|
|
434
|
+
export { updateOperation } from './collections/operations/update.js';
|
|
435
|
+
export { updateByIDOperation } from './collections/operations/updateByID.js';
|
|
436
|
+
export { sanitizeConfig } from './config/sanitize.js';
|
|
437
|
+
export { default as getDefaultValue } from './fields/getDefaultValue.js';
|
|
438
|
+
export { default as sortableFieldTypes } from './fields/sortableFieldTypes.js';
|
|
439
|
+
export { docAccessOperation as docAccessOperationGlobal } from './globals/operations/docAccess.js';
|
|
440
|
+
export { findOneOperation } from './globals/operations/findOne.js';
|
|
441
|
+
export { findVersionByIDOperation as findVersionByIDOperationGlobal } from './globals/operations/findVersionByID.js';
|
|
442
|
+
export { findVersionsOperation as findVersionsOperationGlobal } from './globals/operations/findVersions.js';
|
|
443
|
+
export { restoreVersionOperation as restoreVersionOperationGlobal } from './globals/operations/restoreVersion.js';
|
|
444
|
+
export { updateOperation as updateOperationGlobal } from './globals/operations/update.js';
|
|
445
|
+
export * from './auth/index.js';
|
|
446
|
+
export { default as executeAccess } from './auth/executeAccess.js';
|
|
447
|
+
export { executeAuthStrategies } from './auth/executeAuthStrategies.js';
|
|
448
|
+
export { getAccessResults } from './auth/getAccessResults.js';
|
|
449
|
+
export { getFieldsToSign } from './auth/getFieldsToSign.js';
|
|
450
|
+
export { combineQueries } from './database/combineQueries.js';
|
|
451
|
+
export { createDatabaseAdapter } from './database/createDatabaseAdapter.js';
|
|
452
|
+
export { default as flattenWhereToOperators } from './database/flattenWhereToOperators.js';
|
|
453
|
+
export { getLocalizedPaths } from './database/getLocalizedPaths.js';
|
|
454
|
+
export { createMigration } from './database/migrations/createMigration.js';
|
|
455
|
+
export { getMigrations } from './database/migrations/getMigrations.js';
|
|
456
|
+
export { getPredefinedMigration } from './database/migrations/getPredefinedMigration.js';
|
|
457
|
+
export { migrate } from './database/migrations/migrate.js';
|
|
458
|
+
export { migrateDown } from './database/migrations/migrateDown.js';
|
|
459
|
+
export { migrateRefresh } from './database/migrations/migrateRefresh.js';
|
|
460
|
+
export { migrateReset } from './database/migrations/migrateReset.js';
|
|
461
|
+
export { migrateStatus } from './database/migrations/migrateStatus.js';
|
|
462
|
+
export { migrationTemplate } from './database/migrations/migrationTemplate.js';
|
|
463
|
+
export { migrationsCollection } from './database/migrations/migrationsCollection.js';
|
|
464
|
+
export { readMigrationFiles } from './database/migrations/readMigrationFiles.js';
|
|
465
|
+
export { validateQueryPaths } from './database/queryValidation/validateQueryPaths.js';
|
|
466
|
+
export { validateSearchParam } from './database/queryValidation/validateSearchParams.js';
|
|
467
|
+
export { getFileByPath } from './uploads/getFileByPath.js';
|
|
468
|
+
export { commitTransaction } from './utilities/commitTransaction.js';
|
|
469
|
+
export { getDependencies };
|
|
470
|
+
export { initTransaction } from './utilities/initTransaction.js';
|
|
471
|
+
export { killTransaction } from './utilities/killTransaction.js';
|
|
272
472
|
|
|
273
473
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ExecutionResult, GraphQLSchema, ValidationRule } from 'graphql'\nimport type { OperationArgs, Request as graphQLRequest } from 'graphql-http'\nimport type { SendMailOptions } from 'nodemailer'\nimport type pino from 'pino'\n\nimport crypto from 'crypto'\n\nimport type { AuthArgs } from './auth/operations/auth.js'\nimport type { Result as ForgotPasswordResult } from './auth/operations/forgotPassword.js'\nimport type { Options as ForgotPasswordOptions } from './auth/operations/local/forgotPassword.js'\nimport type { Options as LoginOptions } from './auth/operations/local/login.js'\nimport type { Options as ResetPasswordOptions } from './auth/operations/local/resetPassword.js'\nimport type { Options as UnlockOptions } from './auth/operations/local/unlock.js'\nimport type { Options as VerifyEmailOptions } from './auth/operations/local/verifyEmail.js'\nimport type { Result as LoginResult } from './auth/operations/login.js'\nimport type { Result as ResetPasswordResult } from './auth/operations/resetPassword.js'\nimport type { AuthStrategy } from './auth/types.js'\nimport type { BulkOperationResult, Collection, TypeWithID } from './collections/config/types.js'\nimport type { Options as CreateOptions } from './collections/operations/local/create.js'\nimport type {\n ByIDOptions as DeleteByIDOptions,\n ManyOptions as DeleteManyOptions,\n Options as DeleteOptions,\n} from './collections/operations/local/delete.js'\nimport type { Options as DuplicateOptions } from './collections/operations/local/duplicate.js'\nimport type { Options as FindOptions } from './collections/operations/local/find.js'\nimport type { Options as FindByIDOptions } from './collections/operations/local/findByID.js'\nimport type { Options as FindVersionByIDOptions } from './collections/operations/local/findVersionByID.js'\nimport type { Options as FindVersionsOptions } from './collections/operations/local/findVersions.js'\nimport type { Options as RestoreVersionOptions } from './collections/operations/local/restoreVersion.js'\nimport type {\n ByIDOptions as UpdateByIDOptions,\n ManyOptions as UpdateManyOptions,\n Options as UpdateOptions,\n} from './collections/operations/local/update.js'\nimport type { EmailOptions, InitOptions, SanitizedConfig } from './config/types.js'\nimport type { BaseDatabaseAdapter, PaginatedDocs } from './database/types.js'\nimport type { BuildEmailResult } from './email/types.js'\nimport type { TypeWithID as GlobalTypeWithID, Globals } from './globals/config/types.js'\nimport type { Options as FindGlobalOptions } from './globals/operations/local/findOne.js'\nimport type { Options as FindGlobalVersionByIDOptions } from './globals/operations/local/findVersionByID.js'\nimport type { Options as FindGlobalVersionsOptions } from './globals/operations/local/findVersions.js'\nimport type { Options as RestoreGlobalVersionOptions } from './globals/operations/local/restoreVersion.js'\nimport type { Options as UpdateGlobalOptions } from './globals/operations/local/update.js'\nimport type { TypeWithVersion } from './versions/types.js'\n\nimport { decrypt, encrypt } from './auth/crypto.js'\nimport { APIKeyAuthentication } from './auth/strategies/apiKey.js'\nimport { JWTAuthentication } from './auth/strategies/jwt.js'\nimport localOperations from './collections/operations/local/index.js'\nimport { validateSchema } from './config/validate.js'\nimport buildEmail from './email/build.js'\nimport { defaults as emailDefaults } from './email/defaults.js'\nimport sendEmail from './email/sendEmail.js'\nimport { fieldAffectsData } from './exports/types.js'\nimport localGlobalOperations from './globals/operations/local/index.js'\nimport flattenFields from './utilities/flattenTopLevelFields.js'\nimport Logger from './utilities/logger.js'\nimport { serverInit as serverInitTelemetry } from './utilities/telemetry/events/serverInit.js'\n\n/**\n * @description Payload\n */\nexport class BasePayload<TGeneratedTypes extends GeneratedTypes> {\n /**\n * @description Authorization and Authentication using headers and cookies to run auth user strategies\n * @returns cookies: Map<string, string>\n * @returns permissions: Permissions\n * @returns user: User\n */\n auth = async (options: AuthArgs) => {\n const { auth } = localOperations.auth\n return auth(this, options)\n }\n\n authStrategies: AuthStrategy[]\n\n collections: {\n [slug: number | string | symbol]: Collection\n } = {}\n\n config: SanitizedConfig\n\n /**\n * @description Performs create operation\n * @param options\n * @returns created document\n */\n create = async <T extends keyof TGeneratedTypes['collections']>(\n options: CreateOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]> => {\n const { create } = localOperations\n return create<T>(this, options)\n }\n\n db: DatabaseAdapter\n\n decrypt = decrypt\n\n duplicate = async <T extends keyof TGeneratedTypes['collections']>(\n options: DuplicateOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]> => {\n const { duplicate } = localOperations\n return duplicate<T>(this, options)\n }\n\n email: BuildEmailResult\n\n emailOptions: EmailOptions\n\n // TODO: re-implement or remove?\n // errorHandler: ErrorHandler\n\n encrypt = encrypt\n\n extensions: (args: {\n args: OperationArgs<any>\n req: graphQLRequest<unknown, unknown>\n result: ExecutionResult\n }) => Promise<any>\n\n /**\n * @description Find documents with criteria\n * @param options\n * @returns documents satisfying query\n */\n find = async <T extends keyof TGeneratedTypes['collections']>(\n options: FindOptions<T>,\n ): Promise<PaginatedDocs<TGeneratedTypes['collections'][T]>> => {\n const { find } = localOperations\n return find<T>(this, options)\n }\n\n /**\n * @description Find document by ID\n * @param options\n * @returns document with specified ID\n */\n findByID = async <T extends keyof TGeneratedTypes['collections']>(\n options: FindByIDOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]> => {\n const { findByID } = localOperations\n return findByID<T>(this, options)\n }\n\n findGlobal = async <T extends keyof TGeneratedTypes['globals']>(\n options: FindGlobalOptions<T>,\n ): Promise<TGeneratedTypes['globals'][T]> => {\n const { findOne } = localGlobalOperations\n return findOne<T>(this, options)\n }\n\n /**\n * @description Find global version by ID\n * @param options\n * @returns global version with specified ID\n */\n findGlobalVersionByID = async <T extends keyof TGeneratedTypes['globals']>(\n options: FindGlobalVersionByIDOptions<T>,\n ): Promise<TypeWithVersion<TGeneratedTypes['globals'][T]>> => {\n const { findVersionByID } = localGlobalOperations\n return findVersionByID<T>(this, options)\n }\n\n /**\n * @description Find global versions with criteria\n * @param options\n * @returns versions satisfying query\n */\n findGlobalVersions = async <T extends keyof TGeneratedTypes['globals']>(\n options: FindGlobalVersionsOptions<T>,\n ): Promise<PaginatedDocs<TypeWithVersion<TGeneratedTypes['globals'][T]>>> => {\n const { findVersions } = localGlobalOperations\n return findVersions<T>(this, options)\n }\n\n /**\n * @description Find version by ID\n * @param options\n * @returns version with specified ID\n */\n findVersionByID = async <T extends keyof TGeneratedTypes['collections']>(\n options: FindVersionByIDOptions<T>,\n ): Promise<TypeWithVersion<TGeneratedTypes['collections'][T]>> => {\n const { findVersionByID } = localOperations\n return findVersionByID<T>(this, options)\n }\n\n /**\n * @description Find versions with criteria\n * @param options\n * @returns versions satisfying query\n */\n findVersions = async <T extends keyof TGeneratedTypes['collections']>(\n options: FindVersionsOptions<T>,\n ): Promise<PaginatedDocs<TypeWithVersion<TGeneratedTypes['collections'][T]>>> => {\n const { findVersions } = localOperations\n return findVersions<T>(this, options)\n }\n\n forgotPassword = async <T extends keyof TGeneratedTypes['collections']>(\n options: ForgotPasswordOptions<T>,\n ): Promise<ForgotPasswordResult> => {\n const { forgotPassword } = localOperations.auth\n return forgotPassword<T>(this, options)\n }\n\n getAPIURL = (): string => `${this.config.serverURL}${this.config.routes.api}`\n\n getAdminURL = (): string => `${this.config.serverURL}${this.config.routes.admin}`\n\n globals: Globals\n\n logger: pino.Logger\n\n login = async <T extends keyof TGeneratedTypes['collections']>(\n options: LoginOptions<T>,\n ): Promise<LoginResult & { user: TGeneratedTypes['collections'][T] }> => {\n const { login } = localOperations.auth\n return login<T>(this, options)\n }\n\n resetPassword = async <T extends keyof TGeneratedTypes['collections']>(\n options: ResetPasswordOptions<T>,\n ): Promise<ResetPasswordResult> => {\n const { resetPassword } = localOperations.auth\n return resetPassword<T>(this, options)\n }\n\n /**\n * @description Restore global version by ID\n * @param options\n * @returns version with specified ID\n */\n restoreGlobalVersion = async <T extends keyof TGeneratedTypes['globals']>(\n options: RestoreGlobalVersionOptions<T>,\n ): Promise<TGeneratedTypes['globals'][T]> => {\n const { restoreVersion } = localGlobalOperations\n return restoreVersion<T>(this, options)\n }\n\n /**\n * @description Restore version by ID\n * @param options\n * @returns version with specified ID\n */\n restoreVersion = async <T extends keyof TGeneratedTypes['collections']>(\n options: RestoreVersionOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]> => {\n const { restoreVersion } = localOperations\n return restoreVersion<T>(this, options)\n }\n\n schema: GraphQLSchema\n\n secret: string\n\n sendEmail: (message: SendMailOptions) => Promise<unknown>\n\n types: {\n arrayTypes: any\n blockInputTypes: any\n blockTypes: any\n fallbackLocaleInputType?: any\n groupTypes: any\n localeInputType?: any\n tabTypes: any\n }\n\n unlock = async <T extends keyof TGeneratedTypes['collections']>(\n options: UnlockOptions<T>,\n ): Promise<boolean> => {\n const { unlock } = localOperations.auth\n return unlock(this, options)\n }\n\n updateGlobal = async <T extends keyof TGeneratedTypes['globals']>(\n options: UpdateGlobalOptions<T>,\n ): Promise<TGeneratedTypes['globals'][T]> => {\n const { update } = localGlobalOperations\n return update<T>(this, options)\n }\n\n validationRules: (args: OperationArgs<any>) => ValidationRule[]\n\n verifyEmail = async <T extends keyof TGeneratedTypes['collections']>(\n options: VerifyEmailOptions<T>,\n ): Promise<boolean> => {\n const { verifyEmail } = localOperations.auth\n return verifyEmail(this, options)\n }\n\n versions: {\n [slug: string]: any // TODO: Type this\n } = {}\n\n /**\n * @description delete one or more documents\n * @param options\n * @returns Updated document(s)\n */\n delete<T extends keyof TGeneratedTypes['collections']>(\n options: DeleteByIDOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]>\n\n delete<T extends keyof TGeneratedTypes['collections']>(\n options: DeleteManyOptions<T>,\n ): Promise<BulkOperationResult<T>>\n\n delete<T extends keyof TGeneratedTypes['collections']>(\n options: DeleteOptions<T>,\n ): Promise<BulkOperationResult<T> | TGeneratedTypes['collections'][T]> {\n const { deleteLocal } = localOperations\n return deleteLocal<T>(this, options)\n }\n\n /**\n * @description Initializes Payload\n * @param options\n */\n async init(options: InitOptions): Promise<Payload> {\n if (!options?.config) {\n throw new Error('Error: the payload config is required to initialize payload.')\n }\n\n this.logger = Logger('payload', options.loggerOptions, options.loggerDestination)\n\n this.config = await options.config\n\n if (process.env.NODE_ENV !== 'production') {\n validateSchema(this.config, this.logger)\n }\n\n if (!this.config.secret) {\n throw new Error('Error: missing secret key. A secret key is needed to secure Payload.')\n }\n\n this.secret = crypto.createHash('sha256').update(this.config.secret).digest('hex').slice(0, 32)\n\n this.globals = {\n config: this.config.globals,\n }\n\n this.config.collections.forEach((collection) => {\n const customID = flattenFields(collection.fields).find(\n (field) => fieldAffectsData(field) && field.name === 'id',\n )\n\n let customIDType\n\n if (customID?.type === 'number' || customID?.type === 'text') customIDType = customID.type\n\n this.collections[collection.slug] = {\n config: collection,\n customIDType,\n }\n })\n\n this.db = this.config.db.init({ payload: this })\n this.db.payload = this\n\n if (this.db?.init) {\n await this.db.init()\n }\n\n if (!options.disableDBConnect && this.db.connect) {\n await this.db.connect()\n }\n\n // Configure email service\n const emailOptions = options.email ? { ...options.email } : this.config.email\n if (options.email && this.config.email) {\n this.logger.warn(\n 'Email options provided in both init options and config. Using init options.',\n )\n }\n\n this.emailOptions = emailOptions ?? emailDefaults\n this.email = buildEmail(this.emailOptions, this.logger)\n this.sendEmail = sendEmail.bind(this)\n\n serverInitTelemetry(this)\n\n // 1. loop over collections, if collection has auth strategy, initialize and push to array\n let jwtStrategyEnabled = false\n this.authStrategies = this.config.collections.reduce((authStrategies, collection) => {\n if (collection?.auth) {\n if (collection.auth.strategies.length > 0) {\n authStrategies.push(...collection.auth.strategies)\n }\n\n // 2. if api key enabled, push api key strategy into the array\n if (collection.auth?.useAPIKey) {\n authStrategies.push({\n name: `${collection.slug}-api-key`,\n authenticate: APIKeyAuthentication(collection),\n })\n }\n\n // 3. if localStrategy flag is true\n if (!collection.auth.disableLocalStrategy && !jwtStrategyEnabled) {\n jwtStrategyEnabled = true\n }\n }\n\n return authStrategies\n }, [] as AuthStrategy[])\n\n // 4. if enabled, push jwt strategy into authStrategies last\n if (jwtStrategyEnabled) {\n this.authStrategies.push({\n name: 'local-jwt',\n authenticate: JWTAuthentication,\n })\n }\n\n if (!options.disableOnInit) {\n if (typeof options.onInit === 'function') await options.onInit(this)\n if (typeof this.config.onInit === 'function') await this.config.onInit(this)\n }\n\n return this\n }\n\n update<T extends keyof TGeneratedTypes['collections']>(\n options: UpdateManyOptions<T>,\n ): Promise<BulkOperationResult<T>>\n\n /**\n * @description Update one or more documents\n * @param options\n * @returns Updated document(s)\n */\n update<T extends keyof TGeneratedTypes['collections']>(\n options: UpdateByIDOptions<T>,\n ): Promise<TGeneratedTypes['collections'][T]>\n\n update<T extends keyof TGeneratedTypes['collections']>(\n options: UpdateOptions<T>,\n ): Promise<BulkOperationResult<T> | TGeneratedTypes['collections'][T]> {\n const { update } = localOperations\n return update<T>(this, options)\n }\n}\n\nconst initialized = new BasePayload()\n\nexport default initialized\n\nlet cached = global._payload\n\nif (!cached) {\n // eslint-disable-next-line no-multi-assign\n cached = global._payload = { payload: null, promise: null }\n}\n\nexport const getPayload = async (options: InitOptions): Promise<BasePayload<GeneratedTypes>> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayload to work.')\n }\n\n if (cached.payload) {\n return cached.payload\n }\n\n if (!cached.promise) {\n cached.promise = new BasePayload<GeneratedTypes>().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n\ntype GeneratedTypes = {\n collections: {\n [slug: number | string | symbol]: TypeWithID & Record<string, unknown>\n }\n globals: {\n [slug: number | string | symbol]: GlobalTypeWithID & Record<string, unknown>\n }\n user: TypeWithID & Record<string, unknown> & { collection: string }\n}\n\ntype Payload = BasePayload<GeneratedTypes>\n\ninterface RequestContext {\n [key: string]: unknown\n}\n\ntype DatabaseAdapter = BaseDatabaseAdapter\n\nexport type { DatabaseAdapter, GeneratedTypes, Payload, RequestContext }\n"],"names":["crypto","decrypt","encrypt","APIKeyAuthentication","JWTAuthentication","localOperations","validateSchema","buildEmail","defaults","emailDefaults","sendEmail","fieldAffectsData","localGlobalOperations","flattenFields","Logger","serverInit","serverInitTelemetry","BasePayload","auth","options","authStrategies","collections","config","create","db","duplicate","email","emailOptions","extensions","find","findByID","findGlobal","findOne","findGlobalVersionByID","findVersionByID","findGlobalVersions","findVersions","forgotPassword","getAPIURL","serverURL","routes","api","getAdminURL","admin","globals","logger","login","resetPassword","restoreGlobalVersion","restoreVersion","schema","secret","types","unlock","updateGlobal","update","validationRules","verifyEmail","versions","delete","deleteLocal","init","Error","loggerOptions","loggerDestination","process","env","NODE_ENV","createHash","digest","slice","forEach","collection","customID","fields","field","name","customIDType","type","slug","payload","disableDBConnect","connect","warn","bind","jwtStrategyEnabled","reduce","strategies","length","push","useAPIKey","authenticate","disableLocalStrategy","disableOnInit","onInit","initialized","cached","global","_payload","promise","getPayload","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ExecutionResult, GraphQLSchema, ValidationRule } from 'graphql'\nimport type { OperationArgs, Request as graphQLRequest } from 'graphql-http'\nimport type pino from 'pino'\n\nimport { spawn } from 'child_process'\nimport crypto from 'crypto'\nimport { fileURLToPath } from 'node:url'\nimport path from 'path'\n\nimport type { AuthArgs } from './auth/operations/auth.js'\nimport type { Result as ForgotPasswordResult } from './auth/operations/forgotPassword.js'\nimport type { Options as ForgotPasswordOptions } from './auth/operations/local/forgotPassword.js'\nimport type { Options as LoginOptions } from './auth/operations/local/login.js'\nimport type { Options as ResetPasswordOptions } from './auth/operations/local/resetPassword.js'\nimport type { Options as UnlockOptions } from './auth/operations/local/unlock.js'\nimport type { Options as VerifyEmailOptions } from './auth/operations/local/verifyEmail.js'\nimport type { Result as LoginResult } from './auth/operations/login.js'\nimport type { Result as ResetPasswordResult } from './auth/operations/resetPassword.js'\nimport type { AuthStrategy, User } from './auth/types.js'\nimport type {\n BulkOperationResult,\n Collection,\n DataFromCollectionSlug,\n TypeWithID,\n} from './collections/config/types.js'\nimport type { Options as CountOptions } from './collections/operations/local/count.js'\nimport type { Options as CreateOptions } from './collections/operations/local/create.js'\nimport type {\n ByIDOptions as DeleteByIDOptions,\n ManyOptions as DeleteManyOptions,\n Options as DeleteOptions,\n} from './collections/operations/local/delete.js'\nimport type { Options as DuplicateOptions } from './collections/operations/local/duplicate.js'\nimport type { Options as FindOptions } from './collections/operations/local/find.js'\nimport type { Options as FindByIDOptions } from './collections/operations/local/findByID.js'\nimport type { Options as FindVersionByIDOptions } from './collections/operations/local/findVersionByID.js'\nimport type { Options as FindVersionsOptions } from './collections/operations/local/findVersions.js'\nimport type { Options as RestoreVersionOptions } from './collections/operations/local/restoreVersion.js'\nimport type {\n ByIDOptions as UpdateByIDOptions,\n ManyOptions as UpdateManyOptions,\n Options as UpdateOptions,\n} from './collections/operations/local/update.js'\nimport type { InitOptions, SanitizedConfig } from './config/types.js'\nimport type { BaseDatabaseAdapter, PaginatedDocs } from './database/types.js'\nimport type { InitializedEmailAdapter } from './email/types.js'\nimport type { DataFromGlobalSlug, Globals } from './globals/config/types.js'\nimport type { Options as FindGlobalOptions } from './globals/operations/local/findOne.js'\nimport type { Options as FindGlobalVersionByIDOptions } from './globals/operations/local/findVersionByID.js'\nimport type { Options as FindGlobalVersionsOptions } from './globals/operations/local/findVersions.js'\nimport type { Options as RestoreGlobalVersionOptions } from './globals/operations/local/restoreVersion.js'\nimport type { Options as UpdateGlobalOptions } from './globals/operations/local/update.js'\nimport type { TypeWithVersion } from './versions/types.js'\n\nimport { decrypt, encrypt } from './auth/crypto.js'\nimport { APIKeyAuthentication } from './auth/strategies/apiKey.js'\nimport { JWTAuthentication } from './auth/strategies/jwt.js'\nimport localOperations from './collections/operations/local/index.js'\nimport { validateSchema } from './config/validate.js'\nimport { consoleEmailAdapter } from './email/consoleEmailAdapter.js'\nimport { fieldAffectsData } from './fields/config/types.js'\nimport localGlobalOperations from './globals/operations/local/index.js'\nimport { getDependencies } from './utilities/dependencies/getDependencies.js'\nimport flattenFields from './utilities/flattenTopLevelFields.js'\nimport Logger from './utilities/logger.js'\nimport { serverInit as serverInitTelemetry } from './utilities/telemetry/events/serverInit.js'\n\nexport interface GeneratedTypes {\n authUntyped: {\n [slug: string]: {\n forgotPassword: {\n email: string\n }\n login: {\n email: string\n password: string\n username?: string\n }\n registerFirstUser: {\n email: string\n password: string\n }\n }\n }\n collectionsUntyped: {\n [slug: string]: TypeWithID & Record<string, unknown>\n }\n globalsUntyped: {\n [slug: string]: Record<string, unknown>\n }\n localeUntyped: null | string\n userUntyped: User\n}\n\n// Helper type to resolve the correct type using conditional types\ntype ResolveCollectionType<T> = 'collections' extends keyof T\n ? T['collections']\n : // @ts-expect-error\n T['collectionsUntyped']\n// @ts-expect-error\ntype ResolveGlobalType<T> = 'globals' extends keyof T ? T['globals'] : T['globalsUntyped']\n\n// Applying helper types to GeneratedTypes\nexport type TypedCollection = ResolveCollectionType<GeneratedTypes>\nexport type TypedGlobal = ResolveGlobalType<GeneratedTypes>\n\n// Extract string keys from the type\ntype StringKeyOf<T> = Extract<keyof T, string>\n\n// Define the types for slugs using the appropriate collections and globals\nexport type CollectionSlug = StringKeyOf<TypedCollection>\nexport type GlobalSlug = StringKeyOf<TypedGlobal>\n\n// now for locale and user\n\n// @ts-expect-error\ntype ResolveLocaleType<T> = 'locale' extends keyof T ? T['locale'] : T['localeUntyped']\n// @ts-expect-error\ntype ResolveUserType<T> = 'user' extends keyof T ? T['user'] : T['userUntyped']\n\nexport type TypedLocale = ResolveLocaleType<GeneratedTypes>\nexport type TypedUser = ResolveUserType<GeneratedTypes>\n\n// @ts-expect-error\ntype ResolveAuthOperationsType<T> = 'auth' extends keyof T ? T['auth'] : T['authUntyped']\nexport type TypedAuthOperations = ResolveAuthOperationsType<GeneratedTypes>\n\nconst filename = fileURLToPath(import.meta.url)\nconst dirname = path.dirname(filename)\n\n/**\n * @description Payload\n */\nexport class BasePayload {\n /**\n * @description Authorization and Authentication using headers and cookies to run auth user strategies\n * @returns permissions: Permissions\n * @returns user: User\n */\n auth = async (options: AuthArgs) => {\n const { auth } = localOperations.auth\n return auth(this, options)\n }\n\n authStrategies: AuthStrategy[]\n\n collections: {\n [slug: number | string | symbol]: Collection\n } = {}\n\n config: SanitizedConfig\n\n /**\n * @description Performs count operation\n * @param options\n * @returns count of documents satisfying query\n */\n count = async <T extends CollectionSlug>(\n options: CountOptions<T>,\n ): Promise<{ totalDocs: number }> => {\n const { count } = localOperations\n return count(this, options)\n }\n\n /**\n * @description Performs create operation\n * @param options\n * @returns created document\n */\n create = async <TSlug extends CollectionSlug>(\n options: CreateOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>> => {\n const { create } = localOperations\n return create<TSlug>(this, options)\n }\n db: DatabaseAdapter\n\n decrypt = decrypt\n\n duplicate = async <TSlug extends CollectionSlug>(\n options: DuplicateOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>> => {\n const { duplicate } = localOperations\n return duplicate<TSlug>(this, options)\n }\n\n email: InitializedEmailAdapter\n\n // TODO: re-implement or remove?\n // errorHandler: ErrorHandler\n\n encrypt = encrypt\n\n extensions: (args: {\n args: OperationArgs<any>\n req: graphQLRequest<unknown, unknown>\n result: ExecutionResult\n }) => Promise<any>\n\n /**\n * @description Find documents with criteria\n * @param options\n * @returns documents satisfying query\n */\n find = async <TSlug extends CollectionSlug>(\n options: FindOptions<TSlug>,\n ): Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>> => {\n const { find } = localOperations\n return find<TSlug>(this, options)\n }\n\n /**\n * @description Find document by ID\n * @param options\n * @returns document with specified ID\n */\n findByID = async <TSlug extends CollectionSlug>(\n options: FindByIDOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>> => {\n const { findByID } = localOperations\n return findByID<TSlug>(this, options)\n }\n\n findGlobal = async <TSlug extends GlobalSlug>(\n options: FindGlobalOptions<TSlug>,\n ): Promise<DataFromGlobalSlug<TSlug>> => {\n const { findOne } = localGlobalOperations\n return findOne<TSlug>(this, options)\n }\n\n /**\n * @description Find global version by ID\n * @param options\n * @returns global version with specified ID\n */\n findGlobalVersionByID = async <TSlug extends GlobalSlug>(\n options: FindGlobalVersionByIDOptions<TSlug>,\n ): Promise<TypeWithVersion<DataFromGlobalSlug<TSlug>>> => {\n const { findVersionByID } = localGlobalOperations\n return findVersionByID<TSlug>(this, options)\n }\n\n /**\n * @description Find global versions with criteria\n * @param options\n * @returns versions satisfying query\n */\n findGlobalVersions = async <TSlug extends GlobalSlug>(\n options: FindGlobalVersionsOptions<TSlug>,\n ): Promise<PaginatedDocs<TypeWithVersion<DataFromGlobalSlug<TSlug>>>> => {\n const { findVersions } = localGlobalOperations\n return findVersions<TSlug>(this, options)\n }\n\n /**\n * @description Find version by ID\n * @param options\n * @returns version with specified ID\n */\n findVersionByID = async <TSlug extends CollectionSlug>(\n options: FindVersionByIDOptions<TSlug>,\n ): Promise<TypeWithVersion<DataFromCollectionSlug<TSlug>>> => {\n const { findVersionByID } = localOperations\n return findVersionByID<TSlug>(this, options)\n }\n\n /**\n * @description Find versions with criteria\n * @param options\n * @returns versions satisfying query\n */\n findVersions = async <TSlug extends CollectionSlug>(\n options: FindVersionsOptions<TSlug>,\n ): Promise<PaginatedDocs<TypeWithVersion<DataFromCollectionSlug<TSlug>>>> => {\n const { findVersions } = localOperations\n return findVersions<TSlug>(this, options)\n }\n\n forgotPassword = async <TSlug extends CollectionSlug>(\n options: ForgotPasswordOptions<TSlug>,\n ): Promise<ForgotPasswordResult> => {\n const { forgotPassword } = localOperations.auth\n return forgotPassword<TSlug>(this, options)\n }\n\n getAPIURL = (): string => `${this.config.serverURL}${this.config.routes.api}`\n\n getAdminURL = (): string => `${this.config.serverURL}${this.config.routes.admin}`\n\n globals: Globals\n\n logger: pino.Logger\n\n login = async <TSlug extends CollectionSlug>(\n options: LoginOptions<TSlug>,\n ): Promise<LoginResult & { user: DataFromCollectionSlug<TSlug> }> => {\n const { login } = localOperations.auth\n return login<TSlug>(this, options)\n }\n\n resetPassword = async <TSlug extends CollectionSlug>(\n options: ResetPasswordOptions<TSlug>,\n ): Promise<ResetPasswordResult> => {\n const { resetPassword } = localOperations.auth\n return resetPassword<TSlug>(this, options)\n }\n\n /**\n * @description Restore global version by ID\n * @param options\n * @returns version with specified ID\n */\n restoreGlobalVersion = async <TSlug extends GlobalSlug>(\n options: RestoreGlobalVersionOptions<TSlug>,\n ): Promise<DataFromGlobalSlug<TSlug>> => {\n const { restoreVersion } = localGlobalOperations\n return restoreVersion<TSlug>(this, options)\n }\n\n /**\n * @description Restore version by ID\n * @param options\n * @returns version with specified ID\n */\n restoreVersion = async <TSlug extends CollectionSlug>(\n options: RestoreVersionOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>> => {\n const { restoreVersion } = localOperations\n return restoreVersion<TSlug>(this, options)\n }\n\n schema: GraphQLSchema\n\n secret: string\n\n sendEmail: InitializedEmailAdapter['sendEmail']\n\n types: {\n arrayTypes: any\n blockInputTypes: any\n blockTypes: any\n fallbackLocaleInputType?: any\n groupTypes: any\n localeInputType?: any\n tabTypes: any\n }\n\n unlock = async <TSlug extends CollectionSlug>(\n options: UnlockOptions<TSlug>,\n ): Promise<boolean> => {\n const { unlock } = localOperations.auth\n return unlock(this, options)\n }\n\n updateGlobal = async <TSlug extends GlobalSlug>(\n options: UpdateGlobalOptions<TSlug>,\n ): Promise<DataFromGlobalSlug<TSlug>> => {\n const { update } = localGlobalOperations\n return update<TSlug>(this, options)\n }\n\n validationRules: (args: OperationArgs<any>) => ValidationRule[]\n\n verifyEmail = async <TSlug extends CollectionSlug>(\n options: VerifyEmailOptions<TSlug>,\n ): Promise<boolean> => {\n const { verifyEmail } = localOperations.auth\n return verifyEmail(this, options)\n }\n\n versions: {\n [slug: string]: any // TODO: Type this\n } = {}\n\n async bin({\n args,\n cwd,\n log,\n }: {\n args: string[]\n cwd?: string\n log?: boolean\n }): Promise<{ code: number }> {\n return new Promise((resolve, reject) => {\n const spawned = spawn('node', [path.resolve(dirname, '../bin.js'), ...args], {\n cwd,\n stdio: log || log === undefined ? 'inherit' : 'ignore',\n })\n\n spawned.on('exit', (code) => {\n resolve({ code })\n })\n\n spawned.on('error', (error) => {\n reject(error)\n })\n })\n }\n\n /**\n * @description delete one or more documents\n * @param options\n * @returns Updated document(s)\n */\n delete<TSlug extends CollectionSlug>(\n options: DeleteByIDOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>>\n\n delete<TSlug extends CollectionSlug>(\n options: DeleteManyOptions<TSlug>,\n ): Promise<BulkOperationResult<TSlug>>\n\n delete<TSlug extends CollectionSlug>(\n options: DeleteOptions<TSlug>,\n ): Promise<BulkOperationResult<TSlug> | DataFromCollectionSlug<TSlug>> {\n const { deleteLocal } = localOperations\n return deleteLocal<TSlug>(this, options)\n }\n\n /**\n * @description Initializes Payload\n * @param options\n */\n async init(options: InitOptions): Promise<Payload> {\n if (process.env.NODE_ENV !== 'production') {\n // First load. First check if there are mismatching dependency versions of payload packages\n const resolvedDependencies = await getDependencies(dirname, [\n '@payloadcms/ui/shared',\n 'payload',\n '@payloadcms/next/utilities',\n '@payloadcms/richtext-lexical',\n '@payloadcms/richtext-slate',\n '@payloadcms/graphql',\n '@payloadcms/plugin-cloud',\n '@payloadcms/db-mongodb',\n '@payloadcms/db-postgres',\n '@payloadcms/plugin-form-builder',\n '@payloadcms/plugin-nested-docs',\n '@payloadcms/plugin-seo',\n '@payloadcms/plugin-search',\n '@payloadcms/plugin-cloud-storage',\n '@payloadcms/plugin-stripe',\n '@payloadcms/plugin-zapier',\n '@payloadcms/plugin-redirects',\n '@payloadcms/plugin-sentry',\n '@payloadcms/bundler-webpack',\n '@payloadcms/bundler-vite',\n '@payloadcms/live-preview',\n '@payloadcms/live-preview-react',\n '@payloadcms/translations',\n '@payloadcms/email-nodemailer',\n '@payloadcms/email-resend',\n '@payloadcms/storage-azure',\n '@payloadcms/storage-s3',\n '@payloadcms/storage-gcs',\n '@payloadcms/storage-vercel-blob',\n '@payloadcms/storage-uploadthing',\n ])\n\n // Go through each resolved dependency. If any dependency has a mismatching version, throw an error\n const foundVersions: {\n [version: string]: string\n } = {}\n for (const [_pkg, { version }] of resolvedDependencies.resolved) {\n if (!Object.keys(foundVersions).includes(version)) {\n foundVersions[version] = _pkg\n }\n }\n if (Object.keys(foundVersions).length > 1) {\n const formattedVersionsWithPackageNameString = Object.entries(foundVersions)\n .map(([version, pkg]) => `${pkg}@${version}`)\n .join(', ')\n\n throw new Error(\n `Mismatching payload dependency versions found: ${formattedVersionsWithPackageNameString}. All payload and @payloadcms/* packages must have the same version. This is an error with your set-up, caused by you, not a bug in payload. Please go to your package.json and ensure all payload and @payloadcms/* packages have the same version.`,\n )\n }\n }\n\n if (!options?.config) {\n throw new Error('Error: the payload config is required to initialize payload.')\n }\n\n this.logger = Logger('payload', options.loggerOptions, options.loggerDestination)\n\n this.config = await options.config\n\n if (process.env.NODE_ENV !== 'production') {\n validateSchema(this.config, this.logger)\n }\n\n if (!this.config.secret) {\n throw new Error('Error: missing secret key. A secret key is needed to secure Payload.')\n }\n\n this.secret = crypto.createHash('sha256').update(this.config.secret).digest('hex').slice(0, 32)\n\n this.globals = {\n config: this.config.globals,\n }\n\n this.config.collections.forEach((collection) => {\n const customID = flattenFields(collection.fields).find(\n (field) => fieldAffectsData(field) && field.name === 'id',\n )\n\n let customIDType\n\n if (customID?.type === 'number' || customID?.type === 'text') customIDType = customID.type\n\n this.collections[collection.slug] = {\n config: collection,\n customIDType,\n }\n })\n\n // Generate types on startup\n if (process.env.NODE_ENV !== 'production' && this.config.typescript.autoGenerate !== false) {\n // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.\n // see: https://github.com/vercel/next.js/issues/66723\n void this.bin({\n args: ['generate:types'],\n log: false,\n })\n }\n\n this.db = this.config.db.init({ payload: this })\n this.db.payload = this\n\n if (this.db?.init) {\n await this.db.init()\n }\n\n if (!options.disableDBConnect && this.db.connect) {\n await this.db.connect()\n }\n\n // Load email adapter\n if (this.config.email instanceof Promise) {\n const awaitedAdapter = await this.config.email\n this.email = awaitedAdapter({ payload: this })\n } else if (this.config.email) {\n this.email = this.config.email({ payload: this })\n } else {\n this.logger.warn(\n `No email adapter provided. Email will be written to console. More info at https://payloadcms.com/docs/email/overview.`,\n )\n\n this.email = consoleEmailAdapter({ payload: this })\n }\n\n // Warn if image resizing is enabled but sharp is not installed\n if (\n !this.config.sharp &&\n this.config.collections.some((c) => c.upload.imageSizes || c.upload.formatOptions)\n ) {\n this.logger.warn(\n `Image resizing is enabled for one or more collections, but sharp not installed. Please install 'sharp' and pass into the config.`,\n )\n }\n\n this.sendEmail = this.email['sendEmail']\n\n serverInitTelemetry(this)\n\n // 1. loop over collections, if collection has auth strategy, initialize and push to array\n let jwtStrategyEnabled = false\n this.authStrategies = this.config.collections.reduce((authStrategies, collection) => {\n if (collection?.auth) {\n if (collection.auth.strategies.length > 0) {\n authStrategies.push(...collection.auth.strategies)\n }\n\n // 2. if api key enabled, push api key strategy into the array\n if (collection.auth?.useAPIKey) {\n authStrategies.push({\n name: `${collection.slug}-api-key`,\n authenticate: APIKeyAuthentication(collection),\n })\n }\n\n // 3. if localStrategy flag is true\n if (!collection.auth.disableLocalStrategy && !jwtStrategyEnabled) {\n jwtStrategyEnabled = true\n }\n }\n\n return authStrategies\n }, [] as AuthStrategy[])\n\n // 4. if enabled, push jwt strategy into authStrategies last\n if (jwtStrategyEnabled) {\n this.authStrategies.push({\n name: 'local-jwt',\n authenticate: JWTAuthentication,\n })\n }\n\n if (!options.disableOnInit) {\n if (typeof options.onInit === 'function') await options.onInit(this)\n if (typeof this.config.onInit === 'function') await this.config.onInit(this)\n }\n\n return this\n }\n\n update<TSlug extends CollectionSlug>(\n options: UpdateManyOptions<TSlug>,\n ): Promise<BulkOperationResult<TSlug>>\n\n /**\n * @description Update one or more documents\n * @param options\n * @returns Updated document(s)\n */\n update<TSlug extends CollectionSlug>(\n options: UpdateByIDOptions<TSlug>,\n ): Promise<DataFromCollectionSlug<TSlug>>\n\n update<TSlug extends CollectionSlug>(\n options: UpdateOptions<TSlug>,\n ): Promise<BulkOperationResult<TSlug> | DataFromCollectionSlug<TSlug>> {\n const { update } = localOperations\n return update<TSlug>(this, options)\n }\n}\n\nconst initialized = new BasePayload()\n\nexport default initialized\n\nlet cached = global._payload\n\nif (!cached) {\n // eslint-disable-next-line no-multi-assign\n cached = global._payload = { payload: null, promise: null }\n}\n\nexport const getPayload = async (options: InitOptions): Promise<BasePayload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayload to work.')\n }\n\n if (cached.payload) {\n return cached.payload\n }\n\n if (!cached.promise) {\n cached.promise = new BasePayload().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n\ntype Payload = BasePayload\n\ninterface RequestContext {\n [key: string]: unknown\n}\n\nexport interface DatabaseAdapter extends BaseDatabaseAdapter {}\n\nexport type { Payload, RequestContext }\n\nexport * from './types/index.js'\nexport type * from './admin/types.js'\nexport type * from './uploads/types.js'\n\nexport type { MeOperationResult } from './auth/operations/me.js'\n\nexport type { ClientCollectionConfig } from './collections/config/client.js'\n\nexport type {\n AfterChangeHook as CollectionAfterChangeHook,\n AfterDeleteHook as CollectionAfterDeleteHook,\n AfterErrorHook as CollectionAfterErrorHook,\n AfterForgotPasswordHook as CollectionAfterForgotPasswordHook,\n AfterLoginHook as CollectionAfterLoginHook,\n AfterLogoutHook,\n AfterMeHook,\n AfterOperationHook as CollectionAfterOperationHook,\n AfterReadHook as CollectionAfterReadHook,\n AfterRefreshHook,\n AuthCollection,\n AuthOperationsFromCollectionSlug,\n BeforeChangeHook as CollectionBeforeChangeHook,\n BeforeDeleteHook as CollectionBeforeDeleteHook,\n BeforeLoginHook as CollectionBeforeLoginHook,\n BeforeOperationHook as CollectionBeforeOperationHook,\n BeforeReadHook as CollectionBeforeReadHook,\n BeforeValidateHook as CollectionBeforeValidateHook,\n BulkOperationResult,\n Collection,\n CollectionAdminOptions,\n CollectionConfig,\n DataFromCollectionSlug,\n HookOperationType,\n MeHook as CollectionMeHook,\n RefreshHook as CollectionRefreshHook,\n RequiredDataFromCollection,\n RequiredDataFromCollectionSlug,\n SanitizedCollectionConfig,\n TypeWithID,\n TypeWithTimestamps,\n} from './collections/config/types.js'\n\nexport { createDataloaderCacheKey, getDataLoader } from './collections/dataloader.js'\n\nexport { buildConfig } from './config/build.js'\nexport type { ClientConfig } from './config/client.js'\nexport type {\n Access,\n AccessArgs,\n EditViewComponent,\n EntityDescription,\n EntityDescriptionComponent,\n EntityDescriptionFunction,\n SanitizedConfig,\n} from './config/types.js'\n\nexport type { EmailAdapter as PayloadEmailAdapter, SendEmailOptions } from './email/types.js'\n\nexport {\n APIError,\n AuthenticationError,\n DuplicateCollection,\n DuplicateFieldName,\n DuplicateGlobal,\n ErrorDeletingFile,\n FileRetrievalError,\n FileUploadError,\n Forbidden,\n InvalidConfiguration,\n InvalidFieldName,\n InvalidFieldRelationship,\n LockedAuth,\n MissingCollectionLabel,\n MissingEditorProp,\n MissingFieldInputOptions,\n MissingFieldType,\n MissingFile,\n NotFound,\n QueryError,\n ValidationError,\n} from './errors/index.js'\n\nexport type { ClientFieldConfig } from './fields/config/client.js'\n\nexport type {\n ArrayField,\n Block,\n BlockField,\n CheckboxField,\n ClientValidate,\n CodeField,\n CollapsibleField,\n Condition,\n DateField,\n EmailField,\n Field,\n FieldAccess,\n FieldAffectingData,\n FieldBase,\n FieldHook,\n FieldHookArgs,\n FieldPresentationalOnly,\n FieldWithMany,\n FieldWithMaxDepth,\n FieldWithPath,\n FieldWithSubFields,\n FilterOptions,\n FilterOptionsProps,\n GroupField,\n HookName,\n JSONField,\n Labels,\n NamedTab,\n NonPresentationalField,\n NumberField,\n Option,\n OptionObject,\n PointField,\n PolymorphicRelationshipField,\n RadioField,\n RelationshipField,\n RelationshipValue,\n RichTextField,\n RowAdmin,\n RowField,\n SelectField,\n SingleRelationshipField,\n Tab,\n TabAsField,\n TabsAdmin,\n TabsField,\n TextField,\n TextareaField,\n UIField,\n UnnamedTab,\n UploadField,\n Validate,\n ValidateOptions,\n ValueWithRelation,\n} from './fields/config/types.js'\nexport { traverseFields as afterChangeTraverseFields } from './fields/hooks/afterChange/traverseFields.js'\n\nexport { promise as afterReadPromise } from './fields/hooks/afterRead/promise.js'\nexport { traverseFields as afterReadTraverseFields } from './fields/hooks/afterRead/traverseFields.js'\nexport { traverseFields as beforeChangeTraverseFields } from './fields/hooks/beforeChange/traverseFields.js'\nexport { traverseFields as beforeValidateTraverseFields } from './fields/hooks/beforeValidate/traverseFields.js'\n\nexport type { ClientGlobalConfig } from './globals/config/client.js'\nexport type {\n AfterChangeHook as GlobalAfterChangeHook,\n AfterReadHook as GlobalAfterReadHook,\n BeforeChangeHook as GlobalBeforeChangeHook,\n BeforeReadHook as GlobalBeforeReadHook,\n BeforeValidateHook as GlobalBeforeValidateHook,\n DataFromGlobalSlug,\n GlobalAdminOptions,\n GlobalConfig,\n SanitizedGlobalConfig,\n} from './globals/config/types.js'\n\nexport type {\n CollapsedPreferences,\n DocumentPreferences,\n FieldsPreferences,\n InsideFieldsPreferences,\n PreferenceRequest,\n PreferenceUpdateRequest,\n TabsPreferences,\n} from './preferences/types.js'\nexport { getLocalI18n } from './translations/getLocalI18n.js'\n\nexport { combineMerge } from './utilities/combineMerge.js'\nexport {\n configToJSONSchema,\n entityToJSONSchema,\n fieldsToJSONSchema,\n withNullableJSONSchemaType,\n} from './utilities/configToJSONSchema.js'\n\nexport { createArrayFromCommaDelineated } from './utilities/createArrayFromCommaDelineated.js'\n\nexport { createLocalReq } from './utilities/createLocalReq.js'\nexport { deepCopyObject } from './utilities/deepCopyObject.js'\nexport { deepMerge } from './utilities/deepMerge.js'\n\nexport { default as flattenTopLevelFields } from './utilities/flattenTopLevelFields.js'\n\nexport { formatLabels, formatNames, toWords } from './utilities/formatLabels.js'\n\nexport { getCollectionIDFieldTypes } from './utilities/getCollectionIDFieldTypes.js'\nexport { getObjectDotNotation } from './utilities/getObjectDotNotation.js'\nexport { isEntityHidden } from './utilities/isEntityHidden.js'\nexport { isPlainObject } from './utilities/isPlainObject.js'\nexport { isValidID } from './utilities/isValidID.js'\nexport { default as isolateObjectProperty } from './utilities/isolateObjectProperty.js'\nexport { mapAsync } from './utilities/mapAsync.js'\n\nexport { mergeListSearchAndWhere } from './utilities/mergeListSearchAndWhere.js'\nexport { buildVersionCollectionFields } from './versions/buildCollectionFields.js'\nexport { buildVersionGlobalFields } from './versions/buildGlobalFields.js'\nexport { versionDefaults } from './versions/defaults.js'\nexport { deleteCollectionVersions } from './versions/deleteCollectionVersions.js'\nexport { enforceMaxVersions } from './versions/enforceMaxVersions.js'\nexport { getLatestCollectionVersion } from './versions/getLatestCollectionVersion.js'\nexport { getLatestGlobalVersion } from './versions/getLatestGlobalVersion.js'\n\nexport { saveVersion } from './versions/saveVersion.js'\nexport type { TypeWithVersion } from './versions/types.js'\nexport * from './config/types.js'\n\nexport type { FieldTypes } from './admin/forms/FieldTypes.js'\nexport type {\n AuthStrategyFunction,\n AuthStrategyFunctionArgs,\n CollectionPermission,\n DocumentPermissions,\n FieldPermissions,\n GlobalPermission,\n IncomingAuthType,\n Permission,\n Permissions,\n User,\n VerifyConfig,\n} from './auth/types.js'\nexport { createClientCollectionConfig } from './collections/config/client.js'\nexport { createClientConfig } from './config/client.js'\n\nexport { defaults } from './config/defaults.js'\nexport type {\n BaseDatabaseAdapter,\n BeginTransaction,\n CommitTransaction,\n Connect,\n Count,\n CountArgs,\n Create,\n CreateArgs,\n CreateGlobal,\n CreateGlobalArgs,\n CreateGlobalVersion,\n CreateGlobalVersionArgs,\n CreateMigration,\n CreateVersion,\n CreateVersionArgs,\n DBIdentifierName,\n DatabaseAdapterResult as DatabaseAdapterObj,\n DeleteMany,\n DeleteManyArgs,\n DeleteOne,\n DeleteOneArgs,\n DeleteVersions,\n DeleteVersionsArgs,\n Destroy,\n Find,\n FindArgs,\n FindGlobal,\n FindGlobalArgs,\n FindGlobalVersions,\n FindGlobalVersionsArgs,\n FindOne,\n FindOneArgs,\n FindVersions,\n FindVersionsArgs,\n Init,\n Migration,\n MigrationData,\n MigrationTemplateArgs,\n PaginatedDocs,\n QueryDrafts,\n QueryDraftsArgs,\n RollbackTransaction,\n Transaction,\n UpdateGlobal,\n UpdateGlobalArgs,\n UpdateGlobalVersion,\n UpdateGlobalVersionArgs,\n UpdateOne,\n UpdateOneArgs,\n UpdateVersion,\n UpdateVersionArgs,\n} from './database/types.js'\nexport { baseBlockFields } from './fields/baseFields/baseBlockFields.js'\nexport { baseIDField } from './fields/baseFields/baseIDField.js'\nexport { createClientFieldConfig } from './fields/config/client.js'\nexport { sanitizeFields } from './fields/config/sanitize.js'\n\nexport { createClientGlobalConfig } from './globals/config/client.js'\n\nexport type * from './database/queryValidation/types.js'\n\nexport { accessOperation } from './auth/operations/access.js'\nexport { forgotPasswordOperation } from './auth/operations/forgotPassword.js'\nexport { initOperation } from './auth/operations/init.js'\nexport { loginOperation } from './auth/operations/login.js'\n\nexport { logoutOperation } from './auth/operations/logout.js'\nexport { meOperation } from './auth/operations/me.js'\nexport { refreshOperation } from './auth/operations/refresh.js'\nexport { registerFirstUserOperation } from './auth/operations/registerFirstUser.js'\nexport { resetPasswordOperation } from './auth/operations/resetPassword.js'\nexport { unlockOperation } from './auth/operations/unlock.js'\nexport { verifyEmailOperation } from './auth/operations/verifyEmail.js'\nexport { countOperation } from './collections/operations/count.js'\nexport { createOperation } from './collections/operations/create.js'\nexport { deleteOperation } from './collections/operations/delete.js'\nexport { deleteByIDOperation } from './collections/operations/deleteByID.js'\nexport { docAccessOperation } from './collections/operations/docAccess.js'\n\nexport { duplicateOperation } from './collections/operations/duplicate.js'\nexport { findOperation } from './collections/operations/find.js'\nexport { findByIDOperation } from './collections/operations/findByID.js'\nexport { findVersionByIDOperation } from './collections/operations/findVersionByID.js'\nexport { findVersionsOperation } from './collections/operations/findVersions.js'\nexport { restoreVersionOperation } from './collections/operations/restoreVersion.js'\nexport { updateOperation } from './collections/operations/update.js'\nexport { updateByIDOperation } from './collections/operations/updateByID.js'\nexport { sanitizeConfig } from './config/sanitize.js'\nexport type { EntityPolicies, PathToQuery } from './database/queryValidation/types.js'\nexport { default as getDefaultValue } from './fields/getDefaultValue.js'\nexport { default as sortableFieldTypes } from './fields/sortableFieldTypes.js'\n\nexport { docAccessOperation as docAccessOperationGlobal } from './globals/operations/docAccess.js'\nexport { findOneOperation } from './globals/operations/findOne.js'\nexport { findVersionByIDOperation as findVersionByIDOperationGlobal } from './globals/operations/findVersionByID.js'\nexport { findVersionsOperation as findVersionsOperationGlobal } from './globals/operations/findVersions.js'\nexport { restoreVersionOperation as restoreVersionOperationGlobal } from './globals/operations/restoreVersion.js'\nexport { updateOperation as updateOperationGlobal } from './globals/operations/update.js'\n\nexport * from './auth/index.js'\nexport { default as executeAccess } from './auth/executeAccess.js'\nexport { executeAuthStrategies } from './auth/executeAuthStrategies.js'\nexport { getAccessResults } from './auth/getAccessResults.js'\nexport { getFieldsToSign } from './auth/getFieldsToSign.js'\nexport { combineQueries } from './database/combineQueries.js'\n\nexport { createDatabaseAdapter } from './database/createDatabaseAdapter.js'\n\nexport { default as flattenWhereToOperators } from './database/flattenWhereToOperators.js'\n\nexport { getLocalizedPaths } from './database/getLocalizedPaths.js'\n\nexport { createMigration } from './database/migrations/createMigration.js'\n\nexport { getMigrations } from './database/migrations/getMigrations.js'\n\nexport { getPredefinedMigration } from './database/migrations/getPredefinedMigration.js'\n\nexport { migrate } from './database/migrations/migrate.js'\n\nexport { migrateDown } from './database/migrations/migrateDown.js'\n\nexport { migrateRefresh } from './database/migrations/migrateRefresh.js'\n\nexport { migrateReset } from './database/migrations/migrateReset.js'\n\nexport { migrateStatus } from './database/migrations/migrateStatus.js'\n\nexport { migrationTemplate } from './database/migrations/migrationTemplate.js'\n\nexport { migrationsCollection } from './database/migrations/migrationsCollection.js'\n\nexport { readMigrationFiles } from './database/migrations/readMigrationFiles.js'\n\nexport { validateQueryPaths } from './database/queryValidation/validateQueryPaths.js'\n\nexport { validateSearchParam } from './database/queryValidation/validateSearchParams.js'\n\nexport { getFileByPath } from './uploads/getFileByPath.js'\n\nexport { commitTransaction } from './utilities/commitTransaction.js'\n\nexport { getDependencies }\n\nexport { initTransaction } from './utilities/initTransaction.js'\n\nexport { killTransaction } from './utilities/killTransaction.js'\n"],"names":["spawn","crypto","fileURLToPath","path","decrypt","encrypt","APIKeyAuthentication","JWTAuthentication","localOperations","validateSchema","consoleEmailAdapter","fieldAffectsData","localGlobalOperations","getDependencies","flattenFields","Logger","serverInit","serverInitTelemetry","filename","url","dirname","BasePayload","auth","options","authStrategies","collections","config","count","create","db","duplicate","email","extensions","find","findByID","findGlobal","findOne","findGlobalVersionByID","findVersionByID","findGlobalVersions","findVersions","forgotPassword","getAPIURL","serverURL","routes","api","getAdminURL","admin","globals","logger","login","resetPassword","restoreGlobalVersion","restoreVersion","schema","secret","sendEmail","types","unlock","updateGlobal","update","validationRules","verifyEmail","versions","bin","args","cwd","log","Promise","resolve","reject","spawned","stdio","undefined","on","code","error","delete","deleteLocal","init","process","env","NODE_ENV","resolvedDependencies","foundVersions","_pkg","version","resolved","Object","keys","includes","length","formattedVersionsWithPackageNameString","entries","map","pkg","join","Error","loggerOptions","loggerDestination","createHash","digest","slice","forEach","collection","customID","fields","field","name","customIDType","type","slug","typescript","autoGenerate","payload","disableDBConnect","connect","awaitedAdapter","warn","sharp","some","c","upload","imageSizes","formatOptions","jwtStrategyEnabled","reduce","strategies","push","useAPIKey","authenticate","disableLocalStrategy","disableOnInit","onInit","initialized","cached","global","_payload","promise","getPayload","e","createDataloaderCacheKey","getDataLoader","buildConfig","APIError","AuthenticationError","DuplicateCollection","DuplicateFieldName","DuplicateGlobal","ErrorDeletingFile","FileRetrievalError","FileUploadError","Forbidden","InvalidConfiguration","InvalidFieldName","InvalidFieldRelationship","LockedAuth","MissingCollectionLabel","MissingEditorProp","MissingFieldInputOptions","MissingFieldType","MissingFile","NotFound","QueryError","ValidationError","traverseFields","afterChangeTraverseFields","afterReadPromise","afterReadTraverseFields","beforeChangeTraverseFields","beforeValidateTraverseFields","getLocalI18n","combineMerge","configToJSONSchema","entityToJSONSchema","fieldsToJSONSchema","withNullableJSONSchemaType","createArrayFromCommaDelineated","createLocalReq","deepCopyObject","deepMerge","default","flattenTopLevelFields","formatLabels","formatNames","toWords","getCollectionIDFieldTypes","getObjectDotNotation","isEntityHidden","isPlainObject","isValidID","isolateObjectProperty","mapAsync","mergeListSearchAndWhere","buildVersionCollectionFields","buildVersionGlobalFields","versionDefaults","deleteCollectionVersions","enforceMaxVersions","getLatestCollectionVersion","getLatestGlobalVersion","saveVersion","createClientCollectionConfig","createClientConfig","defaults","baseBlockFields","baseIDField","createClientFieldConfig","sanitizeFields","createClientGlobalConfig","accessOperation","forgotPasswordOperation","initOperation","loginOperation","logoutOperation","meOperation","refreshOperation","registerFirstUserOperation","resetPasswordOperation","unlockOperation","verifyEmailOperation","countOperation","createOperation","deleteOperation","deleteByIDOperation","docAccessOperation","duplicateOperation","findOperation","findByIDOperation","findVersionByIDOperation","findVersionsOperation","restoreVersionOperation","updateOperation","updateByIDOperation","sanitizeConfig","getDefaultValue","sortableFieldTypes","docAccessOperationGlobal","findOneOperation","findVersionByIDOperationGlobal","findVersionsOperationGlobal","restoreVersionOperationGlobal","updateOperationGlobal","executeAccess","executeAuthStrategies","getAccessResults","getFieldsToSign","combineQueries","createDatabaseAdapter","flattenWhereToOperators","getLocalizedPaths","createMigration","getMigrations","getPredefinedMigration","migrate","migrateDown","migrateRefresh","migrateReset","migrateStatus","migrationTemplate","migrationsCollection","readMigrationFiles","validateQueryPaths","validateSearchParam","getFileByPath","commitTransaction","initTransaction","killTransaction"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/preferences/deleteUserPreferences.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../collections/config/types.js'\nimport type { Payload } from '../index.js'\nimport type { PayloadRequest } from '../types/index.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n /**\n * User IDs to delete\n */\n ids: (number | string)[]\n payload: Payload\n req: PayloadRequest\n}\nexport const deleteUserPreferences = async ({ collectionConfig, ids, payload, req }: Args) => {\n if (collectionConfig.auth) {\n await payload.db.deleteMany({\n collection: 'payload-preferences',\n req,\n where: {\n and: [\n {\n 'user.value': { in: ids },\n },\n {\n 'user.relationTo': { equals: collectionConfig.slug },\n },\n ],\n },\n })\n }\n await payload.db.deleteMany({\n collection: 'payload-preferences',\n req,\n where: {\n key: { in: ids.map((id) => `collection-${collectionConfig.slug}-${id}`) },\n },\n })\n}\n"],"names":["deleteUserPreferences","collectionConfig","ids","payload","req","auth","db","deleteMany","collection","where","and","in","equals","slug","key","map","id"],"
|
|
1
|
+
{"version":3,"sources":["../../src/preferences/deleteUserPreferences.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../collections/config/types.js'\nimport type { Payload } from '../index.js'\nimport type { PayloadRequest } from '../types/index.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n /**\n * User IDs to delete\n */\n ids: (number | string)[]\n payload: Payload\n req: PayloadRequest\n}\nexport const deleteUserPreferences = async ({ collectionConfig, ids, payload, req }: Args) => {\n if (collectionConfig.auth) {\n await payload.db.deleteMany({\n collection: 'payload-preferences',\n req,\n where: {\n and: [\n {\n 'user.value': { in: ids },\n },\n {\n 'user.relationTo': { equals: collectionConfig.slug },\n },\n ],\n },\n })\n }\n await payload.db.deleteMany({\n collection: 'payload-preferences',\n req,\n where: {\n key: { in: ids.map((id) => `collection-${collectionConfig.slug}-${id}`) },\n },\n })\n}\n"],"names":["deleteUserPreferences","collectionConfig","ids","payload","req","auth","db","deleteMany","collection","where","and","in","equals","slug","key","map","id"],"mappings":"AAaA,OAAO,MAAMA,wBAAwB,OAAO,EAAEC,gBAAgB,EAAEC,GAAG,EAAEC,OAAO,EAAEC,GAAG,EAAQ;IACvF,IAAIH,iBAAiBI,IAAI,EAAE;QACzB,MAAMF,QAAQG,EAAE,CAACC,UAAU,CAAC;YAC1BC,YAAY;YACZJ;YACAK,OAAO;gBACLC,KAAK;oBACH;wBACE,cAAc;4BAAEC,IAAIT;wBAAI;oBAC1B;oBACA;wBACE,mBAAmB;4BAAEU,QAAQX,iBAAiBY,IAAI;wBAAC;oBACrD;iBACD;YACH;QACF;IACF;IACA,MAAMV,QAAQG,EAAE,CAACC,UAAU,CAAC;QAC1BC,YAAY;QACZJ;QACAK,OAAO;YACLK,KAAK;gBAAEH,IAAIT,IAAIa,GAAG,CAAC,CAACC,KAAO,CAAC,WAAW,EAAEf,iBAAiBY,IAAI,CAAC,CAAC,EAAEG,GAAG,CAAC;YAAE;QAC1E;IACF;AACF,EAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import defaultAccess from '../../auth/defaultAccess.js';
|
|
2
2
|
import executeAccess from '../../auth/executeAccess.js';
|
|
3
|
-
import NotFound from '../../errors/NotFound.js';
|
|
4
|
-
import UnauthorizedError from '../../errors/UnathorizedError.js';
|
|
3
|
+
import { NotFound } from '../../errors/NotFound.js';
|
|
4
|
+
import { UnauthorizedError } from '../../errors/UnathorizedError.js';
|
|
5
5
|
async function deleteOperation(args) {
|
|
6
6
|
const { key, overrideAccess, req: { payload }, req, user } = args;
|
|
7
7
|
if (!user) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/preferences/operations/delete.ts"],"sourcesContent":["import type { Document, Where } from '../../types/index.js'\nimport type { PreferenceRequest } from '../types.js'\n\nimport defaultAccess from '../../auth/defaultAccess.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport NotFound from '../../errors/NotFound.js'\nimport UnauthorizedError from '../../errors/UnathorizedError.js'\n\nasync function deleteOperation(args: PreferenceRequest): Promise<Document> {\n const {\n key,\n overrideAccess,\n req: { payload },\n req,\n user,\n } = args\n\n if (!user) {\n throw new UnauthorizedError(req.t)\n }\n\n if (!overrideAccess) {\n await executeAccess({ req }, defaultAccess)\n }\n\n const where: Where = {\n and: [\n { key: { equals: key } },\n { 'user.value': { equals: user.id } },\n { 'user.relationTo': { equals: user.collection } },\n ],\n }\n\n const result = await payload.db.deleteOne({\n collection: 'payload-preferences',\n req,\n where,\n })\n\n if (result) {\n return result\n }\n throw new NotFound(req.t)\n}\n\nexport default deleteOperation\n"],"names":["defaultAccess","executeAccess","NotFound","UnauthorizedError","deleteOperation","args","key","overrideAccess","req","payload","user","t","where","and","equals","id","collection","result","db","deleteOne"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/preferences/operations/delete.ts"],"sourcesContent":["import type { Document, Where } from '../../types/index.js'\nimport type { PreferenceRequest } from '../types.js'\n\nimport defaultAccess from '../../auth/defaultAccess.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { NotFound } from '../../errors/NotFound.js'\nimport { UnauthorizedError } from '../../errors/UnathorizedError.js'\n\nasync function deleteOperation(args: PreferenceRequest): Promise<Document> {\n const {\n key,\n overrideAccess,\n req: { payload },\n req,\n user,\n } = args\n\n if (!user) {\n throw new UnauthorizedError(req.t)\n }\n\n if (!overrideAccess) {\n await executeAccess({ req }, defaultAccess)\n }\n\n const where: Where = {\n and: [\n { key: { equals: key } },\n { 'user.value': { equals: user.id } },\n { 'user.relationTo': { equals: user.collection } },\n ],\n }\n\n const result = await payload.db.deleteOne({\n collection: 'payload-preferences',\n req,\n where,\n })\n\n if (result) {\n return result\n }\n throw new NotFound(req.t)\n}\n\nexport default deleteOperation\n"],"names":["defaultAccess","executeAccess","NotFound","UnauthorizedError","deleteOperation","args","key","overrideAccess","req","payload","user","t","where","and","equals","id","collection","result","db","deleteOne"],"mappings":"AAGA,OAAOA,mBAAmB,8BAA6B;AACvD,OAAOC,mBAAmB,8BAA6B;AACvD,SAASC,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,iBAAiB,QAAQ,mCAAkC;AAEpE,eAAeC,gBAAgBC,IAAuB;IACpD,MAAM,EACJC,GAAG,EACHC,cAAc,EACdC,KAAK,EAAEC,OAAO,EAAE,EAChBD,GAAG,EACHE,IAAI,EACL,GAAGL;IAEJ,IAAI,CAACK,MAAM;QACT,MAAM,IAAIP,kBAAkBK,IAAIG,CAAC;IACnC;IAEA,IAAI,CAACJ,gBAAgB;QACnB,MAAMN,cAAc;YAAEO;QAAI,GAAGR;IAC/B;IAEA,MAAMY,QAAe;QACnBC,KAAK;YACH;gBAAEP,KAAK;oBAAEQ,QAAQR;gBAAI;YAAE;YACvB;gBAAE,cAAc;oBAAEQ,QAAQJ,KAAKK,EAAE;gBAAC;YAAE;YACpC;gBAAE,mBAAmB;oBAAED,QAAQJ,KAAKM,UAAU;gBAAC;YAAE;SAClD;IACH;IAEA,MAAMC,SAAS,MAAMR,QAAQS,EAAE,CAACC,SAAS,CAAC;QACxCH,YAAY;QACZR;QACAI;IACF;IAEA,IAAIK,QAAQ;QACV,OAAOA;IACT;IACA,MAAM,IAAIf,SAASM,IAAIG,CAAC;AAC1B;AAEA,eAAeP,gBAAe"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TypedCollection } from '../../index.js';
|
|
2
2
|
import type { PreferenceRequest } from '../types.js';
|
|
3
|
-
declare function findOne(args: PreferenceRequest): Promise<
|
|
3
|
+
declare function findOne(args: PreferenceRequest): Promise<TypedCollection['_preference']>;
|
|
4
4
|
export default findOne;
|
|
5
5
|
//# sourceMappingURL=findOne.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findOne.d.ts","sourceRoot":"","sources":["../../../src/preferences/operations/findOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"findOne.d.ts","sourceRoot":"","sources":["../../../src/preferences/operations/findOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAEpD,iBAAe,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAuBvF;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/preferences/operations/findOne.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../../../src/preferences/operations/findOne.ts"],"sourcesContent":["import type { TypedCollection } from '../../index.js'\nimport type { Where } from '../../types/index.js'\nimport type { PreferenceRequest } from '../types.js'\n\nasync function findOne(args: PreferenceRequest): Promise<TypedCollection['_preference']> {\n const {\n key,\n req: { payload },\n req,\n user,\n } = args\n\n if (!user) return null\n\n const where: Where = {\n and: [\n { key: { equals: key } },\n { 'user.value': { equals: user.id } },\n { 'user.relationTo': { equals: user.collection } },\n ],\n }\n\n return await payload.db.findOne({\n collection: 'payload-preferences',\n req,\n where,\n })\n}\n\nexport default findOne\n"],"names":["findOne","args","key","req","payload","user","where","and","equals","id","collection","db"],"mappings":"AAIA,eAAeA,QAAQC,IAAuB;IAC5C,MAAM,EACJC,GAAG,EACHC,KAAK,EAAEC,OAAO,EAAE,EAChBD,GAAG,EACHE,IAAI,EACL,GAAGJ;IAEJ,IAAI,CAACI,MAAM,OAAO;IAElB,MAAMC,QAAe;QACnBC,KAAK;YACH;gBAAEL,KAAK;oBAAEM,QAAQN;gBAAI;YAAE;YACvB;gBAAE,cAAc;oBAAEM,QAAQH,KAAKI,EAAE;gBAAC;YAAE;YACpC;gBAAE,mBAAmB;oBAAED,QAAQH,KAAKK,UAAU;gBAAC;YAAE;SAClD;IACH;IAEA,OAAO,MAAMN,QAAQO,EAAE,CAACX,OAAO,CAAC;QAC9BU,YAAY;QACZP;QACAG;IACF;AACF;AAEA,eAAeN,QAAO"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import defaultAccess from '../../auth/defaultAccess.js';
|
|
2
2
|
import executeAccess from '../../auth/executeAccess.js';
|
|
3
|
-
import UnauthorizedError from '../../errors/UnathorizedError.js';
|
|
3
|
+
import { UnauthorizedError } from '../../errors/UnathorizedError.js';
|
|
4
4
|
async function update(args) {
|
|
5
5
|
const { key, overrideAccess, req: { payload }, req, user, value } = args;
|
|
6
6
|
if (!user) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/preferences/operations/update.ts"],"sourcesContent":["import type { PreferenceUpdateRequest } from '../types.js'\n\nimport defaultAccess from '../../auth/defaultAccess.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport UnauthorizedError from '../../errors/UnathorizedError.js'\n\nasync function update(args: PreferenceUpdateRequest) {\n const {\n key,\n overrideAccess,\n req: { payload },\n req,\n user,\n value,\n } = args\n\n if (!user) {\n throw new UnauthorizedError(req.t)\n }\n\n const collection = 'payload-preferences'\n\n const filter = {\n key: { equals: key },\n 'user.relationTo': { equals: user.collection },\n 'user.value': { equals: user.id },\n }\n\n const preference = {\n key,\n user: {\n relationTo: user.collection,\n value: user.id,\n },\n value,\n }\n\n if (!overrideAccess) {\n await executeAccess({ req }, defaultAccess)\n }\n\n try {\n // try/catch because we attempt to update without first reading to check if it exists first to save on db calls\n await payload.db.updateOne({\n collection,\n data: preference,\n req,\n where: filter,\n })\n } catch (err: unknown) {\n await payload.db.create({\n collection,\n data: preference,\n req,\n })\n }\n\n return preference\n}\n\nexport default update\n"],"names":["defaultAccess","executeAccess","UnauthorizedError","update","args","key","overrideAccess","req","payload","user","value","t","collection","filter","equals","id","preference","relationTo","db","updateOne","data","where","err","create"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/preferences/operations/update.ts"],"sourcesContent":["import type { PreferenceUpdateRequest } from '../types.js'\n\nimport defaultAccess from '../../auth/defaultAccess.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { UnauthorizedError } from '../../errors/UnathorizedError.js'\n\nasync function update(args: PreferenceUpdateRequest) {\n const {\n key,\n overrideAccess,\n req: { payload },\n req,\n user,\n value,\n } = args\n\n if (!user) {\n throw new UnauthorizedError(req.t)\n }\n\n const collection = 'payload-preferences'\n\n const filter = {\n key: { equals: key },\n 'user.relationTo': { equals: user.collection },\n 'user.value': { equals: user.id },\n }\n\n const preference = {\n key,\n user: {\n relationTo: user.collection,\n value: user.id,\n },\n value,\n }\n\n if (!overrideAccess) {\n await executeAccess({ req }, defaultAccess)\n }\n\n try {\n // try/catch because we attempt to update without first reading to check if it exists first to save on db calls\n await payload.db.updateOne({\n collection,\n data: preference,\n req,\n where: filter,\n })\n } catch (err: unknown) {\n await payload.db.create({\n collection,\n data: preference,\n req,\n })\n }\n\n return preference\n}\n\nexport default update\n"],"names":["defaultAccess","executeAccess","UnauthorizedError","update","args","key","overrideAccess","req","payload","user","value","t","collection","filter","equals","id","preference","relationTo","db","updateOne","data","where","err","create"],"mappings":"AAEA,OAAOA,mBAAmB,8BAA6B;AACvD,OAAOC,mBAAmB,8BAA6B;AACvD,SAASC,iBAAiB,QAAQ,mCAAkC;AAEpE,eAAeC,OAAOC,IAA6B;IACjD,MAAM,EACJC,GAAG,EACHC,cAAc,EACdC,KAAK,EAAEC,OAAO,EAAE,EAChBD,GAAG,EACHE,IAAI,EACJC,KAAK,EACN,GAAGN;IAEJ,IAAI,CAACK,MAAM;QACT,MAAM,IAAIP,kBAAkBK,IAAII,CAAC;IACnC;IAEA,MAAMC,aAAa;IAEnB,MAAMC,SAAS;QACbR,KAAK;YAAES,QAAQT;QAAI;QACnB,mBAAmB;YAAES,QAAQL,KAAKG,UAAU;QAAC;QAC7C,cAAc;YAAEE,QAAQL,KAAKM,EAAE;QAAC;IAClC;IAEA,MAAMC,aAAa;QACjBX;QACAI,MAAM;YACJQ,YAAYR,KAAKG,UAAU;YAC3BF,OAAOD,KAAKM,EAAE;QAChB;QACAL;IACF;IAEA,IAAI,CAACJ,gBAAgB;QACnB,MAAML,cAAc;YAAEM;QAAI,GAAGP;IAC/B;IAEA,IAAI;QACF,+GAA+G;QAC/G,MAAMQ,QAAQU,EAAE,CAACC,SAAS,CAAC;YACzBP;YACAQ,MAAMJ;YACNT;YACAc,OAAOR;QACT;IACF,EAAE,OAAOS,KAAc;QACrB,MAAMd,QAAQU,EAAE,CAACK,MAAM,CAAC;YACtBX;YACAQ,MAAMJ;YACNT;QACF;IACF;IAEA,OAAOS;AACT;AAEA,eAAeb,OAAM"}
|