Commit Graph
72 Commits
Author SHA1 Message Date
Saxon Fletcher 9f718e904f Feat/assistant scroll (#31042) 2024-12-11 07:00:29 +10:00
Saxon Fletcher ba372c349d Feat/assistant refinements 3 (#31015)
* limit local storage messages

* add tool for getting database functions

* reduce loading jitter in assistant
2024-12-09 17:02:39 +10:00
Bobbie Soedirgo f5c0a4c899 fix: only use MAINTAIN for table privileges if PG17+ (#30998)
* chore: use @supabase/pg-meta for table privileges queries

* fix: only use MAINTAIN for table privileges if PG17+

* chore: run prettier
2024-12-08 18:58:29 +01:00
Joshen Lim 7ca43d8919 Chore/fix error handling in generate v3 (#30913)
* Fix error handling in generate-v3 endpoint

* Lint
2024-12-05 15:40:23 +08:00
Saxon Fletcher a92e34d7a4 dont send current table or schema if not opted in (#30793) 2024-12-02 20:51:29 +08:00
Saxon Fletcher ccb26246f4 let the assistant decide when to run (#30789)
* let the assistant decide when to run

* remove log
2024-12-02 21:47:46 +10:00
Saxon FletcherandJoshen Lim fcfc1cf38f Assistant refinements (#30759)
* message enter

* auth prompt

* style changes to message

* header assistant button

* more auth prompt

* prompt

* prompt user refine

* iteration of read only

* Add basic tests for AIAssistant.utils

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-12-02 14:46:11 +08:00
Saxon FletcherandJoshen Lim 8c3da2ed95 More assistant refinements (#30730)
* ai refinements

* ui fixes

* space

* reduce dot height

* Fix prop type issue

* Assign allowHoverEffect to ai assistant button and panel

* Lint

* Some lints

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-29 20:31:02 +10:00
Saxon FletcherandJoshen Lim aea64c9a07 Assistant refinements (#30685)
* empty state refinements

* specify js conversion prompt

* placeholder state

* update dot color

* Lint

* ADjust padding

* Lint imports

* adjust prompt

* revert padding

* wrap line prop in code block

* fix margin

* use sql icon

* margin

* add chart prompt

* Add prevent default behaviour

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-28 16:37:54 +08:00
Saxon FletcherandJoshen Lim 2bcc17d514 Feat/assistant convert supabasejs (#30648)
* add ability to convert sql to js

* remove console

* Merge master + small style fix

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-27 09:56:46 +10:00
Saxon FletcherandJoshen Lim 72910fc30f Feat/assistant additions (#30647)
* show thinking if last message is empty

* sql toggle copy and border fix

* add table and schema context

* add suggestions for policy

* Add snippet content to ai assistant if on sql editor and assistant is open

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-26 20:17:54 +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 55c4dffda7 Chore/update create and update user to use platform endpoints (#30379)
* Refactor create and update user to use platform endpoints

* Update perms

* Fix self host endpoints

* Fix
2024-11-13 09:19:37 +08:00
Terry SuttonandJoshen Lim 95219d3e2a Chore/cron nl (#30345)
* Add NL input

* Add chart to sidebar

* Better loading animation

* Redo api route to not use edge

* Remove edge stuff

* Allow sheet to close

* Cleanup

* Adjust loading state

* Add timezone

* CR comments

* Replace query with useCompletion

* Set the form value

* Tiny clean up

* Tinyyyyy tweaks

* Fix missing syntax

* Smol refactor

* Fixy

* Remove console log

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-12 11:55:01 -03:30
Joshen Lim 225d461381 Hook up RLS to new assistant if feature flag is enabled (#30357)
* Hook up RLS to new assistant if feature flag is enabled

* Reset conversation if opening a different entity

* Add prompt to use alter policy if policy definition is provided

* Remove console log
2024-11-08 18:03:30 +08:00
Alaister Young 12cc4e5fbc chore: use service versions endpoint (#30352)
* chore: use service versions endpoint

* update types

* fix types

* fallback postgres version for unknown images
2024-11-08 11:17:16 +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
Ivan VasilovandJoshen Lim f29003e0e7 fix: Use protocol property when building API url (#30332)
* Fix the types for API settings to include protocol.

* Use the protocol property in all usages of endpoints.

* Update

* Lint

* Revert changes to retrieving protocol

* Remove console.logs

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-11-06 22:22:24 +01:00
Joshen LimandAlaister Young 3eb5659a94 Fix missing endpoint for self hosted (#30312)
* Fix missing endpoint for self hosted

* Add middleware

* Update apps/studio/data/config/project-settings-v2-query.ts

---------

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
2024-11-06 14:25:15 +08:00
Terry SuttonandJoshen Lim d30ec48b50 Chore/self hosted assistant disabled (#30198)
* Add a message if openai_api_key not set

* Fix disabled state

* Some fixes

* Add same check in global assistant

* Remove check for api key for platform

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-10-31 09:19:03 -02:30
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 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 c083b3b4ab fix: Fix the snippets loading in local environment (#29750)
Add api routes to make the snippets v2 "work" as it did before.
2024-10-14 13:17:11 +02:00
Andrew Valleteauandjingsam c86a837283 fix(studio): views filtering on local studio experience (#29646)
* fix: only list views, foreign tables, material views in selected schema

* fix(studio): views filterings on local studio experience

---------

Co-authored-by: jingsam <jing-sam@qq.com>
2024-10-07 19:11:33 +02:00
Terry Sutton a40ccd11bc rls changes (#29118)
* Inital setup

* Add suggest feature to the RLS Assistant

* Add AI button

* Use existing policies in AI editor

* Remove old feature preview

* Cleanup

* Tooltip

* Update

* Change panel width

* Fix type

* Fix types again

* Flag cleanup

* Add tooltip

* Cleanup

* Add a clear history button
2024-10-02 08:52:36 -02:30
hallidayoandAlaister Young 97a38375f0 feat: auth users search (#20362)
* auth users search uid

* update new users UI

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2024-09-19 08:28:16 +00:00
Charis 4e93bf42e8 fix(ai): restrict edge function regions (#29330)
Missed some routes when restricting edge function regions in an earlier
PR. Any edge function that calls OpenAI needs to be called from an
OpenAI-supported region.
2024-09-17 10:35:34 -04:00
Charis 534a248485 fix: restrict ai edge function regions (#29085)
AI edge functions error if Vercel runs them in a region that is not
supported by OpenAI. To prevent this, restrict the Edge Function regions
to the OpenAI-supported regions.
2024-09-05 10:47:09 -04:00
Bobbie Soedirgo 3d15e9d8f2 chore: remove unused files (#27899) 2024-08-15 15:19:23 +08:00
Terry Sutton bee6afe899 Chore/update local lints (#28421)
* Update lints

* Add new lint type, update api types

* Update lints again

* Update types
2024-08-09 12:07:10 -02:30
Alaister Young 1b441328fe fix(self-hosted): Column-level privileges (#28478) 2024-08-09 15:46:16 +08:00
Alaister Young 263d199831 fix(self-hosted): postgrest config route location (#28318) 2024-08-01 22:50:55 +08:00
Kang Ming 5e83aa3c18 fix: add new slack provider & deprecate old one (#27864) 2024-07-09 12:33:59 -07:00
Austin TranandTerry Sutton 81306cabee feat: add advisors for self hosted (#27325)
* feat: add advisors for self hosted

* prettier fix

* prettier

---------

Co-authored-by: Terry Sutton <saltcod@gmail.com>
2024-06-27 11:22:06 -02:30
Kevin Grüneberg 9aa4baf48f chore: project addon text adjustments for Orb (#27532) 2024-06-26 16:05:44 +08:00
Ivan Vasilov 5847ad54cf fix: Test the playwright tests in Github actions (#26799)
* Add an API page for run-lints endpoint.

* Fix the playwright test.

* Make the check mandatory in the github action.

* Fix a console.log.

* Use a more stable way of waiting for buttons before clicking them.

* Add helper method for dismissing toasts.

* Wait for the other toast.

* Try and fix the flakiness of the toasts.

* Minor fix.

* Upload artifacts at the end of the github action run.

* Fix yaml stuff.

* Use the newer action for uploading. Shorten the retention period to 7 days.

* Add waitForResponse for the entity types API call.

* snapshot.

* Wait for the page to be loaded.

* Make the timeout bigger when waiting for response.

* Try to fix the timeouts.

* Minor restructuring of the test.

* Add another test and few minor todo tests.

* Fix the table names.

* Don't render hcaptcha in test mode.

* Expand the test to include sorting and filtering.

* Add a test for checking if the other schemas are can be listed.

* Make the sort popover button more stable.

* Fix a unused forward ref in the NavMenuItem component.

* Don't render the Toaster container when in test mode.

* Simplify starting the dev server when testing.

* Fix all inputs to have proper test ids.

* Fix the command for testing.
2024-06-07 17:44:28 +02:00
Greg RichardsonandIvan Vasilov 801ad65603 RLS AI improvements (#26895)
* chore: libpg-query types

* feat: improved rls ai tests

* feat: simplify assertitions for sql expressions

* refactor: split ai logic into separate files

* feat(rls-ai): test select, insert, update, delete policies

* feat: adds withMetadata wrapper for failed tests

* chore: remove custom libpg-query types

* feat(rls-ai): make tests concurrent

* fix(rls-ai): rules for 'using' and 'with check'

* feat(rls-ai): discourages restrictive policies

* feat(ai): makes withMetadata util sync or async

* refactor(ai): moves withMetadata to generic test utils

* feat(rls-ai): test joined table

* feat(rls-ai): test mfa

* chore(ai): make all tests concurrent

* fix(ai): chatSql function rename in studio

* refactor(ai): isolate logic into separate files

* chore(ai): remove trailing comma in tsconfig

* chore(ai): remove unused dep

* Reset some of the package versions to the versions from master.

* chore(ai): remove unused imports

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2024-06-05 14:33:56 +02:00
Wen Bo XieandJoshen Lim cd930f5a2f feat: add IPv4 add on direct conn notice (#26903)
* feat: add IPv4 add on direct conn notice

* feat: add session mode warning

* fix: remove statement from Supavisor-related types

* Revert change in api types file

* Revert change in api types file

* Update API types file via codegen

* Smol feex

* Temp lint fix

* Fix

* fix: include serverless mention

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-05-31 17:07:25 +00:00
Alaister YoungandHan Qiao 193ce3ba8d fix(studio): jwt secret for self-hosted (#26858)
* fix(studio): jwt secret for self-hosted

* update jwt secret variable name in postgrest config files

* fix: add jwt secret to self hosted studio (#26859)

* fix: add jwt secret to self hosted

* chore: rename env var

---------

Co-authored-by: Han Qiao <sweatybridge@gmail.com>
2024-05-30 05:53:23 +00:00
Ivan Vasilov 6f5cabdc62 feat: Make the conversational AI in the SQL editor default (#23142)
* Remove feature preview for the conversational AI for SQL editor.

* Remove all code related to the previous implementation of editor ai.

* Update the snapshots for the ai commands.

* Remove unneeded code from the ai panel.

* Show the diff bar when debugging.

* Convert the updateEditor function into a callback.

* Simplify the debugging functionality by using react state instead of react context.

* Erase the AI disclaimer when formatting code as modification.

* Add a button to clear the chat history.
2024-05-14 15:40:42 +02:00
Joel Lee e86bd52556 feat: expose auth reauthentication template (#22138)
* feat: expose auth reauthentication template

* fix: alter reauthentication copy

* fix: remove unused config, update prettier

* fix: run prettier
2024-04-28 19:27:44 +08:00
Terry Sutton a5d00f9923 Chore/rename open ai key name (#21856)
* Rename OPENAI_KEY to OPENAI_API_KEY

* Force a redeploy
2024-04-25 09:38:56 -02:30
Kang Ming 9963c81a26 Km/update copy (#23264)
* chore: update copy on signup and reset password links

* fix: add config for updating otp length
2024-04-25 17:48:55 +08:00
Kang Ming d965540f33 fix: read config from auth settings for local studio (#22818)
* fix: read config from local auth settings

* fix: add anonymous sign-ins setting to docker
2024-04-17 12:27:06 +07:00
Austin Tran bd64792db6 fix: stripe wrapper not working as expected in self hosted (#22076) 2024-04-02 16:20:24 +00:00
Kevin Grüneberg 9be160a51f feat: add supavisor egress breakdown (#22375) 2024-04-02 22:12:28 +08:00
Kang MingandJoshen Lim 0a569e4790 feat: add anonymous sign-ins config (#21813)
* feat: add anonymous sign-ins config

* fix: update anonymous sign-ins toggle & policy editor

* Couple of UX changes

* fix: update user impersonation with is_anonymous claim

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-03-28 00:14:42 +07:00
Austin Tran 6e8538f957 fix: the pagination of storage is not functioning on self-hosted systems (#21925) 2024-03-14 15:18:55 +01:00
Ivan Vasilov 5ebdd4aeb7 fix: Fix all errored queries when self-hosting studio (#21815)
* Hide the logout button in selfhosted version.

* Don't call project-eligibility-query on selfhosted version.

* Add local api handlers for self-hosting version.

* Fix a missing monaco editor file in the self-hosting version.

* Deleted an obsolete api route.

* Import the right get function.
2024-03-08 14:36:42 +01:00
7548fd1850 feat: Conversational AI for the SQL Editor (#21388)
* Add a API endpoint for generating queries for the SQL editor.

* Merge all multiline props.

* Add a new component for diff actions.

* Copy components for the AI panel.

* Add useChat hook.

* Add a feature preview for the this feature. The preview is dependent on the feature flag.

* Reorder the nesting in the SQL editor to accomodate the AI assistant.

* Try to fit both AI assistants in the SQL editor, available via a feature preview.

* Refactor the SQL editor to make the diff work correctly in all cases.

* Minor fixes for the old AI feature.

* Fix the debug functionality to work with both assistants.

* Fix some copy-paste leftovers.

* Remove unneeded code.

* Make the icons softer.

* Fix the name of the panel component.

* Fix console.logs.

* Add overflow to the AI assistant.

* surface opt in config in ai settings button

* Skip diffing if editor is empty

* Add selected state when selecting a message to insert/replace code

* Add sample prompts

* Add SQL ai dislaimer when replacing code

* Light mode action bar nudges

* Add text for the feature preview.

* lang nudges

* Hide the command suggestions for now.

* Set the discussion url to undefined.

* Don't add the disclaimer twice.

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Terry Sutton <saltcod@gmail.com>
2024-03-05 17:26:11 +01:00