File size: 957 Bytes
eeb9404
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { NextResponse } from 'next/server';
import { ensureDefaultWorkspace } from '@/lib/auth/default-workspace';
import { logger } from '@/lib/utils';

export async function POST() {
  if (process.env.OSW_DESKTOP !== 'true') {
    return NextResponse.json({ error: 'Not available' }, { status: 404 });
  }

  try {
    const workspaceId = await ensureDefaultWorkspace('desktop');
    return NextResponse.json({ workspaceId });
  } catch (error) {
    logger.error('[API /api/auth/desktop-init] Error:', error);
    // Desktop is a local single-user app — surface the real failure so users
    // can report something actionable instead of a generic string.
    const message = error instanceof Error ? error.message : String(error);
    const detail = error instanceof Error && error.stack ? error.stack : undefined;
    return NextResponse.json(
      { error: `Failed to initialize workspace: ${message}`, detail },
      { status: 500 }
    );
  }
}