diff options
| author | HJ <30-hj@users.noreply.git.pleroma.social> | 2019-06-16 11:18:21 +0000 |
|---|---|---|
| committer | HJ <30-hj@users.noreply.git.pleroma.social> | 2019-06-16 11:18:21 +0000 |
| commit | 1db3c785d805bfe1e7bb09f2d85875448cb03f9a (patch) | |
| tree | fe756a5a3d9271966e9585166fa2c0ec9e372a4e /src/modules/oauth.js | |
| parent | 1fc460a7a518f9a33e5b453070dc57e9e463fda1 (diff) | |
| parent | acbeea59ff196c16e7992c80e56a638ce3a623b6 (diff) | |
Merge branch 'masto-register-app-secret' into 'develop'
Proper clientId/secret/token caching, MastoAPI registration
Closes #554
See merge request pleroma/pleroma-fe!806
Diffstat (limited to 'src/modules/oauth.js')
| -rw-r--r-- | src/modules/oauth.js | 37 |
1 files changed, 30 insertions, 7 deletions
diff --git a/src/modules/oauth.js b/src/modules/oauth.js index 144ff830..11cb10fe 100644 --- a/src/modules/oauth.js +++ b/src/modules/oauth.js @@ -1,16 +1,39 @@ const oauth = { state: { - client_id: false, - client_secret: false, - token: false + clientId: false, + clientSecret: false, + /* App token is authentication for app without any user, used mostly for + * MastoAPI's registration of new users, stored so that we can fall back to + * it on logout + */ + appToken: false, + /* User token is authentication for app with user, this is for every calls + * that need authorized user to be successful (i.e. posting, liking etc) + */ + userToken: false }, mutations: { - setClientData (state, data) { - state.client_id = data.client_id - state.client_secret = data.client_secret + setClientData (state, { clientId, clientSecret }) { + state.clientId = clientId + state.clientSecret = clientSecret + }, + setAppToken (state, token) { + state.appToken = token }, setToken (state, token) { - state.token = token + state.userToken = token + } + }, + getters: { + getToken: state => () => { + // state.token is userToken with older name, coming from persistent state + // added here for smoother transition, otherwise user will be logged out + return state.userToken || state.token || state.appToken + }, + getUserToken: state => () => { + // state.token is userToken with older name, coming from persistent state + // added here for smoother transition, otherwise user will be logged out + return state.userToken || state.token } } } |
