UNPKG

@kilterset/auth0-actions-testing

Version:

Test and develop Auth0 Actions or Okta CIC Actions locally.

50 lines 1.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.authenticationMethod = exports.authentication = void 0; const assert_1 = require("assert"); const chance_1 = require("./chance"); const define_1 = require("./define"); const risk_assessment_1 = require("./risk-assessment"); exports.authentication = (0, define_1.define)(({ params, transientParams }) => { let methods = params.methods; if (!Array.isArray(methods)) { const numMethods = typeof transientParams.numMethods === "number" ? transientParams.numMethods : chance_1.chance.integer({ min: 1, max: 2 }); methods = Array.from({ length: numMethods }, () => (0, exports.authenticationMethod)()); } else if (typeof transientParams.numMethods === "number") { (0, assert_1.fail)("Please specify only one of `methods` and `numMethods`"); } return { methods, riskAssessment: (0, risk_assessment_1.riskAssessment)(), }; }); exports.authenticationMethod = (0, define_1.define)(({ params }) => { const name = params.name || chance_1.chance.pickone([ "federated", "pwd", "passkey", "sms", "email", "phone_number", "mfa", ]); const extra = name === "mfa" ? { type: chance_1.chance.pickone([ "email", "otp", "push-notification", "recovery-code", "phone", "webauthn-roaming", "webauthn-platform", ]), } : undefined; return Object.assign({ name, timestamp: chance_1.chance.date().toISOString() }, extra); }); //# sourceMappingURL=authentication.js.map