-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlistbox.ts
More file actions
49 lines (42 loc) · 1.92 KB
/
listbox.ts
File metadata and controls
49 lines (42 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
export const listboxCss = ({ dt }: { dt: (token: string) => string }): string => `
/* ─── Listbox extend: публикуем кастомные переменные в :root ─── */
:root {
--p-listbox-extend-ext-option-gap: ${dt('listbox.extend.extOption.gap')};
--p-listbox-extend-ext-option-label-gap: ${dt('listbox.extend.extOption.label.gap')};
--p-listbox-extend-ext-option-caption-color: ${dt('listbox.extend.extOption.caption.color')};
--p-listbox-extend-ext-option-caption-striped-color: ${dt('listbox.extend.extOption.caption.stripedColor')};
}
/* ─── Расположение элемента списка ─── */
.p-listbox-option {
display: flex;
align-items: center;
gap: var(--p-listbox-extend-ext-option-gap);
}
/* Многострочный контент (иконка + label-group): выравнивание по верху */
.p-listbox-option:has(.p-listbox-option-label-group) {
align-items: flex-start;
}
.p-listbox-option:has(.p-listbox-option-check-icon) {
gap: unset;
}
/* ─── Группа: текст + подпись ─── */
.p-listbox-option-label-group {
display: flex;
flex-direction: column;
gap: var(--p-listbox-extend-ext-option-label-gap);
}
/* ─── Подпись элемента списка ─── */
.p-listbox-option-caption {
color: var(--p-listbox-extend-ext-option-caption-color);
font-size: ${dt('fonts.fontSize.200')};
font-family: ${dt('fonts.fontFamily.heading')};
}
/* ─── Галочка выбора ─── */
.p-listbox-check-icon {
margin-inline-start: ${dt('listbox.checkmark.gutterStart')};
margin-inline-end: ${dt('listbox.checkmark.gutterEnd')};
}
.p-listbox .p-listbox-list .p-listbox-option.p-listbox-option-selected .p-listbox-option-check-icon {
color: ${dt('listbox.option.selectedColor')};
}
`;