diff --git a/src/lib/isTouchscreenDevice.ts b/src/lib/isTouchscreenDevice.ts index ee674992f1d64922198a75abee8af0da63cc8cb0..f1cd23393a332aedae31efce7cadd93fc9cd1d06 100644 --- a/src/lib/isTouchscreenDevice.ts +++ b/src/lib/isTouchscreenDevice.ts @@ -1,7 +1,7 @@ import { isDesktop, isMobile, isTablet } from "react-device-detect"; export const isTouchscreenDevice = - isDesktop && !isTablet + (isDesktop || isTablet) ? false : (typeof window !== "undefined" ? navigator.maxTouchPoints > 0 diff --git a/src/pages/settings/panes/Sessions.tsx b/src/pages/settings/panes/Sessions.tsx index c2b1f16218d60b018178c16223932c3cfbc68a01..2a67c337494f26b86abf7bf4a55eb2948dbd4044 100644 --- a/src/pages/settings/panes/Sessions.tsx +++ b/src/pages/settings/panes/Sessions.tsx @@ -182,7 +182,27 @@ export function Sessions() { </div> ) })} - <Button error> + <Button error + onClick={async () => { + // ! FIXME: add to rAuth + let del: string[] = []; + render.forEach((session) => { + if (deviceId !== session.id) { + del.push(session.id); + } + }) + + setDelete(del); + + for (let id of del) { + await client.req( + "DELETE", + `/auth/sessions/${id}` as "/auth/sessions", + ); + } + + setSessions(sessions.filter(x => x.id === deviceId)); + }}> <Text id="app.settings.pages.sessions.logout" /> </Button> <Tip>