From 0557d4b5bba1a111ed70a484f88cec1636e29371 Mon Sep 17 00:00:00 2001 From: kolaente Date: Tue, 9 Apr 2024 22:43:27 +0200 Subject: [PATCH 1/9] docs: clarify transitioning from unstable to release --- docs/content/doc/setup/versions.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/content/doc/setup/versions.md b/docs/content/doc/setup/versions.md index 838fdb435..61bfd452b 100644 --- a/docs/content/doc/setup/versions.md +++ b/docs/content/doc/setup/versions.md @@ -10,7 +10,7 @@ menu: # Vikunja Versions -The Vikunja api and frontend are available in two different release flavors. +Vikunja api is available in two different release flavors. {{< table_of_contents >}} @@ -30,6 +30,9 @@ There might be multiple new such builds a day. Versions contain the last stable version, the number of commits since then and the commit the currently running binary was built from. They look like this: `v0.18.1+269-5cc4927b9e` +Since a release is also cut from the main branch at some point, features from unstable will eventually become available in stable releases. +At the point in time of a new version release, the unstable build is the same exact thing. + The demo instance at [try.vikunja.io](https://try.vikunja.io) automatically updates and always runs the last unstable build. ## Switching between versions From e19ac57130a94a47bc2d9481ac2c58525494b56f Mon Sep 17 00:00:00 2001 From: renovate Date: Wed, 10 Apr 2024 15:06:07 +0000 Subject: [PATCH 2/9] chore(deps): update dev-dependencies --- frontend/package.json | 20 +- frontend/pnpm-lock.yaml | 405 +++++++++++++++++++++------------------- 2 files changed, 221 insertions(+), 204 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 3472c11df..6929e0dcc 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -132,8 +132,8 @@ "@cypress/vite-dev-server": "5.0.7", "@cypress/vue": "6.0.0", "@faker-js/faker": "8.4.1", - "@histoire/plugin-screenshot": "0.17.15", - "@histoire/plugin-vue": "0.17.15", + "@histoire/plugin-screenshot": "0.17.17", + "@histoire/plugin-vue": "0.17.17", "@rushstack/eslint-patch": "1.10.1", "@tsconfig/node18": "18.2.4", "@types/codemirror": "5.60.15", @@ -142,11 +142,11 @@ "@types/is-touch-device": "1.0.2", "@types/lodash.debounce": "4.0.9", "@types/marked": "5.0.2", - "@types/node": "20.12.5", + "@types/node": "20.12.7", "@types/postcss-preset-env": "7.7.0", "@types/sortablejs": "1.15.8", - "@typescript-eslint/eslint-plugin": "7.5.0", - "@typescript-eslint/parser": "7.5.0", + "@typescript-eslint/eslint-plugin": "7.6.0", + "@typescript-eslint/parser": "7.6.0", "@vitejs/plugin-legacy": "5.3.2", "@vitejs/plugin-vue": "5.0.4", "@vue/eslint-config-typescript": "13.0.0", @@ -154,15 +154,15 @@ "@vue/tsconfig": "0.5.1", "autoprefixer": "10.4.19", "browserslist": "4.23.0", - "caniuse-lite": "1.0.30001607", + "caniuse-lite": "1.0.30001608", "css-has-pseudo": "6.0.3", "csstype": "3.1.3", "cypress": "13.7.2", "esbuild": "0.20.2", "eslint": "8.57.0", - "eslint-plugin-vue": "9.24.0", + "eslint-plugin-vue": "9.24.1", "happy-dom": "14.7.1", - "histoire": "0.17.15", + "histoire": "0.17.17", "postcss": "8.4.38", "postcss-easing-gradients": "3.0.1", "postcss-easings": "4.0.0", @@ -172,14 +172,14 @@ "rollup-plugin-visualizer": "5.12.0", "sass": "1.74.1", "start-server-and-test": "2.0.3", - "typescript": "5.4.4", + "typescript": "5.4.5", "vite": "5.2.8", "vite-plugin-inject-preload": "1.3.3", "vite-plugin-pwa": "0.19.8", "vite-plugin-sentry": "1.4.0", "vite-svg-loader": "5.1.0", "vitest": "1.4.0", - "vue-tsc": "2.0.11", + "vue-tsc": "2.0.12", "wait-on": "7.2.0", "workbox-cli": "7.0.0" }, diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index 48436f4b2..cf0bc09ae 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -201,7 +201,7 @@ dependencies: version: 2.9.0 pinia: specifier: 2.1.7 - version: 2.1.7(typescript@5.4.4)(vue@3.4.21) + version: 2.1.7(typescript@5.4.5)(vue@3.4.21) register-service-worker: specifier: 1.7.2 version: 1.7.2 @@ -219,7 +219,7 @@ dependencies: version: 1.5.3 vue: specifier: 3.4.21 - version: 3.4.21(typescript@5.4.4) + version: 3.4.21(typescript@5.4.5) vue-advanced-cropper: specifier: 2.8.8 version: 2.8.8(vue@3.4.21) @@ -256,11 +256,11 @@ devDependencies: specifier: 8.4.1 version: 8.4.1 '@histoire/plugin-screenshot': - specifier: 0.17.15 - version: 0.17.15(histoire@0.17.15) + specifier: 0.17.17 + version: 0.17.17(histoire@0.17.17) '@histoire/plugin-vue': - specifier: 0.17.15 - version: 0.17.15(histoire@0.17.15)(vite@5.2.8)(vue@3.4.21) + specifier: 0.17.17 + version: 0.17.17(histoire@0.17.17)(vite@5.2.8)(vue@3.4.21) '@rushstack/eslint-patch': specifier: 1.10.1 version: 1.10.1 @@ -283,8 +283,8 @@ devDependencies: specifier: 5.0.2 version: 5.0.2 '@types/node': - specifier: 20.12.5 - version: 20.12.5 + specifier: 20.12.7 + version: 20.12.7 '@types/postcss-preset-env': specifier: 7.7.0 version: 7.7.0 @@ -292,11 +292,11 @@ devDependencies: specifier: 1.15.8 version: 1.15.8 '@typescript-eslint/eslint-plugin': - specifier: 7.5.0 - version: 7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.4) + specifier: 7.6.0 + version: 7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5) '@typescript-eslint/parser': - specifier: 7.5.0 - version: 7.5.0(eslint@8.57.0)(typescript@5.4.4) + specifier: 7.6.0 + version: 7.6.0(eslint@8.57.0)(typescript@5.4.5) '@vitejs/plugin-legacy': specifier: 5.3.2 version: 5.3.2(terser@5.24.0)(vite@5.2.8) @@ -305,7 +305,7 @@ devDependencies: version: 5.0.4(vite@5.2.8)(vue@3.4.21) '@vue/eslint-config-typescript': specifier: 13.0.0 - version: 13.0.0(eslint-plugin-vue@9.24.0)(eslint@8.57.0)(typescript@5.4.4) + version: 13.0.0(eslint-plugin-vue@9.24.1)(eslint@8.57.0)(typescript@5.4.5) '@vue/test-utils': specifier: 2.4.5 version: 2.4.5 @@ -319,8 +319,8 @@ devDependencies: specifier: 4.23.0 version: 4.23.0 caniuse-lite: - specifier: 1.0.30001607 - version: 1.0.30001607 + specifier: 1.0.30001608 + version: 1.0.30001608 css-has-pseudo: specifier: 6.0.3 version: 6.0.3(postcss@8.4.38) @@ -337,14 +337,14 @@ devDependencies: specifier: 8.57.0 version: 8.57.0 eslint-plugin-vue: - specifier: 9.24.0 - version: 9.24.0(eslint@8.57.0) + specifier: 9.24.1 + version: 9.24.1(eslint@8.57.0) happy-dom: specifier: 14.7.1 version: 14.7.1 histoire: - specifier: 0.17.15 - version: 0.17.15(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) + specifier: 0.17.17 + version: 0.17.17(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) postcss: specifier: 8.4.38 version: 8.4.38 @@ -373,11 +373,11 @@ devDependencies: specifier: 2.0.3 version: 2.0.3 typescript: - specifier: 5.4.4 - version: 5.4.4 + specifier: 5.4.5 + version: 5.4.5 vite: specifier: 5.2.8 - version: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + version: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) vite-plugin-inject-preload: specifier: 1.3.3 version: 1.3.3(vite@5.2.8) @@ -392,10 +392,10 @@ devDependencies: version: 5.1.0(vue@3.4.21) vitest: specifier: 1.4.0 - version: 1.4.0(@types/node@20.12.5)(happy-dom@14.7.1)(sass@1.74.1)(terser@5.24.0) + version: 1.4.0(@types/node@20.12.7)(happy-dom@14.7.1)(sass@1.74.1)(terser@5.24.0) vue-tsc: - specifier: 2.0.11 - version: 2.0.11(typescript@5.4.4) + specifier: 2.0.12 + version: 2.0.12(typescript@5.4.5) wait-on: specifier: 7.2.0 version: 7.2.0(debug@4.3.4) @@ -2166,7 +2166,7 @@ packages: optional: true dependencies: cypress: 13.7.2 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: true /@cypress/xvfb@1.2.4(supports-color@8.1.1): @@ -2395,6 +2395,11 @@ packages: eslint-visitor-keys: 3.4.3 dev: true + /@eslint-community/regexpp@4.10.0: + resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + /@eslint-community/regexpp@4.6.2: resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -2407,7 +2412,7 @@ packages: ajv: 6.12.6 debug: 4.3.4(supports-color@8.1.1) espree: 9.6.1 - globals: 13.19.0 + globals: 13.24.0 ignore: 5.2.4 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -2474,7 +2479,7 @@ packages: vue: '>= 3.0.0 < 4' dependencies: '@fortawesome/fontawesome-svg-core': 6.5.2 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /@github/hotkey@3.1.0(patch_hash=c67tdk7qpd5grxd2zj6lsxfbou): @@ -2492,12 +2497,12 @@ packages: '@hapi/hoek': 9.2.1 dev: true - /@histoire/app@0.17.15(vite@5.2.8): - resolution: {integrity: sha512-sWRzZJ130RvCMPKFZYf9ebaefHY82Ljj8sxwrndNx2Lah3K74aeir0rzYDYRFx3lEmPLTCrXrNEIwQR9V+J8ug==} + /@histoire/app@0.17.17(vite@5.2.8): + resolution: {integrity: sha512-2i1V38o08V+eaR0d3L0/EA6AYG14xyQBJbyYv0Hz3r4sH3Elj1FoJiwolbCfTDmkOnSgwWTc7+JoCqkLIbxfhA==} dependencies: - '@histoire/controls': 0.17.15(vite@5.2.8) - '@histoire/shared': 0.17.15(vite@5.2.8) - '@histoire/vendors': 0.17.15 + '@histoire/controls': 0.17.17(vite@5.2.8) + '@histoire/shared': 0.17.17(vite@5.2.8) + '@histoire/vendors': 0.17.17 '@types/flexsearch': 0.7.6 flexsearch: 0.7.21 shiki-es: 0.2.0 @@ -2505,8 +2510,8 @@ packages: - vite dev: true - /@histoire/controls@0.17.15(vite@5.2.8): - resolution: {integrity: sha512-ijM4PNsAYAZIKAMNzTqKuJnJBtWyHxFFJxNFDYgJl7ROlyKLwkUNnJSZ7BcorvraRqczOQPhfl1orCAJLMIXZg==} + /@histoire/controls@0.17.17(vite@5.2.8): + resolution: {integrity: sha512-W22HZ/X078IZmE09XEKj4Fq7LxQPP/w/aMYAzm94V2NIGhI0fkiSaBDvyTUl7NYrGT66Wq5+9Po1IWPMllk3cQ==} dependencies: '@codemirror/commands': 6.3.2 '@codemirror/lang-json': 6.0.1 @@ -2515,21 +2520,21 @@ packages: '@codemirror/state': 6.3.2 '@codemirror/theme-one-dark': 6.1.2 '@codemirror/view': 6.22.1 - '@histoire/shared': 0.17.15(vite@5.2.8) - '@histoire/vendors': 0.17.15 + '@histoire/shared': 0.17.17(vite@5.2.8) + '@histoire/vendors': 0.17.17 transitivePeerDependencies: - vite dev: true - /@histoire/plugin-screenshot@0.17.15(histoire@0.17.15): - resolution: {integrity: sha512-f1guWmErvSFkSy5wNB6BIqAItQwDTgiZlkLuMpGmJ0uPRjaKh0H4w5jd1kAW2OuM0FtjegreUgST/K2QZUVb2w==} + /@histoire/plugin-screenshot@0.17.17(histoire@0.17.17): + resolution: {integrity: sha512-R5JL22bz274VZwLNu83Q3+xVDkdXOUuqjUc3ARVHWAObq8bZfHm5vNtQzE9uEN7DQi5NXZtnDEts8OfOxSu6rA==} peerDependencies: - histoire: ^0.17.15 + histoire: ^0.17.17 dependencies: capture-website: 2.4.1 defu: 6.1.3 fs-extra: 10.1.0 - histoire: 0.17.15(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) + histoire: 0.17.17(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) pathe: 1.1.1 transitivePeerDependencies: - bufferutil @@ -2538,41 +2543,41 @@ packages: - utf-8-validate dev: true - /@histoire/plugin-vue@0.17.15(histoire@0.17.15)(vite@5.2.8)(vue@3.4.21): - resolution: {integrity: sha512-4EHuLWatxEcx4umst5OouAY214hkgVMf4nvSztasV77s17OuIDOBc85oZ07rXMtT2DfkEUsxixRt8p4eK57TTA==} + /@histoire/plugin-vue@0.17.17(histoire@0.17.17)(vite@5.2.8)(vue@3.4.21): + resolution: {integrity: sha512-O5h/Ww6IT2CygVVT4onN27IZt11Z2qE8XeHeXJCEese3dxnnVWRhjMpsaWAU5XqgfjKNAiALJk86b49/6NQaRg==} peerDependencies: - histoire: ^0.17.15 + histoire: ^0.17.17 vue: ^3.2.47 dependencies: - '@histoire/controls': 0.17.15(vite@5.2.8) - '@histoire/shared': 0.17.15(vite@5.2.8) - '@histoire/vendors': 0.17.15 + '@histoire/controls': 0.17.17(vite@5.2.8) + '@histoire/shared': 0.17.17(vite@5.2.8) + '@histoire/vendors': 0.17.17 change-case: 4.1.2 globby: 13.2.2 - histoire: 0.17.15(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) + histoire: 0.17.17(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8) launch-editor: 2.6.1 pathe: 1.1.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) transitivePeerDependencies: - vite dev: true - /@histoire/shared@0.17.15(vite@5.2.8): - resolution: {integrity: sha512-a1nt8jtyZZiPUPSCx8Sm88uy8BPAbmyQJcTUFkF13Pyv+PjLY0KbM9f4D8aTAERJxxmQAN51+hGZtgb/mt29qg==} + /@histoire/shared@0.17.17(vite@5.2.8): + resolution: {integrity: sha512-ueGtURysonT0MujCObPCR57+mgZluMEXCrbc2FBgKAD/DoAt38tNwSGsmLldk2O6nTr7lr6ClbVSgWrLwgY6Xw==} peerDependencies: vite: ^2.9.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 dependencies: - '@histoire/vendors': 0.17.15 + '@histoire/vendors': 0.17.17 '@types/fs-extra': 9.0.13 '@types/markdown-it': 12.2.3 chokidar: 3.5.3 pathe: 1.1.1 picocolors: 1.0.0 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) dev: true - /@histoire/vendors@0.17.15: - resolution: {integrity: sha512-fPC61xGm9SuHfdm1/KB5OrrAU+5ZO3M7aSUWowis4ZML//VOHkz/hLX6yV7ItrcSSwTWgVfzUeeiC2Y2uLeC2g==} + /@histoire/vendors@0.17.17: + resolution: {integrity: sha512-QZvmffdoJlLuYftPIkOU5Q2FPAdG2JjMuQ5jF7NmEl0n1XnmbMqtRkdYTZ4eF6CO1KLZ0Zyf6gBQvoT1uWNcjA==} dev: true /@humanwhocodes/config-array@0.11.14: @@ -2603,7 +2608,7 @@ packages: dependencies: '@vueuse/core': 9.13.0(vue@3.4.21) dayjs: 1.11.10 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) transitivePeerDependencies: - '@vue/composition-api' dev: false @@ -2756,7 +2761,7 @@ packages: peerDependencies: vue: ^3.0.0 dependencies: - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /@lezer/common@1.1.1: @@ -3151,7 +3156,7 @@ packages: '@sentry/core': 7.109.0 '@sentry/types': 7.109.0 '@sentry/utils': 7.109.0 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /@sideway/address@4.1.3: @@ -3530,7 +3535,7 @@ packages: '@tiptap/extension-bubble-menu': 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) '@tiptap/extension-floating-menu': 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) '@tiptap/pm': 2.2.6 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /@tootallnate/once@2.0.0: @@ -3594,7 +3599,7 @@ packages: /@types/fs-extra@9.0.13: resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==} dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 dev: true /@types/har-format@1.2.10: @@ -3611,14 +3616,14 @@ packages: resolution: {integrity: sha512-3g/auyKK+wQ7oTKv/ew1Nl3WFpU4qi21bM6664qAKWSZ2jfU2xaV29e8yv9t8ON0pnKwAG1Y0bqY/nFBgqbZSw==} dev: false - /@types/json-schema@7.0.12: - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} dev: true /@types/keyv@3.1.3: resolution: {integrity: sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==} dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 dev: true /@types/linkify-it@3.0.2: @@ -3659,8 +3664,8 @@ packages: resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} dev: true - /@types/node@20.12.5: - resolution: {integrity: sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==} + /@types/node@20.12.7: + resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==} dependencies: undici-types: 5.26.5 dev: true @@ -3687,17 +3692,17 @@ packages: /@types/resolve@1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 dev: true /@types/responselike@1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 dev: true - /@types/semver@7.5.0: - resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + /@types/semver@7.5.8: + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} dev: true /@types/sinonjs__fake-timers@8.1.1: @@ -3742,12 +3747,12 @@ packages: resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} requiresBuild: true dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 dev: true optional: true - /@typescript-eslint/eslint-plugin@7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.4): - resolution: {integrity: sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==} + /@typescript-eslint/eslint-plugin@7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-gKmTNwZnblUdnTIJu3e9kmeRRzV2j1a/LUO27KNNAnIC5zjy1aSvXSRp4rVNlmAoHlQ7HzX42NbKpcSr4jF80A==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: '@typescript-eslint/parser': ^7.0.0 @@ -3757,26 +3762,26 @@ packages: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.4) - '@typescript-eslint/scope-manager': 7.5.0 - '@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4) - '@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4) - '@typescript-eslint/visitor-keys': 7.5.0 + '@eslint-community/regexpp': 4.10.0 + '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/scope-manager': 7.6.0 + '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.6.0 debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 graphemer: 1.4.0 - ignore: 5.2.4 + ignore: 5.3.1 natural-compare: 1.4.0 semver: 7.6.0 - ts-api-utils: 1.0.1(typescript@5.4.4) - typescript: 5.4.4 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@7.5.0(eslint@8.57.0)(typescript@5.4.4): - resolution: {integrity: sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==} + /@typescript-eslint/parser@7.6.0(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-usPMPHcwX3ZoPWnBnhhorc14NJw9J4HpSXQX4urF2TPKG0au0XhJoZyX62fmvdHONUkmyUe74Hzm1//XA+BoYg==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -3785,27 +3790,27 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 7.5.0 - '@typescript-eslint/types': 7.5.0 - '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4) - '@typescript-eslint/visitor-keys': 7.5.0 + '@typescript-eslint/scope-manager': 7.6.0 + '@typescript-eslint/types': 7.6.0 + '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.6.0 debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 - typescript: 5.4.4 + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager@7.5.0: - resolution: {integrity: sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==} + /@typescript-eslint/scope-manager@7.6.0: + resolution: {integrity: sha512-ngttyfExA5PsHSx0rdFgnADMYQi+Zkeiv4/ZxGYUWd0nLs63Ha0ksmp8VMxAIC0wtCFxMos7Lt3PszJssG/E6w==} engines: {node: ^18.18.0 || >=20.0.0} dependencies: - '@typescript-eslint/types': 7.5.0 - '@typescript-eslint/visitor-keys': 7.5.0 + '@typescript-eslint/types': 7.6.0 + '@typescript-eslint/visitor-keys': 7.6.0 dev: true - /@typescript-eslint/type-utils@7.5.0(eslint@8.57.0)(typescript@5.4.4): - resolution: {integrity: sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==} + /@typescript-eslint/type-utils@7.6.0(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-NxAfqAPNLG6LTmy7uZgpK8KcuiS2NZD/HlThPXQRGwz6u7MDBWRVliEEl1Gj6U7++kVJTpehkhZzCJLMK66Scw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -3814,23 +3819,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4) - '@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4) + '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5) + '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5) debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 - ts-api-utils: 1.0.1(typescript@5.4.4) - typescript: 5.4.4 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types@7.5.0: - resolution: {integrity: sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==} + /@typescript-eslint/types@7.6.0: + resolution: {integrity: sha512-h02rYQn8J+MureCvHVVzhl69/GAfQGPQZmOMjG1KfCl7o3HtMSlPaPUAPu6lLctXI5ySRGIYk94clD/AUMCUgQ==} engines: {node: ^18.18.0 || >=20.0.0} dev: true - /@typescript-eslint/typescript-estree@7.5.0(typescript@5.4.4): - resolution: {integrity: sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==} + /@typescript-eslint/typescript-estree@7.6.0(typescript@5.4.5): + resolution: {integrity: sha512-+7Y/GP9VuYibecrCQWSKgl3GvUM5cILRttpWtnAu8GNL9j11e4tbuGZmZjJ8ejnKYyBRb2ddGQ3rEFCq3QjMJw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: typescript: '*' @@ -3838,31 +3843,31 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 7.5.0 - '@typescript-eslint/visitor-keys': 7.5.0 + '@typescript-eslint/types': 7.6.0 + '@typescript-eslint/visitor-keys': 7.6.0 debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 - minimatch: 9.0.3 + minimatch: 9.0.4 semver: 7.6.0 - ts-api-utils: 1.0.1(typescript@5.4.4) - typescript: 5.4.4 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@7.5.0(eslint@8.57.0)(typescript@5.4.4): - resolution: {integrity: sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==} + /@typescript-eslint/utils@7.6.0(eslint@8.57.0)(typescript@5.4.5): + resolution: {integrity: sha512-x54gaSsRRI+Nwz59TXpCsr6harB98qjXYzsRxGqvA5Ue3kQH+FxS7FYU81g/omn22ML2pZJkisy6Q+ElK8pBCA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 7.5.0 - '@typescript-eslint/types': 7.5.0 - '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 7.6.0 + '@typescript-eslint/types': 7.6.0 + '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5) eslint: 8.57.0 semver: 7.6.0 transitivePeerDependencies: @@ -3870,11 +3875,11 @@ packages: - typescript dev: true - /@typescript-eslint/visitor-keys@7.5.0: - resolution: {integrity: sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==} + /@typescript-eslint/visitor-keys@7.6.0: + resolution: {integrity: sha512-4eLB7t+LlNUmXzfOu1VAIAdkjbu5xNSerURS9X/S5TUKWFRpXRQZbmtPqgKmYx8bj3J0irtQXSiWAOY82v+cgw==} engines: {node: ^18.18.0 || >=20.0.0} dependencies: - '@typescript-eslint/types': 7.5.0 + '@typescript-eslint/types': 7.6.0 eslint-visitor-keys: 3.4.3 dev: true @@ -3898,7 +3903,7 @@ packages: regenerator-runtime: 0.14.1 systemjs: 6.14.3 terser: 5.24.0 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) transitivePeerDependencies: - supports-color dev: true @@ -3910,8 +3915,8 @@ packages: vite: ^5.0.0 vue: ^3.2.25 dependencies: - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) - vue: 3.4.21(typescript@5.4.4) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) + vue: 3.4.21(typescript@5.4.5) dev: true /@vitest/expect@1.4.0: @@ -3953,22 +3958,22 @@ packages: pretty-format: 29.7.0 dev: true - /@volar/language-core@2.2.0-alpha.6: - resolution: {integrity: sha512-GmT28LX2w4x82uuQqNN/P94VOCsZRHBbGcGe+5bFtA2hbIbH6f8tFdMfgXFtyhbft/pj6f3xl37xe+t+nomLIA==} + /@volar/language-core@2.2.0-alpha.7: + resolution: {integrity: sha512-igpp+nTkyl8faVzRJMpSCeA4XlBJ5UVSyc/WGyksmUmP10YbfufbcQCFlxEXv2uMBV+a3L4JVCj+Vju+08FOSA==} dependencies: - '@volar/source-map': 2.2.0-alpha.6 + '@volar/source-map': 2.2.0-alpha.7 dev: true - /@volar/source-map@2.2.0-alpha.6: - resolution: {integrity: sha512-EztD2zoUopETY+ZCUZAGUHKgj4gOkY/2WnaOS+RSTc56xm85miSA4qOBS8Lt1Ruu5vV52WIZKHW/R9PbjkZWFA==} + /@volar/source-map@2.2.0-alpha.7: + resolution: {integrity: sha512-iIZM2EovdEnr6mMwlsnt4ciix4xz7HSGHyUSviRaY5cii5PMXGHeUU9UDeb+xzLCx8kdk3L5J4z+ts50AhkYcg==} dependencies: muggle-string: 0.4.1 dev: true - /@volar/typescript@2.2.0-alpha.6: - resolution: {integrity: sha512-wTr0jO3wVXQ9FjBbWE2iX8GgDoiHp1Nttsb+tKk5IeUUb6f1uOjyeIXuS4KfeMBpCufthRO2st2O2uatAs/UXQ==} + /@volar/typescript@2.2.0-alpha.7: + resolution: {integrity: sha512-qy04/hx4UbW1BdPlzaxlH60D4plubcyqdbYM6Y5vZiascZxFowtd6vE39Td9FYzDxwcKgzb/Crvf/ABhdHnuBA==} dependencies: - '@volar/language-core': 2.2.0-alpha.6 + '@volar/language-core': 2.2.0-alpha.7 path-browserify: 1.0.1 dev: true @@ -4014,7 +4019,7 @@ packages: resolution: {integrity: sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA==} dev: false - /@vue/eslint-config-typescript@13.0.0(eslint-plugin-vue@9.24.0)(eslint@8.57.0)(typescript@5.4.4): + /@vue/eslint-config-typescript@13.0.0(eslint-plugin-vue@9.24.1)(eslint@8.57.0)(typescript@5.4.5): resolution: {integrity: sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: @@ -4025,31 +4030,31 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.4) - '@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.4) + '@typescript-eslint/eslint-plugin': 7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5) eslint: 8.57.0 - eslint-plugin-vue: 9.24.0(eslint@8.57.0) - typescript: 5.4.4 + eslint-plugin-vue: 9.24.1(eslint@8.57.0) + typescript: 5.4.5 vue-eslint-parser: 9.4.2(eslint@8.57.0) transitivePeerDependencies: - supports-color dev: true - /@vue/language-core@2.0.11(typescript@5.4.4): - resolution: {integrity: sha512-5ivg8Vem/yckzXI3L3n0mdKBPRcHSlsGt6/dpbEx42PcH3MIHAjSAJBYvENXeWJxv2ClQc8BS2mH1Ho2U7jZig==} + /@vue/language-core@2.0.12(typescript@5.4.5): + resolution: {integrity: sha512-aIStDPt69SHOpiIckGTIIjEz/sXc6ZfCMS5uWYL1AcbcRMhzFCLZscGAVte1+ad+RRFepSpKBjGttyPcgKJ7ww==} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@volar/language-core': 2.2.0-alpha.6 + '@volar/language-core': 2.2.0-alpha.7 '@vue/compiler-dom': 3.4.21 '@vue/shared': 3.4.21 computeds: 0.0.1 minimatch: 9.0.3 path-browserify: 1.0.1 - typescript: 5.4.4 + typescript: 5.4.5 vue-template-compiler: 2.7.14 dev: true @@ -4078,7 +4083,7 @@ packages: dependencies: '@vue/compiler-ssr': 3.4.21 '@vue/shared': 3.4.21 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) /@vue/shared@3.4.21: resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==} @@ -4341,7 +4346,7 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.23.0 - caniuse-lite: 1.0.30001607 + caniuse-lite: 1.0.30001608 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.0 @@ -4497,7 +4502,7 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001607 + caniuse-lite: 1.0.30001608 electron-to-chromium: 1.4.685 node-releases: 2.0.14 update-browserslist-db: 1.0.13(browserslist@4.23.0) @@ -4583,8 +4588,8 @@ packages: engines: {node: '>=6'} dev: true - /caniuse-lite@1.0.30001607: - resolution: {integrity: sha512-WcvhVRjXLKFB/kmOFVwELtMxyhq3iM/MvmXcyCe2PNf166c39mptscOc/45TTS96n2gpNV2z7+NakArTWZCQ3w==} + /caniuse-lite@1.0.30001608: + resolution: {integrity: sha512-cjUJTQkk9fQlJR2s4HMuPMvTiRggl0rAVMtthQuyOlDWuqHXqN8azLq+pi8B2TjwKJ32diHjUqRIKeFX4z1FoA==} dev: true /capital-case@1.0.4: @@ -5548,11 +5553,11 @@ packages: optionalDependencies: source-map: 0.6.1 - /eslint-plugin-vue@9.24.0(eslint@8.57.0): - resolution: {integrity: sha512-9SkJMvF8NGMT9aQCwFc5rj8Wo1XWSMSHk36i7ZwdI614BU7sIOR28ZjuFPKp8YGymZN12BSEbiSwa7qikp+PBw==} + /eslint-plugin-vue@9.24.1(eslint@8.57.0): + resolution: {integrity: sha512-wk3SuwmS1pZdcuJlokGYEi/buDOwD6KltvhIZyOnpJ/378dcQ4zchu9PAMbbLAaydCz1iYc5AozszcOOgZIIOg==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 + eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) eslint: 8.57.0 @@ -5931,7 +5936,7 @@ packages: optional: true dependencies: '@floating-ui/dom': 1.1.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) vue-resize: 2.0.0-alpha.1(vue@3.4.21) dev: false @@ -6291,17 +6296,17 @@ packages: engines: {node: '>=12.0.0'} dev: false - /histoire@0.17.15(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8): - resolution: {integrity: sha512-DiRMSIgj340z+zikqf0f3Pj0CTv2/xtdBMBIAO1EARat+QXxMwumbfK41Gi7f9IIBr+UVmomNcwFxVY2EM/vrw==} + /histoire@0.17.17(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0)(vite@5.2.8): + resolution: {integrity: sha512-DAwY4sgIoP7NGE5ldaws2d3RWz4OOQcwhS8elRMiA2euqzLvDU2IXm+ZjeDDFVtGkvmQNQyfZBDKLCLHfRkSUg==} hasBin: true peerDependencies: vite: ^2.9.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 dependencies: '@akryum/tinypool': 0.3.1 - '@histoire/app': 0.17.15(vite@5.2.8) - '@histoire/controls': 0.17.15(vite@5.2.8) - '@histoire/shared': 0.17.15(vite@5.2.8) - '@histoire/vendors': 0.17.15 + '@histoire/app': 0.17.17(vite@5.2.8) + '@histoire/controls': 0.17.17(vite@5.2.8) + '@histoire/shared': 0.17.17(vite@5.2.8) + '@histoire/vendors': 0.17.17 '@types/flexsearch': 0.7.6 '@types/markdown-it': 12.2.3 birpc: 0.1.1 @@ -6327,8 +6332,8 @@ packages: sade: 1.8.1 shiki-es: 0.2.0 sirv: 2.0.3 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) - vite-node: 0.34.6(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) + vite-node: 0.34.6(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) transitivePeerDependencies: - '@types/node' - bufferutil @@ -6430,6 +6435,11 @@ packages: engines: {node: '>= 4'} dev: true + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + dev: true + /immutable@4.0.0: resolution: {integrity: sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==} dev: true @@ -6774,7 +6784,7 @@ packages: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 merge-stream: 2.0.0 supports-color: 7.2.0 dev: true @@ -7346,6 +7356,13 @@ packages: brace-expansion: 2.0.1 dev: true + /minimatch@9.0.4: + resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + brace-expansion: 2.0.1 + dev: true + /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} engines: {node: '>= 6'} @@ -7826,7 +7843,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /pinia@2.1.7(typescript@5.4.4)(vue@3.4.21): + /pinia@2.1.7(typescript@5.4.5)(vue@3.4.21): resolution: {integrity: sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==} peerDependencies: '@vue/composition-api': ^1.4.0 @@ -7839,8 +7856,8 @@ packages: optional: true dependencies: '@vue/devtools-api': 6.5.0 - typescript: 5.4.4 - vue: 3.4.21(typescript@5.4.4) + typescript: 5.4.5 + vue: 3.4.21(typescript@5.4.5) vue-demi: 0.14.6(vue@3.4.21) dev: false @@ -9447,13 +9464,13 @@ packages: engines: {node: '>=8'} dev: true - /ts-api-utils@1.0.1(typescript@5.4.4): - resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} - engines: {node: '>=16.13.0'} + /ts-api-utils@1.3.0(typescript@5.4.5): + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.4.4 + typescript: 5.4.5 dev: true /tslib@1.14.1: @@ -9532,8 +9549,8 @@ packages: is-typedarray: 1.0.0 dev: true - /typescript@5.4.4: - resolution: {integrity: sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==} + /typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} engines: {node: '>=14.17'} hasBin: true @@ -9724,7 +9741,7 @@ packages: extsprintf: 1.3.0 dev: true - /vite-node@0.34.6(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0): + /vite-node@0.34.6(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0): resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==} engines: {node: '>=v14.18.0'} hasBin: true @@ -9734,7 +9751,7 @@ packages: mlly: 1.4.2 pathe: 1.1.1 picocolors: 1.0.0 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) transitivePeerDependencies: - '@types/node' - less @@ -9746,7 +9763,7 @@ packages: - terser dev: true - /vite-node@1.4.0(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0): + /vite-node@1.4.0(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0): resolution: {integrity: sha512-VZDAseqjrHgNd4Kh8icYHWzTKSCZMhia7GyHfhtzLW33fZlG9SwsB6CEhgyVOWkJfJ2pFLrp/Gj1FSfAiqH9Lw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -9755,7 +9772,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) pathe: 1.1.1 picocolors: 1.0.0 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) transitivePeerDependencies: - '@types/node' - less @@ -9774,7 +9791,7 @@ packages: vite: ^3.0.0 || ^4.0.0 dependencies: mime-types: 2.1.35 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) dev: true /vite-plugin-pwa@0.19.8(vite@5.2.8)(workbox-build@7.0.0)(workbox-window@7.0.0): @@ -9792,7 +9809,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) fast-glob: 3.3.2 pretty-bytes: 6.1.1 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) workbox-build: 7.0.0(acorn@8.11.2) workbox-window: 7.0.0 transitivePeerDependencies: @@ -9806,7 +9823,7 @@ packages: vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 dependencies: '@sentry/cli': 2.19.1 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) transitivePeerDependencies: - encoding - supports-color @@ -9818,10 +9835,10 @@ packages: vue: '>=3.2.13' dependencies: svgo: 3.0.2 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: true - /vite@5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0): + /vite@5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0): resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -9849,7 +9866,7 @@ packages: terser: optional: true dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 esbuild: 0.20.2 postcss: 8.4.38 rollup: 4.14.1 @@ -9859,7 +9876,7 @@ packages: fsevents: 2.3.3 dev: true - /vitest@1.4.0(@types/node@20.12.5)(happy-dom@14.7.1)(sass@1.74.1)(terser@5.24.0): + /vitest@1.4.0(@types/node@20.12.7)(happy-dom@14.7.1)(sass@1.74.1)(terser@5.24.0): resolution: {integrity: sha512-gujzn0g7fmwf83/WzrDTnncZt2UiXP41mHuFYFrdwaLRVQ6JYQEiME2IfEjU3vcFL3VKa75XhI3lFgn+hfVsQw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -9884,7 +9901,7 @@ packages: jsdom: optional: true dependencies: - '@types/node': 20.12.5 + '@types/node': 20.12.7 '@vitest/expect': 1.4.0 '@vitest/runner': 1.4.0 '@vitest/snapshot': 1.4.0 @@ -9903,8 +9920,8 @@ packages: strip-literal: 2.0.0 tinybench: 2.5.1 tinypool: 0.8.2 - vite: 5.2.8(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) - vite-node: 1.4.0(@types/node@20.12.5)(sass@1.74.1)(terser@5.24.0) + vite: 5.2.8(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) + vite-node: 1.4.0(@types/node@20.12.7)(sass@1.74.1)(terser@5.24.0) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -9925,7 +9942,7 @@ packages: classnames: 2.3.1 debounce: 1.2.1 easy-bem: 1.1.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-component-type-helpers@2.0.6: @@ -9944,7 +9961,7 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-demi@0.14.7(vue@3.4.21): @@ -9959,7 +9976,7 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-eslint-parser@9.4.2(eslint@8.57.0): @@ -9987,7 +10004,7 @@ packages: vue: ^3.2.0 dependencies: flatpickr: 4.6.13 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-i18n@9.11.0(vue@3.4.21): @@ -9999,7 +10016,7 @@ packages: '@intlify/core-base': 9.11.0 '@intlify/shared': 9.11.0 '@vue/devtools-api': 6.6.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-resize@2.0.0-alpha.1(vue@3.4.21): @@ -10007,7 +10024,7 @@ packages: peerDependencies: vue: ^3.0.0 dependencies: - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-router@4.3.0(vue@3.4.21): @@ -10016,7 +10033,7 @@ packages: vue: ^3.2.0 dependencies: '@vue/devtools-api': 6.6.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false /vue-template-compiler@2.7.14: @@ -10026,19 +10043,19 @@ packages: he: 1.2.0 dev: true - /vue-tsc@2.0.11(typescript@5.4.4): - resolution: {integrity: sha512-dl5MEU4VGZdQFGBnKfPpAfV3SQmBDWs9o4YhUPvDmwk+zmb/RprzFJK2sagR6EWazogZhXENvykd3wBXWS9kng==} + /vue-tsc@2.0.12(typescript@5.4.5): + resolution: {integrity: sha512-thlBBWlPYrNdba535oDdxz7PRUufZgRZRVP5Aql5wBVpGSWSeqou4EzFXeKVoZr59lp9hJROubDVzlhACmcEhg==} hasBin: true peerDependencies: typescript: '*' dependencies: - '@volar/typescript': 2.2.0-alpha.6 - '@vue/language-core': 2.0.11(typescript@5.4.4) + '@volar/typescript': 2.2.0-alpha.7 + '@vue/language-core': 2.0.12(typescript@5.4.5) semver: 7.6.0 - typescript: 5.4.4 + typescript: 5.4.5 dev: true - /vue@3.4.21(typescript@5.4.4): + /vue@3.4.21(typescript@5.4.5): resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==} peerDependencies: typescript: '*' @@ -10051,7 +10068,7 @@ packages: '@vue/runtime-dom': 3.4.21 '@vue/server-renderer': 3.4.21(vue@3.4.21) '@vue/shared': 3.4.21 - typescript: 5.4.4 + typescript: 5.4.5 /vuemoji-picker@0.2.1(vue@3.4.21): resolution: {integrity: sha512-wKRZBZclTdnQIT4jPzmkJ5Ci9ObzMFPjkuYb+/+/9h+mAZIUwdcPqYbEJCohbxJPoOvkuPVDeuOdTKR8hqqVLA==} @@ -10063,7 +10080,7 @@ packages: optional: true dependencies: emoji-picker-element: 1.21.1 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) vue-demi: 0.14.7(vue@3.4.21) dev: false @@ -10510,5 +10527,5 @@ packages: vue: ^3.0.1 dependencies: sortablejs: 1.14.0 - vue: 3.4.21(typescript@5.4.4) + vue: 3.4.21(typescript@5.4.5) dev: false From cb2c2eeae8c34a9abb1095ec1546f8e270c850e2 Mon Sep 17 00:00:00 2001 From: renovate Date: Wed, 10 Apr 2024 17:06:05 +0000 Subject: [PATCH 3/9] fix(deps): update dependency vue-i18n to v9.11.1 --- frontend/package.json | 2 +- frontend/pnpm-lock.yaml | 45 +++++++++++++++++++++++------------------ 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 6929e0dcc..8e9dbff93 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -121,7 +121,7 @@ "vue": "3.4.21", "vue-advanced-cropper": "2.8.8", "vue-flatpickr-component": "11.0.5", - "vue-i18n": "9.11.0", + "vue-i18n": "9.11.1", "vue-router": "4.3.0", "vuemoji-picker": "0.2.1", "workbox-precaching": "7.0.0", diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index cf0bc09ae..f5fec07c2 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -33,7 +33,7 @@ dependencies: version: 2.3.2(dayjs@1.11.10)(vue@3.4.21) '@intlify/unplugin-vue-i18n': specifier: 3.0.1 - version: 3.0.1(rollup@4.14.1)(vue-i18n@9.11.0) + version: 3.0.1(rollup@4.14.1)(vue-i18n@9.11.1) '@kyvg/vue3-notification': specifier: 3.2.1 version: 3.2.1(vue@3.4.21) @@ -227,8 +227,8 @@ dependencies: specifier: 11.0.5 version: 11.0.5(vue@3.4.21) vue-i18n: - specifier: 9.11.0 - version: 9.11.0(vue@3.4.21) + specifier: 9.11.1 + version: 9.11.1(vue@3.4.21) vue-router: specifier: 4.3.0 version: 4.3.0(vue@3.4.21) @@ -2613,7 +2613,7 @@ packages: - '@vue/composition-api' dev: false - /@intlify/bundle-utils@7.4.0(vue-i18n@9.11.0): + /@intlify/bundle-utils@7.4.0(vue-i18n@9.11.1): resolution: {integrity: sha512-AQfjBe2HUxzyN8ignIk3WhhSuVcSuirgzOzkd17nb337rCbI4Gv/t1R60UUyIqFoFdviLb/wLcDUzTD/xXjv9w==} engines: {node: '>= 14.16'} peerDependencies: @@ -2626,7 +2626,7 @@ packages: optional: true dependencies: '@intlify/message-compiler': 9.10.1 - '@intlify/shared': 9.10.1 + '@intlify/shared': 9.11.0 acorn: 8.11.2 escodegen: 2.0.0 estree-walker: 2.0.2 @@ -2634,16 +2634,16 @@ packages: magic-string: 0.30.7 mlly: 1.4.2 source-map-js: 1.2.0 - vue-i18n: 9.11.0(vue@3.4.21) + vue-i18n: 9.11.1(vue@3.4.21) yaml-eslint-parser: 1.2.2 dev: false - /@intlify/core-base@9.11.0: - resolution: {integrity: sha512-cveOqAstjLZIiyatcP/HrzrQ87cZI8ScPQna3yvoM8zjcjcIRK1MRvmxUNlPdg0rTNJMZw7rixPVM58O5aHVPA==} + /@intlify/core-base@9.11.1: + resolution: {integrity: sha512-qWXBBlEA+DC0CsHkfJiQK9ELm11c9I6lDpodY4FoOf99eMas1R6JR4woPhrfAcrtxFHp1UmXWdrQNKDegSW9IA==} engines: {node: '>= 16'} dependencies: - '@intlify/message-compiler': 9.11.0 - '@intlify/shared': 9.11.0 + '@intlify/message-compiler': 9.11.1 + '@intlify/shared': 9.11.1 dev: false /@intlify/message-compiler@9.10.1: @@ -2654,11 +2654,11 @@ packages: source-map-js: 1.2.0 dev: false - /@intlify/message-compiler@9.11.0: - resolution: {integrity: sha512-x31Gl7cscnoI4UUY1yaIy8e7vVMVW1VVlTXZz4SIHKqoSEUkfmgqK8NAx1e7RcoHEbICR7uyCbud0ZL1s4OGXQ==} + /@intlify/message-compiler@9.11.1: + resolution: {integrity: sha512-y/aWx7DkaTKK2qWUw0hVbJpon8+urWXngeqh15DuIXZh6n/V/oPQiO/Ho1hUKbwap6MVMuz0OcnAJvqh3p9YPg==} engines: {node: '>= 16'} dependencies: - '@intlify/shared': 9.11.0 + '@intlify/shared': 9.11.1 source-map-js: 1.2.0 dev: false @@ -2672,7 +2672,12 @@ packages: engines: {node: '>= 16'} dev: false - /@intlify/unplugin-vue-i18n@3.0.1(rollup@4.14.1)(vue-i18n@9.11.0): + /@intlify/shared@9.11.1: + resolution: {integrity: sha512-yuDG82vjgId2oasNRgZ0PKJrF65zlL33MNyITP5itbLcP4AYOR/NcIuD+/DiI+GHXdxASMKJU0ZiITLc6RC+qw==} + engines: {node: '>= 16'} + dev: false + + /@intlify/unplugin-vue-i18n@3.0.1(rollup@4.14.1)(vue-i18n@9.11.1): resolution: {integrity: sha512-q1zJhA/WpoLBzAAuKA5/AEp0e+bMOM10ll/HxT4g1VAw/9JhC4TTobP9KobKH90JMZ4U2daLFlYQfKNd29lpqw==} engines: {node: '>= 14.16'} peerDependencies: @@ -2687,7 +2692,7 @@ packages: vue-i18n-bridge: optional: true dependencies: - '@intlify/bundle-utils': 7.4.0(vue-i18n@9.11.0) + '@intlify/bundle-utils': 7.4.0(vue-i18n@9.11.1) '@intlify/shared': 9.10.1 '@rollup/pluginutils': 5.1.0(rollup@4.14.1) '@vue/compiler-sfc': 3.4.21 @@ -2699,7 +2704,7 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 unplugin: 1.1.0 - vue-i18n: 9.11.0(vue@3.4.21) + vue-i18n: 9.11.1(vue@3.4.21) transitivePeerDependencies: - rollup - supports-color @@ -10007,14 +10012,14 @@ packages: vue: 3.4.21(typescript@5.4.5) dev: false - /vue-i18n@9.11.0(vue@3.4.21): - resolution: {integrity: sha512-vU4gY6lu8Pdfs9BgKGiDAJmFDf88cceR47KcSB0VW4xJzUrXR/7qwqM7A8dQ2nedhoIDxoOm5Ro4pFd2KvJqbA==} + /vue-i18n@9.11.1(vue@3.4.21): + resolution: {integrity: sha512-S7Xi8DkLQG4xnnbxkxzipJK6CdfLdZkmApn95st89HFGp8LTmTH0Tv+Zw6puhOCZJCFrH73PHo3Ylwd2+Bmdxg==} engines: {node: '>= 16'} peerDependencies: vue: ^3.0.0 dependencies: - '@intlify/core-base': 9.11.0 - '@intlify/shared': 9.11.0 + '@intlify/core-base': 9.11.1 + '@intlify/shared': 9.11.1 '@vue/devtools-api': 6.6.1 vue: 3.4.21(typescript@5.4.5) dev: false From ed4be389ab6fc1691c9053cfc2d620ffe70ecc40 Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 10 Apr 2024 22:54:36 +0200 Subject: [PATCH 4/9] fix(navigation): scrolling when many projects are present Regression from ee3d20e1d265b5e348749448e7cffd52f26796d8 Resolves https://github.com/go-vikunja/vikunja/issues/249 --- frontend/src/components/home/navigation.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/src/components/home/navigation.vue b/frontend/src/components/home/navigation.vue index 45d04d690..10307d1d2 100644 --- a/frontend/src/components/home/navigation.vue +++ b/frontend/src/components/home/navigation.vue @@ -156,6 +156,7 @@ const savedFilterProjects = computed(() => projectStore.savedFilterProjects) left: 0; transform: translateX(-100%); width: $navbar-width; + overflow-y: auto; @media screen and (max-width: $tablet) { top: 0; From 58e0ec3d356ee60359c9b0e72b08fcbfdb42fac7 Mon Sep 17 00:00:00 2001 From: renovate Date: Wed, 10 Apr 2024 20:06:59 +0000 Subject: [PATCH 5/9] fix(deps): update tiptap to v2.3.0 --- frontend/package.json | 66 +++---- frontend/pnpm-lock.yaml | 378 ++++++++++++++++++++-------------------- 2 files changed, 222 insertions(+), 222 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 8e9dbff93..ba6b8c246 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -60,39 +60,39 @@ "@kyvg/vue3-notification": "3.2.1", "@sentry/tracing": "7.109.0", "@sentry/vue": "7.109.0", - "@tiptap/core": "2.2.6", - "@tiptap/extension-blockquote": "2.2.6", - "@tiptap/extension-bold": "2.2.6", - "@tiptap/extension-bullet-list": "2.2.6", - "@tiptap/extension-code": "2.2.6", - "@tiptap/extension-code-block-lowlight": "2.2.6", - "@tiptap/extension-document": "2.2.6", - "@tiptap/extension-dropcursor": "2.2.6", - "@tiptap/extension-gapcursor": "2.2.6", - "@tiptap/extension-hard-break": "2.2.6", - "@tiptap/extension-heading": "2.2.6", - "@tiptap/extension-history": "2.2.6", - "@tiptap/extension-horizontal-rule": "2.2.6", - "@tiptap/extension-image": "2.2.6", - "@tiptap/extension-italic": "2.2.6", - "@tiptap/extension-link": "2.2.6", - "@tiptap/extension-list-item": "2.2.6", - "@tiptap/extension-ordered-list": "2.2.6", - "@tiptap/extension-paragraph": "2.2.6", - "@tiptap/extension-placeholder": "2.2.6", - "@tiptap/extension-strike": "2.2.6", - "@tiptap/extension-table": "2.2.6", - "@tiptap/extension-table-cell": "2.2.6", - "@tiptap/extension-table-header": "2.2.6", - "@tiptap/extension-table-row": "2.2.6", - "@tiptap/extension-task-item": "2.2.6", - "@tiptap/extension-task-list": "2.2.6", - "@tiptap/extension-text": "2.2.6", - "@tiptap/extension-typography": "2.2.6", - "@tiptap/extension-underline": "2.2.6", - "@tiptap/pm": "2.2.6", - "@tiptap/suggestion": "2.2.6", - "@tiptap/vue-3": "2.2.6", + "@tiptap/core": "2.3.0", + "@tiptap/extension-blockquote": "2.3.0", + "@tiptap/extension-bold": "2.3.0", + "@tiptap/extension-bullet-list": "2.3.0", + "@tiptap/extension-code": "2.3.0", + "@tiptap/extension-code-block-lowlight": "2.3.0", + "@tiptap/extension-document": "2.3.0", + "@tiptap/extension-dropcursor": "2.3.0", + "@tiptap/extension-gapcursor": "2.3.0", + "@tiptap/extension-hard-break": "2.3.0", + "@tiptap/extension-heading": "2.3.0", + "@tiptap/extension-history": "2.3.0", + "@tiptap/extension-horizontal-rule": "2.3.0", + "@tiptap/extension-image": "2.3.0", + "@tiptap/extension-italic": "2.3.0", + "@tiptap/extension-link": "2.3.0", + "@tiptap/extension-list-item": "2.3.0", + "@tiptap/extension-ordered-list": "2.3.0", + "@tiptap/extension-paragraph": "2.3.0", + "@tiptap/extension-placeholder": "2.3.0", + "@tiptap/extension-strike": "2.3.0", + "@tiptap/extension-table": "2.3.0", + "@tiptap/extension-table-cell": "2.3.0", + "@tiptap/extension-table-header": "2.3.0", + "@tiptap/extension-table-row": "2.3.0", + "@tiptap/extension-task-item": "2.3.0", + "@tiptap/extension-task-list": "2.3.0", + "@tiptap/extension-text": "2.3.0", + "@tiptap/extension-typography": "2.3.0", + "@tiptap/extension-underline": "2.3.0", + "@tiptap/pm": "2.3.0", + "@tiptap/suggestion": "2.3.0", + "@tiptap/vue-3": "2.3.0", "@types/is-touch-device": "1.0.2", "@types/lodash.clonedeep": "4.5.9", "@vueuse/core": "10.9.0", diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index f5fec07c2..00cc10121 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -44,104 +44,104 @@ dependencies: specifier: 7.109.0 version: 7.109.0(vue@3.4.21) '@tiptap/core': - specifier: 2.2.6 - version: 2.2.6(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/pm@2.3.0) '@tiptap/extension-blockquote': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-bold': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-bullet-list': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-code': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-code-block-lowlight': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/extension-code-block@2.1.12)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/extension-code-block@2.1.12)(@tiptap/pm@2.3.0) '@tiptap/extension-document': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-dropcursor': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-gapcursor': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-hard-break': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-heading': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-history': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-horizontal-rule': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-image': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-italic': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-link': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-list-item': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-ordered-list': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-paragraph': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-placeholder': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-strike': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-table': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-table-cell': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-table-header': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-table-row': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-task-item': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/extension-task-list': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-text': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-typography': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/extension-underline': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0) '@tiptap/pm': - specifier: 2.2.6 - version: 2.2.6 + specifier: 2.3.0 + version: 2.3.0 '@tiptap/suggestion': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) '@tiptap/vue-3': - specifier: 2.2.6 - version: 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6)(vue@3.4.21) + specifier: 2.3.0 + version: 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0)(vue@3.4.21) '@types/is-touch-device': specifier: 1.0.2 version: 1.0.2 @@ -3203,301 +3203,301 @@ packages: defer-to-connect: 1.1.3 dev: true - /@tiptap/core@2.2.6(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-v7S7RhQhTXQo9KSk2jM/jJlTd3clU2FsJA3Omjz7GbgYtPSy67qSiaTbH/tWq12GzDHbKymx+oQnKmyx+yPucA==} + /@tiptap/core@2.3.0(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-Gk2JN3i5CMkYGmsbyFI7cBUftWa+F7QYmeCLTWfbuy+hCM2OBsnYVKxhggFPGXRL5KLBEgBWeCeWMHfIw3B2MA==} peerDependencies: '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/pm': 2.2.6 + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-blockquote@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-Qoq4Tl4wyEGfuBrMFth5hWP1SroJtgDYPnyzAZeLiGzF3Yxtu7FFqjGtD1/Bos9ftnFVCAj+nIXnuKsM1YUaGg==} + /@tiptap/extension-blockquote@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-Cztt77t7f+f0fuPy+FWUL8rKTIpcdsVT0z0zYQFFafvGaom0ZALQSOdTR/q+Kle9I4DaCMO3/Q0mwax/D4k4+A==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-bold@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-PI/jNH7rmi6hBvWy/z+3KUTYqeaDXBUjidM74gWP6OLV28HTJ5SkIPCriYe4u2j2Wc/nk3gPxs4/hPOAu/YiXA==} + /@tiptap/extension-bold@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-SzkbJibHXFNU7TRaAebTtwbXUEhGZ8+MhlBn12aQ4QhdjNtFpQwKXQPyYeDyZGcyiOFgtFTb+WIfCGm8ZX0Fpw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-bubble-menu@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-nRWxbgkInhdGUL+e6iISgALcWh8A1PxeVB66w7yYZHS/WoZO0DXdXYT/BWb/XmEJ8r6B4c9SDZRklCiXT8dSXw==} + /@tiptap/extension-bubble-menu@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-dqyfQ8idTlhapvt0fxCGvkyjw92pBEwPqmkJ01h3EE8wTh53j0ytOHyMSf1KBuzardxpd8Yya3zlrAcR0Z3DlQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 tippy.js: 6.3.7 dev: false - /@tiptap/extension-bullet-list@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-bSrmYlWfj/bXXoBMVB+gCTlsficVVzWi1jcAjAn+qNAENkhampmlFIUG4DiKGYtn18ZoTbyLgQGDMCO3SBdeDQ==} + /@tiptap/extension-bullet-list@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-4nU4vJ5FjRDLqHm085vYAkuo68UK84Wl6CDSjm7sPVcu0FvQX02Okqt65azoSYQeS1SSSd5qq9YZuGWcYdp4Cw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-code-block-lowlight@2.2.6(@tiptap/core@2.2.6)(@tiptap/extension-code-block@2.1.12)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-W/8C5nIwgGLvxjc+PfnCcWkfrUuJsIKjyZGXmq1hVXTTVA9eVGbS7m1YB/fsYTEg1ccwoM2JjKO9yuKCeR2xiQ==} + /@tiptap/extension-code-block-lowlight@2.3.0(@tiptap/core@2.3.0)(@tiptap/extension-code-block@2.1.12)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-xMxWr/Fvv0hnN+u+6SW0OI3RVan+C6nJDU8xKh2Tx2DlBXJ0yODmq5v8WJJpW38AbaLkFuJuY/OA3AZ6n9pNbg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/extension-code-block': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/extension-code-block': 2.1.12(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/extension-code-block': 2.1.12(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-code-block@2.1.12(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): + /@tiptap/extension-code-block@2.1.12(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): resolution: {integrity: sha512-RXtSYCVsnk8D+K80uNZShClfZjvv1EgO42JlXLVGWQdIgaNyuOv/6I/Jdf+ZzhnpsBnHufW+6TJjwP5vJPSPHA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-code@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-UGsSFvVWrWWWQFU4atk+b/qeewTLadOZG/BHZXQDloyP5eJ1SkgUVy9nv3y2cT8QWRbvF6sxkV+SdFoWnvaG3Q==} + /@tiptap/extension-code@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-O2FZmosiIRoVbW82fZy8xW4h4gb2xAzxWzHEcsHPlwCbE3vYvcBMmbkQ5p+33eRtuRQInzl3Q/cwupv9ctIepQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-document@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-yT9m5Oo9U/xAypcylaLiDE8qmVd3SCZSc8s5lqyC1OW+psb1oC0d14+TgKetO2s8K2wAbW2DxYG3yoxWffGYsQ==} + /@tiptap/extension-document@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-WC55SMrtlsNOnHXpzbXDzJOp7eKmZV0rXooKmvCDqoiLO/DKpyQXyF+0UHfcRPmUAi2GWFPaer7+p1H9xzcjXg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-dropcursor@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-mCeIbbfe4rl8CuxVQvT7iYSKGVX/ls1LOwALwlHJz5Uw5l3VknAJdjEmHt6hNFdHu162JivL02Il0QYQ8BZwvA==} + /@tiptap/extension-dropcursor@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-WWxxGQPWdbzxyYP6jtBYSq4wMRhINhI0wBC8pgkxTVwCIWftMuYj++FP4LLIpuWgj78PWApuoM0QQxk4Lj7FOw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-floating-menu@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-6ONKC6Dx8zCc5YffXpnQ9FxGRoUp5Jm9mOO3losgiDFhdJqaO7SCk1ziOiD7enoWqIc2shZh8ADnqttCfnFVFQ==} + /@tiptap/extension-floating-menu@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-bNY43/yU/+wGfmk2eDV7EPDAN/akbC+YnSKTA5VPJADzscvlrL2HlQrxbd/STIdlwKqdPU5MokcvCChhfZ4f6w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 tippy.js: 6.3.7 dev: false - /@tiptap/extension-gapcursor@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-HDYu+FmL9V+khsiT5904Dy2qG6KrAvnXEjZk1+vVul0TabnQvl2rqHjTxmev3P1rOYTgePmaWXazxAWFIvbMBQ==} + /@tiptap/extension-gapcursor@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-OxcXcfD0uzNcXdXu2ZpXFAtXIsgK2MBHvFUs0t0gxtcL/t43pTOQBLy+29Ei30BxpwLghtX8jQ6IDzMiybq/sA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-hard-break@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-gwavC76sn26XQLyDaDtf28KIcbhMYPP+C5pkbRvAhVSckQB3Ebz3GRttVbm/jp+Uifp3bmoQEzISGCONEdKQoQ==} + /@tiptap/extension-hard-break@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-9pXi69SzLabbjY5KZ54UKzu7HAHTla9aYZKH56VatOAiJOPKJppFbU2/NfJwGzDrEtfOiDqr3dYbUDF3RuCFoQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-heading@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-XOmY+uezm42xSO1ero2bRBMdQxWytpxLJS+2shK0QogZ3sDplnfWfP5KV9Z2juXjTdPgPWG0ZaHzIIaLquEcfA==} + /@tiptap/extension-heading@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-YcZoUYfqb0nohoPgem4f8mjn5OqDomFrbJiC9VRHUOCIuEu+aJEYwp8mmdkLnS3f+LRCZ6G76cJJ50lkzSAZRw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-history@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-c2Aeozc+pHcpqghLjXRX/tGU/C+Gp6hApUWPXdhZw5Y/ARj6ZRwx2/ym2K8MOrJ36/W7gc7Xyxd9ZbG7m7pcjA==} + /@tiptap/extension-history@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-EF5Oq9fe/VBzU1Lsow2ubOlx1e1r4OQT1WUPGsRnL7pr94GH1Skpk7/hs9COJ9K6kP3Ebt42XjP0JEQodR58YA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-horizontal-rule@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-zyLU+Xlk8y3yBCblE8pFwqAP2Rju1csyAu45hi3NCJ6HDGQGdjy8oh+Xa8y2kTPxRNMZARxqB+vCiEoW3YZn2A==} + /@tiptap/extension-horizontal-rule@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-4DB8GU3uuDzzyqUmONIb3CHXcQ6Nuy4mHHkFSmUyEjg1i5eMQU5H7S6mNvZbltcJB2ImgCSwSMlj1kVN3MLIPg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-image@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-MoDVjvi0AgYYSY9QR3ff2TOKk9IVVfh+BInmLCrwejSE2q8N3p/vSI+N1GKLEfW9mqn1zdI95ev17Z12Avwv7A==} + /@tiptap/extension-image@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-v1fLEEzrfXWavsLFUEkTiYYxwm1WDNrjuUriU5tG2Jv22NL1BL4BLVbZbGdkAk+qHWy8QWszrDJbcgGh2VNCoQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-italic@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-wB+Y6p2gbc1f2hKYeGNXRQ7P2xi3+JzD3PjSyC9Ss/yyujZhxSOtxBF0nzFXdI+7nmN0Qm4inwPDU/DVrIPb+A==} + /@tiptap/extension-italic@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-jdFjLjdt5JtPlGMpoS6TEq5rznjbAYVlPwcw5VkYENVIYIGIR1ylIw2JwK1nUEsQ+OgYwVxHLejcUXWG1dCi2g==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-link@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-Jj0oXSfQ8gZlzzwd669B8sEKBkoK8xV31Lu55tRv9PKHSU6p9CUqBuxY8qR+cquCtO28f3u0cdl5o4HzeIUL5A==} + /@tiptap/extension-link@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-CnJAlV0ZOdEhKmDfYKuHJVG8g79iCFQ85cX/CROTWyuMfXz9uhj2rLpZ6nfidVbonqxAhQp7NAIr2y+Fj5/53A==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 linkifyjs: 4.1.1 dev: false - /@tiptap/extension-list-item@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-3xig1q0jtOyV49TkAbvxBoOJdNypwq6vLYerfblhj6dK+hIIZUM33S+SmGl2+QaB25VwyeSHjiCvrJjB9PKWHQ==} + /@tiptap/extension-list-item@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-mHU+IuRa56OT6YCtxf5Z7OSUrbWdKhGCEX7RTrteDVs5oMB6W3oF9j88M5qQmZ1WDcxvQhAOoXctnMt6eX9zcA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-ordered-list@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-h4HOv+TAMnoueh3CzUY2/Pp2n8eCdEQtKSfiMtHSO3NTTSlst0XEvq+3Z4K81F+ni3baXc+JUALP5dRVpI4apQ==} + /@tiptap/extension-ordered-list@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-gkf0tltXjlUj0cqyfDV2r7xy9YPKtcVSWwlCPun6OOi0KzKFiAMqQpA9hy2W6gJ+KCp8+KNRMClZOfH4TnnBfg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-paragraph@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-M2rM3pfzziUb7xS9x2dANCokO89okbqg5IqU4VPkZhk0Mfq9czyCatt58TYkAsE3ccsGhdTYtFBTDeKBtsHUqg==} + /@tiptap/extension-paragraph@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-peCpA7DFqkd0cHb+cHv4YHNoMsXG8tKFNJlCHpLmsZWl2hWmpKgKmUrXAUfzjcFSvkZxn0xYc5oWbqUgg+2LzA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-placeholder@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-eHPadx48gneDD8bTZeRnG4hOvRvctBPY5JlA03QQIoarrbmqsyv3zZSW8smBsRai9kwbXLhytdEFGruTKV9PjQ==} + /@tiptap/extension-placeholder@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-1BOyxVLzyUYf6yOOeJ8CfpP6DSCS4L6HjBZqj6WP1z1NyBV8RAfhf3UuLNcimfSWAETXFR3g0ZbaxxWffI1cEg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-strike@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-0fRh0SwPgqi+ZKD2NpRrmIAHdsgf27ddEUfvlIuFG5b9zqFa6pRZGpXW/6LyBwU0+0bkjW8/Wg3otyaRGjvZGw==} + /@tiptap/extension-strike@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-gOW4ALeH8gkJiUGGXVy/AOd5lAPTX0bzoOW1+sCLcTA7t8dluBW7M2ngNYxTEtlKqyv7aLfrgsYSiqucmmfSLw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-table-cell@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-i/O27W0O2Bp+txeYUz8thZJaIHTb8BvPseYENiYBs9qOjpwiqXgQXVa5wTAm93GtHoK2ifs50a/xp2CIDTYsgw==} + /@tiptap/extension-table-cell@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-jsFp5lc+be04AsuMiTGlluLnsmJl/51+sv0DewYHeidh7iyvk3R5y2pyA+Bk1V/txFdaH5GxOQvSH3RonEVMAg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-table-header@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-1IFGBVV/wJwO7aM8u6gN90OmT35ulJoNFQEssoxrx8g+tj+mZy5vXq2JGPqFg7AVjIpek1DJrzzcXGnbtXS57w==} + /@tiptap/extension-table-header@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-wLvJqDBaXc/xs+NBJZoSIfO7fVYqcrIlsdtQRlBec3vTpSG0w0zlrM/JY4mjQKHzWsDk6hb9mvbK2scChOu5TA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-table-row@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-sUTpzzR6zR6iFLXszK4qak0/qd8Gjz9/mnj9sdRJhXtVT+VPssU0iVBMyIfn01nnoUzMPpakcO1Vd5dSJNhoVg==} + /@tiptap/extension-table-row@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-i2o/S8Mggw1GDxF5N5i8SvDvmOvbHu8MuWpdhFwfOkbrnEdtHlU/GjWIEstPymg4QyrfAEQa/KDffkrX0T7RNw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-table@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-O26Uj/A9AR8QJZvjSaTCI6Jpuc7MD8ul0vjqJ9EKulzMaAJbiOJidcBPr7rhVxAIRrXQz+DQW+zFbZvTj5i5mQ==} + /@tiptap/extension-table@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-1cU0C5LFyF7Nm8K2X6sntuunpLDE11XV8gV4ALbXv0FNKx2rG9Wq0tQlGHAjhYZMhWt386T21N7o13aMAov1GA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-task-item@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-8JJI9JBDdU5optPZVmlpCk5eOXv1p8bsFQYgHmIaHmDvsWvNlRph1LBYEAyiImBwVgZp+M8FI4KD5rNdALhelw==} + /@tiptap/extension-task-item@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-WvQJiQSskI1dZLPgNH4hmYPW0HFyR/EHwogzVnY7XCn2/5isV0ewyaVuSfqTXvfEA/R5uCi95opwz61NFBc2nQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/extension-task-list@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-4ofrnm0jwk9OC5QH+b5wR4ck+J5wi+uOq7Qm2234GAqohjOzr4ndae68NSIv2XviDk04askCoZc+yZBxNwkhmQ==} + /@tiptap/extension-task-list@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-TBgqf4s3DpUV97w7AAj1WZDnZ3rZQ8B645d9bBayo4VfRzHCLefv5cVP/Ye9GA23T4FZoHNR+yIPrM7SfhkmPA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-text@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-wVpo0I/2tJsBK/2yNZfRXOsThOfHCdTY+FDNO/USx9MCJaJ3LPs3H1AuGO549zNmZgkD+1MqcZqrYt9n4i03cw==} + /@tiptap/extension-text@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-zkudl0TyKRy/8vHtyo5dMzjBRD0HEUnsS8YOsjR4xwQq5EYUXleRgM1s6lb6Yms2sLUAZRWdDddoQ686iq4zQg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-typography@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-S8rvwSLq6IW1pEo/1Gcyez2tnXvUbwFBsAGNKPzcX/0HvlgXYWdE+qcjT3yoY/gAHRdvqfAP1Cd4Up7O3f1//A==} + /@tiptap/extension-typography@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-bI9t6dVp3wvzp3RVhJYRAV5Gi4pCSnumYith62TJmEk7fI24XuwMAXJu32+RTtBkaWHX/nwSGPh/ol0PRmtzKw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/extension-underline@2.2.6(@tiptap/core@2.2.6): - resolution: {integrity: sha512-RaYEWuBHS6VQ2KXk+pP2b3xDN4vxmTb7+CF84mumR+CJUK4uAx01IDBUof+h/a4Sa58suNLQ6eHY33NmxPppnQ==} + /@tiptap/extension-underline@2.3.0(@tiptap/core@2.3.0): + resolution: {integrity: sha512-vmmcwCPmWqGKYHZevz50+bxrpHyiu5y6YZweAE476hn8Mud6vYg7RpkXgW8bjkCOky6UA51uelslSc0XrLE6uw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) dev: false - /@tiptap/pm@2.2.6: - resolution: {integrity: sha512-gSKJtsaMLiYNwcAdwgnlTVM9zHiHy6/WgJvXFmIoOnUgvMN10Bbr+KO5hoffwgLCCSpIWw6qJoVKMpHBexLm0w==} + /@tiptap/pm@2.3.0: + resolution: {integrity: sha512-4WYqShZBwDyReKvapC0nmeYdOtZbZ31y4MjolpKQaSD4I7kg/oZspC+byUGdvIRsNpRN7i2X0IyvdISKk8gw5Q==} dependencies: prosemirror-changeset: 2.2.1 prosemirror-collab: 1.3.1 @@ -3519,27 +3519,27 @@ packages: prosemirror-view: 1.32.7 dev: false - /@tiptap/suggestion@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6): - resolution: {integrity: sha512-/pooAwvUkUB1gKxe4AHAvaNpAvL3FsZrIBJKYR0PF6BNROOHiu4IZY0Zy27ea4vmj72pYrMVlTmeYtSGPzrICg==} + /@tiptap/suggestion@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0): + resolution: {integrity: sha512-QngwR9ahodVfwqp/kXxJvuL3zNb6XZu+vCuWy8RJrGP8DA7SCI9t8t7iB6NfG4kSsRGxM+3DuLi+2xOZQUaEVQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 dev: false - /@tiptap/vue-3@2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6)(vue@3.4.21): - resolution: {integrity: sha512-F8hC133AF/48cvZReJun5TV35NtRcoH8LVEGsuHGNkH7BvJjXAciomvEO4HlSfqz1YT8M/hzRGNg1/R6ixv3bw==} + /@tiptap/vue-3@2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0)(vue@3.4.21): + resolution: {integrity: sha512-Jgsoouq7gD6SkUf7McOJnKOHqVTVDJkPqhXZUZyJbJ22wD+7drxlauWwWexEymbs95ByhKblreLwcumvbOztgg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 vue: ^3.0.0 dependencies: - '@tiptap/core': 2.2.6(@tiptap/pm@2.2.6) - '@tiptap/extension-bubble-menu': 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) - '@tiptap/extension-floating-menu': 2.2.6(@tiptap/core@2.2.6)(@tiptap/pm@2.2.6) - '@tiptap/pm': 2.2.6 + '@tiptap/core': 2.3.0(@tiptap/pm@2.3.0) + '@tiptap/extension-bubble-menu': 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) + '@tiptap/extension-floating-menu': 2.3.0(@tiptap/core@2.3.0)(@tiptap/pm@2.3.0) + '@tiptap/pm': 2.3.0 vue: 3.4.21(typescript@5.4.5) dev: false From 4e49ec9e16ba5176ce8596e88f96d4a8983922f9 Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 10 Apr 2024 23:03:04 +0200 Subject: [PATCH 6/9] docs: clarify automatic openid team creation --- docs/content/doc/setup/openid.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/doc/setup/openid.md b/docs/content/doc/setup/openid.md index b4df2d34b..f639dacc0 100644 --- a/docs/content/doc/setup/openid.md +++ b/docs/content/doc/setup/openid.md @@ -103,7 +103,7 @@ auth: ## Automatically assign users to teams -Vikunja is capable of automatically adding users to a team based on OIDC claims added by the identity provider. +Starting with version 0.24.0, Vikunja is capable of automatically adding users to a team based on OIDC claims added by the identity provider. If configured, Vikunja will sync teams, automatically create new ones and make sure the members are part of the configured teams. Teams which exist only because they were created from oidc attributes are not editable in Vikunja. From 75fd17c7503b6a1189a3ede1c45be03a69b1fd72 Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 10 Apr 2024 23:05:32 +0200 Subject: [PATCH 7/9] docs: clarify vikunja cli usage in docker --- docs/content/doc/usage/cli.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/content/doc/usage/cli.md b/docs/content/doc/usage/cli.md index 110da5eef..9e1035f87 100644 --- a/docs/content/doc/usage/cli.md +++ b/docs/content/doc/usage/cli.md @@ -28,13 +28,21 @@ All commands use the same standard [config file]({{< ref "../setup/config.md">}} ## Using the cli in docker -When running Vikunja in docker, you'll need to execute all commands in the `api` container. +When running Vikunja in docker, you'll need to execute all commands in the `vikunja` container. Instead of running the `vikunja` binary directly, run it like this: ```sh -docker exec /app/vikunja/vikunja +docker exec /app/vikunja/vikunja ``` +If you need to run a bunch of Vikunja commands, you can also create a shell alias for it: + +```sh +alias vikunja-docker='docker exec /app/vikunja/vikunja' +``` + +Then use it as `vikunja-docker `. + ### `dump` Creates a zip file with all vikunja-related files. From 423558f58a937bfce9e3ba2a4b237e836d80fd3e Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 10 Apr 2024 23:52:10 +0200 Subject: [PATCH 8/9] fix(migration): invalid field in organization struct --- go.mod | 3 ++- go.sum | 34 ++-------------------------------- 2 files changed, 4 insertions(+), 33 deletions(-) diff --git a/go.mod b/go.mod index dc64b2f37..5cab89319 100644 --- a/go.mod +++ b/go.mod @@ -110,7 +110,6 @@ require ( github.com/go-chi/chi/v5 v5.0.10 // indirect github.com/go-faster/city v1.0.1 // indirect github.com/go-faster/errors v0.6.1 // indirect - github.com/go-jose/go-jose/v3 v3.0.3 // indirect github.com/go-jose/go-jose/v4 v4.0.1 // indirect github.com/go-openapi/jsonpointer v0.20.1 // indirect github.com/go-openapi/jsonreference v0.20.3 // indirect @@ -191,6 +190,8 @@ require ( replace github.com/samedi/caldav-go => github.com/kolaente/caldav-go v3.0.1-0.20190610114120-2a4eb8b5dcc9+incompatible // Branch: feature/dynamic-supported-components, PR: https://github.com/samedi/caldav-go/pull/6 and https://github.com/samedi/caldav-go/pull/7 +replace github.com/adlio/trello v1.11.0 => github.com/kolaente/trello v1.8.1-0.20240410214605-9314fa638eab // https://github.com/adlio/trello/pull/95 + go 1.21 toolchain go1.21.2 diff --git a/go.sum b/go.sum index 5fde19638..87a56b2a7 100644 --- a/go.sum +++ b/go.sum @@ -24,8 +24,6 @@ github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdko github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= github.com/ThreeDotsLabs/watermill v1.3.5 h1:50JEPEhMGZQMh08ct0tfO1PsgMOAOhV3zxK2WofkbXg= github.com/ThreeDotsLabs/watermill v1.3.5/go.mod h1:O/u/Ptyrk5MPTxSeWM5vzTtZcZfxXfO9PK9eXTYiFZY= -github.com/adlio/trello v1.11.0 h1:PGpwpRZcRiVhsG7VEHb2GWKw4R2ZxB9nc6cMI/7mLD8= -github.com/adlio/trello v1.11.0/go.mod h1:I4Lti4jf2KxjTNgTqs5W3lLuE78QZZdYbbPnQQGwjOo= github.com/andybalholm/brotli v1.1.0 h1:eLKJA0d02Lf0mVpIDgYnqXcUn0GqVmEFny3VuID1U3M= github.com/andybalholm/brotli v1.1.0/go.mod h1:sms7XGricyQI9K10gOSf56VKKWS4oLer58Q+mhRPtnY= github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y= @@ -70,8 +68,6 @@ github.com/chzyer/logex v1.2.0/go.mod h1:9+9sk7u7pGNWYMkh0hdiL++6OeibzJccyQU4p4M 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/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= -github.com/coreos/go-oidc/v3 v3.9.0 h1:0J/ogVOd4y8P0f0xUh8l9t07xRP/d8tccvjHl2dcsSo= -github.com/coreos/go-oidc/v3 v3.9.0/go.mod h1:rTKz2PYwftcrtoCzV5g5kvfJoWcm0Mk8AF8y1iAQro4= github.com/coreos/go-oidc/v3 v3.10.0 h1:tDnXHnLyiTVyT/2zLDGj09pFPkhND8Gl8lnTRhoEaJU= github.com/coreos/go-oidc/v3 v3.10.0/go.mod h1:5j11xcw0D3+SGxn6Z/WFADsgcWVMyNAlSQupk0KK3ac= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= @@ -129,8 +125,6 @@ github.com/go-faster/city v1.0.1 h1:4WAxSZ3V2Ws4QRDrscLEDcibJY8uf41H6AhXDrNDcGw= github.com/go-faster/city v1.0.1/go.mod h1:jKcUJId49qdW3L1qKHH/3wPeUstCVpVSXTM6vO3VcTw= github.com/go-faster/errors v0.6.1 h1:nNIPOBkprlKzkThvS/0YaX8Zs9KewLCOSFQS5BU06FI= github.com/go-faster/errors v0.6.1/go.mod h1:5MGV2/2T9yvlrbhe9pD9LO5Z/2zCSq2T8j+Jpi2LAyY= -github.com/go-jose/go-jose/v3 v3.0.3 h1:fFKWeig/irsp7XD2zBxvnmA/XaRWp5V3CBsZXJF7G7k= -github.com/go-jose/go-jose/v3 v3.0.3/go.mod h1:5b+7YgP7ZICgJDBdfjZaIt+H/9L9T/YQrVfLAMboGkQ= github.com/go-jose/go-jose/v4 v4.0.1 h1:QVEPDE3OluqXBQZDcnNvQrInro2h0e4eqNbnZSWqS6U= github.com/go-jose/go-jose/v4 v4.0.1/go.mod h1:WVf9LFMHh/QVrmqrOfqun0C45tMe3RoiKJMPvgWwLfY= github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= @@ -158,8 +152,6 @@ github.com/go-playground/validator/v10 v10.15.1 h1:BSe8uhN+xQ4r5guV/ywQI4gO59C2r github.com/go-playground/validator/v10 v10.15.1/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU= github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= -github.com/go-sql-driver/mysql v1.8.0 h1:UtktXaU2Nb64z/pLiGIxY4431SJ4/dR5cjMmlVHgnT4= -github.com/go-sql-driver/mysql v1.8.0/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= @@ -311,6 +303,8 @@ github.com/klauspost/cpuid/v2 v2.2.5/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZY github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= github.com/kolaente/caldav-go v3.0.1-0.20190610114120-2a4eb8b5dcc9+incompatible h1:q7DbyV+sFjEoTuuUdRDNl2nlyfztkZgxVVCV7JhzIkY= github.com/kolaente/caldav-go v3.0.1-0.20190610114120-2a4eb8b5dcc9+incompatible/go.mod h1:y1UhTNI4g0hVymJrI6yJ5/ohy09hNBeU8iJEZjgdDOw= +github.com/kolaente/trello v1.8.1-0.20240410214605-9314fa638eab h1:KAEuOtvjNohQzONw0NpOlR4TlWgsPawY/PLyOiMHlFw= +github.com/kolaente/trello v1.8.1-0.20240410214605-9314fa638eab/go.mod h1:I4Lti4jf2KxjTNgTqs5W3lLuE78QZZdYbbPnQQGwjOo= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= @@ -537,8 +531,6 @@ github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7Jul github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yuin/goldmark v1.7.0 h1:EfOIvIMZIzHdB/R/zVrikYLPPwJlfMcNczJFMs1m6sA= -github.com/yuin/goldmark v1.7.0/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= github.com/yuin/goldmark v1.7.1 h1:3bajkSilaCbjdKVsKdZjZCLBNPL9pYzrCakKaf4U49U= github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= @@ -580,9 +572,6 @@ golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= -golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= golang.org/x/exp v0.0.0-20230905200255-921286631fa9 h1:GoHiUyI/Tp2nVkLI2mCxVkOjsbSXD66ic0XW0js0R9g= @@ -596,7 +585,6 @@ golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzB golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -618,9 +606,6 @@ golang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.22.0 h1:9sGLhx7iRIHEiX0oAJ3MRZMUCElJgy7Br1nO+AMN3Tc= -golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= golang.org/x/oauth2 v0.18.0 h1:09qnuIAgzdx1XplqJvW6CQqMCtGZykZWcXzPMPUusvI= @@ -631,7 +616,6 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -662,20 +646,12 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= -golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= golang.org/x/term v0.19.0 h1:+ThwsDv+tYfnJFhF4L8jITxu1tdTWRTZpdsWgEgjL6Q= golang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -686,7 +662,6 @@ golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -707,7 +682,6 @@ golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -802,8 +776,6 @@ nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYm rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= -src.techknowlogick.com/xgo v1.7.1-0.20240305180710-770b8eae9cec h1:ICDp83UjJvLcOFWHAxr7vmziKIHJkE4jsIF1mbT9Bwk= -src.techknowlogick.com/xgo v1.7.1-0.20240305180710-770b8eae9cec/go.mod h1:31CE1YKtDOrKTk9PSnjTpe6YbO6W/0LTYZ1VskL09oU= src.techknowlogick.com/xgo v1.7.1-0.20240403232151-e01c4fbef884 h1:Ttvt8FCpUXfC8r3+LgSPrBUIr/JkHmYQtvmOwEET8qE= src.techknowlogick.com/xgo v1.7.1-0.20240403232151-e01c4fbef884/go.mod h1:31CE1YKtDOrKTk9PSnjTpe6YbO6W/0LTYZ1VskL09oU= src.techknowlogick.com/xormigrate v1.7.1 h1:RKGLLUAqJ+zO8iZ7eOc7oLH7f0cs2gfXSZSvBRBHnlY= @@ -814,7 +786,5 @@ xorm.io/builder v0.3.13 h1:a3jmiVVL19psGeXx8GIurTp7p0IIgqeDmwhcR6BAOAo= xorm.io/builder v0.3.13/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE= xorm.io/xorm v1.0.5/go.mod h1:uF9EtbhODq5kNWxMbnBEj8hRRZnlcNSz2t2N7HW/+A4= xorm.io/xorm v1.3.3/go.mod h1:qFJGFoVYbbIdnz2vaL5OxSQ2raleMpyRRalnq3n9OJo= -xorm.io/xorm v1.3.8 h1:CJmplmWqfSRpLWSPMmqz+so8toBp3m7ehuRehIWedZo= -xorm.io/xorm v1.3.8/go.mod h1:LsCCffeeYp63ssk0pKumP6l96WZcHix7ChpurcLNuMw= xorm.io/xorm v1.3.9 h1:TUovzS0ko+IQ1XnNLfs5dqK1cJl1H5uHpWbWqAQ04nU= xorm.io/xorm v1.3.9/go.mod h1:LsCCffeeYp63ssk0pKumP6l96WZcHix7ChpurcLNuMw= From 61ee0bd5e24a9c9c41f12d5e83a93d5a6bec5c1f Mon Sep 17 00:00:00 2001 From: Elscrux Date: Wed, 10 Apr 2024 22:12:06 +0000 Subject: [PATCH 9/9] feat(migration): include non upload attachments from Trello (#2261) This makes the Trello migrator include attachments that are not file uploads. To include them in Vikunja without missing data, their text (usually links) will be appended to the Vikunja description. Co-authored-by: Elscrux Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2261 Reviewed-by: konrad Co-authored-by: Elscrux Co-committed-by: Elscrux --- pkg/modules/migration/trello/trello.go | 58 +++++++++++---------- pkg/modules/migration/trello/trello_test.go | 18 +++++-- 2 files changed, 43 insertions(+), 33 deletions(-) diff --git a/pkg/modules/migration/trello/trello.go b/pkg/modules/migration/trello/trello.go index 84fe82458..510ec363e 100644 --- a/pkg/modules/migration/trello/trello.go +++ b/pkg/modules/migration/trello/trello.go @@ -336,37 +336,39 @@ func convertTrelloDataToVikunja(organizationName string, trelloData []*trello.Bo log.Debugf("[Trello Migration] Downloading %d card attachments from card %s", len(card.Attachments), card.ID) } for _, attachment := range card.Attachments { - if !attachment.IsUpload { // There are other types of attachments which are not files. We can only handle files. - log.Debugf("[Trello Migration] Attachment %s does not have a mime type, not downloading", attachment.ID) + if attachment.IsUpload { + // Download file and add it as attachment + log.Debugf("[Trello Migration] Downloading card attachment %s", attachment.ID) + + buf, err := migration.DownloadFileWithHeaders(attachment.URL, map[string][]string{ + "Authorization": {`OAuth oauth_consumer_key="` + config.MigrationTrelloKey.GetString() + `", oauth_token="` + token + `"`}, + }) + if err != nil { + return nil, err + } + + vikunjaAttachment := &models.TaskAttachment{ + File: &files.File{ + Name: attachment.Name, + Mime: attachment.MimeType, + Size: uint64(buf.Len()), + FileContent: buf.Bytes(), + }, + } + + if card.IDAttachmentCover != "" && card.IDAttachmentCover == attachment.ID { + vikunjaAttachment.ID = 42 + task.CoverImageAttachmentID = 42 + } + + task.Attachments = append(task.Attachments, vikunjaAttachment) + + log.Debugf("[Trello Migration] Downloaded card attachment %s", attachment.ID) continue } - log.Debugf("[Trello Migration] Downloading card attachment %s", attachment.ID) - - buf, err := migration.DownloadFileWithHeaders(attachment.URL, map[string][]string{ - "Authorization": {`OAuth oauth_consumer_key="` + config.MigrationTrelloKey.GetString() + `", oauth_token="` + token + `"`}, - }) - if err != nil { - return nil, err - } - - vikunjaAttachment := &models.TaskAttachment{ - File: &files.File{ - Name: attachment.Name, - Mime: attachment.MimeType, - Size: uint64(buf.Len()), - FileContent: buf.Bytes(), - }, - } - - if card.IDAttachmentCover != "" && card.IDAttachmentCover == attachment.ID { - vikunjaAttachment.ID = 42 - task.CoverImageAttachmentID = 42 - } - - task.Attachments = append(task.Attachments, vikunjaAttachment) - - log.Debugf("[Trello Migration] Downloaded card attachment %s", attachment.ID) + // Other links are not attachments in Vikunja, but we can add them to the description + task.Description += `

` + attachment.Name + "

\n" } // When the cover image was set manually, we need to add it as an attachment diff --git a/pkg/modules/migration/trello/trello_test.go b/pkg/modules/migration/trello/trello_test.go index 4d94f26ce..3e6ba1a6b 100644 --- a/pkg/modules/migration/trello/trello_test.go +++ b/pkg/modules/migration/trello/trello_test.go @@ -78,6 +78,13 @@ func getTestBoard(t *testing.T) ([]*trello.Board, time.Time) { MimeType: "image/jpg", URL: "https://vikunja.io/testimage.jpg", }, + { + ID: "7cc71b16f0c7a57bed3c94e9", + Name: "Website", + IsUpload: false, + MimeType: "", + URL: "https://vikunja.io", + }, }, }, { @@ -265,10 +272,11 @@ func TestConvertTrelloToVikunja(t *testing.T) { Tasks: []*models.TaskWithComments{ { Task: models.Task{ - Title: "Test Card 1", - Description: "

Card Description bold

\n", - BucketID: 1, - DueDate: time1, + Title: "Test Card 1", + Description: "

Card Description bold

\n" + + "

Website

\n", + BucketID: 1, + DueDate: time1, Labels: []*models.Label{ { Title: "Label 1", @@ -481,6 +489,6 @@ func TestCreateOrganizationMap(t *testing.T) { }, } if diff, equal := messagediff.PrettyDiff(organizationMap, expectedMap); !equal { - t.Errorf("converted trello data = %v,\nwant %v,\ndiff: %v", organizationMap, expectedMap, diff) + t.Errorf("converted organization map = %v,\nwant %v,\ndiff: %v", organizationMap, expectedMap, diff) } }