Commit Graph
66 Commits
Author SHA1 Message Date
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
Kevin Grüneberg 0073518136 perf: improve prism-react-renderer setup (#21752) 2024-03-05 12:51:11 +08:00
Kevin Grüneberg 136728f6ab perf: reorganize a few imports to improve bundle size (#21743) 2024-03-05 12:49:58 +08:00
Kevin Grüneberg f9a55935f5 chore: use type imports for types/interfaces (#21738) 2024-03-04 20:48:22 +08:00
Joshen Lim fb9dfac075 Remove observer and ui.setNotification calls (#21725)
* Remove observer and ui.setNotification calls

* lint

* Fix missing export
2024-03-04 11:12:22 +00:00
Kevin Grüneberg 13cfc0abb5 fix: barrel imports (#21728)
Avoid importing all components via barrel files that lead to bloated bundles/chunks
2024-03-04 18:39:53 +08:00
Joshen Lim 5c9ab30902 Close nav bar on click link (#21686)
* Close nav bar on click link

* Remove onClick for navigationiconbutton

* If user clicked on nav icon thats within the nav bar, dont reopen until mouse left side bar once

* Fix
2024-03-04 15:05:20 +08:00
Jonathan Summers-Muir c4a492002b Chore/move confirmation dialogs (#21651)
* move confirmation dialogs

* Update index.tsx

* Update ExtensionCard.tsx
2024-03-01 18:16:25 +08:00
Joshen LimandJonathan Summers-Muir 8deb0865c5 Chore/rls assistant iteration templates (#21447)
* Add templates to RLS assistant

* Update button

* lint

* Chore/rls assistant iteration templates styling (#21459)

* Update index.tsx

* update icon pack

* add new classes

* expose hover card

* add slight shadow to scroll area

* monaco editor updated

* tabs border-b updated

* message styling updated to use circle AI icon

* templates side panel updated to use new tailwind classes and ScrollArea

* Updated tab label to "Assistant" and adjusted background colors

* header updated to use simpler open/close button

* divide-y styling added to chat

* fix tabs bg state

* shadcn tooltip updated to use correct bg color and added default delay duration

* updated styling of codeblocks in chat

* updated open / close button. also added a tooltip

* divide border styling

* add 'slide in' animation option for Hover Card

* update code block

* switch to Card Button

* Update CardButton to expose props and allow any props to be applied

* init

* Apply suggestions from code review

* Add entry step when clicking on create new policy for rls ai

* templates code replacement state highlight selected template

* Ai message code replacement state highlight selected message

* Opt to leave templates panel open

* Fix templates to use template name in policy sql

* Fixes

* fix

* Remove unused imports

---------

Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
2024-02-28 14:44:17 +08:00
Ivan Vasilov 1afb029da0 fix: Make the playwright tests always succeed (#21591)
* Make the playwright tests always succeed.

* Push a change to trigger the tests.

* Try moving the continue-on-error on the failed step.
2024-02-27 17:13:07 +08:00
Alaister Young 4892a79280 fix: remove unused code to fix creating policies via assistant (#21584)
Remove unused code to fix creating policies via assistant
2024-02-27 10:31:18 +08:00
Charis becefdad8b fix: local studio doesn't have organization (#21416) 2024-02-21 18:39:52 -05:00
Terry SuttonandIvan Vasilov b4fa734c85 Chore/use completions api (#20246)
* Start

* Refactor code and remove unused imports

* Refactor SchemaFlowHandler and UserChat components

* Refactor code and remove unused files

* Refactor Thread component and remove CurrentThreadName import

* Remove oldest_messages view from supabase.ts

* Refactor supabase.ts file

* Hook up loading state ChatInput component and remove old route handlers

* Add updated prompt

* Refactor chat form component and remove unused code

* Make the suspense work when fetching messages.

* Small refactor in the chat assistant form component.

* Experimenting with streaming responses. WIP.

* Move all components to thread_id/message_id folder.

* Massive refactor but uses Nextjs app router properly.

* Add a conditional submit which is used if the user haven't been logged in.

* Add a typecheck command to db-new app.

* Minor fixes.

* Bunch of minor fixes.

* Clean up more code.

* Refactor the AssistantChatForm to use the new React forms features.

* Run fitView after 50 milliseconds because it didn't run in some cases.

* Style and flow nudges

* Prettier

* Delete old file

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2024-02-19 15:52:58 -03:30
754ee55cd0 chore: update themes and add dark-new theme set (#20865)
* chore: update themes and add dark-new theme set

* chore: update

* add deep dark css theme

* fix issue with wrong class

* chore: add `bg-studio` as a custom remapped color for studio background

* updated surface classes to use a surface-75.

* update backgrounds and borders

* Update CardButton.tsx

* Update NavigationIconButton.tsx

* chore: add theme selection

* Update package.json

* Update index.ts

* Update package.json

* update alias

* Update ThemeSettings.tsx

* chore: split up theme support

* remove old code

* Update index.ts

* add back in

* Update ThemeSettingsOld.tsx

* fix issue with system theme leaking through

* reset themes

* update imports

* packagelock updated

* Update ThemeSettingsWithPreferredTheme.tsx

* Update system.svg

* Update NavigationIconButton.tsx

* Update NavigationBar.tsx

* update

* Update light.css

* updated some colors

* light mode updated

* hacked

* prettier

---------

Co-authored-by: Francesco Sansalvadore <f.sansalvadore@gmail.com>
Co-authored-by: Kevin Grüneberg <k.grueneberg1994@gmail.com>
2024-02-15 16:56:18 +01:00
Terry SuttonandJoshen Lim 46051bce17 Chore/table editor header simplification (#18366)
* start

* Update

* Types

* Passhref

* Cleanup

* Update

* Fix

* Updates

* Updates

* Enable RLS from table editor

* Cleanup

* Filter current table policies

* Fix missing footer

* Duplicate role picker

* Remove rls banner

* Add tooltip for rls enabled, but no policies

* Fix footer positioning

* Prettier

* Change wording

* Update button style

* Cleanup

* Small update

* Fix Auth policies button number bg color

* Fix

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-02-15 09:10:30 -03:30
Ivan Vasilov 4c7ff74a00 fix: Update the types in api.d.ts. (#21287)
* Update the types in api.d.ts.

* Send zero for integration id.
2024-02-15 13:01:12 +01:00
Joshen Lim 7f084ce27b Improve loading states for project settings (#21254)
* Improve loading states for project settings

* Remove console log
2024-02-15 17:10:59 +08:00
Terry Sutton 69e5b1713d Add side panel for user info (#21239) 2024-02-14 08:19:22 -03:30
Joshen Lim 64c6ad53ca Show confirm dialog if text editor is edited when clicking on toggle feature preview button (#21251) 2024-02-14 17:28:44 +08:00
Joshen Lim 21aa23ceae Chore/cleanup feature flags 140224 (#21249)
* Clean up auth related feature flags

* Clean up databaseUpgrades flag

* More flags clean upo
2024-02-14 17:17:18 +08:00
Joshen Lim ec77b7f305 Fix policies page locked schema notice (#21217) 2024-02-13 17:58:50 +08:00
Charis 95e8375a22 fix: escape/remove double quotes in combobox items to prevent crashing (#21162) 2024-02-12 12:03:32 -05:00
e81442de56 chore: Migrate TableStore (#20033)
* Add create, update and delete mutations for tables.

* Use the new mutations instead of the table store.

* Fully remove the TableStore from the MetaStore.

* Move the methods from MetaStore into pure functions in SidePanelEditor utils.

* Remove TableStore.

* Refactor the onError callbacks to be on the mutations.

* Convert some of the UIStore invocations.

* Fixed not closing the modal in case of an error. Migrate some uses of uiStore.

* Use onSettled on all RQ hooks.

* Remove the ui param to the create/updateTable functions.

* Add a missing connection string.

* Add progress bar for loading UI for importing rows

* Update apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.utils.tsx

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

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
2024-02-06 14:56:59 +08:00
Terry SuttonandJoshen Lim 8b035c827d Feat/highlight new rls assistant (#20851)
* Add highlight for new rls assistant

* Optional close function

* Update UI

* Update button text

* Small style fixes on rls assistant ui

* Small style fixes

* Add cta to revert feature preview in rls assistant

* Fixes and ensure RLS assistant CTAs do not overlap into storage policies

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-01-30 15:30:50 +07:00
Kevin Grüneberg f7e60bf324 chore: upgrade prettier/eslint + autofix (#20785) 2024-01-30 10:54:02 +08:00
Rodrigo Mansueli 602f4ac292 Fix 404 link (#20750) 2024-01-25 19:21:03 -03:30
Kang MingandJoshen Lim cdf1159b3f feat: add email template preview (#20681)
* feat: add email template preview

* fix: change tab order & add alert

* Update apps/studio/components/interfaces/Auth/EmailTemplates/TemplateEditor.tsx

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-01-24 14:27:15 +07:00
c4f58c7815 fix: add rate limit exhaustion content card for auth email rate limits (#18785)
* fix: add rate limit exhaustion

* feat: update copy on warning

* feat: update copy

* feat: update copy of message

* feat: add docsUrl

* Update ResourceExhaustionWarningBanner.constants.ts

* Update

* Fix ts

---------

Co-authored-by: joel@joellee.org <joel@joellee.org>
Co-authored-by: joel <joel@joels-MacBook-Pro.local>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-01-24 14:30:20 +08:00
Joel Leeandjoel a9057f401a feat: drop deprecated linkedin provider from frontend (#20510)
Co-authored-by: joel <joel@joels-MacBook-Pro.local>
2024-01-18 05:25:17 +00:00
Jordi EnricandAlaister Young c1705a22ab Feat: add log explorer query update and deletion (#20343)
* add log explorer query deletion, align table vertically, fix longer descriptions breaking table layout

* undo change in logsexplorer indexts, rm unused import

* add update query feature

* use IconMoreVertical in users table

* add err handler and loading button while deleting a query

* disable save btn while saving new query

* fix tiny nit

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2024-01-15 17:40:30 +01:00
ClarenceandAlaister Young 432de2fc69 chore: clean up on empty className attributes (#20203)
clean up on empty className attrib

Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
2024-01-08 05:49:28 +00:00
Austin Tran 511ad5b675 fix: sort policies alphabetically (#20163) 2024-01-05 19:33:18 +11:00
Kevin Grüneberg d12332ea5a chore: xmas cleanup (#19938) 2024-01-04 17:27:49 +01:00
Alaister YoungandJoshen Lim e9c1966ab5 chore: improve auth screens loading (#19940)
* chore: improve auth screens loading

* Update apps/studio/components/interfaces/Auth/Users/UsersList.tsx

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>

* handle error

* better pagination for users list

* disgusting boolean logic

* return user to previous page after deleting last user

* only show reloading indicator when it's refetching

* fix date formatting

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2024-01-02 05:13:33 +00:00
Monica Khoury f36b2f706c Add: new regex for custom scheme URLs (#19948)
* Add: new regex for custom scheme URLs

* Prettier

* Prettier
2023-12-28 11:01:22 +01:00
Terry SuttonandIvan Vasilov c37fa950ea Chore/rewrite roles form with shadcn (#19923)
* Fix new role form

* Rewrite form

* Commit a sin against ts

* Make the afterLabel a ReactNode.

* Fix minor type issues.

* Fix type

* Types

* Use lodash sortBy instead of the mutating array.sort.

* Fix the order of the roles with active connections.

* Sort the roles by lowercased names.

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2023-12-21 23:45:47 +01:00
Pamela Chia 9057b3c149 feat: track rls ai editor usage (#19811)
* feat: track rls ai editor usage
when user accepts consent, we track when rls editor:
ai suggestion accepted
ai suggestion discarded
copy code from code block in ai assistant
apply changes from code block in ai assistant
when question is asked in ai assistant
when sql has and error and ai debugger was requested

* fix: add asking part and change to past tense

* chore: add fix with assistant tracking

* fix: deploy error and merge master

* fix: action label fixed at queryerror
2023-12-19 20:41:04 +08:00
Joshen LimandAlaister Young 5649330f96 Chore/deprecate roles store (#19718)
* Init RQ for database roles

* Shift all use of roles from pg meta mobx store to RQ

* Deprecate and remove roles pg meta mobx store

* Fix import

* Fix

* Address comments

* remove function child

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2023-12-19 15:02:57 +07:00
Greg RichardsonandIvan Vasilov a6f1313490 AI SQL: Update model + add test suite (#19644)
* refactor: ai sql logic to common package

* feat: ai sql tests

* feat: test rls policy ai chat assistant

* refactor: jest env loading

* feat(ai): improve sql title and description quality

* fix: ai message role type

* Move the new files to a separate package.

* Remove a forgotten console.log.

* Migrate the tests to use snapshots and commit the snapshots.

* Separate the functions which require edge runtime to be exported via /edge subpath.

* Bust the turbo cache when one of the deps has been rebuilt.

* chore: fix package main/type references

* fix: package lock out of sync

* fix: ai sql debugging to fix typos

---------

Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
2023-12-18 11:23:59 -07:00
Ivan Vasilov 563ef1cff2 chore: Remove dangling dependencies and files (#19785)
* Delete probably unneeded files.

* Remove unused deps.
2023-12-18 12:11:15 +00:00
Joshen Lim d0c730d08e Chore/deprecate policies store (#19723)
* Add database policies RQ and shift all usage of policies from pg meta mobx to RQ

* Deprecate and remove policies store from pg meta mobx store

* Fix policies not showing by table and schema

* Update create policy mutation body
2023-12-18 12:17:57 +07:00
Joshen Lim 09de17cac3 Chore/deprecate functions store (#19714)
* Shift all usage of database functions from pg meta store to RQ

* Remove functions store from pg meta mobx store

* fix

* Fix

* Fixes

* fix

* Address comments
2023-12-14 15:30:26 +07:00
Kang Ming 963c902f1b fix: update copy & icons in auth settings page (#19710)
* fix: add hcaptcha and cloudflare icons

* fix: update copy
2023-12-13 18:08:55 -08:00
Kang Ming 5894b0480e fix: update basic auth settings form (#19708)
* fix: allow formfield to not have an icon

* fix: convert radio buttons to formfields
2023-12-13 16:59:52 -08:00
Ivan Vasilov 8be7d08b6a chore: Migrate all .js files in studio to .ts (#19601)
* Change the config to only allow TS files.

* Rename bunch of files from js to ts.

* Add better types to some files.

* Rename the big StorageExplorerStore but with no-check flag.
2023-12-13 12:17:15 +01:00
Joshen Lim 74a9deb103 Hide RLS assistant features for orgs with HIPAA (#19650) 2023-12-13 14:11:15 +07:00
Kang MingandJoshen Lim e9a6a40625 feat: add identity linking config (#19615)
* refactor: linkedin config

* docs: update admonitions

* fix: broken docs link in linkedin provider

* feat: add manual linking toggle

* Link to docs for manual linking APIs

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2023-12-12 10:12:51 -08:00
Ivan VasilovandTerry Sutton eb83b51d98 fix: Add some more instructions to the AI Editor (#19507)
* Add some more instructions to the AI Editor.

* More updates to the suggestion instructions.

* Add spacing to policy details

* Monaco settings

* Copy changes to check when clicked

* Spelling

* More instructions for the AI.

* Make the error panel wrap text. Calculate the height of the editor dynamically.

* Add a comment.

---------

Co-authored-by: Terry Sutton <saltcod@gmail.com>
2023-12-11 11:20:04 +01:00
Stojan Dimitrovski 44694ef6de feat: add beta auth hooks UI (#19312)
feat: add beta hooks UI
2023-12-07 14:30:30 +01:00
Ivan Vasilov 7da3151829 fix: Feedback fixes for the RLS Editor (#19469)
* Update the wording on few places.

* Update instructions for AI when generating policies.

* Format the SQL in the suggestion blocks to have uppercased keywords.

* Add padding before each code block.

* Word wrap the code in the diff editor.

* Remove unused component.

* Remove the added instruction.

* Add tab instructions.
2023-12-07 10:44:55 +01:00