aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files/src/store
Commit message (Collapse)AuthorAgeFilesLines
* refactor: use eventbus for updated filtersFerdinand Thiessen2025-02-281-4/+2
| | | | | | | prevent filters not applied if `filtersChanged` was set before file list mounted. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(files): allow to ignore warning to change file typeFerdinand Thiessen2025-02-252-163/+146
| | | | | | | | | | | | | * 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>
* fix(files): do not show extension warning for folders renamingfix/files-rename-folderskjnldsv2025-02-191-3/+3
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): only send config update requests if user is logged inFerdinand Thiessen2025-02-082-117/+111
| | | | | | | | | | | | 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>
* fix(files): support submenu in batch actions header tooskjnldsv2025-02-061-1/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): properly update store on files conversions successskjnldsv2025-02-041-2/+2
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): add conversion actionskjnldsv2025-01-221-1/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): Ensure favorites set in sidebar workFerdinand Thiessen2025-01-211-0/+18
| | | | | | | | | | | | | | 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>
* fix(files): Properly reset all file list filters on view changeFerdinand Thiessen2025-01-211-64/+119
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* chore: Resolve ESLint warningsFerdinand Thiessen2025-01-161-2/+2
| | | | | | | | | | - Add default value to non-required Vue props - Reformat function to async function if needed - Add some documentation - Allow `any` in places where it makes sense (tests) - Order vue component sections as required Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(systemtags): add systemtag manage keyboard shortcutskjnldsv2024-12-172-1/+4
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): add hotkey service and unify action handlingskjnldsv2024-12-172-5/+8
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): add opendetails param and file list up/down keyboard shortcutskjnldsv2024-12-172-1/+79
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): properly update paths and folder children on node moveskjnldsv2024-12-033-57/+112
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat: add confirmation dialog for file extension changesnfebe2024-11-191-1/+78
| | | | | | | - Introduced a dialog to confirm if users want to proceed with changing the file extension. - Added handling for dialog visibility to prevent recursion. (Since it looks like use must press escape to stop rename???) Signed-off-by: nfebe <fenn25.fn@gmail.com>
* chore: lint fixchore/force-style-lintskjnldsv2024-11-191-1/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): multiselect and filters store declarationskjnldsv2024-11-071-1/+1
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(code-style): Adjust JS code to our code styleFerdinand Thiessen2024-10-161-3/+3
| | | | | | This resolves 68 ESLint warnings about invalid code style. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Ensure renaming state is correctly resetFerdinand Thiessen2024-10-151-2/+81
| | | | | | | | | | | | | 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>
* feat(sidebar): Show node owner in metadata sublinefenn-cs2024-10-071-12/+1
| | | | | | Resolves: https://github.com/nextcloud/server/issues/46178 Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
* test(files): Add tests for path handlingFerdinand Thiessen2024-09-201-0/+130
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Ensure children are removed from folder and not duplicatedFerdinand Thiessen2024-09-201-12/+63
| | | | | | | | | | | * 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>
* perf(files): Cache `getContents` function used for uploaderFerdinand Thiessen2024-08-141-0/+28
| | | | | | | | 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>
* feat(files): Add getter for all view configsChristopher Ng2024-08-081-0/+2
| | | | Signed-off-by: Christopher Ng <chrng8@gmail.com>
* fix(files): use `files:config:updated` to monitor user config changeskjnldsv2024-08-071-1/+0
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* feat(files): Support setting view config for complex idsChristopher Ng2024-08-011-1/+3
| | | | Signed-off-by: Christopher Ng <chrng8@gmail.com>
* fix(files_sharing): Make account file filter consistent have designFerdinand Thiessen2024-07-301-0/+2
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(files): Implement files list filters for name, modified time and typeFerdinand Thiessen2024-07-251-0/+78
| | | | | Co-authored-by: John Molakvoæ <skjnldsv@users.noreply.github.com> Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* chore: Enable ESLint for apps and fix all errorsFerdinand Thiessen2024-07-096-0/+21
| | | | | | | | | Nevertheless this causes a huge amount of new warnings. Previously the shell script for directories to lint was wrong it was generating all app names to lint, but was missing the `apps/` prefix. Causing only `core` to be linted. Co-authored-by: Grigorii K. Shartsev <me@shgk.me> Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): fetch nodes if we have multiple of the same fileid in the storeskjnldsv2024-06-121-3/+44
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): do not rely on unique fileidskjnldsv2024-06-124-25/+27
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* fix(files): Update current fileid in route if that node was deletedFerdinand Thiessen2024-06-041-1/+1
| | | | | | | 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>
* chore: Add SPDX headerAndy Scherzinger2024-05-2911-209/+22
| | | | Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
* fix(files): Do not show files from hidden folders in "Recent"-view if hidden ↵Ferdinand Thiessen2024-04-161-0/+25
| | | | | | | | files are disabled by user Needed to adjust the store creation to be able to inject pinia before the vue app is initialized. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix: Correctly import types in Typescript filesFerdinand Thiessen2024-02-131-1/+1
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix(files): Consistent sorting for folders before files (user configurable)Ferdinand Thiessen2024-01-271-2/+3
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(files): add grid toggle buttonJohn Molakvoæ2023-10-171-0/+1
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): migrate template pickerJohn Molakvoæ2023-10-171-7/+47
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): add move or copy actionJohn Molakvoæ2023-09-263-5/+8
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): add drag and drop supportJohn Molakvoæ2023-09-261-0/+46
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): add uploaderJohn Molakvoæ2023-09-013-2/+63
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* fix(files): actions permissions requirementsJohn Molakvoæ2023-07-111-1/+1
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* fix: favorites colour, icon, unwanted eslint-disable, typing and previewJohn Molakvoæ2023-07-058-54/+39
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat: add modified columnJohn Molakvoæ2023-07-053-3/+3
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): implement built-in renamingJohn Molakvoæ2023-07-051-0/+48
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): sort favorites firstJohn Molakvoæ2023-07-051-0/+1
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* fix(files): paths store reactivityJohn Molakvoæ2023-04-212-9/+11
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* fix(files): forward arguments to store creationJohn Molakvoæ2023-04-195-18/+18
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* feat(files): add view config service to store user-config per viewJohn Molakvoæ2023-04-183-81/+104
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
* fix(files): standardize `files:node:event` event syntaxJohn Molakvoæ2023-04-142-12/+7
| | | | Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>