Skip to content

[Bottom sheet] New component: Bottom sheet - #1328

Open
aguscruiz wants to merge 16 commits into
mainfrom
bottom-sheet
Open

[Bottom sheet] New component: Bottom sheet#1328
aguscruiz wants to merge 16 commits into
mainfrom
bottom-sheet

Conversation

@aguscruiz

@aguscruiz aguscruiz commented Mar 4, 2026

Copy link
Copy Markdown
Collaborator

Resolves #1327

Summary

Adds <leo-bottomsheet> — a mobile-friendly bottom sheet that slides up from the bottom of the viewport. It reuses the same slotted content model as leo-menu (items, sections, titles, dividers), supports multiple dismissal paths, stacked sheets for nested flows, and full keyboard/a11y behavior.

Files: src/components/bottomSheet/bottomSheet.svelte, bottomSheet.stories.svelte

Features

Open / close

  • Controlled via isOpen; enters with a fly transition from the bottom.
  • Exits with the Web Animations API from the current position (including mid-drag), then calls onClose when finished.
  • Locks document.body scroll while any sheet in the stack is open.

Dismissal

Method Behavior
Backdrop click Closes topmost sheet when backdropClickCloses (default true)
Outside click Same, with 100ms debounce after open to avoid accidental close from the opening click
Escape Closes topmost sheet when escapeCloses (default true)
Drag handle Pull down past 30% of sheet height to dismiss from current offset (dragToClose, default true)
Menu item click Auto-closes on leo-menu-item / leo-option click unless data-is-interactive is set (for items that open another sheet)

The drag handle UI is only rendered when dragToClose is enabled.

Backdrop

  • Rendered only by the bottom-most sheet in the stack (no duplicate overlays).
  • Fades in on open (Svelte fade, 200ms).
  • Fades out on close via WAAPI, in sync with sheet dismiss when the bottom sheet closes.

Stacking

Multiple sheets can be open at once (e.g. menu item opens a nested sheet). A module-level sheetStack store tracks order.

  • Sheets behind the top are scaled down, shifted up, dimmed, and blurred by depth.
  • Only the topmost sheet receives pointer events and keyboard handling.
  • When the top sheet dismisses, a dismissingSheetId store temporarily compresses the stack so sheets beneath animate forward smoothly — no visible gap under the dismissing sheet.

The Stacked story demonstrates three sheets with data-is-interactive items opening the next layer.

Keyboard navigation

Arrow Up / Down cycles focus through leo-menu-item and leo-option inside the sheet, wrapping at boundaries.

Slotted content & styling

Default slot accepts: leo-menu-item, leo-option, leo-title, leo-menu-section, <hr>. Scoped CSS mirrors leo-menu item styling (margins, padding, hover/active/focus-visible). Content area scrolls internally; bottom padding respects safe-area-inset-bottom.

Props

Prop Type Default Description
isOpen boolean false Sheet visibility
onClose () => void Fired after close animation completes
escapeCloses boolean true Escape dismisses top sheet
backdropClickCloses boolean true Backdrop / outside click dismisses
dragToClose boolean true Drag handle can dismiss

CSS custom properties

Property Default Description
--leo-bottomsheet-max-width 480px Max sheet width
--leo-bottomsheet-max-height 85vh Max sheet height
--leo-bottomsheet-background --leo-color-container-background Background
--leo-bottomsheet-border-radius --leo-radius-xl Top corner radius

Storybook

Story What it shows
Default Title + menu items
With Sections Multiple sections separated by <hr>
Scrollable Sections leo-menu-section with --leo-menu-section-max-height
Stacked Three nested sheets via interactive menu items
Slots Default slot documentation

Stories include role="menuitem", tabindex, and keyboard handlers for a11y compliance in Storybook.

Test plan

  • Open/close via button; sheet flies in and animates out smoothly
  • Dismiss via backdrop, outside click, Escape, and drag past threshold
  • Drag dismiss starts from finger position (no jump/stutter)
  • Menu item click closes sheet; data-is-interactive item does not
  • Arrow keys move focus between items
  • Stacked story: open 2nd and 3rd sheets; dismiss top — sheets below animate forward without gap
  • Backdrop fades in/out; only one backdrop with multiple sheets
  • Body scroll locked while any sheet open
  • dragToClose={false} hides drag handle
  • Scrollable section story scrolls inside section, not whole page

Resolves #1327

Adding the first commit for a bottom sheet component
@aguscruiz aguscruiz changed the title Bottom sheet component [New component] Bottom sheet Mar 4, 2026
@aguscruiz aguscruiz self-assigned this Mar 4, 2026
@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-502cf7a2981c764df65234206e2fbcac39863651/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 126006 bytes
+ ./tokens/css/variables.css: 126006 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-03-04 18:33:46.511871440 +0000
+++ ./tokens/css/variables-android.css	2026-03-04 18:33:12.077933523 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-03-04 18:33:46.859085058 +0000
+++ ./tokens/css/variables-browser.css	2026-03-04 18:33:12.060933658 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-03-04 18:33:47.214032057 +0000
+++ ./tokens/css/variables-ios.css	2026-03-04 18:33:12.093933395 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-03-04 18:33:47.592613283 +0000
+++ ./tokens/css/variables-marketing.css	2026-03-04 18:33:12.113933236 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-03-04 18:33:47.932239545 +0000
+++ ./tokens/css/variables-news.css	2026-03-04 18:33:12.172932766 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-03-04 18:33:48.339062830 +0000
+++ ./tokens/css/variables-newtab.css	2026-03-04 18:33:12.181932694 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-03-04 18:33:48.729602957 +0000
+++ ./tokens/css/variables-search.css	2026-03-04 18:33:12.143932997 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-03-04 18:33:49.075230755 +0000
+++ ./tokens/css/variables-web3.css	2026-03-04 18:33:12.187932647 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:12 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-03-04 18:33:49.598595063 +0000
+++ ./tokens/css/variables.css	2026-03-04 18:33:11.936934646 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 18:33:11 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@aguscruiz aguscruiz changed the title [New component] Bottom sheet [Bottom sheet] Bottom sheet Mar 4, 2026
@aguscruiz aguscruiz changed the title [Bottom sheet] Bottom sheet [Bottom sheet] New component: Bottom sheet Mar 4, 2026
@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-119255ef8feb6446616edb1984ea0f7c7cee2eed/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 126006 bytes
+ ./tokens/css/variables.css: 126006 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-03-04 19:06:09.007010175 +0000
+++ ./tokens/css/variables-android.css	2026-03-04 19:05:34.581683162 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-03-04 19:06:09.208963204 +0000
+++ ./tokens/css/variables-browser.css	2026-03-04 19:05:34.563682929 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-03-04 19:06:09.400500531 +0000
+++ ./tokens/css/variables-ios.css	2026-03-04 19:05:34.596683356 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-03-04 19:06:09.572275572 +0000
+++ ./tokens/css/variables-marketing.css	2026-03-04 19:05:34.619683653 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-03-04 19:06:09.748058969 +0000
+++ ./tokens/css/variables-news.css	2026-03-04 19:05:34.687684533 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-03-04 19:06:09.902680116 +0000
+++ ./tokens/css/variables-newtab.css	2026-03-04 19:05:34.694684623 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-03-04 19:06:10.047110292 +0000
+++ ./tokens/css/variables-search.css	2026-03-04 19:05:34.651684067 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-03-04 19:06:10.167806938 +0000
+++ ./tokens/css/variables-web3.css	2026-03-04 19:05:34.699684688 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-03-04 19:06:10.370114300 +0000
+++ ./tokens/css/variables.css	2026-03-04 19:05:34.436681287 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:05:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-6aef24215278bd1d83fc581b77728af1bc60f061/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 126006 bytes
+ ./tokens/css/variables.css: 126006 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-03-04 19:09:45.301766279 +0000
+++ ./tokens/css/variables-android.css	2026-03-04 19:09:10.241252061 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-03-04 19:09:45.443515777 +0000
+++ ./tokens/css/variables-browser.css	2026-03-04 19:09:10.225252112 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-03-04 19:09:45.708221105 +0000
+++ ./tokens/css/variables-ios.css	2026-03-04 19:09:10.257252009 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-03-04 19:09:45.950989393 +0000
+++ ./tokens/css/variables-marketing.css	2026-03-04 19:09:10.278251942 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-03-04 19:09:46.174678492 +0000
+++ ./tokens/css/variables-news.css	2026-03-04 19:09:10.330251774 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-03-04 19:09:46.396141896 +0000
+++ ./tokens/css/variables-newtab.css	2026-03-04 19:09:10.340251742 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-03-04 19:09:46.677122078 +0000
+++ ./tokens/css/variables-search.css	2026-03-04 19:09:10.307251848 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-03-04 19:09:46.921770693 +0000
+++ ./tokens/css/variables-web3.css	2026-03-04 19:09:10.345251726 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-03-04 19:09:47.236119967 +0000
+++ ./tokens/css/variables.css	2026-03-04 19:09:10.100252514 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:09:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-0883dfd7806d31f9a2855f22585943d8b3f1f04a/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 126006 bytes
+ ./tokens/css/variables.css: 126006 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-03-04 19:38:40.200978543 +0000
+++ ./tokens/css/variables-android.css	2026-03-04 19:38:05.400663782 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-03-04 19:38:40.546134070 +0000
+++ ./tokens/css/variables-browser.css	2026-03-04 19:38:05.385663645 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-03-04 19:38:40.881940189 +0000
+++ ./tokens/css/variables-ios.css	2026-03-04 19:38:05.415663918 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-03-04 19:38:41.166211395 +0000
+++ ./tokens/css/variables-marketing.css	2026-03-04 19:38:05.437664119 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-03-04 19:38:41.445540369 +0000
+++ ./tokens/css/variables-news.css	2026-03-04 19:38:05.498664674 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-03-04 19:38:41.580568048 +0000
+++ ./tokens/css/variables-newtab.css	2026-03-04 19:38:05.512664801 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-03-04 19:38:41.922985748 +0000
+++ ./tokens/css/variables-search.css	2026-03-04 19:38:05.468664401 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-03-04 19:38:42.236750915 +0000
+++ ./tokens/css/variables-web3.css	2026-03-04 19:38:05.519664865 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-03-04 19:38:42.702992703 +0000
+++ ./tokens/css/variables.css	2026-03-04 19:38:05.258662489 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Tue Mar 03 2026 20:01:41 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Mar 04 2026 19:38:05 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

aguscruiz and others added 2 commits March 5, 2026 13:39
Add on:keydown handlers, role="menuitem", and tabindex="0" to
leo-menu-item elements to resolve Svelte accessibility warnings.

Made-with: Cursor
@github-actions

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-495a7f25a7de06ec34c7945dd457395214a43850/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 126006 bytes
+ ./tokens/css/variables.css: 126006 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-05-12 12:40:09.472088932 +0000
+++ ./tokens/css/variables-android.css	2026-05-12 12:39:34.276769796 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-05-12 12:40:09.792647468 +0000
+++ ./tokens/css/variables-browser.css	2026-05-12 12:39:34.260769885 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-05-12 12:40:10.080999037 +0000
+++ ./tokens/css/variables-ios.css	2026-05-12 12:39:34.292769707 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-05-12 12:40:10.360149987 +0000
+++ ./tokens/css/variables-marketing.css	2026-05-12 12:39:34.310769607 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-05-12 12:40:10.649765055 +0000
+++ ./tokens/css/variables-news.css	2026-05-12 12:39:34.361769323 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-05-12 12:40:10.956916283 +0000
+++ ./tokens/css/variables-newtab.css	2026-05-12 12:39:34.374769251 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-05-12 12:40:11.149511226 +0000
+++ ./tokens/css/variables-search.css	2026-05-12 12:39:34.336769462 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-05-12 12:40:11.444813579 +0000
+++ ./tokens/css/variables-web3.css	2026-05-12 12:39:34.380769217 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-05-12 12:40:11.896506150 +0000
+++ ./tokens/css/variables.css	2026-05-12 12:39:34.143770536 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Mon May 11 2026 23:36:49 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue May 12 2026 12:39:34 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-3999c26b84316b2239135eac2c5c7d4a5babd7f3/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-02 16:32:29.575154825 +0000
+++ ./tokens/css/variables-android.css	2026-06-02 16:31:52.040088856 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-02 16:32:29.929601587 +0000
+++ ./tokens/css/variables-browser.css	2026-06-02 16:31:52.026088988 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-02 16:32:30.293176181 +0000
+++ ./tokens/css/variables-ios.css	2026-06-02 16:31:52.057088695 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-02 16:32:30.595701854 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-02 16:31:52.078088496 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-02 16:32:30.878902183 +0000
+++ ./tokens/css/variables-news.css	2026-06-02 16:31:52.128088023 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-02 16:32:31.209150291 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-02 16:31:52.141087900 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-02 16:32:31.655691197 +0000
+++ ./tokens/css/variables-search.css	2026-06-02 16:31:52.101088278 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-02 16:32:31.954731929 +0000
+++ ./tokens/css/variables-web3.css	2026-06-02 16:31:52.146087853 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:52 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-02 16:32:32.438683330 +0000
+++ ./tokens/css/variables.css	2026-06-02 16:31:51.913090057 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Tue Jun 02 2026 16:31:51 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-8006fb2b0cebde0133b3b65ca403ef5309a4658b/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-03 14:56:29.870419580 +0000
+++ ./tokens/css/variables-android.css	2026-06-03 14:55:52.169215716 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-03 14:56:30.174137613 +0000
+++ ./tokens/css/variables-browser.css	2026-06-03 14:55:52.154215699 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-03 14:56:30.518695808 +0000
+++ ./tokens/css/variables-ios.css	2026-06-03 14:55:52.183215731 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-03 14:56:30.821432456 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-03 14:55:52.205215756 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-03 14:56:31.104980370 +0000
+++ ./tokens/css/variables-news.css	2026-06-03 14:55:52.252215808 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-03 14:56:31.410290775 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-03 14:55:52.261215818 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-03 14:56:31.823048720 +0000
+++ ./tokens/css/variables-search.css	2026-06-03 14:55:52.231215785 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-03 14:56:32.141588155 +0000
+++ ./tokens/css/variables-web3.css	2026-06-03 14:55:52.266215824 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-03 14:56:32.587046011 +0000
+++ ./tokens/css/variables.css	2026-06-03 14:55:52.031215563 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:55:52 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-167980c6aebca050f0e64ad65495ffb888acaccf/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-03 14:58:59.767208495 +0000
+++ ./tokens/css/variables-android.css	2026-06-03 14:58:21.971986902 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:21 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-03 14:59:00.039665379 +0000
+++ ./tokens/css/variables-browser.css	2026-06-03 14:58:21.950986879 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:21 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-03 14:59:00.338049982 +0000
+++ ./tokens/css/variables-ios.css	2026-06-03 14:58:21.994986928 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:21 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-03 14:59:00.653330742 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-03 14:58:22.018986955 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:22 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-03 14:59:00.983156893 +0000
+++ ./tokens/css/variables-news.css	2026-06-03 14:58:22.094987040 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:22 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-03 14:59:01.249134426 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-03 14:58:22.115987064 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:22 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-03 14:59:01.575757656 +0000
+++ ./tokens/css/variables-search.css	2026-06-03 14:58:22.054986995 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:22 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-03 14:59:01.844244628 +0000
+++ ./tokens/css/variables-web3.css	2026-06-03 14:58:22.121987071 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:22 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-03 14:59:02.291754174 +0000
+++ ./tokens/css/variables.css	2026-06-03 14:58:21.801986712 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 14:58:21 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

Wrap the drag-handle area in an {#if dragToClose} block so the drag handle and its pointer event handlers are only rendered when drag-to-close is enabled. This prevents unnecessary event listeners and UI affordances when dragToClose is false.
@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-fe84c8e7fb0fae6ca8de86a12d92bbdf5b202f70/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-03 15:04:16.931164468 +0000
+++ ./tokens/css/variables-android.css	2026-06-03 15:03:40.416970524 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-03 15:04:17.285450086 +0000
+++ ./tokens/css/variables-browser.css	2026-06-03 15:03:40.401970437 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-03 15:04:17.597941875 +0000
+++ ./tokens/css/variables-ios.css	2026-06-03 15:03:40.430970605 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-03 15:04:17.742653503 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-03 15:03:40.453970738 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-03 15:04:17.884724474 +0000
+++ ./tokens/css/variables-news.css	2026-06-03 15:03:40.500971009 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-03 15:04:18.183890885 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-03 15:03:40.507971050 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-03 15:04:18.627163020 +0000
+++ ./tokens/css/variables-search.css	2026-06-03 15:03:40.479970888 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-03 15:04:18.888087896 +0000
+++ ./tokens/css/variables-web3.css	2026-06-03 15:03:40.512971079 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-03 15:04:19.370166516 +0000
+++ ./tokens/css/variables.css	2026-06-03 15:03:40.284969761 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu May 28 2026 21:06:50 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 15:03:40 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-8166252729484693999f435f8b4afddaf5eee838/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-03 21:16:28.234042288 +0000
+++ ./tokens/css/variables-android.css	2026-06-03 21:15:57.964331928 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:57 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-03 21:16:28.386155909 +0000
+++ ./tokens/css/variables-browser.css	2026-06-03 21:15:57.953331914 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:57 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-03 21:16:28.557779671 +0000
+++ ./tokens/css/variables-ios.css	2026-06-03 21:15:57.975331941 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:57 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-03 21:16:29.248279661 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-03 21:15:57.991331960 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:57 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-03 21:16:29.414148529 +0000
+++ ./tokens/css/variables-news.css	2026-06-03 21:15:58.028332004 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:58 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-03 21:16:29.547797576 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-03 21:15:58.034332011 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:58 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-03 21:16:29.696155077 +0000
+++ ./tokens/css/variables-search.css	2026-06-03 21:15:58.012331985 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:58 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-03 21:16:29.836626908 +0000
+++ ./tokens/css/variables-web3.css	2026-06-03 21:15:58.038548085 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:58 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-03 21:16:29.970161438 +0000
+++ ./tokens/css/variables.css	2026-06-03 21:15:57.861331804 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 03 2026 21:15:57 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

Introduce a drag-to-expand feature for BottomSheet: add a new prop `dragToExpand` and a CSS variable `--leo-bottomsheet-expanded-max-height` (default 100dvh). Implement expanded state tracking, preserve the collapsed snap height, compute dynamic max-height during drag, and adjust dismiss/translate logic to support expanding to full viewport and collapsing back. Update styles to include an `.is-expanded` state and transitions, and ensure the drag handle is enabled when either `dragToClose` or `dragToExpand` is set. Also add an "Expandable" story demonstrating the new behavior and add relevant story argTypes. These changes improve UX by allowing users to drag the sheet up to fully expand while preserving existing drag-to-close behavior.
@github-actions

github-actions Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-00664fe29c8ade1a7c4607f7195d26fa7f7998dc/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-04 15:10:40.914727169 +0000
+++ ./tokens/css/variables-android.css	2026-06-04 15:10:10.897961409 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-04 15:10:41.295412202 +0000
+++ ./tokens/css/variables-browser.css	2026-06-04 15:10:10.885961082 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-04 15:10:41.683099298 +0000
+++ ./tokens/css/variables-ios.css	2026-06-04 15:10:10.909961735 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-04 15:10:41.950834257 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-04 15:10:10.927962225 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-04 15:10:42.304534211 +0000
+++ ./tokens/css/variables-news.css	2026-06-04 15:10:10.962963178 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-04 15:10:42.458336188 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-04 15:10:10.968963341 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-04 15:10:42.848827598 +0000
+++ ./tokens/css/variables-search.css	2026-06-04 15:10:10.946962742 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-04 15:10:43.157304318 +0000
+++ ./tokens/css/variables-web3.css	2026-06-04 15:10:10.972539527 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-04 15:10:43.618848490 +0000
+++ ./tokens/css/variables.css	2026-06-04 15:10:10.796958660 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jun 03 2026 20:40:31 GMT+0000 (Coordinated Universal Time)
+ * Generated on Thu Jun 04 2026 15:10:10 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@aguscruiz
aguscruiz requested a review from Copilot June 12, 2026 14:22
@aguscruiz
aguscruiz removed the request for review from Copilot June 12, 2026 14:23
@github-actions

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-0d120d02dc17a0ac399981dcb47c58ee53f950af/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-12 14:23:25.598922926 +0000
+++ ./tokens/css/variables-android.css	2026-06-12 14:22:47.155142332 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-12 14:23:25.882982539 +0000
+++ ./tokens/css/variables-browser.css	2026-06-12 14:22:47.140142382 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-12 14:23:26.379909693 +0000
+++ ./tokens/css/variables-ios.css	2026-06-12 14:22:47.172142276 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-12 14:23:26.688263846 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-12 14:22:47.200142184 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-12 14:23:26.952881004 +0000
+++ ./tokens/css/variables-news.css	2026-06-12 14:22:47.259141989 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-12 14:23:27.208764287 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-12 14:22:47.267141963 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-12 14:23:27.347310994 +0000
+++ ./tokens/css/variables-search.css	2026-06-12 14:22:47.232142078 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-12 14:23:27.664624916 +0000
+++ ./tokens/css/variables-web3.css	2026-06-12 14:22:47.272141947 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-12 14:23:28.051003011 +0000
+++ ./tokens/css/variables.css	2026-06-12 14:22:47.011142807 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Thu Jun 11 2026 21:30:56 GMT+0000 (Coordinated Universal Time)
+ * Generated on Fri Jun 12 2026 14:22:47 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr.nala.bravesoftware.com/
✅ Commit preview: https://1328.pr.nala.bravesoftware.com/commit-46274b011dce27a0e191f4638cfacd2eff0b484f/

- ./tokens/css/variables-android.old.css: 7390 bytes
+ ./tokens/css/variables-android.css: 7390 bytes
---
- ./tokens/css/variables-browser.old.css: 6644 bytes
+ ./tokens/css/variables-browser.css: 6644 bytes
---
- ./tokens/css/variables-ios.old.css: 8180 bytes
+ ./tokens/css/variables-ios.css: 8180 bytes
---
- ./tokens/css/variables-marketing.old.css: 13501 bytes
+ ./tokens/css/variables-marketing.css: 13501 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 1933 bytes
+ ./tokens/css/variables-newtab.css: 1933 bytes
---
- ./tokens/css/variables-search.old.css: 28568 bytes
+ ./tokens/css/variables-search.css: 28568 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125980 bytes
+ ./tokens/css/variables.css: 125980 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-06-17 17:32:17.302591482 +0000
+++ ./tokens/css/variables-android.css	2026-06-17 17:31:54.470675564 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-06-17 17:32:17.549039483 +0000
+++ ./tokens/css/variables-browser.css	2026-06-17 17:31:54.462675433 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-06-17 17:32:17.744703253 +0000
+++ ./tokens/css/variables-ios.css	2026-06-17 17:31:54.479675711 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-06-17 17:32:17.949065026 +0000
+++ ./tokens/css/variables-marketing.css	2026-06-17 17:31:54.490675891 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-06-17 17:32:18.168788384 +0000
+++ ./tokens/css/variables-news.css	2026-06-17 17:31:54.519676365 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-06-17 17:32:18.358493272 +0000
+++ ./tokens/css/variables-newtab.css	2026-06-17 17:31:54.525676463 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-06-17 17:32:18.601074956 +0000
+++ ./tokens/css/variables-search.css	2026-06-17 17:31:54.507676169 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-06-17 17:32:18.694767082 +0000
+++ ./tokens/css/variables-web3.css	2026-06-17 17:31:54.529202742 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-06-17 17:32:19.013082386 +0000
+++ ./tokens/css/variables.css	2026-06-17 17:31:54.393674305 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Sun Jun 14 2026 20:50:11 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jun 17 2026 17:31:54 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr-nala.s.brave.dev/
✅ Commit preview: https://1328.pr-nala.s.brave.dev/commit-27fd65172b9d8a137ca5c76682cc01c82420f6e7/

- ./tokens/css/variables-android.old.css: 1850 bytes
+ ./tokens/css/variables-android.css: 1850 bytes
---
- ./tokens/css/variables-browser.old.css: 1438 bytes
+ ./tokens/css/variables-browser.css: 1438 bytes
---
- ./tokens/css/variables-ios.old.css: 16941 bytes
+ ./tokens/css/variables-ios.css: 16941 bytes
---
- ./tokens/css/variables-marketing.old.css: 20053 bytes
+ ./tokens/css/variables-marketing.css: 20053 bytes
---
- ./tokens/css/variables-news.old.css: 526 bytes
+ ./tokens/css/variables-news.css: 526 bytes
---
- ./tokens/css/variables-newtab.old.css: 2119 bytes
+ ./tokens/css/variables-newtab.css: 2119 bytes
---
- ./tokens/css/variables-search.old.css: 26893 bytes
+ ./tokens/css/variables-search.css: 26893 bytes
---
- ./tokens/css/variables-web3.old.css: 893 bytes
+ ./tokens/css/variables-web3.css: 893 bytes
---
- ./tokens/css/variables.old.css: 125552 bytes
+ ./tokens/css/variables.css: 125552 bytes
Variables Diff: variables-android.diff
--- ./tokens/css/variables-android.old.css	2026-07-22 17:43:29.428700059 +0000
+++ ./tokens/css/variables-android.css	2026-07-22 17:42:49.556284152 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:43 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-browser.diff
--- ./tokens/css/variables-browser.old.css	2026-07-22 17:43:29.816268070 +0000
+++ ./tokens/css/variables-browser.css	2026-07-22 17:42:49.549284187 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:43 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-ios.diff
--- ./tokens/css/variables-ios.old.css	2026-07-22 17:43:30.143074014 +0000
+++ ./tokens/css/variables-ios.css	2026-07-22 17:42:49.571284078 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:43 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-marketing.diff
--- ./tokens/css/variables-marketing.old.css	2026-07-22 17:43:30.471040907 +0000
+++ ./tokens/css/variables-marketing.css	2026-07-22 17:42:49.610283884 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:43 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-news.diff
--- ./tokens/css/variables-news.old.css	2026-07-22 17:43:30.610552829 +0000
+++ ./tokens/css/variables-news.css	2026-07-22 17:42:49.664283615 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:44 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-newtab.diff
--- ./tokens/css/variables-newtab.old.css	2026-07-22 17:43:30.858223890 +0000
+++ ./tokens/css/variables-newtab.css	2026-07-22 17:42:49.673283570 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:44 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-search.diff
--- ./tokens/css/variables-search.old.css	2026-07-22 17:43:31.173037542 +0000
+++ ./tokens/css/variables-search.css	2026-07-22 17:42:49.643283719 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:44 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {
Variables Diff: variables-web3.diff
--- ./tokens/css/variables-web3.old.css	2026-07-22 17:43:31.432105973 +0000
+++ ./tokens/css/variables-web3.css	2026-07-22 17:42:49.678283545 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:44 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 @media (prefers-color-scheme: light) {
Variables Diff: variables.diff
--- ./tokens/css/variables.old.css	2026-07-22 17:43:31.832033362 +0000
+++ ./tokens/css/variables.css	2026-07-22 17:42:49.428284789 +0000
@@ -1,6 +1,6 @@
 /**
  * Do not edit directly
- * Generated on Wed Jul 22 2026 17:11:43 GMT+0000 (Coordinated Universal Time)
+ * Generated on Wed Jul 22 2026 17:42:49 GMT+0000 (Coordinated Universal Time)
  */
 
 :root {

@github-actions

Copy link
Copy Markdown
Contributor

[puLL-Merge] - brave/leo@1328

Description

New BottomSheet component with mobile-oriented drag interactions: drag-to-close, drag-to-expand, stacking multiple sheets with visual depth, backdrop, keyboard nav, and slotted menu content mimicking menu.svelte styling. Adds Storybook stories.

Possible Issues

  • SSR crash: Reactive $: document.body.style.overflow = ... runs during component init. If SSR/no-DOM, document undefined throws. Same for getViewportHeight() accessing window. Guard with typeof document !== 'undefined' or move into onMount.

  • onClose typed () => void = undefined: Non-optional prop assigned undefined. TS strict flags this. Use export let onClose: (() => void) | undefined = undefined.

  • body overflow reset race: Multiple sheets share $sheetStack. On onDestroy a sheet removes its id, but reactive overflow statement only reruns if $sheetStack reference changes—fine. But if component destroyed while dismissing, document.body.style.overflow may stay hidden if store never re-evaluates. Verify last sheet close resets overflow.

  • Global click + backdrop double-close: handleWindowClick and handleBackdropClick both close on outside click. Backdrop click bubbles to window; close() guards with if (dismissing) return, so likely safe, but redundant. Consider stopPropagation on backdrop.

  • openedAt 100ms guard: Magic number to suppress the opening click. Fragile on slow devices; opening click could still land after 100ms and immediately close. Prefer capturing/consuming the triggering event.

  • expandRange/collapsedSnapHeight on resize: getViewportHeight() in reactive block won't recompute on viewport resize (not a reactive dep). Expand math stale after orientation change/keyboard. Add resize listener.

  • stackIndex z-index: z-index: 10000 + stackIndex. Backdrop fixed at 9998. First sheet at 10000 sits above backdrop always—but stacked backdrop logic only shows one backdrop (isBottomOfStack). Behind-sheets get no backdrop separation; acceptable given design, confirm intent.

  • :host selector: This is a Svelte SFC, not a custom element definition here. :host only applies if compiled as web component. Verify build target; otherwise dead CSS.

  • Pointer capture on handle only: setPointerCapture on e.target (handle child). Fast drags leaving handle still tracked via capture—OK. But pointermove handler only on .drag-handle-area; with capture, events retarget to captured element, fine.

  • items query per keystroke/click: querySelectorAll on every keydown and item click. Minor perf; acceptable for menu sizes.

Changes

Changes

src/components/bottomSheet/bottomSheet.svelte

  • Module context: global sheet id counter, sheetStack/dismissingSheetId stores, animation duration constants, JSX type decl for leo-bottomsheet.
  • Props: isOpen, onClose, escapeCloses, backdropClickCloses, dragToClose, dragToExpand.
  • Reactive drag math: dragDeltaY, expandRange, dismissTranslateY, dragMaxHeight, atFullHeight.
  • Stack management via store; visual depth compression during dismiss.
  • close() runs WAAPI translate + backdrop fade, then flips isOpen, calls onClose.
  • Pointer handlers implement drag-to-close/expand with thresholds (25% expand, 30% height close, 50% viewport close-from-expanded).
  • Keyboard: Escape close, Arrow up/down item navigation.
  • Extensive :global/::slotted CSS replicating menu.svelte item/title/hr/section styles.

src/components/bottomSheet/bottomSheet.stories.svelte

  • Stories: Default, Expandable, With Sections, Scrollable Sections, Stacked, Slots.
  • CSS custom-prop argTypes docs.
sequenceDiagram
    participant U as User
    participant B as BottomSheet
    participant S as sheetStack store
    participant D as document.body

    U->>B: set isOpen=true
    B->>S: add id
    S-->>D: overflow=hidden
    B->>B: showBackdrop=true (if bottom)
    B->>B: fly-in transition

    U->>B: pointerdown handle
    B->>B: isDragging=true, capture pointer
    U->>B: pointermove
    B->>B: dragCurrentY updates -> translateY/maxHeight
    U->>B: pointerup
    alt drag up > 25% range
        B->>B: isExpanded=true
    else drag down > threshold
        B->>B: close(offset)
        B->>B: WAAPI translate + backdrop fade
        B->>S: remove id
        B->>B: isOpen=false, onClose()
    else
        B->>B: resetDrag()
    end

    U->>B: click outside / Escape / backdrop
    B->>B: close()
    B->>S: remove id
    alt last sheet
        S-->>D: overflow=''
    end
Loading

@github-actions

Copy link
Copy Markdown
Contributor

👋 Thanks for Submitting! This PR is available for preview at the link below.

✅ PR tip preview: https://1328.pr-nala.s.brave.dev/
✅ Commit preview: https://1328.pr-nala.s.brave.dev/commit-ffbba57c6db9894ce2b3f5fb7067ff1eea803e2f/

- ./tokens/css/variables-android.old.css: 1771 bytes
+ ./tokens/css/variables-android.css: 1771 bytes
---
- ./tokens/css/variables-browser.old.css: 1359 bytes
+ ./tokens/css/variables-browser.css: 1359 bytes
---
- ./tokens/css/variables-ios.old.css: 16862 bytes
+ ./tokens/css/variables-ios.css: 16862 bytes
---
- ./tokens/css/variables-marketing.old.css: 19974 bytes
+ ./tokens/css/variables-marketing.css: 19974 bytes
---
- ./tokens/css/variables-news.old.css: 447 bytes
+ ./tokens/css/variables-news.css: 447 bytes
---
- ./tokens/css/variables-newtab.old.css: 2040 bytes
+ ./tokens/css/variables-newtab.css: 2040 bytes
---
- ./tokens/css/variables-search.old.css: 26814 bytes
+ ./tokens/css/variables-search.css: 26814 bytes
---
- ./tokens/css/variables-web3.old.css: 814 bytes
+ ./tokens/css/variables-web3.css: 814 bytes
---
- ./tokens/css/variables.old.css: 125473 bytes
+ ./tokens/css/variables.css: 125473 bytes
Variables Diff: variables-android.diff
Variables Diff: variables-browser.diff
Variables Diff: variables-ios.diff
Variables Diff: variables-marketing.diff
Variables Diff: variables-news.diff
Variables Diff: variables-newtab.diff
Variables Diff: variables-search.diff
Variables Diff: variables-web3.diff
Variables Diff: variables.diff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bottom sheet] New component: Bottom sheet

1 participant