member_webapp/@overflow/sensor/store/detail/detail.action.ts
crusader d59d9379f9 ing
2018-05-24 15:44:13 +09:00

38 lines
776 B
TypeScript

import { Action } from '@ngrx/store';
import { RPCClientError } from '@loafer/ng-rpc';
import { Sensor } from '@overflow/commons-typescript/model/sensor';
export enum ActionType {
Read = '[sensor.detail] Read',
ReadSuccess = '[sensor.detail] ReadSuccess',
ReadFailure = '[sensor.detail] 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: Sensor) {}
}
export class ReadFailure implements Action {
readonly type = ActionType.ReadFailure;
constructor(public payload: RPCClientError) {}
}
export type Actions =
| Read
| ReadSuccess
| ReadFailure
;