import { Action } from '@ngrx/store'; import { Criterion, SearchMeta } from './model'; export const CHANGE_STEP = 'Change Search Step'; export const SELECT_DATASET = 'Select Dataset'; export const NEW_SEARCH = 'New Search'; export const CRITERIA_CHECKED = 'Criteria Checked'; export const OUTPUT_CHECKED = 'Output Checked'; export const RESULT_CHECKED = 'Result Checked'; export const UPDATE_DEFAULT_CRITERIA_LIST = 'Update Default Criteria List Action'; export const UPDATE_CRITERIA_LIST = 'Update Criteria List'; export const ADD_CRITERION = 'Add Criterion'; export const DELETE_CRITERION = 'Delete Criterion'; export const UPDATE_DEFAULT_OUTPUT_LIST = 'Update Default Output List'; export const UPDATE_OUTPUT_LIST = 'Update Output List'; export const RETRIEVE_META = 'Retrieve Meta'; export const RETRIEVE_META_SUCCESS = 'Retrieve Meta Success'; export const RETRIEVE_META_FAIL = 'Retrieve Meta Fail'; export const RETRIEVE_DATA = 'Retrieve Data'; export const RETRIEVE_DATA_SUCCESS = 'Retrieve Data Success'; export const RETRIEVE_DATA_FAIL = 'Retrieve Data Fail'; export const SELECT_OBJECT = 'Select Object'; export class ChangeStepAction implements Action { type = CHANGE_STEP; constructor(public payload: string) { } } export class SelectDatasetAction implements Action { type = SELECT_DATASET; constructor(public payload: string) { } } export class NewSearchAction implements Action { type = NEW_SEARCH; constructor(public payload: string) { } } export class CriteriaChecked implements Action { type = CRITERIA_CHECKED; constructor(public payload: {} = null) { } } export class OutputChecked implements Action { type = OUTPUT_CHECKED; constructor(public payload: {} = null) { } } export class ResultChecked implements Action { type = RESULT_CHECKED; constructor(public payload: {} = null) { } } export class UpdateDefaultCriteriaListAction implements Action { type = UPDATE_DEFAULT_CRITERIA_LIST; constructor(public payload: Criterion[]) { } } export class UpdateCriteriaListAction implements Action { type = UPDATE_CRITERIA_LIST; constructor(public payload: Criterion[]) { } } export class AddCriterionAction implements Action { type = ADD_CRITERION; constructor(public payload: Criterion) { } } export class DeleteCriterionAction implements Action { type = DELETE_CRITERION; constructor(public payload: number) { } } export class UpdateDefaultOutputListAction implements Action { type = UPDATE_DEFAULT_OUTPUT_LIST; constructor(public payload: number[]) { } } export class UpdateOutputListAction implements Action { type = UPDATE_OUTPUT_LIST; constructor(public payload: number[]) { } } export class RetrieveMetaAction implements Action { type = RETRIEVE_META; constructor(public payload: {} = null) { } } export class RetrieveMetaSuccessAction implements Action { type = RETRIEVE_META_SUCCESS; constructor(public payload: SearchMeta) { } } export class RetrieveMetaFailAction implements Action { type = RETRIEVE_META_FAIL; constructor(public payload: {} = null) { } } export class RetrieveDataAction implements Action { type = RETRIEVE_DATA; constructor(public payload: number) { } } export class RetrieveDataSuccessAction implements Action { type = RETRIEVE_DATA_SUCCESS; constructor(public payload: any[]) { } } export class RetrieveDataFailAction implements Action { type = RETRIEVE_DATA_FAIL; constructor(public payload: {} = null) { } } export class SelectObjectAction implements Action { type = SELECT_OBJECT; constructor(public payload: number) { } } export type Actions = ChangeStepAction | SelectDatasetAction | NewSearchAction | UpdateDefaultCriteriaListAction | UpdateCriteriaListAction | AddCriterionAction | DeleteCriterionAction | UpdateDefaultOutputListAction | UpdateOutputListAction | RetrieveMetaAction | RetrieveMetaSuccessAction | RetrieveMetaFailAction | RetrieveDataAction | RetrieveDataSuccessAction | RetrieveDataFailAction | SelectObjectAction;