Commit Graph

220 Commits (d3530a18596e64cb40ac11232c08d6b68be34a44)

Author SHA1 Message Date
Ferdinand Thiessen 9458225989
fix(files_trashbin): disable bulk download for trashbin
The backend does not allow bulk download within the trashbin,
so we need to disable this also on the frontend.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-03 18:20:32 +07:00
skjnldsv b58497d2a3 fix(cypress): wait for toast to appear
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-28 16:03:54 +07:00
skjnldsv 2131496291 fix(files): do not show extension warning for folders renaming
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-19 15:36:13 +07:00
skjnldsv 15147625dc fix(files): properly show file not found error
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 12:42:23 +07:00
Ferdinand Thiessen 8003b270c5
feat(sharing): Allow to set default view mode for public shares
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-11 12:19:05 +07:00
skjnldsv 44c0e1db51 chore: compile assets
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>

Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>

Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-02-07 09:26:43 +07:00
skjnldsv 738447bcd5 chore(files): add actions cypress tests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-07 09:22:54 +07:00
Andy Scherzinger b9b2d7b379
Merge pull request #50695 from nextcloud/backport/50655/stable31
[stable31] enh: Fix display default expire date, add tests & tiny refactors
2025-02-06 22:04:43 +07:00
Ferdinand Thiessen a5f15f836f
fix(settings): Also sanitize fediverse and twitter handle in the frontend
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 15:46:15 +07:00
nfebe fe08fd0dbe test(files_sharing): Check that default expiration date is shown b4 create share
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-02-06 12:55:10 +07:00
Ferdinand Thiessen 5bb4fc5997
fix(files): Do not download files with `openfile` query flag
Instead of downloading files, if there is no other default action,
we should just open the details tab.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 10:14:50 +07:00
Ferdinand Thiessen 5c2cb2df9c test(files): Make scrolling tests independent from magic values
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 07:23:58 +07:00
Ferdinand Thiessen 43180134a0 fix(files): Correctly scroll selected file into view
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 07:23:58 +07:00
Ferdinand Thiessen b5313e4f9f test: Add Cypress command for deleting files
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-06 07:23:58 +07:00
Christopher Ng d5532a9d7d chore(cypress): Finish comment
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 13:17:42 +07:00
Christopher Ng 16bd639619 fix(files): Fix casing
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 13:17:42 +07:00
Christopher Ng 94858691d3 chore(files): Change "filename" to "file name"
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 13:17:42 +07:00
nfebe 28cf67a157 test(files_sharing): add e2e tests for public link sharing
This commit introduces end-to-end tests for various public link sharing scenarios in the `files_sharing` app. It validates the behavior under multiple configurations:

- Password and expiration date enforced
- Password enforced with a default expiration date
- Expiration date enforced with optional password
- Default password and expiration date without enforcement
- Password enforced, expiration date set but not enforced
- Both password and expiration date not enforced, but defaults set
- Password not enforced, expiration date enforced
- Password not enforced, default expiration date set
- Password and expiration date not enforced with no defaults

The tests ensure proper validation and functionality of the configurations, leveraging the `setupData` and `createShare` utilities.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-02-03 11:49:33 +07:00
nfebe 161a9e786a refactor: Modularize setup-public-share.ts
This update enhances the testing framework for public sharing by
improving the setup and management of share contexts.
It refactors the code to make the `createShare` function reusable externally,
ensuring better testability and flexibility.
Additionally, the update optimizes share permission adjustments and
improves state management, making public share setups more efficient and maintainable.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-02-03 11:49:33 +07:00
Ferdinand Thiessen 6dbd8da40f fix(theming): Ensure to only send valid URLs to backend
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-27 17:56:35 +07:00
Ferdinand Thiessen 344c8a409c
fix(files): Ensure favorites set in sidebar work
When marking a file as favorite from within the sidebar make sure it
really works, this fixes two issues:
1. The source needs to be the plain source not URL encoded, as otherwise
   the source of the node would be encoded twice (and show with encoding
   in the navigation)
2. The store should also listen for the update events as the sidebar has
   no access to the real node to update it, instead the store should -
   as long as we only have the legacy sidebar - update the node when
   added or removed as favorite.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-21 17:55:53 +07:00
Ferdinand Thiessen 4a9954f5ef
fix(files): File type filter UI sync with filter state
When changing the folder the filter will be re-mounted by the file list,
so we need to pass the current state of the filter to the filter UI.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-17 08:59:17 +07:00
Ferdinand Thiessen a0b7dc974f
Merge pull request #50206 from nextcloud/fix/50177/movy-copy-e2e-tests
test(e2e): copy-move actions with insufficient share permissions
2025-01-16 18:43:45 +07:00
Ferdinand Thiessen 2556da5957
test(dashboard): Add regression test for loading unneeded data
Prevent a regression of https://github.com/nextcloud/server/issues/48403

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-16 11:36:37 +07:00
Maksim Sukharev 868517f6d2 test(e2e): hide move dialog action if destination has no CREATE permission
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2025-01-16 10:50:48 +07:00
Richard Steinmetz 835994a811
fix(files): sort not working after changing views
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-01-16 08:57:19 +07:00
Ferdinand Thiessen cec29e5547
test: Add end-to-end test for share expiration date
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-15 16:10:46 +07:00
Ferdinand Thiessen 182acb1e29
fix(template): Use `<div>` instead of `<main>` to support Vue3 apps mounting
Vue3 does not replace the element while mounting but only renders within
(replace inner HTML).
So it would result in two stacked `<main>` elements which is invalid and
an accessibility issue.
Instead we just use a `<div>` element for mounting.

For Vue2 apps this does not change anything as the whole element will be
replaced with a new `<main>` element.
For vanilla apps this will slightly decrease the accessibility as the
main landmark is now missing, but this is not a hard accessibility issue
as it would be for Vue3 apps having two main elements.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-14 09:18:43 +07:00
Richard Steinmetz 157d26f7b4
test(cypress): make select range of files with shift key more reliable
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-01-08 21:33:09 +07:00
skjnldsv 43b3ad13e0 fix(cypress): flaky live photo test grid_view trigger issue
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-01-03 10:24:30 +07:00
Ferdinand Thiessen 1df23140b8 fix: Redirect user to login if session is terminated
If a session timed out or was closed in another tab,
then currently the user gets random error messages.
This intercepts 401 responses (should only happen if logged out, or the
users does something wrong).

If we get a 401, we make sure its because of the session,
by checking if the user can access the files app.
If that is also the case we forward the user to the login page
and set the redirect URL to the last used URL.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-12-19 18:56:46 +07:00
skjnldsv e8b0bdc5f4 perf(files_trashbin): use empty trashbin endpoint instead of batch delete requests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-12 10:08:38 +07:00
skjnldsv 46573b75a6 feat(files_trashbin): add cypress tests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-12 10:08:38 +07:00
skjnldsv 232651774e fix(files): cancel renaming on enter if no file name changes
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-10 10:31:59 +07:00
Louis Chemineau 8be7b9ea40
fix: Copying a live photo to a folder with a conflicting mov file
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-12-04 16:23:39 +07:00
Louis Chemineau 10c6f70778
test: Copying a folder containing live photos
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-12-04 15:38:35 +07:00
Christopher Ng 228d8c9de6 test(files): Update tests
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-12-03 16:25:34 +07:00
Louis Chemineau ebda7b45f6
chore: Update @nextcloud/cypress to v1.0.0-beta.11
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-11-25 16:22:09 +07:00
skjnldsv 99a734636e fix(systemtags): enhance create tag in tag picker UX
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-15 11:09:56 +07:00
skjnldsv b15fdfd40e chore(profile): move profile app from core to apps
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-14 10:25:02 +07:00
skjnldsv 191e839a5f fix(files): open sidebar on sharing tab by default for files
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-08 16:41:25 +07:00
skjnldsv 54954bf934 chore(files): add selection cypress tests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-07 19:01:59 +07:00
Ferdinand Thiessen fa502614fa test: Add proper styles for Cypress component tests
This also fixes Typescript issue but requires to slightly
adjust the Navigation test as the progress bar is not visible (because it is overlayed by another element).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-29 14:28:58 +07:00
skjnldsv 3e6d18aaf6 fix(files_sharing): fix view only actions button selector
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-10-29 09:10:56 +07:00
skjnldsv d51cf4536c feat(systemtags): add cypress tests and fix a few logic issues
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-10-29 09:08:31 +07:00
Ferdinand Thiessen d0c660a1da
fix(files): Adjust NavigationQuota for Nextcloud 30 design
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-21 22:56:11 +07:00
Ferdinand Thiessen ef5a9cf00d
fix(files): Ensure renaming state is correctly reset
Problem: Is a node is renamed and the new name is out of the current
visible list of nodes the component will be recycled, this means
the props will change, so when the `onRename` functions is about to reset
the state the `this.source` will point to a different node.

To fix this, but also to separate business logic from visual representation,
the logic is moved into the renaming store and the component is only
responsible for rendering.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-15 18:20:16 +07:00
Ferdinand Thiessen 0f6760c810
feat(files): Make the files download action use WebDAV zip download
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-28 13:18:29 +07:00
Ferdinand Thiessen f02bcf3471
test(files): Add tests for path handling
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-20 11:09:17 +07:00
Ferdinand Thiessen 4a90d5328c
test: Add end-to-end tests for new public share Vue UI
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-06 03:38:48 +07:00