Fixed adding

This commit is contained in:
Lucas Oliveira 2023-11-16 22:25:22 -03:00
commit 4e7a0fcc32
4 changed files with 73 additions and 81 deletions

View file

@ -1,5 +1,4 @@
import { useContext, useState } from "react";
import { useNavigate } from "react-router-dom";
import { alertContext } from "../../contexts/alertContext";
import { FlowsContext } from "../../contexts/flowsContext";
import { StoreContext } from "../../contexts/storeContext";
@ -45,16 +44,21 @@ export default function CollectionCardComponent({
const name = data.is_component ? "Component" : "Flow";
const navigate = useNavigate();
function handleInstall() {
setLoading(true);
getComponent(data.id).then((res) => {
const newFlow = cloneFLowWithParent(res, res.id, data.is_component);
addFlow(true, newFlow).then((id) => {
addFlow(true, newFlow)
.then((id) => {
setSuccessData({ title: `${name} Installed` });
setLoading(false);
if (!data.is_component) navigate("/flow/" + id);
})
.catch((error) => {
setLoading(false);
setErrorData({
title: `There was an error installing the ${name}`,
list: [error["response"]["data"]["detail"]],
});
});
});
}
@ -70,26 +74,19 @@ export default function CollectionCardComponent({
} else {
setLikes_count((prev) => prev - 1);
}
console.log(data.id);
postLikeComponent(data.id)
.then((response) => {
setLoadingLike(false);
setLikes_count(response.likes_count);
setLiked_by_user(response.liked_by_user);
setLikes_count(response.data.likes_count);
setLiked_by_user(response.data.liked_by_user);
})
.catch((error) => {
setLoadingLike(false);
setLikes_count(tempNum);
setLiked_by_user(temp);
if (error.response.status === 403 || error.response.status === 401) {
setValidApiKey(false);
} else {
console.error(error);
setErrorData({
title: `Error liking ${name}.`,
list: [error["response"]["data"]["detail"]],
});
}
});
}
}

View file

@ -554,6 +554,7 @@ export function FlowsProvider({ children }: { children: ReactNode }) {
};
const updateEdges = (edges: Edge[]) => {
if (edges)
edges.forEach((edge) => {
const targetHandleObject: targetHandleType = scapeJSONParse(
edge.targetHandle!

View file

@ -789,16 +789,6 @@ export async function getStoreTags() {
}
}
export async function postLikeComponent(componentId: string) {
try {
const res = await api.post(
`${BASE_URL_API}store/users/likes/${componentId}`
);
if (res.status === 200) {
return res.data;
}
} catch (error) {
console.log("Error:", error);
throw error;
}
}
export const postLikeComponent = (componentId: string) => {
return api.post(`${BASE_URL_API}store/users/likes/${componentId}`);
};

View file

@ -163,15 +163,19 @@ export function updateIds(
) {
let idsMap = {};
if (newFlow.nodes)
newFlow.nodes.forEach((node: NodeType) => {
// Generate a unique node ID
let newId = getNodeId(node.data.node?.flow ? "GroupNode" : node.data.type);
let newId = getNodeId(
node.data.node?.flow ? "GroupNode" : node.data.type
);
idsMap[node.id] = newId;
node.id = newId;
node.data.id = newId;
// Add the new node to the list of nodes in state
});
if (newFlow.edges)
newFlow.edges.forEach((edge: Edge) => {
edge.source = idsMap[edge.source];
edge.target = idsMap[edge.target];