Fix lint issues

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2020-12-14 10:21:04 +01:00
parent 594d5a91ec
commit 8dc5b8a4b0
No known key found for this signature in database
GPG key ID: A061B9DDE0CA0773
20 changed files with 26 additions and 43 deletions

View file

@ -32,7 +32,7 @@ module.exports = {
"@typescript-eslint/no-explicit-any": "off",
"cypress/no-unnecessary-waiting": "off",
"vue/max-len": [
"error",
"off",
{
ignoreStrings: true,
ignoreHTMLTextContents: true,
@ -45,7 +45,6 @@ module.exports = {
"prettier/prettier": "error",
"@typescript-eslint/interface-name-prefix": "off",
"@typescript-eslint/no-use-before-define": "off",
"import/prefer-default-export": "off",
"import/extensions": "off",
"import/no-unresolved": "off",
"no-shadow": "off",
@ -53,25 +52,4 @@ module.exports = {
},
ignorePatterns: ["src/typings/*.d.ts", "vue.config.js"],
overrides: [
{
files: [
"**/__tests__/*.{j,t}s?(x)",
"**/tests/unit/**/*.spec.{j,t}s?(x)",
],
env: {
mocha: true,
},
},
{
files: [
"**/__tests__/*.{j,t}s?(x)",
"**/tests/unit/**/*.spec.{j,t}s?(x)",
],
env: {
jest: true,
},
},
],
};

View file

@ -407,6 +407,7 @@ export default class EditorComponent extends Vue {
new Image(),
new MaxSize({ maxSize: this.maxSize }),
],
// eslint-disable-next-line @typescript-eslint/ban-types
onUpdate: ({ getHTML }: { getHTML: Function }) => {
this.$emit("input", getHTML());
},
@ -422,6 +423,7 @@ export default class EditorComponent extends Vue {
}
}
// eslint-disable-next-line @typescript-eslint/ban-types
showLinkMenu(command: Function, active: boolean): Function | undefined {
if (!this.editor) return undefined;
if (active) return command({ href: null });
@ -536,6 +538,7 @@ export default class EditorComponent extends Vue {
* Show a file prompt, upload picture and insert it into editor
* @param command
*/
// eslint-disable-next-line @typescript-eslint/ban-types
async showImagePrompt(command: Function): Promise<void> {
const image = await listenFileUpload();
try {

View file

@ -13,6 +13,7 @@ import { EditorView } from "prosemirror-view";
/* eslint-disable class-methods-use-this */
export default class Image extends Node {
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
get name() {
return "image";
}
@ -62,6 +63,7 @@ export default class Image extends Node {
};
}
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
get plugins() {
return [
new Plugin({

View file

@ -4,17 +4,20 @@ import { Extension, Plugin } from "tiptap";
export default class MaxSize extends Extension {
// eslint-disable-next-line class-methods-use-this
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
get name() {
return "maxSize";
}
// eslint-disable-next-line class-methods-use-this
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
get defaultOptions() {
return {
maxSize: null,
};
}
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
get plugins() {
return [
new Plugin({

View file

@ -86,6 +86,7 @@ export default class AddressAutoComplete extends Vue {
private gettingLocation = false;
// eslint-disable-next-line no-undef
private location!: GeolocationPosition;
private gettingLocationError: any;
@ -219,6 +220,7 @@ export default class AddressAutoComplete extends Vue {
this.gettingLocation = false;
}
// eslint-disable-next-line no-undef
static async getLocation(): Promise<GeolocationPosition> {
return new Promise((resolve, reject) => {
if (!("geolocation" in navigator)) {

View file

@ -137,6 +137,7 @@ export default class FullAddressAutoComplete extends Vue {
private gettingLocation = false;
// eslint-disable-next-line no-undef
private location!: GeolocationPosition;
private gettingLocationError: any;
@ -277,6 +278,7 @@ export default class FullAddressAutoComplete extends Vue {
return window.isSecureContext;
}
// eslint-disable-next-line no-undef
static async getLocation(): Promise<GeolocationPosition> {
return new Promise((resolve, reject) => {
if (!("geolocation" in navigator)) {

View file

@ -6,6 +6,7 @@ import {
} from "./datetime";
export default {
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
install(vue: any): void {
vue.filter("formatDateString", formatDateString);
vue.filter("formatTimeString", formatTimeString);

View file

@ -1,5 +1,4 @@
import gql from "graphql-tag";
import { GROUP_FIELDS_FRAGMENTS } from "./group";
const participantQuery = `
role,

View file

@ -3,7 +3,6 @@ import { UserRouteName } from "@/router/user";
import { AUTH_ACCESS_TOKEN } from "@/constants";
import { LoginErrorCode } from "@/types/enums";
// eslint-disable-next-line import/prefer-default-export
export const authGuardIfNeeded: NavigationGuard = async (to, from, next) => {
if (to.meta.requiredAuth !== true) return next();

View file

@ -3,7 +3,6 @@ import { NavigationGuard } from "vue-router";
import { CONFIG } from "../../graphql/config";
import apolloProvider from "../../vue-apollo";
// eslint-disable-next-line import/prefer-default-export
export const beforeRegisterGuard: NavigationGuard = async (to, from, next) => {
const { data } = await apolloProvider.defaultClient.query({
query: CONFIG,

View file

@ -0,0 +1,8 @@
module.exports = {
env: {
jest: true,
"cypress/globals": true,
},
extends: ["plugin:cypress/recommended"],
plugins: ["cypress"],
};

View file

@ -1,4 +1,5 @@
export default class ElementCount {
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
constructor(selector, count) {
this.message = `Testing if element <${selector}> has count: ${count}`;
this.expected = count;

View file

@ -1,4 +1,5 @@
// Set the en-US language just in case
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export default function (window) {
Object.defineProperty(window.navigator, "language", { value: "en-US" });
}

View file

@ -8,7 +8,6 @@ describe("Events", () => {
cy.loginUser();
cy.visit("/events/me");
cy.wait(1000);
cy.contains(".message.is-danger", "No events found");
cy.contains(".navbar-item", "Create").click();
@ -29,7 +28,6 @@ describe("Events", () => {
.last()
.find(".select select")
.select("2021");
cy.wait(1000);
cy.get(".field").eq(3).contains(".datepicker-cell", "15").click();
cy.contains(".button.is-primary", "Create my event").click();

View file

@ -17,7 +17,6 @@ describe("Login", () => {
cy.url().should("include", "/password-reset/send");
cy.go("back");
cy.wait(1000);
cy.get("form").contains(".control a.button", "Register").click();
cy.url().should("include", "/register/user");
@ -55,7 +54,6 @@ describe("Login", () => {
cy.get("input[type=email]").type("user@email.com");
cy.get("input[type=password]").type("some password");
cy.get("form").submit();
cy.wait(1000);
cy.get(".navbar-end .navbar-link span.icon i").should(
"have.class",
"mdi-account-circle"
@ -113,7 +111,6 @@ describe("Login", () => {
cy.get("form .field input").eq(1).type("Not");
cy.get("form .field textarea").clear().type("This will now work");
cy.get("form").submit();
cy.wait(1000);
cy.get(".navbar-link span.icon i").should(
"have.class",

View file

@ -33,7 +33,6 @@ describe("Registration", () => {
cy.get("form").contains("button.button.is-primary", "Register").click();
cy.url().should("include", "/register/profile");
cy.wait(1000);
cy.get("form > .field")
.eq(1)
.contains("label", "Username")

View file

@ -138,7 +138,7 @@ Cypress.Commands.add("waitForFetches", () => {
return;
}
cy.wait(100).then(() => cy.waitForFetches());
cy.waitForFetches();
});
Cypress.Commands.add("iframeLoaded", { prevSubject: "element" }, ($iframe) => {

View file

@ -6,10 +6,4 @@ module.exports = {
expect: true,
sinon: true,
},
rules: {
"import/no-extraneous-dependencies": [
"error",
{ devDependencies: ["**/*.test.js", "**/*.spec.js"] },
],
},
};

View file

@ -1,3 +1,4 @@
// eslint-disable-next-line @typescript-eslint/no-var-requires
const vueJest = require("vue-jest/lib/template-compiler");
module.exports = {

View file

@ -2,11 +2,7 @@ const path = require("path");
const ForkTsCheckerWebpackPlugin = require("fork-ts-checker-webpack-plugin");
module.exports = {
devServer: {
proxy: "http://mobilizon1.com",
},
runtimeCompiler: true,
lintOnSave: process.env.NODE_ENV !== "production",
filenameHashing: true,
productionSourceMap: false,
outputDir: path.resolve(__dirname, "../priv/static"),