Ivan Vasilov
56de26fe22
chore: Migrate the monorepo to use Tailwind v4 ( #45318 )
...
This PR migrates the whole monorepo to use Tailwind v4:
- Removed `@tailwindcss/container-queries` plugin since it's included by
default in v4,
- Bump all instances of Tailwind to v4. Made minimal changes to the
shared config to remove non-supported features (`alpha` mentions),
- Migrate all apps to be compatible with v4 configs,
- Fix the `typography.css` import in 3 apps,
- Add missing rules which were included by default in v3,
- Run `pnpm dlx @tailwindcss/upgrade` on all apps, which renames a lot
of classes
- Rename all misnamed classes according to
https://tailwindcss.com/docs/upgrade-guide#renamed-utilities in all
apps.
---------
Co-authored-by: Jordi Enric <jordi.err@gmail.com >
2026-04-30 10:53:24 +00:00
Ali Waseem
e8df67d5d5
chore: migrate shortcuts to new hooks API ( #44955 )
...
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md )
file.
YES
## What kind of change does this PR introduce?
Cleanup shortcuts with new hooks
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Refactor**
* Centralized keyboard shortcut system for consistent shortcut behavior
across the app and moved preference toggles to a unified registry.
* **New Features**
* Added explicit shortcuts for Command Menu, AI Assistant, Inline
Editor, and result copy/download actions.
* Hotkey preferences UI now renders dynamically from the centralized
shortcut list.
* **Tests**
* Test helpers updated to include the command menu provider for accurate
shortcut behavior in tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-17 10:02:56 -06:00
Charis
205cbe7d26
chore(studio}: enforce import order, remove bare import specifiers ( #44585 )
2026-04-07 20:34:10 -04:00
Charis
4a0bb36ca8
style: require sorted imports in studio/components ( #44408 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com >
2026-04-01 10:22:37 +02:00
Francesco Sansalvadore
156f904018
feat: floating mobile toolbar ( #43444 )
...
- move navigation components to `apps/studio/components/layouts/Navigation`
- add [FloatingMobileToolbar](https://github.com/supabase/supabase/pull/43444/changes#diff-3dffe47fd51ca851d612d8728e03b2dc344ec213d4f3a46a824d3fa32a7cc851 ) as quick access to tools such as search, assistant, inline editor, etc - behind feature flag and feature preview (true by default as it's a bit
annoying to have to enable it all the time as previews are stored in
local-storage)
- fix sidebar panels closing on viewport resizing (regression from previous pr)
https://github.com/user-attachments/assets/d6881e3b-5128-4306-bb82-3ca39c755dba
<img width="986" height="697" alt="Screenshot 2026-03-12 at 12 40 11"
src="https://github.com/user-attachments/assets/da8511e2-7d01-4237-b814-596031c747c5 "
/>
2026-03-13 12:13:07 +00:00
Francesco Sansalvadore
23c827bdda
feat: nested mobile nav menu ( #43333 )
...
- consolidate `top level menu` and `contextual menu` into nested menu on
mobile
- remove legacy mobile submenu
2026-03-11 13:55:20 +01:00
Francesco Sansalvadore
affdf865e0
fix: mobile sheet nav close ( #43239 )
...
Mobile sheet nav doesn't close on route change and viewport resizing
after #43184 .
This PR fixes that and also makes it optional to close on nav and
resizing, because the sidepanels need them _not_ to resize, while mobile
navigation menu does.
Also added some tests. 🪄
2026-02-27 16:14:57 +01:00
Francesco Sansalvadore
9145470ff6
feat(studio): mobile sheet nav ( #43184 )
...
- use `MobileSheetNav` for all `LayoutSidebar` panels on mobile viewport
- move `Help` to LayoutSidepanel for a more cohesive experience
- enables opening the help panel using params `?sidebar=help-panel`
https://github.com/user-attachments/assets/a84e56f0-f2e2-4217-89a2-ba895bb7d352
2026-02-27 12:06:27 +00:00
Ivan Vasilov
637b6fb792
chore: update react-resizable-panels to v4 to support pixel width ( #42990 )
...
This pull request standardizes the usage of props and value types for
the `ResizablePanelGroup` and `ResizablePanel` components across
multiple files in the codebase. Specifically, it replaces the deprecated
`direction` prop with `orientation`, and updates numeric prop values
(such as `defaultSize`, `minSize`, and `maxSize`) to be passed as
strings. This ensures consistency with the updated component API and
improves type safety.
**Component API Updates:**
* Replaced the `direction` prop with `orientation` for all usages of
`ResizablePanelGroup`
* Updated all `ResizablePanel` props (`defaultSize`, `minSize`,
`maxSize`) to be passed as strings instead of numbers, ensuring
compatibility with the latest API requirements.
* Removed deprecated or unnecessary props such as `order` from
`ResizablePanel` components, and ensured all size-related props are
consistently formatted as strings.
2026-02-23 19:48:19 +01:00
Joshen Lim
3d6be390a6
Save opened side bar in local storage, and init on new session ( #41224 )
...
* Save opened side bar in local storage, and init on new session
* Fix test
* Fix
* Nit
2025-12-11 12:18:18 +08:00
Saxon Fletcher
2fa575113f
Fix sidebar param ( #40973 )
...
fix sidebar param
2025-12-04 23:00:48 +00:00
Joshen Lim
621eada5d6
Fix resizeable panels ( #40950 )
...
* Fix resizeable panels
* Clean up
2025-12-01 22:12:56 +08:00
Joshen Lim
2c91a79b58
Joshen/fe 2180 right side sidebars too wide on laptop displays ( #40940 )
...
* Fix default size for resizeable panel in table editor
* Fix default size for resizeable panel for global
* Clean up
* nit
* Tweak
* Adjust
2025-12-01 17:32:07 +08:00
Saxon Fletcher
c63d2a92a0
Unify Inbox and Advisor ( #40026 )
...
* sidebar-manager
* storage keys
* tests
* more ai spots
* test fix
* revert to default
* remove ref
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix ts
* fix
* fux
* fux query param
* clean
* fix
* more
* mock local storage
* simplify
* remove provider test
* remve useopensidebar
* fix(new homepage): open ai assistant on advisor card button clicks
* Update apps/studio/components/layouts/ProjectLayout/LayoutSidebar/index.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* refine
* editor sidebar manager
* reset results
* advisor sidebar manager
* empty state and notice
* event tracking
* remove variable
* remove use effect
* open in sidebar
* use sidebar old home
* Update apps/studio/components/ui/EditorPanel/EditorPanel.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* connect hotkey
* Update apps/studio/components/layouts/AppLayout/AssistantButton.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/advisor-state.ts
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/advisor-state.ts
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* fix
* initial prompt
* fix(inline editor button): only show keyboard shortcut if hotkey active
* cleanup(advisor panel): minor code cleanup
* fix(advisor panel): misplaced key on list
* fix(advisor panel): add error state
* fix(advisor panel): improve a11y
* fix(advisor panel): cannot find selected item
* fix
* fix
* tooltip
* link
* sidebar move up
* merge inbox
* project/org sidebars
* panels
* clean
* fix use effect
* layoutheader export
* fix
* ts
* prettier
* tests
* remove markdown
* remove org and project filters from state
* text link
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix
* prettier
* remove files
* bump limit
* noop
* format
* remove notifications on self hosted
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com >
Co-authored-by: Alaister Young <alaister@users.noreply.github.com >
2025-11-07 15:01:53 +10:00
Saxon Fletcher
d10001b7a7
Advisor sidebar manager ( #39889 )
...
* sidebar-manager
* storage keys
* tests
* more ai spots
* test fix
* revert to default
* remove ref
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix ts
* fix
* fux
* fux query param
* clean
* fix
* more
* mock local storage
* simplify
* remove provider test
* remve useopensidebar
* fix(new homepage): open ai assistant on advisor card button clicks
* Update apps/studio/components/layouts/ProjectLayout/LayoutSidebar/index.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* refine
* editor sidebar manager
* reset results
* advisor sidebar manager
* empty state and notice
* event tracking
* remove variable
* remove use effect
* open in sidebar
* use sidebar old home
* Update apps/studio/components/ui/EditorPanel/EditorPanel.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* connect hotkey
* Update apps/studio/components/layouts/AppLayout/AssistantButton.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/advisor-state.ts
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/advisor-state.ts
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* fix
* initial prompt
* fix(inline editor button): only show keyboard shortcut if hotkey active
* cleanup(advisor panel): minor code cleanup
* fix(advisor panel): misplaced key on list
* fix(advisor panel): add error state
* fix(advisor panel): improve a11y
* fix(advisor panel): cannot find selected item
* fix
* fix
* tooltip
* link
* sidebar move up
* LayoutSidebarProvider to only sendEvent if in a project
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com >
Co-authored-by: Joshen Lim <joshenlimek@gmail.com >
2025-10-30 17:43:02 +10:00
Saxon Fletcher
e27602f629
Editor sidebar manager ( #39834 )
...
* sidebar-manager
* storage keys
* tests
* more ai spots
* test fix
* revert to default
* remove ref
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix ts
* fix
* fux
* fux query param
* clean
* fix
* more
* mock local storage
* simplify
* remove provider test
* remve useopensidebar
* fix(new homepage): open ai assistant on advisor card button clicks
* Update apps/studio/components/layouts/ProjectLayout/LayoutSidebar/index.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* refine
* editor sidebar manager
* reset results
* Update apps/studio/components/ui/EditorPanel/EditorPanel.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* connect hotkey
* initial prompt
* fix(editor sidebar): disable hotkey based on user preference
* cleanup(inline editor): add migration for hotkey local storage key
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com >
2025-10-29 08:45:07 +10:00
Saxon Fletcher
738c568e6b
Sidebar manager ( #39795 )
...
* sidebar-manager
* storage keys
* tests
* more ai spots
* test fix
* revert to default
* remove ref
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix ts
* fix
* fux
* fux query param
* clean
* fix
* more
* mock local storage
* simplify
* remove provider test
* remve useopensidebar
* fix(new homepage): open ai assistant on advisor card button clicks
* Update apps/studio/components/layouts/ProjectLayout/LayoutSidebar/index.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* Update apps/studio/state/sidebar-manager-state.tsx
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com >
* refine
* FIX
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com >
2025-10-28 10:07:21 +10:00