[ 
https://issues.apache.org/jira/browse/SOLR-17887?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christos Malliaridis updated SOLR-17887:
----------------------------------------
    Description: 
Many sections in the UI are interacting with files. These sections use a "file 
tree" component and view that displays files in a list with a similar behavior 
to well-known IDEs like IntelliJ IDEA.

h2. Task

Implement a reusable file tree component that allows displaying a list of files 
and folders to the user. You can implement the component based on a specific 
use case like in the [Configsets Files 
section|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-9235&t=eixJKaZsYD5vsT3s-1]
 or the [Cluster Zookeeper 
Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3977&t=eixJKaZsYD5vsT3s-1].

h2. Acceptance Criteria

- Folders have a chevron icon that indicates whether or not the folder is 
collapsed or expanded
- Folders are collapsable / expandable via the chevron with a single click
- Folders are collapsable / expandable via double click on the folder name / 
item (other than the chevron)
- File extensions are displayed with the file names
- Single and double click events on files are outputted via the component's 
outputs
- Single click selects files and fodlers (items)
- The newly added composables matches the look and feel of the application

h2. Additional Information

Examples for file tree can be found in [Cluster -> 
Zookeeper|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3972&t=Nn13TbrCARmj2IrX-1]
 and [Configsets -> 
Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-7661&t=Nn13TbrCARmj2IrX-1].

Out of this ticket's scope is a dynamic context menu that allows the user to 
right click on files and folders and perform some actions like deleting files, 
creating folders etc.

It is also not expected to cover search functionality. This will be defined in 
detail with different focus behavior in separete tickets.

An implementation example (that does not use Decompose or MVIKotlin) can be 
found in the Compose Multiplatform examples, specifically the [Code 
Viewer|https://github.com/JetBrains/compose-multiplatform/tree/master/examples/codeviewer].
 You may use it for inspiration and to get started with the UI. Note that we 
are interested in the [file 
tree|https://github.com/JetBrains/compose-multiplatform/tree/master/examples/codeviewer/shared/src/commonMain/kotlin/org/jetbrains/codeviewer/ui/filetree]
 only, not the code / file viewing options.

  was:
Many sections in the UI are interacting with files. These sections use a "file 
explorer" component and view that displays files in a list with a similar 
behavior to well-known IDEs like IntelliJ IDEA.

h2. Task

Implement a reusable file explorer component that allows displaying a list of 
files and folders to the user. You can implement the component based on a 
specific use case like in the [Configsets Files 
section|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-9235&t=eixJKaZsYD5vsT3s-1]
 or the [Cluster Zookeeper 
Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3977&t=eixJKaZsYD5vsT3s-1].

h2. Acceptance Criteria

- Folders have a chevron icon that indicates whether or not the folder is 
collapsed or expanded
- Folders are collapsable / expandable via the chevron with a single click
- Folders are collapsable / expandable via double click on the folder name / 
item (other than the chevron)
- File extensions are displayed with the file names
- Single and double click events on files are outputted via the component's 
outputs
- Single click selects files and fodlers (items)
- The newly added composables matches the look and feel of the application

h2. Additional Information

Examples for file explorer can be found in [Cluster -> 
Zookeeper|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3972&t=Nn13TbrCARmj2IrX-1]
 and [Configsets -> 
Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-7661&t=Nn13TbrCARmj2IrX-1].

Out of this ticket's scope is a dynamic context menu that allows the user to 
right click on files and folders and perform some actions like deleting files, 
creating folders etc.

It is also not expected to cover search functionality. This will be defined in 
detail with different focus behavior in separete tickets.

An implementation example (that does not use Decompose or MVIKotlin) can be 
found in the Compose Multiplatform examples, specifically the [Code 
Viewer|https://github.com/JetBrains/compose-multiplatform/tree/master/examples/codeviewer].
 You may use it for inspiration. Note that we are interested in the file 
explorer part, not the code / file viewing options.


> Implement File Tree Component
> -----------------------------
>
>                 Key: SOLR-17887
>                 URL: https://issues.apache.org/jira/browse/SOLR-17887
>             Project: Solr
>          Issue Type: Sub-task
>          Components: Admin UI
>            Reporter: Christos Malliaridis
>            Priority: Major
>              Labels: new-ui, ui
>
> Many sections in the UI are interacting with files. These sections use a 
> "file tree" component and view that displays files in a list with a similar 
> behavior to well-known IDEs like IntelliJ IDEA.
> h2. Task
> Implement a reusable file tree component that allows displaying a list of 
> files and folders to the user. You can implement the component based on a 
> specific use case like in the [Configsets Files 
> section|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-9235&t=eixJKaZsYD5vsT3s-1]
>  or the [Cluster Zookeeper 
> Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3977&t=eixJKaZsYD5vsT3s-1].
> h2. Acceptance Criteria
> - Folders have a chevron icon that indicates whether or not the folder is 
> collapsed or expanded
> - Folders are collapsable / expandable via the chevron with a single click
> - Folders are collapsable / expandable via double click on the folder name / 
> item (other than the chevron)
> - File extensions are displayed with the file names
> - Single and double click events on files are outputted via the component's 
> outputs
> - Single click selects files and fodlers (items)
> - The newly added composables matches the look and feel of the application
> h2. Additional Information
> Examples for file tree can be found in [Cluster -> 
> Zookeeper|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=13-3972&t=Nn13TbrCARmj2IrX-1]
>  and [Configsets -> 
> Files|https://www.figma.com/design/VdbEfcWQ8mirFNquBzbPk2/Apache-Solr-Admin-UI-v2-Concept?node-id=227-7661&t=Nn13TbrCARmj2IrX-1].
> Out of this ticket's scope is a dynamic context menu that allows the user to 
> right click on files and folders and perform some actions like deleting 
> files, creating folders etc.
> It is also not expected to cover search functionality. This will be defined 
> in detail with different focus behavior in separete tickets.
> An implementation example (that does not use Decompose or MVIKotlin) can be 
> found in the Compose Multiplatform examples, specifically the [Code 
> Viewer|https://github.com/JetBrains/compose-multiplatform/tree/master/examples/codeviewer].
>  You may use it for inspiration and to get started with the UI. Note that we 
> are interested in the [file 
> tree|https://github.com/JetBrains/compose-multiplatform/tree/master/examples/codeviewer/shared/src/commonMain/kotlin/org/jetbrains/codeviewer/ui/filetree]
>  only, not the code / file viewing options.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to