forked from vikunja/frontend
Compare commits
103 Commits
feature/pr
...
main
Author | SHA1 | Date | |
---|---|---|---|
ad5e72aaf1 | |||
e2c9e83c2a | |||
cd434a0e3e | |||
9f293af804 | |||
b175e00cfe | |||
|
19dd82d62a | ||
b3ddc9465a | |||
6b38f17d32 | |||
86449d4912 | |||
145d756251 | |||
838a11a2f6 | |||
3bfd3210b0 | |||
e933bfa99e | |||
f6a37a54d0 | |||
e00c9bb1af | |||
018707c3d5 | |||
386727f6c5 | |||
a29ce36d6c | |||
7aed16bd6f | |||
b1f3ca6e59 | |||
4c0b8a06c5 | |||
60647c50ac | |||
59eaf1849e | |||
fb57339050 | |||
f9831a6ad8 | |||
f25c67f80a | |||
d3b0b97192 | |||
fa3be219a8 | |||
c22702d911 | |||
b25c5ff547 | |||
2e0a097806 | |||
c2083f7924 | |||
8923261e5b | |||
5391df56b0 | |||
d2b1f5780e | |||
1717e968e1 | |||
2c29bb3971 | |||
37b8218a0a | |||
ca7bbb5b91 | |||
2f3c008d2b | |||
c2722b7c3d | |||
312abd907f | |||
1b73c1ed64 | |||
d442d6653b | |||
758b8d6e2b | |||
416fd2e2a7 | |||
15a8335f1a | |||
c689583669 | |||
7a43a7acc9 | |||
8843418161 | |||
7c1eab13ae | |||
5a69036da7 | |||
2ad3458873 | |||
eb464343e8 | |||
2f18d0cbad | |||
6cd463a514 | |||
05b70632c5 | |||
ca9fe6ff21 | |||
e5754300de | |||
65134048bf | |||
8339a99747 | |||
3e1ae41e70 | |||
f757ba3441 | |||
6499c9cb5b | |||
28e5440d8b | |||
fef8c4d0f4 | |||
99e5059c64 | |||
5df4f39d95 | |||
7ec5a70ccb | |||
72fcab6e78 | |||
292c90425e | |||
b80f070431 | |||
03936c0403 | |||
62825d2e64 | |||
5cd5caef45 | |||
798e8b529d | |||
0e3766c5a5 | |||
90207a4427 | |||
60993a886a | |||
a6b42f9181 | |||
98fbd7c53c | |||
8d533f50e8 | |||
707459ec77 | |||
faf7db649e | |||
202e71be48 | |||
d6e8b418d3 | |||
a9f41f6114 | |||
f6f0d52518 | |||
ccb9be42c2 | |||
179009bfe3 | |||
8c2bd94a9f | |||
7757166d75 | |||
7f03002972 | |||
8555006d9e | |||
713ad64658 | |||
0713d481e3 | |||
ace0cf3588 | |||
bba3bbfe89 | |||
754afc5496 | |||
f1e8892ab5 | |||
c11e192c4e | |||
e9c704075d | |||
35edcb5672 |
20
.drone.yml
20
.drone.yml
|
@ -42,11 +42,12 @@ steps:
|
|||
# - .cache
|
||||
|
||||
- name: dependencies
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
CYPRESS_CACHE_FOLDER: .cache/cypress
|
||||
PUPPETEER_SKIP_DOWNLOAD: true
|
||||
commands:
|
||||
- corepack enable && pnpm config set store-dir .cache/pnpm
|
||||
- pnpm install --fetch-timeout 100000
|
||||
|
@ -54,7 +55,7 @@ steps:
|
|||
# - restore-cache
|
||||
|
||||
- name: lint
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
|
@ -65,7 +66,7 @@ steps:
|
|||
- dependencies
|
||||
|
||||
- name: build-prod
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
|
@ -76,7 +77,7 @@ steps:
|
|||
- dependencies
|
||||
|
||||
- name: test-unit
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
commands:
|
||||
- corepack enable && pnpm config set store-dir .cache/pnpm
|
||||
|
@ -86,7 +87,7 @@ steps:
|
|||
|
||||
- name: typecheck
|
||||
failure: ignore
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
|
@ -136,8 +137,9 @@ steps:
|
|||
# - dependencies
|
||||
|
||||
- name: deploy-preview
|
||||
image: node:18-alpine
|
||||
image: williamjackson/netlify-cli
|
||||
pull: always
|
||||
user: root # The rest runs as root and thus the permissions wouldn't work
|
||||
environment:
|
||||
NETLIFY_AUTH_TOKEN:
|
||||
from_secret: netlify_auth_token
|
||||
|
@ -200,7 +202,7 @@ steps:
|
|||
# - .cache
|
||||
|
||||
- name: build
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
|
@ -277,7 +279,7 @@ steps:
|
|||
# - .cache
|
||||
|
||||
- name: build
|
||||
image: node:18-alpine
|
||||
image: node:20-alpine
|
||||
pull: always
|
||||
environment:
|
||||
PNPM_CACHE_FOLDER: .cache/pnpm
|
||||
|
@ -522,6 +524,6 @@ steps:
|
|||
from_secret: crowdin_key
|
||||
---
|
||||
kind: signature
|
||||
hmac: 303afeb09b75a57ba88720b45dc06c8bf2c7320e19d738d8299f325438246f75
|
||||
hmac: 511c2a090e9efd4c942980d971204adb6321540bb01c92409dd9bf8463b7f6f4
|
||||
|
||||
...
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# │─││ │││ │ │
|
||||
# ┘─┘┘─┘┘┘─┘┘─┘
|
||||
|
||||
FROM --platform=$BUILDPLATFORM node:18-alpine AS builder
|
||||
FROM --platform=$BUILDPLATFORM node:20-alpine AS builder
|
||||
|
||||
WORKDIR /build
|
||||
|
||||
|
@ -13,6 +13,7 @@ ENV PNPM_CACHE_FOLDER .cache/pnpm/
|
|||
|
||||
COPY package.json ./
|
||||
COPY pnpm-lock.yaml ./
|
||||
COPY patches /build/patches
|
||||
|
||||
RUN if [ "$USE_RELEASE" != true ]; then \
|
||||
# https://pnpm.io/installation#using-corepack
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"extends": "@vue/tsconfig/tsconfig.web.json",
|
||||
"extends": "@vue/tsconfig/tsconfig.dom.json",
|
||||
"include": ["./**/*", "../support/**/*", "../factories/**/*"],
|
||||
"compilerOptions": {
|
||||
"baseUrl": ".",
|
||||
|
|
0
docker/injector.sh
Normal file → Executable file
0
docker/injector.sh
Normal file → Executable file
0
docker/ipv6-disable.sh
Normal file → Executable file
0
docker/ipv6-disable.sh
Normal file → Executable file
|
@ -4,7 +4,6 @@
|
|||
|
||||
pid /tmp/nginx.pid;
|
||||
worker_processes auto;
|
||||
worker_rlimit_nofile 65535;
|
||||
|
||||
events {
|
||||
multi_accept on;
|
||||
|
|
72
package.json
72
package.json
|
@ -13,7 +13,7 @@
|
|||
},
|
||||
"homepage": "https://vikunja.io/",
|
||||
"funding": "https://opencollective.com/vikunja",
|
||||
"packageManager": "pnpm@8.3.0",
|
||||
"packageManager": "pnpm@8.5.0",
|
||||
"keywords": [
|
||||
"todo",
|
||||
"productivity",
|
||||
|
@ -53,37 +53,37 @@
|
|||
"@infectoone/vue-ganttastic": "2.1.4",
|
||||
"@intlify/unplugin-vue-i18n": "0.10.0",
|
||||
"@kyvg/vue3-notification": "2.9.0",
|
||||
"@sentry/tracing": "7.48.0",
|
||||
"@sentry/vue": "7.48.0",
|
||||
"@vueuse/core": "10.0.2",
|
||||
"axios": "1.3.5",
|
||||
"@sentry/tracing": "7.51.2",
|
||||
"@sentry/vue": "7.51.2",
|
||||
"@vueuse/core": "10.1.2",
|
||||
"axios": "1.4.0",
|
||||
"blurhash": "2.0.5",
|
||||
"bulma-css-variables": "0.9.33",
|
||||
"camel-case": "4.1.2",
|
||||
"codemirror": "5.65.12",
|
||||
"date-fns": "2.29.3",
|
||||
"codemirror": "5.65.13",
|
||||
"date-fns": "2.30.0",
|
||||
"dayjs": "1.11.7",
|
||||
"dompurify": "3.0.2",
|
||||
"dompurify": "3.0.3",
|
||||
"easymde": "2.18.0",
|
||||
"fast-deep-equal": "3.1.3",
|
||||
"flatpickr": "4.6.13",
|
||||
"flexsearch": "0.7.31",
|
||||
"floating-vue": "2.0.0-beta.20",
|
||||
"highlight.js": "11.7.0",
|
||||
"highlight.js": "11.8.0",
|
||||
"is-touch-device": "1.0.1",
|
||||
"klona": "2.0.6",
|
||||
"lodash.debounce": "4.0.8",
|
||||
"marked": "4.3.0",
|
||||
"pinia": "2.0.34",
|
||||
"marked": "5.0.2",
|
||||
"pinia": "2.0.36",
|
||||
"register-service-worker": "1.7.2",
|
||||
"snake-case": "3.0.4",
|
||||
"sortablejs": "1.15.0",
|
||||
"ufo": "1.1.1",
|
||||
"ufo": "1.1.2",
|
||||
"vue": "3.2.47",
|
||||
"vue-advanced-cropper": "2.8.8",
|
||||
"vue-flatpickr-component": "11.0.3",
|
||||
"vue-i18n": "9.2.2",
|
||||
"vue-router": "4.1.6",
|
||||
"vue-router": "4.2.0",
|
||||
"workbox-precaching": "6.5.4",
|
||||
"zhyswan-vuedraggable": "4.1.3"
|
||||
},
|
||||
|
@ -91,54 +91,54 @@
|
|||
"@4tw/cypress-drag-drop": "2.2.3",
|
||||
"@cypress/vite-dev-server": "5.0.5",
|
||||
"@cypress/vue": "5.0.5",
|
||||
"@faker-js/faker": "7.6.0",
|
||||
"@faker-js/faker": "8.0.0",
|
||||
"@histoire/plugin-screenshot": "0.16.1",
|
||||
"@histoire/plugin-vue": "0.16.1",
|
||||
"@rushstack/eslint-patch": "1.2.0",
|
||||
"@tsconfig/node18": "2.0.1",
|
||||
"@types/codemirror": "5.60.7",
|
||||
"@types/dompurify": "3.0.1",
|
||||
"@types/dompurify": "3.0.2",
|
||||
"@types/flexsearch": "0.7.3",
|
||||
"@types/is-touch-device": "1.0.0",
|
||||
"@types/lodash.debounce": "4.0.7",
|
||||
"@types/marked": "4.0.8",
|
||||
"@types/node": "18.15.11",
|
||||
"@types/marked": "4.3.0",
|
||||
"@types/node": "18.16.8",
|
||||
"@types/postcss-preset-env": "7.7.0",
|
||||
"@types/sortablejs": "1.15.1",
|
||||
"@typescript-eslint/eslint-plugin": "5.59.0",
|
||||
"@typescript-eslint/parser": "5.59.0",
|
||||
"@vitejs/plugin-legacy": "4.0.2",
|
||||
"@vitejs/plugin-vue": "4.1.0",
|
||||
"@vue/eslint-config-typescript": "11.0.2",
|
||||
"@typescript-eslint/eslint-plugin": "5.59.5",
|
||||
"@typescript-eslint/parser": "5.59.5",
|
||||
"@vitejs/plugin-legacy": "4.0.3",
|
||||
"@vitejs/plugin-vue": "4.2.3",
|
||||
"@vue/eslint-config-typescript": "11.0.3",
|
||||
"@vue/test-utils": "2.3.2",
|
||||
"@vue/tsconfig": "0.1.3",
|
||||
"@vue/tsconfig": "0.4.0",
|
||||
"autoprefixer": "10.4.14",
|
||||
"browserslist": "4.21.5",
|
||||
"caniuse-lite": "1.0.30001479",
|
||||
"caniuse-lite": "1.0.30001486",
|
||||
"css-has-pseudo": "5.0.2",
|
||||
"csstype": "3.1.2",
|
||||
"cypress": "12.10.0",
|
||||
"esbuild": "0.17.17",
|
||||
"eslint": "8.38.0",
|
||||
"eslint-plugin-vue": "9.11.0",
|
||||
"happy-dom": "9.7.1",
|
||||
"cypress": "12.12.0",
|
||||
"esbuild": "0.17.18",
|
||||
"eslint": "8.40.0",
|
||||
"eslint-plugin-vue": "9.12.0",
|
||||
"happy-dom": "9.10.9",
|
||||
"histoire": "0.16.1",
|
||||
"netlify-cli": "13.2.2",
|
||||
"postcss": "8.4.22",
|
||||
"postcss": "8.4.23",
|
||||
"postcss-easing-gradients": "3.0.1",
|
||||
"postcss-easings": "3.0.1",
|
||||
"postcss-focus-within": "7.0.2",
|
||||
"postcss-preset-env": "8.3.2",
|
||||
"rollup": "3.20.5",
|
||||
"rollup": "3.21.6",
|
||||
"rollup-plugin-visualizer": "5.9.0",
|
||||
"sass": "1.62.0",
|
||||
"sass": "1.62.1",
|
||||
"start-server-and-test": "2.0.0",
|
||||
"typescript": "5.0.4",
|
||||
"vite": "4.2.2",
|
||||
"vite": "4.3.5",
|
||||
"vite-plugin-inject-preload": "1.3.1",
|
||||
"vite-plugin-pwa": "0.14.7",
|
||||
"vite-svg-loader": "4.0.0",
|
||||
"vitest": "0.30.1",
|
||||
"vue-tsc": "1.2.0",
|
||||
"vitest": "0.31.0",
|
||||
"vue-tsc": "1.6.4",
|
||||
"wait-on": "7.0.1",
|
||||
"workbox-cli": "6.5.4"
|
||||
},
|
||||
|
|
7171
pnpm-lock.yaml
7171
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
|
@ -6,7 +6,7 @@
|
|||
],
|
||||
"packageRules": [
|
||||
{
|
||||
"matchPackageNames": ["netlify-cli", "happy-dom"],
|
||||
"matchPackageNames": ["happy-dom"],
|
||||
"extends": ["schedule:weekly"]
|
||||
},
|
||||
{
|
||||
|
|
|
@ -33,9 +33,9 @@ const promiseExec = cmd => {
|
|||
}
|
||||
|
||||
(async function () {
|
||||
let stdout = await promiseExec(`./node_modules/.bin/netlify link --id ${siteId}`)
|
||||
let stdout = await promiseExec(`/home/node/docker-netlify-cli/node_modules/.bin/netlify link --id ${siteId}`)
|
||||
console.log(stdout)
|
||||
stdout = await promiseExec(`./node_modules/.bin/netlify deploy --alias ${alias}`)
|
||||
stdout = await promiseExec(`/home/node/docker-netlify-cli/node_modules/.bin/netlify deploy --alias ${alias}`)
|
||||
console.log(stdout)
|
||||
|
||||
const data = await fetch(prIssueCommentsUrl).then(response => response.json())
|
||||
|
|
|
@ -1 +1 @@
|
|||
57af69409e66bc87f4f2fc5822dd8d3c2eb47c601f81af1ac4a56f3e2d80837b1a2de06f4ff57695ec379b7c15b881e3 ./scripts/deploy-preview-netlify.mjs
|
||||
4a7c1293c7b12e9ab476cdf35251a407c6a1cd005d22c06df994222cccfb25cde5f47d15866a098c9d739778fee4dc19 ./scripts/deploy-preview-netlify.mjs
|
||||
|
|
|
@ -140,6 +140,18 @@ export const KEYBOARD_SHORTCUTS : ShortcutGroup[] = [
|
|||
title: 'keyboardShortcuts.task.description',
|
||||
keys: ['e'],
|
||||
},
|
||||
{
|
||||
title: 'keyboardShortcuts.task.priority',
|
||||
keys: ['p'],
|
||||
},
|
||||
{
|
||||
title: 'keyboardShortcuts.task.delete',
|
||||
keys: ['shift', 'delete'],
|
||||
},
|
||||
{
|
||||
title: 'keyboardShortcuts.task.favorite',
|
||||
keys: ['s'],
|
||||
},
|
||||
],
|
||||
},
|
||||
]
|
||||
]
|
|
@ -49,9 +49,11 @@ const displayName = computed(() => getDisplayName(props.user))
|
|||
<style lang="scss" scoped>
|
||||
.user {
|
||||
margin: .5rem;
|
||||
display: flex;
|
||||
justify-items: center;
|
||||
|
||||
&.is-inline {
|
||||
display: inline;
|
||||
display: inline-flex;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -442,5 +442,6 @@ async function toggleTaskDone(task: ITask) {
|
|||
.task-done-checkbox {
|
||||
padding: 0;
|
||||
height: 18px; // The exact height of the checkbox in the container
|
||||
margin-right: .75rem;
|
||||
}
|
||||
</style>
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Změnit barvu tohoto úkolu",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Spravovat připomenutí této úlohy",
|
||||
"description": "Přepnout úpravy popisu úkolu"
|
||||
"description": "Přepnout úpravy popisu úkolu",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Verze frontendu: {version}",
|
||||
"apiVersion": "Verze API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Skift farven på denne opgave",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Administrer påmindelser om denne opgave",
|
||||
"description": "Slå redigering af opgavebeskrivelse til/fra"
|
||||
"description": "Slå redigering af opgavebeskrivelse til/fra",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Die Farbe dieser Aufgabe ändern",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Erinnerungen für diese Aufgabe verwalten",
|
||||
"description": "Aufgabenbeschreibung bearbeiten"
|
||||
"description": "Aufgabenbeschreibung bearbeiten",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend-Version: {version}",
|
||||
"apiVersion": "API-Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Die Farbe dieser Aufgabe ändern",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Erinnerungen für diese Aufgabe verwalten",
|
||||
"description": "Aufgabenbeschreibung bearbeiten"
|
||||
"description": "Aufgabenbeschreibung bearbeiten",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -897,7 +897,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1056,4 +1059,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Cambia el color de esta tarea",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Administrar recordatorios de esta tarea",
|
||||
"description": "Editar la descripción de la tarea"
|
||||
"description": "Editar la descripción de la tarea",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "Versión de la API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Changer la couleur de cette tâche",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Version : {version}",
|
||||
"apiVersion": "Version de l’API : {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Cambia il colore di questa attività",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Gestisci i promemoria di questa attività",
|
||||
"description": "Attiva/Disattiva modifica della descrizione dell'attività"
|
||||
"description": "Attiva/Disattiva modifica della descrizione dell'attività",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Versione Frontend: {version}",
|
||||
"apiVersion": "Versione API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend versie: {version}",
|
||||
"apiVersion": "API Versie: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Endre fargen på denne oppgaven",
|
||||
"move": "Flytt denne oppgaven til et annet prosjekt",
|
||||
"reminder": "Behandle påminnelser om denne oppgaven",
|
||||
"description": "Veksle redigering av oppgavebeskrivelsen"
|
||||
"description": "Veksle redigering av oppgavebeskrivelsen",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Prosjektvisning",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend versjon: {version}",
|
||||
"apiVersion": "API versjon: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Zmień kolor tego zadania",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Zarządzaj przypomnieniami o tym zadaniu",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Wersja frontendu: {version}",
|
||||
"apiVersion": "Wersja API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Alterar a cor desta tarefa",
|
||||
"move": "Mover esta tarefa para outro projeto",
|
||||
"reminder": "Gerir lembretes desta tarefa",
|
||||
"description": "Alternar edição da descrição da tarefa"
|
||||
"description": "Alternar edição da descrição da tarefa",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Vista do Projeto",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Versão Atual: {version}",
|
||||
"apiVersion": "Versão da API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Изменить цвет этой задачи",
|
||||
"move": "Переместить эту задачу в другой проект",
|
||||
"reminder": "Управление напоминаниями об этой задаче",
|
||||
"description": "Включить изменение описания задачи"
|
||||
"description": "Включить изменение описания задачи",
|
||||
"delete": "Удалить задачу",
|
||||
"priority": "Изменить приоритет задачи",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Просмотр проекта",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Версия фронтенда: {version}",
|
||||
"apiVersion": "Версия API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Thay đổi màu công việc này",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Phiên bản giao diện người dùng: {version}",
|
||||
"apiVersion": "Phiên bản API: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "更改此任务的颜色",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "管理此任务的提醒",
|
||||
"description": "切换编辑时的任务描述"
|
||||
"description": "切换编辑时的任务描述",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "前端版本:{version}",
|
||||
"apiVersion": "API 版本:{version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -894,7 +894,10 @@
|
|||
"color": "Change the color of this task",
|
||||
"move": "Move this task to another project",
|
||||
"reminder": "Manage reminders of this task",
|
||||
"description": "Toggle editing of the task description"
|
||||
"description": "Toggle editing of the task description",
|
||||
"delete": "Delete this task",
|
||||
"priority": "Change the priority of this task",
|
||||
"favorite": "Mark this task as favorite / unfavorite"
|
||||
},
|
||||
"project": {
|
||||
"title": "Project Views",
|
||||
|
@ -1053,4 +1056,4 @@
|
|||
"frontendVersion": "Frontend Version: {version}",
|
||||
"apiVersion": "API Version: {version}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -5,7 +5,7 @@ import type { IUser } from '@/modelTypes/IUser'
|
|||
import type { IFile } from '@/modelTypes/IFile'
|
||||
import type { IAttachment } from '@/modelTypes/IAttachment'
|
||||
|
||||
export const SUPPORTED_IMAGE_SUFFIX = ['.jpg', '.png', '.bmp', '.gif']
|
||||
export const SUPPORTED_IMAGE_SUFFIX = ['.jpg','.jpeg', '.png', '.bmp', '.gif']
|
||||
|
||||
export default class AttachmentModel extends AbstractModel<IAttachment> implements IAttachment {
|
||||
id = 0
|
||||
|
|
|
@ -322,6 +322,7 @@
|
|||
@click="setFieldActive('priority')"
|
||||
variant="secondary"
|
||||
icon="exclamation"
|
||||
v-shortcut="'p'"
|
||||
>
|
||||
{{ $t('task.detail.actions.priority') }}
|
||||
</x-button>
|
||||
|
@ -406,6 +407,7 @@
|
|||
@click="toggleFavorite"
|
||||
variant="secondary"
|
||||
:icon="task.isFavorite ? 'star' : ['far', 'star']"
|
||||
v-shortcut="'s'"
|
||||
>
|
||||
{{
|
||||
task.isFavorite ? $t('task.detail.actions.unfavorite') : $t('task.detail.actions.favorite')
|
||||
|
@ -416,6 +418,7 @@
|
|||
icon="trash-alt"
|
||||
:shadow="false"
|
||||
class="is-danger is-outlined has-no-border"
|
||||
v-shortcut="'Shift+Delete'"
|
||||
>
|
||||
{{ $t('task.detail.actions.delete') }}
|
||||
</x-button>
|
||||
|
|
|
@ -73,7 +73,11 @@
|
|||
:search-results="foundUsers"
|
||||
label="username"
|
||||
v-model="newMember"
|
||||
/>
|
||||
>
|
||||
<template #searchResult="{option: user}">
|
||||
<User :avatar-size="24" :user="user" class="m-0"/>
|
||||
</template>
|
||||
</multiselect>
|
||||
</div>
|
||||
<div class="control">
|
||||
<x-button @click="addUser" icon="plus">
|
||||
|
@ -88,7 +92,9 @@
|
|||
<table class="table has-actions is-striped is-hoverable is-fullwidth">
|
||||
<tbody>
|
||||
<tr :key="m.id" v-for="m in team?.members">
|
||||
<td>{{ getDisplayName(m) }}</td>
|
||||
<td>
|
||||
<User :avatar-size="24" :user="m" class="m-0"/>
|
||||
</td>
|
||||
<td>
|
||||
<template v-if="m.id === userInfo.id">
|
||||
<b class="is-success">You</b>
|
||||
|
@ -185,6 +191,7 @@ import {useRoute, useRouter} from 'vue-router'
|
|||
|
||||
import Editor from '@/components/input/AsyncEditor'
|
||||
import Multiselect from '@/components/input/multiselect.vue'
|
||||
import User from '@/components/misc/user.vue'
|
||||
|
||||
import TeamService from '@/services/team'
|
||||
import TeamMemberService from '@/services/teamMember'
|
||||
|
@ -194,7 +201,6 @@ import {RIGHTS as Rights} from '@/constants/rights'
|
|||
|
||||
import {useTitle} from '@/composables/useTitle'
|
||||
import {success} from '@/message'
|
||||
import {getDisplayName} from '@/models/user'
|
||||
import {useAuthStore} from '@/stores/auth'
|
||||
|
||||
import type {ITeam} from '@/modelTypes/ITeam'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"extends": "@vue/tsconfig/tsconfig.web.json",
|
||||
"extends": "@vue/tsconfig/tsconfig.dom.json",
|
||||
"include": ["env.d.ts", "src/**/*.d.ts", "src/**/*", "src/**/*.vue", "src/**/*.json"],
|
||||
"exclude": ["src/**/__tests__/*"],
|
||||
"compilerOptions": {
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
{
|
||||
"extends": "@vue/tsconfig/tsconfig.node.json",
|
||||
"extends": [
|
||||
"@tsconfig/node18/tsconfig.json",
|
||||
"@vue/tsconfig/tsconfig.json"
|
||||
],
|
||||
"include": ["vite.config.*", "vitest.config.*", "cypress.config.*", "env.config.d.ts"],
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
|
|
Loading…
Reference in New Issue
Block a user