Commit Graph
149 Commits
Author SHA1 Message Date
Joshen Lim 36637a8c94 SQL editor persist open close state of each section (#33112)
* SQL editor persist open close state of each section

* Address feedback
2025-01-28 17:09:17 +08:00
Ivan Vasilov 98ca85156a chore: Use sql-formatter for formatting all SQL in the studio (#33071)
* Bump the sql-formatter dependency.

* Add a function formatQuery which is a wrapper around sql-formatter.

* Replace all formatSQL features to use the new function formatSql.

* Remove unneeded RQ for formatting.

* Small fix.
2025-01-27 13:04:31 +01:00
Alaister Young c4b6becdb9 chore: sentry capture profile creation errors (#33048) 2025-01-23 18:04:37 +00:00
Joshen LimandSaxon Fletcher 90a939506c Feat/reports v2/misc wrap up (#32989)
* Add telemetry for add SQL block and dragging SQL block from assistant

* Add UI indication for drag support block in Assistant

* Add UI indication for SQL block support in SQL editor Chart options

* Feat/reports v2/create report (#33022)

* re-add chart label

* fix undefined value

* remove mouse over on chart

---------

Co-authored-by: Saxon Fletcher <saxonafletcher@gmail.com>
2025-01-23 13:25:31 +08:00
30c390c19c chore: unify telemetry event sending (#32861)
* chore: unify telemetry event sending

* organize some imports

* remove final useTelemetryProps

* add www telemetry actions typing and docs

* remove gaevents

* fix build

* move telemetry identify into PageTelemetry

* fix telemetry constants import

---------

Co-authored-by: Pamela Chia <pamelachiamayyee@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-01-22 23:52:32 +08:00
Long HoangandPamela Chia feaf64e55d Fix event grouping (#32928)
* fix: pass ref and slug for event grouping

* fix: add missing imports

* fix: correct types

* remove duplicate import

* fix: duplicates and extra events from merge

---------

Co-authored-by: Pamela Chia <pamelachiamayyee@gmail.com>
2025-01-22 22:41:41 +08:00
Sanden GockaandAlaister Young ecd7b5f4dd Prototype: Enhance Supabase Studio User Impersonation with External Auth Support (#32786)
* feat: add support for impersonation with external auth

* update typescript type

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2025-01-22 18:00:58 +08:00
Joshen Lim 3440dc9c95 Feat/reports v2/standardize block design (#32936)
* Standardize block designs

* Clean up

* Add warning threshold colors for infra-monitoring stats

* Address all other comments

* Swap create custom report to use PUT
2025-01-21 20:56:13 +08:00
Alaister Young 7a73817316 fix: sign users out if profile request 401s (#32955)
* fix: sign users out if profile request 401s

* remove console.log
2025-01-21 12:25:56 +00:00
Joshen Lim 0129c94cf1 ReportsV2 P2: Support adding SQL snippets to Reports (#32851)
* midway

* Render, save, and save configuration of SQL blocks

* Fix re ordering of blocks not showing save UI

* Remove console log

* Smol fix

* Add queryHeight param to queryBlock

* Reinstate telemetry for run query clicked from assistant

* Add

* Add resizing

* Change compactType

* Fix switching reports doesnt update

* ONly show date picker if theres a chart thats using daily stats or infra monitoring

* Fix client crash

* Smol update
2025-01-20 15:49:32 +08:00
9d534c9f5a fix: response error codes (#30581)
* fix: response error codes

* upgrade docs

* remove request url modification middleware

* move api routes for self-hosted to platform folder

* remove some lib/common/fetch usage

* docs: use middleware for openapi-fetch (#30600)

Get rid of the unauthedAllowedPost function (I don't think there's any harm in letting any requests that require authentication to just 403, they should be disabled at the React Query level and if not they will fail gracefully enough...)

* fix local count query

* add default values for clone mutation

* fix ts and codegen

* add missing lodash dep to playwright tests

* Fix the playwright tests to match the new folder structure for selfhosted variant.

* remove unused import

* Remove unused state

* remove unused sql debug mutation

* remove unused export

* fix notifications query

* fix jwt updating status

* fix typescript

* save sql snippet after renaming

* update codegen & fix ts error

* override array querySerializer

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-01-20 11:27:38 +08:00
Ivan Vasilov 84311e7d09 chore: Fix the env vars for turbo (#31104)
* Check all env vars for studio and list them properly in turbo.json.

* Check all env vars for design-system.

* Fix all env vars for www.

* Fix all env vars for docs.

* Add the rest of the env vars from the packages folder.

* Revert the changes in the sign-in pages.

* Remove useless files. Fix a comment.

* Fix the links in extensions page to always point to supabase.com/docs.

* Change the feature flag rewrite in studio to point to supabase.com/.flags endpoint.

* Replace NEXT_PUBLIC_VERCEL_URL with NEXT_PUBLIC_VERCEL_BRANCH_URL because it's more stable on vercel.com. Remove it from apps where it's not needed.

* Add env vars from packages. Move all passthrough env vars to env vars since they're stable (don't change between pushes).

* Revert changes of studio files.

* Minor fixes for the merge commit.

* Replace all uses of SITE_URL with LW_URL (they're the same). SITE_ORIGIN is not constructed from env vars. LW_URL is constructed from SITE_ORIGIN and launch_week string.

* Use SITE_ORIGIN when fetching the ticket-og.
2025-01-17 11:08:14 +01:00
4278bd4ec1 fix: bump auth-js version to v2.67.3 (#31217)
* fix: bump auth-js version to v2.67.3

* chore: add supabase/auth and supabase/dashboard as codeowners

* Revert "chore: add supabase/auth and supabase/dashboard as codeowners"

This reverts commit 57fc5776ba.

* bump supabase-js version

* import user type from single gotrue

* fix auth-js version in studio

* remove auth-js dep in studio

* fix ts

* use catalog versions

* fix ts

* Bump realtime-js version to avoid having 2 versions.

* Add @supabase/realtime-js to the pnpm catalog.

* upgrade realtime-js

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2025-01-17 14:54:21 +08:00
d633ced97d Feat/new project creation experiment (#31237)
* some early ideas

* better approach

* fix globe stuff

* add initial step

* reset and submit button for chat

* cleanup

* remove www

* more clean up

* mobile and more cleanup

* fixes

* update advanced and security

* fix project checks

* connect form

* fix reset and tidied up other things

* add layout options

* a/b test

* add offset

* add ab test

* remove www packages

* remove www

* package

* update coordinates

* feat: create ProjectCreationInitialStepSubmittedEvent

* feat: add event for capturing intention of prompting

* fix: bring pnpm-lock up to date

* fix ts errors

* fix globe

* fix globe animation

* fix ts

* remove imports and tools

* update module resolution

* global redirect

* delay rendering

* Update apps/studio/pages/new/[slug].tsx

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

* take directly to v2 via project create dropdown

* move redirect to useEffect

* feat: distinguish events between initial and second step

* feat: emit an event when create project is clicked on new/v2

* fix: correct event type defs

* remove unused imports

* Various clean ups

* improvements

* Minor refactors

* clean up

* ts fixes

---------

Co-authored-by: Long Hoang <1732217+loong@users.noreply.github.com>
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-01-17 09:59:21 +10:00
Joshen LimandSaxon Fletcher 0710d62665 ReportsV2 P1: Add Query block component (#32738)
* Create QueryBlock component which will be a shared component used in AI Assistant and Reports

* Deprecate AIAssistantPanel/SqlSnippet.ts

* Fix user messages not getting persisted, only assistant messages

* Add loading state to for query results in QueryBlock + hide block view configuration if query block is not chart

* Address feedback

* Fix TS

* fix double border

---------

Co-authored-by: Saxon Fletcher <saxonafletcher@gmail.com>
2025-01-15 13:08:26 +08:00
Joshen Lim e420a48826 Check for profile in projects, organizations and permissions query (#32759)
* Check for profile in projects, organizations and permissions query

* Remove unused telemetry function
2025-01-15 12:21:13 +08:00
Alaister Young 4577389177 chore: send feature flags for page events (#32590) 2025-01-13 13:08:50 +08:00
Joshen Lim eb42b2c241 Persist last selected database only for sql editor via local storage (#32598)
* Persist last selected database only for sql editor via local storage

* Add missing useEffect
2025-01-09 10:55:14 +08:00
Long Hoang 038c52dd9a feat: enforce event type defs (#32595)
* feat: enforce event type defs

* fix: correct typedefs for cron events

* fix: correct typedefs for assistant events
2025-01-07 17:08:07 +08:00
Joshen Lim 394e8302f8 Fix impersonation and searching users escape single quote (#32603)
* Fix impersonation and searching users escape single quote

* Smol fix

* Fix count
2025-01-07 10:52:30 +07:00
Pamela Chia 35286ed464 chore: add ai assistant event docs (#32394)
* chore: add ai assistant event docs

* fix: added more details on ai assistant suggestion events

* fix: clarify page in description

* fix: rename and re specify the events
2025-01-02 20:01:21 +08:00
Long Hoang ffe9a71f89 chore: document sign up/sign in and realtime events (#31394)
* chore: add event defs for realtime events

* chore: document sign in and sign up events

* chore: update docs to reflect changes on sign in event
2024-12-27 17:19:14 +08:00
Pamela ChiaandLong Hoang 65050e202b chore: add sql editor telemetry docs (#31239)
* chore: add sql editor telemetry docs

* fix: quickstartName

---------

Co-authored-by: Long Hoang <1732217+loong@users.noreply.github.com>
2024-12-26 15:56:09 +08:00
Paul Cioanca f2b1586450 chore: temporarily change default region to us-west-1 (#31388) 2024-12-25 22:22:37 +02:00
Long Hoang 551d172523 fix: add missing feature preview enabled event def (#31234) 2024-12-19 12:59:59 +08:00
Long Hoang e31ce6d326 feat: add feature preview events (#31215) 2024-12-18 21:33:02 +08:00
Chris Gwilliams 2f63366b44 remove swap usage from DB report (#30877) 2024-12-18 15:00:35 +02:00
Joshen LimandPamela Chia 3a89c81b63 Add feature flagging support via PH (#31101)
* wip: use endpoints

* Set up PH feature flag system

* Clean up

* Clean uop

* Check

* Fix tests

---------

Co-authored-by: Pamela Chia <pamelachiamayyee@gmail.com>
2024-12-18 10:27:15 +08:00
Long Hoang c6d0f487e4 chore: remove old event definitions (#31193) 2024-12-17 16:34:58 +08:00
Long HoangandIvan Vasilov df68b2ef22 feat: show potential way to document event (#31119)
* feat: show potential way to document event

* chore: add cron event docs

* chore: rename cron job history event

* chore: remove as typecasting and add event definitions to type union

* fix: resolve type error from potentially missing properties field in events

* fix: remove typecast

* Update imports.

* Update package-lock.json (leftover changes from previous PR).

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2024-12-17 09:17:47 +08:00
Joshen Lim ec72485ca9 Standardize PH events (#31067)
* Standardize PH events

* Prettier

* Reinstate send events for sign in and sign up
2024-12-12 16:53:00 +08:00
Monica KhouryandJoshen Lim ff3522f856 chore: Remove auth email warning for org members (#31043)
* chore: Remove auth email warning for org members

* Edit auth warning on Settings page

* Clean up

* Add comment

* More clean up

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-12-11 12:56:10 +08:00
f650b5ae67 Feat/connection string revamp (#30572)
* add new page

* moar

* moar

* added icons

* improve icons

* moved connect dialog to main header

* update text

* smaller screen support

* moar

* add python and sqlalchemyString

* moar

* add IPv4 warning

* moar

* Delete pooler-icons-v2.tsx

* tidy

* Delete DatabaseSettings.tsx

* tidy

* tidy

* moar. Session pooler is de-prioritized

* Update DatabaseConnectionString.tsx

* type issue

* moar

* Update DatabaseConnectionString.tsx

* Spelling

* Clean up LayoutHeader

* Clean up ConnectionPanel

* Clean up ConnectionParameters

* Last batch of clean up

* Fix loading state padding

* Shift old Connect files to new Connect folder outside of Home

* Final clean up

* Smol fix

* FIX

* Fix button link

* Fixes

* Lint

---------

Co-authored-by: Terry Sutton <saltcod@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-12-05 17:23:14 +08:00
Joshen Lim ace71494f4 Add telemetry for cron (#30874)
* Add telemetry for cron

* Update
2024-12-04 15:47:58 +08:00
377e224983 Feat/save assistant messages (#30823)
* save chat messages

* just ai state in subscribe

* fix hydration issue

* check for url param to open assistant

* fix dashboard history

* fix ts

* safeguard against parsing errors

* Fix the type errors.

* Another try.

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2024-12-03 09:23:37 +01:00
Joshen Lim d88cb12794 Remove assistant V2 from feature preview (#30779)
* Remove assistant V2 from feature preview

* Hide fix with assistant button in rls editor
2024-12-02 22:03:31 +08:00
Joshen Lim d8a57c1c7e Add settings for queues: toggle expose through postgrest + permissions via table privileges (#30564)
* Add settings for queues: toggle expose through postgrest + permissions via table privileges

* Ensure appropriate grants are granted when toggling, and revoked when disabling

* Update to use queues_public schema

* Update queue schema to pgmq_public and add/remove from data api when enabling/disabling

* Fix query for retrieving toggle state

* Add schema invalidation

* Remove hard code

* Use QueuesSettings from Queues folder, remove from NewQueues

* Update SQL for toggling exposure + support RLS enabling

* Support toggling RLS for a queue

* Update admonition copy in queues for enabling/disable postgrest exposure

* Add custom RLS policy for queue

* Minor style fixes

* Fix

* Remove hard code

* Update RLS to add message regarding relevancy only if exposure to PostgREST is enabled

* Update message in exposing queues to postgREST

* Address feedback

* Address feedback

* Don't revoke postgres role stuff

* Remove hard code

* Update copy

* Update

* Address Oli's feedback, ensure that queues ALL have RLS enabled prior to allowing exposure to PostgREST

* Address remaining feedback

* Remove hardcode

* Update

* Address feedback
2024-11-27 12:10:33 +08:00
Joshen LimandSaxon Fletcher 12d92aed99 Assistant V2 (#30523)
* start

* added panels

* remove stuff

* fixes and refinements

* clean up

* remove old assistant panel

* resizable assistant kinda

* use icon

* Add missing package

* remove canvas

* add suggestions

* updated empty state if no tables exist

* fix table condition

* Implement diffing if using assistant in sql editor

* Reinstate old assistant in SQL editor if feature preview is off

* pane size adjustment

* assistant button corners

* Add SQL snippet content to assistant if opening assistant in sql editor

* Add the necessary checks for opt in and hipaa

* revert adding snippet to assistant when opening assistant in sql editor

* Add cmd i shortcut

* Add admonitions for when disablePrompt is toggled on, and if no api key is set. Add footer note RE rate limitation

* Bump ai package in packages

* some fixes for backwards compability depending on feature preview toggled

* Rename feature preview property for new assistant

* Smol fix

* Prevent SQL snippet from running until message is finished

* only loading last message

* fix z-index

* save chat state to global state

* add debug to failed ai queries

* Add basic contextual invalidation

* Add explain code action to SQL editor

* Add link to abort ongoing queries from SqlSnippet

* Update feature preview content

* Fix

* Fix

* Fix

* Te4st

* Fix tests

* ONly show ai button within a project

* Fix PH tracking

* Beef up a bit more event tracking

* Rough fix to padding when assistant is open

* A bit more telemetry stuff

* Update prompts

* fix rls editing via assistant

* Update generate-v3.ts

prompt to get auth schema too

* Add policy satement to assistant when editing

* Address all comments

* fixc

* Fix SqlSnippet not taking full width on larger viewports

* Adjust max width

---------

Co-authored-by: Saxon Fletcher <saxonafletcher@gmail.com>
2024-11-25 18:50:56 +08:00
Joshen Lim ecf001ab90 Refactor restore to new project by breaking into smaller components (#30604)
* Refactor restore to new project by breaking into smaller components

* Shift generateStrongPassword into a utils

* Update each notice component in restore to new project to be more consistent

* Add long polling in restore to new project

* Call refetch
2024-11-22 16:42:12 +08:00
Kevin Grüneberg e5c87ea560 chore: remove kpsVersion property (#30350)
KPS has long been removed and the property is never set for projects
2024-11-07 16:28:21 +08:00
Joshen Lim 8f4f7e3e57 Chore/deprecate old users management UI components (#30224)
* Remove usage of userManagementV2 flag and deprecate old user management UI component

* Remove usage of API users endpoint, to use the same SQL query as users-infinite-query

* Use user-infinite-query in UserImpersonationSelector and deprecate users-query

* Fix import statements
2024-11-05 09:10:10 +08:00
Jonathan Summers-MuirandJoshen Lim 9f420962e1 Feat/compute and disk (#30068)
* inited. added disk config to a new page

* add instances

* move moar

* moved things around. billing badges updated. compute added

* tidy

* new components

* form now dynamically updating itself

* updated compute form. moved warning panels. added collapsible for advanced options

* review dialog now only showing what is relevant

* Update DiskManagementForm.tsx

* compute sizes now a reccomendation

* fix old form

* started adding flags

* removed unused code. fixed issue with IOPS price showing on smaller compute

* moar clearning

* IOPS logic wrong way round

* type fixes

* start adding better error handling

* TIDY

* moved everything to own file

* tidy

* fix hydration issue

* moved some components around

* clean up

* inline errors

* update form message

* Update DiskManagementForm.tsx

* error fields fixed. some formatting issues. nano added as an option

* fix constants

* add some plan restrictions

* moar

* units updated. labels updated

* Update DiskManagement.schema.ts

* fix a ton of type issues

* text udpates

* add panel to suggest switching to io2

* more notice board stuff

* number formatting. moved a file

* Update DiskManagementForm.tsx

* remove console logs

* upgrade comms. more type fixes

* add empty states for the old areas

* more links

* updated some label issues

* hide labels when chart is active

* Update DiskManagement.utils.ts

* Delete next-env.d.ts

* Update DiskManagementForm.tsx

* Update DiskManagement.schema.ts

* text updates

* Update DiskManagement.constants.tsx

* Update next-env.d.ts

* Update next-env.d.ts

* Small clean uop

* Clean up empty files

* Clean up spelling

* Clean up more

* Fix typo in file name

* Clean up import statements

* Update DiskManagementForm.tsx

* fix issues

* Update ProjectLayout.tsx

* Remove unused import

* Fix

* Address nit

* Update database.tsx

* remove supress toast

* Update DiskManagement.schema.ts

* Update database.tsx

* change upgrade comms

* Update DiskManagementPanelForm.tsx

* fixes

* fix button size on old form

* Update DiskManagementForm.tsx

* Update StorageTypeField.tsx

* update labels on compute

* dont show banner when infra is FLY

* update comms. hide disk config for FLY

* Fix TS

* Last round of clean upo

* fix message state

* fix message

* Fix TS

* Update DiskManagement.utils.ts

* fix errors

* Update BillingChangeBadge.tsx

* fixed some label issues

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-04 09:05:37 +00:00
Joshen Lim 7016b9db90 Smol tweak to consent toast on mobile (#30195)
* Smol tweak to consent toast on mobile

* Use useConsent hook from packages in dashboard, and remove manual calling of ConsentToast + deprecate dashboard's copy of telemetry local storage key

* Attempt to fix playwright tests

* Fix
2024-11-01 17:25:40 +08:00
Alaister Young 7e360731a3 fix: api types + remove old telemetry (#30096)
* fix: api types + remove old telemetry

* SendEventPH -> SendEvent

* address feedback
2024-10-25 20:47:31 +08:00
Joshen Lim 0070265e6d Chore/assistant tweaks (#30074)
* Add cmd i to close the assistant

* Update command in side nav

* Add kill switch for sending assistant prompts

* Add basic telemetry around quick sql editor assistant

* Fix
2024-10-25 09:57:09 +08:00
Joshen Lim f521109ce2 Chore/database functions v2 (#29969)
* Init AiAssistantPanel

* Temp

* Temp

* iterating on assistant ux

* More spiking

* Tweaking...

* Moar tweaking..

* Even more tweaking

* Tweek

* More tweaks

* Final tweaking...

* TWEAK

* Spelling

* Fix

* Assistant error handling and small bug fix in context for message

* Add feature flag

* Fix

* Address all feedback

* Minor
2024-10-23 16:43:38 +08:00
Ivan Vasilov 92955d5555 chore: Bump sentry to v8+ (#29896)
* Bump sentry to v8.

* Fix all obsolete APIs.

* Fix the sentry configs.

* Add pages for testing sentry.

* Add missing imports to sentry.config file.

* Add base path to the api path.

* Remove extra files.
2024-10-17 11:39:06 +02:00
divitandJoshen Lim 99c147a56c feat: support for restarting and resizing statuses (#29881)
* start using restarting and resizing statuses

* pretty 1

* Minor updates

* Small revert, to prevent conflicts

* PRETTY

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-10-17 11:52:22 +08:00
Joshen Lim cdb07346bc Update PH consent banner (#29891)
* Update PH consent banner

* Fix
2024-10-15 16:32:37 +08:00
Joshen Lim d455cda085 Fix create profile not triggering (#29790) 2024-10-09 13:03:50 +00:00