This repository was archived by the owner on May 30, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathactionTypes.ts
More file actions
34 lines (26 loc) · 1.38 KB
/
actionTypes.ts
File metadata and controls
34 lines (26 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
export const ACTION_TYPE_SUFIX = {
ERROR: '_ERROR',
SUCCESS: '_SUCCESS',
} as const;
type ActionTypeSufixKeys = keyof typeof ACTION_TYPE_SUFIX;
export type ActionTypeSufix = typeof ACTION_TYPE_SUFIX[ActionTypeSufixKeys];
export const ACTION_TYPE = {
ADD_ISSUE: 'ADD_ISSUE',
UPDATE_ISSUE_IN_PLACE: 'UPDATE_ISSUE_IN_PLACE',
UPDATE_ISSUE: 'UPDATE_ISSUE',
[`UPDATE_ISSUE${ACTION_TYPE_SUFIX.SUCCESS}`]: `UPDATE_ISSUE${ACTION_TYPE_SUFIX.SUCCESS}`,
[`UPDATE_ISSUE${ACTION_TYPE_SUFIX.ERROR}`]: `UPDATE_ISSUE${ACTION_TYPE_SUFIX.ERROR}`,
DELETE_ISSUE: 'DELETE_ISSUE',
[`DELETE_ISSUE${ACTION_TYPE_SUFIX.SUCCESS}`]: `DELETE_ISSUE${ACTION_TYPE_SUFIX.SUCCESS}`,
[`DELETE_ISSUE${ACTION_TYPE_SUFIX.ERROR}`]: `DELETE_ISSUE${ACTION_TYPE_SUFIX.ERROR}`,
GET_ISSUES: 'GET_ISSUES',
[`GET_ISSUES${ACTION_TYPE_SUFIX.SUCCESS}`]: `GET_ISSUES${ACTION_TYPE_SUFIX.SUCCESS}`,
[`GET_ISSUES${ACTION_TYPE_SUFIX.ERROR}`]: `GET_ISSUES${ACTION_TYPE_SUFIX.ERROR}`,
SET_ISSUE_FORM_ELEMENT: 'SET_FORM_ELEMENT',
SUMBIT_ISSUE_FORM: 'SUMBIT_ISSUE_FORM',
[`SUMBIT_ISSUE_FORM${ACTION_TYPE_SUFIX.SUCCESS}`]: `SUMBIT_ISSUE_FORM${ACTION_TYPE_SUFIX.SUCCESS}`,
[`SUMBIT_ISSUE_FORM${ACTION_TYPE_SUFIX.ERROR}`]: `SUMBIT_ISSUE_FORM${ACTION_TYPE_SUFIX.ERROR}`,
TOGGLE_ISSUE_FORM: 'TOGGLE_ISSUE_FORM',
} as const;
type ActionTypeKeys = keyof typeof ACTION_TYPE;
export type ActionType = typeof ACTION_TYPE[ActionTypeKeys];