fix: remove some of the typescript warnings
This commit is contained in:
parent
2b302974cc
commit
49955eb03a
12 changed files with 76 additions and 62 deletions
|
@ -21,6 +21,7 @@
|
||||||
"@kyvg/vue3-notification": "2.3.4",
|
"@kyvg/vue3-notification": "2.3.4",
|
||||||
"@sentry/tracing": "6.16.1",
|
"@sentry/tracing": "6.16.1",
|
||||||
"@sentry/vue": "6.16.1",
|
"@sentry/vue": "6.16.1",
|
||||||
|
"@types/is-touch-device": "^1.0.0",
|
||||||
"@vue/compat": "3.2.26",
|
"@vue/compat": "3.2.26",
|
||||||
"@vueuse/core": "7.5.2",
|
"@vueuse/core": "7.5.2",
|
||||||
"@vueuse/router": "7.5.3",
|
"@vueuse/router": "7.5.3",
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<div
|
<div
|
||||||
:class="[background ? 'has-background' : '', $route.name+'-view']"
|
:class="[background ? 'has-background' : '', $route.name as string +'-view']"
|
||||||
:style="{'background-image': `url(${background})`}"
|
:style="{'background-image': `url(${background})`}"
|
||||||
class="link-share-container"
|
class="link-share-container"
|
||||||
>
|
>
|
||||||
|
|
|
@ -33,7 +33,9 @@ import {useStore} from 'vuex'
|
||||||
|
|
||||||
import ListService from '@/services/list'
|
import ListService from '@/services/list'
|
||||||
|
|
||||||
const background = ref(null)
|
import {colorIsDark} from '@/helpers/color/colorIsDark'
|
||||||
|
|
||||||
|
const background = ref<string | null>(null)
|
||||||
const backgroundLoading = ref(false)
|
const backgroundLoading = ref(false)
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div>
|
<div>
|
||||||
<h2 class="title" v-if="title">{{ title }}</h2>
|
<h2 class="title" v-if="title">{{ title }}</h2>
|
||||||
<api-config @foundApi="hasApiUrl = true"/>
|
<api-config/>
|
||||||
<slot/>
|
<slot/>
|
||||||
</div>
|
</div>
|
||||||
<legal/>
|
<legal/>
|
||||||
|
@ -23,9 +23,9 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import Logo from '@/components/home/Logo'
|
import Logo from '@/components/home/Logo.vue'
|
||||||
import Message from '@/components/misc/message'
|
import Message from '@/components/misc/message.vue'
|
||||||
import Legal from '@/components/misc/legal'
|
import Legal from '@/components/misc/legal.vue'
|
||||||
import ApiConfig from '@/components/misc/api-config.vue'
|
import ApiConfig from '@/components/misc/api-config.vue'
|
||||||
import {useStore} from 'vuex'
|
import {useStore} from 'vuex'
|
||||||
import {computed} from 'vue'
|
import {computed} from 'vue'
|
||||||
|
|
|
@ -183,6 +183,8 @@ import {mapState} from 'vuex'
|
||||||
import Rights from '../../models/constants/rights.json'
|
import Rights from '../../models/constants/rights.json'
|
||||||
import FilterPopup from '@/components/list/partials/filter-popup.vue'
|
import FilterPopup from '@/components/list/partials/filter-popup.vue'
|
||||||
|
|
||||||
|
import {colorIsDark} from '@/helpers/color/colorIsDark'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'GanttChart',
|
name: 'GanttChart',
|
||||||
components: {
|
components: {
|
||||||
|
@ -252,6 +254,7 @@ export default {
|
||||||
canWrite: (state) => state.currentList.maxRight > Rights.READ,
|
canWrite: (state) => state.currentList.maxRight > Rights.READ,
|
||||||
}),
|
}),
|
||||||
methods: {
|
methods: {
|
||||||
|
colorIsDark,
|
||||||
buildTheGanttChart() {
|
buildTheGanttChart() {
|
||||||
this.setDates()
|
this.setDates()
|
||||||
this.prepareGanttDays()
|
this.prepareGanttDays()
|
||||||
|
|
|
@ -73,6 +73,8 @@ import Done from '@/components/misc/Done.vue'
|
||||||
import Labels from '../../../components/tasks/partials/labels'
|
import Labels from '../../../components/tasks/partials/labels'
|
||||||
import ChecklistSummary from './checklist-summary'
|
import ChecklistSummary from './checklist-summary'
|
||||||
|
|
||||||
|
import {colorIsDark} from '@/helpers/color/colorIsDark'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'kanban-card',
|
name: 'kanban-card',
|
||||||
components: {
|
components: {
|
||||||
|
@ -98,6 +100,7 @@ export default {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
colorIsDark,
|
||||||
async toggleTaskDone(task) {
|
async toggleTaskDone(task) {
|
||||||
this.loadingInternal = true
|
this.loadingInternal = true
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -76,7 +76,6 @@ app.component('card', Card)
|
||||||
// Mixins
|
// Mixins
|
||||||
import {getNamespaceTitle} from './helpers/getNamespaceTitle'
|
import {getNamespaceTitle} from './helpers/getNamespaceTitle'
|
||||||
import {getListTitle} from './helpers/getListTitle'
|
import {getListTitle} from './helpers/getListTitle'
|
||||||
import {colorIsDark} from './helpers/color/colorIsDark'
|
|
||||||
import {setTitle} from './helpers/setTitle'
|
import {setTitle} from './helpers/setTitle'
|
||||||
|
|
||||||
app.mixin({
|
app.mixin({
|
||||||
|
@ -87,7 +86,6 @@ app.mixin({
|
||||||
formatDateShort: formatDateShort,
|
formatDateShort: formatDateShort,
|
||||||
getNamespaceTitle,
|
getNamespaceTitle,
|
||||||
getListTitle,
|
getListTitle,
|
||||||
colorIsDark,
|
|
||||||
setTitle,
|
setTitle,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
|
@ -2,73 +2,73 @@ import { createRouter, createWebHistory, RouteLocation } from 'vue-router'
|
||||||
import {saveLastVisited} from '@/helpers/saveLastVisited'
|
import {saveLastVisited} from '@/helpers/saveLastVisited'
|
||||||
import {store} from '@/store'
|
import {store} from '@/store'
|
||||||
|
|
||||||
import HomeComponent from '../views/Home'
|
import HomeComponent from '../views/Home.vue'
|
||||||
import NotFoundComponent from '../views/404'
|
import NotFoundComponent from '../views/404.vue'
|
||||||
import About from '../views/About'
|
import About from '../views/About.vue'
|
||||||
// User Handling
|
// User Handling
|
||||||
import LoginComponent from '../views/user/Login'
|
import LoginComponent from '../views/user/Login.vue'
|
||||||
import RegisterComponent from '../views/user/Register'
|
import RegisterComponent from '../views/user/Register.vue'
|
||||||
import OpenIdAuth from '../views/user/OpenIdAuth'
|
import OpenIdAuth from '../views/user/OpenIdAuth.vue'
|
||||||
import DataExportDownload from '../views/user/DataExportDownload'
|
import DataExportDownload from '../views/user/DataExportDownload.vue'
|
||||||
// Tasks
|
// Tasks
|
||||||
import ShowTasksInRangeComponent from '../views/tasks/ShowTasksInRange'
|
import ShowTasksInRangeComponent from '../views/tasks/ShowTasksInRange.vue'
|
||||||
import LinkShareAuthComponent from '../views/sharing/LinkSharingAuth'
|
import LinkShareAuthComponent from '../views/sharing/LinkSharingAuth.vue'
|
||||||
import TaskDetailViewModal from '../views/tasks/TaskDetailViewModal'
|
import TaskDetailViewModal from '../views/tasks/TaskDetailViewModal.vue'
|
||||||
import TaskDetailView from '../views/tasks/TaskDetailView'
|
import TaskDetailView from '../views/tasks/TaskDetailView.vue'
|
||||||
import ListNamespaces from '../views/namespaces/ListNamespaces'
|
import ListNamespaces from '../views/namespaces/ListNamespaces.vue'
|
||||||
// Team Handling
|
// Team Handling
|
||||||
import ListTeamsComponent from '../views/teams/ListTeams'
|
import ListTeamsComponent from '../views/teams/ListTeams.vue'
|
||||||
// Label Handling
|
// Label Handling
|
||||||
import ListLabelsComponent from '../views/labels/ListLabels'
|
import ListLabelsComponent from '../views/labels/ListLabels.vue'
|
||||||
import NewLabelComponent from '../views/labels/NewLabel'
|
import NewLabelComponent from '../views/labels/NewLabel.vue'
|
||||||
// Migration
|
// Migration
|
||||||
import MigrationComponent from '../views/migrator/Migrate'
|
import MigrationComponent from '../views/migrator/Migrate.vue'
|
||||||
import MigrateServiceComponent from '../views/migrator/MigrateService'
|
import MigrateServiceComponent from '../views/migrator/MigrateService.vue'
|
||||||
// List Views
|
// List Views
|
||||||
import ShowListComponent from '../views/list/ShowList'
|
import ShowListComponent from '../views/list/ShowList.vue'
|
||||||
import Kanban from '../views/list/views/Kanban'
|
import Kanban from '../views/list/views/Kanban.vue'
|
||||||
import List from '../views/list/views/List'
|
import List from '../views/list/views/List.vue'
|
||||||
import Gantt from '../views/list/views/Gantt'
|
import Gantt from '../views/list/views/Gantt.vue'
|
||||||
import Table from '../views/list/views/Table'
|
import Table from '../views/list/views/Table.vue'
|
||||||
// List Settings
|
// List Settings
|
||||||
import ListSettingEdit from '../views/list/settings/edit'
|
import ListSettingEdit from '../views/list/settings/edit.vue'
|
||||||
import ListSettingBackground from '../views/list/settings/background'
|
import ListSettingBackground from '../views/list/settings/background.vue'
|
||||||
import ListSettingDuplicate from '../views/list/settings/duplicate'
|
import ListSettingDuplicate from '../views/list/settings/duplicate.vue'
|
||||||
import ListSettingShare from '../views/list/settings/share'
|
import ListSettingShare from '../views/list/settings/share.vue'
|
||||||
import ListSettingDelete from '../views/list/settings/delete'
|
import ListSettingDelete from '../views/list/settings/delete.vue'
|
||||||
import ListSettingArchive from '../views/list/settings/archive'
|
import ListSettingArchive from '../views/list/settings/archive.vue'
|
||||||
|
|
||||||
// Namespace Settings
|
// Namespace Settings
|
||||||
import NamespaceSettingEdit from '../views/namespaces/settings/edit'
|
import NamespaceSettingEdit from '../views/namespaces/settings/edit.vue'
|
||||||
import NamespaceSettingShare from '../views/namespaces/settings/share'
|
import NamespaceSettingShare from '../views/namespaces/settings/share.vue'
|
||||||
import NamespaceSettingArchive from '../views/namespaces/settings/archive'
|
import NamespaceSettingArchive from '../views/namespaces/settings/archive.vue'
|
||||||
import NamespaceSettingDelete from '../views/namespaces/settings/delete'
|
import NamespaceSettingDelete from '../views/namespaces/settings/delete.vue'
|
||||||
|
|
||||||
// Saved Filters
|
// Saved Filters
|
||||||
import FilterNew from '@/views/filters/FilterNew'
|
import FilterNew from '@/views/filters/FilterNew.vue'
|
||||||
import FilterEdit from '@/views/filters/FilterEdit'
|
import FilterEdit from '@/views/filters/FilterEdit.vue'
|
||||||
import FilterDelete from '@/views/filters/FilterDelete'
|
import FilterDelete from '@/views/filters/FilterDelete.vue'
|
||||||
|
|
||||||
const PasswordResetComponent = () => import('../views/user/PasswordReset')
|
const PasswordResetComponent = () => import('../views/user/PasswordReset.vue')
|
||||||
const GetPasswordResetComponent = () => import('../views/user/RequestPasswordReset')
|
const GetPasswordResetComponent = () => import('../views/user/RequestPasswordReset.vue')
|
||||||
const UserSettingsComponent = () => import('../views/user/Settings')
|
const UserSettingsComponent = () => import('../views/user/Settings.vue')
|
||||||
const UserSettingsAvatarComponent = () => import('../views/user/settings/Avatar')
|
const UserSettingsAvatarComponent = () => import('../views/user/settings/Avatar.vue')
|
||||||
const UserSettingsCaldavComponent = () => import('../views/user/settings/Caldav')
|
const UserSettingsCaldavComponent = () => import('../views/user/settings/Caldav.vue')
|
||||||
const UserSettingsDataExportComponent = () => import('../views/user/settings/DataExport')
|
const UserSettingsDataExportComponent = () => import('../views/user/settings/DataExport.vue')
|
||||||
const UserSettingsDeletionComponent = () => import('../views/user/settings/Deletion')
|
const UserSettingsDeletionComponent = () => import('../views/user/settings/Deletion.vue')
|
||||||
const UserSettingsEmailUpdateComponent = () => import('../views/user/settings/EmailUpdate')
|
const UserSettingsEmailUpdateComponent = () => import('../views/user/settings/EmailUpdate.vue')
|
||||||
const UserSettingsGeneralComponent = () => import('../views/user/settings/General')
|
const UserSettingsGeneralComponent = () => import('../views/user/settings/General.vue')
|
||||||
const UserSettingsPasswordUpdateComponent = () => import('../views/user/settings/PasswordUpdate')
|
const UserSettingsPasswordUpdateComponent = () => import('../views/user/settings/PasswordUpdate.vue')
|
||||||
const UserSettingsTOTPComponent = () => import('../views/user/settings/TOTP')
|
const UserSettingsTOTPComponent = () => import('../views/user/settings/TOTP.vue')
|
||||||
|
|
||||||
// List Handling
|
// List Handling
|
||||||
const NewListComponent = () => import('../views/list/NewList')
|
const NewListComponent = () => import('../views/list/NewList.vue')
|
||||||
|
|
||||||
// Namespace Handling
|
// Namespace Handling
|
||||||
const NewNamespaceComponent = () => import('../views/namespaces/NewNamespace')
|
const NewNamespaceComponent = () => import('../views/namespaces/NewNamespace.vue')
|
||||||
|
|
||||||
const EditTeamComponent = () => import('../views/teams/EditTeam')
|
const EditTeamComponent = () => import('../views/teams/EditTeam.vue')
|
||||||
const NewTeamComponent = () => import('../views/teams/NewTeam')
|
const NewTeamComponent = () => import('../views/teams/NewTeam.vue')
|
||||||
|
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
history: createWebHistory(),
|
history: createWebHistory(),
|
||||||
|
|
2
src/types/shims-vue.d.ts
vendored
2
src/types/shims-vue.d.ts
vendored
|
@ -1,4 +1,6 @@
|
||||||
declare module 'vue' {
|
declare module 'vue' {
|
||||||
|
import { CompatVue } from '@vue/runtime-dom'
|
||||||
|
const Vue: CompatVue
|
||||||
export default Vue
|
export default Vue
|
||||||
export * from '@vue/runtime-dom'
|
export * from '@vue/runtime-dom'
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,17 +24,17 @@ export const MIGRATORS: IMigratorRecord = {
|
||||||
todoist: {
|
todoist: {
|
||||||
id: 'todoist',
|
id: 'todoist',
|
||||||
name: 'Todoist',
|
name: 'Todoist',
|
||||||
icon: todoistIcon,
|
icon: todoistIcon as string,
|
||||||
},
|
},
|
||||||
trello: {
|
trello: {
|
||||||
id: 'trello',
|
id: 'trello',
|
||||||
name: 'Trello',
|
name: 'Trello',
|
||||||
icon: trelloIcon,
|
icon: trelloIcon as string,
|
||||||
},
|
},
|
||||||
'microsoft-todo': {
|
'microsoft-todo': {
|
||||||
id: 'microsoft-todo',
|
id: 'microsoft-todo',
|
||||||
name: 'Microsoft Todo',
|
name: 'Microsoft Todo',
|
||||||
icon: microsoftTodoIcon,
|
icon: microsoftTodoIcon as string,
|
||||||
},
|
},
|
||||||
'vikunja-file': {
|
'vikunja-file': {
|
||||||
id: 'vikunja-file',
|
id: 'vikunja-file',
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref } from 'vue'
|
import { ref } from 'vue'
|
||||||
import ShowTasks from './ShowTasks'
|
import ShowTasks from './ShowTasks.vue'
|
||||||
|
|
||||||
function getNextWeekDate() {
|
function getNextWeekDate() {
|
||||||
return new Date((new Date()).getTime() + 7 * 24 * 60 * 60 * 1000)
|
return new Date((new Date()).getTime() + 7 * 24 * 60 * 60 * 1000)
|
||||||
|
|
|
@ -2869,6 +2869,11 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
|
|
||||||
|
"@types/is-touch-device@^1.0.0":
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/is-touch-device/-/is-touch-device-1.0.0.tgz#c835c4c220a4e5635f4895b6223630dcd429b49c"
|
||||||
|
integrity sha512-/rErV0NuroAR9EZF1xK0TrihQ/7BbVckGfSr/suq/E4tJQLr4TrADR0qAUpDs/hxtl1NiP0V/ho+fSA/5EIO9Q==
|
||||||
|
|
||||||
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
|
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
|
||||||
version "2.0.3"
|
version "2.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
|
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
|
||||||
|
|
Loading…
Reference in a new issue