{"version":3,"file":"normalize-webpack-path.cjs","names":[],"sources":["../src/normalize-webpack-path.ts"],"sourcesContent":["import type webpack from 'webpack';\nimport { resolve } from 'node:path';\n\nexport function getWebpackPath(\n  compiler: webpack.Compiler,\n  options: { framework: 'nextjs' | 'other' } = { framework: 'other' },\n): string {\n  const resolveWithContext = new Function(\n    'id',\n    'options',\n    'return typeof require === \"undefined\" ? \"\" : require.resolve(id, options)',\n  ) as (id: string, options?: { paths?: string[] }) => string;\n\n  try {\n    // @ts-ignore just throw err\n    compiler.webpack();\n    return '';\n  } catch (err) {\n    const trace = (err as Error).stack?.split('\\n') || [];\n    const webpackErrLocation =\n      trace.find((item) => item.includes('at webpack')) || '';\n    const webpackLocationWithDetail = webpackErrLocation\n      .replace(/[^\\(\\)]+/, '')\n      .slice(1, -1);\n    const webpackPath = webpackLocationWithDetail\n      .split(':')\n      .slice(0, -2)\n      .join(':');\n    if (options?.framework === 'nextjs') {\n      if (webpackPath.endsWith('webpack.js')) {\n        return webpackPath.replace('webpack.js', 'index.js');\n      }\n      return '';\n    }\n    return resolveWithContext('webpack', { paths: [webpackPath] });\n  }\n}\n\nexport const normalizeWebpackPath = (fullPath: string): string => {\n  if (fullPath === 'webpack') {\n    return process.env['FEDERATION_WEBPACK_PATH'] || fullPath;\n  }\n\n  if (process.env['FEDERATION_WEBPACK_PATH']) {\n    return resolve(\n      process.env['FEDERATION_WEBPACK_PATH'],\n      fullPath.replace('webpack', '../../'),\n    );\n  }\n\n  return fullPath;\n};\n"],"mappings":";;;;AAGA,SAAgB,eACd,UACA,UAA6C,EAAE,WAAW,SAAS,EAC3D;CACR,MAAM,qBAAqB,IAAI,SAC7B,MACA,WACA,gFACD;AAED,KAAI;AAEF,WAAS,SAAS;AAClB,SAAO;UACA,KAAK;EAOZ,MAAM,gBANS,IAAc,OAAO,MAAM,KAAK,IAAI,EAAE,EAE7C,MAAM,SAAS,KAAK,SAAS,aAAa,CAAC,IAAI,IAEpD,QAAQ,YAAY,GAAG,CACvB,MAAM,GAAG,GAAG,CAEZ,MAAM,IAAI,CACV,MAAM,GAAG,GAAG,CACZ,KAAK,IAAI;AACZ,MAAI,SAAS,cAAc,UAAU;AACnC,OAAI,YAAY,SAAS,aAAa,CACpC,QAAO,YAAY,QAAQ,cAAc,WAAW;AAEtD,UAAO;;AAET,SAAO,mBAAmB,WAAW,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;;;AAIlE,MAAa,wBAAwB,aAA6B;AAChE,KAAI,aAAa,UACf,QAAO,QAAQ,IAAI,8BAA8B;AAGnD,KAAI,QAAQ,IAAI,2BACd,+BACE,QAAQ,IAAI,4BACZ,SAAS,QAAQ,WAAW,SAAS,CACtC;AAGH,QAAO"}