-
Notifications
You must be signed in to change notification settings - Fork 6.8k
Expand file tree
/
Copy pathselect.html
More file actions
66 lines (64 loc) · 2.35 KB
/
select.html
File metadata and controls
66 lines (64 loc) · 2.35 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<div
cdk-overlay-origin
class="mat-mdc-select-trigger"
(click)="open()"
#fallbackOverlayOrigin="cdkOverlayOrigin"
#trigger
>
<div class="mat-mdc-select-value" [attr.id]="_valueId">
@if (empty) {
<span class="mat-mdc-select-placeholder mat-mdc-select-min-line">{{placeholder}}</span>
} @else {
<span class="mat-mdc-select-value-text">
@if (customTrigger) {
<ng-content select="mat-select-trigger"></ng-content>
} @else {
<span class="mat-mdc-select-min-line">{{triggerValue}}</span>
}
</span>
}
</div>
<div class="mat-mdc-select-arrow-wrapper">
<div class="mat-mdc-select-arrow">
<!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->
<svg viewBox="0 0 24 24" width="24px" height="24px" focusable="false" aria-hidden="true">
<path d="M7 10l5 5 5-5z" />
</svg>
</div>
</div>
</div>
<ng-template
cdk-connected-overlay
cdkConnectedOverlayHasBackdrop
cdkConnectedOverlayBackdropClass="cdk-overlay-transparent-backdrop"
[cdkConnectedOverlayDisableClose]="true"
[cdkConnectedOverlayPanelClass]="_overlayPanelClass"
[cdkConnectedOverlayScrollStrategy]="_scrollStrategy"
[cdkConnectedOverlayOrigin]="_preferredOverlayOrigin || fallbackOverlayOrigin"
[cdkConnectedOverlayPositions]="_positions"
[cdkConnectedOverlayWidth]="_overlayWidth"
[cdkConnectedOverlayFlexibleDimensions]="true"
[cdkConnectedOverlayUsePopover]="_popoverLocation"
(detach)="close()"
(backdropClick)="close()"
(overlayKeydown)="_handleOverlayKeydown($event)">
<!-- `mat-undefined` is weird, but we were using it internally -->
<div
#panel
role="listbox"
tabindex="-1"
class="mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open"
[class]="panelClass"
[class.mat-select-panel-animations-enabled]="!_animationsDisabled"
[class.mat-primary]="_parentFormField?.color === 'primary'"
[class.mat-accent]="_parentFormField?.color === 'accent'"
[class.mat-warn]="_parentFormField?.color === 'warn'"
[class.mat-undefined]="!_parentFormField?.color"
[attr.id]="id + '-panel'"
[attr.aria-multiselectable]="multiple"
[attr.aria-label]="ariaLabel || null"
[attr.aria-labelledby]="_getPanelAriaLabelledby()"
(keydown)="_handleKeydown($event)">
<ng-content></ng-content>
</div>
</ng-template>