Rocky_Mountain_Vending/.pnpm-store/v10/files/9a/5295f918711c53799dc2d7b925f3cc9d58cb79f7f68257169e3edccf91bf340435aa631154a5568ac958d85fa60ca1e2d8bdcc7c4917cd594dbcdcdeb40757
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

83 lines
No EOL
2.9 KiB
Text

import path from 'path';
function getReactCompiler() {
try {
return require.resolve('babel-plugin-react-compiler');
} catch {
throw Object.defineProperty(new Error('Failed to load the `babel-plugin-react-compiler`. It is required to use the React Compiler. Please install it.'), "__NEXT_ERROR_CODE", {
value: "E78",
enumerable: false,
configurable: true
});
}
}
const getReactCompilerPlugins = (maybeOptions, isServer, isDev)=>{
if (!maybeOptions || isServer) {
return undefined;
}
const environment = {
enableNameAnonymousFunctions: isDev
};
const options = typeof maybeOptions === 'boolean' ? {} : maybeOptions;
const compilerOptions = {
...options,
environment
};
return [
[
getReactCompiler(),
compilerOptions
]
];
};
const getBabelLoader = (useSWCLoader, babelConfigFile, isServer, distDir, pagesDir, cwd, srcDir, dev, isClient, reactCompilerOptions, reactCompilerExclude)=>{
if (!useSWCLoader) {
// Make sure these options are kept in sync with
// `packages/next/src/build/get-babel-loader-config.ts`
const options = {
transformMode: 'default',
configFile: babelConfigFile,
isServer,
distDir,
pagesDir,
cwd,
srcDir: path.dirname(srcDir),
development: dev,
hasReactRefresh: dev && isClient,
hasJsxRuntime: true,
reactCompilerPlugins: getReactCompilerPlugins(reactCompilerOptions, isServer, dev),
reactCompilerExclude
};
return {
loader: require.resolve('./babel/loader/index'),
options
};
}
return undefined;
};
/**
* Get a separate babel loader for the react compiler, only used if Babel is not
* configured through e.g. .babelrc. If user have babel config, this should be configured in the babel loader itself.
* Note from react compiler:
* > For best results, compiler must run as the first plugin in your Babel pipeline so it receives input as close to the original source as possible.
*/ const getReactCompilerLoader = (reactCompilerOptions, cwd, isServer, reactCompilerExclude, isDev)=>{
const reactCompilerPlugins = getReactCompilerPlugins(reactCompilerOptions, isServer, isDev);
if (!reactCompilerPlugins) {
return undefined;
}
const babelLoaderOptions = {
transformMode: 'standalone',
cwd,
reactCompilerPlugins,
isServer
};
if (reactCompilerExclude) {
babelLoaderOptions.reactCompilerExclude = reactCompilerExclude;
}
return {
loader: require.resolve('./babel/loader/index'),
options: babelLoaderOptions
};
};
export { getBabelLoader, getReactCompilerLoader };
//# sourceMappingURL=get-babel-loader-config.js.map