kopi-id
Version:
Simple OIDC Library
49 lines (37 loc) • 1.32 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _constants = _interopRequireDefault(require("../constants"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var hasResponseType = function hasResponseType(responseTypes, target) {
for (var i = 0; i < responseTypes.length; i += 1) {
if (responseTypes[i] === target) {
return true;
}
}
return false;
};
var getFlowType = function getFlowType(responseTypes) {
var hasCode = hasResponseType(responseTypes, _constants["default"].authenticationRequest.responseTypes.CODE);
var hasIdToken = hasResponseType(responseTypes, _constants["default"].authenticationRequest.responseTypes.ID_TOKEN);
var hasToken = hasResponseType(responseTypes, _constants["default"].authenticationRequest.responseTypes.TOKEN);
if (hasCode && (hasIdToken || hasToken)) {
return _constants["default"].flowType.HYBRID;
}
if (hasCode) {
return _constants["default"].flowType.AUTHORIZATION_CODE;
}
if (hasIdToken) {
return _constants["default"].flowType.IMPLICIT;
}
if (hasToken) {
return _constants["default"].flowType.HYBRID;
}
return null;
};
var _default = {
getFlowType: getFlowType
};
exports["default"] = _default;