kolaente
3f0bf71d30
fix: allow middle-of-text dates when followed by time expressions ( #2195 )
...
Reworked matchDateAtBoundary() to use a single regex pass instead of
two-pass start/end anchoring. Middle-of-text matches are now accepted
when followed by a time expression (at/@ prefix), so inputs like
"meeting 9/11 at 10:00" still parse correctly while "The 9/11 Report"
is rejected.
2026-02-06 10:57:50 +01:00
kolaente
cee258edc3
refactor: remove unnecessary comment from getDateFromText()
2026-02-06 10:57:50 +01:00
kolaente
61448bb028
refactor: remove unnecessary flags parameter from matchDateAtBoundary()
2026-02-06 10:57:50 +01:00
kolaente
c544886524
test: add positive boundary tests for date parsing ( #2195 )
2026-02-06 10:57:50 +01:00
kolaente
829b10bfd2
test: add dot-separated middle-of-text date false positive test ( #2195 )
2026-02-06 10:57:50 +01:00
kolaente
a82efa01b5
fix: restrict numeric date regex matching to text boundaries ( #2195 )
2026-02-06 10:57:50 +01:00
kolaente
1013305fc6
feat: add matchDateAtBoundary() helper for position-aware date matching ( #2195 )
2026-02-06 10:57:50 +01:00
kolaente
e9b10e67f3
test: add failing tests for middle-of-text date false positives ( #2195 )
2026-02-06 10:57:50 +01:00
kolaente
b741c2d891
fix: add touch CSS properties to list view for mobile drag-and-drop
...
Adds user-select, touch-action, and webkit-touch-callout CSS to the list
view's draggable task items, matching what KanbanCard.vue already has.
Without these properties, the browser's native long-press text selection
fires before SortableJS's 1-second touch delay expires, preventing drag
from ever starting on mobile devices.
Ref: https://community.vikunja.io/t/missing-positioning-option-in-list-view/4278
2026-02-05 23:51:38 +01:00
Frederick [Bot]
1ddb4f1438
chore(i18n): update translations via Crowdin
2026-02-03 01:15:10 +00:00
Frederick [Bot]
2becfcc597
chore(i18n): update translations via Crowdin
2026-01-31 01:08:04 +00:00
rhclayto
cf029cef0c
feat: add option to send Basic Auth header with webhook requests ( #2137 )
...
Resolves https://github.com/go-vikunja/vikunja/issues/2136
Docs PR: https://github.com/go-vikunja/website/pull/284
2026-01-30 15:07:31 +01:00
Frederick [Bot]
f7503c0bfe
chore(i18n): update translations via Crowdin
2026-01-29 01:11:11 +00:00
kolaente
e4b99dd31f
fix(nav): show shared sub-projects in sidebar when the parent is inaccessible ( #2176 )
...
Fixes #2175
2026-01-28 16:09:46 +00:00
kolaente
e5da54e58a
fix(editor): prevent crash when exiting edit mode in tiptap
...
Use v-show instead of v-if for EditorToolbar and BubbleMenu to avoid
a race condition between Vue's DOM reconciliation and tiptap's internal
DOM manipulation during unmount. This fixes the "Cannot read properties
of null (reading 'insertBefore')" error that occurred when saving a
task description.
Adds regression test to verify the fix.
Upstream issue: https://github.com/ueberdosis/tiptap/issues/7342
Fixes: https://github.com/go-vikunja/vikunja/issues/1770
2026-01-27 14:03:02 +01:00
renovate[bot]
f216fea2b3
fix(deps): update tiptap to v3.17.0
2026-01-27 14:03:02 +01:00
kolaente
72a928dcce
chore: use correct repo and issue url
2026-01-26 12:21:24 +01:00
renovate[bot]
662f3a1ea8
chore(deps): update dev-dependencies (major) ( #1375 )
2026-01-25 21:54:47 +01:00
renovate[bot]
233908b30b
chore(deps): update dependency sass-embedded to v1.97.3 ( #2150 )
...
This PR contains the following updates:
| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/ ) |
[Confidence](https://docs.renovatebot.com/merge-confidence/ ) |
|---|---|---|---|
| [sass-embedded](https://redirect.github.com/sass/embedded-host-node ) |
[`1.97.2` →
`1.97.3`](https://renovatebot.com/diffs/npm/sass-embedded/1.97.2/1.97.3 )
|

|

|
---
### Release Notes
<details>
<summary>sass/embedded-host-node (sass-embedded)</summary>
###
[`v1.97.3`](https://redirect.github.com/sass/embedded-host-node/blob/HEAD/CHANGELOG.md#1973 )
[Compare
Source](https://redirect.github.com/sass/embedded-host-node/compare/1.97.2...1.97.3 )
- Fix a bug where nesting an at-rule within multiple style rules in
plain CSS
could cause outer style rules to be omitted.
</details>
---
### Configuration
📅 **Schedule**: Branch creation - Between 12:00 AM and 03:59 AM ( * 0-3
* * * ) (UTC), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/go-vikunja/vikunja ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-25 08:59:41 +01:00
renovate[bot]
83474b76d3
fix(deps): update dependency @sentry/vue to v10.36.0 ( #2147 )
...
This PR contains the following updates:
| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/ ) |
[Confidence](https://docs.renovatebot.com/merge-confidence/ ) |
|---|---|---|---|
|
[@sentry/vue](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/vue )
([source](https://redirect.github.com/getsentry/sentry-javascript )) |
[`10.35.0` →
`10.36.0`](https://renovatebot.com/diffs/npm/@sentry%2fvue/10.35.0/10.36.0 )
|

|

|
---
### Release Notes
<details>
<summary>getsentry/sentry-javascript (@​sentry/vue)</summary>
###
[`v10.36.0`](https://redirect.github.com/getsentry/sentry-javascript/compare/10.35.0...10.36.0 )
[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript/compare/10.35.0...10.36.0 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/go-vikunja/vikunja ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-24 19:30:26 +01:00
kolaente
ff01f8e859
feat(api-tokens): support title and scopes query parameters ( #2143 )
...
This allows external integrations to link directly to the API token creation page with pre-selected title and permission scopes. URLs can now use `?title=Name&scopes=group:perm,group:perm` format to pre-populate the form.
Example URL:
```
/user/settings/api-tokens?title=My%20Integration&scopes=tasks:create,tasks:delete,projects:read_all
```
2026-01-24 18:08:23 +00:00
kolaente
1731b03c22
fix(editor): prevent file upload overlay when dragging text from editor ( #2148 )
...
Fixes the file upload overlay incorrectly appearing when dragging text from within the TipTap description editor to outside of it.
Fixes #1663
2026-01-24 18:41:42 +01:00
kolaente
acbb06e337
feat(frontend): preserve Gantt date range when switching views ( #2141 )
...
Adds a `viewFilters` Pinia store that stores query params per view ID to sync Gantt filters to the store whenever they change. This persists the custom date ranges when switching between views.
Fixes #2124
2026-01-24 13:12:35 +01:00
renovate[bot]
47bfb6a424
chore(deps): update dev-dependencies
2026-01-24 13:01:45 +01:00
renovate[bot]
8e3ed45c85
chore(deps): update pnpm to v10.28.1
2026-01-24 00:01:17 +01:00
kolaente
131f78277d
feat(quick add magic): add more test cases
2026-01-24 00:00:46 +01:00
kolaente
8419794b65
fix(quick-add-magic): prevent parsing partial keywords in words ( #2140 )
...
- Fixed date parser incorrectly extracting date components from within
words
- "Renovation - 2nd Floor Bath" no longer becomes "Reation - Floor Bath"
with a due date of November 2nd
## Changes
- `getMonthFromText` now requires word boundaries, preventing "nov" from
matching inside "Renovation" or "mar" inside "Remark"
- `getDayFromText` now only matches ordinals when followed by
end-of-string, time expressions, or month names, preventing "2nd Floor"
from being parsed as a date
Resolves
https://community.vikunja.io/t/quick-add-magic-unintended-date-parsing/4259
2026-01-23 22:23:42 +00:00
renovate[bot]
663e7ba3d4
fix(deps): update dependency @sentry/vue to v10.35.0
2026-01-23 17:21:45 +01:00
kolaente
c11ea4c87f
fix(unsplash): add utm parameters to author links
...
Resolves https://github.com/go-vikunja/vikunja/issues/2127
2026-01-23 11:58:34 +01:00
renovate[bot]
06e90bc9c2
chore(deps): update dev-dependencies
2026-01-22 11:43:42 +01:00
renovate[bot]
fa142308d2
fix(deps): update dependency vue to v3.5.27
2026-01-22 11:01:11 +01:00
renovate[bot]
34472d1358
fix(deps): update dependency ufo to v1.6.3
2026-01-18 17:37:50 +01:00
renovate[bot]
c09e63d7d8
chore(deps): update dependency happy-dom to v20.3.0
2026-01-18 17:37:43 +01:00
renovate[bot]
2a74633e4f
chore(deps): update dependency @types/node to v22.19.6
2026-01-17 21:59:09 +01:00
renovate[bot]
740ea79837
fix(deps): update dependency @sentry/vue to v10.34.0
2026-01-17 21:58:58 +01:00
renovate[bot]
81076e5309
chore(deps): update dev-dependencies to v8.53.0
2026-01-16 10:18:10 +01:00
renovate[bot]
f85e30fcb1
fix(deps): update dependency @sentry/vue to v10.33.0
2026-01-15 15:08:19 +01:00
renovate[bot]
1d660ce4f3
chore(deps): update node.js to v24.13.0
2026-01-15 09:43:02 +01:00
renovate[bot]
05e01b4212
chore(deps): update dev-dependencies
2026-01-15 09:42:53 +01:00
kolaente
e96c20def9
fix(project): error `can't access property "isArchived", V.value is null` when opening list view of some projects
2026-01-14 22:05:35 +01:00
kolaente
948a73f3b9
fix(task): done button styling
2026-01-14 21:56:24 +01:00
renovate[bot]
bdd3db68fb
chore(deps): update dependency @types/node to v22.19.5
2026-01-13 12:36:01 +01:00
renovate[bot]
05adfd513f
chore(deps): update pnpm to v10.28.0
2026-01-13 12:35:11 +01:00
renovate[bot]
d3639af7bc
chore(deps): update dev-dependencies
2026-01-11 09:11:30 +01:00
renovate[bot]
e97798574c
fix(deps): update dependency @fortawesome/vue-fontawesome to v3.1.3 ( #2079 )
...
This PR contains the following updates:
| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/ ) |
[Confidence](https://docs.renovatebot.com/merge-confidence/ ) |
|---|---|---|---|
|
[@fortawesome/vue-fontawesome](https://redirect.github.com/FortAwesome/vue-fontawesome )
| [`3.1.2` →
`3.1.3`](https://renovatebot.com/diffs/npm/@fortawesome%2fvue-fontawesome/3.1.2/3.1.3 )
|

|

|
---
### Release Notes
<details>
<summary>FortAwesome/vue-fontawesome
(@​fortawesome/vue-fontawesome)</summary>
###
[`v3.1.3`](https://redirect.github.com/FortAwesome/vue-fontawesome/blob/HEAD/CHANGELOG.md#313---2026-01-07 )
[Compare
Source](https://redirect.github.com/FortAwesome/vue-fontawesome/compare/3.1.2...3.1.3 )
##### Changed
- ci.yml update for node-versions
- a markdown lint fixup in CONTRIUBUTING.md
- update vitest version to 4.0.16 in `package.json`
***
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/go-vikunja/vikunja ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi43NC41IiwidXBkYXRlZEluVmVyIjoiNDIuNzQuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-10 22:42:20 +01:00
kolaente
e702785cf8
fix(filter): correct filter autocomplete for project names with spaces ( #2012 )
...
Filter expressions with multi-word values (such as project names with
spaces) are now automatically quoted to preserve them correctly as
single tokens in the filter syntax.
Fixes #2010
🐰 A filter's journey, refined with care,
Multi-word values now wear quotes fair,
Offsets aligned by the rabbit's precision,
Autocomplete flows with mathematical vision,
From comma to space, each boundary divine! ✨
2026-01-10 22:18:34 +01:00
kolaente
c0ba7210f3
chore: remove redundant is-danger class
2026-01-10 21:59:06 +01:00
kolaente
4f9681bde8
chore(form): add autocomplete attributes to a few fields
2026-01-10 21:59:06 +01:00
kolaente
a8f10a6e15
fix(register): explicitely check for username valid === true
2026-01-10 21:59:06 +01:00
kolaente
edebed151a
chore(team): add disabled prop to NewTeam checkbox
2026-01-10 21:59:06 +01:00