'View Full Page' Inspect Tool Gets Stuck In Login Loop
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 72/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- javascript
- Ambito
- authentication, frontend
Direzione di ricerca
Inizia da magnifier-tool/index.js e segui il suo ciclo di vita e le chiamate di autenticazione. Conferma che lo strumento View Full Page non entri più nel ciclo di accesso e rimanga incorporabile senza il contesto del progetto. Se affronti la pulizia opzionale, esamina components/simple-transcription/index.js:1146-1155 e Page-Viewer message-handler.js:55-57, quindi verifica che i token non disponibili vengano segnalati senza attivare l’accesso e che il codice morto fuorviante venga rimosso o documentato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
It gets stuck in a login loop when clicked. This issue is actually in the interfaces component.
Suggested Fix
In magnifier-tool/index.js: drop the attachAuthentication / onProjectReady / CheckPermissions calls. The magnifier needs no project context and no auth — it operates purely on the imageElem it's handed.
New lifecycle:
connectedCallback() {
this.render()
this.addEventListeners()
}
disconnectedCallback() {
this.renderCleanup.run()
this.cleanup.run()
}
This kills the loop at the source and also makes MagnifierTool safely embeddable in any context (the workspace toolbar, Page-Viewer, future tools).
Additional Optional Fixes
components/simple-transcription/index.js:1146-1155 — don't call TPEN.login() from a postMessage handler.
#sendIdTokenToTool(targetWindow = ...) {
const idToken = TPEN.getAuthorization()
if (!idToken) {
TPEN.login() // <-- this nukes the parent window
return
}
...
}
Replace with a postMessage reply telling the tool no token is available, and let the tool decide what to do. Otherwise any future tool iframe that sends REQUEST_TPEN_ID_TOKEN while the parent's token is expired will trigger the same kind of redirect loop.
#sendIdTokenToTool(targetWindow = ...) {
const idToken = TPEN.getAuthorization()
if (!idToken) {
this.#postToTool({ type: 'TPEN_ID_TOKEN_UNAVAILABLE' }, targetWindow)
return
}
...
}
https://github.com/CenterForDigitalHumanities/Page-Viewer Minor Cleanup
message-handler.js:55-57 — Page-Viewer is set up to receive REQUEST_TPEN_ID_TOKEN (a parent→tool message it would never get) rather than send it. The case is harmless but misleading. Either delete the case entirely, or replace it with a comment that Page-Viewer never sends or receives that message.
Not a bug — just dead code that sent me down the wrong trail earlier.
- Lingua principale
- JavaScript
- Stelle
- 2
- Fork
- 3
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di CenterForDigitalHumanities/TPEN-interfaces
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
License link borkedAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
Tutte le issue di CenterForDigitalHumanities/TPEN-interfaces
Issue simili
-
Add: &TV LogoApertacheck:passed logos:add
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 74/100
-
BUG: Appointment time renders blank and PM appointment slots miscalculate vertical position in CalendarScreenForse già presa @aryanpatil-07 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
AOSSIE-Org/BabyNest#297 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Onboarding form: instructor radio never pre-selected "Yes" (permission vs permissions typo)Forse già presa @ThakuraAnki l’ha presa oggi. Apertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
WikiEducationFoundation/WikiEduDashboard#7235 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
-
Component: Frontend Component: Web Component Type: Maintenance
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
it-at-m/refarch-templates#1944 ·
I maintainer di solito rispondono entro 2 giorni