£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyʦ•ꎅȮFÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~芩ÊǍí`ÔÑ©ú뙵'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶êםӼ㞪éUWŸÈË%DÒÕ¬ï‘]/Åcx ‰ï2ß]ä6G[]S£Ôϯrs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ ¯¹ægƒÛowЍø^d™ý½ßB7áyMä9ÜÖUã !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! const defaultConfig = require('@wordpress/scripts/config/jest-unit.config.js'); const webpackConfig = require('./webpack.config.js'); // Extract aliases from webpack config const webpackAliases = webpackConfig.resolve.alias || {}; // Convert webpack aliases to Jest moduleNameMapper format // Webpack uses @ prefix with paths, Jest needs regex patterns const convertAliasesToModuleNameMapper = (aliases) => { return Object.entries(aliases).reduce((moduleNameMapper, [alias, path]) => { // Convert webpack alias to Jest moduleNameMapper format // e.g., @library -> ^@library/(.*)$ const aliasKey = `^${alias}/(.*)$`; // Convert absolute path to relative path that Jest expects // Remove any __dirname references and ensure path ends with /$1 const aliasPath = path.replace(/.*?(?=src)/, '/') + '/$1'; moduleNameMapper[aliasKey] = aliasPath; return moduleNameMapper; }, {}); }; // Create Jest moduleNameMapper from webpack aliases const aliasesModuleNameMapper = convertAliasesToModuleNameMapper(webpackAliases); // Special case for @constants which doesn't have a trailing slash in imports if (webpackAliases['@constants']) { const constantsPath = webpackAliases['@constants'].replace( /.*?(?=src)/, '/', ); aliasesModuleNameMapper['^@constants$'] = constantsPath; } module.exports = { ...defaultConfig, moduleNameMapper: { ...defaultConfig.moduleNameMapper, ...aliasesModuleNameMapper, }, setupFiles: ['/jest.setup.js'], };