Skip to content
This repository was archived by the owner on Jan 6, 2025. It is now read-only.

feat(ObservableMedia): use ObservableMedia class as provider token #158

Merged
merged 1 commit into from
Feb 7, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Subscription} from "rxjs/Subscription";
import 'rxjs/add/operator/filter';

import {MediaChange} from "../../../lib/media-query/media-change";
import {ObservableMediaService} from "../../../lib/media-query/observable-media-service";
import { ObservableMedia } from "../../../lib/media-query/observable-media-service";

@Component({
selector: 'demo-responsive-flex-directive',
Expand Down Expand Up @@ -32,7 +32,7 @@ export class DemoResponsiveFlexDirectives implements OnInit, OnDestroy {
private _watcher : Subscription;
public activeMediaQuery = "";

constructor(@Inject(ObservableMediaService) private _media$) { }
constructor(private _media$:ObservableMedia) { }

ngOnInit() {
this._watcher = this.watchMQChanges();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Subscription} from "rxjs/Subscription";
import 'rxjs/add/operator/filter';

import {MediaChange} from "../../../lib/media-query/media-change";
import {ObservableMediaService} from "../../../lib/media-query/observable-media-service";
import { ObservableMedia } from "../../../lib/media-query/observable-media-service";

@Component({
selector: 'demo-responsive-flex-order',
Expand Down Expand Up @@ -44,7 +44,7 @@ export class DemoResponsiveFlexOrder implements OnInit, OnDestroy {
public activeMediaQuery = "";
private _watcher : Subscription;

constructor(@Inject(ObservableMediaService) private _media$) { }
constructor(private _media$:ObservableMedia) { }

ngOnInit() {
this._watcher = this.watchMQChanges();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Subscription} from "rxjs/Subscription";
import 'rxjs/add/operator/filter';

import {MediaChange} from "../../../lib/media-query/media-change";
import {ObservableMediaService} from "../../../lib/media-query/observable-media-service";
import { ObservableMedia } from "../../../lib/media-query/observable-media-service";

@Component({
selector: 'demo-responsive-row-column',
Expand Down Expand Up @@ -64,7 +64,7 @@ export class DemoResponsiveRows implements OnDestroy {

isVisible = true;

constructor(@Inject(ObservableMediaService) private _media$) {
constructor(private _media$ : ObservableMedia ) {
this._watcher = this._media$
.subscribe((e:MediaChange) => {
this._activeMQC = e;
Expand Down
4 changes: 2 additions & 2 deletions src/lib/flexbox/api/flex.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ import {Component, OnInit} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ComponentFixture, TestBed} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {FlexLayoutModule} from '../_module';

import {__platform_browser_private__} from '@angular/platform-browser';
Expand Down
10 changes: 5 additions & 5 deletions src/lib/flexbox/api/hide.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@
* found in the LICENSE file at https://angular.io/license
*/
import {
Component, OnInit, Inject
Component, OnInit
} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ComponentFixture, TestBed} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {ObservableMediaService} from '../../media-query/observable-media-service';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {ObservableMedia} from '../../media-query/observable-media-service';

import {customMatchers, expect, NgMatchers} from '../../utils/testing/custom-matchers';
import {
Expand Down Expand Up @@ -290,7 +290,7 @@ export class TestHideComponent implements OnInit {
isHidden = true;
menuHidden = true;

constructor(@Inject(ObservableMediaService) private media) {
constructor(private media: ObservableMedia) {
}

toggleMenu() {
Expand Down
5 changes: 3 additions & 2 deletions src/lib/flexbox/api/layout-align.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@ import {Component, OnInit} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ComponentFixture, TestBed} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';

import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {FlexLayoutModule} from '../_module';

import {extendObject} from '../../utils/object-extend';
Expand Down
4 changes: 2 additions & 2 deletions src/lib/flexbox/api/layout-gap.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ import {Component, OnInit} from '@angular/core';
import {CommonModule} from '@angular/common';
import {TestBed, ComponentFixture} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {FlexLayoutModule} from '../_module';

import {customMatchers, expect} from '../../utils/testing/custom-matchers';
Expand Down
4 changes: 2 additions & 2 deletions src/lib/flexbox/api/layout.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ import {Component, OnInit} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ComponentFixture, TestBed} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {FlexLayoutModule} from '../_module';

import {customMatchers} from '../../utils/testing/custom-matchers';
Expand Down
10 changes: 5 additions & 5 deletions src/lib/flexbox/api/show.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
import {Component, OnInit, Inject} from '@angular/core';
import {Component, OnInit} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ComponentFixture, TestBed} from '@angular/core/testing';

import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {MatchMedia} from '../../media-query/match-media';
import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {ObservableMediaService} from '../../media-query/observable-media-service';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {ObservableMedia} from '../../media-query/observable-media-service';
import {FlexLayoutModule} from '../_module';

import {customMatchers} from '../../utils/testing/custom-matchers';
Expand Down Expand Up @@ -234,7 +234,7 @@ export class TestShowComponent implements OnInit {
isHidden = false;
menuOpen: boolean = true;

constructor(@Inject(ObservableMediaService) private media) {
constructor(private media: ObservableMedia) {
}

toggleMenu() {
Expand Down
5 changes: 3 additions & 2 deletions src/lib/flexbox/responsive/responsive-activation.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,10 @@ import 'rxjs/add/operator/map';

import {TestBed, inject} from '@angular/core/testing';

import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {BreakPointsProvider} from '../../media-query/breakpoints/break-points';
import {BreakPointRegistry} from '../../media-query/breakpoints/break-point-registry';
import {BreakPointsProvider} from '../../media-query/providers/break-points-provider';

import {MockMatchMedia} from '../../media-query/mock/mock-match-media';
import {MatchMedia} from '../../media-query/match-media';
import {MediaMonitor} from '../../media-query/media-monitor';
import {ResponsiveActivation, KeyOptions} from './responsive-activation';
Expand Down
20 changes: 11 additions & 9 deletions src/lib/media-query/_module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
*/
import {NgModule, ModuleWithProviders} from '@angular/core';

import {MatchMedia} from './match-media';
import {MediaMonitor} from './media-monitor';
import {ObservableMediaProvider} from './observable-media-service';
import {BreakPointsProvider} from './breakpoints/break-points';
import {BreakPointRegistry} from './breakpoints/break-point-registry';
import {BreakPointsProvider} from "./providers/break-points-provider";


import {MatchMedia} from './match-media';
import {MediaMonitor} from './media-monitor';
import {ObservableMediaServiceProvider} from './providers/observable-media-service-provider';

/**
* *****************************************************************
Expand All @@ -23,11 +23,11 @@ import {ObservableMediaServiceProvider} from './providers/observable-media-servi

@NgModule({
providers: [
MatchMedia, // Low-level service to publish observables w/ window.matchMedia()
MediaMonitor, // MediaQuery monitor service observes all known breakpoints
BreakPointRegistry, // Registry of known/used BreakPoint(s)
BreakPointsProvider, // Supports developer overrides of list of known breakpoints
ObservableMediaServiceProvider // easy subscription injectable `media$` matchMedia observable
MatchMedia, // Low-level service to publish observables w/ window.matchMedia()
MediaMonitor, // MediaQuery monitor service observes all known breakpoints
BreakPointRegistry, // Registry of known/used BreakPoint(s)
BreakPointsProvider, // Supports developer overrides of list of known breakpoints
ObservableMediaProvider // easy subscription injectable `media$` matchMedia observable
]
})
export class MediaQueriesModule {
Expand All @@ -37,3 +37,5 @@ export class MediaQueriesModule {
};
}
}


5 changes: 2 additions & 3 deletions src/lib/media-query/breakpoints/break-point-registry.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,9 @@
*/
import {TestBed, inject, async} from '@angular/core/testing';

import {BreakPointRegistry} from './break-point-registry';
import {BREAKPOINTS} from '../providers/break-points-provider';
import {RAW_DEFAULTS} from "../providers/break-points-provider";
import {BreakPoint} from './break-point';
import {BreakPointRegistry} from './break-point-registry';
import {BREAKPOINTS, RAW_DEFAULTS} from './break-points';

describe('break-points', () => {
let breakPoints: BreakPointRegistry;
Expand Down
4 changes: 3 additions & 1 deletion src/lib/media-query/breakpoints/break-point-registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@
* found in the LICENSE file at https://angular.io/license
*/
import {Injectable, Inject} from '@angular/core';
import {OpaqueToken} from '@angular/core'; // tslint:disable-line:no-unused-variable

import {BreakPoint} from './break-point';
import {BREAKPOINTS} from "../providers/break-points-provider";
import {BREAKPOINTS} from "./break-points";


/**
* Registry of 1..n MediaQuery breakpoint ranges
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import 'rxjs/add/operator/map';
import {TestBed, inject, async} from '@angular/core/testing';

import {BreakPoint} from '../breakpoints/break-point';
import {BREAKPOINTS, RAW_DEFAULTS} from '../providers/break-points-provider';
import {BREAKPOINTS, RAW_DEFAULTS} from './break-points';

describe('break-point-provider', () => {
let breakPoints: BreakPoint[ ];
Expand Down
6 changes: 3 additions & 3 deletions src/lib/media-query/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
export * from './breakpoints/break-point';
export * from './breakpoints/break-point-registry';
export * from './providers/break-points-provider';
export * from './providers/observable-media-service-provider';
export * from './breakpoints/break-points';
export * from './observable-media-service';
export * from './match-media';
export * from './media-change';
export * from './media-monitor';
export * from './observable-media-service';
export * from './_module';
13 changes: 6 additions & 7 deletions src/lib/media-query/match-media.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,10 @@ import {TestBed, inject, async} from '@angular/core/testing';
import {MediaChange} from './media-change';
import {BreakPoint} from './breakpoints/break-point';
import {MockMatchMedia} from './mock/mock-match-media';
import {BreakPointsProvider} from './breakpoints/break-points';
import {BreakPointRegistry} from './breakpoints/break-point-registry';
import {BreakPointsProvider} from './providers/break-points-provider';
import {MatchMedia} from './match-media';
import {ObservableMediaService} from './observable-media-service';
import {ObservableMediaServiceProvider} from './providers/observable-media-service-provider';
import {ObservableMedia, ObservableMediaProvider} from './observable-media-service';

describe('match-media', () => {
let matchMedia: MockMatchMedia;
Expand Down Expand Up @@ -130,15 +129,15 @@ describe('match-media-observable', () => {
providers: [
BreakPointsProvider, // Supports developer overrides of list of known breakpoints
BreakPointRegistry, // Registry of known/used BreakPoint(s)
{provide: MatchMedia, useClass: MockMatchMedia},
ObservableMediaServiceProvider // injectable `media$` matchMedia observable
ObservableMediaProvider, // injectable `media$` matchMedia observable
{provide: MatchMedia, useClass: MockMatchMedia}
]
});
});

// Single async inject to save references; which are used in all tests below
beforeEach(async(inject(
[ObservableMediaService, MatchMedia, BreakPointRegistry],
[ObservableMedia, MatchMedia, BreakPointRegistry],
(_media$_, _matchMedia_, _breakPoints_) => {
matchMedia = _matchMedia_; // inject only to manually activate mediaQuery ranges
breakPoints = _breakPoints_;
Expand Down Expand Up @@ -205,7 +204,7 @@ describe('match-media-observable', () => {
});

/**
* Only the ObservableMediaService ignores de-activations;
* Only the ObservableMedia ignores de-activations;
* MediaMonitor and MatchMedia report both activations and de-activations!
*/
it('ignores mediaQuery de-activations', () => {
Expand Down
4 changes: 2 additions & 2 deletions src/lib/media-query/media-monitor.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ import 'rxjs/add/operator/map';

import {TestBed, inject, async} from '@angular/core/testing';

import {RAW_DEFAULTS} from './providers/break-points-provider';
import {RAW_DEFAULTS} from './breakpoints/break-points';
import {MediaChange} from './media-change';
import {MockMatchMedia} from './mock/mock-match-media';
import {BreakPointsProvider} from './breakpoints/break-points';
import {BreakPointRegistry} from './breakpoints/break-point-registry';
import {BreakPointsProvider} from './providers/break-points-provider';
import {MatchMedia} from './match-media';
import {MediaMonitor} from './media-monitor';

Expand Down
2 changes: 1 addition & 1 deletion src/lib/media-query/mock/mock-match-media.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ import {TestBed, inject, async} from '@angular/core/testing';
import {MediaChange} from '../media-change';
import {BreakPoint} from '../breakpoints/break-point';
import {MockMatchMedia} from './mock-match-media';
import {BreakPointsProvider} from '../breakpoints/break-points';
import {BreakPointRegistry} from '../breakpoints/break-point-registry';
import {BreakPointsProvider} from '../providers/break-points-provider';

describe('mock-match-media', () => {
let breakPoints: BreakPointRegistry;
Expand Down
Loading