import { html } from 'lit'; import type { ListBlockModel } from '../list-model.js'; import { getListInfo } from './get-list-info.js'; import { getNumberPrefix } from './get-number-prefix.js'; import { checkboxChecked, checkboxUnchecked, points, toggleDown, toggleRight, } from './icons.js'; export function ListIcon( model: ListBlockModel, showChildren: boolean, onClick: (e: MouseEvent) => void ) { const { index, deep } = getListInfo(model); switch (model.type) { case 'bulleted': return html`
${points[deep % points.length]}
`; case 'numbered': return html`
${getNumberPrefix(index, deep)}
`; case 'todo': return html`
${model.checked ? checkboxChecked() : checkboxUnchecked()}
`; case 'toggle': return html`
${showChildren ? toggleDown : toggleRight}
`; default: console.error('Unknown list type', model.type, model); return null; } }