From a007160480b3ce076d52fac511e06bfe0fbaea3e Mon Sep 17 00:00:00 2001 From: Chocobozzz <me@florianbigard.com> Date: Tue, 13 Aug 2019 08:43:37 +0200 Subject: [PATCH] Fix lint --- config/test.exs | 2 +- js/src/App.vue | 88 +++++++++---------- js/src/apollo/user.ts | 2 +- .../components/Event/AddressAutoComplete.vue | 2 +- js/src/components/NavBar.vue | 36 ++++---- js/src/views/Event/Create.vue | 4 +- js/src/views/User/Validate.vue | 16 ++-- lib/mobilizon/users/users.ex | 22 ++--- lib/mobilizon_web/resolvers/user.ex | 4 +- test/mobilizon/users/users_test.exs | 2 +- 10 files changed, 85 insertions(+), 93 deletions(-) diff --git a/config/test.exs b/config/test.exs index e31d9fbfb..21432393b 100644 --- a/config/test.exs +++ b/config/test.exs @@ -19,7 +19,7 @@ config :mobilizon, MobilizonWeb.Endpoint, config :logger, backends: [:console], compile_time_purge_level: :debug, - level: :debug + level: :info # Configure your database config :mobilizon, Mobilizon.Repo, diff --git a/js/src/App.vue b/js/src/App.vue index 2cb8ee27e..2be5576e2 100644 --- a/js/src/App.vue +++ b/js/src/App.vue @@ -9,15 +9,15 @@ </template> <script lang="ts"> - import NavBar from '@/components/NavBar.vue'; - import { Component, Vue } from 'vue-property-decorator'; - import { AUTH_ACCESS_TOKEN, AUTH_USER_ACTOR, AUTH_USER_EMAIL, AUTH_USER_ID } from '@/constants'; - import { CURRENT_USER_CLIENT, UPDATE_CURRENT_USER_CLIENT } from '@/graphql/user'; - import { ICurrentUser } from '@/types/current-user.model'; - import Footer from '@/components/Footer.vue'; - import Logo from '@/components/Logo.vue'; +import NavBar from '@/components/NavBar.vue'; +import { Component, Vue } from 'vue-property-decorator'; +import { AUTH_ACCESS_TOKEN, AUTH_USER_ACTOR, AUTH_USER_EMAIL, AUTH_USER_ID } from '@/constants'; +import { CURRENT_USER_CLIENT, UPDATE_CURRENT_USER_CLIENT } from '@/graphql/user'; +import { ICurrentUser } from '@/types/current-user.model'; +import Footer from '@/components/Footer.vue'; +import Logo from '@/components/Logo.vue'; - @Component({ +@Component({ apollo: { currentUser: { query: CURRENT_USER_CLIENT, @@ -34,11 +34,11 @@ export default class App extends Vue { actor = localStorage.getItem(AUTH_USER_ACTOR); - async mounted () { + async mounted() { await this.initializeCurrentUser(); } - getUser (): ICurrentUser|false { + getUser(): ICurrentUser | false { return this.currentUser.id ? this.currentUser : false; } @@ -62,42 +62,42 @@ export default class App extends Vue { </script> <style lang="scss"> - @import "variables"; +@import "variables"; - /* Bulma imports */ - @import "~bulma/sass/base/_all.sass"; - @import "~bulma/sass/components/card.sass"; - @import "~bulma/sass/components/media.sass"; - @import "~bulma/sass/components/message.sass"; - @import "~bulma/sass/components/modal.sass"; - @import "~bulma/sass/components/navbar.sass"; - @import "~bulma/sass/components/pagination.sass"; - @import "~bulma/sass/components/dropdown.sass"; - @import "~bulma/sass/elements/box.sass"; - @import "~bulma/sass/elements/button.sass"; - @import "~bulma/sass/elements/container.sass"; - @import "~bulma/sass/form/_all"; - @import "~bulma/sass/elements/icon.sass"; - @import "~bulma/sass/elements/image.sass"; - @import "~bulma/sass/elements/other.sass"; - @import "~bulma/sass/elements/tag.sass"; - @import "~bulma/sass/elements/title.sass"; - @import "~bulma/sass/elements/notification"; - @import "~bulma/sass/grid/_all.sass"; - @import "~bulma/sass/layout/_all.sass"; - @import "~bulma/sass/utilities/_all"; +/* Bulma imports */ +@import "~bulma/sass/base/_all.sass"; +@import "~bulma/sass/components/card.sass"; +@import "~bulma/sass/components/media.sass"; +@import "~bulma/sass/components/message.sass"; +@import "~bulma/sass/components/modal.sass"; +@import "~bulma/sass/components/navbar.sass"; +@import "~bulma/sass/components/pagination.sass"; +@import "~bulma/sass/components/dropdown.sass"; +@import "~bulma/sass/elements/box.sass"; +@import "~bulma/sass/elements/button.sass"; +@import "~bulma/sass/elements/container.sass"; +@import "~bulma/sass/form/_all"; +@import "~bulma/sass/elements/icon.sass"; +@import "~bulma/sass/elements/image.sass"; +@import "~bulma/sass/elements/other.sass"; +@import "~bulma/sass/elements/tag.sass"; +@import "~bulma/sass/elements/title.sass"; +@import "~bulma/sass/elements/notification"; +@import "~bulma/sass/grid/_all.sass"; +@import "~bulma/sass/layout/_all.sass"; +@import "~bulma/sass/utilities/_all"; - /* Buefy imports */ - @import "~buefy/src/scss/utils/_all"; - @import "~buefy/src/scss/components/datepicker"; - @import "~buefy/src/scss/components/notices"; - @import "~buefy/src/scss/components/dropdown"; - @import "~buefy/src/scss/components/autocomplete"; - @import "~buefy/src/scss/components/form"; - @import "~buefy/src/scss/components/modal"; - @import "~buefy/src/scss/components/tag"; - @import "~buefy/src/scss/components/taginput"; - @import "~buefy/src/scss/components/upload"; +/* Buefy imports */ +@import "~buefy/src/scss/utils/_all"; +@import "~buefy/src/scss/components/datepicker"; +@import "~buefy/src/scss/components/notices"; +@import "~buefy/src/scss/components/dropdown"; +@import "~buefy/src/scss/components/autocomplete"; +@import "~buefy/src/scss/components/form"; +@import "~buefy/src/scss/components/modal"; +@import "~buefy/src/scss/components/tag"; +@import "~buefy/src/scss/components/taginput"; +@import "~buefy/src/scss/components/upload"; .router-enter-active, .router-leave-active { diff --git a/js/src/apollo/user.ts b/js/src/apollo/user.ts index 7d6fa02e9..9bdf94446 100644 --- a/js/src/apollo/user.ts +++ b/js/src/apollo/user.ts @@ -29,4 +29,4 @@ export function buildCurrentUserResolver(cache: ApolloCache<NormalizedCacheObjec cache.writeData({ data }); }, }; -}; +} diff --git a/js/src/components/Event/AddressAutoComplete.vue b/js/src/components/Event/AddressAutoComplete.vue index 023ef7963..b3362a61c 100644 --- a/js/src/components/Event/AddressAutoComplete.vue +++ b/js/src/components/Event/AddressAutoComplete.vue @@ -45,7 +45,7 @@ export default class AddressAutoComplete extends Vue { this.data = result.data.searchAddress as IAddress[]; } - @Watch("selected") + @Watch('selected') updateSelected() { this.$emit('input', this.selected); } diff --git a/js/src/components/NavBar.vue b/js/src/components/NavBar.vue index 3f2317204..972a55dfa 100644 --- a/js/src/components/NavBar.vue +++ b/js/src/components/NavBar.vue @@ -60,18 +60,18 @@ </template> <script lang="ts"> - import { Component, Vue, Watch } from 'vue-property-decorator'; - import { CURRENT_USER_CLIENT } from '@/graphql/user'; - import { logout } from '@/utils/auth'; - import { LOGGED_PERSON } from '@/graphql/actor'; - import { IPerson } from '@/types/actor'; - import { CONFIG } from '@/graphql/config'; - import { IConfig } from '@/types/config.model'; - import { ICurrentUser } from '@/types/current-user.model'; - import Logo from '@/components/Logo.vue'; - import SearchField from '@/components/SearchField.vue'; +import { Component, Vue, Watch } from 'vue-property-decorator'; +import { CURRENT_USER_CLIENT } from '@/graphql/user'; +import { logout } from '@/utils/auth'; +import { LOGGED_PERSON } from '@/graphql/actor'; +import { IPerson } from '@/types/actor'; +import { CONFIG } from '@/graphql/config'; +import { IConfig } from '@/types/config.model'; +import { ICurrentUser } from '@/types/current-user.model'; +import Logo from '@/components/Logo.vue'; +import SearchField from '@/components/SearchField.vue'; - @Component({ +@Component({ apollo: { currentUser: { query: CURRENT_USER_CLIENT, @@ -88,7 +88,7 @@ export default class NavBar extends Vue { notifications = [ { header: 'Coucou' }, - { title: "T'as une notification", subtitle: 'Et elle est cool' }, + { title: 'T\'as une notification', subtitle: 'Et elle est cool' }, ]; loggedPerson: IPerson | null = null; config!: IConfig; @@ -117,13 +117,13 @@ export default class NavBar extends Vue { } </script> <style lang="scss" scoped> - @import "../variables.scss"; +@import "../variables.scss"; - nav { - border-bottom: solid 1px #0a0a0a; +nav { + border-bottom: solid 1px #0a0a0a; - .navbar-item img { - max-height: 2.5em; - } + .navbar-item img { + max-height: 2.5em; } +} </style> diff --git a/js/src/views/Event/Create.vue b/js/src/views/Event/Create.vue index 856432c05..0de44411e 100644 --- a/js/src/views/Event/Create.vue +++ b/js/src/views/Event/Create.vue @@ -137,9 +137,9 @@ export default class CreateEvent extends Vue { const obj = { organizerActorId: this.loggedPerson.id, beginsOn: this.event.beginsOn.toISOString(), - tags: this.event.tags.map((tag: ITag) => tag.title) + tags: this.event.tags.map((tag: ITag) => tag.title), }; - let res = Object.assign({}, this.event, obj); + const res = Object.assign({}, this.event, obj); if (this.event.physicalAddress) { delete this.event.physicalAddress['__typename']; diff --git a/js/src/views/User/Validate.vue b/js/src/views/User/Validate.vue index 02c51d969..76b3237d8 100644 --- a/js/src/views/User/Validate.vue +++ b/js/src/views/User/Validate.vue @@ -17,14 +17,14 @@ </template> <script lang="ts"> - import { VALIDATE_USER } from '@/graphql/user'; - import { Component, Prop, Vue } from 'vue-property-decorator'; - import { AUTH_USER_ID } from '@/constants'; - import { RouteName } from '@/router'; - import { UserRouteName } from '@/router/user'; - import { saveTokenData } from '@/utils/auth'; +import { VALIDATE_USER } from '@/graphql/user'; +import { Component, Prop, Vue } from 'vue-property-decorator'; +import { AUTH_USER_ID } from '@/constants'; +import { RouteName } from '@/router'; +import { UserRouteName } from '@/router/user'; +import { saveTokenData } from '@/utils/auth'; - @Component +@Component export default class Validate extends Vue { @Prop({ type: String, required: true }) token!: string; @@ -64,7 +64,7 @@ export default class Validate extends Vue { saveUserData({ validateUser: login }) { localStorage.setItem(AUTH_USER_ID, login.user.id); - saveTokenData(login) + saveTokenData(login); } } </script> diff --git a/lib/mobilizon/users/users.ex b/lib/mobilizon/users/users.ex index 90d10de5d..92697d931 100644 --- a/lib/mobilizon/users/users.ex +++ b/lib/mobilizon/users/users.ex @@ -231,11 +231,11 @@ defmodule Mobilizon.Users do """ def authenticate(%{user: user, password: password}) do # Does password match the one stored in the database? - case Argon2.verify_pass(password, user.password_hash) do - true -> - # Yes, create and return the token - with {:ok, tokens} <- generate_tokens(user), do: {:ok, tokens} - + with true <- Argon2.verify_pass(password, user.password_hash), + # Yes, create and return the token + {:ok, tokens} <- generate_tokens(user) do + {:ok, tokens} + else _ -> # No, return an error {:error, :unauthorized} @@ -252,22 +252,16 @@ defmodule Mobilizon.Users do end end - def generate_access_token(user) do + defp generate_access_token(user) do with {:ok, access_token, _claims} <- - MobilizonWeb.Guardian.encode_and_sign(user, %{}, - token_type: "access", - ttl: {5, :seconds} - ) do + MobilizonWeb.Guardian.encode_and_sign(user, %{}, token_type: "access") do {:ok, access_token} end end def generate_refresh_token(user) do with {:ok, refresh_token, _claims} <- - MobilizonWeb.Guardian.encode_and_sign(user, %{}, - token_type: "refresh", - ttl: {30, :days} - ) do + MobilizonWeb.Guardian.encode_and_sign(user, %{}, token_type: "refresh") do {:ok, refresh_token} end end diff --git a/lib/mobilizon_web/resolvers/user.ex b/lib/mobilizon_web/resolvers/user.ex index ef3f0839f..500036fa3 100644 --- a/lib/mobilizon_web/resolvers/user.ex +++ b/lib/mobilizon_web/resolvers/user.ex @@ -89,9 +89,7 @@ defmodule MobilizonWeb.Resolvers.User do ) do with {:ok, user, _claims} <- MobilizonWeb.Guardian.resource_from_token(refresh_token), {:ok, _old, {exchanged_token, _claims}} <- - MobilizonWeb.Guardian.exchange(refresh_token, ["access", "refresh"], "access", - ttl: {1, :days} - ), + MobilizonWeb.Guardian.exchange(refresh_token, ["access", "refresh"], "access"), {:ok, refresh_token} <- Users.generate_refresh_token(user) do {:ok, %{access_token: exchanged_token, refresh_token: refresh_token}} else diff --git a/test/mobilizon/users/users_test.exs b/test/mobilizon/users/users_test.exs index a7ebceeb9..bb43805ab 100644 --- a/test/mobilizon/users/users_test.exs +++ b/test/mobilizon/users/users_test.exs @@ -68,7 +68,7 @@ defmodule Mobilizon.UsersTest do test "authenticate/1 checks the user's password" do {:ok, %User{} = user} = Users.register(%{email: @email, password: @password}) - assert {:ok, _, _} = Users.authenticate(%{user: user, password: @password}) + assert {:ok, _} = Users.authenticate(%{user: user, password: @password}) assert {:error, :unauthorized} == Users.authenticate(%{user: user, password: "bad password"})