Skip to content

Commit ec80b76

Browse files
authored
Merge pull request #34 from briebug/review/style-and-pattern
Review: Style and Patterns
2 parents 2911e82 + 03d522a commit ec80b76

File tree

6 files changed

+68
-62
lines changed

6 files changed

+68
-62
lines changed

src/ngrx-entity/__files__/__name@dasherize@if-flat__/__name@dasherize__.actions.ts

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ import { <%= classify(name) %> } from './<%= dasherize(name) %>.model';
44
import { <%= classify(name) %>SearchQuery } from './<%= dasherize(name) %>.reducer';
55

66
export enum <%= classify(name) %>ActionTypes {
7-
Insert<%= classify(name) %> = '[<%= classify(name) %>] Insert',
8-
Insert<%= classify(name) %>Success = '[<%= classify(name) %>] Insert Success',
9-
Insert<%= classify(name) %>Fail = '[<%= classify(name) %>] Insert Fail',
7+
Create<%= classify(name) %> = '[<%= classify(name) %>] Create',
8+
Create<%= classify(name) %>Success = '[<%= classify(name) %>] Insert Success',
9+
Create<%= classify(name) %>Fail = '[<%= classify(name) %>] Insert Fail',
1010

1111
SearchAll<%= classify(name) %>Entities = '[<%= classify(name) %>] Search',
1212
SearchAll<%= classify(name) %>EntitiesSuccess = '[<%= classify(name) %>] Search Success',
@@ -28,20 +28,20 @@ export enum <%= classify(name) %>ActionTypes {
2828
Select<%= classify(name) %>ById = '[<%= classify(name) %>] Select By ID'
2929
}
3030

31-
// ========================================= INSERT
31+
// ========================================= CREATE
3232

33-
export class Insert<%= classify(name) %> implements Action {
34-
readonly type = <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>;
33+
export class Create<%= classify(name) %> implements Action {
34+
readonly type = <%= classify(name) %>ActionTypes.Create<%= classify(name) %>;
3535
constructor(public payload: { <%= name %>: <%= classify(name) %> }) {}
3636
}
3737

38-
export class Insert<%= classify(name) %>Success implements Action {
39-
readonly type = <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>Success;
38+
export class Create<%= classify(name) %>Success implements Action {
39+
readonly type = <%= classify(name) %>ActionTypes.Create<%= classify(name) %>Success;
4040
constructor(public payload: { result: <%= classify(name) %> }) {}
4141
}
4242

43-
export class Insert<%= classify(name) %>Fail implements Action {
44-
readonly type = <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>Fail;
43+
export class Create<%= classify(name) %>Fail implements Action {
44+
readonly type = <%= classify(name) %>ActionTypes.Create<%= classify(name) %>Fail;
4545
constructor(public payload: { error: string }) {}
4646
}
4747

@@ -127,9 +127,9 @@ export class Select<%= classify(name) %>ById implements Action {
127127
}
128128

129129
export type <%= classify(name) %>Actions =
130-
| Insert<%= classify(name) %>
131-
| Insert<%= classify(name) %>Success
132-
| Insert<%= classify(name) %>Fail
130+
| Create<%= classify(name) %>
131+
| Create<%= classify(name) %>Success
132+
| Create<%= classify(name) %>Fail
133133
| SearchAll<%= classify(name) %>Entities
134134
| SearchAll<%= classify(name) %>EntitiesSuccess
135135
| SearchAll<%= classify(name) %>EntitiesFail

src/ngrx-entity/__files__/__name@dasherize@if-flat__/__name@dasherize__.effects.spec.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ import { cold, hot } from 'jasmine-marbles';
44
import { Observable } from 'rxjs';
55

66
import {
7-
Insert<%= classify(name) %>,
8-
Insert<%= classify(name) %>Success,
9-
Insert<%= classify(name) %>Fail,
7+
Create<%= classify(name) %>,
8+
Create<%= classify(name) %>Success,
9+
Create<%= classify(name) %>Fail,
1010
SearchAll<%= classify(name) %>Entities,
1111
SearchAll<%= classify(name) %>EntitiesSuccess,
1212
SearchAll<%= classify(name) %>EntitiesFail,
@@ -52,15 +52,15 @@ describe('<%= classify(name) %>Effects', () => {
5252
service = TestBed.get(<%= classify(name) %>Service);
5353
});
5454

55-
it('should be created', () => {
55+
it('should be constructed', () => {
5656
expect(effects).toBeTruthy();
5757
});
5858

59-
describe('insert', () => {
60-
it('should return Insert<%= classify(name) %>Success action with entity on success', () => {
59+
describe('create', () => {
60+
it('should return Create<%= classify(name) %>Success action with entity on success', () => {
6161
const entity = generate<%= classify(name) %>();
62-
const insertAction = new Insert<%= classify(name) %>({ <%= name %>: entity });
63-
const successAction = new Insert<%= classify(name) %>Success({ result: entity });
62+
const insertAction = new Create<%= classify(name) %>({ <%= name %>: entity });
63+
const successAction = new Create<%= classify(name) %>Success({ result: entity });
6464

6565
actions = hot('a-', { a: insertAction });
6666
service.create.and.returnValue(cold('-e|', { e: entity }));
@@ -69,10 +69,10 @@ describe('<%= classify(name) %>Effects', () => {
6969
expect(effects.insert).toBeObservable(expected);
7070
});
7171

72-
it('should return Insert<%= classify(name) %>Fail with error object on failure', () => {
72+
it('should return Create<%= classify(name) %>Fail with error object on failure', () => {
7373
const entity = generate<%= classify(name) %>();
74-
const insertAction = new Insert<%= classify(name) %>({ <%= name %>: entity });
75-
const failAction = new Insert<%= classify(name) %>Fail({ error: 'fail' });
74+
const insertAction = new Create<%= classify(name) %>({ <%= name %>: entity });
75+
const failAction = new Create<%= classify(name) %>Fail({ error: 'fail' });
7676

7777
actions = hot('i-', { i: insertAction });
7878
service.create.and.returnValue(cold('-#|', {}, { message: 'fail'}));

src/ngrx-entity/__files__/__name@dasherize@if-flat__/__name@dasherize__.effects.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ import { Update } from '@ngrx/entity';
1414

1515
import {
1616
<%= classify(name) %>ActionTypes,
17-
Insert<%= classify(name) %>,
18-
Insert<%= classify(name) %>Success,
19-
Insert<%= classify(name) %>Fail,
17+
Create<%= classify(name) %>,
18+
Create<%= classify(name) %>Success,
19+
Create<%= classify(name) %>Fail,
2020
SearchAll<%= classify(name) %>Entities,
2121
SearchAll<%= classify(name) %>EntitiesSuccess,
2222
SearchAll<%= classify(name) %>EntitiesFail,
@@ -38,16 +38,16 @@ import { <%= classify(name) %>Service } from './<%= dasherize(name) %>.service';
3838
@Injectable()
3939
export class <%= classify(name) %>Effects {
4040

41-
// ========================================= INSERT
41+
// ========================================= CREATE
4242
@Effect()
43-
insert: Observable<Action> = this.actions$
43+
create: Observable<Action> = this.actions$
4444
.pipe(
45-
ofType<Insert<%= classify(name) %>>(<%= classify(name) %>ActionTypes.Insert<%= classify(name) %>),
45+
ofType<Create<%= classify(name) %>>(<%= classify(name) %>ActionTypes.Create<%= classify(name) %>),
4646
exhaustMap((action) =>
4747
this.service.create(action.payload.<%= name %>).pipe(
48-
map((<%= name %>: <%= classify(name) %>) => new Insert<%= classify(name) %>Success({ result: <%= name %> })),
48+
map((<%= name %>: <%= classify(name) %>) => new Create<%= classify(name) %>Success({ result: <%= name %> })),
4949
catchError(({ message }) =>
50-
of(new Insert<%= classify(name) %>Fail({ error: message }))
50+
of(new Create<%= classify(name) %>Fail({ error: message }))
5151
)
5252
)
5353
)

src/ngrx-entity/__files__/__name@dasherize@if-flat__/__name@dasherize__.reducer.spec.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ describe('<%= name %>Reducer', () => {
3030
});
3131
});
3232

33-
describe('upon Insert<%= classify(name) %>', () => {
33+
describe('upon Create<%= classify(name) %>', () => {
3434
it('should set loading to true and clear any error', () => {
35-
const action = new actions.Insert<%= classify(name) %>({ <%= name %>: generate<%= classify(name) %>() });
35+
const action = new actions.Create<%= classify(name) %>({ <%= name %>: generate<%= classify(name) %>() });
3636

3737
expect(<%= name %>Reducer(INITIAL_STATE_WITH_ERROR, action)).toEqual({
3838
...initialState,
@@ -42,10 +42,10 @@ describe('<%= name %>Reducer', () => {
4242
});
4343
});
4444

45-
describe('upon Insert<%= classify(name) %>Success', () => {
45+
describe('upon Create<%= classify(name) %>Success', () => {
4646
it('should add the given <%= classify(name) %>, set loading to false, and clear any error', () => {
4747
const result = generate<%= classify(name) %>();
48-
const action = new actions.Insert<%= classify(name) %>Success({ result });
48+
const action = new actions.Create<%= classify(name) %>Success({ result });
4949

5050
expect(<%= name %>Reducer(INITIAL_STATE_WITH_ERROR, action)).toEqual({
5151
...initialState,
@@ -56,10 +56,10 @@ describe('<%= name %>Reducer', () => {
5656
});
5757
});
5858

59-
describe('upon Insert<%= classify(name) %>Fail', () => {
59+
describe('upon Create<%= classify(name) %>Fail', () => {
6060
it('should set loading to true and echo the error', () => {
6161
const error = 'test insert error';
62-
const action = new actions.Insert<%= classify(name) %>Fail({ error });
62+
const action = new actions.Create<%= classify(name) %>Fail({ error });
6363

6464
expect(<%= name %>Reducer(initialState, action)).toEqual({
6565
...initialState,

src/ngrx-entity/__files__/__name@dasherize@if-flat__/__name@dasherize__.reducer.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ export interface <%= classify(name) %>State extends EntityState<<%= classify(nam
1717
query: <%= classify(name) %>SearchQuery;
1818
}
1919

20-
export const adapter: EntityAdapter<<%= classify(name) %>> = createEntityAdapter<<%= classify(name) %>>();
20+
export const <%= name %>Adapter: EntityAdapter<<%= classify(name) %>> = createEntityAdapter<<%= classify(name) %>>();
2121

22-
export const initialState: <%= classify(name) %>State = adapter.getInitialState({
22+
export const initial<%= classify(name)%>State: <%= classify(name) %>State = adapter.getInitialState({
2323
// additional <%= name %> state properties
2424
selectedId: null,
2525
loading: false,
@@ -32,27 +32,27 @@ export const initialState: <%= classify(name) %>State = adapter.getInitialState(
3232
}
3333
});
3434

35-
export function <%= name %>Reducer(state = initialState, action: <%= classify(name) %>Actions): <%= classify(name) %>State {
35+
export function <%= name %>Reducer(state = initial<%= classify(name)%>State, action: <%= classify(name) %>Actions): <%= classify(name) %>State {
3636
switch (action.type) {
37-
case <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>:
37+
case <%= classify(name) %>ActionTypes.Create<%= classify(name) %>:
3838
return {
3939
...state,
4040
loading: true,
4141
error: ''
4242
};
4343

44-
case <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>Success:
44+
case <%= classify(name) %>ActionTypes.Create<%= classify(name) %>Success:
4545
return {
4646
...adapter.addOne(action.payload.result, state),
4747
loading: false,
4848
error: ''
4949
};
5050

51-
case <%= classify(name) %>ActionTypes.Insert<%= classify(name) %>Fail:
51+
case <%= classify(name) %>ActionTypes.Create<%= classify(name) %>Fail:
5252
return {
5353
...state,
5454
loading: false,
55-
error: '<%= classify(name) %> insert failed: ' + action.payload.error
55+
error: '<%= classify(name) %> create failed: ' + action.payload.error
5656
};
5757

5858
case <%= classify(name) %>ActionTypes.SearchAll<%= classify(name) %>Entities:
Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,46 @@
11
import { createSelector, createFeatureSelector } from '@ngrx/store';
22

3-
import * as from<%= classify(name) %>State from './<%= dasherize(name) %>.reducer';
3+
import {
4+
<%= name %>Reducer,
5+
getSelectedId,
6+
getLoading,
7+
getError,
8+
getQuery
9+
} from './<%= dasherize(name) %>.reducer';
410
import { <%= classify(name) %>State } from './<%= dasherize(name) %>.reducer';
511

612
export const get<%= classify(name) %>State = createFeatureSelector<<%= classify(name) %>State>('<%= name %>');
713

814
export const {
9-
selectIds: getAll<%= classify(name) %>Ids,
10-
selectEntities: getAll<%= classify(name) %>EntitiesAsMap,
11-
selectAll: getAll<%= classify(name) %>EntitiesAsArray,
12-
selectTotal: getTotal<%= classify(name) %>Entities
13-
} = from<%= classify(name) %>State.adapter.getSelectors(get<%= classify(name) %>State);
15+
selectIds: <%= name %>Ids,
16+
selectEntities: <%= name %>Entities,
17+
selectAll: <%= name %>,
18+
selectTotal: <%= name %>Count
19+
} = <%= name %>Adapter.getSelectors(get<%= classify(name) %>State);
1420

15-
export const getSelected<%= classify(name) %>Id = createSelector(
21+
export const current<%= classify(name) %>Id = createSelector(
1622
get<%= classify(name) %>State,
17-
from<%= classify(name) %>State.getSelectedId
23+
getSelectedId
1824
);
1925

20-
export const getSelected<%= classify(name) %> = createSelector(
21-
getSelected<%= classify(name) %>Id,
22-
getAll<%= classify(name) %>EntitiesAsMap,
26+
export const current<%= classify(name) %> = createSelector(
27+
current<%= classify(name) %>Id,
28+
<%= name %>Entities,
2329
(selected<%= classify(name) %>Id, <%= name %>Entities) =>
2430
selected<%= classify(name) %>Id && <%= name %>Entities[selected<%= classify(name) %>Id]
2531
);
2632

27-
export const getLoading = createSelector(
33+
export const <%= name %>Loading = createSelector( // TODO: Need to pluraliae name
2834
get<%= classify(name) %>State,
29-
from<%= classify(name) %>State.getLoading
35+
getLoading
3036
);
3137

32-
export const getError = createSelector(
38+
export const <%= name %>Error = createSelector(
3339
get<%= classify(name) %>State,
34-
from<%= classify(name) %>State.getError
40+
getError
3541
);
3642

37-
export const getQuery = createSelector(
43+
export const <%= name %>Query = createSelector(
3844
get<%= classify(name) %>State,
39-
from<%= classify(name) %>State.getQuery
45+
getQuery
4046
);

0 commit comments

Comments
 (0)