Commit Graph
3409 Commits
Author SHA1 Message Date
Joshen Lim 8f3b47236c Fix ColumnType not scrollable via mousewheel (#42277)
## Context

Was informed of this UI bug through this PR
[here](https://github.com/supabase/supabase/pull/42126) - apart from
shifting the ScrollArea component, there's also known issue with
ScrollArea and Popover which we need to set `modal` to `true` for the
`Popover`

## To test

- [ ] Verify that you can scroll via mouse wheel on the ColumnType
component (Table Editor -> new table -> column type)
<img width="698" height="471" alt="image"
src="https://github.com/user-attachments/assets/b24af3f9-80f6-4dfc-9fa2-1492fe597598"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Improvements**
* Popover in column editor now supports modal rendering mode with
enhanced scrolling behavior.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-29 17:19:57 +08:00
Monica KhouryandJoshen Lim a87387b56e feat: show "Allow support access to your project" toggle for all support categories (#42254)
Previously, the “Allow support access to your project” toggle was only
shown for specific issue categories in our support form. This change
makes the toggle available for all categories.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* Support access toggle and submission now suppress support access for
Account Deletion, Sales Enquiry, and Refund categories.
* **Refactor**
* Reworked category gating so UI visibility and submitted payload
consistently respect the disabled-category list.
* **UI**
* Category list updated—"Others" removed and category options adjusted
so all available options are shown.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-28 18:15:41 +00:00
Jordi Enric 88ed2aad97 new home: refactor charts to use old sources (#42245)
- refactors new charts in homepage to use stable analytics endpoints
- changes are behind newHomepageUsageV2 flag

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Centralized per-service health metrics hook with per-service data,
loading/error states and refresh.

* **Improvements**
  * Time-series normalization into fixed buckets aligned to an end time.
* Updated UI: success-rate formatting, per-service loading/error
surfaced, refreshed click/refresh behavior; removed delta display.

* **Removals**
  * Legacy project-metrics query and mapping utilities removed.

* **Tests**
* Extensive unit tests added for date ranges, bucket normalization, and
health metric calculations; some obsolete tests removed.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-28 17:02:00 +00:00
Joshen Lim ba5538576b chore(studio): Update support form status page button to use incident query + make maintenance banner dismissible (#42248)
* Update support form status page button to use incident query + make maintenance banner dismissible

* Clean up

* Nit

* Attempt to fix tests

* Fix tests
2026-01-28 23:18:39 +08:00
kemal.earth e36b5fe70b feat(studio): scroll sql editor tabs to end when longer than container width (#42218)
* feat: scroll sql editor tabs to end when longer than container width

* feat: more fine tuned

* feat: code clean up into hook

* chore: run prettier

* fix: remove remnant of old useEffect
2026-01-28 14:21:33 +00:00
Ali Waseem ea1b95d29b feature: batch and save operations for cell content updates (#42120)
* added initial queue operations and feature flag

* updated types

* added dirty state tracking on columns

* updated queue operations

* updated operation types and queue

* updated spacing

* removed on cancel

* updated to support saving

* updated to include eye details

* updated spacing for orders

* updated to support shortcuts

* added feature preview

* updated to unify queue methods

* added key generation

* used unique keys rather than random uuid

* updated based on code review

* operation key

* updated handle cancel

* updated remove operation button

* updated views for toast

* updated logic to support optimistic updates

* updated types

* code cleanup: remove LLM slop

* updated PR bug

* updated preview for logout

* updated based on code review

* removed use effect as it was causing problems

* fixed toast mounting away from sql editor

* removed toast for dedicated action bar

* cleaned up logic

* updated queue operations

* renamed method

* updated name for types

* updated comment

* fixed code rabbit solution

* added check for changed column

* added tests
2026-01-28 06:54:30 -07:00
Joshen Lim f6441d8d60 Fix host value in connect UI when RR + transaction pooler selected (#42242) 2026-01-28 21:14:04 +08:00
Alaister YoungandJoshen Lim 6714805612 [FE-2380] chore(studio): feature flag for disabling oriole creation (#42238)
* chore(studio): feature flag for disabling oriole creation

* obey the ai overlords

* Use tooltip instead

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-28 10:42:39 +00:00
Danny White 526337f1bd chore(studio): basic branching UI improvements (#42060)
* update admonition and button

* other instances

* misc

* misc

* pitr

* buttonVariant naming

* fixes

* rabbit

* rename buttonVariant to variant

* basics

* more touches
2026-01-28 18:33:04 +08:00
Joshen Lim fd90d7c733 Shift replication alpha access request CTA into DestinationPanel (#42239) 2026-01-28 18:00:01 +08:00
fadymak 8d93e986a7 fix: allow spaces in the name filter (#41788) 2026-01-28 17:25:58 +08:00
Joshen Lim dc31696c85 Remove alpha callout from replication page (#42203)
* Remove alpha callout from replication page

* PRETTY
2026-01-28 15:40:19 +08:00
Joshen Lim 2ce307130a Update API types and properly render replication lag in replica detail page (#42191)
* Update API types and properly render replication lag in replica detail page

* Forgot to add the api types
2026-01-28 15:34:01 +08:00
Charis 1d125f5b9d refactor(studio): remove unpaginated buckets list (#42216)
* refactor(studio): remove unpaginated buckets list from useBucketPolicyCount

* refactor(studio): remove deprecated useBucketsQuery
2026-01-27 13:15:47 -05:00
CharisandAli Waseem 5b83b714b9 fix(studio): remove bucket list query for useSelectedBucket (#42114)
* fix(studio): use paginated buckets query for useSelectedBucket

Part of the effort to migrate all buckets list queries to the paginated
version. This migrates the useSelectedBucket hook, which is used on the
bucket details page to fetch the bucket info.

* fix(studio): flash of stale content when switching buckets

There's a flash of stale content when switching between buckets in the
File Explorer. This happens since the change to useSelectedBucket,
because when the bucket changes, the new data is no longer available
immediately. It must be awaited, and meanwhile `columns` in global
storage state is stale. This commit adds a check for whether the state
is stale by checking the current ID against the stored ID.

---------

Co-authored-by: Ali Waseem <waseema393@gmail.com>
2026-01-27 09:41:47 -05:00
CharisandJoshen Lim 9caa0d548a feat(studio): clean up support form message (#42174)
* feat(studio): clean up support form message

Support form message currently has the studio version and dashboard logs
link appended to the end. On request from the Support team, we're moving
this to metadata fields so it won't be as distracting.

* Hide IncidentAdmonition if event is maintenance

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-27 08:50:52 -05:00
Jordi Enric eb85515acb minor percentage formatting fixes (#41923)
* support total percentage normalization and show idle time in cpu usage chart

* pretier

* improve test

* clarify in comment why new prop is necessary

* fix type error int est

* refactor to use max value instead of idle property, add more tests

* cleanup composed chart

* prettier

* fix tests

* react improvements

* remove unused stacking properties

* remove rest property references as it wont be used

* fix comment and max cpu desc

* test the resolvehighlightedvalue function

* undo unnecessary composedcharthandler change

* remove unnecessary comment

* minor db charts percentage formatting fixes

* move format check

* fix issue with conflict resolution
2026-01-27 13:07:39 +00:00
Joshen Lim 670b294615 Add error handling for deleting files in storage explorer (#42200)
* Add error handlign for deleting files in storage explorer

* Also error handle for deleteing folder

* Clean
2026-01-27 20:02:44 +08:00
Joshen Lim 164dcf3e92 Adjust disabled state while project is paused (#42096)
* Adjust disabled state while project is INACTIVE

* merge master, unlock add ons page if paused
2026-01-27 15:28:23 +08:00
CharisandJoshen Lim 3fcc8b51a1 fix(studio): schema copy bug in safari (#42161)
* fix(studio): schema copy bug in safari

The schema could not be copied to clipboard in Safari because of the
known problem where Safari does not allow awaits to happen before
copyToClipboard. Fixed by passing the promise directly to
copyToClipboard.

* chore(studio): add eslint rule to catch async copyToClipboard

* Apply suggestion from @charislam

* Smol fix

* Clean

* Revert

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-27 15:05:14 +08:00
CharisandJoshen Lim 9a506888c7 fix(studio): maintenance banner separate from incident banner (#42159)
* fix(studio): maintenance banner separate from incident banner

Right now, scheduled maintenance events also show up as incidents.
Created a separate banner for them so maintenance doesn't show up as an
incident.

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-26 13:13:40 +00:00
Danny White 5586be6fdb fix(studio): legal page buttons (#42149)
* basics

* adjustments

* format

* rabbit

* format
2026-01-26 16:20:29 +08:00
Danny White 19cf4bb4bf feat(studio): consolidate settings phase 2 (#37612)
* new slugs

* remove symlinks

* rabbit
2026-01-26 15:41:05 +08:00
Jordi Enric 39e2fd6906 new homepage: gate new usage section behind flag (#41964) 2026-01-26 06:53:34 +01:00
Joshen Lim ea8649b1a1 Validate against empty name in FileExplorerRowEditing.tsx (#42093)
* Validate against empty name in FileExplorerRowEditing.tsx

* Update test

* Fix

* Opt to revert changes if saving empty string

* Nit

* Attempt to write tests with claude

* Trim whitespace in FileExplorerRowEditing when saving
2026-01-26 13:24:29 +08:00
abc37edaa7 chore(studio): link directly to Postgres upgrade blockers (#41527)
* validation errors

* improvements

* deprecate notice bar

* consolidate upgrade warnings

* type fixes

* rabbit

* 📝 Add docstrings to `dnywh/chore/link-to-dropped-objects` (#41528)

* 📝 Add docstrings to `dnywh/chore/link-to-dropped-objects`

Docstrings generation was requested by @dnywh.

* https://github.com/supabase/supabase/pull/41527#issuecomment-3680610884

The following files were modified:

* `apps/studio/data/config/project-upgrade-eligibility-query.ts`

* New line

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Danny White <3104761+dnywh@users.noreply.github.com>

* Use API types instead

* Update API types

* Add manage replicas CTA to upgrade warning if unified replication and project has replicas

* Nit

* use actionable language

* gap

* simplify

* prettier

* Add URL

* better links

* add tables and encode links

* remove replication link

* nit ordering

* rabbit

* Small simplify

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-26 12:50:18 +08:00
Danny WhiteandJoshen Lim a6c9b6b99b chore(studio): improve backup text (#42058)
* date fix

* better tooltip

* better dialog

* fix

* better dialog

* all variations of admonition

for posterity

* cleanup

* inline admonition

* fix

* additional blog post fixes

* Update backups learn more cta URL

* Revert

* Update tooltip content

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-26 11:58:53 +08:00
Joshen Lim a4c10ae87c Chore/allow users to access edge functions while project is paused (#42097)
* Allow edge functions pages to be accessible while project is paused or restoring

* nit
2026-01-26 11:51:36 +08:00
Illia Basalaiev 17dde2e881 fix redirect after unsaved changes in reports (#42124) 2026-01-24 13:00:37 +07:00
Charis 842722def8 feat(studio): add api keys to connect modal (#42118)
Add a new tab to Connect Modal to display API URL and public
(publishable) API keys directly.
2026-01-23 13:25:41 -05:00
Charis b7203bc349 fix(studio): use paginated buckets endpoint for command menu (#42080)
The command menu search option uses the unpaginated version of the
buckets endpoint, which times out / causes jankiness when users have
tends of thousands of buckets.

Switch to using the paginated version. The old behaviour is preserved,
where only the first 10 results are shown, and the user has to specify a
more specific search query to get other buckets. This is for UX
simplicity, since this is a convenience feature, and fully
infinite-loading search is available in the full Storage interface.
2026-01-23 15:18:44 +00:00
Jordi Enric 0f6b5a8f7f feat: make edge fn header sticky FE-2127 FE-2386 (#42100) 2026-01-23 15:33:02 +01:00
Ali WaseemandJoshen Lim 78e0f19d6a fix: add description of column on header name (#42082)
* fix: add description of column on header name

* Simplify

* Attempt to fix test

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-23 07:23:07 -07:00
Joshen Lim 1536ee1064 Joshen/fe 2287 summary nodegraph in replication page (#42042)
* init

* Init 2

* Finalize

* bit more details in the summary graph

* Moreeee details

* Clean

* 🧹

* FIIIXX

* Fix rabbit

* Simplify long polling logic to only depend on database for destinations UI

* ADdress rabbit

* Address feedback
2026-01-23 17:59:52 +08:00
Joshen Lim 021c5c1634 chore(studio): Update GH branch field input for CreateBranchModal to debounce the same behaviour as EditBranchModal (#42059)
Update GH branch field input for CreateBranchModal to debounce the same behaviour as EditBranchModal
2026-01-23 17:09:07 +08:00
Joshen LimandAlaister Young fbfdd0d311 Fix GH integrations authorize CTA (#42057)
* Fix GH integrations authorize CTA

* Update apps/studio/components/interfaces/Settings/Integrations/GithubIntegration/GithubSection.tsx

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>

---------

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
2026-01-23 16:17:44 +08:00
Danny White e96199081b feat(studio): show SQL snippet description (#42090)
* show browser title

* show both name and desc

* cleanup

* linebreak and format
2026-01-23 16:11:28 +08:00
Danny WhiteandJoshen Lim 8867183cdd chore(studio): handle additional dynamic button variants (#42061)
* update admonition and button

* other instances

* misc

* misc

* pitr

* buttonVariant naming

* fixes

* rabbit

* rename buttonVariant to variant

* rabbit

* fixes

* format

* Nit

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2026-01-23 15:55:02 +08:00
Joshen Lim bddd04bbc6 Use new action runs endpoints (#41808)
* Use new action runs endpoints

* Clean up

* Nit

* Unify DiffEditors

* Fix TS

* Fix TS

* Fix merging
2026-01-23 15:29:02 +08:00
Ali Waseem f4409d4ac5 fix: updated explain to not crash on non text formats (#42076)
updated explain to not crash on non text formats
2026-01-22 12:26:45 -07:00
Charis d27bb74258 test(studio): add tests for data api toggles (#42051)
* test(studio): add tests for data api toggles
2026-01-22 12:46:54 -05:00
Charis d34cc65e30 fix(studio): handle large cron.job_run_details table gracefully (#41992)
* fix(studio): check job_run_details size in cron display

When cron.job_run_details grows too large (200k+ rows), loading the
cron jobs overview can timeout and affect other queries by pulling
excessive data into shared buffers.

This change:
- Estimates table size using pg_stat before fetching cron jobs data
- Shows a cleanup notice when the table exceeds the threshold
- Provides batched deletion using ctid ranges to avoid buffer pollution
- Allows scheduling an automated daily cleanup cron job
- Handles timeout errors gracefully with a "suspected overflow" state

The useCronJobsData hook now returns a discriminated union status that
tracks loading, estimate-error, overflow-confirmed, overflow-suspected,
and ready states, allowing the UI to respond appropriately to each case.

* fix(studio): use index when querying cron.job_run_details

cron.job_run_details is only indexed by runid, not by start_time. Change
the query to use the runid index (which gives the same result, since
runid is auto-incrementing).
2026-01-22 11:17:49 -05:00
kemal.earth ee25ba20dc feat(studio): replace auth overview charts (#41464)
* feat: replace usage metric cards with new charts

* feat: use new chart components for auth api and error codes

* style: some tweaks to the two tables

* fix: padding around empty states

* feat: smol adjustment

* fix: add aria label to go to logs tooltip

* fix: diff value

* fix: status code method font colour

* fix: actions onClick
2026-01-22 12:56:32 +00:00
kemal.earth 434d8735f3 feat(studio): swap area chart fills for gradients (#42063)
* feat: swap area chart fills for gradients

* chore: further tweaks

* fix: light mode gradient stop thanks coderabbit
2026-01-22 12:53:13 +00:00
Jordi Enric 6fe990c658 papercut: add units to api charts (#42027)
* add units

* prettier
2026-01-22 13:34:34 +01:00
Danny White 69f15cc788 chore(studio): update upgrade to pro admonition button variants (#42056)
* update admonition and button

* other instances

* misc

* misc

* pitr

* buttonVariant naming

* fixes

* rabbit

* rename buttonVariant to variant

* rabbit
2026-01-22 19:04:13 +11:00
f293036ec7 Add UX guardrails for edge functions RE unsaved and unimported files (#41921)
* Add UX guardrails for edge functions RE unsaved and unimported files

* useLatest on hasUnsavedChanges

* Remove checking of unimported files + add VS code like indicator for modified and unsaved files

* Nit

* Fix TS

* Fix

* nit

* Fixes

* Nit

* move hasUnsavedChanges on demand

* code rabbit nit

* code rabbit nit 2

* prettier

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
Co-authored-by: Danny White <3104761+dnywh@users.noreply.github.com>
2026-01-22 13:31:28 +08:00
Ali Waseem 9e1df69853 fix: handle errors better in index advisor (#42043)
* fix: handle errors better in index advisor

* added admonition
2026-01-21 11:11:39 -07:00
Joshen Lim b55c399c42 Fix API keys copy button for safari (#42036)
* Fix API keys copy button for safari

* nit
2026-01-21 09:45:35 -07:00
Jordi Enric d982417830 query perf improvements FE-2223 (#42026)
* query perf improvements

* info tooltips

* filter fixes

* prettier wont work in cursor for some reason

* fix type error

* rm clear all filters button, its too much

* prettier
2026-01-21 09:01:10 +00:00