Files
supabase/apps/studio/components/interfaces/Database/Extensions/Extensions.constants.ts
Ali Waseem fc65261bd4 feat: pg_partman support for Queues through dashboard (#44359)
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.

YES

## What kind of change does this PR introduce?

New UI to help users create partitioned queues when supported with
pg_partman. Updated the existing UI from 2024 to be a bit more user
friendly

## Walkthrough 

**Extension management page**
<img width="1575" height="155" alt="image"
src="https://github.com/user-attachments/assets/4b1895cf-4555-40c5-8a11-54208748b169"
/>

**pg partman call out in queues**
<img width="664" height="771" alt="image"
src="https://github.com/user-attachments/assets/92feff48-72bb-4816-b0aa-e24e70fa148e"
/>

**Updated recommended section with sane defaults**

<img width="663" height="918" alt="image"
src="https://github.com/user-attachments/assets/716d9411-f708-4b4d-8027-7ca7a41062c8"
/>

**Warning on disabling extension**
<img width="431" height="392" alt="image"
src="https://github.com/user-attachments/assets/129ab1eb-2bcc-49ca-a20c-72422460c60e"
/>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-31 09:08:13 -06:00

35 lines
989 B
TypeScript

export const HIDDEN_EXTENSIONS = [
'adminpack',
'amcheck',
'file_fdw',
'lo',
'old_snapshot',
'pageinspect',
'pg_buffercache',
'pg_freespacemap',
'pg_surgery',
'pg_visibility',
'supabase_vault',
'supautils',
'intagg',
'xml2',
'pg_tle',
'pg_stat_monitor',
]
export const SEARCH_TERMS: Record<string, string[]> = {
vector: ['pgvector', 'pg_vector'],
pg_partman: ['partman', 'partition', 'partitioned'],
}
export const EXTENSION_DISABLE_WARNINGS: Record<string, string> = {
pg_cron: 'Disabling this extension will delete all scheduled jobs. This cannot be undone.',
pg_partman:
'Disabling this extension will stop automatic partition management for any partitioned queues. New partitions will no longer be created and retention policies will no longer be enforced.',
}
// Extensions that have recommended schemas (rather than required schemas)
export const extensionsWithRecommendedSchemas: Record<string, string> = {
wrappers: 'extensions',
}