import { Button, Dropdown, Typography, IconChevronDown, IconPlay, Badge, Popover, Alert, } from '@supabase/ui' import Flag from 'components/ui/Flag/Flag' import { EXPLORER_DATEPICKER_HELPERS, LogsTableName, LogsWarning, LOGS_SOURCE_DESCRIPTION, LogTemplate, } from '.' import DatePickers from './Logs.DatePickers' import Link from 'next/link' import React from 'react' interface Props { templates?: LogTemplate[] onSelectTemplate: (template: LogTemplate) => void onSelectSource: (source: LogsTableName) => void onRun: (e: React.MouseEvent) => void onClear: () => void onSave?: () => void hasEditorValue: boolean isLoading: boolean onDateChange: React.ComponentProps['onChange'] defaultTo: string defaultFrom: string warnings: LogsWarning[] } const LogsQueryPanel: React.FC = ({ templates = [], onSelectTemplate, hasEditorValue, onRun, onClear, onSave, onSelectSource, isLoading, defaultFrom, defaultTo, onDateChange, warnings, }) => (
a.localeCompare(b)) .map((source) => ( onSelectSource(source)}>
{source} {LOGS_SOURCE_DESCRIPTION[source]}
))} >
a.label!.localeCompare(b.label!)) .map((template: LogTemplate) => ( onSelectTemplate(template)}> {template.label} ))} >
0 ? 'opacity-100' : 'invisible w-0 h-0 opacity-0' }`} >
{warnings.map((warning, index) => (

{warning.text}{' '} {warning.link && ( {warning.linkText || 'View'} )}

))}
} > {warnings.length} {warnings.length > 1 ? 'warnings' : 'warning'}
{onSave && ( )}
) export default LogsQueryPanel