-
Notifications
You must be signed in to change notification settings - Fork 0
/
appTree.txt
111 lines (101 loc) · 3.97 KB
/
appTree.txt
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
====redux: stats & dummy authentication & redux-thunk
_defaultText.js -> default text to load in case of fetch error
./redux -> /reducer: 4reducers
actions
deleteScore_postAction
fetchPostAction
updateScore_postAction
rootReducer
store
<index.js>
-ApolloProvider
-setting accessToken in Headers
-refreshingToken if accessToken expired during app usage
<APP/>
- loading animation if fetching refresh_token
- fetchPostAction -> fetching data from wikiAPI,
- disabling wiki button
-
<CustomRoute_AuthGuarded/>
-
<CustomRoute
<Main/>
-getStatsQuery -> handling only error
-making default stats if notAuthenticated (
not crucial, Stats shouldn't be accessed in not authenticated
)
-keyboard shortcuts,
-counter
-hints & results & stats (+ setTimerOnSelect) visibility toggling,
-focusTextArea
-setting live & final results (logic in resultsAndTimerReducer)
-updateScore_postAction(func from updateStateMutation hook being passed down)
<Display/>
- handling text to render
- changing parts of text to display
- reseting display
- array with colorred letters to be passed to WikiDisplay according to mistakes
- counting correct, incorrect, all entries
<AllRenders/>
- rendering most components
<AuthenticationUI> - links for login, register, stats toggle on/off
<UpperUI> - formating timer display
<Hints>
<Profile/> -register -login/ -profile -logout
<WikiDisplay>
<SingleLetter/> - rendering colors of each single letter
<InputArea> - prevent arrow keys, no text selecting
<Controls>
<WikiController/> -setting new random article
<Results> - formating timer display
<LowerUi/>
-stats button
-resutls button
<Stats>
-deleteScore_postAction used here
<SingleStat>
/>
[<AuthNotification/> (present in all routes below!)]
<CustomRoute
<Register/>
/>
<CustomRoute
<Login/>
/>
<CustomRoute
<PasswordForgotten/>
/>
<CustomRoute
<ForgottenPassChange/>
-changing password after receiving Link in mail/>
/>
(must by authenticated to access)
<CustomRoute_AuthGuarded
<PasswordChange/>
-changing password when logged in/>
/>
<CustomRoute_AuthGuarded
<DeleteAccount/>
/>
====== OLD originally - without redux OLD
_defaultText.js -> default text to load in case of fetch error
<App/> - counter(start, pause/run, reset, results, timer)
-keyboard shortcuts,
-hints & results visibility,
-focusing/unfocusing/disabling elements
- handling data to display (from Fetch to Display)
<Fetch/> -fetching data from wikiAPI, no rendering
<Reducer/> -setting/reseting live & final results
<Display/> -rendering outer App part
- handling input/reseting in InputArea
-array with colorred letters in WikiDisplay according to mistakes
- changing parts of text to display
- dispatching action to <Reducer/> for counting correct, incorrect, allEntries
<UpperUI> - formating timer display
<WikiDisplay>
<SingleLetter/> - rendering colors of each single letter
<InputArea> - prevent arrow keys, no text selecting
<Controls>
<WikiController/> -setting new random article
<ResultButton>
<Results> - formating timer display