/
githubmirror
/
angular
Обзор
Документация
Войти
/
githubmirror
/
angular
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
adev/shared-docs/components/select/select.component.scss
202 строки
4 KB
Kam
feat(docs-infra): add Angie mascot to adev empty and error states
08 июл 2026, 22:18
08 июл 2026, 22:18
95fbd0b
Код
Авторство
О чём код?
:host { --border-color: color-mix(in srgb, var(--full-contrast) 20%, var(--page-background)); position: relative; width: 100%; display: flex; flex-direction: column; } .docs-combobox-container { border: 1px solid var(--border-color); border-radius: 0.25rem; overflow: hidden; } .docs-select-input-container { display: flex; position: relative; align-items: center; border-radius: 0.25rem; input { width: 100%; border: none; outline: none; font-size: 1rem; padding: 0.7rem 1rem 0.7rem; background-color: var(--septenary-contrast); color: var(--primary-contrast); &[readonly] { cursor: pointer; padding: 0.7rem 1rem; } &[aria-expanded='true'] + .docs-select-arrow { transform: rotate(180deg); } } } [ngCombobox]:focus-within [ngComboboxInput]:not(.docs-select-search-input) { outline: 1.5px solid var(--vivid-pink); box-shadow: 0 0 0 4px color-mix(in srgb, var(--vivid-pink) 25%, transparent); } .docs-select-popover { width: 100%; } .docs-select-arrow { width: 24px; height: 24px; font-size: 20px; display: grid; place-items: center; pointer-events: none; padding: 0 0.5rem; position: absolute; right: 0; opacity: 0.8; transition: transform 0.2s ease; } [ngComboboxInput] [ngCombobox] { border: none; outline: none; font-size: 1rem; padding: 0.7rem 1rem 0.7rem; background-color: var(--septenary-contrast); color: var(--primary-contrast); } .docs-select-dialog { position: absolute; box-sizing: border-box; width: 100%; left: auto; right: auto; top: auto; bottom: auto; padding: 0; border: 1px solid var(--border-color); border-radius: 0.25rem; overflow: hidden; background-color: var(--septenary-contrast); color: inherit; .docs-select-input-container { border-radius: 0; } [ngCombobox], .docs-select-input-container { border: none; } [ngComboboxInput] { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } [ngCombobox]:focus-within [ngComboboxInput] { outline: none; box-shadow: none; } .docs-select-search-input:focus { outline: none; box-shadow: none; } .docs-select-search-container { border-bottom: 1px solid var(--border-color); } &::backdrop { opacity: 0; } } .docs-select-search-container { position: relative; display: flex; align-items: center; border-radius: 0; } .docs-select-search-icon { width: 24px; height: 24px; font-size: 20px; display: grid; place-items: center; pointer-events: none; position: absolute; padding: 0 0.5rem; opacity: 0.8; } .docs-select-search-input { width: 100%; border: none; outline: none; font-size: 0.875rem; padding: 0.5rem 0.75rem 0.5rem 2rem; background-color: var(--septenary-contrast); color: var(--primary-contrast); } .docs-select-no-results { display: flex; flex-direction: column; align-items: center; gap: 0.25rem; padding: 0.75rem; text-align: center; font-size: 0.875rem; color: var(--primary-contrast); opacity: 0.7; } .docs-select-no-results-angie { width: 88px; height: auto; aspect-ratio: 1; } .docs-select-listbox { display: flex; flex-direction: column; max-height: 12rem; overflow: auto; padding: 0.25rem; } .docs-select-option { display: flex; cursor: pointer; align-items: center; padding: 0.5rem 0.75rem; font-size: 0.875rem; border-radius: 0.25rem; &:hover { background-color: color-mix(in srgb, var(--primary-contrast) 5%, transparent); } &[data-active='true'] { outline-offset: -2px; outline: 2px solid var(--vivid-pink); } &[aria-selected='true'] { color: var(--vivid-pink); background-color: color-mix(in srgb, var(--vivid-pink) 5%, transparent); } } .docs-select-option-label { flex: 1; }