Skip to content

Commit d5c3d20

Browse files
author
pigr2
committed
use one model
1 parent dedff43 commit d5c3d20

File tree

4 files changed

+13
-22
lines changed

4 files changed

+13
-22
lines changed

app/app.component.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import {Component, OnInit} from '@angular/core';
22
import {Store, provideStore} from '@ngrx/store';
33
import {Observable} from 'rxjs/Rx';
4-
import {CurrentSearch} from './models/current-search.model';
54
import {ProximitySelector} from './components/proximity-selector.component';
65
import {SearchBox} from './components/search-box.component';
76
import {SearchReducer} from './reducers/search.reducer';
7+
import {SearchQuery} from "./models/search-query.model";
88

99
const storeManager = provideStore({ currentSearch: SearchReducer });
1010

@@ -34,18 +34,18 @@ export class AppComponent implements OnInit {
3434

3535
title = 'One Source of Truth for Angular 2';
3636

37-
private state: CurrentSearch;
37+
private state: SearchQuery;
3838

39-
private currentSearch: Observable<CurrentSearch>;
39+
private currentSearch: Observable<SearchQuery>;
4040

4141
constructor(
42-
private store: Store<CurrentSearch>
42+
private store: Store<SearchQuery>
4343
) {
44-
this.currentSearch = this.store.select<CurrentSearch>('currentSearch');
44+
this.currentSearch = this.store.select<SearchQuery>('currentSearch');
4545
}
4646

4747
ngOnInit() {
48-
this.currentSearch.subscribe((state: CurrentSearch) => {
48+
this.currentSearch.subscribe((state: SearchQuery) => {
4949
this.state = state;
5050
});
5151
}

app/components/proximity-selector.component.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import {Component, Input} from '@angular/core';
22
import {Store} from '@ngrx/store';
3-
import {CurrentSearch} from '../models/current-search.model';
43

54
@Component({
65
selector: 'proximity-selector',
@@ -30,7 +29,7 @@ export class ProximitySelector {
3029
};
3130

3231
@Input()
33-
store: Store<CurrentSearch>;
32+
store: Store<any>;
3433

3534
active = false;
3635

app/models/current-search.model.ts

Lines changed: 0 additions & 9 deletions
This file was deleted.

app/reducers/search.reducer.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { ActionReducer, Action } from '@ngrx/store';
2-
import {CurrentSearch} from '../models/current-search.model';
32
import {SearchBox} from '../components/search-box.component';
43
import {ProximitySelector} from '../components/proximity-selector.component';
4+
import {SearchQuery} from "../models/search-query.model";
55

6-
export const SearchReducer: ActionReducer<CurrentSearch> = (state: CurrentSearch, action: Action) => {
6+
export const SearchReducer: ActionReducer<SearchQuery> = (state: SearchQuery, action: Action) => {
77
switch (action.type) {
88
case SearchBox.StoreEvents.text:
99
return Object.assign({}, state, {
@@ -18,12 +18,13 @@ export const SearchReducer: ActionReducer<CurrentSearch> = (state: CurrentSearch
1818
});
1919
case ProximitySelector.StoreEvents.radius:
2020
return Object.assign({}, state, {
21-
radius: action.payload.radius
21+
position: {
22+
radius: action.payload.radius
23+
}
2224
});
2325
case ProximitySelector.StoreEvents.off:
2426
return Object.assign({}, state, {
25-
position: null,
26-
radius: null
27+
position: null
2728
});
2829
default:
2930
return state;

0 commit comments

Comments
 (0)