member_webapp/src/packages/infra/store/detail/detail.action.ts

36 lines
778 B
TypeScript
Raw Normal View History

2018-04-19 10:26:39 +00:00
import { Action } from '@ngrx/store';
import { RPCClientError } from '@loafer/ng-rpc/protocol';
2018-05-02 08:09:39 +00:00
import { Infra } from '@overflow/commons-typescript/model/infra';
2018-04-19 10:26:39 +00:00
export enum ActionType {
Read = '[Infra.list] Read',
ReadSuccess = '[Infra.list] ReadSuccess',
ReadFailure = '[Infra.list] ReadFailure',
}
export class Read implements Action {
readonly type = ActionType.Read;
constructor(public payload: { id: string }) { }
}
export class ReadSuccess implements Action {
readonly type = ActionType.ReadSuccess;
constructor(public payload: Infra) { }
}
export class ReadFailure implements Action {
readonly type = ActionType.ReadFailure;
constructor(public payload: RPCClientError) { }
}
export type Actions =
| Read
| ReadSuccess
| ReadFailure
;