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

11/Input/Radio and Multi-Select with Searchable Context #8802

Open
wants to merge 1 commit into
base: trunk
Choose a base branch
from

Conversation

catenglaender
Copy link
Contributor

@catenglaender catenglaender commented Jan 8, 2025

This optional Searchable Context Wrapper for Radio and Multi-Select inputs makes picking options from a large list of options less intimidating. When activated for those components, it adds a filter searchbar when expanded and a compact preview mode when collapsed.

This PR has yet to be approved by the JF.

Overview

Hey, everyone 👋
concept talks with @yvseiler, @oliversamoila and internal feature requests at Concepts and Training GmbH lead to the Searchable functionality that I want to present to you in this PR.

UPDATE: You can see the Searchable Input Context in action as part of the examples for the Radio and Multi-Select Input Components.

It aligns with findings from my previous paper commissioned by the University of Bern about complex forms: Splitting input into a condensed viewing vs editing mode can greatly simplify the presented data and clarify what selection has been set.

select-search_multi-select

When collapsed it only shows the currently selected options making it easier to check settings at a glance. When expanded a search field helps to quickly find a known option.

It supports multi-select and radio fields as a method of input, but could potentially be expanded to other fields (e.g. tree)

select-search_single-select

We think this addition to the UI components is a good candidate for the selection of content styles in the page editor. We would like to submit this for consideration when moving from legacy UI to Kitchen Sink UI.

select-search_content-styles

For more details have a look at the description added to the PHP factory.

Thanks

I used to be mostly a frontend designer and this is one of my first "real" PHP and JS ES6 projects, so there might be some rough edges that still need to be refined during further implementation. Thanks to the ILIAS developer documentation, the very clean and clear implementation of most existing UI components and the the patient guidance of @rklees and @nhaagen, I had quite a good experience digging into this challenge.

Project Overview & Progress

  • PHP interface
  • PHP factory
  • PHP class implementation
  • PHP Renderer for current proof-of-concept state
  • PHP kitchen sink documentation
  • JS factory
  • JS class implementation
  • SCSS style code
  • Examples
  • approval of JF needed
  • PHP/JS remove debug messages
  • PHP use translation strings in renderer
  • PHP Examples fix submitting of the form data (or remove it)
  • PHP checker passes
  • JS ESlint passes
  • (S)CSS Squad topic: should forms in ILIAS 11 move from media queries to container queries?
  • SCSS refine paddings and margins
  • PHP unit tests
  • PHP code review
  • JS code review

Did I miss anything? 😄

@klees
Copy link
Member

klees commented Jan 8, 2025

We'll do some internal QS before we move on in the community process.

@yvseiler
Copy link
Collaborator

A big thank you @catenglaender for this work and a big step towards a very valuable UI component to simplify forms. I like it!

@catenglaender catenglaender force-pushed the _11/UI/Input/SearchableSelection branch from 60310f4 to bca398f Compare January 22, 2025 21:45
@catenglaender
Copy link
Contributor Author

catenglaender commented Jan 22, 2025

The Select Search UI component has been dissolved to be part of the Radio and MultiSelect Input component.

@catenglaender catenglaender changed the title 11/Input/SearchableSelect UI component 11/Input/Radio and Multi-Select with Searchable Context Jan 22, 2025
@catenglaender catenglaender force-pushed the _11/UI/Input/SearchableSelection branch 8 times, most recently from 2cb2340 to 35449bc Compare January 28, 2025 13:58
@catenglaender catenglaender force-pushed the _11/UI/Input/SearchableSelection branch from 35449bc to b34db4c Compare January 28, 2025 14:05
@catenglaender
Copy link
Contributor Author

More specific Unit Tests have been added. All automatic checks pass. ✔️

I think we can move on with the community processes. What do you think @rklees?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants