Skip to content

Commit d8fcb12

Browse files
filipesilvahansl
authored andcommitted
fix(@angular/cli): support rxjs 5.5 path alias
Blocked by an answer to ReactiveX/rxjs#2979. Fix #8096
1 parent d339017 commit d8fcb12

File tree

1 file changed

+12
-2
lines changed
  • packages/@angular/cli/models/webpack-configs

1 file changed

+12
-2
lines changed

packages/@angular/cli/models/webpack-configs/common.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ import { NamedLazyChunksWebpackPlugin } from '../../plugins/named-lazy-chunks-we
55
import { InsertConcatAssetsWebpackPlugin } from '../../plugins/insert-concat-assets-webpack-plugin';
66
import { extraEntryParser, getOutputHashFormat, AssetPattern } from './utils';
77
import { isDirectory } from '../../utilities/is-directory';
8+
import { requireProjectModule } from '../../utilities/require-project-module';
89
import { WebpackConfigOptions } from '../webpack-config';
910

1011
const ConcatPlugin = require('webpack-concat-plugin');
1112
const ProgressPlugin = require('webpack/lib/ProgressPlugin');
1213
const CircularDependencyPlugin = require('circular-dependency-plugin');
1314
const SilentError = require('silent-error');
1415

15-
1616
/**
1717
* Enumerate loaders and their dependencies from this file to let the dependency validator
1818
* know they are used.
@@ -159,11 +159,21 @@ export function getCommonConfig(wco: WebpackConfigOptions) {
159159

160160
// Read the tsconfig to determine if we should prefer ES2015 modules.
161161

162+
// Load rxjs path aliases.
163+
// https://github.com/ReactiveX/rxjs/blob/master/doc/lettable-operators.md#build-and-treeshaking
164+
let alias = {};
165+
try {
166+
const rxjsPathMappingImport = 'rxjs/_esm5/path-mapping';
167+
const rxPaths = requireProjectModule(projectRoot, rxjsPathMappingImport);
168+
alias = rxPaths(nodeModules);
169+
} catch (e) { }
170+
162171
return {
163172
resolve: {
164173
extensions: ['.ts', '.js'],
165174
modules: ['node_modules', nodeModules],
166-
symlinks: !buildOptions.preserveSymlinks
175+
symlinks: !buildOptions.preserveSymlinks,
176+
alias
167177
},
168178
resolveLoader: {
169179
modules: [nodeModules, 'node_modules']

0 commit comments

Comments
 (0)