import { nxPreset } from '@nx/jest/preset.js'; import { createEsmPreset } from 'jest-preset-angular/presets/index.js'; const angularEsmPreset = createEsmPreset({ diagnostics: false, tsconfig: '/tsconfig.spec.json', }); export default { ...nxPreset, ...angularEsmPreset, displayName: 'web', setupFilesAfterEnv: ['/src/test-setup.ts'], coverageDirectory: '../../coverage/apps/web', resolver: nxPreset.resolver, moduleFileExtensions: Array.from( new Set([ ...(nxPreset.moduleFileExtensions ?? []), ...(angularEsmPreset.moduleFileExtensions ?? []), ]) ), testMatch: nxPreset.testMatch, testEnvironmentOptions: {}, snapshotSerializers: angularEsmPreset.snapshotSerializers, moduleNameMapper: { ...(angularEsmPreset.moduleNameMapper ?? {}), '^@iptvnator/portal/xtream/feature$': '/src/test-stubs/xtream-feature.stub.ts', tslib: 'tslib/tslib.es6.js', '^iptv-playlist-parser$': '/src/test-stubs/iptv-playlist-parser.mjs', '^rxjs': '/../../node_modules/rxjs/dist/bundles/rxjs.umd.js', '^uuid$': '/../../node_modules/uuid/wrapper.mjs', }, transform: angularEsmPreset.transform, transformIgnorePatterns: [], extensionsToTreatAsEsm: angularEsmPreset.extensionsToTreatAsEsm, coverageReporters: [ ...(nxPreset.coverageReporters ?? []), ], };