5
5
starredGistsFetch ,
6
6
publicGistsFetch ,
7
7
fetchGistComments ,
8
- starGist ,
8
+ toggleFavoriteGist ,
9
9
fetchInitialFavoriteValue ,
10
- UnstarGist ,
11
10
deleteComment ,
12
11
addComment ,
13
12
} from './gists.actiontype' ;
@@ -91,12 +90,11 @@ function* fetchCommentsForGist(action) {
91
90
}
92
91
}
93
92
94
- function * starAGist ( action ) {
93
+ function * toggleGist ( action ) {
95
94
try {
96
95
const token = yield select ( tokenSelector ) ;
97
-
98
- yield put ( starGist . progress ( ) ) ;
99
- const status = yield call ( requestStarGist , token , action . payload ) ;
96
+ const requestUrl = ( action . payload . type === 'star' ) ? requestStarGist : requestUnstarGist ;
97
+ const status = yield call ( requestUrl , token , action . payload . id ) ;
100
98
101
99
if ( status === 204 ) {
102
100
yield call ( fetchStarredGists , { shouldRefresh : true } ) ;
@@ -110,27 +108,14 @@ function* getInitialFavoriteValue(action) {
110
108
try {
111
109
const token = yield select ( tokenSelector ) ;
112
110
111
+ yield put ( fetchInitialFavoriteValue . progress ( ) ) ;
113
112
yield call ( checkStarredGistFavoriteValue , token , action . payload ) ;
114
113
yield put ( fetchInitialFavoriteValue . success ( { value : true } ) ) ;
115
114
} catch ( err ) {
116
115
yield put ( fetchInitialFavoriteValue . success ( { value : false } ) ) ;
117
116
}
118
117
}
119
118
120
- function * unstarAGist ( action ) {
121
- try {
122
- const token = yield select ( tokenSelector ) ;
123
-
124
- const status = yield call ( requestUnstarGist , token , action . payload ) ;
125
-
126
- if ( status === 204 ) {
127
- yield call ( fetchStarredGists , { shouldRefresh : true } ) ;
128
- }
129
- } catch ( err ) {
130
- console . log ( err ) ;
131
- }
132
- }
133
-
134
119
function * deleteAComment ( action ) {
135
120
try {
136
121
const token = yield select ( tokenSelector ) ;
@@ -172,9 +157,8 @@ export default function* gistsSaga() {
172
157
takeLatest ( starredGistsFetch . actionType , fetchStarredGists ) ,
173
158
takeLatest ( publicGistsFetch . actionType , fetchPublicGists ) ,
174
159
takeLatest ( fetchGistComments . actionType , fetchCommentsForGist ) ,
175
- takeLatest ( starGist . actionType , starAGist ) ,
160
+ takeLatest ( toggleFavoriteGist . actionType , toggleGist ) ,
176
161
takeLatest ( fetchInitialFavoriteValue . actionType , getInitialFavoriteValue ) ,
177
- takeLatest ( UnstarGist . actionType , unstarAGist ) ,
178
162
takeLatest ( deleteComment . actionType , deleteAComment ) ,
179
163
takeLatest ( addComment . actionType , addAComment ) ,
180
164
] ) ;
0 commit comments