fix: bad navigation logic
Some checks are pending
Check / check (push) Waiting to run

This commit is contained in:
ThaUnknown 2025-07-22 09:11:53 +02:00
parent 118d40d3c6
commit 3d84a63145
No known key found for this signature in database
4 changed files with 5 additions and 5 deletions

View file

@ -1,6 +1,6 @@
{
"name": "ui",
"version": "6.4.78",
"version": "6.4.79",
"license": "BUSL-1.1",
"private": true,
"packageManager": "pnpm@9.15.5",

View file

@ -28,7 +28,7 @@
async function runBind (e: MouseEvent | KeyboardEvent, code: KeyCode) {
const kbn = get(binds)
if (cnd(code)) kbn[layout[code] ?? code]?.fn(e)
if (cnd(code)) kbn[layout[code] ?? code]?.fn?.(e)
}
export function loadWithDefaults (defaults: Partial<Record<string, Bind>>) {

View file

@ -160,7 +160,7 @@ function getDistance (anchor: ElementPosition, relative: ElementPosition) {
* Gets keyboard-focusable elements within a specified element.
*/
function getKeyboardFocusableElements (element: Element = document.body) {
return [...element.querySelectorAll<HTMLElement>('a[href]:not([disabled], [tabindex="-1"]), button:not([disabled], [tabindex="-1"]), fieldset:not([disabled]), input:not([disabled], [readonly]), optgroup:not([disabled]), option:not([disabled]), select:not([disabled]), textarea:not([disabled]), details, [tabindex]:not([tabindex="-1"], [disabled]), [contenteditable], [controls]')].filter(
return [...element.querySelectorAll<HTMLElement>('a[href]:not([disabled=""], [disabled="true"], [tabindex="-1"]), button:not([disabled=""], [disabled="true"], [tabindex="-1"]), fieldset:not([disabled=""], [disabled="true"]), input:not([disabled=""], [disabled="true"], [readonly]), optgroup:not([disabled=""], [disabled="true"]), option:not([disabled=""], [disabled="true"]), select:not([disabled=""], [disabled="true"]), textarea:not([disabled=""], [disabled="true"]), details, [tabindex]:not([tabindex="-1"], [disabled=""], [disabled="true"]), [contenteditable], [controls]')].filter(
el => !el.getAttribute('aria-hidden')
)
}

View file

@ -20,10 +20,10 @@
</div>
<div class='text-muted-foreground pt-3 text-center'>Let's set up your perfect streaming environment.</div>
<div class='flex items-center space-x-2 pt-12 pb-3'>
<Checkbox id='terms' bind:checked />
<Checkbox id='terms' bind:checked data-down='#start-setup' />
<Label for='terms' class='text-md font-medium leading-none text-muted-foreground'>
I agree to the<a use:click={() => native.openURL(`${WEB_URL}/terms`)} class='text-primary underline p-2'>Terms of Service</a>and<a use:click={() => native.openURL(`${WEB_URL}/privacy`)} class='text-primary underline p-2'>Privacy Policy</a>
</Label>
</div>
<Button class='text-lg font-bold shrink-0' disabled={!checked} size='lg' href={checked ? './storage' : undefined} data-sveltekit-replacestate>{!checked ? 'Accept terms to continue' : 'Start Setup'}</Button>
<Button id='start-setup' class='text-lg font-bold shrink-0' disabled={!checked} size='lg' href={checked ? './storage' : undefined} data-sveltekit-replacestate>{!checked ? 'Accept terms to continue' : 'Start Setup'}</Button>
</div>