UNPKG

@e280/quay

Version:

File-browser and outliner UI for the web

31 lines (22 loc) 778 B
import {html} from "lit" import {shadowElement, useHost, useStyles} from "@e280/sly" import themeCss from "../../theme.css.js" import {findLocalGroup} from "../../utils/find-local-group.js" import {CodexItem} from "../../../logic/aspects/codex/parts/codex-item.js" export const QuayBreadcrumb = shadowElement(() => { useStyles(themeCss) const group = findLocalGroup(useHost()) const {trail, config: {codex, renderLabel}} = group const click = (item: CodexItem) => (e: Event) => group.trail.setTrail(e, item) return html` <sl-breadcrumb> ${trail.signal().map(item => html` <sl-breadcrumb-item @click="${click(item)}"> ${item === null ? "root" : renderLabel(codex.require(item.id))} </sl-breadcrumb-item> `)} </sl-breadcrumb> ` })