@zestic/oauth-core
Version:
Framework-agnostic OAuth authentication library with support for multiple OAuth flows
45 lines • 1.47 kB
JavaScript
;
/**
* Magic Link Login Flow Handler
* Handles magic link authentication for user login
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.MagicLinkLoginFlowHandler = void 0;
exports.createMagicLinkLoginFlowHandler = createMagicLinkLoginFlowHandler;
const BaseMagicLinkFlowHandler_1 = require("./BaseMagicLinkFlowHandler");
class MagicLinkLoginFlowHandler extends BaseMagicLinkFlowHandler_1.BaseMagicLinkFlowHandler {
constructor() {
super(...arguments);
this.name = 'magic_link_login';
}
/**
* Check if this handler can process the given parameters
*/
canHandle(params, config) {
// Check if flow is disabled
if (this.isFlowDisabled(config)) {
return false;
}
// Must have magic link token parameters
if (!this.hasRequiredMagicLinkParams(params)) {
return false;
}
// Must have flow=login parameter
const flow = params.get('flow');
return flow === 'login';
}
/**
* Validate the login flow parameters
*/
async validate(params, config) {
return this.canHandle(params, config);
}
}
exports.MagicLinkLoginFlowHandler = MagicLinkLoginFlowHandler;
/**
* Factory function to create magic link login flow handler
*/
function createMagicLinkLoginFlowHandler() {
return new MagicLinkLoginFlowHandler();
}
//# sourceMappingURL=MagicLinkLoginFlowHandler.js.map