Mobile
Pro
and
Max
licenses now up to
65% cheaper
!
NativePHP
closeMenu(), 200))" @click.outside="closeMenu()" @keydown.escape.window="closeMenu(true)" >
Mobile
{ const items = Array.from($refs.menu.querySelectorAll('[role=menuitem]')) const i = items.indexOf(document.activeElement) const next = i === -1 ? 0 : (i + 1) % items.length items[next]?.focus() })()" @keydown.arrow-up.prevent="(() => { const items = Array.from($refs.menu.querySelectorAll('[role=menuitem]')) const i = items.indexOf(document.activeElement) const prev = i === -1 ? items.length - 1 : (i - 1 + items.length) % items.length items[prev]?.focus() })()" >
Documentation
Get started with Mobile
Pricing
See our pricing plans
closeMenu(), 200))" @click.outside="closeMenu()" @keydown.escape.window="closeMenu(true)" >
Desktop
{ const items = Array.from($refs.menu.querySelectorAll('[role=menuitem]')) const i = items.indexOf(document.activeElement) const next = i === -1 ? 0 : (i + 1) % items.length items[next]?.focus() })()" @keydown.arrow-up.prevent="(() => { const items = Array.from($refs.menu.querySelectorAll('[role=menuitem]')) const i = items.indexOf(document.activeElement) const prev = i === -1 ? items.length - 1 : (i - 1 + items.length) % items.length items[prev]?.focus() })()" >
Documentation
Get started with Desktop
Sponsor
Support our contributors
GitHub
Visit our GitHub repository
Home
Docs
Blog
Shop
Partners
Log in
Light
System
Dark
Blog
Shop
Partners
Log in
Toggle theme
Try Bifrost!
Build
Distribute
Ship
Reset your password
Enter your email address and we'll send you a link to reset your password.
Email address
Send Password Reset Link
Back to login