Prvni naznak verejne casti, sprava profilu
This commit is contained in:
@@ -35,9 +35,9 @@ export const useFlightsStore = defineStore('Flights', {
|
||||
}
|
||||
return apolloWrapper.query(FLIGHT_DETAIL, {id}).then(result => result.data.flight);
|
||||
},
|
||||
fetch() {
|
||||
fetch(username) {
|
||||
return apolloWrapper
|
||||
.query(FLIGHTS_LIST)
|
||||
.query(FLIGHTS_LIST, {username})
|
||||
.then(({data}) => {
|
||||
this.items = data.flights;
|
||||
|
||||
|
||||
+51
-31
@@ -1,45 +1,33 @@
|
||||
import {defineStore} from 'pinia'
|
||||
import {api} from "boot/axios";
|
||||
import {apolloWrapper} from "src/graphql/apollo";
|
||||
import {EDIT_USER} from "src/graphql/mutations/user";
|
||||
import {LOGGED_USER_DETAIL, USER_DETAIL} from "src/graphql/queries/user";
|
||||
|
||||
export const useUserStore = defineStore('LoggedUser', {
|
||||
state: () => ({
|
||||
user: {},
|
||||
isRefreshing: false,
|
||||
}),
|
||||
|
||||
actions: {
|
||||
setTokens({access_token, access_token_validity}) {
|
||||
const now = new Date().getTime() / 1000;
|
||||
localStorage.setItem("accessToken", access_token);
|
||||
localStorage.setItem("accessTokenValidity", now + access_token_validity);
|
||||
},
|
||||
|
||||
getAccessToken() {
|
||||
const tokenValidity = localStorage.getItem("accessTokenValidity");
|
||||
const now = new Date().getTime() / 1000;
|
||||
|
||||
if (tokenValidity < now) {
|
||||
localStorage.removeItem("accessToken");
|
||||
localStorage.removeItem("accessTokenValidity");
|
||||
}
|
||||
|
||||
return localStorage.getItem(`accessToken`);
|
||||
},
|
||||
|
||||
setupCredentials() {
|
||||
return api.get("/me").then(({data}) => {
|
||||
this.user = data;
|
||||
return this.user;
|
||||
}).catch(async ({response}) => {
|
||||
console.log(response);
|
||||
|
||||
return response;
|
||||
update(id, formData) {
|
||||
apolloWrapper.mutate(EDIT_USER, {id, input: formData}).then(({data}) => {
|
||||
this.user = data.editLoggedUser;
|
||||
return data.editLoggedUser;
|
||||
});
|
||||
},
|
||||
|
||||
async refreshAccessToken() {
|
||||
return api.post("/refresh").then(({data}) => {
|
||||
this.setTokens(data);
|
||||
return data.access_token;
|
||||
fetchLoggedUserDetail() {
|
||||
return apolloWrapper.query(LOGGED_USER_DETAIL).then(({data}) => {
|
||||
this.user = data.loggedUser;
|
||||
return data.loggedUser;
|
||||
})
|
||||
},
|
||||
|
||||
fetchDetail(username) {
|
||||
return apolloWrapper.query(USER_DETAIL, {username}).then(({data}) => {
|
||||
return data.user
|
||||
});
|
||||
},
|
||||
|
||||
@@ -60,6 +48,38 @@ export const useUserStore = defineStore('LoggedUser', {
|
||||
Object.assign(this.user, {});
|
||||
localStorage.removeItem("accessToken");
|
||||
localStorage.removeItem("accessTokenValidity");
|
||||
}
|
||||
},
|
||||
|
||||
setTokens({access_token, access_token_validity}) {
|
||||
const now = new Date().getTime() / 1000;
|
||||
localStorage.setItem("accessToken", access_token);
|
||||
localStorage.setItem("accessTokenValidity", now + access_token_validity);
|
||||
},
|
||||
|
||||
getAccessToken() {
|
||||
const tokenValidity = localStorage.getItem("accessTokenValidity");
|
||||
const now = new Date().getTime() / 1000;
|
||||
|
||||
if (tokenValidity < now) {
|
||||
localStorage.removeItem("accessToken");
|
||||
localStorage.removeItem("accessTokenValidity");
|
||||
}
|
||||
|
||||
return localStorage.getItem(`accessToken`);
|
||||
},
|
||||
|
||||
async refreshAccessToken() {
|
||||
if (this.isRefreshing) return;
|
||||
|
||||
this.isRefreshing = true;
|
||||
return api.post("/refresh")
|
||||
.then(({data}) => {
|
||||
this.setTokens(data);
|
||||
return data.access_token;
|
||||
})
|
||||
.finally(() => {
|
||||
this.isRefreshing = false;
|
||||
});
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user