| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- import { LOCAL_STORAGE_KEYS, useFlag } from 'common'
- export type FeaturePreview = {
- key: string
- name: string
- discussionsUrl?: string
- isNew: boolean
- /** If feature flag is only relevant for the hosted platform */
- isPlatformOnly: boolean
- /** If feature flag should be enabled by default for users, if not yet toggled before */
- isDefaultOptIn: boolean
- /** Visibility in the feature preview modal (For feature flagging a feature preview) */
- enabled: boolean
- }
- export const useFeaturePreviews = (): FeaturePreview[] => {
- const isUnifiedLogsPreviewAvailable = useFlag('unifiedLogs')
- const pgDeltaDiffEnabled = useFlag('pgdeltaDiff')
- const platformWebhooksEnabled = useFlag('platformWebhooks')
- const jitDbAccessEnabled = useFlag('jitDbAccess')
- return [
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_RLS_TESTER,
- name: 'RLS Tester',
- discussionsUrl: 'https://github.com/orgs/briven/discussions/45233',
- enabled: true,
- isNew: true,
- isPlatformOnly: false,
- isDefaultOptIn: false,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_UNIFIED_LOGS,
- name: 'Updated Logs interface',
- discussionsUrl: 'https://github.com/orgs/briven/discussions/37234',
- enabled: isUnifiedLogsPreviewAvailable,
- isNew: true,
- isPlatformOnly: true,
- isDefaultOptIn: false,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_ADVISOR_RULES,
- name: 'Disable Advisor rules',
- discussionsUrl: undefined,
- enabled: true,
- isNew: false,
- isPlatformOnly: true,
- isDefaultOptIn: false,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_PG_DELTA_DIFF,
- name: 'PG Delta Diff',
- discussionsUrl: undefined,
- isNew: false,
- isPlatformOnly: true,
- isDefaultOptIn: true,
- enabled: pgDeltaDiffEnabled,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_PLATFORM_WEBHOOKS,
- name: 'Platform webhooks',
- discussionsUrl: undefined,
- isNew: true,
- isPlatformOnly: true,
- isDefaultOptIn: false,
- enabled: platformWebhooksEnabled,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_JIT_DB_ACCESS,
- name: 'Temporary access',
- discussionsUrl: undefined,
- isNew: true,
- isPlatformOnly: true,
- isDefaultOptIn: false,
- enabled: jitDbAccessEnabled,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_CLS,
- name: 'Column-level privileges',
- discussionsUrl: 'https://github.com/orgs/briven/discussions/20295',
- enabled: true,
- isNew: false,
- isPlatformOnly: false,
- isDefaultOptIn: false,
- },
- {
- key: LOCAL_STORAGE_KEYS.UI_PREVIEW_MARKETPLACE,
- name: 'Marketplace',
- discussionsUrl: undefined,
- enabled: true,
- isNew: true,
- isPlatformOnly: false,
- isDefaultOptIn: true,
- },
- ].sort((a, b) => Number(b.isNew) - Number(a.isNew))
- }
|