mirror of
https://github.com/go-vikunja/vikunja.git
synced 2025-12-05 19:16:51 -06:00
Compare commits
9 Commits
78964f1e5d
...
77958cf54c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
77958cf54c | ||
|
|
f865bd8555 | ||
|
|
5a17c56735 | ||
|
|
112df4a752 | ||
|
|
da0822c3f4 | ||
|
|
30104fb749 | ||
|
|
7cf2a6886e | ||
|
|
5bb53eaefa | ||
|
|
cec8daba59 |
4
.github/workflows/issue-closed-comment.yml
vendored
4
.github/workflows/issue-closed-comment.yml
vendored
@@ -53,7 +53,9 @@ jobs:
|
||||
|
||||
core.setOutput('closed_by_commit', 'true');
|
||||
core.setOutput('commit_sha', commitId);
|
||||
core.setOutput('commit_message', commit.message);
|
||||
// Escape backslashes, backticks and ${ to prevent breaking JS template strings
|
||||
const escapedMessage = commit.message.replace(/\\/g, '\\\\').replace(/`/g, '\\`').replace(/\$\{/g, '\\${');
|
||||
core.setOutput('commit_message', escapedMessage);
|
||||
core.setOutput('commit_url', closedEvent.commit_url);
|
||||
} else {
|
||||
console.log(`ℹ️ Issue #${issueNumber} was closed manually (not by commit)`);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# syntax=docker/dockerfile:1@sha256:b6afd42430b15f2d2a4c5a02b919e98a525b785b1aaff16747d2f623364e39b6
|
||||
FROM --platform=$BUILDPLATFORM node:24.11.1-alpine@sha256:2867d550cf9d8bb50059a0fff528741f11a84d985c732e60e19e8e75c7239c43 AS frontendbuilder
|
||||
FROM --platform=$BUILDPLATFORM node:24.11.1-alpine@sha256:682368d8253e0c3364b803956085c456a612d738bd635926d73fa24db3ce53d7 AS frontendbuilder
|
||||
|
||||
WORKDIR /build
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
"unzipper": "0.12.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"express": "5.2.0"
|
||||
"express": "5.2.1"
|
||||
},
|
||||
"pnpm": {
|
||||
"onlyBuiltDependencies": [
|
||||
|
||||
14
desktop/pnpm-lock.yaml
generated
14
desktop/pnpm-lock.yaml
generated
@@ -9,8 +9,8 @@ importers:
|
||||
.:
|
||||
dependencies:
|
||||
express:
|
||||
specifier: 5.2.0
|
||||
version: 5.2.0
|
||||
specifier: 5.2.1
|
||||
version: 5.2.1
|
||||
devDependencies:
|
||||
electron:
|
||||
specifier: 37.10.3
|
||||
@@ -636,8 +636,8 @@ packages:
|
||||
exponential-backoff@3.1.3:
|
||||
resolution: {integrity: sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==}
|
||||
|
||||
express@5.2.0:
|
||||
resolution: {integrity: sha512-XdpJDLxfztVY59X0zPI6sibRiGcxhTPXRD3IhJmjKf2jwMvkRGV1j7loB8U+heeamoU3XvihAaGRTR4aXXUN3A==}
|
||||
express@5.2.1:
|
||||
resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
extract-zip@2.0.1:
|
||||
@@ -1651,7 +1651,7 @@ snapshots:
|
||||
make-fetch-happen: 10.2.1
|
||||
nopt: 6.0.0
|
||||
proc-log: 2.0.1
|
||||
semver: 7.7.2
|
||||
semver: 7.7.3
|
||||
tar: 6.2.1
|
||||
which: 2.0.2
|
||||
transitivePeerDependencies:
|
||||
@@ -1771,7 +1771,7 @@ snapshots:
|
||||
'@npmcli/fs@2.1.2':
|
||||
dependencies:
|
||||
'@gar/promisify': 1.1.3
|
||||
semver: 7.7.2
|
||||
semver: 7.7.3
|
||||
|
||||
'@npmcli/move-file@2.0.1':
|
||||
dependencies:
|
||||
@@ -2488,7 +2488,7 @@ snapshots:
|
||||
|
||||
exponential-backoff@3.1.3: {}
|
||||
|
||||
express@5.2.0:
|
||||
express@5.2.1:
|
||||
dependencies:
|
||||
accepts: 2.0.0
|
||||
body-parser: 2.2.1
|
||||
|
||||
@@ -63,21 +63,21 @@
|
||||
"@intlify/unplugin-vue-i18n": "11.0.1",
|
||||
"@kyvg/vue3-notification": "3.4.2",
|
||||
"@sentry/vue": "10.27.0",
|
||||
"@tiptap/core": "3.8.0",
|
||||
"@tiptap/extension-code-block-lowlight": "3.8.0",
|
||||
"@tiptap/extension-hard-break": "3.8.0",
|
||||
"@tiptap/extension-image": "3.8.0",
|
||||
"@tiptap/extension-link": "3.8.0",
|
||||
"@tiptap/extension-list": "3.8.0",
|
||||
"@tiptap/extension-mention": "3.8.0",
|
||||
"@tiptap/extension-table": "3.8.0",
|
||||
"@tiptap/extension-typography": "3.8.0",
|
||||
"@tiptap/extension-underline": "3.8.0",
|
||||
"@tiptap/extensions": "3.8.0",
|
||||
"@tiptap/pm": "3.8.0",
|
||||
"@tiptap/starter-kit": "3.8.0",
|
||||
"@tiptap/suggestion": "3.8.0",
|
||||
"@tiptap/vue-3": "3.8.0",
|
||||
"@tiptap/core": "3.12.0",
|
||||
"@tiptap/extension-code-block-lowlight": "3.12.0",
|
||||
"@tiptap/extension-hard-break": "3.12.0",
|
||||
"@tiptap/extension-image": "3.12.0",
|
||||
"@tiptap/extension-link": "3.12.0",
|
||||
"@tiptap/extension-list": "3.12.0",
|
||||
"@tiptap/extension-mention": "3.12.0",
|
||||
"@tiptap/extension-table": "3.12.0",
|
||||
"@tiptap/extension-typography": "3.12.0",
|
||||
"@tiptap/extension-underline": "3.12.0",
|
||||
"@tiptap/extensions": "3.12.0",
|
||||
"@tiptap/pm": "3.12.0",
|
||||
"@tiptap/starter-kit": "3.12.0",
|
||||
"@tiptap/suggestion": "3.12.0",
|
||||
"@tiptap/vue-3": "3.12.0",
|
||||
"@vueuse/core": "14.1.0",
|
||||
"@vueuse/router": "14.1.0",
|
||||
"axios": "1.13.2",
|
||||
|
||||
500
frontend/pnpm-lock.yaml
generated
500
frontend/pnpm-lock.yaml
generated
@@ -44,50 +44,50 @@ importers:
|
||||
specifier: 10.27.0
|
||||
version: 10.27.0(pinia@3.0.4(typescript@5.9.3)(vue@3.5.25(typescript@5.9.3)))(vue@3.5.25(typescript@5.9.3))
|
||||
'@tiptap/core':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-code-block-lowlight':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/extension-code-block@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(highlight.js@11.11.1)(lowlight@3.3.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/extension-code-block@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(highlight.js@11.11.1)(lowlight@3.3.0)
|
||||
'@tiptap/extension-hard-break':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-image':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-link':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-list':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-mention':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(@tiptap/suggestion@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(@tiptap/suggestion@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-table':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-typography':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-underline':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extensions':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0
|
||||
'@tiptap/starter-kit':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0
|
||||
'@tiptap/suggestion':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/vue-3':
|
||||
specifier: 3.8.0
|
||||
version: 3.8.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(vue@3.5.25(typescript@5.9.3))
|
||||
specifier: 3.12.0
|
||||
version: 3.12.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(vue@3.5.25(typescript@5.9.3))
|
||||
'@vueuse/core':
|
||||
specifier: 14.1.0
|
||||
version: 14.1.0(vue@3.5.25(typescript@5.9.3))
|
||||
@@ -2265,189 +2265,189 @@ packages:
|
||||
'@surma/rollup-plugin-off-main-thread@2.2.3':
|
||||
resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==}
|
||||
|
||||
'@tiptap/core@3.8.0':
|
||||
resolution: {integrity: sha512-AfVCpS+nFLrVkcbIzO8d4VSdwX31Og5GuZ5qsJzx6pfvPam+fz7Icf7pyuys8TDvHb5LszWAAHset015Ouex3Q==}
|
||||
'@tiptap/core@3.12.0':
|
||||
resolution: {integrity: sha512-yy5LHOHgdR5Z3bID9g6Hj6IofqBw8HIHtT8E3SYZXnEWBUhsoXpJVAukXv0wWEZmIbae5PpQYIuklw/QXw26Pw==}
|
||||
peerDependencies:
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/extension-blockquote@3.10.5':
|
||||
resolution: {integrity: sha512-vuqqnFgbcKK0pXIASDpiZV33cZho9eq3TMBpIFQ1Kcfmy1DVsfq++AvukiPY/eSa9ciVRNApPp99+v8PDg8RmA==}
|
||||
'@tiptap/extension-blockquote@3.13.0':
|
||||
resolution: {integrity: sha512-K1z/PAIIwEmiWbzrP//4cC7iG1TZknDlF1yb42G7qkx2S2X4P0NiqX7sKOej3yqrPjKjGwPujLMSuDnCF87QkQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-bold@3.10.5':
|
||||
resolution: {integrity: sha512-YvslsSF4oSwBXMc9tDAUfqr8VmmQ8W/TJVdfdai+gwHSkCWtaqsojUmnAFSiMIyHg5ACVPYMdoThP3aqScNrWQ==}
|
||||
'@tiptap/extension-bold@3.13.0':
|
||||
resolution: {integrity: sha512-VYiDN9EEwR6ShaDLclG8mphkb/wlIzqfk7hxaKboq1G+NSDj8PcaSI9hldKKtTCLeaSNu6UR5nkdu/YHdzYWTw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-bubble-menu@3.10.5':
|
||||
resolution: {integrity: sha512-Kc71uAonSNCYoY+0oxLkxqk846ZgDYy8D28iKUp8Fc+0s6efpwbXLNVma5ooLlOKEz8vKeZNYVOKphTg/0xdZw==}
|
||||
'@tiptap/extension-bubble-menu@3.13.0':
|
||||
resolution: {integrity: sha512-qZ3j2DBsqP9DjG2UlExQ+tHMRhAnWlCKNreKddKocb/nAFrPdBCtvkqIEu+68zPlbLD4ukpoyjUklRJg+NipFg==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/pm': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
'@tiptap/pm': ^3.13.0
|
||||
|
||||
'@tiptap/extension-bullet-list@3.10.5':
|
||||
resolution: {integrity: sha512-ohysgT2p17h8ARyzB7z0nX/Pk7Lyilr/ruT0n5JXNO4pbgw9r6WYFyyiNJCkeFIjJEu7a4C3HBPH/r1EhDu6YA==}
|
||||
'@tiptap/extension-bullet-list@3.13.0':
|
||||
resolution: {integrity: sha512-fFQmmEUoPzRGiQJ/KKutG35ZX21GE+1UCDo8Q6PoWH7Al9lex47nvyeU1BiDYOhcTKgIaJRtEH5lInsOsRJcSA==}
|
||||
peerDependencies:
|
||||
'@tiptap/extension-list': ^3.10.5
|
||||
'@tiptap/extension-list': ^3.13.0
|
||||
|
||||
'@tiptap/extension-code-block-lowlight@3.8.0':
|
||||
resolution: {integrity: sha512-M4Tcz+koqf1z8IszP496TYmAt+bSZqoAR5jANI6wQPEonB76JxNRO9bXZYzE92ZVOIx8PLP1Krs5fpMzDo9nEQ==}
|
||||
'@tiptap/extension-code-block-lowlight@3.12.0':
|
||||
resolution: {integrity: sha512-CV8yBfAJc2mC5JKWcVSLZpT3V+SzcpvVe3GNR2M/ZccO8PN2+MVrAEh3idgGKwsVjzOy1f/NTHiuag4T4/kf7g==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/extension-code-block': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/extension-code-block': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
highlight.js: ^11
|
||||
lowlight: ^2 || ^3
|
||||
|
||||
'@tiptap/extension-code-block@3.10.5':
|
||||
resolution: {integrity: sha512-6YEyASCT7UhzkWDfJ3Snajgy2XzYV7lPZxx9En2G9F/dqorGw1Kr45Gv3T6r46mJHXayGyb6OAN9AamVlOyk/Q==}
|
||||
'@tiptap/extension-code-block@3.13.0':
|
||||
resolution: {integrity: sha512-kIwfQ4iqootsWg9e74iYJK54/YMIj6ahUxEltjZRML5z/h4gTDcQt2eTpnEC8yjDjHeUVOR94zH9auCySyk9CQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/pm': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
'@tiptap/pm': ^3.13.0
|
||||
|
||||
'@tiptap/extension-code@3.10.5':
|
||||
resolution: {integrity: sha512-zt7w+AQ5El5rERY8QsiDlpCmaw951hLORUeI6p7HjgnA6KQoBJXxz750W8bfqEYnLFJ9uOXQka/Ds37/IyijGA==}
|
||||
'@tiptap/extension-code@3.13.0':
|
||||
resolution: {integrity: sha512-sF5raBni6iSVpXWvwJCAcOXw5/kZ+djDHx1YSGWhopm4+fsj0xW7GvVO+VTwiFjZGKSw+K5NeAxzcQTJZd3Vhw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-document@3.10.5':
|
||||
resolution: {integrity: sha512-5Q/BSc9BubVSQFqPvn6fJ/0KFzt6FgyEIeXAEGKhvEwvFJlHRKS+afypi0DWLVFBQ7lona9vJmhEX18XMIHMrw==}
|
||||
'@tiptap/extension-document@3.13.0':
|
||||
resolution: {integrity: sha512-RjU7hTJwjKXIdY57o/Pc+Yr8swLkrwT7PBQ/m+LCX5oO/V2wYoWCjoBYnK5KSHrWlNy/aLzC33BvLeqZZ9nzlQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-dropcursor@3.10.5':
|
||||
resolution: {integrity: sha512-39VkdbWwD2yDVYDeeQKfGINouhViK4n465CDR5etFfBNG3lj28dHDvFmZn81SfwcYlpUOVS7GdczNVLHVjqrfA==}
|
||||
'@tiptap/extension-dropcursor@3.13.0':
|
||||
resolution: {integrity: sha512-m7GPT3c/83ni+bbU8c+3dpNa8ug+aQ4phNB1Q52VQG3oTonDJnZS7WCtn3lB/Hi1LqoqMtEHwhepU2eD+JeXqQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/extensions': ^3.10.5
|
||||
'@tiptap/extensions': ^3.13.0
|
||||
|
||||
'@tiptap/extension-floating-menu@3.10.5':
|
||||
resolution: {integrity: sha512-N9qxP37s+gpOCBBrwoVaK1e61wuYY/KnEkhhodmYxMS/zuRHQ79ics7i1B18CJFfcT6+USHB6HzNxLLrlmpt4w==}
|
||||
'@tiptap/extension-floating-menu@3.13.0':
|
||||
resolution: {integrity: sha512-OsezV2cMofZM4c13gvgi93IEYBUzZgnu8BXTYZQiQYekz4bX4uulBmLa1KOA9EN71FzS+SoLkXHU0YzlbLjlxA==}
|
||||
peerDependencies:
|
||||
'@floating-ui/dom': ^1.0.0
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/pm': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
'@tiptap/pm': ^3.13.0
|
||||
|
||||
'@tiptap/extension-gapcursor@3.10.5':
|
||||
resolution: {integrity: sha512-/C13mvMGmQ3/8T9jg5KiT1/kMM9rFOXzsI2x0KO6IImTMBke6v259qEJyUCfG+Q90ttf95Muymp4I5FbFqJPww==}
|
||||
'@tiptap/extension-gapcursor@3.13.0':
|
||||
resolution: {integrity: sha512-KVxjQKkd964nin+1IdM2Dvej/Jy4JTMcMgq5seusUhJ9T9P8F9s2D5Iefwgkps3OCzub/aF+eAsZe+1P5KSIgA==}
|
||||
peerDependencies:
|
||||
'@tiptap/extensions': ^3.10.5
|
||||
'@tiptap/extensions': ^3.13.0
|
||||
|
||||
'@tiptap/extension-hard-break@3.8.0':
|
||||
resolution: {integrity: sha512-DXhLmYoGtYOm+8u3DDT5n1ikATQU3ur2ZGeAD9278C4y7ox6ERX6QD3QJRH6DfxpylwlO6X/QRPfVLCq/G6o8w==}
|
||||
'@tiptap/extension-hard-break@3.12.0':
|
||||
resolution: {integrity: sha512-vSkdduLS8XKFl6rLQphxtIz8Qr4xlIKwVTvE39jsTLxuMAlxWWdJgSQtMSL1udLNOVZjHN7nNf8F3qmzOp7QBQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
|
||||
'@tiptap/extension-heading@3.10.5':
|
||||
resolution: {integrity: sha512-sJBdtoCUcB9xmiAhg+OztrfQi1FpB9DUQO2IpbedYPixextK3cX8ntQ4NJelT7kBsdOrW3jmWccbjzvK0wZ7Eg==}
|
||||
'@tiptap/extension-heading@3.13.0':
|
||||
resolution: {integrity: sha512-8VKWX8waYPtUWN97J89em9fOtxNteh6pvUEd0htcOAtoxjt2uZjbW5N4lKyWhNKifZBrVhH2Cc2NUPuftCVgxw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-horizontal-rule@3.10.5':
|
||||
resolution: {integrity: sha512-okzBJVm68QMb9mwYM74az5bzHuXV6NSuoSb32dRwt3zx8zVdNUK0z585SxlQGDJ3ksB+1UR5tGlcst6sT05esw==}
|
||||
'@tiptap/extension-horizontal-rule@3.13.0':
|
||||
resolution: {integrity: sha512-ZUFyORtjj22ib8ykbxRhWFQOTZjNKqOsMQjaAGof30cuD2DN5J5pMz7Haj2fFRtLpugWYH+f0Mi+WumQXC3hCw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/pm': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
'@tiptap/pm': ^3.13.0
|
||||
|
||||
'@tiptap/extension-image@3.8.0':
|
||||
resolution: {integrity: sha512-1hj+OuvaesMMiaIKSjwZAbwbYdkXwkNf9ztiWQlD/aBrGi3WZsFBtfoVtz3RaRWX5JTyGPzn1CTDj9j4AP/LSw==}
|
||||
'@tiptap/extension-image@3.12.0':
|
||||
resolution: {integrity: sha512-E+nQmMaHdR5SFDuIZUEdfaaNmRuO47V2KQIIOUT6BIxXkArixaKIIz/BKtzYq4pKySkHWL1niYe5lfZWVmEXaw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
|
||||
'@tiptap/extension-italic@3.10.5':
|
||||
resolution: {integrity: sha512-f4RI0KGmtkZgVQlthrSm0dEIwx6Vw1ppbQevJecaaXLQTBoS9jAhqRrZbWkqWnof2fTyO2KK23wAMHAjXOKvmg==}
|
||||
'@tiptap/extension-italic@3.13.0':
|
||||
resolution: {integrity: sha512-XbVTgmzk1kgUMTirA6AGdLTcKHUvEJoh3R4qMdPtwwygEOe7sBuvKuLtF6AwUtpnOM+Y3tfWUTNEDWv9AcEdww==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-link@3.8.0':
|
||||
resolution: {integrity: sha512-S9SQbVCnTk+CAWFoliri0jLMBrhLUg+9sHR6jc+fCmKih3OpHsugksvsym5XU0pl9R6a7JuSmwveAs2A1MCyXw==}
|
||||
'@tiptap/extension-link@3.12.0':
|
||||
resolution: {integrity: sha512-C363e6JgIX/McpYWAgJxbUHZecPYs6mcZzrg6lqjgjUDPAiHXEY3WR/lHCC3XuZ4ZAvffRsKXcjX6ewdIkf4Uw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/extension-list-item@3.10.5':
|
||||
resolution: {integrity: sha512-BklqZIig3c/PiQoivmqXd25lqyC8VbRLMMDkAeJlOljG7oAielYIbFV76lnaoiGsEt4sK7z75qpZ/E6sbXDQMw==}
|
||||
'@tiptap/extension-list-item@3.13.0':
|
||||
resolution: {integrity: sha512-63NbcS/XeQP2jcdDEnEAE3rjJICDj8y1SN1h/MsJmSt1LusnEo8WQ2ub86QELO6XnD3M04V03cY6Knf6I5mTkw==}
|
||||
peerDependencies:
|
||||
'@tiptap/extension-list': ^3.10.5
|
||||
'@tiptap/extension-list': ^3.13.0
|
||||
|
||||
'@tiptap/extension-list-keymap@3.10.5':
|
||||
resolution: {integrity: sha512-FdGwnULYnuH+F+2u9OElBTky2kRA6S9P9w2Pi4i0FHuB9rMb10R5rIjwunjrkYvAQfnsTEdwJo8YWaPvz+TJIA==}
|
||||
'@tiptap/extension-list-keymap@3.13.0':
|
||||
resolution: {integrity: sha512-P+HtIa1iwosb1feFc8B/9MN5EAwzS+/dZ0UH0CTF2E4wnp5Z9OMxKl1IYjfiCwHzZrU5Let+S/maOvJR/EmV0g==}
|
||||
peerDependencies:
|
||||
'@tiptap/extension-list': ^3.10.5
|
||||
'@tiptap/extension-list': ^3.13.0
|
||||
|
||||
'@tiptap/extension-list@3.8.0':
|
||||
resolution: {integrity: sha512-L4BFuMqoC87rprHaHoyoXQDc3eOrpz0OuBMEMrtrmB/3pYlxVVcwcD//Q9hzDnv4v8Fn5lH/dfHGjRcBAWskpg==}
|
||||
'@tiptap/extension-list@3.12.0':
|
||||
resolution: {integrity: sha512-RCQb3MPsTsKZZ8Wf0maMnfcICcmYEbMfWJMUNwVUJCfEv1hGiA5J7jMEJWr7z6kH2ULDHmrkhg6BYCdLrJap/w==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/extension-mention@3.8.0':
|
||||
resolution: {integrity: sha512-1SlEzgkio3M4Z9FZH449UMLMZG1LNyFXf+PeGJd2T7m0QcdQSdvVgbLToozDuxCtGra0MBOHf0s7eqGfrqU0zA==}
|
||||
'@tiptap/extension-mention@3.12.0':
|
||||
resolution: {integrity: sha512-oLUKzXNJL0i8F2R+ZbvbOkn3BMsbMze9YbF9DDJJKxF/AJ6RTmAnfa0W5cQdazBTPb+09xyoytUmLoFNwLQM9Q==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/suggestion': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
'@tiptap/suggestion': ^3.12.0
|
||||
|
||||
'@tiptap/extension-ordered-list@3.10.5':
|
||||
resolution: {integrity: sha512-sqhA6IzcS/mlcABEUeYX0ZD+jtb5ga01ATz+b5xYAqOQlB7xHRQ5TdZTB/rKwJxaKxdevFXCenAwJA3d1B5O1g==}
|
||||
'@tiptap/extension-ordered-list@3.13.0':
|
||||
resolution: {integrity: sha512-QuDyLzuK/3vCvx9GeKhgvHWrGECBzmJyAx6gli2HY+Iil7XicbfltV4nvhIxgxzpx3LDHLKzJN9pBi+2MzX60g==}
|
||||
peerDependencies:
|
||||
'@tiptap/extension-list': ^3.10.5
|
||||
'@tiptap/extension-list': ^3.13.0
|
||||
|
||||
'@tiptap/extension-paragraph@3.10.5':
|
||||
resolution: {integrity: sha512-YCXFJiWC2w3Q62Q+nAf0SYWNysbQYpBA+fNyczaz+9vJYUBPcuu1WB0kdIGg/07RsUsg0U0txBnx+GuDuWXh2A==}
|
||||
'@tiptap/extension-paragraph@3.13.0':
|
||||
resolution: {integrity: sha512-9csQde1i0yeZI5oQQ9e1GYNtGL2JcC2d8Fwtw9FsGC8yz2W0h+Fmk+3bc2kobbtO5LGqupSc1fKM8fAg5rSRDg==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-strike@3.10.5':
|
||||
resolution: {integrity: sha512-tyJs3ArYGaYi/cy79NWKfkb7nIcWocFmou3JW229mZ+lFH1jNy9jGnIITN8BG8aizC6QkXBaeEy8+uBUJ+5Tkw==}
|
||||
'@tiptap/extension-strike@3.13.0':
|
||||
resolution: {integrity: sha512-VHhWNqTAMOfrC48m2FcPIZB0nhl6XHQviAV16SBc+EFznKNv9tQUsqQrnuQ2y6ZVfqq5UxvZ3hKF/JlN/Ff7xw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-table@3.8.0':
|
||||
resolution: {integrity: sha512-Rc21EXHrdXy7zbqLrMRdqYcfbIhMJA/c/KbkeNPuUnVU8e7fUvQ9cqAjKSsa0bZb0b9kwBAEBUQTEGB7xNHHrw==}
|
||||
'@tiptap/extension-table@3.12.0':
|
||||
resolution: {integrity: sha512-o6/4h+e9B9apf7Rvuyn/xY+iKRN6DAq3QUEKmi9MSo/XVZBQuwD7JLHWLm71w/t1ThVz+8mUvOL8FWopQJz9eQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/extension-text@3.10.5':
|
||||
resolution: {integrity: sha512-anLb/bJ9TfjVjOAdqQGQTDYsvI5Tgid1RgRokpK6vOxVhukBW7q8RnIsyWYj/uV6UefS6YtVOl5H9DAnpCVfvg==}
|
||||
'@tiptap/extension-text@3.13.0':
|
||||
resolution: {integrity: sha512-VcZIna93rixw7hRkHGCxDbL3kvJWi80vIT25a2pXg0WP1e7Pi3nBYvZIL4SQtkbBCji9EHrbZx3p8nNPzfazYw==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.10.5
|
||||
'@tiptap/core': ^3.13.0
|
||||
|
||||
'@tiptap/extension-typography@3.8.0':
|
||||
resolution: {integrity: sha512-T4Fojz4NqWjoD7/396/JtkKIkUGsq8CuC3T0cU9ozvc3SLoDJKuQc5HNNZ+7kHuHTjz7kGj631LQDyZ7PfVdtA==}
|
||||
'@tiptap/extension-typography@3.12.0':
|
||||
resolution: {integrity: sha512-AgyIpytjnZ7WHv7jS8OSS0cnu6WYZJvgiocL7jql8pMgOfukQkViM5foObA2BvRdxwVgJcQ2+Z/NxHI5YaIwkQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
|
||||
'@tiptap/extension-underline@3.8.0':
|
||||
resolution: {integrity: sha512-2PAkRUXNX/LcYDDf5ASShyDsmwYTCQjdqx8/9e4qflB69YUDEaKNN/PsgwJPSK21/fL2dfe49tf0Kud0rF5LMQ==}
|
||||
'@tiptap/extension-underline@3.12.0':
|
||||
resolution: {integrity: sha512-Woh/nk1/7c31D14dIaU5i9d4NMK06TBeEA+uBidhZp+JAXVGMeQGm0K2iJxBXNvNrc6aKGlZ57W1o3CPUWOlWQ==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
|
||||
'@tiptap/extensions@3.8.0':
|
||||
resolution: {integrity: sha512-Zz0Tl8JrSAvGUhn9XUqMGOeofzuAVaHFfO44kdKk7X6DeYHjpFY9FdDPUjmhWyoq9BsX0iG7sXmIguFgBvXdTQ==}
|
||||
'@tiptap/extensions@3.12.0':
|
||||
resolution: {integrity: sha512-N5ahZfeTBWROTNHFLmTW7sa6ZrZwvp/jJHyH7tcetXT+509vHVhX7yPoiLDt0fnXIDW7JrWI7jbRRmcKf79I2w==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/pm@3.8.0':
|
||||
resolution: {integrity: sha512-+HjQTpgz9OZMWpg1DRw5j7KXDc+Ea9FQjFKo8cu+HgwfQMmqmJQEMVFO+bwxZrAU7qfaB2Tc4RNHDI8a+8CBAQ==}
|
||||
'@tiptap/pm@3.12.0':
|
||||
resolution: {integrity: sha512-A2Hs6fdd9nFyIzdmJ9zoJvVuGsdwbQB+QA0TgBMTWwjyTRilpMeIhMX2qXNDzPFVy2aS4+QjvIpcHeArfbJ2bQ==}
|
||||
|
||||
'@tiptap/starter-kit@3.8.0':
|
||||
resolution: {integrity: sha512-v79kOzGdbn9ZPJts97+/+mF6AHr4P/ivUl4FviC16hBMuP8hub2cOyECUYVn3mxoAKUpELZwppFRWB/+A90H+g==}
|
||||
'@tiptap/starter-kit@3.12.0':
|
||||
resolution: {integrity: sha512-7MdEUl87JfIPM48kIJwijL1X12RRMhGms1d7m0faYZvgn+CAKC5uWx4650E/aTqTItqWTmQZGoLyKDiXqR7Nxw==}
|
||||
|
||||
'@tiptap/suggestion@3.8.0':
|
||||
resolution: {integrity: sha512-vCrwBOD1LRu2XBWHJi4PWNFDx3yi7JLL7ZnxjIG0BZL3u4UPttUpNV5XyIiEuqwpEnC6uWpfJ+zwG6pZOa29Og==}
|
||||
'@tiptap/suggestion@3.12.0':
|
||||
resolution: {integrity: sha512-VJfl9IkwRNbjNKfTdVDnxZgdoE/dyrNkRk/LMogHK5PS3yZ2dXQBPoCVpWfjl7u8GOh2LOQb+9YxeOkNUSx4Ew==}
|
||||
peerDependencies:
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
|
||||
'@tiptap/vue-3@3.8.0':
|
||||
resolution: {integrity: sha512-oEk3xDBRngbRR5vKn/CYHfUO6f45drDAWGsm9hgW2q/qWvWz3cUbojdw1JULKrV90NVYzwd3nFAwN62+wpataA==}
|
||||
'@tiptap/vue-3@3.12.0':
|
||||
resolution: {integrity: sha512-LruLyWnra7JqZOLkEPvxvEnmRTcSkqXazB8/yFJeOZDD9mdA4wTN5ba6+LEWcWIYXA4v8GX1vKGLAX19324tIQ==}
|
||||
peerDependencies:
|
||||
'@floating-ui/dom': ^1.0.0
|
||||
'@tiptap/core': ^3.8.0
|
||||
'@tiptap/pm': ^3.8.0
|
||||
'@tiptap/core': ^3.12.0
|
||||
'@tiptap/pm': ^3.12.0
|
||||
vue: ^3.0.0
|
||||
|
||||
'@tootallnate/quickjs-emscripten@0.23.0':
|
||||
@@ -9158,146 +9158,146 @@ snapshots:
|
||||
magic-string: 0.25.9
|
||||
string.prototype.matchall: 4.0.11
|
||||
|
||||
'@tiptap/core@3.8.0(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/core@3.12.0(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/extension-blockquote@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-blockquote@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-bold@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-bold@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-bubble-menu@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-bubble-menu@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@floating-ui/dom': 1.7.4
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
optional: true
|
||||
|
||||
'@tiptap/extension-bullet-list@3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-bullet-list@3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extension-list': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-code-block-lowlight@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/extension-code-block@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(highlight.js@11.11.1)(lowlight@3.3.0)':
|
||||
'@tiptap/extension-code-block-lowlight@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/extension-code-block@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(highlight.js@11.11.1)(lowlight@3.3.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-code-block': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-code-block': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
highlight.js: 11.11.1
|
||||
lowlight: 3.3.0
|
||||
|
||||
'@tiptap/extension-code-block@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-code-block@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/extension-code@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-code@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-document@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-document@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-dropcursor@3.10.5(@tiptap/extensions@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-dropcursor@3.13.0(@tiptap/extensions@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extensions': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extensions': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-floating-menu@3.10.5(@floating-ui/dom@1.7.4)(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-floating-menu@3.13.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@floating-ui/dom': 1.7.4
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
optional: true
|
||||
|
||||
'@tiptap/extension-gapcursor@3.10.5(@tiptap/extensions@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-gapcursor@3.13.0(@tiptap/extensions@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extensions': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extensions': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-hard-break@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-hard-break@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-heading@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-heading@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-horizontal-rule@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-horizontal-rule@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/extension-image@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-image@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-italic@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-italic@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-link@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-link@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
linkifyjs: 4.3.2
|
||||
|
||||
'@tiptap/extension-list-item@3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-list-item@3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extension-list': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-list-keymap@3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-list-keymap@3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extension-list': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/extension-mention@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(@tiptap/suggestion@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-mention@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(@tiptap/suggestion@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/suggestion': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
'@tiptap/suggestion': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-ordered-list@3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-ordered-list@3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/extension-list': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-paragraph@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-paragraph@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-strike@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-strike@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-table@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extension-table@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/extension-text@3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-text@3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-typography@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-typography@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extension-underline@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))':
|
||||
'@tiptap/extension-underline@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tiptap/extensions@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/extensions@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/pm@3.8.0':
|
||||
'@tiptap/pm@3.12.0':
|
||||
dependencies:
|
||||
prosemirror-changeset: 2.3.0
|
||||
prosemirror-collab: 1.3.1
|
||||
@@ -9318,47 +9318,47 @@ snapshots:
|
||||
prosemirror-transform: 1.10.2
|
||||
prosemirror-view: 1.38.1
|
||||
|
||||
'@tiptap/starter-kit@3.8.0':
|
||||
'@tiptap/starter-kit@3.12.0':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-blockquote': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-bold': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-bullet-list': 3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-code': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-code-block': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-document': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-dropcursor': 3.10.5(@tiptap/extensions@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-gapcursor': 3.10.5(@tiptap/extensions@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-hard-break': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-heading': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-horizontal-rule': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-italic': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-link': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-list-item': 3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-list-keymap': 3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-ordered-list': 3.10.5(@tiptap/extension-list@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-paragraph': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-strike': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-text': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extension-underline': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))
|
||||
'@tiptap/extensions': 3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-blockquote': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-bold': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-bullet-list': 3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-code': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-code-block': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-document': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-dropcursor': 3.13.0(@tiptap/extensions@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-gapcursor': 3.13.0(@tiptap/extensions@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-hard-break': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-heading': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-horizontal-rule': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-italic': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-link': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-list': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-list-item': 3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-list-keymap': 3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-ordered-list': 3.13.0(@tiptap/extension-list@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-paragraph': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-strike': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-text': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extension-underline': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))
|
||||
'@tiptap/extensions': 3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/suggestion@3.8.0(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)':
|
||||
'@tiptap/suggestion@3.12.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)':
|
||||
dependencies:
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
|
||||
'@tiptap/vue-3@3.8.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)(vue@3.5.25(typescript@5.9.3))':
|
||||
'@tiptap/vue-3@3.12.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)(vue@3.5.25(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@floating-ui/dom': 1.7.4
|
||||
'@tiptap/core': 3.8.0(@tiptap/pm@3.8.0)
|
||||
'@tiptap/pm': 3.8.0
|
||||
'@tiptap/core': 3.12.0(@tiptap/pm@3.12.0)
|
||||
'@tiptap/pm': 3.12.0
|
||||
vue: 3.5.25(typescript@5.9.3)
|
||||
optionalDependencies:
|
||||
'@tiptap/extension-bubble-menu': 3.10.5(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-floating-menu': 3.10.5(@floating-ui/dom@1.7.4)(@tiptap/core@3.8.0(@tiptap/pm@3.8.0))(@tiptap/pm@3.8.0)
|
||||
'@tiptap/extension-bubble-menu': 3.13.0(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
'@tiptap/extension-floating-menu': 3.13.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.12.0(@tiptap/pm@3.12.0))(@tiptap/pm@3.12.0)
|
||||
|
||||
'@tootallnate/quickjs-emscripten@0.23.0': {}
|
||||
|
||||
|
||||
@@ -181,6 +181,9 @@
|
||||
"dark": "Dunkel"
|
||||
}
|
||||
},
|
||||
"backgroundBrightness": {
|
||||
"title": "Hintergrundhelligkeit"
|
||||
},
|
||||
"apiTokens": {
|
||||
"title": "API-Tokens",
|
||||
"general": "Mit API-Token kannst du die API von Vikunja ohne Login-Daten verwenden.",
|
||||
|
||||
@@ -181,6 +181,9 @@
|
||||
"dark": "Dunkel"
|
||||
}
|
||||
},
|
||||
"backgroundBrightness": {
|
||||
"title": "Hintergrundhelligkeit"
|
||||
},
|
||||
"apiTokens": {
|
||||
"title": "API-Tokens",
|
||||
"general": "Mit API-Token kannst du die API von Vikunja ohne Login-Daten verwenden.",
|
||||
|
||||
@@ -181,6 +181,9 @@
|
||||
"dark": "Тёмная"
|
||||
}
|
||||
},
|
||||
"backgroundBrightness": {
|
||||
"title": "Яркость фона"
|
||||
},
|
||||
"apiTokens": {
|
||||
"title": "Токены API",
|
||||
"general": "Токены API позволяют использовать Vikunja API без использования данных для входа пользователя.",
|
||||
|
||||
2
go.mod
2
go.mod
@@ -62,7 +62,7 @@ require (
|
||||
github.com/robfig/cron/v3 v3.0.1
|
||||
github.com/samedi/caldav-go v3.0.0+incompatible
|
||||
github.com/spf13/afero v1.15.0
|
||||
github.com/spf13/cobra v1.10.1
|
||||
github.com/spf13/cobra v1.10.2
|
||||
github.com/spf13/viper v1.21.0
|
||||
github.com/stretchr/testify v1.11.1
|
||||
github.com/swaggo/swag v1.16.6
|
||||
|
||||
12
go.sum
12
go.sum
@@ -57,14 +57,10 @@ github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XL
|
||||
github.com/chzyer/logex v1.2.0/go.mod h1:9+9sk7u7pGNWYMkh0hdiL++6OeibzJccyQU4p4MedaY=
|
||||
github.com/chzyer/readline v1.5.0/go.mod h1:x22KAscuvRqlLoK9CsoYsmxoXZMMFVyOl86cAH8qUic=
|
||||
github.com/chzyer/test v0.0.0-20210722231415-061457976a23/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
|
||||
github.com/clipperhouse/displaywidth v0.3.1 h1:k07iN9gD32177o1y4O1jQMzbLdCrsGJh+blirVYybsk=
|
||||
github.com/clipperhouse/displaywidth v0.3.1/go.mod h1:tgLJKKyaDOCadywag3agw4snxS5kYEuYR6Y9+qWDDYM=
|
||||
github.com/clipperhouse/displaywidth v0.6.0 h1:k32vueaksef9WIKCNcoqRNyKbyvkvkysNYnAWz2fN4s=
|
||||
github.com/clipperhouse/displaywidth v0.6.0/go.mod h1:R+kHuzaYWFkTm7xoMmK1lFydbci4X2CicfbGstSGg0o=
|
||||
github.com/clipperhouse/stringish v0.1.1 h1:+NSqMOr3GR6k1FdRhhnXrLfztGzuG+VuFDfatpWHKCs=
|
||||
github.com/clipperhouse/stringish v0.1.1/go.mod h1:v/WhFtE1q0ovMta2+m+UbpZ+2/HEXNWYXQgCt4hdOzA=
|
||||
github.com/clipperhouse/uax29/v2 v2.2.0 h1:ChwIKnQN3kcZteTXMgb1wztSgaU+ZemkgWdohwgs8tY=
|
||||
github.com/clipperhouse/uax29/v2 v2.2.0/go.mod h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJSwu5BF98AuoVM=
|
||||
github.com/clipperhouse/uax29/v2 v2.3.0 h1:SNdx9DVUqMoBuBoW3iLOj4FQv3dN5mDtuqwuhIGpJy4=
|
||||
github.com/clipperhouse/uax29/v2 v2.3.0/go.mod h1:Wn1g7MK6OoeDT0vL+Q0SQLDz/KpfsVRgg6W7ihQeh4g=
|
||||
github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ=
|
||||
@@ -364,12 +360,8 @@ github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6 h1:zrbMGy9YXpIeTnGj
|
||||
github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6/go.mod h1:rEKTHC9roVVicUIfZK7DYrdIoM0EOr8mK1Hj5s3JjH0=
|
||||
github.com/olekukonko/errors v1.1.0 h1:RNuGIh15QdDenh+hNvKrJkmxxjV4hcS50Db478Ou5sM=
|
||||
github.com/olekukonko/errors v1.1.0/go.mod h1:ppzxA5jBKcO1vIpCXQ9ZqgDh8iwODz6OXIGKU8r5m4Y=
|
||||
github.com/olekukonko/ll v0.1.2 h1:lkg/k/9mlsy0SxO5aC+WEpbdT5K83ddnNhAepz7TQc0=
|
||||
github.com/olekukonko/ll v0.1.2/go.mod h1:b52bVQRRPObe+yyBl0TxNfhesL0nedD4Cht0/zx55Ew=
|
||||
github.com/olekukonko/ll v0.1.3 h1:sV2jrhQGq5B3W0nENUISCR6azIPf7UBUpVq0x/y70Fg=
|
||||
github.com/olekukonko/ll v0.1.3/go.mod h1:b52bVQRRPObe+yyBl0TxNfhesL0nedD4Cht0/zx55Ew=
|
||||
github.com/olekukonko/tablewriter v1.1.1 h1:b3reP6GCfrHwmKkYwNRFh2rxidGHcT6cgxj/sHiDDx0=
|
||||
github.com/olekukonko/tablewriter v1.1.1/go.mod h1:De/bIcTF+gpBDB3Alv3fEsZA+9unTsSzAg/ZGADCtn4=
|
||||
github.com/olekukonko/tablewriter v1.1.2 h1:L2kI1Y5tZBct/O/TyZK1zIE9GlBj/TVs+AY5tZDCDSc=
|
||||
github.com/olekukonko/tablewriter v1.1.2/go.mod h1:z7SYPugVqGVavWoA2sGsFIoOVNmEHxUAAMrhXONtfkg=
|
||||
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
@@ -404,8 +396,6 @@ github.com/prometheus/common v0.66.1 h1:h5E0h5/Y8niHc5DlaLlWLArTQI7tMrsfQjHV+d9Z
|
||||
github.com/prometheus/common v0.66.1/go.mod h1:gcaUsgf3KfRSwHY4dIMXLPV0K/Wg1oZ8+SbZk/HH/dA=
|
||||
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
|
||||
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
|
||||
github.com/redis/go-redis/v9 v9.17.1 h1:7tl732FjYPRT9H9aNfyTwKg9iTETjWjGKEJ2t/5iWTs=
|
||||
github.com/redis/go-redis/v9 v9.17.1/go.mod h1:u410H11HMLoB+TP67dz8rL9s6QW2j76l0//kSOd3370=
|
||||
github.com/redis/go-redis/v9 v9.17.2 h1:P2EGsA4qVIM3Pp+aPocCJ7DguDHhqrXNhVcEp4ViluI=
|
||||
github.com/redis/go-redis/v9 v9.17.2/go.mod h1:u410H11HMLoB+TP67dz8rL9s6QW2j76l0//kSOd3370=
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
|
||||
@@ -442,6 +432,8 @@ github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY=
|
||||
github.com/spf13/cast v1.10.0/go.mod h1:jNfB8QC9IA6ZuY2ZjDp0KtFO2LZZlg4S/7bzP6qqeHo=
|
||||
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
|
||||
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
|
||||
github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU=
|
||||
github.com/spf13/cobra v1.10.2/go.mod h1:7C1pvHqHw5A4vrJfjNwvOdzYu0Gml16OCs2GRiTUUS4=
|
||||
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
|
||||
github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
|
||||
@@ -265,6 +265,7 @@ func getHexColorFromCaldavColor(caldavColor string) string {
|
||||
return hexColor
|
||||
}
|
||||
|
||||
//nolint:gocyclo
|
||||
func ParseTaskFromVTODO(content string) (vTask *models.Task, err error) {
|
||||
parsed, err := ics.ParseCalendar(strings.NewReader(content))
|
||||
if err != nil {
|
||||
@@ -301,11 +302,23 @@ func ParseTaskFromVTODO(content string) (vTask *models.Task, err error) {
|
||||
}
|
||||
}
|
||||
|
||||
// Get UID and SUMMARY (log warning if missing, but don't fail for backwards compatibility)
|
||||
uid, hasUID := task["UID"]
|
||||
if !hasUID {
|
||||
log.Warningf("[CALDAV] VTODO missing UID field")
|
||||
}
|
||||
|
||||
summary, hasSummary := task["SUMMARY"]
|
||||
if !hasSummary {
|
||||
log.Warningf("[CALDAV] VTODO missing SUMMARY field")
|
||||
}
|
||||
|
||||
// Parse the priority
|
||||
var priority int64
|
||||
if _, ok := task["PRIORITY"]; ok {
|
||||
priorityParsed, err := strconv.ParseInt(task["PRIORITY"].Value, 10, 64)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to parse PRIORITY: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -313,10 +326,16 @@ func ParseTaskFromVTODO(content string) (vTask *models.Task, err error) {
|
||||
}
|
||||
|
||||
// Parse the enddate
|
||||
duration, _ := time.ParseDuration(task["DURATION"].Value)
|
||||
var duration time.Duration
|
||||
if durationProp, ok := task["DURATION"]; ok {
|
||||
duration, _ = time.ParseDuration(durationProp.Value)
|
||||
}
|
||||
|
||||
description := strings.ReplaceAll(task["DESCRIPTION"].Value, "\\,", ",")
|
||||
description = strings.ReplaceAll(description, "\\n", "\n")
|
||||
description := ""
|
||||
if descProp, ok := task["DESCRIPTION"]; ok {
|
||||
description = strings.ReplaceAll(descProp.Value, "\\,", ",")
|
||||
description = strings.ReplaceAll(description, "\\n", "\n")
|
||||
}
|
||||
|
||||
var labels []*models.Label
|
||||
if val, ok := task["CATEGORIES"]; ok {
|
||||
@@ -329,9 +348,18 @@ func ParseTaskFromVTODO(content string) (vTask *models.Task, err error) {
|
||||
}
|
||||
}
|
||||
|
||||
// Safely extract values
|
||||
var uidValue, titleValue string
|
||||
if hasUID {
|
||||
uidValue = uid.Value
|
||||
}
|
||||
if hasSummary {
|
||||
titleValue = summary.Value
|
||||
}
|
||||
|
||||
vTask = &models.Task{
|
||||
UID: task["UID"].Value,
|
||||
Title: task["SUMMARY"].Value,
|
||||
UID: uidValue,
|
||||
Title: titleValue,
|
||||
Description: description,
|
||||
Priority: priority,
|
||||
Labels: labels,
|
||||
@@ -371,7 +399,7 @@ func ParseTaskFromVTODO(content string) (vTask *models.Task, err error) {
|
||||
})
|
||||
}
|
||||
|
||||
if task["STATUS"].Value == "COMPLETED" {
|
||||
if status, ok := task["STATUS"]; ok && status.Value == "COMPLETED" {
|
||||
vTask.Done = true
|
||||
}
|
||||
|
||||
|
||||
@@ -17,14 +17,26 @@
|
||||
package caldav
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"code.vikunja.io/api/pkg/config"
|
||||
"code.vikunja.io/api/pkg/log"
|
||||
"code.vikunja.io/api/pkg/models"
|
||||
"gopkg.in/d4l3k/messagediff.v1"
|
||||
)
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
// Initialize logger for tests
|
||||
log.InitLogger()
|
||||
|
||||
// Run tests
|
||||
code := m.Run()
|
||||
|
||||
os.Exit(code)
|
||||
}
|
||||
|
||||
func TestParseTaskFromVTODO(t *testing.T) {
|
||||
type args struct {
|
||||
content string
|
||||
|
||||
@@ -79,7 +79,9 @@
|
||||
"subject_to_assignee": "「%[1]」(%[2]s) の担当者に割り当てられました",
|
||||
"message_to_assignee": "%[1]s があなたを「%[2]」の担当者に割り当てました。",
|
||||
"subject_to_others": "「%[1]」(%[2]s) の担当者に %[3]s が割り当てられました",
|
||||
"message_to_others": "%[1]s がこのタスクの担当者を %[2]s に割り当てました。"
|
||||
"message_to_others": "%[1]s がこのタスクの担当者を %[2]s に割り当てました。",
|
||||
"subject_to_others_self": "「%[1]」(%[2]s) は %[3]s が自身に割り当てました",
|
||||
"message_to_others_self": "%[1]s がこのタスクを自身に割り当てました。"
|
||||
},
|
||||
"deleted": {
|
||||
"subject": "「%[1]」(%[2]s) が削除されました",
|
||||
|
||||
@@ -325,7 +325,7 @@ func duplicateProjectBackground(s *xorm.Session, pd *ProjectDuplicate, doer web.
|
||||
|
||||
log.Debugf("Duplicated project background from project %d into %d", pd.ProjectID, pd.Project.ID)
|
||||
|
||||
return
|
||||
return nil
|
||||
}
|
||||
|
||||
func duplicateTasks(s *xorm.Session, doer web.Auth, ld *ProjectDuplicate) (newTaskIDs map[int64]int64, err error) {
|
||||
|
||||
@@ -28,18 +28,30 @@ import (
|
||||
)
|
||||
|
||||
func TestProjectDuplicate(t *testing.T) {
|
||||
t.Run("duplicate project", func(t *testing.T) {
|
||||
testProjectDuplicate(t, 1, 1)
|
||||
})
|
||||
|
||||
t.Run("duplicate project with uploaded background", func(t *testing.T) {
|
||||
// Project 35 has a background_file_id of 1, which is NOT an Unsplash photo
|
||||
// This tests the fix for issue #1745 where duplicating a project with an uploaded
|
||||
// (non-Unsplash) background would fail with an internal server error
|
||||
testProjectDuplicate(t, 35, 6)
|
||||
})
|
||||
}
|
||||
|
||||
func testProjectDuplicate(t *testing.T, projectID int64, userID int64) {
|
||||
files.InitTestFileFixtures(t)
|
||||
db.LoadAndAssertFixtures(t)
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
u := &user.User{
|
||||
ID: 1,
|
||||
ID: userID,
|
||||
}
|
||||
|
||||
l := &ProjectDuplicate{
|
||||
ProjectID: 1,
|
||||
ProjectID: projectID,
|
||||
}
|
||||
can, err := l.CanCreate(s, u)
|
||||
require.NoError(t, err)
|
||||
@@ -118,6 +130,7 @@ func TestProjectDuplicate(t *testing.T) {
|
||||
}
|
||||
|
||||
// Check that the kanban view in the duplicated project has a different default bucket than the original
|
||||
// (only if the original kanban view has a default bucket configured)
|
||||
var originalKanbanView *ProjectView
|
||||
var duplicatedKanbanView *ProjectView
|
||||
|
||||
@@ -135,10 +148,7 @@ func TestProjectDuplicate(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
require.NotNil(t, originalKanbanView, "Original project does not have a kanban view")
|
||||
require.NotNil(t, duplicatedKanbanView, "Duplicated project does not have a kanban view")
|
||||
|
||||
if originalKanbanView != nil && duplicatedKanbanView != nil {
|
||||
if originalKanbanView != nil && duplicatedKanbanView != nil && originalKanbanView.DefaultBucketID != 0 {
|
||||
assert.NotEqual(t, originalKanbanView.DefaultBucketID, duplicatedKanbanView.DefaultBucketID)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -288,6 +288,8 @@ func (vcls *VikunjaCaldavProjectStorage) CreateResource(rpath, content string) (
|
||||
|
||||
vTask, err := caldav.ParseTaskFromVTODO(content)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to parse VTODO in CreateResource: %v", err)
|
||||
log.Debugf("[CALDAV] VTODO content that failed to parse: %s", content)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -296,15 +298,18 @@ func (vcls *VikunjaCaldavProjectStorage) CreateResource(rpath, content string) (
|
||||
// Check the permissions
|
||||
canCreate, err := vTask.CanCreate(s, vcls.user)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Permission check failed in CreateResource for user %s, project %d: %v", vcls.user.Username, vcls.project.ID, err)
|
||||
return nil, err
|
||||
}
|
||||
if !canCreate {
|
||||
log.Warningf("[CALDAV] User %s does not have permission to create task in project %d", vcls.user.Username, vcls.project.ID)
|
||||
return nil, errs.ForbiddenError
|
||||
}
|
||||
|
||||
// Create the task
|
||||
err = vTask.Create(s, vcls.user)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to create task in CreateResource: %v, task: %+v", err, vTask)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
@@ -312,6 +317,7 @@ func (vcls *VikunjaCaldavProjectStorage) CreateResource(rpath, content string) (
|
||||
vcls.task.ID = vTask.ID
|
||||
err = persistLabels(s, vcls.user, vcls.task, vTask.Labels)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to persist labels in CreateResource: %v, labels: %+v", err, vTask.Labels)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
@@ -319,11 +325,13 @@ func (vcls *VikunjaCaldavProjectStorage) CreateResource(rpath, content string) (
|
||||
vcls.task.ProjectID = vcls.project.ID
|
||||
err = persistRelations(s, vcls.user, vcls.task, vTask.RelatedTasks)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to persist relations in CreateResource: %v, relations: %+v", err, vTask.RelatedTasks)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if err := s.Commit(); err != nil {
|
||||
log.Errorf("[CALDAV] Failed to commit transaction in CreateResource: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -341,6 +349,8 @@ func (vcls *VikunjaCaldavProjectStorage) UpdateResource(rpath, content string) (
|
||||
|
||||
vTask, err := caldav.ParseTaskFromVTODO(content)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to parse VTODO in UpdateResource: %v", err)
|
||||
log.Debugf("[CALDAV] VTODO content that failed to parse: %s", content)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -357,10 +367,12 @@ func (vcls *VikunjaCaldavProjectStorage) UpdateResource(rpath, content string) (
|
||||
// Check the permissions
|
||||
canUpdate, err := vTask.CanUpdate(s, vcls.user)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Permission check failed in UpdateResource for user %s, task %d: %v", vcls.user.Username, vcls.task.ID, err)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
if !canUpdate {
|
||||
log.Warningf("[CALDAV] User %s does not have permission to update task %d", vcls.user.Username, vcls.task.ID)
|
||||
_ = s.Rollback()
|
||||
return nil, errs.ForbiddenError
|
||||
}
|
||||
@@ -368,23 +380,27 @@ func (vcls *VikunjaCaldavProjectStorage) UpdateResource(rpath, content string) (
|
||||
// Update the task
|
||||
err = vTask.Update(s, vcls.user)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to update task in UpdateResource: %v, task: %+v", err, vTask)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
|
||||
err = persistLabels(s, vcls.user, vcls.task, vTask.Labels)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to persist labels in UpdateResource: %v, labels: %+v", err, vTask.Labels)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
|
||||
err = persistRelations(s, vcls.user, vcls.task, vTask.RelatedTasks)
|
||||
if err != nil {
|
||||
log.Errorf("[CALDAV] Failed to persist relations in UpdateResource: %v, relations: %+v", err, vTask.RelatedTasks)
|
||||
_ = s.Rollback()
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if err := s.Commit(); err != nil {
|
||||
log.Errorf("[CALDAV] Failed to commit transaction in UpdateResource: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user