[PR #2029] [CLOSED] feat(repeat): add more precise recurrence settings #9721

Closed
opened 2026-04-23 09:10:27 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/go-vikunja/vikunja/pull/2029
Author: @IAMSamuelRodda
Created: 12/28/2025
Status: Closed

Base: mainHead: main


📝 Commits (1)

  • 6e55fd0 feat(repeat): migrate from legacy repeat fields to RFC 5545 RRULE

📊 Changes

41 files changed (+1204 additions, -731 deletions)

View changed files

📝 frontend/src/components/tasks/partials/KanbanCard.vue (+3 -3)
📝 frontend/src/components/tasks/partials/RepeatAfter.vue (+130 -53)
📝 frontend/src/components/tasks/partials/SingleTaskInProject.vue (+13 -5)
📝 frontend/src/components/tasks/partials/SingleTaskInlineReadonly.vue (+2 -1)
frontend/src/helpers/rrule.ts (+175 -0)
📝 frontend/src/helpers/time/period.ts (+22 -1)
📝 frontend/src/i18n/lang/en.json (+12 -0)
frontend/src/modelSchema/common/repeats.ts (+0 -40)
📝 frontend/src/modelTypes/ITask.ts (+4 -5)
📝 frontend/src/models/task.ts (+2 -22)
📝 frontend/src/modules/parseTaskText.test.ts (+42 -44)
📝 frontend/src/modules/parseTaskText.ts (+18 -21)
📝 frontend/src/services/task.ts (+0 -18)
📝 frontend/src/stores/tasks.ts (+2 -6)
frontend/src/types/IRepeatAfter.ts (+0 -16)
frontend/src/types/IRepeatMode.ts (+0 -7)
📝 frontend/src/views/tasks/TaskDetailView.vue (+37 -5)
📝 go.mod (+1 -0)
📝 go.sum (+2 -0)
📝 pkg/caldav/caldav.go (+6 -34)

...and 21 more files

📄 Description

Closes #1369

This adds:

  • Quarterly (every 3 months) quick button
  • Semi-annual (every 6 months) quick button
  • Monthly/yearly repeat modes with fixed day selection (1-31)
  • Tooltip on repeat icon showing current configuration
  • Edge case handling for months with fewer days (e.g., day 31 → Feb 28)

Backend changes:

  • New repeat_day field for fixed day of month repeats
  • Updated addOneMonthToDateWithDay helper for date calculations

Frontend changes:

  • "On day" dropdown when Monthly mode selected
  • Repeat tooltip on task list items
  • i18n strings for new UI elements

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/go-vikunja/vikunja/pull/2029 **Author:** [@IAMSamuelRodda](https://github.com/IAMSamuelRodda) **Created:** 12/28/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `main` --- ### 📝 Commits (1) - [`6e55fd0`](https://github.com/go-vikunja/vikunja/commit/6e55fd0a2fb9616627ad00a32b08345a54893c34) feat(repeat): migrate from legacy repeat fields to RFC 5545 RRULE ### 📊 Changes **41 files changed** (+1204 additions, -731 deletions) <details> <summary>View changed files</summary> 📝 `frontend/src/components/tasks/partials/KanbanCard.vue` (+3 -3) 📝 `frontend/src/components/tasks/partials/RepeatAfter.vue` (+130 -53) 📝 `frontend/src/components/tasks/partials/SingleTaskInProject.vue` (+13 -5) 📝 `frontend/src/components/tasks/partials/SingleTaskInlineReadonly.vue` (+2 -1) ➕ `frontend/src/helpers/rrule.ts` (+175 -0) 📝 `frontend/src/helpers/time/period.ts` (+22 -1) 📝 `frontend/src/i18n/lang/en.json` (+12 -0) ➖ `frontend/src/modelSchema/common/repeats.ts` (+0 -40) 📝 `frontend/src/modelTypes/ITask.ts` (+4 -5) 📝 `frontend/src/models/task.ts` (+2 -22) 📝 `frontend/src/modules/parseTaskText.test.ts` (+42 -44) 📝 `frontend/src/modules/parseTaskText.ts` (+18 -21) 📝 `frontend/src/services/task.ts` (+0 -18) 📝 `frontend/src/stores/tasks.ts` (+2 -6) ➖ `frontend/src/types/IRepeatAfter.ts` (+0 -16) ➖ `frontend/src/types/IRepeatMode.ts` (+0 -7) 📝 `frontend/src/views/tasks/TaskDetailView.vue` (+37 -5) 📝 `go.mod` (+1 -0) 📝 `go.sum` (+2 -0) 📝 `pkg/caldav/caldav.go` (+6 -34) _...and 21 more files_ </details> ### 📄 Description Closes #1369 This adds: - Quarterly (every 3 months) quick button - Semi-annual (every 6 months) quick button - Monthly/yearly repeat modes with fixed day selection (1-31) - Tooltip on repeat icon showing current configuration - Edge case handling for months with fewer days (e.g., day 31 → Feb 28) Backend changes: - New `repeat_day` field for fixed day of month repeats - Updated `addOneMonthToDateWithDay` helper for date calculations Frontend changes: - "On day" dropdown when Monthly mode selected - Repeat tooltip on task list items - i18n strings for new UI elements --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-23 09:10:27 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vikunja#9721