Files
UI/packages/skin/ui/src/divider.ts
T
2026-10-23 18:14:47 +08:00

12 lines
709 B
TypeScript

import { h } from '@ui-arch/frame';
import type { DividerProps } from './types.js';
/*** 分隔线:水平/垂直两种方向,可带居中文案标签,dashed 切虚线 ***/
export function divider(props: DividerProps): HTMLDivElement {
const cls = ['ua-divider', props.vertical ? 'ua-divider-vertical' : '', props.dashed ? 'ua-divider-dashed' : ''].filter(Boolean).join(' ');
const line = props.label && !props.vertical
? h('div', { class: cls, role: 'separator', 'aria-label': props.label }, h('span', { class: 'ua-divider-label' }, props.label))
: h('div', { class: cls, role: 'separator', 'aria-label': props.label }); // 垂直或无标签:纯线条
return line as HTMLDivElement;
}