overleaf/services/web/frontend/js/features/settings/utils/sso.ts
Miguel Serrano 082a333773 Merge pull request #8119 from overleaf/msm-refactor-settings
[Settings] Type refactoring

GitOrigin-RevId: c2b5e76bda463508aa3a1d7ee22fd7839ec26075
2022-05-27 08:03:23 +00:00

35 lines
1 KiB
TypeScript

import getMeta from '../../../utils/meta'
import { DomainInfo } from '../components/emails/add-email/input'
import { ExposedSettings } from '../../../../../types/exposed-settings'
import { Institution } from '../../../../../types/institution'
export const ssoAvailableForDomain = (domain: DomainInfo | null) => {
const { hasSamlBeta, hasSamlFeature } = getMeta(
'ol-ExposedSettings'
) as ExposedSettings
if (!hasSamlFeature || !domain || !domain.confirmed || !domain.university) {
return false
}
if (domain.university.ssoEnabled) {
return true
}
return hasSamlBeta && domain.university.ssoBeta
}
export const ssoAvailableForInstitution = (institution: Institution | null) => {
const { hasSamlBeta, hasSamlFeature } = getMeta(
'ol-ExposedSettings'
) as ExposedSettings
if (
!hasSamlFeature ||
!institution ||
!institution.confirmed ||
!institution.isUniversity
) {
return false
}
if (institution.ssoEnabled) {
return true
}
return hasSamlBeta && institution.ssoBeta
}