import "@arcgis/map-components/components/arcgis-catalog-layer-list";The Catalog Layer List component provides a way to display and interact with CatalogLayers.
Demo
Properties
| Property | Attribute | Type | 
|---|---|---|
autoDestroyDisabled | auto-destroy-disabled | boolean | 
catalogItemsreadonly  |  | Collection<ListItem> | 
catalogLayer |  | CatalogLayer | 
closed | closed | boolean | 
collapsedreflected  | collapsed | boolean | 
filterPlaceholder | filter-placeholder | string | 
filterPredicate |  | (((item: ListItem) => void)) | 
filterText | filter-text | string | 
headingLevel | heading-level | number | 
hideFlow | hide-flow | boolean | 
hideStatusIndicators | hide-status-indicators | boolean | 
icon | icon | string | 
label | label | string | 
listItemCreatedFunction |  | (((event: CatalogLayerListListItemCreatedHandlerEvent) => void)) | 
minFilterItems | min-filter-items | number | 
positiondeprecated  | position | "bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing" | 
referenceElement | reference-element | HTMLArcgisLinkChartElement | HTMLArcgisMapElement | HTMLArcgisSceneElement | string | 
selectedItems |  | Collection<ListItem> | 
selectionMode | selection-mode | "multiple" | "none" | "single" | "single-persist" | 
showCloseButton | show-close-button | boolean | 
showCollapseButton | show-collapse-button | boolean | 
showErrors | show-errors | boolean | 
showFilter | show-filter | boolean | 
showHeading | show-heading | boolean | 
showTemporaryLayerIndicators | show-temporary-layer-indicators | boolean | 
statereadonlyreflected  | state | "disabled" | "loading" | "ready" | 
view |  | MapView | SceneView | 
visibilityAppearance | visibility-appearance | "checkbox" | "default" | 
autoDestroyDisabled
autoDestroyDisabled: booleanIf true, the component will not be destroyed automatically when it is disconnected from the document. This is useful when you want to move the component to a different place on the page, or temporarily hide it. If this is set, make sure to call the destroy method when you are done to prevent memory leaks.
- Attribute
 - auto-destroy-disabled
 - Default value
 - false
 
catalogItems
catalogItems: Collection<ListItem>A collection of ListItems representing the catalogLayers dynamicGroupLayer.
catalogLayer
catalogLayer: CatalogLayerThe CatalogLayer to display in the widget.
- Default value
 - null
 
closed
closed: booleanIndicates whether a component is closed. When true, the component will be hidden.
- Attribute
 - closed
 - Default value
 - false
 
collapsed
collapsed: booleanIndicates whether the widget is collapsed.
- Attribute
 - collapsed
 - Default value
 - false
 
filterPlaceholder
filterPlaceholder: stringPlaceholder text used in the filter input if visibleElements.filter is true.
- Attribute
 - filter-placeholder
 - Default value
 - ""
 
filterPredicate
filterPredicate: (((item: ListItem) => void))Specifies a function to handle filtering list items.
- Default value
 - null
 
filterText
filterText: stringThe value of the filter input if visibleElements.filter is true.
- Attribute
 - filter-text
 - Default value
 - ""
 
headingLevel
headingLevel: numberIndicates the heading level to use for the heading of the widget.
- Attribute
 - heading-level
 - Default value
 - 2
 
hideStatusIndicators
hideStatusIndicators: boolean- Attribute
 - hide-status-indicators
 - Default value
 - false
 
icon
icon: stringIcon which represents the component. Typically used when the component is controlled by another component (e.g. by the Expand component).
- See also
 
- Attribute
 - icon
 - Default value
 - "catalog-dataset"
 
listItemCreatedFunction
listItemCreatedFunction: (((event: CatalogLayerListListItemCreatedHandlerEvent) => void))A function that executes each time a ListItem is created.
- Default value
 - null
 
minFilterItems
minFilterItems: numberThe minimum number of list items required to display the visibleElements.filter input box.
- Attribute
 - min-filter-items
 - Default value
 - 10
 
position
position: "bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing"slot instead.- Attribute
 - position
 
referenceElement
referenceElement: HTMLArcgisLinkChartElement | HTMLArcgisMapElement | HTMLArcgisSceneElement | stringBy assigning the id attribute of the Map or Scene component to this property, you can position a child component anywhere in the DOM while still maintaining a connection to the Map or Scene.
- Attribute
 - reference-element
 
selectedItems
selectedItems: Collection<ListItem>A collection of selected ListItems representing catalogItems selected by the user.
selectionMode
selectionMode: "multiple" | "none" | "single" | "single-persist"Specifies the selection mode.
- Attribute
 - selection-mode
 - Default value
 - "none"
 
showCollapseButton
showCollapseButton: boolean- Attribute
 - show-collapse-button
 - Default value
 - false
 
showTemporaryLayerIndicators
showTemporaryLayerIndicators: boolean- Attribute
 - show-temporary-layer-indicators
 - Default value
 - false
 
state
state: "disabled" | "loading" | "ready"The current state of the component.
- Attribute
 - state
 - Default value
 - "disabled"
 
view
The view associated with the component.
Note: The recommended approach is to fully migrate applications to use map and scene components and avoid using MapView and SceneView directly. However, if you are migrating a large application from widgets to components, you might prefer a more gradual transition. To support this use case, the SDK includes this
viewproperty which connects a component to a MapView or SceneView. Ultimately, once migration is complete, the Catalog Layer List component will be associated with a map or scene component rather than using theviewproperty.
- Default value
 - null
 
visibilityAppearance
visibilityAppearance: "checkbox" | "default"Determines the icons used to indicate visibility.
- Attribute
 - visibility-appearance
 - Default value
 - "default"
 
Methods
| Method | Signature | 
|---|---|
componentOnReady | componentOnReady(): Promise<void> | 
destroy | destroy(): Promise<void> | 
componentOnReady
componentOnReady(): Promise<void>Create a promise that resolves once component is fully loaded.
Example
const arcgisCatalogLayerList = document.querySelector("arcgis-catalog-layer-list");
document.body.append(arcgisCatalogLayerList);
await arcgisCatalogLayerList.componentOnReady();
console.log("arcgis-catalog-layer-list is ready to go!");- Returns
 - Promise<void>
 
Events
| Event | Type | 
|---|---|
arcgisClose | CustomEvent<void> | 
arcgisPropertyChange | CustomEvent<{ name: "state"; }> | 
arcgisReady | CustomEvent<void> | 
arcgisTriggerAction | CustomEvent<CatalogLayerListTriggerActionEvent> | 
arcgisClose
arcgisClose: CustomEvent<void>Emitted when the component's close button is clicked.
arcgisPropertyChange
arcgisPropertyChange: CustomEvent<{ name: "state"; }>Emitted when the value of a property is changed. Use this to listen to changes to properties.
arcgisReady
arcgisReady: CustomEvent<void>Emitted when the component associated with a map or scene view is ready to be interacted with.
arcgisTriggerAction
arcgisTriggerAction: CustomEvent<CatalogLayerListTriggerActionEvent>Emitted when an action is triggered on the component.