/* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ import React from 'react'; import { EuiButton, EuiButtonEmpty, EuiButtonIcon, EuiFieldText, EuiFlexGroup, EuiFlexItem, EuiFormRow, EuiLink, EuiPopover, EuiPopoverFooter, EuiSpacer, EuiText, EuiTitle, } from '@elastic/eui'; import { PatternTableData } from 'common/types/explorer'; import { PPL_PATTERNS_DOCUMENTATION_URL } from '../../../../../common/constants/shared'; interface PatternsHeaderProps { patternsData: { patternTableData: PatternTableData[] }; patternRegexInput: string; setPatternRegexInput: (pattern: string) => void; onPatternApply: () => void; setIsPatternConfigPopoverOpen: (flag: boolean) => void; isPatternConfigPopoverOpen: boolean; } export const PatternsHeader = ({ patternsData, patternRegexInput, setPatternRegexInput, onPatternApply, setIsPatternConfigPopoverOpen, isPatternConfigPopoverOpen, }: PatternsHeaderProps) => { return (

Patterns{' '} ({patternsData.patternTableData?.length || 0})

setIsPatternConfigPopoverOpen(!isPatternConfigPopoverOpen)} /> } isOpen={isPatternConfigPopoverOpen} closePopover={() => setIsPatternConfigPopoverOpen(false)} anchorPosition="upCenter" >

Pattern regex

Log patterns allow you to cluster your logs, to help summarize large volume of logs. Pattern regex is used to reduce logs into log groups.{' '} help } > setPatternRegexInput(e.target.value)} /> setIsPatternConfigPopoverOpen(false)}> Cancel { setIsPatternConfigPopoverOpen(false); onPatternApply(); }} > Apply
); };