/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/
import { isEmpty } from 'lodash';
import React from 'react';
import { EuiResizableContainer } from '@elastic/eui';
import { QueryManager } from 'common/query_manager';
import { RAW_QUERY, SELECTED_TIMESTAMP } from '../../../../../common/constants/explorer';
import {
IField,
IQuery,
IVisualizationContainerProps,
ExplorerFields,
} from '../../../../../common/types/explorer';
import { WorkspacePanel } from './workspace_panel';
import { ConfigPanel } from './config_panel';
import { Sidebar } from '../sidebar';
import { DataConfigPanelItem } from './config_panel/config_panes/config_controls/data_configurations_panel';
import { PPL_STATS_REGEX, VIS_CHART_TYPES } from '../../../../../common/constants/shared';
import { TreemapConfigPanelItem } from './config_panel/config_panes/config_controls/treemap_config_panel_item';
import { LogsViewConfigPanelItem } from './config_panel/config_panes/config_controls/logs_view_config_panel_item';
interface IExplorerVisualizationsProps {
query: IQuery;
curVisId: string;
setCurVisId: (visId: string) => void;
explorerVis: any;
explorerFields: ExplorerFields;
explorerData: any;
visualizations: IVisualizationContainerProps;
handleOverrideTimestamp: (field: IField) => void;
callback?: any;
queryManager: QueryManager;
}
export const ExplorerVisualizations = ({
query,
curVisId,
setCurVisId,
explorerVis,
explorerFields,
explorerData,
visualizations,
handleOverrideTimestamp,
callback,
queryManager,
}: IExplorerVisualizationsProps) => {
const { vis } = visualizations;
const isMarkDown = vis.id === VIS_CHART_TYPES.Text;
const fieldOptionList = explorerFields.availableFields.map((field) => ({
...field,
label: field.name,
}));
const renderDataConfigContainer = () => {
switch (curVisId) {
case VIS_CHART_TYPES.TreeMap:
return (