* 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>
* 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
* 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>
* 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
* 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
* 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>
* 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
* 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
* 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
* 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.
* Refactor telemetry event into RQ hook, and update to support PH
* Refactor telemetry identify into RQ hook, and update to support PH
* Refactor telemetry page into RQ hook, and update to support PH
* Clean up and deprecate lib/telemetry
* Pretty
* Add ts-ignore in docs for telemetry calls temporarily
* Add credentials include for send event, page and identify mutation hooks
* Add consent check for event and page telemetry, allow RQ mutations for those to fail silently without a toast
* initial test.
* Add base path to the rewrites.
* Remove base path from the source rewrite.
* Another try.
* Another try.
* another try.
* Try another magic.
* Add try/catch to the flag processing code.
* Revert some of the unneeded changes.
* Fix the api route for flags.
* Remove vercel/toolbar for local dev.
* Try using a static file for toolbar config.
* Add a well known flags file in the www app.
* Add headers to interpret vercel/flags as json.
* Another try.
* Fix the json formatting.
* Add headers for the vercel/flags route in the www app.
* Change to force studio to deploy.
* 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
* Set up banning and unbanning user, although untested due to API CORs issue
* Update search filter UI for users management V2
* Update API types
* Minoir
* Small fix
* Update UI
* Add support for resizing and re-ordering columns
* Add google profile image url to csp
* Revert test button
* Implement toggling of columns
* Fix loading
* Fully implement banning/unbanning user
* Fix
* Update apps/studio/components/interfaces/Auth/Users/UserOverview.tsx
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
* Fallback non CSP supported avatar urls to user icon
* Fix some bugs
* Remove prism-react-renderer from studio, add to ui patterns
* Migrate users query from API to studio
* Address some feedback
---------
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
* Update pricing details in DeployNewReplicaPanel
* Update disk mgt review modal to consider RR pricing
* Update tests
* Hide utilization bar for read replicas in new disk mgt ui
* Add guard
* Update link to docs for deploy replica panel
* Address feedback
* Ensure IOPS and throughput prices are considered for replicas
* Prettier
* Attempt to fix tests
* Attempt to fix tests
* Fix calculateDiskSizePrice for replicas
* Fixes
* Prettier
* Add ternary
* Feeeex
* Various small updates from Kevin's feedback
* smol stuff
* fixes
* Update DiskManagementPanelSchema.ts
---------
Co-authored-by: Kevin Grüneberg <k.grueneberg1994@gmail.com>
* Working
* Allow for opting-in in place on the SQL Editor page
* Show a warning after the first message
* Fix width
* Remove import
* Add context to schema dropdown
* Cleanup
* no message
* Revert the package-lock.json.
* Remove the extra div.
* Move the confirmation modal outside so that it can be triggered by the first message alert.
* Add another alert to guide the user to selecting a schema.
* Fix imports
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
* Update the design of the sonner toasts. Add the close button by default.
* Migrate studio and www apps to use the SonnerToaster.
* Migrate all toasts from studio.
* Migrate all leftover toasts in studio.
* Add a new toast component with progress. Use it in studio.
* Migrate the design-system app.
* Refactor the consent toast to use sonner.
* Switch docs to use the new sonner toasts.
* Remove toast examples from the design-system app.
* Remove all toast-related components and old code.
* Fix the progress bar in the toast progress component. Also make the bottom components vertically centered.
* Fix the width of the toast progress.
* Use text-foreground-lighter instead of muted for ToastProgress text
* Rename ToastProgress to SonnerProgress.
* Shorten the text in sonner progress.
* Use the correct classes for the close button. Add a const var for the default toast duration. Remove the custom width class from sonner.
* Set the position for all progress toasts to bottom right. Set the duration for all toasts to the default (when reusing a toast id from loading/progress toast, the duration is set to infinity).
* Fix the playwright tests.
* Refactor imports to use ui instead of @ui.
* Change all imports of react-hot-toast with sonner. These components were merged since the last commit to this branch.
* Remove react-hot-toast lib.
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
* Add nuqs package.
* Add useSchemaQueryState hook.
* Use the new hook in all places where there's is a schema selector.
* Make the useQueryState work with SSR in playwright.
* Fix the saving to local storage to happen as a side effect without any additional rerenders.
* add last sign in feat
* wrap only the button for email, update colors in wrapper
* foreground light for wrapper text
* use a Badge and move it to the right
* add outline
* use default colors
* Change the getEntityDefinitions query to accept list of schemas instead of being hardcoded to public schema.
* Add a schema combo box for selecting schemas.
* Use the combobox in the SQL editor to select which schemas should be sent to the AI when asking a question.
* Add configurable schemas to AiPolicyEditor.
* Remove unneeded hook.
* Fix the AI settings modal.
* Add keys to the entity definitions query.
* Fix the AI settings modal which is used by cmdk flow.
* Minor fixes.
* Address feedback
* Some fixes
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* Fix a "A component is `contentEditable` and contains `children` managed by React." error. Reexport ResizableHandle from react-resizable-panels. Add correct display name for text area.
* Change the AI panel to be resizable.
* Add a new hook for copying URLs.
* Refactor the copyToClipboard function.
* Make the onCopyUrl function awaitable.
* Fix the test.
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* Add AAL2 toggle for user impersonation
* Move AAL toggle into user selector & tweak styles
- Since the AAL level can only be toggled before a user is selected, move the toggle into the user selection area
- Also display the AAL status in the UserImpersonatingRow and the RoleImpersonationPopover
- Improve display styles
* Run prettier
* - fixes light mode text issue
- adds "Advanced options" collapsible
- adds info tooltip linking to MFA docs
---------
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
Co-authored-by: Alaister Young <a@alaisteryoung.com>
* feat(docs), refactor(docs,studio): add regions list to docs
Adds list of supported AWS regions to docs.
Pulls the region information into `shared-data` package to provide common source of truth for dashboard and docs.
* style: format
Advisor warns about missing search_path on the handle_new_user function,
which we supply in docs and SQL starter templates.
We have updated this in some docs but haven't pulled it through to everything
* feat: use TUS for file uploads in dashboard
* handle upload progress
* add fallback for mime types
* lowercase extensions
* add note about mime
* Handle file size 0 and make check for nbsp replacement
* Fix NaN in progress
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>