{
  "name": "vikunja-frontend",
  "version": "0.10.0",
  "private": true,
  "scripts": {
    "serve": "vite",
    "serve:dist-dev": "node scripts/serve-dist.js",
    "serve:dist": "vite preview",
    "build": "vite build && workbox copyLibraries dist/",
    "build:dev": "vite build -m development --outDir dist-dev/",
    "lint": "eslint --ignore-pattern '*.test.*' ./src --ext .vue,.js,.ts",
    "cypress:open": "cypress open",
    "test:unit": "jest",
    "test:frontend": "cypress run"
  },
  "dependencies": {
    "browserslist": "4.16.8",
    "bulma": "0.9.3",
    "camel-case": "4.1.2",
    "copy-to-clipboard": "3.3.1",
    "date-fns": "2.23.0",
    "dompurify": "2.3.1",
    "highlight.js": "11.2.0",
    "is-touch-device": "1.0.1",
    "lodash": "4.17.21",
    "marked": "3.0.2",
    "register-service-worker": "1.7.2",
    "snake-case": "3.0.4",
    "verte": "0.0.12",
    "vue": "2.6.14",
    "vue-advanced-cropper": "1.8.2",
    "vue-drag-resize": "1.5.4",
    "vue-easymde": "1.4.0",
    "vue-i18n": "8.25.0",
    "vue-shortkey": "3.1.7",
    "vuedraggable": "2.24.3",
    "vuex": "3.6.2",
    "workbox-precaching": "6.2.4"
  },
  "devDependencies": {
    "@4tw/cypress-drag-drop": "1.8.1",
    "@fortawesome/fontawesome-svg-core": "1.2.36",
    "@fortawesome/free-regular-svg-icons": "5.15.4",
    "@fortawesome/free-solid-svg-icons": "5.15.4",
    "@fortawesome/vue-fontawesome": "2.0.2",
    "@types/jest": "27.0.1",
    "@typescript-eslint/eslint-plugin": "4.30.0",
    "@typescript-eslint/parser": "4.30.0",
    "@vue/babel-preset-app": "4.5.13",
    "@vue/eslint-config-typescript": "7.0.0",
    "autoprefixer": "10.3.4",
    "axios": "0.21.1",
    "babel-eslint": "10.1.0",
    "cypress": "8.3.1",
    "cypress-file-upload": "5.0.8",
    "esbuild": "0.12.25",
    "eslint": "7.32.0",
    "eslint-plugin-vue": "7.17.0",
    "express": "4.17.1",
    "faker": "5.5.3",
    "jest": "27.1.0",
    "rollup-plugin-terser": "7.0.2",
    "rollup-plugin-visualizer": "5.5.2",
    "sass": "1.39.0",
    "ts-jest": "27.0.5",
    "typescript": "4.4.2",
    "vite": "2.5.3",
    "vite-plugin-pwa": "0.11.2",
    "vite-plugin-vue2": "1.8.1",
    "vue-flatpickr-component": "8.1.7",
    "vue-notification": "1.3.20",
    "vue-router": "3.5.2",
    "vue-template-compiler": "2.6.14",
    "wait-on": "6.0.0",
    "workbox-cli": "6.2.4"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended",
      "@vue/typescript"
    ],
    "rules": {
      "vue/html-quotes": [
        "error",
        "double"
      ],
      "quotes": [
        "error",
        "single"
      ],
      "comma-dangle": [
        "error",
        "always-multiline"
      ],
      "semi": [
        "error",
        "never"
      ]
    },
    "parserOptions": {
      "parser": "@typescript-eslint/parser"
    },
    "ignorePatterns": [
      "*.test.*",
      "cypress/*"
    ]
  },
  "postcss": {
    "plugins": {
      "autoprefixer": {}
    }
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie > 0",
    "not dead",
    "Firefox ESR"
  ],
  "jest": {
    "testPathIgnorePatterns": [
      "cypress"
    ],
    "testEnvironment": "jsdom",
    "preset": "ts-jest",
    "roots": [
      "<rootDir>/src"
    ],
    "transform": {
      "^.+\\.(js|tsx?)$": "ts-jest"
    },
    "moduleFileExtensions": [
      "ts",
      "js",
      "json"
    ]
  },
  "license": "AGPL-3.0-or-later"
}