ngx-virtual-select-field-filterable 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,151 @@
1
+ @use 'sass:math';
2
+ @use '@angular/material/core/style/variables';
3
+
4
+ $name-prefix: 'ngx-virtual-select-field';
5
+ $option-prefix: 'ngx-virtual-select-field-option';
6
+
7
+ @mixin inherit-material-theme() {
8
+ :root {
9
+ --#{$name-prefix}-trigger-text-color: var(
10
+ --mat-select-enabled-trigger-text-color
11
+ );
12
+ --#{$name-prefix}-trigger-text-color--disabled: var(
13
+ --mat-select-disabled-trigger-text-color
14
+ );
15
+ --#{$name-prefix}-trigger-font-family: var(--mat-select-trigger-text-font);
16
+ --#{$name-prefix}-trigger-line-height: var(
17
+ --mat-select-trigger-text-line-height
18
+ );
19
+ --#{$name-prefix}-trigger-font-size: var(--mat-select-trigger-text-size);
20
+ --#{$name-prefix}-trigger-font-weight: var(
21
+ --mat-select-trigger-text-weight
22
+ );
23
+ --#{$name-prefix}-trigger-letter-spacing: var(
24
+ --mat-select-trigger-text-tracking
25
+ );
26
+
27
+ --#{$name-prefix}-placeholder-text-color: var(
28
+ --mat-select-placeholder-text-color
29
+ );
30
+ --#{$name-prefix}-placeholder-transition: color
31
+ variables.$swift-ease-out-duration
32
+ math.div(variables.$swift-ease-out-duration, 3)
33
+ variables.$swift-ease-out-timing-function;
34
+
35
+ --#{$name-prefix}-arrow-size: 5px;
36
+ --#{$name-prefix}-arrow-color--enabled: var(
37
+ --mat-select-enabled-arrow-color
38
+ );
39
+ --#{$name-prefix}-arrow-color--focused: var(
40
+ --mat-select-focused-arrow-color
41
+ );
42
+ --#{$name-prefix}-arrow-color--invalid: var(
43
+ --mat-select-invalid-arrow-color
44
+ );
45
+ --#{$name-prefix}-arrow-color--disabled: var(
46
+ --mat-select-disabled-arrow-color
47
+ );
48
+
49
+ --#{$name-prefix}-panel-background: var(
50
+ --mat-select-panel-background-color
51
+ );
52
+ --#{$name-prefix}-panel-box-shadow: var(
53
+ --mat-select-container-elevation-shadow
54
+ );
55
+ --#{$name-prefix}-panel-border-radius: 4px;
56
+ --#{$name-prefix}-panel-list-wrapper-padding: 8px;
57
+ }
58
+
59
+ :root {
60
+ --#{$option-prefix}-color: var(--mat-option-label-text-color);
61
+ --#{$option-prefix}-font-family: var(--mat-option-label-text-font);
62
+ --#{$option-prefix}-line-height: var(--mat-option-label-text-line-height);
63
+ --#{$option-prefix}-font-size: var(--mat-option-label-text-size);
64
+ --#{$option-prefix}-letter-spacing: var(--mat-option-label-text-tracking);
65
+ --#{$option-prefix}-font-weight: var(--mat-option-label-text-weight);
66
+
67
+ --#{$option-prefix}-selected-state-label-text-color: var(
68
+ --mat-option-selected-state-label-text-color
69
+ );
70
+ --#{$option-prefix}-background-color--active: var(
71
+ --mat-option-focus-state-layer-color
72
+ );
73
+ --#{$option-prefix}-background-color--hover: var(
74
+ --mat-option-hover-state-layer-color
75
+ );
76
+ --#{$option-prefix}-background-color--selected: var(
77
+ --mat-option-selected-state-layer-color
78
+ );
79
+
80
+ --#{$option-prefix}-disabled-state-opacity: 0.38;
81
+ --#{$option-prefix}-gap: 8px;
82
+ --#{$option-prefix}-padding: 0 16px;
83
+ }
84
+
85
+ @include overlay-position-styles();
86
+ }
87
+
88
+ @mixin create-default-theme() {
89
+ :root {
90
+ --#{$name-prefix}-trigger-text-color: inherit;
91
+ --#{$name-prefix}-trigger-text-color--disabled: grey;
92
+ --#{$name-prefix}-trigger-font-family: inherit;
93
+ --#{$name-prefix}-trigger-line-height: inherit;
94
+ --#{$name-prefix}-trigger-font-size: inherit;
95
+ --#{$name-prefix}-trigger-font-weight: inherit;
96
+ --#{$name-prefix}-trigger-letter-spacing: inherit;
97
+
98
+ --#{$name-prefix}-placeholder-text-color: inherit;
99
+ --#{$name-prefix}-placeholder-transition: color 400ms math.div(400ms, 3)
100
+ cubic-bezier(0.25, 0.8, 0.25, 1);
101
+
102
+ --#{$name-prefix}-arrow-size: 5px;
103
+ --#{$name-prefix}-arrow-color--enabled: inherit;
104
+ --#{$name-prefix}-arrow-color--focused: blue;
105
+ --#{$name-prefix}-arrow-color--invalid: red;
106
+ --#{$name-prefix}-arrow-color--disabled: grey;
107
+
108
+ --#{$name-prefix}-panel-background: black;
109
+ --#{$name-prefix}-panel-box-shadow: none;
110
+ --#{$name-prefix}-panel-border-radius: 4px;
111
+ --#{$name-prefix}-panel-list-wrapper-padding: 8px;
112
+ }
113
+
114
+ :root {
115
+ --#{$option-prefix}-color: inherit;
116
+ --#{$option-prefix}-font-family: inherit;
117
+ --#{$option-prefix}-line-height: inherit;
118
+ --#{$option-prefix}-font-size: inherit;
119
+ --#{$option-prefix}-letter-spacing: inherit;
120
+ --#{$option-prefix}-font-weight: inherit;
121
+
122
+ --#{$option-prefix}-selected-state-label-text-color: blue;
123
+ --#{$option-prefix}-background-color--active: darkgrey;
124
+ --#{$option-prefix}-background-color--hover: grey;
125
+ --#{$option-prefix}-background-color--selected: grey;
126
+
127
+ --#{$option-prefix}-disabled-state-opacity: 0.5;
128
+ --#{$option-prefix}-gap: 8px;
129
+ --#{$option-prefix}-padding: 0 16px;
130
+ }
131
+
132
+ @include overlay-position-styles();
133
+ }
134
+
135
+ @mixin overlay-position-styles() {
136
+ .#{$name-prefix} {
137
+ &-panel {
138
+ border-bottom-left-radius: var(--#{$name-prefix}-panel-border-radius);
139
+ border-bottom-right-radius: var(--#{$name-prefix}-panel-border-radius);
140
+ }
141
+
142
+ &-overlay--above {
143
+ .#{$name-prefix}-panel {
144
+ border-bottom-left-radius: 0;
145
+ border-bottom-right-radius: 0;
146
+ border-top-left-radius: var(--#{$name-prefix}-panel-border-radius);
147
+ border-top-right-radius: var(--#{$name-prefix}-panel-border-radius);
148
+ }
149
+ }
150
+ }
151
+ }