mirror of
https://github.com/SigNoz/signoz.git
synced 2025-12-22 09:56:57 +00:00
feat: handle list panel type options
This commit is contained in:
parent
1e7b2a7734
commit
62ecc44510
@ -70,6 +70,7 @@ export const QueryBuilderV2 = memo(function QueryBuilderV2({
|
|||||||
isAvailableToDisable={false}
|
isAvailableToDisable={false}
|
||||||
queryVariant={config?.queryVariant || 'dropdown'}
|
queryVariant={config?.queryVariant || 'dropdown'}
|
||||||
showOnlyWhereClause={showOnlyWhereClause}
|
showOnlyWhereClause={showOnlyWhereClause}
|
||||||
|
isListViewPanel={isListViewPanel}
|
||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
|
|
||||||
@ -95,7 +96,7 @@ export const QueryBuilderV2 = memo(function QueryBuilderV2({
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{!showOnlyWhereClause && (
|
{!showOnlyWhereClause && !isListViewPanel && (
|
||||||
<QueryFooter
|
<QueryFooter
|
||||||
addNewBuilderQuery={addNewBuilderQuery}
|
addNewBuilderQuery={addNewBuilderQuery}
|
||||||
addNewFormula={addNewFormula}
|
addNewFormula={addNewFormula}
|
||||||
@ -103,7 +104,7 @@ export const QueryBuilderV2 = memo(function QueryBuilderV2({
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{!showOnlyWhereClause && (
|
{!showOnlyWhereClause && !isListViewPanel && (
|
||||||
<div className="query-names-section">
|
<div className="query-names-section">
|
||||||
{currentQuery.builder.queryData.map((query) => (
|
{currentQuery.builder.queryData.map((query) => (
|
||||||
<div key={query.queryName} className="query-name">
|
<div key={query.queryName} className="query-name">
|
||||||
|
|||||||
@ -88,6 +88,16 @@ function QueryAddOns({
|
|||||||
});
|
});
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
if (isListViewPanel) {
|
||||||
|
setAddOns([]);
|
||||||
|
|
||||||
|
setSelectedViews([
|
||||||
|
ADD_ONS.find((addOn) => addOn.key === ADD_ONS_KEYS.ORDER_BY) as AddOn,
|
||||||
|
]);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (panelType === PANEL_TYPES.VALUE) {
|
if (panelType === PANEL_TYPES.VALUE) {
|
||||||
// Filter out all add-ons except legend format
|
// Filter out all add-ons except legend format
|
||||||
setAddOns((prevAddOns) =>
|
setAddOns((prevAddOns) =>
|
||||||
@ -103,7 +113,7 @@ function QueryAddOns({
|
|||||||
}
|
}
|
||||||
|
|
||||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
}, [panelType]);
|
}, [panelType, isListViewPanel]);
|
||||||
|
|
||||||
const handleOptionClick = (e: RadioChangeEvent): void => {
|
const handleOptionClick = (e: RadioChangeEvent): void => {
|
||||||
if (selectedViews.find((view) => view.key === e.target.value.key)) {
|
if (selectedViews.find((view) => view.key === e.target.value.key)) {
|
||||||
|
|||||||
@ -104,28 +104,30 @@ export const QueryV2 = memo(function QueryV2({
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Dropdown
|
{!isListViewPanel && (
|
||||||
className="query-actions-dropdown"
|
<Dropdown
|
||||||
menu={{
|
className="query-actions-dropdown"
|
||||||
items: [
|
menu={{
|
||||||
{
|
items: [
|
||||||
label: 'Clone',
|
{
|
||||||
key: 'clone-query',
|
label: 'Clone',
|
||||||
icon: <Copy size={14} />,
|
key: 'clone-query',
|
||||||
onClick: handleCloneEntity,
|
icon: <Copy size={14} />,
|
||||||
},
|
onClick: handleCloneEntity,
|
||||||
{
|
},
|
||||||
label: 'Delete',
|
{
|
||||||
key: 'delete-query',
|
label: 'Delete',
|
||||||
icon: <Trash size={14} />,
|
key: 'delete-query',
|
||||||
onClick: handleDeleteQuery,
|
icon: <Trash size={14} />,
|
||||||
},
|
onClick: handleDeleteQuery,
|
||||||
],
|
},
|
||||||
}}
|
],
|
||||||
placement="bottomRight"
|
}}
|
||||||
>
|
placement="bottomRight"
|
||||||
<Ellipsis size={16} />
|
>
|
||||||
</Dropdown>
|
<Ellipsis size={16} />
|
||||||
|
</Dropdown>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@ -150,7 +152,7 @@ export const QueryV2 = memo(function QueryV2({
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{!showOnlyWhereClause && (
|
{!showOnlyWhereClause && !isListViewPanel && (
|
||||||
<QueryAggregation
|
<QueryAggregation
|
||||||
dataSource={dataSource}
|
dataSource={dataSource}
|
||||||
panelType={panelType || undefined}
|
panelType={panelType || undefined}
|
||||||
@ -171,7 +173,7 @@ export const QueryV2 = memo(function QueryV2({
|
|||||||
index={index}
|
index={index}
|
||||||
query={query}
|
query={query}
|
||||||
version="v3"
|
version="v3"
|
||||||
isListViewPanel={false}
|
isListViewPanel={isListViewPanel}
|
||||||
showReduceTo={showReduceTo}
|
showReduceTo={showReduceTo}
|
||||||
panelType={panelType}
|
panelType={panelType}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@ -139,6 +139,7 @@ export default function QBEntityOptions({
|
|||||||
)}
|
)}
|
||||||
|
|
||||||
{showFunctions &&
|
{showFunctions &&
|
||||||
|
!isListViewPanel &&
|
||||||
(isMetricsDataSource || isLogsDataSource) &&
|
(isMetricsDataSource || isLogsDataSource) &&
|
||||||
query &&
|
query &&
|
||||||
onQueryFunctionsUpdates && (
|
onQueryFunctionsUpdates && (
|
||||||
@ -161,7 +162,7 @@ export default function QBEntityOptions({
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{showDeleteButton && (
|
{showDeleteButton && !isListViewPanel && (
|
||||||
<Button className="periscope-btn ghost" onClick={onDelete}>
|
<Button className="periscope-btn ghost" onClick={onDelete}>
|
||||||
<Trash2 size={14} />
|
<Trash2 size={14} />
|
||||||
</Button>
|
</Button>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user