({
emailAdapter,
appName,
publicServerURL,
emailVerifyTokenValidityDuration,
emailVerifyTokenReuseIfValid,
emailVerifySuccessOnInvalidEmail,
})
| 520 | } |
| 521 | |
| 522 | static validateEmailConfiguration({ |
| 523 | emailAdapter, |
| 524 | appName, |
| 525 | publicServerURL, |
| 526 | emailVerifyTokenValidityDuration, |
| 527 | emailVerifyTokenReuseIfValid, |
| 528 | emailVerifySuccessOnInvalidEmail, |
| 529 | }) { |
| 530 | if (!emailAdapter) { |
| 531 | throw 'An emailAdapter is required for e-mail verification and password resets.'; |
| 532 | } |
| 533 | if (typeof appName !== 'string') { |
| 534 | throw 'An app name is required for e-mail verification and password resets.'; |
| 535 | } |
| 536 | this.validatePublicServerURL({ publicServerURL, required: true }); |
| 537 | if (emailVerifyTokenValidityDuration) { |
| 538 | if (isNaN(emailVerifyTokenValidityDuration)) { |
| 539 | throw 'Email verify token validity duration must be a valid number.'; |
| 540 | } else if (emailVerifyTokenValidityDuration <= 0) { |
| 541 | throw 'Email verify token validity duration must be a value greater than 0.'; |
| 542 | } |
| 543 | } |
| 544 | if (emailVerifyTokenReuseIfValid && typeof emailVerifyTokenReuseIfValid !== 'boolean') { |
| 545 | throw 'emailVerifyTokenReuseIfValid must be a boolean value'; |
| 546 | } |
| 547 | if (emailVerifyTokenReuseIfValid && !emailVerifyTokenValidityDuration) { |
| 548 | throw 'You cannot use emailVerifyTokenReuseIfValid without emailVerifyTokenValidityDuration'; |
| 549 | } |
| 550 | if (emailVerifySuccessOnInvalidEmail !== undefined && typeof emailVerifySuccessOnInvalidEmail !== 'boolean') { |
| 551 | throw 'emailVerifySuccessOnInvalidEmail must be a boolean value'; |
| 552 | } |
| 553 | } |
| 554 | |
| 555 | static validateFileUploadOptions(fileUpload) { |
| 556 | try { |
no test coverage detected