import { PikkuFetch } from '@heygermany/sdk/pikku/pikku-fetch.gen.js' // serverUrl resolution mirrors the green apps (germantax/perauset): the E2E // runtime override, then the build-time var, then a bare '/api' — the fabric // dispatcher routes every /api/* path to the API on the same host, so '/api' is // always correct on deploy without knowing the domain at build time. Never a // hardcoded localhost origin. const serverUrl = (): string => { if (typeof window !== 'undefined' && (window as Window & { __E2E_API_URL?: string }).__E2E_API_URL) { return (window as Window & { __E2E_API_URL?: string }).__E2E_API_URL as string } return import.meta.env.VITE_API_URL ?? import.meta.env.VITE_API_BASE_URL ?? '/api' } let client: PikkuFetch | null = null const pikku = (): PikkuFetch => { if (!client) { client = new PikkuFetch({ serverUrl: serverUrl(), credentials: 'include', }) } return client } export { pikku }