import React from "react"; import {Button, Card, Panel, PanelStack2, Popover} from "@blueprintjs/core"; import {ConfigObject, ConfigProps} from "../ConfigObject"; import {UiObjectConfig} from 'uiconfig.js' import {UiConfigRendererContext} from '../bpComponents/BPComponent' import {Classes} from '@blueprintjs/core/src/common' import { defaultVisualStyle, setupVisualStyle, ThemeSettingsMenuComponent, VisualStyleContext } from './VisualStyleContext' // import {ViewerAppContext} from "./ViewerAppComponent"; export function ConfigurationPanelComponent({config}: { config: UiObjectConfig }) { const renderer = React.useContext(UiConfigRendererContext) const stackItem = React.useCallback(() => { return { props: {config: config}, renderPanel(props: ConfigProps) { // console.log(props.config === config) return (
{/*{v && ()}*/} {config && ()}
) }, title: renderer.methods.getLabel(config) } as Panel<{ config: UiObjectConfig }> }, [config]) const [currentPanelStack, setCurrentPanelStack] = React.useState>>([stackItem()]); const [isMinimized, setIsMinimized] = React.useState(false); React.useEffect(() => { setCurrentPanelStack([stackItem()]) }, [stackItem, setCurrentPanelStack]) const style = setupVisualStyle() return ( setCurrentPanelStack([...currentPanelStack, p] as any)} onClose={() => setCurrentPanelStack(currentPanelStack.slice(0, -1))} stack={currentPanelStack}/>
} placement="bottom">
{isMinimized &&