Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explore how to support multi-level nested folder structure #423

Open
rrchai opened this issue Oct 7, 2022 · 2 comments
Open

Explore how to support multi-level nested folder structure #423

rrchai opened this issue Oct 7, 2022 · 2 comments
Assignees
Labels
enhancement New feature or request feature
Milestone

Comments

@rrchai
Copy link
Contributor

rrchai commented Oct 7, 2022

See issues mentioned in #302 and #422.

Since the NF app also captures the subfolders within top-level folders (current upstream app only display the top-level folders), it will be hard to distinguish the duplicated names of subfolders in the folder-dropdown.

Approach 1

The easiest solution would add parent folder name and display entire folder path. Take below file structure as an example:

data-folder1/
├─ sub-folder/
│  ├─ sub-sub-folder/
data-folder2/
├─ sub-folder/
│  ├─ sub-sub-folder/

The expected dropdown will consist of these folders:

data-folder1
data-folder1/sub-folder
data-folder1/sub-folder/sub-sub-folder/
data-folder2
data-folder2/sub-folder
data-folder2/sub-folder/sub-sub-folder/

The caveats of this approach would be too many folders, as well as possibly over-extended folder paths.

If it's an urgent blocker for NF pipeline, I can help to write the function in the app to achieve ^. Ideally, it would be better to get nested list of folder structure from backend.

Approach 2

A more modern way is to update the UX with a multiple-level nested dropdown, but will need some time.

  • as far as I searched, there is currently no available shiny extension package supporting multi-level dropdown, other than stla/NestedMenu that requires further testings.
  • I could also explore to write our own multi-level nested dropdown input
  • I am also super interested learning how to implement react/angular component (not familiar with react though) in shiny, i,e. synapse-single-pane
@rrchai rrchai added enhancement New feature or request feature labels Oct 7, 2022
@rrchai rrchai self-assigned this Oct 7, 2022
@rrchai
Copy link
Contributor Author

rrchai commented Oct 7, 2022

@milen-sage I move this ticket into next sprint, since it seems a critical issue of NF app.

@milen-sage
Copy link
Contributor

milen-sage commented Oct 10, 2022

@rrchai and @allaway one setup that we do support currently is tagging (i.e. annotating) dataset folders with the following key:value pair

contentType:dataset

schematic would treat all datasets tagged this way as dataset folders, independent of their place in a project's hierarchy. This doesn't go around the folder naming issue (i.e. duplicate names w/in the hierarchy).

Otherwise, I do agree that the ability to select a folder from directory hierarchy in the app and submit (meta)data for this folder would be convenient and likely the best solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request feature
Projects
None yet
Development

No branches or pull requests

2 participants