Cannot destructure property '__extends' of '_tslib.default' as it is undefined

Hello, anyone can help me with this?

I got error while exporting my EXPO App with embed and web as well.

Thanks!

 bun expo export:embed --eager --platform ios --dev
Cannot destructure property ‘__extends’ of ‘_tslib.default’ as it is undefined.TypeError: Cannot destructure property ‘__extends’ of ‘_tslib.default’ as it is undefined.TypeError: Cannot destructure property ‘__extends’ of ‘_tslib.default’ as it is undefined.at factory (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/@apollo/client/node_modules/tslib/modules/index.js:3:5)at loadModuleImplementation (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:285:5)at guardedLoadModule (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:190:12)at require (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:98:7)at factory (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/@apollo/client/utilities/policies/pagination.js:1:1)at loadModuleImplementation (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:285:5)at guardedLoadModule (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:190:12)at require (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:98:7)at factory (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/@apollo/client/utilities/index.js:9:1)at loadModuleImplementation (/Users/wolf/INTELLINEX/JobFusion/jobfusion-app/node_modules/metro-runtime/src/polyfills/require.js:285:5)error: “expo” exited with code 1

I’ve encountered that too, recently, that seems to be a problem with Metro and the TypeScript core library.

For me, this metro.config.js worked:

// Learn more https://docs.expo.io/guides/customizing-metro
const { getDefaultConfig } = require("expo/metro-config");

/** @type {import('expo/metro-config').MetroConfig} */
const config = getDefaultConfig(__dirname);

config.resolver.unstable_enablePackageExports = true;
config.resolver.unstable_conditionNames = [
  "require",
  "react-native",
  "development",
];

const ALIASES = {
  tslib: "tslib/tslib.es6.js",
};

config.resolver.resolveRequest = (context, moduleName, platform) => {
  return context.resolveRequest(
    context,
    ALIASES[moduleName] ?? moduleName,
    platform
  );
};

module.exports = config;

1 Like

Thank you very much @lenz :folded_hands: