diff --git a/CODING_STANDARDS.md b/CODING_STANDARDS.md index e176eb4878b..46a16b6b31c 100644 --- a/CODING_STANDARDS.md +++ b/CODING_STANDARDS.md @@ -128,7 +128,7 @@ class ConfigBuilder { #### RxJS When dealing with RxJS operators, import the lettable operator (e.g. -`import {map} from 'rxjs/operators'`), as opposed to using the "patch" imports which pollute the +`import {map} from 'rxjs/operators/map'`), as opposed to using the "patch" imports which pollute the user's global Observable object (e.g. `import 'rxjs/add/operator/map'`): ```ts @@ -137,7 +137,7 @@ import 'rxjs/add/operator/map'; someObservable.map(...).subscribe(...); // YES -import {map} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; someObservable.pipe(map(...)).subscribe(...); ``` diff --git a/src/cdk/a11y/focus-trap.ts b/src/cdk/a11y/focus-trap.ts index 41a4a19dcb0..a89b8cdd0fd 100644 --- a/src/cdk/a11y/focus-trap.ts +++ b/src/cdk/a11y/focus-trap.ts @@ -17,7 +17,7 @@ import { } from '@angular/core'; import {coerceBooleanProperty} from '@angular/cdk/coercion'; import {Platform} from '@angular/cdk/platform'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import {InteractivityChecker} from './interactivity-checker'; diff --git a/src/cdk/a11y/list-key-manager.spec.ts b/src/cdk/a11y/list-key-manager.spec.ts index f4f50f4e9f7..26b5975d810 100644 --- a/src/cdk/a11y/list-key-manager.spec.ts +++ b/src/cdk/a11y/list-key-manager.spec.ts @@ -1,5 +1,5 @@ import {DOWN_ARROW, TAB, UP_ARROW} from '@angular/cdk/keycodes'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import {QueryList} from '@angular/core'; import {fakeAsync, tick} from '@angular/core/testing'; import {createKeyboardEvent} from '../testing/event-objects'; diff --git a/src/cdk/a11y/list-key-manager.ts b/src/cdk/a11y/list-key-manager.ts index 2f26b51f9a6..fca032b3dcc 100644 --- a/src/cdk/a11y/list-key-manager.ts +++ b/src/cdk/a11y/list-key-manager.ts @@ -10,7 +10,10 @@ import {QueryList} from '@angular/core'; import {Subject} from 'rxjs/Subject'; import {Subscription} from 'rxjs/Subscription'; import {UP_ARROW, DOWN_ARROW, TAB, A, Z, ZERO, NINE} from '@angular/cdk/keycodes'; -import {debounceTime, filter, map, tap} from 'rxjs/operators'; +import {debounceTime} from 'rxjs/operators/debounceTime'; +import {filter} from 'rxjs/operators/filter'; +import {map} from 'rxjs/operators/map'; +import {tap} from 'rxjs/operators/tap'; /** This interface is for items that can be passed to a ListKeyManager. */ export interface ListKeyManagerOption { diff --git a/src/cdk/layout/breakpoints-observer.ts b/src/cdk/layout/breakpoints-observer.ts index 1db547fd411..b5d2c2c9a27 100644 --- a/src/cdk/layout/breakpoints-observer.ts +++ b/src/cdk/layout/breakpoints-observer.ts @@ -9,7 +9,9 @@ import {Injectable, NgZone, OnDestroy} from '@angular/core'; import {MediaMatcher} from './media-matcher'; import {Observable} from 'rxjs/Observable'; import {Subject} from 'rxjs/Subject'; -import {map, startWith, takeUntil} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; +import {startWith} from 'rxjs/operators/startWith'; +import {takeUntil} from 'rxjs/operators/takeUntil'; import {coerceArray} from '@angular/cdk/coercion'; import {combineLatest} from 'rxjs/observable/combineLatest'; import {fromEventPattern} from 'rxjs/observable/fromEventPattern'; diff --git a/src/cdk/observers/observe-content.ts b/src/cdk/observers/observe-content.ts index 88e8603e994..9d71aba87d1 100644 --- a/src/cdk/observers/observe-content.ts +++ b/src/cdk/observers/observe-content.ts @@ -19,7 +19,7 @@ import { NgZone, } from '@angular/core'; import {Subject} from 'rxjs/Subject'; -import {debounceTime} from 'rxjs/operators'; +import {debounceTime} from 'rxjs/operators/debounceTime'; /** * Factory that creates a new MutationObserver and allows us to stub it out in unit tests. diff --git a/src/cdk/overlay/keyboard/overlay-keyboard-dispatcher.ts b/src/cdk/overlay/keyboard/overlay-keyboard-dispatcher.ts index 3eee62dc56a..55c1f2c87d9 100644 --- a/src/cdk/overlay/keyboard/overlay-keyboard-dispatcher.ts +++ b/src/cdk/overlay/keyboard/overlay-keyboard-dispatcher.ts @@ -9,7 +9,7 @@ import {Injectable, Optional, SkipSelf, OnDestroy} from '@angular/core'; import {OverlayRef} from '../overlay-ref'; import {Subscription} from 'rxjs/Subscription'; -import {filter} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; import {fromEvent} from 'rxjs/observable/fromEvent'; /** diff --git a/src/cdk/overlay/overlay-ref.ts b/src/cdk/overlay/overlay-ref.ts index 5d887ffd3e6..0f36b2a0ae7 100644 --- a/src/cdk/overlay/overlay-ref.ts +++ b/src/cdk/overlay/overlay-ref.ts @@ -12,7 +12,7 @@ import {OverlayConfig} from './overlay-config'; import {OverlayKeyboardDispatcher} from './keyboard/overlay-keyboard-dispatcher'; import {Observable} from 'rxjs/Observable'; import {Subject} from 'rxjs/Subject'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; /** diff --git a/src/cdk/scrolling/scroll-dispatcher.ts b/src/cdk/scrolling/scroll-dispatcher.ts index c83da988876..4301730314c 100644 --- a/src/cdk/scrolling/scroll-dispatcher.ts +++ b/src/cdk/scrolling/scroll-dispatcher.ts @@ -13,7 +13,8 @@ import {Subscription} from 'rxjs/Subscription'; import {Observable} from 'rxjs/Observable'; import {of as observableOf} from 'rxjs/observable/of'; import {fromEvent} from 'rxjs/observable/fromEvent'; -import {auditTime, filter} from 'rxjs/operators'; +import {auditTime} from 'rxjs/operators/auditTime'; +import {filter} from 'rxjs/operators/filter'; import {CdkScrollable} from './scrollable'; diff --git a/src/cdk/scrolling/viewport-ruler.ts b/src/cdk/scrolling/viewport-ruler.ts index 6e4e7cba2d6..a2e90e75ff2 100644 --- a/src/cdk/scrolling/viewport-ruler.ts +++ b/src/cdk/scrolling/viewport-ruler.ts @@ -11,7 +11,7 @@ import {Platform} from '@angular/cdk/platform'; import {Observable} from 'rxjs/Observable'; import {fromEvent} from 'rxjs/observable/fromEvent'; import {merge} from 'rxjs/observable/merge'; -import {auditTime} from 'rxjs/operators'; +import {auditTime} from 'rxjs/operators/auditTime'; import {Subscription} from 'rxjs/Subscription'; import {of as observableOf} from 'rxjs/observable/of'; diff --git a/src/cdk/table/table.spec.ts b/src/cdk/table/table.spec.ts index da27d0300ca..ec9f85ae40f 100644 --- a/src/cdk/table/table.spec.ts +++ b/src/cdk/table/table.spec.ts @@ -6,7 +6,7 @@ import {BehaviorSubject} from 'rxjs/BehaviorSubject'; import {combineLatest} from 'rxjs/observable/combineLatest'; import {CdkTableModule} from './index'; import {Observable} from 'rxjs/Observable'; -import {map} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; import { getTableDuplicateColumnNameError, getTableMissingMatchingRowDefError, diff --git a/src/cdk/table/table.ts b/src/cdk/table/table.ts index b2df1ea5cca..6f0301decf5 100644 --- a/src/cdk/table/table.ts +++ b/src/cdk/table/table.ts @@ -31,7 +31,7 @@ import { } from '@angular/core'; import {CollectionViewer, DataSource} from '@angular/cdk/collections'; import {CdkCellOutlet, CdkCellOutletRowContext, CdkHeaderRowDef, CdkRowDef} from './row'; -import {takeUntil} from 'rxjs/operators'; +import {takeUntil} from 'rxjs/operators/takeUntil'; import {BehaviorSubject} from 'rxjs/BehaviorSubject'; import {Subscription} from 'rxjs/Subscription'; import {Subject} from 'rxjs/Subject'; diff --git a/src/demo-app/system-config.ts b/src/demo-app/system-config.ts index 45452b17bfc..816b61771a3 100644 --- a/src/demo-app/system-config.ts +++ b/src/demo-app/system-config.ts @@ -82,7 +82,6 @@ System.config({ packages: { // Thirdparty barrels. 'rxjs': {main: 'index'}, - 'rxjs/operators': {main: 'index'}, // Set the default extension for the root package, because otherwise the demo-app can't // be built within the production mode. Due to missing file extensions. diff --git a/src/e2e-app/system-config.ts b/src/e2e-app/system-config.ts index 712bb231b4d..987755b1e8f 100644 --- a/src/e2e-app/system-config.ts +++ b/src/e2e-app/system-config.ts @@ -82,7 +82,6 @@ System.config({ packages: { // Thirdparty barrels. 'rxjs': {main: 'index'}, - 'rxjs/operators': {main: 'index'}, // Set the default extension for the root package, because otherwise the demo-app can't // be built within the production mode. Due to missing file extensions. diff --git a/src/lib/autocomplete/autocomplete-trigger.ts b/src/lib/autocomplete/autocomplete-trigger.ts index 1b9443b48a7..e92e2dd4414 100644 --- a/src/lib/autocomplete/autocomplete-trigger.ts +++ b/src/lib/autocomplete/autocomplete-trigger.ts @@ -17,7 +17,11 @@ import { ScrollStrategy, } from '@angular/cdk/overlay'; import {TemplatePortal} from '@angular/cdk/portal'; -import {filter, first, switchMap, tap, delay} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; +import {first} from 'rxjs/operators/first'; +import {switchMap} from 'rxjs/operators/switchMap'; +import {tap} from 'rxjs/operators/tap'; +import {delay} from 'rxjs/operators/delay'; import { ChangeDetectorRef, Directive, diff --git a/src/lib/autocomplete/autocomplete.spec.ts b/src/lib/autocomplete/autocomplete.spec.ts index fd64301d34f..ef03944435d 100644 --- a/src/lib/autocomplete/autocomplete.spec.ts +++ b/src/lib/autocomplete/autocomplete.spec.ts @@ -1,7 +1,8 @@ import {Direction, Directionality} from '@angular/cdk/bidi'; import {DOWN_ARROW, ENTER, ESCAPE, SPACE, UP_ARROW, TAB} from '@angular/cdk/keycodes'; import {OverlayContainer} from '@angular/cdk/overlay'; -import {map, startWith} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; +import {startWith} from 'rxjs/operators/startWith'; import {ScrollDispatcher} from '@angular/cdk/scrolling'; import { createKeyboardEvent, diff --git a/src/lib/chips/chip-list.ts b/src/lib/chips/chip-list.ts index c38a31b462d..e8a4d67c8e7 100644 --- a/src/lib/chips/chip-list.ts +++ b/src/lib/chips/chip-list.ts @@ -11,7 +11,7 @@ import {Directionality} from '@angular/cdk/bidi'; import {coerceBooleanProperty} from '@angular/cdk/coercion'; import {SelectionModel} from '@angular/cdk/collections'; import {BACKSPACE, LEFT_ARROW, RIGHT_ARROW} from '@angular/cdk/keycodes'; -import {startWith} from 'rxjs/operators'; +import {startWith} from 'rxjs/operators/startWith'; import { AfterContentInit, ChangeDetectionStrategy, diff --git a/src/lib/datepicker/calendar.ts b/src/lib/datepicker/calendar.ts index 4be8b54ba03..321e177a74c 100644 --- a/src/lib/datepicker/calendar.ts +++ b/src/lib/datepicker/calendar.ts @@ -36,7 +36,7 @@ import { SimpleChanges, } from '@angular/core'; import {DateAdapter, MAT_DATE_FORMATS, MatDateFormats} from '@angular/material/core'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import {Subscription} from 'rxjs/Subscription'; import {createMissingDateImplError} from './datepicker-errors'; import {MatDatepickerIntl} from './datepicker-intl'; diff --git a/src/lib/datepicker/datepicker.ts b/src/lib/datepicker/datepicker.ts index ab355ca4108..f7b67becb27 100644 --- a/src/lib/datepicker/datepicker.ts +++ b/src/lib/datepicker/datepicker.ts @@ -18,7 +18,7 @@ import { ScrollStrategy, } from '@angular/cdk/overlay'; import {ComponentPortal} from '@angular/cdk/portal'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import { AfterContentInit, ChangeDetectionStrategy, diff --git a/src/lib/dialog/dialog-ref.ts b/src/lib/dialog/dialog-ref.ts index 791613b681f..c169de0f8fc 100644 --- a/src/lib/dialog/dialog-ref.ts +++ b/src/lib/dialog/dialog-ref.ts @@ -7,7 +7,8 @@ */ import {OverlayRef, GlobalPositionStrategy} from '@angular/cdk/overlay'; -import {filter, first} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; +import {first} from 'rxjs/operators/first'; import {DialogPosition} from './dialog-config'; import {Observable} from 'rxjs/Observable'; import {Subject} from 'rxjs/Subject'; diff --git a/src/lib/dialog/dialog.ts b/src/lib/dialog/dialog.ts index e530771c43b..8c3047a0146 100644 --- a/src/lib/dialog/dialog.ts +++ b/src/lib/dialog/dialog.ts @@ -15,7 +15,8 @@ import { ScrollStrategy, } from '@angular/cdk/overlay'; import {ComponentPortal, ComponentType, PortalInjector, TemplatePortal} from '@angular/cdk/portal'; -import {startWith, filter} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; +import {startWith} from 'rxjs/operators/startWith'; import {Location} from '@angular/common'; import { ComponentRef, diff --git a/src/lib/expansion/expansion-panel-header.ts b/src/lib/expansion/expansion-panel-header.ts index 7722eb97dc6..05baf2b90e9 100644 --- a/src/lib/expansion/expansion-panel-header.ts +++ b/src/lib/expansion/expansion-panel-header.ts @@ -9,7 +9,7 @@ import {animate, state, style, transition, trigger} from '@angular/animations'; import {FocusMonitor} from '@angular/cdk/a11y'; import {ENTER, SPACE} from '@angular/cdk/keycodes'; -import {filter} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; import { ChangeDetectionStrategy, ChangeDetectorRef, diff --git a/src/lib/form-field/form-field.ts b/src/lib/form-field/form-field.ts index 2ea2394981a..1397b95c4d6 100644 --- a/src/lib/form-field/form-field.ts +++ b/src/lib/form-field/form-field.ts @@ -8,7 +8,8 @@ import {animate, state, style, transition, trigger} from '@angular/animations'; import {coerceBooleanProperty} from '@angular/cdk/coercion'; -import {first, startWith} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; +import {startWith} from 'rxjs/operators/startWith'; import { AfterContentChecked, AfterContentInit, diff --git a/src/lib/icon/icon-registry.ts b/src/lib/icon/icon-registry.ts index 1d45680a75b..6d054db8a7f 100644 --- a/src/lib/icon/icon-registry.ts +++ b/src/lib/icon/icon-registry.ts @@ -6,7 +6,11 @@ * found in the LICENSE file at https://angular.io/license */ -import {catchError, tap, finalize, map, share} from 'rxjs/operators'; +import {catchError} from 'rxjs/operators/catchError'; +import {tap} from 'rxjs/operators/tap'; +import {finalize} from 'rxjs/operators/finalize'; +import {map} from 'rxjs/operators/map'; +import {share} from 'rxjs/operators/share'; import {Injectable, Optional, SecurityContext, SkipSelf} from '@angular/core'; import {HttpClient} from '@angular/common/http'; import {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser'; diff --git a/src/lib/icon/icon.ts b/src/lib/icon/icon.ts index 88e20abb706..2781befbdba 100644 --- a/src/lib/icon/icon.ts +++ b/src/lib/icon/icon.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import { Attribute, ChangeDetectionStrategy, diff --git a/src/lib/menu/menu-directive.ts b/src/lib/menu/menu-directive.ts index 40b6e36b2de..3c8b777aa08 100644 --- a/src/lib/menu/menu-directive.ts +++ b/src/lib/menu/menu-directive.ts @@ -10,7 +10,9 @@ import {AnimationEvent} from '@angular/animations'; import {FocusKeyManager} from '@angular/cdk/a11y'; import {Direction} from '@angular/cdk/bidi'; import {ESCAPE, LEFT_ARROW, RIGHT_ARROW} from '@angular/cdk/keycodes'; -import {startWith, switchMap, first} from 'rxjs/operators'; +import {startWith} from 'rxjs/operators/startWith'; +import {switchMap} from 'rxjs/operators/switchMap'; +import {first} from 'rxjs/operators/first'; import { AfterContentInit, ChangeDetectionStrategy, diff --git a/src/lib/menu/menu-trigger.ts b/src/lib/menu/menu-trigger.ts index 9e58c410fd5..cb2e4fc85b2 100644 --- a/src/lib/menu/menu-trigger.ts +++ b/src/lib/menu/menu-trigger.ts @@ -20,7 +20,7 @@ import { VerticalConnectionPos, } from '@angular/cdk/overlay'; import {TemplatePortal} from '@angular/cdk/portal'; -import {filter} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; import { AfterContentInit, Directive, diff --git a/src/lib/select/select.spec.ts b/src/lib/select/select.spec.ts index 6eaa22e7ff6..37e0ca68988 100644 --- a/src/lib/select/select.spec.ts +++ b/src/lib/select/select.spec.ts @@ -40,7 +40,7 @@ import { import {MatFormFieldModule} from '@angular/material/form-field'; import {By} from '@angular/platform-browser'; import {NoopAnimationsModule} from '@angular/platform-browser/animations'; -import {map} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; import {Subject} from 'rxjs/Subject'; import {MatSelectModule} from './index'; import {MatSelect} from './select'; diff --git a/src/lib/select/select.ts b/src/lib/select/select.ts index 8f736ff75e8..e42a660550d 100644 --- a/src/lib/select/select.ts +++ b/src/lib/select/select.ts @@ -18,7 +18,11 @@ import { ScrollStrategy, ViewportRuler, } from '@angular/cdk/overlay'; -import {filter, first, map, startWith, takeUntil} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; +import {first} from 'rxjs/operators/first'; +import {map} from 'rxjs/operators/map'; +import {startWith} from 'rxjs/operators/startWith'; +import {takeUntil} from 'rxjs/operators/takeUntil'; import { AfterContentInit, Attribute, diff --git a/src/lib/sidenav/drawer.ts b/src/lib/sidenav/drawer.ts index 710d17a1e2b..8497f8e5d5e 100644 --- a/src/lib/sidenav/drawer.ts +++ b/src/lib/sidenav/drawer.ts @@ -32,7 +32,11 @@ import { } from '@angular/core'; import {DOCUMENT} from '@angular/platform-browser'; import {merge} from 'rxjs/observable/merge'; -import {filter, first, startWith, takeUntil, map} from 'rxjs/operators'; +import {filter} from 'rxjs/operators/filter'; +import {first} from 'rxjs/operators/first'; +import {startWith} from 'rxjs/operators/startWith'; +import {takeUntil} from 'rxjs/operators/takeUntil'; +import {map} from 'rxjs/operators/map'; import {Subject} from 'rxjs/Subject'; import {Observable} from 'rxjs/Observable'; diff --git a/src/lib/snack-bar/snack-bar-container.ts b/src/lib/snack-bar/snack-bar-container.ts index 256f2d2266c..cf544a10d2b 100644 --- a/src/lib/snack-bar/snack-bar-container.ts +++ b/src/lib/snack-bar/snack-bar-container.ts @@ -32,7 +32,7 @@ import { ComponentPortal, CdkPortalOutlet, } from '@angular/cdk/portal'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import {AnimationCurves, AnimationDurations} from '@angular/material/core'; import {Observable} from 'rxjs/Observable'; import {Subject} from 'rxjs/Subject'; diff --git a/src/lib/snack-bar/snack-bar.ts b/src/lib/snack-bar/snack-bar.ts index bd7fb0fce94..f321d5026c8 100644 --- a/src/lib/snack-bar/snack-bar.ts +++ b/src/lib/snack-bar/snack-bar.ts @@ -16,7 +16,8 @@ import {MAT_SNACK_BAR_DATA, MatSnackBarConfig} from './snack-bar-config'; import {MatSnackBarContainer} from './snack-bar-container'; import {MatSnackBarRef} from './snack-bar-ref'; import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout'; -import {takeUntil, first} from 'rxjs/operators'; +import {takeUntil} from 'rxjs/operators/takeUntil'; +import {first} from 'rxjs/operators/first'; /** diff --git a/src/lib/sort/sort.spec.ts b/src/lib/sort/sort.spec.ts index c24ae31ffbb..ca214c4ae73 100644 --- a/src/lib/sort/sort.spec.ts +++ b/src/lib/sort/sort.spec.ts @@ -6,7 +6,7 @@ import {async, ComponentFixture, inject, TestBed} from '@angular/core/testing'; import {By} from '@angular/platform-browser'; import {NoopAnimationsModule} from '@angular/platform-browser/animations'; import {Observable} from 'rxjs/Observable'; -import {map} from 'rxjs/operators'; +import {map} from 'rxjs/operators/map'; import {MatTableModule} from '../table/index'; import { MatSort, diff --git a/src/lib/table/table-data-source.ts b/src/lib/table/table-data-source.ts index 3f9d46efcda..5f60b06444a 100644 --- a/src/lib/table/table-data-source.ts +++ b/src/lib/table/table-data-source.ts @@ -11,7 +11,9 @@ import {BehaviorSubject} from 'rxjs/BehaviorSubject'; import {MatPaginator} from '@angular/material/paginator'; import {MatSort} from '@angular/material/sort'; import {Subscription} from 'rxjs/Subscription'; -import {combineLatest, map, startWith} from 'rxjs/operators'; +import {combineLatest} from 'rxjs/operators/combineLatest'; +import {map} from 'rxjs/operators/map'; +import {startWith} from 'rxjs/operators/startWith'; import {empty} from 'rxjs/observable/empty'; /** diff --git a/src/lib/tabs/tab-header.ts b/src/lib/tabs/tab-header.ts index 831db37c371..e7b3f26e391 100644 --- a/src/lib/tabs/tab-header.ts +++ b/src/lib/tabs/tab-header.ts @@ -8,7 +8,7 @@ import {Direction, Directionality} from '@angular/cdk/bidi'; import {ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE} from '@angular/cdk/keycodes'; -import {startWith} from 'rxjs/operators'; +import {startWith} from 'rxjs/operators/startWith'; import { AfterContentChecked, AfterContentInit, diff --git a/src/lib/tabs/tab-nav-bar/tab-nav-bar.ts b/src/lib/tabs/tab-nav-bar/tab-nav-bar.ts index c9bd6b51441..c9eca0bda25 100644 --- a/src/lib/tabs/tab-nav-bar/tab-nav-bar.ts +++ b/src/lib/tabs/tab-nav-bar/tab-nav-bar.ts @@ -8,7 +8,7 @@ import {Directionality} from '@angular/cdk/bidi'; import {coerceBooleanProperty} from '@angular/cdk/coercion'; import {Platform} from '@angular/cdk/platform'; -import {takeUntil} from 'rxjs/operators'; +import {takeUntil} from 'rxjs/operators/takeUntil'; import {ViewportRuler} from '@angular/cdk/scrolling'; import { AfterContentInit, diff --git a/src/lib/tooltip/tooltip.ts b/src/lib/tooltip/tooltip.ts index 243faee270b..8975731045c 100644 --- a/src/lib/tooltip/tooltip.ts +++ b/src/lib/tooltip/tooltip.ts @@ -24,7 +24,7 @@ import { } from '@angular/cdk/overlay'; import {Platform} from '@angular/cdk/platform'; import {ComponentPortal} from '@angular/cdk/portal'; -import {first} from 'rxjs/operators'; +import {first} from 'rxjs/operators/first'; import {ScrollDispatcher} from '@angular/cdk/scrolling'; import { ChangeDetectionStrategy, diff --git a/test/karma-test-shim.js b/test/karma-test-shim.js index dea9a9ac33a..7b5c0c471e5 100644 --- a/test/karma-test-shim.js +++ b/test/karma-test-shim.js @@ -102,7 +102,6 @@ System.config({ packages: { // Thirdparty barrels. 'rxjs': {main: 'index'}, - 'rxjs/operators': {main: 'index'}, // Set the default extension for the root package, because otherwise the demo-app can't // be built within the production mode. Due to missing file extensions. diff --git a/tools/package-tools/rollup-globals.ts b/tools/package-tools/rollup-globals.ts index 3f1b688fd1a..c9222cbe77f 100644 --- a/tools/package-tools/rollup-globals.ts +++ b/tools/package-tools/rollup-globals.ts @@ -59,6 +59,7 @@ export const rollupGlobals = { 'rxjs/Observer': 'Rx', 'rxjs/Subscriber': 'Rx', 'rxjs/Scheduler': 'Rx', + 'rxjs/observable/combineLatest': 'Rx.Observable', 'rxjs/observable/forkJoin': 'Rx.Observable', 'rxjs/observable/fromEvent': 'Rx.Observable', @@ -68,8 +69,21 @@ export const rollupGlobals = { 'rxjs/observable/defer': 'Rx.Observable', 'rxjs/observable/fromEventPattern': 'Rx.Observable', 'rxjs/observable/empty': 'Rx.Observable', - 'rxjs/operators': 'Rx.Observable', - 'rxjs/operators/index': 'Rx.Observable', + + 'rxjs/operators/debounceTime': 'Rx.Observable', + 'rxjs/operators/takeUntil': 'Rx.Observable', + 'rxjs/operators/first': 'Rx.Observable', + 'rxjs/operators/filter': 'Rx.Observable', + 'rxjs/operators/map': 'Rx.Observable', + 'rxjs/operators/tap': 'Rx.Observable', + 'rxjs/operators/startWith': 'Rx.Observable', + 'rxjs/operators/auditTime': 'Rx.Observable', + 'rxjs/operators/switchMap': 'Rx.Observable', + 'rxjs/operators/finalize': 'Rx.Observable', + 'rxjs/operators/catchError': 'Rx.Observable', + 'rxjs/operators/share': 'Rx.Observable', + 'rxjs/operators/delay': 'Rx.Observable', + 'rxjs/operators/combineLatest': 'Rx.Observable', 'rxjs/add/observable/merge': 'Rx.Observable', 'rxjs/add/observable/fromEvent': 'Rx.Observable', diff --git a/tslint.json b/tslint.json index e3fa8b441da..ee1512bb2f7 100644 --- a/tslint.json +++ b/tslint.json @@ -78,7 +78,7 @@ ["xdescribe"] ], // Disallows importing the whole RxJS library. Submodules can be still imported. - "import-blacklist": [true, "rxjs"], + "import-blacklist": [true, "rxjs", "rxjs/operators"], // Avoids inconsistent linebreak styles in source files. Forces developers to use LF linebreaks. "linebreak-style": [true, "LF"],