innlogging-client
A JavaScript library for handling user authentication, consent checks, and single sign-on (SSO) on the web for NRK services.
Installation
npm install @nrk/innlogging-client
Usage
import {
createLoginUrl,
createLogoutUrl,
createProfileUrl,
createRequirementsFixUrl,
getAccessToken,
session,
userMeetsRequirements,
} from '@nrk/innlogging-client/web';
window.location.href = createLoginUrl();
window.location.href = createProfileUrl();
window.location.href = createLogoutUrl();
const requirements = ['forum'];
const { status } = await userMeetsRequirements(requirements);
if (status === 'loggedOut') {
window.location.href = createLoginUrl({ requirements });
} else if (status === 'missingConsent') {
window.location.href = createRequirementsFixUrl({ requirements });
}
try {
const token = await getAccessToken(5);
console.log(token);
} catch {
}
session.subscribe((s) => console.log(s));