loop-modules
Version:
Shared modules for the Loop product suite.
59 lines (58 loc) • 1.91 kB
JavaScript
import { type } from '../utils/type';
var CATEGORY = 'Employee';
export var ActionTypes = {
SUBORDINATES: type("[" + CATEGORY + "] Subordinates"),
SET_ENTRIES: type("[" + CATEGORY + "] Set Entries"),
TOGGLE_SELECTED: type("[" + CATEGORY + "] Toggle Selected"),
SET_SELECTED: type("[" + CATEGORY + "] Set Selected"),
ACTIVE: type("[" + CATEGORY + "] Active")
};
/**
* Every action is comprised of at least a type and an optional
* payload. Expressing actions as classes enables powerful
* type checking in reducer functions.
*
* See Discriminated Unions: https://www.typescriptlang.org/docs/handbook/advanced-types.html#discriminated-unions
*/
var SubordinatesAction = (function () {
function SubordinatesAction(payload) {
this.payload = payload;
this.type = ActionTypes.SUBORDINATES;
}
return SubordinatesAction;
}());
export { SubordinatesAction };
var SetEntriesAction = (function () {
function SetEntriesAction(payload) {
if (payload === void 0) { payload = []; }
this.payload = payload;
this.type = ActionTypes.SET_ENTRIES;
}
return SetEntriesAction;
}());
export { SetEntriesAction };
var ToggleSelectedAction = (function () {
function ToggleSelectedAction(payload) {
this.payload = payload;
this.type = ActionTypes.TOGGLE_SELECTED;
}
return ToggleSelectedAction;
}());
export { ToggleSelectedAction };
var SetSelectedAction = (function () {
function SetSelectedAction(payload) {
if (payload === void 0) { payload = []; }
this.payload = payload;
this.type = ActionTypes.SET_SELECTED;
}
return SetSelectedAction;
}());
export { SetSelectedAction };
var ActiveAction = (function () {
function ActiveAction(payload) {
this.payload = payload;
this.type = ActionTypes.ACTIVE;
}
return ActiveAction;
}());
export { ActiveAction };