Cascader
Selects a value through horizontal hierarchy columns. Reuses BluTreeNode and returns the complete selected path.
Live TypeScript example
Try the component here, then use the source below in your application.
Interact with the Cascader example. The code below shows its actual inputs and callbacks.
import '@bluui/web/styles.css'
import { createCascader } from "@bluui/web";
export function mount(host: HTMLElement) {
return createCascader(host, {
"SelectedKey": "",
"LeavesOnly": true,
"IsDisabled": false,
"Placeholder": "Select an office…",
"Nodes": [
{
"Key": "americas",
"ParentKey": "",
"Label": "Americas"
},
{
"Key": "europe",
"ParentKey": "",
"Label": "Europe"
},
{
"Key": "asia",
"ParentKey": "",
"Label": "Asia Pacific"
},
{
"Key": "usa",
"ParentKey": "americas",
"Label": "United States"
},
{
"Key": "canada",
"ParentKey": "americas",
"Label": "Canada"
},
{
"Key": "uk",
"ParentKey": "europe",
"Label": "United Kingdom"
},
{
"Key": "germany",
"ParentKey": "europe",
"Label": "Germany"
},
{
"Key": "japan",
"ParentKey": "asia",
"Label": "Japan"
},
{
"Key": "ny",
"ParentKey": "usa",
"Label": "New York"
},
{
"Key": "sf",
"ParentKey": "usa",
"Label": "San Francisco"
},
{
"Key": "toronto",
"ParentKey": "canada",
"Label": "Toronto"
},
{
"Key": "london",
"ParentKey": "uk",
"Label": "London"
},
{
"Key": "berlin",
"ParentKey": "germany",
"Label": "Berlin"
},
{
"Key": "tokyo",
"ParentKey": "japan",
"Label": "Tokyo"
},
{
"Key": "closed",
"ParentKey": "japan",
"Label": "Osaka (unavailable)",
"IsDisabled": true
}
]
}, { SelectionChanged: (key, pathKeys, pathLabels) => { host.dataset.selection = JSON.stringify({ key, pathKeys, pathLabels }); } });
}
const instance = mount(document.getElementById('example')!)
// When this page or framework component is removed:
// instance.destroy()
Install the library and add the host element
npm install https://bluui.blutekmedia.com/downloads/bluui-web-0.2.6.tgz<div id="example"></div>This example uses the downloadable @bluui/web package. Your application handles persistence and authentication through its typed callbacks. The starter ZIP includes this same example.
This reference documents the published Block’s parameters, events, and types. The web examples adapt those inputs to browser callbacks. Open native showcase ↗
- Web examples
- Supported4 states checked · no automated failures
- TypeScript
- Supported2 states checked · no automated failures
- OutSystems
- Needs work2 states checked · 2 rule failures
Minimum requirement: WCAG 2.1 AA. Supported means the listed checks passed; full conformance is not yet declared.
Evidence and remaining verification →Purpose and use
Selects a value through horizontal hierarchy columns. Reuses BluTreeNode and returns the complete selected path.
Keyboard design guidance
Enter opens the picker. Arrow keys explore levels; Enter selects a leaf. Escape closes and returns focus.
This describes the intended interaction. The dated audit above identifies verified behavior and current gaps.
In your application
Provide useful labels, preserve visible focus, and test the component with your actual content. Use text alongside status colors and check contrast in each state.
Events0No events yet.
Interact with an example to see its events.