Commit graph

346 commits

Author SHA1 Message Date
Ferdinand Thiessen
e712104e58
feat(files): allow to ignore warning to change file type
* Missing pieces of https://github.com/nextcloud/server/issues/46528
  * Add checkbox to not show this dialog again
  * Add user config as suggested by designers in files settings to
    reenable or diable this behavior.
  * Fix behavior of dialog: It says "keep .ext" but it does not keep the
    extension but cancels the operation. From the button label the user
    expects that the operation is continued but with the old extension.
  * Added more test coverage by adding component tests.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-25 02:16:56 +01:00
Ferdinand Thiessen
b06f5ba4c4
refactor: Migrate nextcloud-vue usage to new import schema
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-20 02:28:13 +01:00
skjnldsv
c87a6ba811 fix(files): attach sidebar to main content for vue debug
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 16:01:24 +01:00
skjnldsv
4f795e144c fix(files): properly show file not found error
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-18 10:53:23 +01:00
Ferdinand Thiessen
fc9108b11a
fix(files): only send config update requests if user is logged in
Since we use the files app also for public shares it is not guaranteed
that there is a user logged in, in that case the update for user / view
config will fail.
So ensure there is a user or do not send a request.

Also refactor both stores to setup styles to fix (remove) initialization hack,
which causes Typescript issues.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-08 14:28:42 +01:00
skjnldsv
85ba80b8ce fix(files): properly update store on files conversions success
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-02-04 16:38:34 +01:00
Christopher Ng
a447b21805 fix(files): Fix casing
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 12:22:16 +01:00
Christopher Ng
ad9b07d85e chore(files): Change "filename" to "file name"
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-02-04 12:22:16 +01:00
Christopher Ng
7a8d069907 perf(files): Check node type property instead of instance
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-01-29 15:32:10 -08: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 +01:00
Ferdinand Thiessen
b5b28fda16
fix(files): Properly reset all file list filters on view change
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-21 16:38:06 +01: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 +01:00
Louis Chemineau
b1bc793940
fix: Remove duplicate propfind call
This also was an XHR call which is not going through the end to end encryption proxy

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-01-15 11:20:01 +01:00
Louis Chemineau
5d078b3234
fix: Do not duplicate / in davPath
`davRootPath` already contains a leading `/`

Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-01-09 17:43:12 +01:00
Louis Chemineau
ec778a0039 fix: Use displayname as sidebar title
Keep the fallback with this.fileInfo as this.node could be null

Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-01-09 15:38:47 +00:00
skjnldsv
76e728eb98 feat(systemtags): add systemtag manage keyboard shortcut
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-17 10:18:57 +01:00
skjnldsv
f94fbc7d09 feat(files): add keyboard shortcuts helper section
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-17 10:18:57 +01:00
skjnldsv
46573b75a6 feat(files_trashbin): add cypress tests
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-12 10:08:38 -08:00
skjnldsv
34299e6a5d fix(files): protect filelist actions with try...catch
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-12 10:08:38 -08:00
skjnldsv
9c08d3b0b8 fix(files_trashbin): update @nextcloud/files and adjust api + l10n fix
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-12-12 10:08:38 -08:00
Christopher Ng
0af875d713 feat(files): Right-align list actions
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-12-12 10:08:38 -08:00
Christopher Ng
f149bd0657 chore: Remove unused icon
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-12-03 16:25:34 -08:00
Christopher Ng
5f3bd3e30d feat(files): Update caption for screen readers when uploading is not possible
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-12-03 16:25:34 -08:00
Luka Trovic
a2fcf2f69b feat(templates): make second click as confirmation on templates picker
Signed-off-by: Luka Trovic <luka@nextcloud.com>
2024-12-02 20:19:24 +00:00
Ferdinand Thiessen
ae35983449 fix(files): Restore page title (folder - view - product)
* Folder: Current folder if not root
* View: Name of current view
* Product: Nextcloud

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-11-21 07:48:06 +00:00
Ferdinand Thiessen
675e7a953f
refactor(files): Provide useFileListWidth composable
Replace the mixin with a composable, this is better typed and works in
both: Options- and Composition API.
Also added component tests for it.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-11-20 19:08:21 +01:00
Ferdinand Thiessen
f6e6ba4851 refactor(styles): Adjust code style in SCSS sources to match our stylelint config
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-11-19 09:42:13 +01:00
Ferdinand Thiessen
bb26289ef3
refactor(files): Replace deprecated Types enum for share types
Replace with `ShareType` enum.
Also fix some small Typescript issues in `FilesList.vue`.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-11-18 12:25:56 +01:00
Christopher Ng
dfb2745c8b feat(files): Add support for file list actions
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-11-13 15:28:16 -08:00
Grigorii K. Shartsev
080a8c7f1c fix(files): handle empty view with error
Signed-off-by: Grigorii K. Shartsev <me@shgk.me>
2024-10-25 13:01:43 +02: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 +02:00
Ferdinand Thiessen
e8c1e2c611
fix(code-style): Adjust JS code to our code style
This resolves 68 ESLint warnings about invalid code style.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-16 22:11:59 +02:00
fenn-cs
faa29a0feb feat(sidebar): Show node owner in metadata subline
Resolves: https://github.com/nextcloud/server/issues/46178

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2024-10-07 15:15:55 +02:00
Christopher Ng
51bb8d07f8 fix(files): Fix folders not being selectable in the smart picker
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-10-01 15:55:14 -07:00
Ferdinand Thiessen
d97e17b920
fix(files): Add more visual move / copy notification
* Resolves: https://github.com/nextcloud/server/issues/46645

This adds loading toast notification while the move operation is running.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-30 13:33:45 +02:00
rakekniven
854caedf43
fix(translations): Changed grammar
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2024-09-23 16:18:53 +02:00
Ferdinand Thiessen
020b3ee25e
fix(files): Ensure children are removed from folder and not duplicated
* Resolves https://github.com/nextcloud/server/issues/47904

We need to make sure that we only add one source (unique!) once as a child,
this is ensured by simply use a native `Set`.
Also we need to remove children on from folders when the `files:node:deleted`
event is emitted.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-20 11:09:17 +02:00
Christopher Ng
6b079e67a2 fix(files): Sort tree views correctly by natural order
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-09-09 16:11:43 -07:00
Ferdinand Thiessen
82a7a3971d
fix(files): Adjust files list for sharing permissions on public shares
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-06 03:38:47 +02:00
Ferdinand Thiessen
96c8275586
feat(files_sharing): Migrate public share to use Vue files list
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-06 03:38:42 +02:00
skjnldsv
62878c5ece fix(files): undefined sidebar
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-09-04 14:10:37 +02:00
Ferdinand Thiessen
aea0e8df6a fix: Adjust more places for logical position
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-29 08:32:48 +00:00
Mostafa Ahangarha
723780d184 feat: Add bidi support in core directory
Signed-off-by: Mostafa Ahangarha <ahangarha@riseup.net>
2024-08-29 08:32:47 +00:00
Christopher Ng
a1f43964dc test(files): Adapt favorite views spec
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-27 15:37:27 -07:00
Christopher Ng
9cc1a020a2 feat(files): Allow more than 50 favorite views
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-27 14:33:39 -07:00
Ferdinand Thiessen
988ea85f48 fix(files): Correctly check for already used names when creating new folder
Also add Cypress tests for the "new"-menu.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-27 19:40:38 +02:00
Ferdinand Thiessen
a5e58dc45e
test: Migrated all Jest tests to vitest
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-26 17:27:22 +02:00
Christopher Ng
fc1edaf4c1 refactor(files): Consolidate node registration
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-22 16:09:10 -07:00
Christopher Ng
3b185b1156 refactor(files): Organize event subscriptions
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-22 16:09:10 -07:00
Christopher Ng
4062883459 fix(files): Respect "Show hidden files" setting in tree
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-22 16:09:10 -07:00
Elizabeth Danzberger
e53684e1d9
fix: use empty template by default when pressing enter
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-08-21 15:00:26 -04:00
Ferdinand Thiessen
1331ce7e7c
fix(files): Move loading icon before grid toggle
This prevents jumping of that toggle button when the view is loading.
Also adjust the design for Nextcloud 30 (prevent jumping of breadcrumbs when loading due to increased height).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-21 12:47:21 +02:00
Ferdinand Thiessen
ee4fb148b3 perf(files): Cache getContents function used for uploader
Instead of trigger a PROPFIND for every new-menu entry clicks,
or conflict handling of uploads, we can just use the cached content from the file store.
If we do not have any cache entry we fetch new, but otherwise this is not needed.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-14 09:47:56 +02:00
Christopher Ng
0c0ba5f552 fix(files): Fix non-sticky sticky views in files nav
Signed-off-by: Christopher Ng <chrng8@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-08-14 07:27:49 +00:00
Christopher Ng
a3ad8daed6 perf(files): Prevent extraneous requests when tree children are loading
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-09 15:32:17 -07:00
Konstantin Myakshin
81ee1ce8fc fix(files): Disable tags editing for shared files/folders with view only permission
Signed-off-by: Konstantin Myakshin <molodchick@gmail.com>
2024-08-09 11:42:28 +02:00
Christopher Ng
44bc57bc57 feat: Load limited depth tree
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-08 11:15:52 -07:00
Christopher Ng
86459aa5da perf(files): Remove redundant call to get navigation
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-08 10:52:20 -07:00
skjnldsv
40d9b42c84 fix(files): use files:config:updated to monitor user config change
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-08-07 10:50:33 +00:00
Christopher Ng
0def7fa71c feat(files): Allow toggling folder tree
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-01 09:17:56 -07:00
Christopher Ng
3fabc4f733 feat: Navigate via folder tree
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-08-01 09:17:56 -07:00
Ferdinand Thiessen
172c43351e
refactor(files): Migrate logger util to Typescript
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-01 03:20:56 +02:00
Ferdinand Thiessen
f570507156 fix(files): Add missing emptyView handling
The interface provides this option but it was never implemented.
This feature of being able to render a custom empty view message is needed
for public file drops to properly show the terms of service.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-07-31 20:07:57 +00:00
Elizabeth Danzberger
423730963d
fix: Go back to template picker if template filler closed
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-07-30 15:30:36 -04:00
Elizabeth Danzberger
6c3a4a9f20
fix: Template filler shows only if template has fields
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-07-30 15:18:09 -04:00
withbest
dd08f93202 chore: fix some comments
Signed-off-by: withbest <seekseat@outlook.com>
2024-07-29 14:43:27 +08:00
Ferdinand Thiessen
2c0e2cc09e
test: Add cypress tests for file list filtering
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-25 19:33:28 +02:00
Ferdinand Thiessen
aad09764cd
refactor: Make route parameters accessible using composables to reuse
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-25 19:33:28 +02:00
Ferdinand Thiessen
842c21f96b
feat(files): Implement files list filters for name, modified time and type
Co-authored-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-25 19:33:23 +02:00
Ferdinand Thiessen
968d41241b
feat(files): Allow to add file list filters
This adds sticky file list filters above the file list.
Those filters are used to filter the directory content and thus filter the file list.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-25 19:15:38 +02:00
Elizabeth Danzberger
1b904f1252
feat: Add frontend components for filling out template
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-07-25 11:11:40 +02:00
Elizabeth Danzberger
a7addcb88f
fix(vue): Begin implementing template filler component
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-07-25 11:11:40 +02:00
Elizabeth Danzberger
e65f318fdf
feat: TemplateFiller component
Signed-off-by: Elizabeth Danzberger <lizzy7128@tutanota.de>
2024-07-25 11:11:38 +02:00
Ferdinand Thiessen
f95d8263f6
chore(deps): Update @nextcloud/files to v3.6.0
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-25 01:24:26 +02:00
Ferdinand Thiessen
5cf0224461
fix(files): Typo in import of ShareType
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-16 12:20:55 +02:00
Ferdinand Thiessen
841efff3fb
fix(files): Close the sidebar on navigation
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-15 11:34:05 +02:00
skjnldsv
9b84831c8d fix(files_sharing): adjust IAttributes API and files_versions
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-07-12 20:14:30 +02:00
Ferdinand Thiessen
d0951b48be
chore(files): Fix ESLint issues with files and files_sharing app
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-09 17:25:41 +02:00
Andy Scherzinger
2c11c6ac23 style: unify copy icon
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-07-07 18:39:10 +02:00
Ferdinand Thiessen
362c6238fc
fix: Allow to reset unified search using the nextcloud:unified-search:reset event
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-27 12:13:14 +02:00
Louis Chemineau
fc359e3097
fix(files): Update favorites navigation list on folder renames
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-26 13:59:43 +02:00
Ferdinand Thiessen
079d026d39
feat(files): Allow uploading directories
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-24 20:03:09 +02:00
Ferdinand Thiessen
3ed32ffbb4
refactor: Use composable for currentView and views to make it reactive when shared with other Vue apps
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:27 +02:00
Ferdinand Thiessen
a83f276352
refactor(files): Update @nextcloud/files to v3.5.0
* Removed now duplicated code

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-23 16:53:09 +02:00
skjnldsv
1d7893dca8 fix(files): do not rely on unique fileid
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-06-12 17:15:51 +02:00
Ferdinand Thiessen
7f3cc7502b
fix(files): Use data-cy (data attribute) instead of cy-data
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-11 21:34:28 +02:00
Ferdinand Thiessen
de2276e6d7
refactor(files): Migrate favorites view to @nextcloud/files functions and make it cancelable
Also this fixes the view being writeable

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-11 15:45:22 +02:00
Ferdinand Thiessen
a6e0f083fb fix(files): Correctly type virtual files list ref type
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-06-07 18:11:03 +00:00
Ferdinand Thiessen
91ac7dfb7c fix(files): Update current fileid in route if that node was deleted
We do not change the view to the trash bin but stay in the current view,
so we need to update the current fileid on the route if that was deleted.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-04 12:40:48 +02:00
Ferdinand Thiessen
c1fdd9031c fix(files): Close sidebar if shown node is deleted
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-06-04 12:40:48 +02:00
Ferdinand Thiessen
622bf30031
fix(deps): Update @nextcloud/event-bus to version 3.3.1
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-31 12:46:20 +02:00
Ferdinand Thiessen
67d8277c49
fix: Update @nextcloud/files to 3.4.0 to fix public link shares
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-31 12:46:20 +02:00
Ferdinand Thiessen
14635929e9
fix(files): Keep 'back'-button for not found directories or if user can not upload
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-29 14:47:39 +02:00
Marco
1526a6f7c2
feat(files): Show upload menu in folders' emptycontent
Signed-off-by: Marco <marcoambrosini@icloud.com>
2024-05-29 14:44:57 +02:00
Andy Scherzinger
5b7dcc1427
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-29 08:58:16 +02:00
Ferdinand Thiessen
8ce36085c7
fix(files): Adjust type import and usage for removed dependency
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-27 19:02:13 +02:00
Ferdinand Thiessen
0e7498b917
fix(files): Implement SortingService to fix sorting of files
The previously used library was parsing strings to try to detect dates,
but for filenames it makes no sense to parse them as dates.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-27 13:48:33 +02:00
skjnldsv
3ca3c65b0d feat(files): refresh preview on etag change
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2024-05-23 11:56:27 +00:00
Ferdinand Thiessen
dfd0fa673d fix(files): Debounce does not return a function so it should be used as computed
This also fixes hacky solution to `this` access

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-23 07:19:06 +02:00
Ferdinand Thiessen
42001984f3 fix(files): Use translation function directly instead of calling the instance method
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-05-23 07:19:06 +02:00