Esri / calcite-design-system

A monorepo containing the packages for Esri's Calcite Design System
https://developers.arcgis.com/calcite-design-system/
Other
290 stars 75 forks source link

Allow calcite-list to search without the search box #10258

Open fangqidev opened 2 months ago

fangqidev commented 2 months ago

Check existing issues

Description

We want to use a single search box for multiple calcite-list-based widgets at the same time in the ExB (For example, layerlist, tablelist, and basemaplayerlist). Right now, the calcite list is only able to filter items with a search box (by setting visibleItems.filter to true in the JS API).

Acceptance Criteria

An option to hide the search input box when filter is true and the items number exceeds minFilterItems. So we can use a single self-implemented search input box for several calcite lists at the same time. For example, we can apply the same search content for a layerlist, a tablelist, and a basemaplist.

Relevant Info

JSAPI issue: https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/64561 ExB issue: https://devtopia.esri.com/Beijing-R-D-Center/ExperienceBuilder-Web-Extensions/issues/21467#issuecomment-4979724

Which Component

calcite list

Example Use Case

No response

Priority impact

impact - p2 - want for an upcoming milestone

Calcite package

Esri team

ArcGIS Experience Builder

thming commented 2 months ago

cc @geospatialem

geospatialem commented 2 months ago

Added design for expertise on the UI/UX and if Calcite should consider for list.

thming commented 2 months ago

Some more information: The lack of this feature has blocked the implementation of ENH-000167930, so we decided to withdraw this feature to the next release and wait for this capability to be added, otherwise, the behavior in the ExB Map Layers widget would look like a bug to users. It would be great if it could be supported in the next one. Thanks!

macandcheese commented 4 days ago

Not sure there are design implications here - to a user, there should be no difference between if an app has filtered the displayed List Items with their own logic or if they filter with the built-in List filtering.

With that - is the ask here just to allow filter-text to take effect and perform filtering without filter-enabled? I think that makes sense to support ... cc @geospatialem @driskull

driskull commented 4 days ago

With that - is the ask here just to allow filter-text to take effect and perform filtering without filter-enabled? I think that makes sense to support

The issue with this is that filtering is handled at the filter component level which has a UI. We would need to move the filtering logic to the list instead. cc @jcfranco

macandcheese commented 3 days ago

Ah right, maybe once this and related issues land this could be easier to tackle. https://github.com/Esri/calcite-design-system/issues/10187