Iterator.prototype.map() is only newly baseline available, which is
causing problems with older browsers.
Switched to Array.from(<iterator>) since that (and Map as an iterable)
date from 2015/2016
The global storage size validation depends on an unpaginated buckets
query to determine whether it is lower than any individual bucket's
cutoff. This causes a problem for users with tens of thousands of
buckets.
There's a bit of a UX/performance problem here, because in order to
determine whether any bucket's `file_size_limit` exceeds the global
setting, we need to get the max `file_size_limit` of `storage.buckets`
-- however, that column is not indexed.
My workaround is:
- Below a certain threshold (10,000) buckets, the query for max
`file_size_limit` is automatically run on form submit.
- Above that threshold, the user must confirm whether they want to run
the query. They're still allowed to change the storage config without
running it -- this does open a loophole where they can have a global
storage setting lower than an individual bucket's file size limit, but
though this is a potentially confusing situation, it's not strictly an
error.
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* add codex and minor fixes
* sort clients by popularity
* fix rebase
* add codex and minor fixes
* add onCopy handle to other mcp clients
* update configs for different clients
* add codex and minor fixes
* sort clients by popularity
* feat: add Gemini CLI client configuration
- Add GeminiMcpConfig type
- Add Gemini CLI client to MCP_CLIENTS array
- Support both direct CLI installation and extension installation methods
- Include authentication instructions via /mcp auth supabase
- Link to Gemini CLI MCP server documentation
* add gemini logos
* add onCopy handle
* fix httpUrl
* fix format
* fix auth command
* add v0.20.2 disclaimer
* Update packages/ui-patterns/src/McpUrlBuilder/constants.tsx
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
* add gemini logo to studio and minor fixes
* nit: add comment to gemini config
---------
Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
* Fix the Vercel avatar image when going back to the URL.
* Fix portal issues on org and project linkers.
* Remove misleading comment.
* Use png format when requesting Vercel avatar.
* Fix a type error.
* Fix a missing import.
---------
Co-authored-by: Ali Waseem <waseema393@gmail.com>
* Add a generateDeterministicUuid function and tests for it.
* Use the new function and generate an id automatically when creating a snippet.
* Clean up extra code.
* Don't pass in id when creating a snippet.
* Add generateSnippetTitle function and use it instead of fixed string.
* When SQL editor is open, generate an id form a generated snippet title.
* Add id override for SQL editor to avoid flash when saving the snippet.
* Merge the two generate functions to happen in the same useMemo block.
* Save the snippet to the API when adding it.
* Minor fixes from CodeRabbit review.
* Hide new folder CTA in sql editor for self-hosted
* Don't add the snippet for saving, just set the value.
* UpsertContentPayload always has an id.
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Incident status banners/alerts should be automatically determined from
the status page, rather than being manually configured.
Adds a new endpoint, /api/incident-status, to return information about
active incidents. This information is fetched from the StatusPage API.
The endpoint is cached to reduce number of third-party API requests.
Co-authored-by: Ali Waseem <waseema393@gmail.com>
- Adds missing log and active compute hour insights in both usage summary and daily stats (only Platform Plan)
- Adds database size usage insights for platform orgs
- Hide the circular progress bar if the usage item has no included usage (otherwise always 100% filled with any usage)
- Hide percentage if usage item has no included usage
- Adjust upcoming invoice breakdown to properly handle compute and active compute hours
- Hide subscription change button for platform/enterprise orgs (we already have a callout saying they gotta reach out to us)
- Adjusted database size insights for platform to no longer display 0.5 GB per project being included
## Summary of changes
Buckets policies page at /project/_/storage/files/policies now uses the
paginated buckets endpoint to fetch buckets.
## Before
Used a non-paginated query.
## After
To support a paginated query, we now have:
- Infinite scroll loading behavior
- Fixed some of the buckets utilities to account for policy references
to buckets that haven't loaded yet
The join organization page flashes the sign in screen briefly because it
does not check for loading status. Fixed so it goes directly from
loading skeleton to join confirmation view.
Resolves FE-2220