Skip to content

Commit 76a0425

Browse files
Revert "fix(workspaces init): fix switch workspace fully + first workflow sho…" (#562)
This reverts commit 9910584.
1 parent 9910584 commit 76a0425

4 files changed

Lines changed: 11 additions & 60 deletions

File tree

apps/sim/app/workspace/[workspaceId]/w/components/sidebar/sidebar.tsx

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,7 @@ const IS_DEV = process.env.NODE_ENV === 'development'
3232
export function Sidebar() {
3333
useGlobalShortcuts()
3434

35-
const {
36-
workflows,
37-
createWorkflow,
38-
isLoading: workflowsLoading,
39-
targetWorkspaceId,
40-
} = useWorkflowRegistry()
35+
const { workflows, createWorkflow, isLoading: workflowsLoading } = useWorkflowRegistry()
4136
const { isPending: sessionLoading } = useSession()
4237
const userPermissions = useUserPermissionsContext()
4338
const isLoading = workflowsLoading || sessionLoading
@@ -67,12 +62,9 @@ export function Sidebar() {
6762
const regular: WorkflowMetadata[] = []
6863
const temp: WorkflowMetadata[] = []
6964

70-
// Use targetWorkspaceId during transitions to prevent empty sidebar
71-
const effectiveWorkspaceId = targetWorkspaceId || workspaceId
72-
7365
if (!isLoading) {
7466
Object.values(workflows).forEach((workflow) => {
75-
if (workflow.workspaceId === effectiveWorkspaceId || !workflow.workspaceId) {
67+
if (workflow.workspaceId === workspaceId || !workflow.workspaceId) {
7668
if (workflow.marketplaceData?.status === 'temp') {
7769
temp.push(workflow)
7870
} else {
@@ -99,7 +91,7 @@ export function Sidebar() {
9991
}
10092

10193
return { regularWorkflows: regular, tempWorkflows: temp }
102-
}, [workflows, isLoading, workspaceId, targetWorkspaceId])
94+
}, [workflows, isLoading, workspaceId])
10395

10496
// Create workflow handler
10597
const handleCreateWorkflow = async (folderId?: string) => {

apps/sim/app/workspace/[workspaceId]/w/page.tsx

Lines changed: 6 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -7,44 +7,20 @@ import { useWorkflowRegistry } from '@/stores/workflows/registry/store'
77

88
export default function WorkflowsPage() {
99
const router = useRouter()
10-
const { workflows, isLoading, loadWorkflows } = useWorkflowRegistry()
10+
const { workflows, isLoading } = useWorkflowRegistry()
1111

1212
const params = useParams()
13-
const workspaceId = params.workspaceId as string
14-
15-
// Always load workflows for the current workspace to ensure we have the correct ones
16-
useEffect(() => {
17-
if (!isLoading) {
18-
loadWorkflows(workspaceId)
19-
}
20-
}, [workspaceId, loadWorkflows, isLoading])
13+
const workspaceId = params.workspaceId
2114

2215
useEffect(() => {
2316
// Wait for workflows to load
2417
if (isLoading) return
2518

26-
// Filter workflows for this workspace only
27-
const workspaceWorkflows = Object.values(workflows).filter(
28-
(workflow) => workflow.workspaceId === workspaceId
29-
)
30-
31-
// If we have workflows for this workspace, redirect to the first one
32-
if (workspaceWorkflows.length > 0) {
33-
// Sort by last modified date (newest first) - same logic as sidebar
34-
const sortedWorkflows = workspaceWorkflows.sort((a, b) => {
35-
const dateA =
36-
a.lastModified instanceof Date
37-
? a.lastModified.getTime()
38-
: new Date(a.lastModified).getTime()
39-
const dateB =
40-
b.lastModified instanceof Date
41-
? b.lastModified.getTime()
42-
: new Date(b.lastModified).getTime()
43-
return dateB - dateA
44-
})
19+
const workflowIds = Object.keys(workflows)
4520

46-
const firstWorkflowId = sortedWorkflows[0].id
47-
router.replace(`/workspace/${workspaceId}/w/${firstWorkflowId}`)
21+
// If we have workflows, redirect to the first one
22+
if (workflowIds.length > 0) {
23+
router.replace(`/workspace/${workspaceId}/w/${workflowIds[0]}`)
4824
return
4925
}
5026

apps/sim/stores/workflows/registry/store.ts

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -155,17 +155,7 @@ async function fetchWorkflowsFromDB(workspaceId?: string): Promise<void> {
155155
if (!currentState.activeWorkflowId && Object.keys(registryWorkflows).length > 0) {
156156
const firstWorkflowId = Object.keys(registryWorkflows)[0]
157157
useWorkflowRegistry.setState({ activeWorkflowId: firstWorkflowId })
158-
logger.info(`Set first workflow as active: ${firstWorkflowId}`, {
159-
workspaceId,
160-
totalWorkflows: Object.keys(registryWorkflows).length,
161-
workflowIds: Object.keys(registryWorkflows),
162-
})
163-
} else {
164-
logger.info(`Not setting active workflow`, {
165-
currentActiveWorkflowId: currentState.activeWorkflowId,
166-
workflowCount: Object.keys(registryWorkflows).length,
167-
workspaceId,
168-
})
158+
logger.info(`Set first workflow as active: ${firstWorkflowId}`)
169159
}
170160

171161
logger.info(
@@ -264,8 +254,6 @@ export const useWorkflowRegistry = create<WorkflowRegistry>()(
264254
error: null,
265255
// Initialize deployment statuses
266256
deploymentStatuses: {},
267-
// Track target workspace during transitions to prevent empty sidebar
268-
targetWorkspaceId: null,
269257

270258
// Set loading state
271259
setLoading: (loading: boolean) => {
@@ -333,13 +321,12 @@ export const useWorkflowRegistry = create<WorkflowRegistry>()(
333321
// Clear current workspace state
334322
resetWorkflowStores()
335323

336-
// Update state with target workspace ID for sidebar filtering
324+
// Update state
337325
set({
338326
activeWorkflowId: null,
339327
workflows: {},
340328
isLoading: true,
341329
error: null,
342-
targetWorkspaceId: workspaceId,
343330
})
344331

345332
// Fetch workflows for the new workspace
@@ -351,12 +338,9 @@ export const useWorkflowRegistry = create<WorkflowRegistry>()(
351338
set({
352339
error: `Failed to switch workspace: ${error instanceof Error ? error.message : 'Unknown error'}`,
353340
isLoading: false,
354-
targetWorkspaceId: null,
355341
})
356342
} finally {
357343
setWorkspaceTransitioning(false)
358-
// Clear target workspace ID after transition completes
359-
set({ targetWorkspaceId: null })
360344
}
361345
},
362346

apps/sim/stores/workflows/registry/types.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ export interface WorkflowRegistryState {
2727
isLoading: boolean
2828
error: string | null
2929
deploymentStatuses: Record<string, DeploymentStatus>
30-
targetWorkspaceId: string | null
3130
}
3231

3332
export interface WorkflowRegistryActions {

0 commit comments

Comments
 (0)