Skip to content

Commit 5481231

Browse files
author
Alain Bourgeois
committed
fix(dev): use authn compatibility login flow
Route dev loader authentication through authn.checkUser instead of direct session redirect handling.\nUse compatibility-safe session state checks for banner rendering and login flow.
1 parent ad135e7 commit 5481231

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

dev/loader.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -129,22 +129,22 @@ window.onload = async () => {
129129
console.log('document ready')
130130
// registerPanes((cjsOrEsModule: any) => paneRegistry.register(cjsOrEsModule.default || cjsOrEsModule))
131131
paneRegistry.register(require('contacts-pane'))
132-
await authSession.handleIncomingRedirect({
133-
restorePreviousSession: true
134-
})
135-
const session = await authSession
136-
if (!session.info.isLoggedIn) {
132+
await solidLogicSingleton.authn.checkUser()
133+
const session = authSession
134+
const isLoggedIn = session?.info?.isLoggedIn ?? session?.isActive ?? Boolean(session?.webId)
135+
if (!isLoggedIn) {
137136
console.log('The user is not logged in')
138137
const loginBanner = document.getElementById('loginBanner');
139138
if (loginBanner) {
140139
loginBanner.innerHTML = '<button onclick="login()">Log in</button>';
141140
}
142141
} else {
143-
console.log(`Logged in as ${session.info.webId}`)
142+
const loggedWebId = session?.info?.webId || session?.webId
143+
console.log(`Logged in as ${loggedWebId}`)
144144

145145
const loginBanner = document.getElementById('loginBanner');
146146
if (loginBanner) {
147-
loginBanner.innerHTML = `Logged in as ${session.info.webId} <button onclick="logout()">Log out</button>`;
147+
loginBanner.innerHTML = `Logged in as ${loggedWebId} <button onclick="logout()">Log out</button>`;
148148
}
149149
}
150150
addLayoutButtons()
@@ -155,8 +155,9 @@ window.logout = () => {
155155
window.location.href = ''
156156
}
157157
window.login = async function () {
158-
const session = await authSession
159-
if (!session.info.isLoggedIn) {
158+
const session = authSession
159+
const isLoggedIn = session?.info?.isLoggedIn ?? session?.isActive ?? Boolean(session?.webId)
160+
if (!isLoggedIn) {
160161
const issuer = prompt('Please enter an issuer URI', 'https://solidcommunity.net')
161162
if (issuer) {
162163
await authSession.login({

0 commit comments

Comments
 (0)