mirror of
https://github.com/supabase/supabase.git
synced 2026-06-18 21:54:18 +08:00
## What kind of change does this PR introduce? Chore ## What is the current behavior? Endpoints have no (public) unique identifier, making it hard to distinguish in UI. ## What is the new behavior? Endpoints now have a name field. This is optional but strongly encouraged: - No _(Optional)_ on label - Autogenerated name Removing an endpoint name makes corresponding UI fall back the URL. | Before | After | | --- | --- | | <img width="1234" height="629" alt="Settings Oldie 2 Toolshed Supabase-CF557DE5-FA03-40E7-938E-2CC87F27C9A5" src="https://github.com/user-attachments/assets/4b55fcb7-f8bc-4b85-a374-9ee62e452cb0" /> | <img width="1234" height="629" alt="Settings Oldie 2 Toolshed Supabase-74BBF142-DEC0-4626-B614-B05EBB2AC0EF" src="https://github.com/user-attachments/assets/7ff40a91-c71a-4e20-85f8-0837d62202aa" /> | | <img width="1234" height="629" alt="Settings Oldie 2 Toolshed Supabase-32A4B56C-61F5-4C1C-81DD-C455835E075F" src="https://github.com/user-attachments/assets/f732ca50-2c60-4fbc-99c7-53afb5c34682" /> | <img width="1234" height="629" alt="Settings Oldie 2 Toolshed Supabase-29987973-9616-4409-9DF1-B9581112D4C3" src="https://github.com/user-attachments/assets/0cf1db9a-fe84-4140-a2fc-bf10cf295c3b" /> |
50 lines
929 B
TypeScript
50 lines
929 B
TypeScript
import type { WebhookEndpoint } from './PlatformWebhooks.types'
|
|
|
|
const WEBHOOK_NAME_ADJECTIVES = [
|
|
'swift',
|
|
'winged',
|
|
'wayfinding',
|
|
'moonlit',
|
|
'fleet',
|
|
'nimble',
|
|
'roving',
|
|
'brisk',
|
|
'gliding',
|
|
'steady',
|
|
'northbound',
|
|
'starlit',
|
|
'quiet',
|
|
'amber',
|
|
'far-flung',
|
|
'secret',
|
|
'flying',
|
|
]
|
|
|
|
const WEBHOOK_NAME_NOUNS = [
|
|
'pigeon',
|
|
'courier',
|
|
'postmark',
|
|
'relay',
|
|
'dispatch',
|
|
'lantern',
|
|
'beacon',
|
|
'messenger',
|
|
'waypost',
|
|
'sparrow',
|
|
'satchel',
|
|
'signalfire',
|
|
'envelope',
|
|
'parcel',
|
|
'gull',
|
|
'kite',
|
|
'beagle',
|
|
]
|
|
|
|
const getRandomItem = (values: string[]) => values[Math.floor(Math.random() * values.length)]
|
|
|
|
export const generateWebhookEndpointName = () =>
|
|
`${getRandomItem(WEBHOOK_NAME_ADJECTIVES)}-${getRandomItem(WEBHOOK_NAME_NOUNS)}`
|
|
|
|
export const getWebhookEndpointDisplayName = (endpoint: Pick<WebhookEndpoint, 'name' | 'url'>) =>
|
|
endpoint.name.trim() || endpoint.url
|