nrwl / nx

Smart Monorepos · Fast CI
https://nx.dev
MIT License
23.69k stars 2.37k forks source link

Nx's Next.js SVGR integration conflicts with Next.js own features that load SVGs #20972

Closed DanielGiljam closed 9 months ago

DanielGiljam commented 10 months ago

Current Behavior

When flicking on Nx's Next.js SVGR integration in next.config.js (setting nx.svgr to true), Next.js start throwing an error if you have an icon.svg in app/.

Expected Behavior

Nx's Next.js SVGR integration and Next.js own features that load SVGs (such as the app icon / favicon feature) would work seamlessly together.

GitHub Repo

https://github.com/DanielGiljam/nx-nextjs-svgr-integration-issue

Steps to Reproduce

  1. Run pnpm start. See that app/icon.svg works well and the custom favicon appears in the browser tab start.
  2. Set nx.svgr to true in next.config.js. See that Next.js now gets stuck when trying to load app/icon.svg.

Nx Report

Node   : 21.2.0
   OS     : darwin-arm64
   pnpm   : 8.13.1

   nx                 : 17.2.8
   @nx/js             : 17.2.8
   @nx/jest           : 17.2.8
   @nx/linter         : 17.2.8
   @nx/eslint         : 17.2.8
   @nx/workspace      : 17.2.8
   @nx/cypress        : 17.2.8
   @nx/devkit         : 17.2.8
   @nx/eslint-plugin  : 17.2.8
   @nx/next           : 17.2.8
   @nx/react          : 17.2.8
   @nrwl/tao          : 17.2.8
   @nx/web            : 17.2.8
   typescript         : 5.2.2

Failure Logs

> nx run nx-nextjs-svgr-integration-issue:serve:development

- ready started server on 0.0.0.0:4200, url: http://localhost:4200
- event compiled client and server successfully in 797 ms (306 modules)
- wait compiling...
- wait compiling /page (client and server)...
- error next-app-loader?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Fdanielgiljam%2FDesktop%2FRepositories%2Fnx-nextjs-svgr-integration-issue%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Fdanielgiljam%2FDesktop%2FRepositories%2Fnx-nextjs-svgr-integration-issue&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=!:8
Error: Image import "next-metadata-image-loader?type=icon&segment=&basePath=&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js!/Users/danielgiljam/Desktop/Repositories/nx-nextjs-svgr-integration-issue/app/icon.svg?__next_metadata" is not a valid image file. The image may be corrupted or an unsupported format.
- wait compiling /_error (client and server)...
- error next-app-loader?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Fdanielgiljam%2FDesktop%2FRepositories%2Fnx-nextjs-svgr-integration-issue%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Fdanielgiljam%2FDesktop%2FRepositories%2Fnx-nextjs-svgr-integration-issue&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=!:8
Error: Image import "next-metadata-image-loader?type=icon&segment=&basePath=&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js!/Users/danielgiljam/Desktop/Repositories/nx-nextjs-svgr-integration-issue/app/icon.svg?__next_metadata" is not a valid image file. The image may be corrupted or an unsupported format.

Package Manager Version

No response

Operating System

Additional Information

No response

DanielGiljam commented 10 months ago

Surprisingly, when instead configuring @svgr/webpack manually as described in this guide, it doesn't prevent Next.js' app icon / favicon feature from working.

Crizzooo commented 10 months ago

Can repro. Extremely frustrating when first setting up nx and next.

I solved by exporting my next.config like this, but this feels hacky. Dissappointed

const nextConfig = {
  nx: {
    // Set this to true if you would like to to use SVGR
    // See: https://github.com/gregberge/svgr
    svgr: true,
  },
  experimental: {
    serverActions: true
  }
};

module.exports = {
  ...composePlugins(...plugins)(nextConfig),
  /**
   * @param {{ module: { rules: any[]; }; }} nextConfig
   */
  webpack(nextConfig) {
    // Grab the existing rule that handles SVG imports
    const fileLoaderRule = nextConfig.module.rules.find((rule) =>
      rule.test?.test?.('.svg'),
    )

    nextConfig.module.rules.push(
      // Reapply the existing rule, but only for svg imports ending in ?url
      {
        ...fileLoaderRule,
        test: /\.svg$/i,
        resourceQuery: /url/, // *.svg?url
      },
      // Convert all other *.svg imports to React components
      {
        test: /\.svg$/i,
        issuer: fileLoaderRule.issuer,
        resourceQuery: { not: [...fileLoaderRule.resourceQuery.not, /url/] }, // exclude if *.svg?url
        use: ['@svgr/webpack'],
      },
    )

    // Modify the file loader rule to ignore *.svg, since we have it handled now.
    fileLoaderRule.exclude = /\.svg$/i

    return nextConfig
  },
}
Adherentman commented 10 months ago

Same Error

my next.config.js

//@ts-check

// eslint-disable-next-line @typescript-eslint/no-var-requires
const { composePlugins, withNx } = require("@nx/next");
const withNextIntl = require("next-intl/plugin")();

/**
 * @type {import('@nx/next/plugins/with-nx').WithNxOptions}
 **/
const nextConfig = {
  nx: {
    // Set this to true if you would like to use SVGR
    // See: https://github.com/gregberge/svgr
    svgr: true,
  },
};

const plugins = [
  // Add more Next.js plugins to this list if needed.
  withNx,
  withNextIntl,
];

module.exports = composePlugins(...plugins)(nextConfig);

while get this error,but use @Crizzooo config is work

Internal error: Error: Invalid tag: data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAxOCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Imljb24vbGV2ZWwxIiBmaWx0ZXI9InVybCgjZmlsdGVyMF9kXzQ1NF83OTEyKSI+CjxnIGlkPSImIzIyOTsmIzE4OTsmIzE2MjsmIzIzMTsmIzEzODsmIzE4MjsmIzIzMTsmIzE4NzsmIzE0NzsmIzIyOTsmIzE0NDsmIzEzNjsiPgo8cGF0aCBkPSJNMTcuMjUgOS4yNVYxMi4wMzI0QzE3LjI1MDUgMTIuMDUyOCAxNy4yNTA4IDEyLjA3MzIgMTcuMjUwOCAxMi4wOTM3VjE0Ljg0MzdDMTcuMjUwOCAxNi4xNzI3IDE2LjE3MzQgMTcuMjUgMTQuODQ0NSAxNy4yNUMxMy41MTU2IDE3LjI1IDEyLjQzODMgMTYuMTcyNyAxMi40MzgzIDE0Ljg0MzdWMTIuMDkzN0MxMi40MzgzIDEwLjc2NDggMTMuNTE1NiA5LjY4NzUgMTQuODQ0NSA5LjY4NzVDMTUuMTQ3IDkuNjg3NSAxNS40MzY0IDkuNzQzMzEgMTUuNzAzMSA5Ljg0NTJWOS4yNUMxNS43MDMxIDUuNDM1NzggMTIuNzAyIDIuMzQzNzUgOSAyLjM0Mzc1QzUuMjk3OTcgMi4zNDM3NSAyLjI5Njg3IDUuNDM1NzggMi4yOTY4NyA5LjI1VjkuODQ1NDlDMi41NjM3NiA5Ljc0MzQyIDIuODUzNDggOS42ODc1IDMuMTU2MjUgOS42ODc1QzQuNDg1MTggOS42ODc1IDUuNTYyNSAxMC43NjQ4IDUuNTYyNSAxMi4wOTM3VjE0Ljg0MzdDNS41NjI1IDE2LjE3MjcgNC40ODUxOCAxNy4yNSAzLjE1NjI1IDE3LjI1QzEuODI3MzEgMTcuMjUgMC43NSAxNi4xNzI3IDAuNzUgMTQuODQzN1Y5LjI1QzAuNzUgNC41NTU1OCA0LjQ0MzY1IDAuNzUgOSAwLjc1QzEzLjU1NjMgMC43NSAxNy4yNSA0LjU1NTU4IDE3LjI1IDkuMjVaIiBmaWxsPSIjMjFDQ0JFIi8+CjxwYXRoIGQ9Ik05LjY4NjczIDExLjc1QzkuNjg2NzMgMTEuMzcwMyA5Ljk5NDUzIDExLjA2MjUgMTAuMzc0MiAxMS4wNjI1QzEwLjc1MzkgMTEuMDYyNSAxMS4wNjE3IDExLjM3MDMgMTEuMDYxNyAxMS43NVYxNS4xODc1QzExLjA2MTcgMTUuNTY3MiAxMC43NTM5IDE1Ljg3NSAxMC4zNzQyIDE1Ljg3NUM5Ljk5NDUzIDE1Ljg3NSA5LjY4NjczIDE1LjU2NzIgOS42ODY3MyAxNS4xODc1VjExLjc1WiIgZmlsbD0iIzIxQ0NCRSIvPgo8cGF0aCBkPSJNNi45Mzc1IDEyLjQzNzVDNi45Mzc1IDEyLjA1NzggNy4yNDUzIDExLjc1IDcuNjI1IDExLjc1QzguMDA0NjkgMTEuNzUgOC4zMTI1IDEyLjA1NzggOC4zMTI1IDEyLjQzNzVWMTQuNUM4LjMxMjUgMTQuODc5NyA4LjAwNDY5IDE1LjE4NzUgNy42MjUgMTUuMTg3NUM3LjI0NTMgMTUuMTg3NSA2LjkzNzUgMTQuODc5NyA2LjkzNzUgMTQuNVYxMi40Mzc1WiIgZmlsbD0iIzIxQ0NCRSIvPgo8L2c+CjwvZz4KPGRlZnM+CjxmaWx0ZXIgaWQ9ImZpbHRlcjBfZF80NTRfNzkxMiIgeD0iMCIgeT0iMCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjIwIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPgo8ZmVPZmZzZXQgZHk9IjIiLz4KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMjUgMCIvPgo8ZmVCbGVuZCBtb2RlPSJvdmVybGF5IiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNDU0Xzc5MTIiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfNDU0Xzc5MTIiIHJlc3VsdD0ic2hhcGUiLz4KPC9maWx0ZXI+CjwvZGVmcz4KPC9zdmc+Cg==
    at tA (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:12:47369)
    at tP (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:12:46988)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38720
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38730
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:39374)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at ak (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:49406)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46647)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38901
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:39374)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at ag (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:7923)
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:41216)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38901
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:39374)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at ag (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:7923)
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:41216)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at ak (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:49406)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46647)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38901
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:39374)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at ak (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:49406)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46647)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at a_ (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:50165)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:38901
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:39374)
    at e (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:46298)
    at aS (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:48276)
    at ag (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:7923)
    at /Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:13014
    at ab (/Users/xuzihao/work/ym-workspace/node_modules/.pnpm/next@14.0.4_@babel+core@7.23.7_react-dom@18.2.0_react@18.2.0/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:35:13038)
ndcunningham commented 10 months ago

We will look into this since it should work OOTB and give an update

jaosn60810 commented 9 months ago

Turn off NX SVGR and use next-plugin-svgr instead.


//@ts-check

// eslint-disable-next-line @typescript-eslint/no-var-requires
const { composePlugins, withNx } = require('@nx/next');

const { i18n } = require('./next-i18next.config');

process.env.I18NEXT_DEFAULT_CONFIG_PATH = `${__dirname}/next-i18next.config.js`;

const { configureRuntimeEnv } = require('next-runtime-env/build/configure');

configureRuntimeEnv();

/**
 * @type {import('@nx/next/plugins/with-nx').WithNxOptions}
 **/
const nextConfig = {
  nx: {
    // Set this to true if you would like to use SVGR
    // See: https://github.com/gregberge/svgr
    svgr: false,
  },
  images: {
    unoptimized: false,
  },
  i18n,
};

const plugins = [
  // Add more Next.js plugins to this list if needed.
  require('next-plugin-svgr'),
  withNx,
];

module.exports = composePlugins(...plugins)(nextConfig)
github-actions[bot] commented 8 months ago

This issue has been closed for more than 30 days. If this issue is still occuring, please open a new issue with more recent context.