vikunja/frontend/src/helpers
kolaente a9adc3490d
fix(positions): detect and repair duplicate task positions automatically (#1998)
Relates to:
https://community.vikunja.io/t/reordering-not-possible-position-value-the-same-for-different-tasks/4078

Duplicate positions can occur due to race conditions or historical bugs, causing tasks to appear in the wrong order or jump around when the page is refreshed.

This change adds a `repair-task-positions` CLI command to detect and resolve task position conflicts, with dry-run preview option.
Also implemented automatic conflict detection and resolution to ensure
unique task positions.

🐰 Positions once conflicted, clustered tight,
But now we nudge them back into the light!
MinSpacing guards precision from decay,
While conflicts heal and duplicates give way. 
2025-12-20 19:38:28 +01:00
..
color feat(gantt): rebuild the gantt chart (#1001) 2025-08-12 16:33:50 +02:00
time fix: prevent date picker from selecting past times at hour breakpoints (#1814) 2025-11-13 10:46:24 +01:00
attachments.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
auth.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
calculateItemPosition.ts fix(positions): detect and repair duplicate task positions automatically (#1998) 2025-12-20 19:38:28 +01:00
calculateTaskPosition.test.ts fix(positions): detect and repair duplicate task positions automatically (#1998) 2025-12-20 19:38:28 +01:00
case.ts feat: switch to change-case lib 2024-06-18 06:30:39 +00:00
checkAndSetApiUrl.ts feat(dev): use proxy server in dev mode (#3069) 2025-03-09 13:40:57 +00:00
checklistFromText.test.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
checklistFromText.ts feat: consistent sorting 2025-06-02 22:27:03 +02:00
closeWhenClickedOutside.ts fix: prevent emoji picker from closing when clicking search input (#1959) 2025-12-09 12:59:01 +01:00
createAsyncComponent.ts chore: fix indentation 2025-06-19 10:53:35 +02:00
downloadBlob.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
editorContentEmpty.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
editorDraftStorage.ts feat(editor): automatically save draft comments locally (#1868) 2025-11-24 22:23:58 +00:00
fetcher.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
filters.test.ts fix(filters): support project filter in parentheses (#1647) 2025-10-13 11:10:22 +02:00
filters.ts fix(filters): support project filter in parentheses (#1647) 2025-10-13 11:10:22 +02:00
getBlobFromBlurHash.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
getFullBaseUrl.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
getHumanSize.ts chore: fix indentation 2025-06-19 10:53:35 +02:00
getInheritedBackgroundColor.ts chore: fix indentation 2025-06-19 10:53:35 +02:00
getProjectTitle.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
hourToDaytime.test.ts chore: add missing eof newlines (#969) 2025-06-17 09:11:32 +00:00
hourToDaytime.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
inputPrompt.ts fix(editor): make url bar appear at the correct position when scrolling (#1963) 2025-12-10 20:40:53 +00:00
isAppleDevice.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
isEmail.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
isValidHttpUrl.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
parseDateOrNull.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
parseSubtasksViaIndention.test.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
parseSubtasksViaIndention.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
playPop.ts feat: simplify playPopSound setting check 2024-07-05 14:24:53 +02:00
projectView.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
randomId.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
redirectToProvider.ts feat: assign users to teams via OIDC claims (#1393) 2024-03-02 08:47:10 +00:00
replaceAll.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
saveCollapsedBucketState.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
saveLastVisited.ts chore: move frontend files 2024-02-07 14:56:56 +01:00
scrollIntoView.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
setTitle.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
useFlatpickrLanguage.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
utils.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00
validatePasswort.ts fix: add newline at end of line (#827) 2025-05-24 13:57:47 +02:00