Dominik Pschenitschni
6a2a8c106b
fix: LinkSharing race condition (#2932)
All checks were successful
continuous-integration/drone/push Build is passing
This fixes a race condition and should potential fix some flaky Cypress tests: <img width="630" alt="Screenshot 2024-12-12 at 10.53.56.png" src="attachments/21dce132-7f1a-4e19-b14c-b0a868daa20e"> ----- Before `selectedView` was filled with an initial value that depended on the the related project being loaded before the shared links, since the assignment happened directly after the views have been loaded. This fix ensures that the correct project has been loaded before it's accessed to look up the id of the first view. ----- @konrad: Now that I finished this PR I'm a bit unsure if it's the "correct" way to solve this. Because for existing share links it might be better if the links save the selected view as a property. Currently a change of the view only changes the created link in the frontend. When you change the view and reload the link stays the same. I'm unsure if editing the selected view is something that we want (or is even possible depending on what the hash represents). So maybe we should only support the following: The user selects a view when creating a linkShare and and different from before it will be saved. Even with those additional changes we still need something similar to the changes of this PR, since we would still need to load the available view ids for the creation of a new link share. Reviewed-on: #2932 Co-authored-by: Dominik Pschenitschni <mail@celement.de> Co-committed-by: Dominik Pschenitschni <mail@celement.de>
Vikunja
The Todo-app to organize your life.
If Vikunja is useful to you, please consider buying me a coffee, sponsoring me on GitHub or buying a sticker pack. I'm also offering a hosted version of Vikunja if you want a hassle-free solution for yourself or your team.
Table of contents
Security Reports
If you find any security-related issues you don't want to disclose publicly, please use the contact information on our website.
Features
See the features page on our website for a more exhaustive list or try it on try.vikunja.io!
Docs
All docs can be found on the Vikunja home page.
Roadmap
See the roadmap (hosted on Vikunja!) for more!
Contributing
Please check out the contribuition guidelines on the website.
License
This project is licensed under the AGPLv3 License. See the LICENSE file for the full license text.
Description
The to-do app to organize your life. Public API Roadmap here:
https://my.vikunja.cloud/share/QFyzYEmEYfSyQfTOmIRSwLUpkFjboaBqQCnaPmWd/auth?view=64
Languages
Go
73.2%
Vue
15%
TypeScript
10.1%
SCSS
0.9%
Smarty
0.3%
Other
0.4%