Skip to content

Commit

Permalink
Fix actions in deployment kebab menu
Browse files Browse the repository at this point in the history
  • Loading branch information
tomasmatus committed Nov 15, 2023
1 parent 03cf797 commit b03c971
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 19 deletions.
8 changes: 4 additions & 4 deletions src/deploymentModals.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import React, { useState } from 'react';
import cockpit from 'cockpit';
import client from './client';

import { Alert, AlertActionCloseButton } from "@patternfly/react-core/dist/esm/components/Alert";
import { Alert, } from "@patternfly/react-core/dist/esm/components/Alert";
import { Button } from "@patternfly/react-core/dist/esm/components/Button";
import { Checkbox } from '@patternfly/react-core/dist/esm/components/Checkbox';
import { Modal } from "@patternfly/react-core/dist/esm/components/Modal";
Expand All @@ -45,6 +45,7 @@ export const CleanUpModal = ({ os }) => {

const doCleanup = () => {
setButtonLoading(true);
setError("");

const cleanupFlags = [];
if (deleteTemporaryFiles) {
Expand Down Expand Up @@ -96,7 +97,6 @@ export const CleanUpModal = ({ os }) => {
<Alert variant="danger"
isInline
title={error}
actionClose={<AlertActionCloseButton onClose={() => setError("")} />}
/>
}
<Stack>
Expand Down Expand Up @@ -134,11 +134,12 @@ export const ResetModal = ({ os }) => {

const [removeOverlays, setRemoveOverlays] = useState(false);
const [removeOverrides, setRemoveOverrides] = useState(false);
const [error, setError] = useState(false);
const [error, setError] = useState("");
const [buttonLoading, setButtonLoading] = useState(false);

const doReset = () => {
setButtonLoading(true);
setError("");

const resetFlags = {};
if (removeOverlays) {
Expand Down Expand Up @@ -186,7 +187,6 @@ export const ResetModal = ({ os }) => {
<Alert variant="danger"
isInline
title={error}
actionClose={<AlertActionCloseButton onClose={() => setError("")} />}
/>
}
<Text>
Expand Down
42 changes: 27 additions & 15 deletions src/ostree.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -478,6 +478,8 @@ const DeploymentDetails = (akey, info, packages, doRollback, doUpgrade, doRebase
title: (
<DeploymentActions deploymentIndex={info.index}
deploymentIsPinned={info?.pinned?.v}
isCurrent={info.booted.v}
isStaged={info.staged.v}
/>
),
props: { className: "pf-v5-c-table__action" }
Expand Down Expand Up @@ -513,7 +515,7 @@ const DeploymentDetails = (akey, info, packages, doRollback, doUpgrade, doRebase
});
};

const DeploymentActions = ({ deploymentIndex, deploymentIsPinned }) => {
const DeploymentActions = ({ deploymentIndex, deploymentIsPinned, isCurrent, isStaged }) => {
const [isKebabOpen, setKebabOpen] = useState(false);

const togglePin = () => {
Expand All @@ -531,20 +533,30 @@ const DeploymentActions = ({ deploymentIndex, deploymentIsPinned }) => {
.then(() => setKebabOpen(false));
};

const actions = [
<DropdownItem key="pin-deployment"
onClick={() => togglePin()}
>
{deploymentIsPinned ? _("Unpin") : _("Pin")}
</DropdownItem>,
<DropdownSeparator key="deployment-actions-separator-1" />,
<DropdownItem key="delete-deployment"
className="pf-v5-u-danger-color-200"
onClick={() => deleteDeployment()}
>
{_("Delete")}
</DropdownItem>,
];
const actions = [];
if (!isStaged) {
actions.push(
<DropdownItem key="pin-deployment"
onClick={() => togglePin()}
>
{deploymentIsPinned ? _("Unpin") : _("Pin")}
</DropdownItem>,
);
}

if (!isCurrent) {
if (actions.length > 0) {
actions.push(<DropdownSeparator key="deployment-actions-separator-1" />);
}
actions.push(
<DropdownItem key="delete-deployment"
className="pf-v5-u-danger-color-200"
onClick={() => deleteDeployment()}
>
{_("Delete")}
</DropdownItem>
);
}

return (
<Dropdown toggle={<KebabToggle onToggle={(_event, isOpen) => setKebabOpen(isOpen)} />}
Expand Down

0 comments on commit b03c971

Please sign in to comment.