* Remove radix-popover and radix-tooltip as deps from studio.
* Migrate all uses of tooltip to shadcn tooltips.
* Add tooltip portal to all shadcn tooltips.
* Fix a warning about MenuItem not accepting refs in StorageMenu.
* Remove unneeded styling for the tooltips.
* Set a default delay duration for all tooltips in Studio.
* Fix a type error.
* Check and fix all tooltips.
* Fix using camel case enum from public schema erroring out in ColumnEdiotr
* Update Table editor sql query to prefix the enum type schema if not from public schema
* Remove conosle log
* 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
* Initial commit.
* Minor type fixes.
* Add a integration for Queues. Refactor some of the integration layout.
* Migrate the Cron integration to the new style.
* Add useInstalledIntegrations hook.
* Add an integration entry for vault.
* Add an integration entry for GraphiQL.
* Add supabase webhooks.
* Feat/integrations get layout (#30538)
* scroll based icon
* Update header.tsx
* remove dep from overview
* moar
* more table stuff
* moar
* alt nav put in
* fix MotionNumber issues
* more
* trying both layouts
* Fix bunch of type errors.
---------
Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
* Migrate Vercel and Github files to their own folders.
* Switch all integrations with the new designs.
* More fixes for links, pages structure and other random stuff.
* Remove unneeded file.
* Another set of fixes. Migrated most of the extension integrations.
* Migrated Vault and webhooks to the new style.
* Various fixes to make the animation work.
* Remove extra code.
* Tiny fixes 😬 i swear its tiny
* Refactor IntegrationOverviewTab
* chore/ update integrations routes (#30585)
* init
* add child support in tabs
* add webhooks
* Update IntegrationPageHandler.tsx
* fix id issues
* use messageId instead
* animation tweaks
* Move the description to the wrappers array.
* The useInstalledIntegrations now provides integrations which could be installed.
* Add static content for the various integrations.
* Move the page handler logic into the integrations definitions.
* Clean up some extra code.
* Add logic to make the overview tab the default tab.
* Don't show the header until the integration id has been checked.
* Add logic to the integration pages to avoid weird loading bugs, deselecting tabs if the integration hasn't been installed etc.
* Fix the webhooks overview tab.
* Fix the buttons for enabling extensions.
* Add padding to all custom tab contents.
* Small fixes
* Prettier lint
* Fix icon color + add empty state for when available integrations are all installed
* Fix ts errors
* Fiox
* Add enable webhooks cta
* Fix key
* Fix all lints
* Fix the queues create sheet.
* Fix the deletion of wrappers.
* Fix the minimum version alert for the wrappers extension.
* Make the queues table fit the whole container.
* Fix an issue which reset the tab when installing an extension.
* Address comments
* Add loading state for installed integrations in side nav
* Fix edit secret not rendering value in input field after subsequent openings
* Fix vault keys auto filling search input with vault
* Fix search input placeholder for cron
* Minor fix in install database extension copy
* Fix a bad redirect when reloading.
* Fix bad url redirects.
* Fix scrolling in create new/edit wrapper sheet.
* Add y padding to the wrappers rows.
* Fix merge errors.
* More merge fixes.
* Fix bad imports during the merge.
---------
Co-authored-by: Jonathan Summers-Muir <MildTomato@users.noreply.github.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* Fix key prop in CreateIndexSidePanel
* Fix validation when creating FK in column side panel editor - array vs non array type not triggering validation
* Fix validation for saving FK of different type, save array type properly
* Create dynamic texts for CHECK constraint placeholder relative to the selected option of Postgres Data types
* modify text to use column name instead of hard-coded string
* prettier and small updates
* only update placeholder when format or name changes
* remove extra whitespace
---------
Co-authored-by: Jason <jason@debian>
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
Co-authored-by: Alaister Young <a@alaisteryoung.com>
* chore: remove useExecuteSqlQuery part 1
* fix invalidation
* fixes
* more fixes
* I fixed it, but tested on preview instead of local 🤦🏻
* only refetch table rows and not count on row updates
* removed unneeded invalidations and prefetched new table after create
* Auto open date time picker, add set to null CTA for nullable date time fields
* Add dropdown option instead
* Small fix
* Add docs Url for database functions and triggers, fix space-x-2 in database/tables
* Some fixes
* Pass the edited row instead of the original row to JSON and Text editor.
* Reset the mutation when you close the json/text panel.
* Simplify the JSON editor to use the edited row value.
* Add some types to the input field component.
* Fix the behavior when opening the JSON editor from a JSON field cell.
* Another fix for the inline cell editor.
* Add lucide-react to docs (to make the autocomplete work).
* Migrate the docs app icons.
* Migrate the ui-patterns.
* Remove the old icons from ui package.
* Migrate the www app from react-feather icons.
* Migrate all of studio icons.
* Migrate the only component in design-system.
* Fix an old import in ui package. Revert an import in docs app.
* Fix some pages in www.
* Remove unneeded files used in generation of icons.
* Fix a prettier error.
* Fix more issues in www.
* Fix an issue in Log Date picker.
* Replace all string sizes with number sizes because the icons grew in some cases.
* Fix more imports in security page.
* Fix an extra import.
* Remove the size prop from all icons if they're in a button and they match the button size.
* Minor fixes for docs and www.
---------
Co-authored-by: Joshen Lim <joshenlimek@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.
* Fix inability to update composite foreign key values in RowEditor
* Fix unable to view referencing record in table editor if FK column is also PK
* Update apps/studio/state/table-editor.tsx
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
---------
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
* feat(studio): check column types in imported spreadsheet
* refactor: more checks on check inferred column type
* fix: spreadsheet import type check not working because selectedtable is undefined
* rebuild
---------
Co-authored-by: Ryan Martin <rmrt1n@users.noreply.github.com>
Co-authored-by: Terry Sutton <saltcod@gmail.com>
* issue #21609 added padding right to input component which has "Set to NULL" btn
added padding right to input component that has "Set to NULL" and "Select Record" btn.
Reason: Btns are set to absolute so its good to just give padding to input component.
* Remove input class
---------
Co-authored-by: Terry Sutton <saltcod@gmail.com>
* Add helper function to check if a value is truncated.
* Fix the validation and generation of payload to not include truncated values.
* Remove console log
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* Confirm before setting cell to null
* Small fixes
* New prop for ignoring outside clicks
---------
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
* 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.
* Add check before generating nodes in settings infrastructure
* Fix conditional in ResourceContent and add some typing
* Wrap checkIfPrivate with try catch
* Add ? in TableEditor.utils generateTableFieldsFromPostgresTable
* More typing
* Add ternary in RPC
* Remove mobx from API docs v1
* Fix renaming folder in storage explorer
* Fix downgrade network error causing UI crash
* Ensure that all try blocks have at least a catch block and not an empty finally block
* Update apps/studio/components/interfaces/Organization/BillingSettings/Subscription/PlanUpdateSidePanel.tsx
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>
* Update
---------
Co-authored-by: Alaister Young <alaister@users.noreply.github.com>