- Fix bug where changing the card settings would default the orientation back to horizontal despite showing vertical mode on the toggle.

Signed-off-by: Dave Richer <dave@imexsystems.ca>
This commit is contained in:
Dave Richer
2024-07-08 10:46:31 -04:00
parent 8199ab83ef
commit 4b6b4c0c63
4 changed files with 30 additions and 20 deletions

View File

@@ -17,7 +17,7 @@ import ProductionBoardFilters from "../production-board-filters/production-board
import ProductionListDetailComponent from "../production-list-detail/production-list-detail.component";
import CardColorLegend from "../production-board-kanban-card/production-board-kanban-card-color-legend.component";
import "./production-board-kanban.styles.scss";
import { createBoardData, createFakeBoardData } from "./production-board-kanban.utils.js";
import { createBoardData } from "./production-board-kanban.utils.js";
import ProductionBoardKanbanSettings from "./production-board-kanban.settings.component.jsx";
import cloneDeep from "lodash/cloneDeep";
import isEqual from "lodash/isEqual";
@@ -42,16 +42,14 @@ export function ProductionBoardKanbanComponent({ data, bodyshop, refetch, insert
const [filter, setFilter] = useState({ search: "", employeeId: null });
const [loading, setLoading] = useState(true);
const [isMoving, setIsMoving] = useState(false);
const [orientation, setOrientation] = useState("vertical");
const orientation = useMemo(
() => (associationSettings?.kanban_settings?.orientation ? "vertical" : "horizontal"),
[associationSettings]
);
const { t } = useTranslation();
useEffect(() => {
if (associationSettings) {
setLoading(false);
setOrientation(associationSettings?.kanban_settings?.orientation ? "vertical" : "horizontal");
}
}, [associationSettings]);
@@ -215,6 +213,10 @@ export function ProductionBoardKanbanComponent({ data, bodyshop, refetch, insert
[associationSettings]
);
const handleSettingsChange = (newSettings) => {
setOrientation(newSettings.orientation ? "vertical" : "horizontal");
};
if (loading) {
return <Skeleton active />;
}
@@ -237,7 +239,11 @@ export function ProductionBoardKanbanComponent({ data, bodyshop, refetch, insert
<SyncOutlined />
</Button>
<ProductionBoardFilters filter={filter} setFilter={setFilter} loading={isMoving} />
<ProductionBoardKanbanSettings parentLoading={setLoading} associationSettings={associationSettings} />
<ProductionBoardKanbanSettings
parentLoading={setLoading}
associationSettings={associationSettings}
onSettingsChange={handleSettingsChange}
/>
</Space>
}
/>