Compare commits

...

129 Commits

Author SHA1 Message Date
652d3c7384
chore: add archival note
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-07 15:03:24 +01:00
447641c222 chore: apply lint fixes
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-07 12:23:09 +00:00
362be53a47 feat: use recommended vue-linting 2024-02-07 12:23:09 +00:00
46eabdfe6b fix(deps): update sentry-javascript monorepo to v7.100.1
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-07 11:53:00 +00:00
a0c5a464a5
feat(progress): less rounding
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-02-07 11:36:57 +01:00
e78ab476fc
chore(progress): cleanup unused css 2024-02-07 11:35:32 +01:00
aebb047d18
fix(progress): move customizations into progress bar component
All checks were successful
continuous-integration/drone/pr Build is passing
2024-02-07 11:24:20 +01:00
7bb110b20e
feat: add ProgressBar component
All checks were successful
continuous-integration/drone/pr Build is passing
2024-02-07 11:12:21 +01:00
f148a43390 fix(deps): update dependency ufo to v1.4.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-07 10:08:12 +00:00
aac70d3823 fix(deps): update dependency @kyvg/vue3-notification to v3.1.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-02-07 09:20:36 +00:00
21126793ab
fix(test): make test assertion work again
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-06 23:13:38 +01:00
b057fb2784
fix(reminders): set reminder date on datepicker when editing a reminder
Some checks failed
continuous-integration/drone/push Build is failing
Setting an actual reminder date (not a relative one) flowed only from the component to the outside when setting it. When editing it, the reminder date would not be populated, causing the datepicker date to stay at the current date.
2024-02-06 18:46:15 +01:00
58c7da019d
fix(notifications): mark all notifications as read in ui directly when marking as read on the server
Some checks failed
continuous-integration/drone/push Build is failing
This caused the notifications to stay on "unread" when marking them as read, making an unpleasant user experience
2024-02-06 18:34:42 +01:00
70f48eaaca
fix(task): make sure the drag handle is shown as intended
Some checks failed
continuous-integration/drone/push Build is failing
Due to a previous refactoring, the drag handle was always shown instead of only on hover. The css class was moved out of the task component, but its styles weren't

Related to #3934
2024-02-06 18:29:17 +01:00
6cc75928d8
fix(task): remove default task color
Some checks failed
continuous-integration/drone/push Build is failing
Previously, the task would use the default color. This was now removed, as this resulted in the default color not being visible on tasks.

Resolves https://github.com/go-vikunja/frontend/issues/135#issuecomment-1917576392
2024-02-06 18:18:44 +01:00
dc360d4a18
chore(editor): don't set editor content intitially
Some checks failed
continuous-integration/drone/push Build is failing
2024-02-06 18:03:27 +01:00
45ca0602f5
feat(editor): use primary color for currently selected node 2024-02-06 16:09:38 +01:00
9d39ccf15c
fix(assignees): use correct amount of spacing in assignee selection
Some checks failed
continuous-integration/drone/push Build is failing
2024-02-06 15:44:39 +01:00
28e83325d7
fix(kanban): assignee spacing 2024-02-06 15:39:05 +01:00
aff48ddd9d
fix(kanban): bottom spacing of labels 2024-02-06 15:34:22 +01:00
5b2a9a42c0
fix(gantt): correctly import languages from dayjs
Some checks failed
continuous-integration/drone/push Build is failing
Resolves https://community.vikunja.io/t/error-in-gannt-with-spanish-language/1973/3
2024-02-05 21:57:21 +01:00
45f5d522d1
docs: update readme
Some checks failed
continuous-integration/drone/push Build is failing
Copied from https://github.com/go-vikunja/frontend/pull/146
2024-02-05 21:16:30 +01:00
4f27e4a477 fix(deps): update tiptap to v2.2.1 2024-02-05 10:37:28 +00:00
d0dc86fd58 fix(deps): update dependency vue-i18n to v9.9.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-31 02:20:29 +00:00
0484923b8a fix(deps): update sentry-javascript monorepo to v7.99.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-30 17:18:57 +00:00
5f2fb01e90 fix(deps): update dependency floating-vue to v5.2.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-30 14:19:37 +00:00
bd18524f36 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-30 00:19:43 +00:00
7375a87f2f fix(deps): update dependency @fortawesome/vue-fontawesome to v3.0.6
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-29 21:18:09 +00:00
ccff276397 chore(deps): update pnpm to v8.15.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-29 20:19:25 +00:00
30b21fc11c fix(deps): update dependency floating-vue to v5.2.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-29 14:22:11 +00:00
7c98ddc20b fix(deps): update tiptap to v2.2.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-29 13:21:38 +00:00
6ba02a0f10 chore(deps): update pnpm to v8.15.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-29 07:32:55 +00:00
676d2b6215 chore(deps): update dependency @types/node to v20.11.10
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-29 07:32:26 +00:00
Frederick [Bot]
85e612451f chore(i18n): update translations via Crowdin
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-29 00:25:58 +00:00
d411de99f1
chore: release preparation
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-28 17:43:53 +01:00
228d652b03
fix(kanban): make sure spacing between assignees and other task details works out evenly
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-28 16:41:24 +01:00
b3e2107503
fix(task): don't show assignee edit buttons and input when the user does not have the permission to edit
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-28 13:30:29 +01:00
a579a8e65f
fix(task): don't show edit button when the user does not have permission to edit the task 2024-01-28 13:24:58 +01:00
ee980e2a00
fix(openid): use the calculated redirect url when authenticating with openid providers
All checks were successful
continuous-integration/drone/push Build is passing
Resolves https://github.com/go-vikunja/desktop/issues/12
2024-01-28 12:42:45 +01:00
394dbe0055 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-28 04:19:06 +00:00
30d599369f chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-27 00:18:54 +00:00
631b02d2ee
chore: only show webhooks overview table when there are webhooks
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-27 00:01:11 +01:00
326bfb557a
chore: only show webhooks overview table when there are webhooks
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-27 00:00:31 +01:00
cd0149ef69
fix(kanban): make sure the checklist summary uses the correct text color
All checks were successful
continuous-integration/drone/push Build is passing
Related-To https://github.com/go-vikunja/frontend/issues/135
2024-01-26 21:44:20 +01:00
78d4a518a3
fix(tasks): don't load tasks multiple times when viewing list or gantt view
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-26 21:33:20 +01:00
3c1041902e
fix(table view): make sure popup does not overlap
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-26 21:22:51 +01:00
e3cae0ed7f
fix(filter): validate filter title field after loading a filter for edit
All checks were successful
continuous-integration/drone/push Build is passing
Related to #3866
2024-01-26 11:29:46 +01:00
fc8bd6a9ca chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-26 05:19:03 +00:00
5a6e5619e3 fix(deps): update dependency axios to v1.6.7
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-25 20:20:22 +00:00
9c9f806e62 fix(deps): update sentry-javascript monorepo to v7.98.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-25 13:55:42 +00:00
67216579bc
fix(auth): correctly construct redirect url from current window href
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-25 14:24:30 +01:00
a8df935ddb fix(deps): update sentry-javascript monorepo to v7.97.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-25 11:20:20 +00:00
bb4746f226 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-25 07:50:16 +00:00
31590236aa fix(deps): update dependency axios to v1.6.6
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-24 23:19:33 +00:00
00d48a6178 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-24 06:19:41 +00:00
5169cca8d8 fix(deps): update sentry-javascript monorepo to v7.95.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-23 19:18:41 +00:00
255a7d565c chore(deps): update pnpm to v8.14.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-23 10:20:44 +00:00
8dbaee5dfb chore(deps): update dev-dependencies to v6.19.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-23 00:19:30 +00:00
69b0b19482 fix(deps): update dependency date-fns to v3.3.1
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-22 10:44:49 +00:00
eae89d37f1 chore(deps): update pnpm to v8.14.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-22 10:19:22 +00:00
7d19859816 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-22 00:18:43 +00:00
c7b70844c6
fix(color picker): when picking a color, the color picker should not be black afterwards
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 20:25:19 +01:00
b8c21c2ade
fix(labels): text and background combination in dark mode
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 20:20:00 +01:00
57c99a22a0
fix(editor): use manual input prompt instead of window.prompt
All checks were successful
continuous-integration/drone/push Build is passing
Resolves vikunja/desktop#184
2024-01-21 20:08:10 +01:00
8ea97f3ffc
fix(editor): use a stable image id to prevent constant re-rendering
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 15:45:18 +01:00
0b3604d167
fix(editor): render images without crashing
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 15:00:26 +01:00
c5ba7fcb73
fix(editor): focus the editor when clicking on the whole edit container
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 13:52:13 +01:00
5a25685d53
fix(editor): don't bubble up changes when no changes were made
All checks were successful
continuous-integration/drone/push Build is passing
Related https://community.vikunja.io/t/saving-an-empty-description-in-kanban-view-break-ui/1914/3
2024-01-21 13:44:40 +01:00
da311fce9e
fix(kanban): ensure text and icon color only depends on the card background, not on the color scheme
All checks were successful
continuous-integration/drone/push Build is passing
Related https://github.com/go-vikunja/frontend/issues/135#issuecomment-1900701258
2024-01-21 00:10:05 +01:00
0fdf1ca027
fix(notifications): read indicator size
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 00:01:04 +01:00
f8e907a8c1
fix(notifications): always left-align notification text
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-20 23:59:57 +01:00
af7ca8ad8f
fix(project): always use the appropriate color for task estimate during deletion dialoge
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-20 23:54:03 +01:00
nor
92f7d9ded5 feat: datepicker locale support (#3878)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3878
Reviewed-by: konrad <k@knt.li>
Co-authored-by: nor <zorodey@outlook.com>
Co-committed-by: nor <zorodey@outlook.com>
2024-01-20 18:50:00 +00:00
41ccaea78b fix(deps): update dependency date-fns to v3.3.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-20 06:19:03 +00:00
c5696f3e2a chore(deps): update dependency vite to v5.0.12
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-20 00:19:28 +00:00
898707664c fix(deps): update sentry-javascript monorepo to v7.94.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-19 13:19:38 +00:00
d0b5bef68a chore(deps): update dependency happy-dom to v13.2.0
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build was killed
2024-01-19 00:20:24 +00:00
e395d4efdb fix(deps): update dependency vue to v3.4.15
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-18 14:19:39 +00:00
ce54132868 chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-18 07:18:54 +00:00
07d4d1e537 fix(deps): update dependency floating-vue to v5.2.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-17 13:19:31 +00:00
a701b0452e fix(deps): update dependency floating-vue to v5.1.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-17 12:18:43 +00:00
af65efcd27 chore(deps): update dev-dependencies (major) (#3890)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3890
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-17 09:17:35 +00:00
dc2afb9e8d chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-17 07:18:31 +00:00
e123d4f825 chore(perf): import some modules dynamically (#3179)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3179
Reviewed-by: konrad <k@knt.li>
Co-authored-by: WofWca <wofwca@protonmail.com>
Co-committed-by: WofWca <wofwca@protonmail.com>
2024-01-16 14:24:24 +00:00
b72c963256 fix(deps): update dependency vue to v3.4.14
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-16 12:10:13 +00:00
149bbf17eb fix(deps): update dependency floating-vue to v5.1.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-16 12:01:54 +00:00
265d60cf42 fix(deps): update vueuse to v10.7.2
Some checks failed
continuous-integration/drone/push Build is failing
2024-01-16 12:01:44 +00:00
23c9f51e73 fix(deps): update dependency sortablejs to v1.15.2
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-16 12:01:11 +00:00
ff697d0c7a chore(deps): update dev-dependencies
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-16 11:50:52 +00:00
00588cf59f chore(deps): pin node.js (#3895)
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #3895
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-16 11:49:00 +00:00
01089f4f3d fix(deps): update tiptap to v2.1.16 (#3892)
Some checks reported errors
continuous-integration/drone/push Build was killed
Reviewed-on: #3892
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-16 11:17:28 +00:00
a7461d1ddd
chore(deps): increase renovate timeout
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-16 12:15:04 +01:00
a451189bb6
fix(test): make date assertion not brittle
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-16 10:36:29 +01:00
bf9af27fc3
fix(task): update due date when marking a task done
Some checks failed
continuous-integration/drone/push Build is failing
2024-01-15 23:33:02 +01:00
5619fda0f2
fix(task): bubble date changes from the picker up
Some checks failed
continuous-integration/drone/push Build is failing
Resolves https://github.com/go-vikunja/frontend/issues/142
2024-01-15 23:23:57 +01:00
167953b26b
fix(editor): use higher-contrast colors for links and code
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-15 22:11:24 +01:00
664bf0a5f4
fix(tasks): make sure tasks show up if their parent task is not available in the current view
All checks were successful
continuous-integration/drone/push Build is passing
Related https://github.com/go-vikunja/frontend/issues/136
Related https://community.vikunja.io/t/subtasks-are-hidden-when-parent-tasks-are-moved/1911
2024-01-15 21:46:47 +01:00
5e991f3024
fix: lint
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-15 16:21:00 +01:00
28050d9cd5
fix(labels): make color reset work
Some checks failed
continuous-integration/drone/push Build is failing
2024-01-15 14:00:08 +01:00
e94b71d577
fix(editor): list icons
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-15 13:39:17 +01:00
336ce217d3 chore(deps): update node.js to v20.11 (#3888)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3888
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-11 11:30:14 +00:00
Frederick [Bot]
ce01085951 chore(i18n): update translations via Crowdin
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-11 00:11:57 +00:00
96a6d43a3f
fix(quick add magic): ensure month is removed from task text
All checks were successful
continuous-integration/drone/push Build is passing
Resolves #3874
2024-01-10 23:54:42 +01:00
13d63e34aa
fix(task): don't immediately re-trigger date change when nothing changed
All checks were successful
continuous-integration/drone/push Build is passing
Resolves https://community.vikunja.io/t/reminder-duplication/76/21?u=kolaente
2024-01-10 23:27:14 +01:00
a8441c72b8 fix(deps): update dependency vue to v3.4.8 (#3886)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3886
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 20:16:50 +00:00
230fa6ce66 fix(deps): update dependency floating-vue to v5 (#3887)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3887
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 18:18:53 +00:00
069c491fbd fix(deps): update sentry-javascript monorepo to v7.93.0 (#3859)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3859
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 16:01:02 +00:00
a9eae95d67 chore(deps): update pnpm to v8.14.1 (#3885)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3885
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 15:57:10 +00:00
50502d9d11 fix(deps): update vueuse to v10.7.1 (#3872)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3872
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 15:04:27 +00:00
18af6edc82 fix(deps): update tiptap to v2.1.15 (#3884)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3884
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 14:49:03 +00:00
d048b61eb3 fix(deps): update dependency floating-vue to v2.0.0 (#3883)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3883
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 14:36:14 +00:00
996607e670 fix(deps): update dependency dompurify to v3.0.8 (#3881)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3881
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 14:35:50 +00:00
e33ebe1831 fix(deps): update dependency vue-i18n to v9.9.0 (#3880)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3880
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 14:27:02 +00:00
557b0ffec7 chore(deps): update dependency node to v20.11.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-10 12:04:17 +00:00
dae6cdb9d7 fix(deps): update dependency @kyvg/vue3-notification to v3.1.3 (#3864)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3864
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 11:59:31 +00:00
158e4d690f chore(deps): update dev-dependencies (#3861)
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #3861
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 11:51:20 +00:00
691eb84a99 fix(deps): update dependency date-fns to v3 (#3857)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3857
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 11:29:48 +00:00
698ee7e163 fix(deps): update dependency axios to v1.6.5 (#3871)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3871
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 11:28:28 +00:00
ce822573df fix(deps): update dependency vue to v3.4.7 (#3873)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3873
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-01-10 11:19:30 +00:00
198abee01d chore(deps): update pnpm to v8.14.0
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-10 10:59:39 +00:00
Frederick [Bot]
e5bea087be chore(i18n): update translations via Crowdin
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-09 00:10:45 +00:00
Frederick [Bot]
4956fbb669 chore(i18n): update translations via Crowdin
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-08 11:50:29 +00:00
0351148288
fix(ci): use working crowdin image
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-07 20:20:14 +01:00
654806211e
fix(ci): use working image for crowdin update step
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-04 13:22:27 +01:00
09572dbe61
fix(ci): use working crowdin image
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-27 15:44:36 +01:00
fae5b764dd
fix(notifications): unread indicator spacing
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-23 15:53:17 +01:00
7f70471894
feat(reminders): show reminders in notifications bar
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-23 15:48:29 +01:00
e98e5a0d2f
fix(openid): use the full path when building the redirect url, not only the host
All checks were successful
continuous-integration/drone/push Build is passing
Resolves vikunja/api#1661
2023-12-20 13:23:56 +01:00
21e34d6d54 fix(deps): update dependency @intlify/unplugin-vue-i18n to v2 (#3862)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #3862
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2023-12-20 11:22:56 +00:00
208 changed files with 7632 additions and 5167 deletions

@ -42,7 +42,7 @@ steps:
# - .cache
- name: dependencies
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -55,7 +55,7 @@ steps:
# - restore-cache
- name: lint
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -66,7 +66,7 @@ steps:
- dependencies
- name: build-prod
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -77,7 +77,7 @@ steps:
- dependencies
- name: test-unit
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
commands:
- corepack enable && pnpm config set store-dir .cache/pnpm
@ -87,7 +87,7 @@ steps:
- name: typecheck
failure: ignore
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -202,7 +202,7 @@ steps:
# - .cache
- name: build
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -285,7 +285,7 @@ steps:
# - .cache
- name: build
image: node:20.10-alpine
image: node:20.11.0-alpine
pull: always
environment:
PNPM_CACHE_FOLDER: .cache/pnpm
@ -486,7 +486,7 @@ trigger:
steps:
- name: download
pull: always
image: git.lcomrade.su/root/drone-crowdin-v2
image: ghcr.io/kolaente/kolaente/drone-crowdin-v2:latest
settings:
crowdin_key:
from_secret: crowdin_key
@ -513,14 +513,14 @@ steps:
author_name: Frederick [Bot]
branch: main
commit: true
commit_message: "[skip ci] Updated translations via Crowdin"
commit_message: "chore(i18n): update translations via Crowdin"
remote: "ssh://git@kolaente.dev:9022/vikunja/frontend.git"
ssh_key:
from_secret: git_push_ssh_key
- name: upload
pull: always
image: git.lcomrade.su/root/drone-crowdin-v2
image: ghcr.io/kolaente/kolaente/drone-crowdin-v2:latest
depends_on:
- clone
settings:
@ -532,6 +532,6 @@ steps:
src/i18n/lang/en.json: en.json
---
kind: signature
hmac: 3380c4283256eea047e6228817161991d23457d09abe9d99f06e018b1eb047f4
hmac: a044c7c4db3c2a11299d4d118397e9d25be36db241723a1bbd0a2f9cc90ffdac
...

@ -1,5 +1,5 @@
/* eslint-env node */
require("@rushstack/eslint-patch/modern-module-resolution")
require('@rushstack/eslint-patch/modern-module-resolution')
module.exports = {
'root': true,
@ -7,52 +7,54 @@ module.exports = {
'browser': true,
'es2022': true,
'node': true,
'vue/setup-compiler-macros': true,
},
'extends': [
'eslint:recommended',
'plugin:vue/vue3-essential',
'plugin:vue/vue3-recommended',
'@vue/eslint-config-typescript/recommended',
],
'rules': {
'vue/html-quotes': [
'error',
'double',
],
'quotes': [
'error',
'single',
],
'comma-dangle': [
'error',
'always-multiline',
],
'semi': [
'error',
'never',
],
'quotes': ['error', 'single'],
'comma-dangle': ['error', 'always-multiline'],
'semi': ['error', 'never'],
// see https://segmentfault.com/q/1010000040813116/a-1020000041134455 (original in chinese)
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error', { vars: 'all', args: 'after-used', ignoreRestSiblings: true }],
'vue/v-on-event-hyphenation': ['warn', 'never', { 'autofix': true }],
'vue/multi-word-component-names': 'off',
'vue/multi-word-component-names': 0,
// disabled until we have support for reactivityTransform
// See https://github.com/vuejs/eslint-plugin-vue/issues/1948
// see also setting in `vite.config`
'vue/no-setup-props-destructure': 0,
// uncategorized rules:
'vue/component-api-style': ['error', ['script-setup']],
'vue/component-name-in-template-casing': ['warn', 'PascalCase'],
'vue/custom-event-name-casing': ['error', 'camelCase'],
'vue/define-macros-order': 'error',
'vue/match-component-file-name': ['error', {
'extensions': ['.js', '.jsx', '.ts', '.tsx', '.vue'],
'shouldMatchCase': true,
}],
'vue/no-boolean-default': ['warn', 'default-false'],
'vue/match-component-import-name': 'error',
'vue/prefer-separate-static-class': 'warn',
'vue/padding-line-between-blocks': 'error',
'vue/next-tick-style': ['error', 'promise'],
'vue/block-lang': [
'error',
{ 'script': { 'lang': 'ts' } },
],
'vue/no-required-prop-with-default': ['error', { 'autofix': true }],
'vue/no-duplicate-attr-inheritance': 'error',
'vue/no-empty-component-block': 'error',
'vue/html-indent': ['error', 'tab'],
// vue3
'vue/no-ref-object-destructure': 'error',
},
'parser': 'vue-eslint-parser',
'parserOptions': {
'parser': '@typescript-eslint/parser',
'ecmaVersion': 2022,
'sourceType': 'module',
'ecmaVersion': 'latest',
},
'ignorePatterns': [
'*.test.*',
'cypress/*',
],
'globals': {
'defineProps': 'readonly',
},
}

2
.nvmrc

@ -1 +1 @@
20.10.0
20.11.0

@ -9,6 +9,116 @@ All releases can be found on https://code.vikunja.io/frontend/releases.
The releases aim at the api versions which is why there are missing versions.
## [0.22.1] - 2024-01-28
### Bug Fixes
* *(auth)* Correctly construct redirect url from current window href
* *(ci)* Use working crowdin image
* *(ci)* Use working image for crowdin update step
* *(ci)* Use working crowdin image
* *(color picker)* When picking a color, the color picker should not be black afterwards
* *(editor)* List icons
* *(editor)* Use higher-contrast colors for links and code
* *(editor)* Don't bubble up changes when no changes were made
* *(editor)* Focus the editor when clicking on the whole edit container
* *(editor)* Render images without crashing
* *(editor)* Use a stable image id to prevent constant re-rendering
* *(editor)* Use manual input prompt instead of window.prompt
* *(filter)* Validate filter title field after loading a filter for edit
* *(kanban)* Ensure text and icon color only depends on the card background, not on the color scheme
* *(kanban)* Make sure the checklist summary uses the correct text color
* *(kanban)* Make sure spacing between assignees and other task details works out evenly
* *(labels)* Make color reset work
* *(labels)* Text and background combination in dark mode
* *(notifications)* Unread indicator spacing
* *(notifications)* Always left-align notification text
* *(notifications)* Read indicator size
* *(openid)* Use the full path when building the redirect url, not only the host
* *(openid)* Use the calculated redirect url when authenticating with openid providers
* *(project)* Always use the appropriate color for task estimate during deletion dialoge
* *(quick add magic)* Ensure month is removed from task text
* *(table view)* Make sure popup does not overlap
* *(task)* Don't immediately re-trigger date change when nothing changed
* *(task)* Bubble date changes from the picker up
* *(task)* Update due date when marking a task done
* *(task)* Don't show edit button when the user does not have permission to edit the task
* *(task)* Don't show assignee edit buttons and input when the user does not have the permission to edit
* *(tasks)* Make sure tasks show up if their parent task is not available in the current view
* *(tasks)* Don't load tasks multiple times when viewing list or gantt view
* *(test)* Make date assertion not brittle
* Lint ([5e991f3](5e991f3024f7856420614171ec66468eb2e2df63))
### Dependencies
* *(deps)* Update dependency @intlify/unplugin-vue-i18n to v2 (#3862)
* *(deps)* Update pnpm to v8.14.0
* *(deps)* Update dependency vue to v3.4.7 (#3873)
* *(deps)* Update dependency axios to v1.6.5 (#3871)
* *(deps)* Update dependency date-fns to v3 (#3857)
* *(deps)* Update dev-dependencies (#3861)
* *(deps)* Update dependency @kyvg/vue3-notification to v3.1.3 (#3864)
* *(deps)* Update dependency node to v20.11.0
* *(deps)* Update dependency vue-i18n to v9.9.0 (#3880)
* *(deps)* Update dependency dompurify to v3.0.8 (#3881)
* *(deps)* Update dependency floating-vue to v2.0.0 (#3883)
* *(deps)* Update tiptap to v2.1.15 (#3884)
* *(deps)* Update vueuse to v10.7.1 (#3872)
* *(deps)* Update pnpm to v8.14.1 (#3885)
* *(deps)* Update sentry-javascript monorepo to v7.93.0 (#3859)
* *(deps)* Update dependency floating-vue to v5 (#3887)
* *(deps)* Update dependency vue to v3.4.8 (#3886)
* *(deps)* Update node.js to v20.11 (#3888)
* *(deps)* Increase renovate timeout
* *(deps)* Update tiptap to v2.1.16 (#3892)
* *(deps)* Pin node.js (#3895)
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency sortablejs to v1.15.2
* *(deps)* Update vueuse to v10.7.2
* *(deps)* Update dependency floating-vue to v5.1.0
* *(deps)* Update dependency vue to v3.4.14
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies (major) (#3890)
* *(deps)* Update dependency floating-vue to v5.1.1
* *(deps)* Update dependency floating-vue to v5.2.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.15
* *(deps)* Update dependency happy-dom to v13.2.0
* *(deps)* Update sentry-javascript monorepo to v7.94.1
* *(deps)* Update dependency vite to v5.0.12
* *(deps)* Update dependency date-fns to v3.3.0
* *(deps)* Update dev-dependencies
* *(deps)* Update pnpm to v8.14.2
* *(deps)* Update dependency date-fns to v3.3.1
* *(deps)* Update dev-dependencies to v6.19.1
* *(deps)* Update pnpm to v8.14.3
* *(deps)* Update sentry-javascript monorepo to v7.95.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency axios to v1.6.6
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.97.0
* *(deps)* Update sentry-javascript monorepo to v7.98.0
* *(deps)* Update dependency axios to v1.6.7
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
### Features
* *(reminders)* Show reminders in notifications bar
* Datepicker locale support (#3878) ([92f7d9d](92f7d9ded5d56b95ba7d647eba01372f6ef682ad))
### Miscellaneous Tasks
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(perf)* Import some modules dynamically (#3179)
* Only show webhooks overview table when there are webhooks ([326bfb5](326bfb557ab359fa154b163f5dd957928f46d3ec))
* Only show webhooks overview table when there are webhooks ([631b02d](631b02d2eedc4a403b7c55f1c56ceaeca5379bf5))
## [0.22.0] - 2023-12-19
### Bug Fixes

@ -3,7 +3,7 @@
# │─││ │││ │ │
# ┘─┘┘─┘┘┘─┘┘─┘
FROM --platform=$BUILDPLATFORM node:20.10-alpine AS builder
FROM --platform=$BUILDPLATFORM node:20.11.0-alpine AS builder
WORKDIR /build

@ -1,10 +1,14 @@
# This repository was merged with the api and is now archived
You can find the new (old) code over on [vikunja/vikunja](https://kolaente.dev/vikunja/vikunja).
# Web frontend for Vikunja
> The todo app to organize your life.
[![Build Status](https://drone.kolaente.de/api/badges/vikunja/frontend/status.svg)](https://drone.kolaente.de/vikunja/frontend)
[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](LICENSE)
[![Download](https://img.shields.io/badge/download-v0.22.0-brightgreen.svg)](https://dl.vikunja.io)
[![Download](https://img.shields.io/badge/download-v0.22.1-brightgreen.svg)](https://dl.vikunja.io)
[![Translation](https://badges.crowdin.net/vikunja/localized.svg)](https://crowdin.com/project/vikunja)
This is the web frontend for Vikunja, written in Vue.js.
@ -25,7 +29,7 @@ export DOCKER_BUILDKIT=1
docker build -t vikunja/frontend .
```
Refer to Refer [to multi-platform documentation](https://docs.docker.com/build/building/multi-platform/) in order to build for the different platform.
Refer to [multi-platform documentation](https://docs.docker.com/build/building/multi-platform/) in order to build for different platforms.
## Project setup

@ -541,6 +541,86 @@ describe('Task', () => {
.should('contain', 'Success')
})
it('Can set a due date to a specific date for a task', () => {
const tasks = TaskFactory.create(1, {
id: 1,
done: false,
})
cy.visit(`/tasks/${tasks[0].id}`)
cy.get('.task-view .action-buttons .button')
.contains('Set Due Date')
.click()
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input .datepicker .show')
.click()
cy.get('.datepicker-popup .flatpickr-innerContainer .flatpickr-days .flatpickr-day.today')
.click()
cy.get('[data-cy="closeDatepicker"]')
.contains('Confirm')
.click()
const today = new Date()
const day = today.toLocaleString('default', {day: 'numeric'})
const month = today.toLocaleString('default', {month: 'short'})
const year = today.toLocaleString('default', {year: 'numeric'})
const date = `${day} ${month} ${year}, 12:00:00`
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input .datepicker-popup')
.should('not.exist')
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input')
.should('contain.text', date)
cy.get('.global-notification')
.should('contain', 'Success')
})
it('Can change a due date to a specific date for a task', () => {
const dueDate = new Date()
dueDate.setHours(12)
dueDate.setMinutes(0)
dueDate.setSeconds(0)
dueDate.setDate(1)
const tasks = TaskFactory.create(1, {
id: 1,
done: false,
due_date: dueDate.toISOString(),
})
cy.visit(`/tasks/${tasks[0].id}`)
cy.get('.task-view .action-buttons .button')
.contains('Set Due Date')
.click()
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input .datepicker .show')
.click()
cy.get('.datepicker-popup .flatpickr-innerContainer .flatpickr-days .flatpickr-day.today')
.click()
cy.get('[data-cy="closeDatepicker"]')
.contains('Confirm')
.click()
const today = new Date()
const day = today.toLocaleString('default', {day: 'numeric'})
const month = today.toLocaleString('default', {month: 'short'})
const year = today.toLocaleString('default', {year: 'numeric'})
const date = `${day} ${month} ${year}, 12:00:00`
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input .datepicker-popup')
.should('not.exist')
cy.get('.task-view .columns.details .column')
.contains('Due Date')
.get('.date-input')
.should('contain.text', date)
cy.get('.global-notification')
.should('contain', 'Success')
})
it('Can set a reminder', () => {
TaskReminderFactory.truncate()
const tasks = TaskFactory.create(1, {
@ -645,7 +725,7 @@ describe('Task', () => {
.click()
cy.get('.reminder-options-popup .card-content .reminder-period input')
.first()
.type('10')
.type('{selectall}10')
cy.get('.reminder-options-popup .card-content .reminder-period select')
.first()
.select('days')
@ -771,7 +851,7 @@ describe('Task', () => {
.should('exist')
})
it.only('Can check items off a checklist', () => {
it('Can check items off a checklist', () => {
const tasks = TaskFactory.create(1, {
id: 1,
description: `
@ -858,7 +938,7 @@ describe('Task', () => {
method: 'PUT',
url: `${Cypress.env('API_URL')}/tasks/${tasks[0].id}/attachments`,
headers: {
'Authorization': `Bearer ${window.localStorage.getItem('token')}`,
'Authorization': `Bearer ${window.localStorage.getItem('token')}`,
'Content-Type': 'multipart/form-data',
},
body: formData,

@ -13,7 +13,7 @@
},
"homepage": "https://vikunja.io/",
"funding": "https://opencollective.com/vikunja",
"packageManager": "pnpm@8.12.1",
"packageManager": "pnpm@8.15.1",
"keywords": [
"todo",
"productivity",
@ -22,6 +22,7 @@
"gantt",
"kanban"
],
"type": "module",