tursodatabase / libsql-client-ts

TypeScript/JavaScript client API for libSQL
https://docs.turso.tech/sdk/ts/quickstart
MIT License
226 stars 32 forks source link

Spamming Module parse failed in NextJS #120

Closed ksamirdev closed 11 months ago

ksamirdev commented 11 months ago

Hello. I'm using @libsql/client/web with NextjS 14 app.

import { env } from "@/env";
import { drizzle } from "drizzle-orm/libsql";
import { createClient } from "@libsql/client/http";

const sqlite = createClient({
  url: env.SQLD_URL,
});

const db = drizzle(sqlite, { logger: true });

export { db, sqlite };

But It is keep spamming

 ⨯ ./node_modules/@libsql/hrana-client/LICENSE
Module parse failed: Unexpected token (1:4)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> MIT License
| 
| Copyright 2023 the sqld authors

Import trace for requested module:
./node_modules/@libsql/hrana-client/LICENSE
./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/ ./node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/ ./node_modules/@libsql/ sync ^\.\/.*$
./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/index.js
./node_modules/drizzle-orm/node_modules/@libsql/client/lib-esm/sqlite3.js
./node_modules/drizzle-orm/node_modules/@libsql/client/lib-esm/node.js
./node_modules/drizzle-orm/libsql/index.mjs
./lib/drizzle/index.ts
./app/auth/lucia.ts
./app/layout.tsx
 ⨯ ./node_modules/@libsql/hrana-client/LICENSE
Module parse failed: Unexpected token (1:4)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> MIT License
| 
| Copyright 2023 the sqld authors

Import trace for requested module:
./node_modules/@libsql/hrana-client/LICENSE
./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/ ./node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/node_modules/@libsql/ ./node_modules/drizzle-orm/node_modules/@libsql/ ./node_modules/@libsql/ sync ^\.\/.*$
./node_modules/drizzle-orm/node_modules/@libsql/client/node_modules/libsql/index.js
./node_modules/drizzle-orm/node_modules/@libsql/client/lib-esm/sqlite3.js
./node_modules/drizzle-orm/node_modules/@libsql/client/lib-esm/node.js
./node_modules/drizzle-orm/libsql/index.mjs
./lib/drizzle/index.ts
./app/auth/lucia.ts
./app/layout.tsx
ksamirdev commented 11 months ago

My next.config.js

/** @type {import('next').NextConfig} */
const nextConfig = {
  reactStrictMode: false,
  experimental: {
    serverComponentsExternalPackages: [
      "@libsql/client",
      "puppeteer-extra",
      "puppeteer-extra-plugin-stealth",
      "libsql",
    ],
  },
  images: {
    domains: ["cdn.simpleicons.org"],
  },
};

module.exports = nextConfig;
ksamirdev commented 11 months ago

Fixed this issue by adding drizzle-orm to experimental.serverComponentsExternalPackages in nextjs config!