loop-modules
Version:
Shared modules for the Loop product suite.
49 lines (48 loc) • 1.57 kB
JavaScript
import { type } from '../utils/type';
var CATEGORY = 'LoopScenario';
export var ActionTypes = {
QUERY: type("[" + CATEGORY + "] Query"),
TOGGLE_SELECTED: type("[" + CATEGORY + "] Toggle Selected"),
SET_ENTRIES: type("[" + CATEGORY + "] Set Entries"),
SET_SELECTED: type("[" + CATEGORY + "] Set Selected"),
};
/**
* 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 QueryAction = (function () {
function QueryAction(payload) {
this.payload = payload;
this.type = ActionTypes.QUERY;
}
return QueryAction;
}());
export { QueryAction };
var ToggleSelectedAction = (function () {
function ToggleSelectedAction(payload) {
this.payload = payload;
this.type = ActionTypes.TOGGLE_SELECTED;
}
return ToggleSelectedAction;
}());
export { ToggleSelectedAction };
var SetEntriesAction = (function () {
function SetEntriesAction(payload) {
if (payload === void 0) { payload = []; }
this.payload = payload;
this.type = ActionTypes.SET_ENTRIES;
}
return SetEntriesAction;
}());
export { SetEntriesAction };
var SetSelectedAction = (function () {
function SetSelectedAction(payload) {
this.payload = payload;
this.type = ActionTypes.SET_SELECTED;
}
return SetSelectedAction;
}());
export { SetSelectedAction };