import { defineStore } from 'pinia' import { ref } from 'vue' export interface FlowBuilderState { flowData: any agentId: string isActive: boolean } export const useFlowBuilderStore = defineStore('flowBuilder', () => { // State const flowData = ref({}) const agentId = ref('') const isActive = ref(false) // Actions const setFlowData = (data: any) => { flowData.value = data } const setAgentId = (id: string) => { agentId.value = id } const activateFlowBuilder = (data: any, id: string) => { flowData.value = data agentId.value = id isActive.value = true } const deactivateFlowBuilder = () => { flowData.value = {} agentId.value = '' isActive.value = false } const updateFlowData = (data: any) => { flowData.value = data } // Getters const hasFlowData = () => { return Object.keys(flowData.value).length > 0 } const getFlowData = () => { return flowData.value } const getAgentId = () => { return agentId.value } return { // State flowData, agentId, isActive, // Actions setFlowData, setAgentId, activateFlowBuilder, deactivateFlowBuilder, updateFlowData, // Getters hasFlowData, getFlowData, getAgentId } })