Skip to content

Commit 1ba57de

Browse files
committed
Fix debugger tabs (encode/decode) on mobile screens.
1 parent 0d945c3 commit 1ba57de

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

src/website/dom-elements.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@ export const codeElements = document.querySelectorAll('.plain-text pre code');
1515

1616
export const debuggerSection = document.getElementById('debugger-io');
1717

18+
export const encodedTabLink =
19+
document.querySelector('.tab-link a[href="#encoded-jwt"]');
20+
export const decodedTabLink =
21+
document.querySelector('.tab-link a[href="#decoded-jwt"]');
22+
export const encodedTabElement = document.getElementById('encoded-jwt');
23+
export const decodedTabElement = document.getElementById('decoded-jwt');
1824
export const editorElement = document.querySelector('#encoded-jwt .input');
1925
export const decodedElement = document.querySelector('#decoded-jwt .output');
2026
export const headerElement = document.querySelector('.js-header');

src/website/editor/index.js

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ import {
2727
rsaShaTextSpan,
2828
keyEditorContainer,
2929
secretEditorContainer,
30-
secretBase64Checkbox
30+
secretBase64Checkbox,
31+
encodedTabLink,
32+
decodedTabLink,
33+
encodedTabElement,
34+
decodedTabElement
3135
} from '../dom-elements.js';
3236

3337
// The event manager lets us enable/disable events as needed without
@@ -273,6 +277,28 @@ function verifyToken() {
273277
}
274278
}
275279

280+
function setupTabEvents() {
281+
// These are relevant for portrait or mobile screens.
282+
283+
encodedTabLink.addEventListener('click', event => {
284+
event.preventDefault();
285+
286+
decodedTabLink.parentNode.classList.remove('current');
287+
encodedTabLink.parentNode.classList.add('current');
288+
decodedTabElement.classList.remove('current');
289+
encodedTabElement.classList.add('current');
290+
});
291+
292+
decodedTabLink.addEventListener('click', event => {
293+
event.preventDefault();
294+
295+
encodedTabLink.parentNode.classList.remove('current');
296+
decodedTabLink.parentNode.classList.add('current');
297+
encodedTabElement.classList.remove('current');
298+
decodedTabElement.classList.add('current');
299+
});
300+
}
301+
276302
function setupEvents() {
277303
// The event manager lets us enable/disable events as needed without
278304
// manually tracking them. Events that need to be disabled should be
@@ -301,6 +327,8 @@ function setupEvents() {
301327
payloadElement.addEventListener('mousemove', tooltipHandler);
302328
// Temporary (share button not ready yet)
303329
signatureStatusElement.addEventListener('click', copyTokenLink);
330+
331+
setupTabEvents();
304332
}
305333

306334
export function setTokenEditorValue(value) {

0 commit comments

Comments
 (0)