This module cannot be imported from a Client Component module. It can only be used from a Server Component.

En klientkomponent importerar en modul märkt med `server-only`, vilket Next.js inte tillåter.

Förklaring

server-only-paketet markerar en modul som exklusivt server-side. Om modulen importeras av en klientkomponent, direkt eller indirekt, kastar Next.js ett byggtidsfel. Det är ett verktyg för att förhindra att serverkod av misstag hamnar i klientbundlen.

Användbara platser för server-only är databasanslutningar, moduler som läser hemliga miljövariabler, och funktioner som anropar interna API:er.

Vanliga orsaker

En klientkomponent importerar en funktion från en fil som innehåller import 'server-only'. En delad utility-fil är märkt server-only och importeras bredare än tänkt.

Lösning

Flytta importen till en server-komponent, Server Action, eller Route Handler:

// lib/db.js
import 'server-only'; // garanterar att filen aldrig bundlas till klienten

export async function getUser(id) {
  return db.users.findById(id);
}

Om delar av modulen behövs på klienten, dela upp den i en server-del och en klient-del.