import { getIsPropertyPaneVisible } from "selectors/propertyPaneSelectors"; import { useSelector } from "store"; import { AppState } from "@appsmith/reducers"; import { useWidgetSelection } from "./useWidgetSelection"; import React, { ReactNode, useCallback } from "react"; import { stopEventPropagation } from "utils/AppsmithUtils"; import { getFocusedParentToOpen, isWidgetSelected, shouldWidgetIgnoreClicksSelector, } from "selectors/widgetSelectors"; import equal from "fast-deep-equal/es6"; export function ClickContentToOpenPropPane({ children, widgetId, }: { widgetId: string; children?: ReactNode; }) { const { focusWidget } = useWidgetSelection(); const clickToSelectWidget = useClickToSelectWidget(widgetId); const focusedWidget = useSelector( (state: AppState) => state.ui.widgetDragResize.focusedWidget, ); const isResizing = useSelector( (state: AppState) => state.ui.widgetDragResize.isResizing, ); const isDragging = useSelector( (state: AppState) => state.ui.widgetDragResize.isDragging, ); const isResizingOrDragging = !!isResizing || !!isDragging; const handleMouseOver = (e: any) => { focusWidget && !isResizingOrDragging && focusedWidget !== widgetId && focusWidget(widgetId); e.stopPropagation(); }; return (