codecheck
136 строк · 3.0 Кб
1@use 'sass:math';
2
3// core
4.p-overlaypanel {
5margin-top: 10px;
6}
7
8.p-overlaypanel-flipped {
9margin-top: 0;
10margin-bottom: 10px;
11}
12
13.p-overlaypanel-close {
14display: flex;
15justify-content: center;
16align-items: center;
17overflow: hidden;
18position: relative;
19}
20
21/* Animation */
22.p-overlaypanel-enter-from {
23opacity: 0;
24transform: scaleY(0.8);
25}
26
27.p-overlaypanel-leave-to {
28opacity: 0;
29}
30
31.p-overlaypanel-enter-active {
32transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
33}
34
35.p-overlaypanel-leave-active {
36transition: opacity 0.1s linear;
37}
38
39.p-overlaypanel:after,
40.p-overlaypanel:before {
41bottom: 100%;
42left: calc(var(--overlayArrowLeft, 0) + 1.25rem);
43content: ' ';
44height: 0;
45width: 0;
46position: absolute;
47pointer-events: none;
48}
49
50.p-overlaypanel:after {
51border-width: 8px;
52margin-left: -8px;
53}
54
55.p-overlaypanel:before {
56border-width: 10px;
57margin-left: -10px;
58}
59
60.p-overlaypanel-flipped:after,
61.p-overlaypanel-flipped:before {
62bottom: auto;
63top: 100%;
64}
65
66.p-overlaypanel.p-overlaypanel-flipped:after {
67border-bottom-color: transparent;
68}
69
70.p-overlaypanel.p-overlaypanel-flipped:before {
71border-bottom-color: transparent;
72}
73
74// theme
75.p-overlaypanel {
76background: $overlayContentBg;
77color: $panelContentTextColor;
78border: $overlayContentBorder;
79border-radius: $borderRadius;
80box-shadow: $overlayContainerShadow;
81
82.p-overlaypanel-content {
83padding: $panelContentPadding;
84}
85
86.p-overlaypanel-close {
87background: $buttonBg;
88color: $buttonTextColor;
89width: $actionIconWidth;
90height: $actionIconHeight;
91transition: $actionIconTransition;
92border-radius: $actionIconBorderRadius;
93position: absolute;
94top: math.div(-1 * $actionIconWidth, 2);
95right: math.div(-1 * $actionIconWidth, 2);
96
97&:enabled:hover {
98background: $buttonHoverBg;
99color: $buttonTextHoverColor;
100}
101}
102
103&:after {
104border-style: solid;
105border-color: rgba($overlayContentBg, 0);
106border-bottom-color: $overlayContentBg;
107}
108
109&:before {
110border-style: solid;
111
112@if (nth($overlayContentBorder, 2) == 'none') {
113border-color: rgba($overlayContentBg, 0);
114border-bottom-color: scale-color($overlayContentBg, $lightness: -5%);
115}
116@else {
117border-color: rgba(nth($overlayContentBorder, 3), 0);
118border-bottom-color: scale-color(nth($overlayContentBorder, 3), $lightness: -5%);
119}
120}
121
122&.p-overlaypanel-flipped {
123&:after {
124border-top-color: $overlayContentBg;
125}
126
127&:before {
128@if (nth($overlayContentBorder, 2) == 'none') {
129border-top-color: $overlayContentBg;
130}
131@else {
132border-top-color: nth($overlayContentBorder, 3);
133}
134}
135}
136}
137