* 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.
* 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>
* First
* Update
* Move connection string panel to its own component
* Add connection strings
* Format button
* Add dummy files to get logic working
* Add mdx packages
* add file handling and change logic
* Support connections
* Fix icons, add direct and graphql
* Remove mdx stuff
* Add pooler toggle
* Fix child logic
* Fix grandchild logic
* Refactor data object
* Move back to dialog ui
* Refactor to shadcn tabs
* Find the files
* Wire up icons
* Loop over connection types
* Reformat file paths
* Remove from project home
* fix tab rendering issue
* Check for unique keys
* Add new libs
* comment
* Add direct connection ui
* Get project connection strings
* Cleanup
* Add project keys
* Add types file
* Undo update
* Add next app files
* Add files
* Add next pages files
* Add nuxt
* Fix env vars
* Add rest of frameworks, graphql and orms
* Add orms
* Fix types
* Add guide links
* Run prettier
* Separate graphql
* Move ui
* Move direct connection to first position
* Move to single files
* Update styling
* Fix locations
* Fix next content
* Fix dialog close button, add proper light mode theme
* Fix dialog style issues
* CleanupA
* Pin to top
* Feat/homepage connect modal combined styling update (#21079)
* chore: update styling. also moved useStates as it was sort of duplicated
* Cleanup
---------
Co-authored-by: Terry Sutton <saltcod@gmail.com>
* Close pooler modal
* Make the db connection panel blend in
* Allow for DatabaseSelector
* Dont open by default
* Some fixes
* Set min height to loader
* Fix
* Small styling fixes for table editor sort filter popover
* Make connect button stand out
---------
Co-authored-by: Jordi Enric <jordi.err@gmail.com>
Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* Add a new function to ai-commands package.
* Add a new API route to all three apps.
* Refactor the Command component to use the new URL.
* Resort the imports.
* Add a badge if the pgbouncer hasn't been removed.
* Force the response to be a boolean.
* Add a CSP exception, just for testing.
* Minor correction for the CSP rule.
* Add a API route for checking whether the pgbouncer has been removed.
* Log the response and error.
* Minor fixes.
* Update based on feedback
* Add additional sanity checks on pg bouncer nextjs endpoint
* Update check
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* 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>
* 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>
* Add vercel/ai. Commit additional next types.
* Add a API route in /app for streaming responses.
* Make the components work with streaming response.
* Add a dummy page to /app folder to fix a linking bug.
* Fix the dummy page.
* Fix the dummy page again.
* Add an empty layout to the app folder.
* Make the code snippets in the chat read-only.
* Remove queries and mutations for suggest.
* Reset the chat when closing the panel.
* Make the AI instructions a bit better.
* Don't render empty code blocks.
* Try to use remark for rendering the code. Style fixes for CodeBlock in AI assistant panel.
* Fix the styling of the definitions when sending them to OpenAI.
* Fix the css styling of the messages and code blocks.
* Move the suggest API route from app to pages folder.
* Revert the change for app API routes.
* Make the API route look like the rest of the API routes.
* Use Pre instead of Code because the <code> tags aren't working if between spans.
* Minor leftovers.
* Revert to using app route handlers.
* Change the wording on the diff header.
* Add nextjs types.
* Fix a missing import.
* Move AssistantChatForm back to db-new.
* Fix a build error.
* Rename the suggest route to assistant.
* Fix Joshen's comments.
* Send policy definition to AI when editing a policy
* Only send entity definitions if opted into AI for RLS ai assistant
* Scaffold collapsible policy details
* Update comment
* Update
* Update height
* fix messages sorting
* Migrate all apps and packages to use OpenAI v4 lib.
* Minor fix.
* refactor: improve types for completion chunks
---------
Co-authored-by: Greg Richardson <greg.nmr@gmail.com>
* Add two more sizes to the Panel component.
* Add alias for the older openai-api library. The new one is added under the openai name.
* Add API routes
* Add components for the new AI RLS panel.
* Bunch of changes to the AI Policy Editor.
* Add a button for opening the new Policy Editor.
* Add a feature flag for the new editor.
* Add a confirmation modal when closing the panel.
* Fix leftover data when closing the panel.
* Make the copy button work.
* Add the next/swc packages to package-lock.json.
* Merge master
* Scaffold debug sql in rls editor
* Small improvements to policy chat
* Hook up debug to ai assistant panel
* Improve debug UX
* Add debug request badge
* Some styling fix
* Small styling fix
* Another small styling fix
* Shift create new policy ai button + fix error stylign with code editor height
* Add tooltips to apply changes and copy code from assistant message
* Hide assistant button is not platform
* Small lint
* Add default error handlers to all AI RQ mutations
* Small fix
* Remove IS PLATFORM check for rls assistant
* Add placeholder to RLS code editor
* Fix diff + rls code editor
* Add placeholder message after sending prompt
* Small style
* RLSCodeEditor hit tab if empty to populate placeholder text
* Light mode nudeges
* Update logic for when confirmation close modal should show
* Set render overview ruler as false for rls diff editor
* improve chat UX to make it smoother (thank you alaister for your help 🙏)
* Dynamically do keepPreviousData
* Gracefully handle errors for add prompt
* Use animated ai icon while message is loading
* using Sheet component
* Address commernts
* Bit more improvements
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
* Move all studio files from /studio to /apps/studio.
* Move studio specific prettier ignores.
* Fix the ui references from studio.
* Fix the css imports.
* Fix all package.json issues.
* Fix the prettier setup for the studio app.
* Add .turbo folder to prettierignore.
* Fix the github workflows.