Version Description
- October 15 2018 =
- Fixed image widget styling.
Download this release
Release Info
Developer | iamadi |
Plugin | Widgets for SiteOrigin |
Version | 1.4.0 |
Comparing to | |
See all releases |
Code changes from version 1.3.9 to 1.4.0
- admin/admin.css +0 -198
- admin/admin.js +11911 -0
- admin/admin.min.css +1 -0
- admin/admin.php +216 -147
- admin/img/lowpoly.png +0 -0
- admin/img/text-name.png +0 -0
- inc/enqueue.php +2 -1
- readme.txt +62 -80
- widgets-for-siteorigin.php +2 -2
- widgets/ink-imge-widget/css/image.css +1 -1
- widgets/ink-imge-widget/styles/image.less +46 -42
admin/admin.css
DELETED
@@ -1,198 +0,0 @@
|
|
1 |
-
.iw-admin-page {
|
2 |
-
position: relative;
|
3 |
-
margin: 25px 40px 0 20px;
|
4 |
-
max-width: 1050px;
|
5 |
-
font-size: 15px;
|
6 |
-
}
|
7 |
-
|
8 |
-
@media ( max-width: 840px ) {
|
9 |
-
.iw-admin-page {
|
10 |
-
margin: 25px 20px 0 20px;
|
11 |
-
}
|
12 |
-
}
|
13 |
-
|
14 |
-
.iw-page-header {
|
15 |
-
box-sizing: border-box;
|
16 |
-
}
|
17 |
-
|
18 |
-
.iw-admin-page h1 {
|
19 |
-
margin: 25px 0;
|
20 |
-
padding: 0;
|
21 |
-
color: #32373c;
|
22 |
-
line-height: 1.2em;
|
23 |
-
font-size: 42px;
|
24 |
-
font-weight: 400;
|
25 |
-
}
|
26 |
-
|
27 |
-
.iw-admin-page h2 {
|
28 |
-
margin: 0 0 25px 0;
|
29 |
-
padding: 0;
|
30 |
-
color: #32373c;
|
31 |
-
line-height: 1.2em;
|
32 |
-
font-size: 27px;
|
33 |
-
font-weight: 300;
|
34 |
-
}
|
35 |
-
|
36 |
-
.iw-admin-page p,
|
37 |
-
.iw-admin-page li {
|
38 |
-
color: #555d66;
|
39 |
-
font-weight: 300;
|
40 |
-
line-height: 1.6em;
|
41 |
-
font-size: 15px;
|
42 |
-
}
|
43 |
-
|
44 |
-
.iw-admin-box {
|
45 |
-
width: 100%;
|
46 |
-
padding: 30px;
|
47 |
-
box-sizing: border-box;
|
48 |
-
margin-top: 30px;
|
49 |
-
}
|
50 |
-
|
51 |
-
.iw-admin-box:after {
|
52 |
-
clear: both;
|
53 |
-
content: "";
|
54 |
-
display: table;
|
55 |
-
}
|
56 |
-
|
57 |
-
@media ( max-width: 840px ) {
|
58 |
-
.iw-admin-box {
|
59 |
-
padding: 15px;
|
60 |
-
}
|
61 |
-
}
|
62 |
-
|
63 |
-
.iw-admin-box.pro {
|
64 |
-
background: white;
|
65 |
-
}
|
66 |
-
|
67 |
-
.iw-admin-box h2 {
|
68 |
-
padding-bottom: 25px;
|
69 |
-
border-bottom: 1px solid #32373c;
|
70 |
-
}
|
71 |
-
|
72 |
-
.iw-admin-box .feature {
|
73 |
-
margin-right: 4.999999999%;
|
74 |
-
width: 27.95%;
|
75 |
-
float: left;
|
76 |
-
position: relative;
|
77 |
-
padding-bottom: 20px;
|
78 |
-
}
|
79 |
-
|
80 |
-
@media ( max-width: 840px ) {
|
81 |
-
.iw-admin-box .feature {
|
82 |
-
margin-right: 0;
|
83 |
-
width: 100%;
|
84 |
-
float: none;
|
85 |
-
}
|
86 |
-
}
|
87 |
-
|
88 |
-
.iw-admin-box .row-sep {
|
89 |
-
width: 100%;
|
90 |
-
border-top: 1px solid transparent;
|
91 |
-
float: left;
|
92 |
-
position: relative;
|
93 |
-
padding-bottom: 20px;
|
94 |
-
}
|
95 |
-
|
96 |
-
.iw-admin-box .buy-pro img {
|
97 |
-
max-width: 100%;
|
98 |
-
}
|
99 |
-
|
100 |
-
.iw-admin-page.pro-license .iw-page-content {
|
101 |
-
background: #fff;
|
102 |
-
margin-bottom: 30px;
|
103 |
-
padding: 50px;
|
104 |
-
}
|
105 |
-
|
106 |
-
.iw-admin-page.pro-license .description {
|
107 |
-
font-size: 11px;
|
108 |
-
}
|
109 |
-
|
110 |
-
.iw-admin-page.pro-license .submit {
|
111 |
-
padding: 0;
|
112 |
-
margin: 0;
|
113 |
-
}
|
114 |
-
|
115 |
-
.iw-page-content .premium-upgrade .premium-upgrade-text {
|
116 |
-
font-size: 45px;
|
117 |
-
color: #232323;
|
118 |
-
margin: 0;
|
119 |
-
text-align: center;
|
120 |
-
}
|
121 |
-
|
122 |
-
.iw-so-admin-changelog li {
|
123 |
-
font-size: 18px;
|
124 |
-
line-height: 1.5;
|
125 |
-
color: #555d66;
|
126 |
-
}
|
127 |
-
|
128 |
-
.iw-so-admin-changelog li {
|
129 |
-
font-weight: bold;
|
130 |
-
margin-bottom: 40px;
|
131 |
-
}
|
132 |
-
|
133 |
-
.iw-so-admin-changelog ul {
|
134 |
-
margin-left: 45px;
|
135 |
-
list-style: disc;
|
136 |
-
}
|
137 |
-
|
138 |
-
.iw-so-admin-changelog ul li {
|
139 |
-
font-weight: lighter;
|
140 |
-
padding: 5px 0;
|
141 |
-
margin-bottom: 0;
|
142 |
-
font-size: 16px;
|
143 |
-
}
|
144 |
-
|
145 |
-
.iw-admin-page .use-beacon {
|
146 |
-
font-size: 15px;
|
147 |
-
}
|
148 |
-
|
149 |
-
.iw-admin-page.docs-support img {
|
150 |
-
margin-bottom: 50px;
|
151 |
-
}
|
152 |
-
|
153 |
-
@media ( max-width: 1300px ) {
|
154 |
-
.iw-admin-page.docs-support img {
|
155 |
-
display: block;
|
156 |
-
margin: 0 auto;
|
157 |
-
}
|
158 |
-
}
|
159 |
-
|
160 |
-
.iw-page-content .button-primary,
|
161 |
-
.iw-page-content .button-primary:hover,
|
162 |
-
.iw-page-content .button-primary:focus {
|
163 |
-
padding: 10px 20px;
|
164 |
-
background: #333;
|
165 |
-
color: #fff;
|
166 |
-
text-decoration: none;
|
167 |
-
font-size: 12px;
|
168 |
-
letter-spacing: 1px;
|
169 |
-
display: inline-block;
|
170 |
-
outline: none;
|
171 |
-
border-width: 0;
|
172 |
-
box-shadow: none;
|
173 |
-
-webkit-box-shadow: none;
|
174 |
-
text-shadow: none;
|
175 |
-
line-height: 1;
|
176 |
-
height: auto;
|
177 |
-
text-transform: uppercase;
|
178 |
-
}
|
179 |
-
|
180 |
-
.iw-page-content .button-secondary,
|
181 |
-
.iw-page-content .button-secondary:hover,
|
182 |
-
.iw-page-content .button-secondary:focus {
|
183 |
-
padding: 10px 20px;
|
184 |
-
background: #ddd;
|
185 |
-
color: #000;
|
186 |
-
text-decoration: none;
|
187 |
-
font-size: 12px;
|
188 |
-
letter-spacing: 1px;
|
189 |
-
display: inline-block;
|
190 |
-
outline: none;
|
191 |
-
border-width: 0;
|
192 |
-
box-shadow: none;
|
193 |
-
-webkit-box-shadow: none;
|
194 |
-
text-shadow: none;
|
195 |
-
line-height: 1;
|
196 |
-
height: auto;
|
197 |
-
text-transform: uppercase;
|
198 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/admin.js
ADDED
@@ -0,0 +1,11911 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*! UIkit 3.0.0-rc.19 | http://www.getuikit.com | (c) 2014 - 2018 YOOtheme | MIT License */
|
2 |
+
|
3 |
+
(function (global, factory) {
|
4 |
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
5 |
+
typeof define === 'function' && define.amd ? define('uikit', factory) :
|
6 |
+
(global.UIkit = factory());
|
7 |
+
}(this, (function () { 'use strict';
|
8 |
+
|
9 |
+
function bind(fn, context) {
|
10 |
+
return function (a) {
|
11 |
+
var l = arguments.length;
|
12 |
+
return l ? l > 1 ? fn.apply(context, arguments) : fn.call(context, a) : fn.call(context);
|
13 |
+
};
|
14 |
+
}
|
15 |
+
|
16 |
+
var objPrototype = Object.prototype;
|
17 |
+
var hasOwnProperty = objPrototype.hasOwnProperty;
|
18 |
+
|
19 |
+
function hasOwn(obj, key) {
|
20 |
+
return hasOwnProperty.call(obj, key);
|
21 |
+
}
|
22 |
+
|
23 |
+
var hyphenateCache = {};
|
24 |
+
var hyphenateRe = /([a-z\d])([A-Z])/g;
|
25 |
+
|
26 |
+
function hyphenate(str) {
|
27 |
+
|
28 |
+
if (!(str in hyphenateCache)) {
|
29 |
+
hyphenateCache[str] = str
|
30 |
+
.replace(hyphenateRe, '$1-$2')
|
31 |
+
.toLowerCase();
|
32 |
+
}
|
33 |
+
|
34 |
+
return hyphenateCache[str];
|
35 |
+
}
|
36 |
+
|
37 |
+
var camelizeRe = /-(\w)/g;
|
38 |
+
|
39 |
+
function camelize(str) {
|
40 |
+
return str.replace(camelizeRe, toUpper);
|
41 |
+
}
|
42 |
+
|
43 |
+
function toUpper(_, c) {
|
44 |
+
return c ? c.toUpperCase() : '';
|
45 |
+
}
|
46 |
+
|
47 |
+
function ucfirst(str) {
|
48 |
+
return str.length ? toUpper(null, str.charAt(0)) + str.slice(1) : '';
|
49 |
+
}
|
50 |
+
|
51 |
+
var strPrototype = String.prototype;
|
52 |
+
var startsWithFn = strPrototype.startsWith || function (search) { return this.lastIndexOf(search, 0) === 0; };
|
53 |
+
|
54 |
+
function startsWith(str, search) {
|
55 |
+
return startsWithFn.call(str, search);
|
56 |
+
}
|
57 |
+
|
58 |
+
var endsWithFn = strPrototype.endsWith || function (search) { return this.substr(-search.length) === search; };
|
59 |
+
|
60 |
+
function endsWith(str, search) {
|
61 |
+
return endsWithFn.call(str, search);
|
62 |
+
}
|
63 |
+
|
64 |
+
var includesFn = function (search) { return ~this.indexOf(search); };
|
65 |
+
var includesStr = strPrototype.includes || includesFn;
|
66 |
+
var includesArray = Array.prototype.includes || includesFn;
|
67 |
+
|
68 |
+
function includes(obj, search) {
|
69 |
+
return obj && (isString(obj) ? includesStr : includesArray).call(obj, search);
|
70 |
+
}
|
71 |
+
|
72 |
+
var isArray = Array.isArray;
|
73 |
+
|
74 |
+
function isFunction(obj) {
|
75 |
+
return typeof obj === 'function';
|
76 |
+
}
|
77 |
+
|
78 |
+
function isObject(obj) {
|
79 |
+
return obj !== null && typeof obj === 'object';
|
80 |
+
}
|
81 |
+
|
82 |
+
function isPlainObject(obj) {
|
83 |
+
return isObject(obj) && Object.getPrototypeOf(obj) === objPrototype;
|
84 |
+
}
|
85 |
+
|
86 |
+
function isWindow(obj) {
|
87 |
+
return isObject(obj) && obj === obj.window;
|
88 |
+
}
|
89 |
+
|
90 |
+
function isDocument(obj) {
|
91 |
+
return isObject(obj) && obj.nodeType === 9;
|
92 |
+
}
|
93 |
+
|
94 |
+
function isJQuery(obj) {
|
95 |
+
return isObject(obj) && !!obj.jquery;
|
96 |
+
}
|
97 |
+
|
98 |
+
function isNode(obj) {
|
99 |
+
return obj instanceof Node || isObject(obj) && obj.nodeType >= 1;
|
100 |
+
}
|
101 |
+
|
102 |
+
var toString = objPrototype.toString;
|
103 |
+
function isNodeCollection(obj) {
|
104 |
+
return toString.call(obj).match(/^\[object (NodeList|HTMLCollection)\]$/);
|
105 |
+
}
|
106 |
+
|
107 |
+
function isBoolean(value) {
|
108 |
+
return typeof value === 'boolean';
|
109 |
+
}
|
110 |
+
|
111 |
+
function isString(value) {
|
112 |
+
return typeof value === 'string';
|
113 |
+
}
|
114 |
+
|
115 |
+
function isNumber(value) {
|
116 |
+
return typeof value === 'number';
|
117 |
+
}
|
118 |
+
|
119 |
+
function isNumeric(value) {
|
120 |
+
return isNumber(value) || isString(value) && !isNaN(value - parseFloat(value));
|
121 |
+
}
|
122 |
+
|
123 |
+
function isUndefined(value) {
|
124 |
+
return value === void 0;
|
125 |
+
}
|
126 |
+
|
127 |
+
function toBoolean(value) {
|
128 |
+
return isBoolean(value)
|
129 |
+
? value
|
130 |
+
: value === 'true' || value === '1' || value === ''
|
131 |
+
? true
|
132 |
+
: value === 'false' || value === '0'
|
133 |
+
? false
|
134 |
+
: value;
|
135 |
+
}
|
136 |
+
|
137 |
+
function toNumber(value) {
|
138 |
+
var number = Number(value);
|
139 |
+
return !isNaN(number) ? number : false;
|
140 |
+
}
|
141 |
+
|
142 |
+
function toFloat(value) {
|
143 |
+
return parseFloat(value) || 0;
|
144 |
+
}
|
145 |
+
|
146 |
+
function toNode(element) {
|
147 |
+
return isNode(element) || isWindow(element) || isDocument(element)
|
148 |
+
? element
|
149 |
+
: isNodeCollection(element) || isJQuery(element)
|
150 |
+
? element[0]
|
151 |
+
: isArray(element)
|
152 |
+
? toNode(element[0])
|
153 |
+
: null;
|
154 |
+
}
|
155 |
+
|
156 |
+
var arrayProto = Array.prototype;
|
157 |
+
function toNodes(element) {
|
158 |
+
return isNode(element)
|
159 |
+
? [element]
|
160 |
+
: isNodeCollection(element)
|
161 |
+
? arrayProto.slice.call(element)
|
162 |
+
: isArray(element)
|
163 |
+
? element.map(toNode).filter(Boolean)
|
164 |
+
: isJQuery(element)
|
165 |
+
? element.toArray()
|
166 |
+
: [];
|
167 |
+
}
|
168 |
+
|
169 |
+
function toList(value) {
|
170 |
+
return isArray(value)
|
171 |
+
? value
|
172 |
+
: isString(value)
|
173 |
+
? value.split(/,(?![^(]*\))/).map(function (value) { return isNumeric(value)
|
174 |
+
? toNumber(value)
|
175 |
+
: toBoolean(value.trim()); })
|
176 |
+
: [value];
|
177 |
+
}
|
178 |
+
|
179 |
+
function toMs(time) {
|
180 |
+
return !time
|
181 |
+
? 0
|
182 |
+
: endsWith(time, 'ms')
|
183 |
+
? toFloat(time)
|
184 |
+
: toFloat(time) * 1000;
|
185 |
+
}
|
186 |
+
|
187 |
+
function swap(value, a, b) {
|
188 |
+
return value.replace(new RegExp((a + "|" + b), 'mg'), function (match) {
|
189 |
+
return match === a ? b : a;
|
190 |
+
});
|
191 |
+
}
|
192 |
+
|
193 |
+
var assign = Object.assign || function (target) {
|
194 |
+
var args = [], len = arguments.length - 1;
|
195 |
+
while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
|
196 |
+
|
197 |
+
target = Object(target);
|
198 |
+
for (var i = 0; i < args.length; i++) {
|
199 |
+
var source = args[i];
|
200 |
+
if (source !== null) {
|
201 |
+
for (var key in source) {
|
202 |
+
if (hasOwn(source, key)) {
|
203 |
+
target[key] = source[key];
|
204 |
+
}
|
205 |
+
}
|
206 |
+
}
|
207 |
+
}
|
208 |
+
return target;
|
209 |
+
};
|
210 |
+
|
211 |
+
function each(obj, cb) {
|
212 |
+
for (var key in obj) {
|
213 |
+
cb.call(obj[key], obj[key], key);
|
214 |
+
}
|
215 |
+
}
|
216 |
+
|
217 |
+
function sortBy(collection, prop) {
|
218 |
+
return collection.sort(function (ref, ref$1) {
|
219 |
+
var propA = ref[prop]; if ( propA === void 0 ) propA = 0;
|
220 |
+
var propB = ref$1[prop]; if ( propB === void 0 ) propB = 0;
|
221 |
+
|
222 |
+
return propA > propB
|
223 |
+
? 1
|
224 |
+
: propB > propA
|
225 |
+
? -1
|
226 |
+
: 0;
|
227 |
+
}
|
228 |
+
);
|
229 |
+
}
|
230 |
+
|
231 |
+
function clamp(number, min, max) {
|
232 |
+
if ( min === void 0 ) min = 0;
|
233 |
+
if ( max === void 0 ) max = 1;
|
234 |
+
|
235 |
+
return Math.min(Math.max(toNumber(number) || 0, min), max);
|
236 |
+
}
|
237 |
+
|
238 |
+
function noop() {}
|
239 |
+
|
240 |
+
function intersectRect(r1, r2) {
|
241 |
+
return r1.left < r2.right &&
|
242 |
+
r1.right > r2.left &&
|
243 |
+
r1.top < r2.bottom &&
|
244 |
+
r1.bottom > r2.top;
|
245 |
+
}
|
246 |
+
|
247 |
+
function pointInRect(point, rect) {
|
248 |
+
return point.x <= rect.right &&
|
249 |
+
point.x >= rect.left &&
|
250 |
+
point.y <= rect.bottom &&
|
251 |
+
point.y >= rect.top;
|
252 |
+
}
|
253 |
+
|
254 |
+
var Dimensions = {
|
255 |
+
|
256 |
+
ratio: function(dimensions, prop, value) {
|
257 |
+
var obj;
|
258 |
+
|
259 |
+
|
260 |
+
var aProp = prop === 'width' ? 'height' : 'width';
|
261 |
+
|
262 |
+
return ( obj = {}, obj[aProp] = dimensions[prop] ? Math.round(value * dimensions[aProp] / dimensions[prop]) : dimensions[aProp], obj[prop] = value, obj );
|
263 |
+
},
|
264 |
+
|
265 |
+
contain: function(dimensions, maxDimensions) {
|
266 |
+
var this$1 = this;
|
267 |
+
|
268 |
+
dimensions = assign({}, dimensions);
|
269 |
+
|
270 |
+
each(dimensions, function (_, prop) { return dimensions = dimensions[prop] > maxDimensions[prop]
|
271 |
+
? this$1.ratio(dimensions, prop, maxDimensions[prop])
|
272 |
+
: dimensions; }
|
273 |
+
);
|
274 |
+
|
275 |
+
return dimensions;
|
276 |
+
},
|
277 |
+
|
278 |
+
cover: function(dimensions, maxDimensions) {
|
279 |
+
var this$1 = this;
|
280 |
+
|
281 |
+
dimensions = this.contain(dimensions, maxDimensions);
|
282 |
+
|
283 |
+
each(dimensions, function (_, prop) { return dimensions = dimensions[prop] < maxDimensions[prop]
|
284 |
+
? this$1.ratio(dimensions, prop, maxDimensions[prop])
|
285 |
+
: dimensions; }
|
286 |
+
);
|
287 |
+
|
288 |
+
return dimensions;
|
289 |
+
}
|
290 |
+
|
291 |
+
};
|
292 |
+
|
293 |
+
function attr(element, name, value) {
|
294 |
+
|
295 |
+
if (isObject(name)) {
|
296 |
+
for (var key in name) {
|
297 |
+
attr(element, key, name[key]);
|
298 |
+
}
|
299 |
+
return;
|
300 |
+
}
|
301 |
+
|
302 |
+
if (isUndefined(value)) {
|
303 |
+
element = toNode(element);
|
304 |
+
return element && element.getAttribute(name);
|
305 |
+
} else {
|
306 |
+
toNodes(element).forEach(function (element) {
|
307 |
+
|
308 |
+
if (isFunction(value)) {
|
309 |
+
value = value.call(element, attr(element, name));
|
310 |
+
}
|
311 |
+
|
312 |
+
if (value === null) {
|
313 |
+
removeAttr(element, name);
|
314 |
+
} else {
|
315 |
+
element.setAttribute(name, value);
|
316 |
+
}
|
317 |
+
});
|
318 |
+
}
|
319 |
+
|
320 |
+
}
|
321 |
+
|
322 |
+
function hasAttr(element, name) {
|
323 |
+
return toNodes(element).some(function (element) { return element.hasAttribute(name); });
|
324 |
+
}
|
325 |
+
|
326 |
+
function removeAttr(element, name) {
|
327 |
+
element = toNodes(element);
|
328 |
+
name.split(' ').forEach(function (name) { return element.forEach(function (element) { return element.removeAttribute(name); }
|
329 |
+
); }
|
330 |
+
);
|
331 |
+
}
|
332 |
+
|
333 |
+
function data(element, attribute) {
|
334 |
+
for (var i = 0, attrs = [attribute, ("data-" + attribute)]; i < attrs.length; i++) {
|
335 |
+
if (hasAttr(element, attrs[i])) {
|
336 |
+
return attr(element, attrs[i]);
|
337 |
+
}
|
338 |
+
}
|
339 |
+
}
|
340 |
+
|
341 |
+
function query(selector, context) {
|
342 |
+
return toNode(selector) || find(selector, getContext(selector, context));
|
343 |
+
}
|
344 |
+
|
345 |
+
function queryAll(selector, context) {
|
346 |
+
var nodes = toNodes(selector);
|
347 |
+
return nodes.length && nodes || findAll(selector, getContext(selector, context));
|
348 |
+
}
|
349 |
+
|
350 |
+
function getContext(selector, context) {
|
351 |
+
if ( context === void 0 ) context = document;
|
352 |
+
|
353 |
+
return isContextSelector(selector) || isDocument(context)
|
354 |
+
? context
|
355 |
+
: context.ownerDocument;
|
356 |
+
}
|
357 |
+
|
358 |
+
function find(selector, context) {
|
359 |
+
return toNode(_query(selector, context, 'querySelector'));
|
360 |
+
}
|
361 |
+
|
362 |
+
function findAll(selector, context) {
|
363 |
+
return toNodes(_query(selector, context, 'querySelectorAll'));
|
364 |
+
}
|
365 |
+
|
366 |
+
function _query(selector, context, queryFn) {
|
367 |
+
if ( context === void 0 ) context = document;
|
368 |
+
|
369 |
+
|
370 |
+
if (!selector || !isString(selector)) {
|
371 |
+
return null;
|
372 |
+
}
|
373 |
+
|
374 |
+
selector = selector.replace(contextSanitizeRe, '$1 *');
|
375 |
+
|
376 |
+
var removes;
|
377 |
+
|
378 |
+
if (isContextSelector(selector)) {
|
379 |
+
|
380 |
+
removes = [];
|
381 |
+
|
382 |
+
selector = selector.split(',').map(function (selector, i) {
|
383 |
+
|
384 |
+
var ctx = context;
|
385 |
+
|
386 |
+
selector = selector.trim();
|
387 |
+
|
388 |
+
if (selector[0] === '!') {
|
389 |
+
|
390 |
+
var selectors = selector.substr(1).trim().split(' ');
|
391 |
+
ctx = closest(context.parentNode, selectors[0]);
|
392 |
+
selector = selectors.slice(1).join(' ').trim();
|
393 |
+
|
394 |
+
}
|
395 |
+
|
396 |
+
if (selector[0] === '-') {
|
397 |
+
|
398 |
+
var selectors$1 = selector.substr(1).trim().split(' ');
|
399 |
+
var prev = (ctx || context).previousElementSibling;
|
400 |
+
ctx = matches(prev, selector.substr(1)) ? prev : null;
|
401 |
+
selector = selectors$1.slice(1).join(' ');
|
402 |
+
|
403 |
+
}
|
404 |
+
|
405 |
+
if (!ctx) {
|
406 |
+
return null;
|
407 |
+
}
|
408 |
+
|
409 |
+
if (!ctx.id) {
|
410 |
+
ctx.id = "uk-" + (Date.now()) + i;
|
411 |
+
removes.push(function () { return removeAttr(ctx, 'id'); });
|
412 |
+
}
|
413 |
+
|
414 |
+
return ("#" + (escape(ctx.id)) + " " + selector);
|
415 |
+
|
416 |
+
}).filter(Boolean).join(',');
|
417 |
+
|
418 |
+
context = document;
|
419 |
+
|
420 |
+
}
|
421 |
+
|
422 |
+
try {
|
423 |
+
|
424 |
+
return context[queryFn](selector);
|
425 |
+
|
426 |
+
} catch (e) {
|
427 |
+
|
428 |
+
return null;
|
429 |
+
|
430 |
+
} finally {
|
431 |
+
|
432 |
+
removes && removes.forEach(function (remove) { return remove(); });
|
433 |
+
|
434 |
+
}
|
435 |
+
|
436 |
+
}
|
437 |
+
|
438 |
+
var contextSelectorRe = /(^|,)\s*[!>+~-]/;
|
439 |
+
var contextSanitizeRe = /([!>+~-])(?=\s+[!>+~-]|\s*$)/g;
|
440 |
+
|
441 |
+
function isContextSelector(selector) {
|
442 |
+
return isString(selector) && selector.match(contextSelectorRe);
|
443 |
+
}
|
444 |
+
|
445 |
+
var elProto = Element.prototype;
|
446 |
+
var matchesFn = elProto.matches || elProto.webkitMatchesSelector || elProto.msMatchesSelector;
|
447 |
+
|
448 |
+
function matches(element, selector) {
|
449 |
+
return toNodes(element).some(function (element) { return matchesFn.call(element, selector); });
|
450 |
+
}
|
451 |
+
|
452 |
+
var closestFn = elProto.closest || function (selector) {
|
453 |
+
var ancestor = this;
|
454 |
+
|
455 |
+
do {
|
456 |
+
|
457 |
+
if (matches(ancestor, selector)) {
|
458 |
+
return ancestor;
|
459 |
+
}
|
460 |
+
|
461 |
+
ancestor = ancestor.parentNode;
|
462 |
+
|
463 |
+
} while (ancestor && ancestor.nodeType === 1);
|
464 |
+
};
|
465 |
+
|
466 |
+
function closest(element, selector) {
|
467 |
+
|
468 |
+
if (startsWith(selector, '>')) {
|
469 |
+
selector = selector.slice(1);
|
470 |
+
}
|
471 |
+
|
472 |
+
return isNode(element)
|
473 |
+
? element.parentNode && closestFn.call(element, selector)
|
474 |
+
: toNodes(element).map(function (element) { return element.parentNode && closestFn.call(element, selector); }).filter(Boolean);
|
475 |
+
}
|
476 |
+
|
477 |
+
function parents(element, selector) {
|
478 |
+
var elements = [];
|
479 |
+
var parent = toNode(element).parentNode;
|
480 |
+
|
481 |
+
while (parent && parent.nodeType === 1) {
|
482 |
+
|
483 |
+
if (matches(parent, selector)) {
|
484 |
+
elements.push(parent);
|
485 |
+
}
|
486 |
+
|
487 |
+
parent = parent.parentNode;
|
488 |
+
}
|
489 |
+
|
490 |
+
return elements;
|
491 |
+
}
|
492 |
+
|
493 |
+
var escapeFn = window.CSS && CSS.escape || function (css) { return css.replace(/([^\x7f-\uFFFF\w-])/g, function (match) { return ("\\" + match); }); };
|
494 |
+
function escape(css) {
|
495 |
+
return isString(css) ? escapeFn.call(null, css) : '';
|
496 |
+
}
|
497 |
+
|
498 |
+
var voidElements = {
|
499 |
+
area: true,
|
500 |
+
base: true,
|
501 |
+
br: true,
|
502 |
+
col: true,
|
503 |
+
embed: true,
|
504 |
+
hr: true,
|
505 |
+
img: true,
|
506 |
+
input: true,
|
507 |
+
keygen: true,
|
508 |
+
link: true,
|
509 |
+
menuitem: true,
|
510 |
+
meta: true,
|
511 |
+
param: true,
|
512 |
+
source: true,
|
513 |
+
track: true,
|
514 |
+
wbr: true
|
515 |
+
};
|
516 |
+
function isVoidElement(element) {
|
517 |
+
return toNodes(element).some(function (element) { return voidElements[element.tagName.toLowerCase()]; });
|
518 |
+
}
|
519 |
+
|
520 |
+
function isVisible(element) {
|
521 |
+
return toNodes(element).some(function (element) { return element.offsetWidth || element.offsetHeight || element.getClientRects().length; });
|
522 |
+
}
|
523 |
+
|
524 |
+
var selInput = 'input,select,textarea,button';
|
525 |
+
function isInput(element) {
|
526 |
+
return toNodes(element).some(function (element) { return matches(element, selInput); });
|
527 |
+
}
|
528 |
+
|
529 |
+
function filter(element, selector) {
|
530 |
+
return toNodes(element).filter(function (element) { return matches(element, selector); });
|
531 |
+
}
|
532 |
+
|
533 |
+
function within(element, selector) {
|
534 |
+
return !isString(selector)
|
535 |
+
? element === selector || (isDocument(selector)
|
536 |
+
? selector.documentElement
|
537 |
+
: toNode(selector)).contains(toNode(element)) // IE 11 document does not implement contains
|
538 |
+
: matches(element, selector) || closest(element, selector);
|
539 |
+
}
|
540 |
+
|
541 |
+
function on() {
|
542 |
+
var args = [], len = arguments.length;
|
543 |
+
while ( len-- ) args[ len ] = arguments[ len ];
|
544 |
+
|
545 |
+
|
546 |
+
var ref = getArgs(args);
|
547 |
+
var targets = ref[0];
|
548 |
+
var type = ref[1];
|
549 |
+
var selector = ref[2];
|
550 |
+
var listener = ref[3];
|
551 |
+
var useCapture = ref[4];
|
552 |
+
|
553 |
+
targets = toEventTargets(targets);
|
554 |
+
|
555 |
+
if (selector) {
|
556 |
+
listener = delegate(targets, selector, listener);
|
557 |
+
}
|
558 |
+
|
559 |
+
if (listener.length > 1) {
|
560 |
+
listener = detail(listener);
|
561 |
+
}
|
562 |
+
|
563 |
+
type.split(' ').forEach(function (type) { return targets.forEach(function (target) { return target.addEventListener(type, listener, useCapture); }
|
564 |
+
); }
|
565 |
+
);
|
566 |
+
return function () { return off(targets, type, listener, useCapture); };
|
567 |
+
}
|
568 |
+
|
569 |
+
function off(targets, type, listener, useCapture) {
|
570 |
+
if ( useCapture === void 0 ) useCapture = false;
|
571 |
+
|
572 |
+
targets = toEventTargets(targets);
|
573 |
+
type.split(' ').forEach(function (type) { return targets.forEach(function (target) { return target.removeEventListener(type, listener, useCapture); }
|
574 |
+
); }
|
575 |
+
);
|
576 |
+
}
|
577 |
+
|
578 |
+
function once() {
|
579 |
+
var args = [], len = arguments.length;
|
580 |
+
while ( len-- ) args[ len ] = arguments[ len ];
|
581 |
+
|
582 |
+
|
583 |
+
var ref = getArgs(args);
|
584 |
+
var element = ref[0];
|
585 |
+
var type = ref[1];
|
586 |
+
var selector = ref[2];
|
587 |
+
var listener = ref[3];
|
588 |
+
var useCapture = ref[4];
|
589 |
+
var condition = ref[5];
|
590 |
+
var off = on(element, type, selector, function (e) {
|
591 |
+
var result = !condition || condition(e);
|
592 |
+
if (result) {
|
593 |
+
off();
|
594 |
+
listener(e, result);
|
595 |
+
}
|
596 |
+
}, useCapture);
|
597 |
+
|
598 |
+
return off;
|
599 |
+
}
|
600 |
+
|
601 |
+
function trigger(targets, event, detail) {
|
602 |
+
return toEventTargets(targets).reduce(function (notCanceled, target) { return notCanceled && target.dispatchEvent(createEvent(event, true, true, detail)); }
|
603 |
+
, true);
|
604 |
+
}
|
605 |
+
|
606 |
+
function createEvent(e, bubbles, cancelable, detail) {
|
607 |
+
if ( bubbles === void 0 ) bubbles = true;
|
608 |
+
if ( cancelable === void 0 ) cancelable = false;
|
609 |
+
|
610 |
+
if (isString(e)) {
|
611 |
+
var event = document.createEvent('CustomEvent'); // IE 11
|
612 |
+
event.initCustomEvent(e, bubbles, cancelable, detail);
|
613 |
+
e = event;
|
614 |
+
}
|
615 |
+
|
616 |
+
return e;
|
617 |
+
}
|
618 |
+
|
619 |
+
function getArgs(args) {
|
620 |
+
if (isFunction(args[2])) {
|
621 |
+
args.splice(2, 0, false);
|
622 |
+
}
|
623 |
+
return args;
|
624 |
+
}
|
625 |
+
|
626 |
+
function delegate(delegates, selector, listener) {
|
627 |
+
var this$1 = this;
|
628 |
+
|
629 |
+
return function (e) {
|
630 |
+
|
631 |
+
delegates.forEach(function (delegate) {
|
632 |
+
|
633 |
+
var current = selector[0] === '>'
|
634 |
+
? findAll(selector, delegate).reverse().filter(function (element) { return within(e.target, element); })[0]
|
635 |
+
: closest(e.target, selector);
|
636 |
+
|
637 |
+
if (current) {
|
638 |
+
e.delegate = delegate;
|
639 |
+
e.current = current;
|
640 |
+
|
641 |
+
listener.call(this$1, e);
|
642 |
+
}
|
643 |
+
|
644 |
+
});
|
645 |
+
|
646 |
+
};
|
647 |
+
}
|
648 |
+
|
649 |
+
function detail(listener) {
|
650 |
+
return function (e) { return isArray(e.detail) ? listener.apply(void 0, [e].concat(e.detail)) : listener(e); };
|
651 |
+
}
|
652 |
+
|
653 |
+
function isEventTarget(target) {
|
654 |
+
return target && 'addEventListener' in target;
|
655 |
+
}
|
656 |
+
|
657 |
+
function toEventTarget(target) {
|
658 |
+
return isEventTarget(target) ? target : toNode(target);
|
659 |
+
}
|
660 |
+
|
661 |
+
function toEventTargets(target) {
|
662 |
+
return isArray(target)
|
663 |
+
? target.map(toEventTarget).filter(Boolean)
|
664 |
+
: isString(target)
|
665 |
+
? findAll(target)
|
666 |
+
: isEventTarget(target)
|
667 |
+
? [target]
|
668 |
+
: toNodes(target);
|
669 |
+
}
|
670 |
+
|
671 |
+
function preventClick() {
|
672 |
+
|
673 |
+
var timer = setTimeout(once(document, 'click', function (e) {
|
674 |
+
|
675 |
+
e.preventDefault();
|
676 |
+
e.stopImmediatePropagation();
|
677 |
+
|
678 |
+
clearTimeout(timer);
|
679 |
+
|
680 |
+
}, true));
|
681 |
+
|
682 |
+
trigger(document, 'touchcancel');
|
683 |
+
|
684 |
+
}
|
685 |
+
|
686 |
+
/* global setImmediate */
|
687 |
+
|
688 |
+
var Promise = 'Promise' in window ? window.Promise : PromiseFn;
|
689 |
+
|
690 |
+
var Deferred = function() {
|
691 |
+
var this$1 = this;
|
692 |
+
|
693 |
+
this.promise = new Promise(function (resolve, reject) {
|
694 |
+
this$1.reject = reject;
|
695 |
+
this$1.resolve = resolve;
|
696 |
+
});
|
697 |
+
};
|
698 |
+
|
699 |
+
/**
|
700 |
+
* Promises/A+ polyfill v1.1.4 (https://github.com/bramstein/promis)
|
701 |
+
*/
|
702 |
+
|
703 |
+
var RESOLVED = 0;
|
704 |
+
var REJECTED = 1;
|
705 |
+
var PENDING = 2;
|
706 |
+
|
707 |
+
var async = 'setImmediate' in window ? setImmediate : setTimeout;
|
708 |
+
|
709 |
+
function PromiseFn(executor) {
|
710 |
+
|
711 |
+
this.state = PENDING;
|
712 |
+
this.value = undefined;
|
713 |
+
this.deferred = [];
|
714 |
+
|
715 |
+
var promise = this;
|
716 |
+
|
717 |
+
try {
|
718 |
+
executor(
|
719 |
+
function (x) {
|
720 |
+
promise.resolve(x);
|
721 |
+
},
|
722 |
+
function (r) {
|
723 |
+
promise.reject(r);
|
724 |
+
}
|
725 |
+
);
|
726 |
+
} catch (e) {
|
727 |
+
promise.reject(e);
|
728 |
+
}
|
729 |
+
}
|
730 |
+
|
731 |
+
PromiseFn.reject = function (r) {
|
732 |
+
return new PromiseFn(function (resolve, reject) {
|
733 |
+
reject(r);
|
734 |
+
});
|
735 |
+
};
|
736 |
+
|
737 |
+
PromiseFn.resolve = function (x) {
|
738 |
+
return new PromiseFn(function (resolve, reject) {
|
739 |
+
resolve(x);
|
740 |
+
});
|
741 |
+
};
|
742 |
+
|
743 |
+
PromiseFn.all = function all(iterable) {
|
744 |
+
return new PromiseFn(function (resolve, reject) {
|
745 |
+
var result = [];
|
746 |
+
var count = 0;
|
747 |
+
|
748 |
+
if (iterable.length === 0) {
|
749 |
+
resolve(result);
|
750 |
+
}
|
751 |
+
|
752 |
+
function resolver(i) {
|
753 |
+
return function (x) {
|
754 |
+
result[i] = x;
|
755 |
+
count += 1;
|
756 |
+
|
757 |
+
if (count === iterable.length) {
|
758 |
+
resolve(result);
|
759 |
+
}
|
760 |
+
};
|
761 |
+
}
|
762 |
+
|
763 |
+
for (var i = 0; i < iterable.length; i += 1) {
|
764 |
+
PromiseFn.resolve(iterable[i]).then(resolver(i), reject);
|
765 |
+
}
|
766 |
+
});
|
767 |
+
};
|
768 |
+
|
769 |
+
PromiseFn.race = function race(iterable) {
|
770 |
+
return new PromiseFn(function (resolve, reject) {
|
771 |
+
for (var i = 0; i < iterable.length; i += 1) {
|
772 |
+
PromiseFn.resolve(iterable[i]).then(resolve, reject);
|
773 |
+
}
|
774 |
+
});
|
775 |
+
};
|
776 |
+
|
777 |
+
var p = PromiseFn.prototype;
|
778 |
+
|
779 |
+
p.resolve = function resolve(x) {
|
780 |
+
var promise = this;
|
781 |
+
|
782 |
+
if (promise.state === PENDING) {
|
783 |
+
if (x === promise) {
|
784 |
+
throw new TypeError('Promise settled with itself.');
|
785 |
+
}
|
786 |
+
|
787 |
+
var called = false;
|
788 |
+
|
789 |
+
try {
|
790 |
+
var then = x && x.then;
|
791 |
+
|
792 |
+
if (x !== null && isObject(x) && isFunction(then)) {
|
793 |
+
then.call(
|
794 |
+
x,
|
795 |
+
function (x) {
|
796 |
+
if (!called) {
|
797 |
+
promise.resolve(x);
|
798 |
+
}
|
799 |
+
called = true;
|
800 |
+
},
|
801 |
+
function (r) {
|
802 |
+
if (!called) {
|
803 |
+
promise.reject(r);
|
804 |
+
}
|
805 |
+
called = true;
|
806 |
+
}
|
807 |
+
);
|
808 |
+
return;
|
809 |
+
}
|
810 |
+
} catch (e) {
|
811 |
+
if (!called) {
|
812 |
+
promise.reject(e);
|
813 |
+
}
|
814 |
+
return;
|
815 |
+
}
|
816 |
+
|
817 |
+
promise.state = RESOLVED;
|
818 |
+
promise.value = x;
|
819 |
+
promise.notify();
|
820 |
+
}
|
821 |
+
};
|
822 |
+
|
823 |
+
p.reject = function reject(reason) {
|
824 |
+
var promise = this;
|
825 |
+
|
826 |
+
if (promise.state === PENDING) {
|
827 |
+
if (reason === promise) {
|
828 |
+
throw new TypeError('Promise settled with itself.');
|
829 |
+
}
|
830 |
+
|
831 |
+
promise.state = REJECTED;
|
832 |
+
promise.value = reason;
|
833 |
+
promise.notify();
|
834 |
+
}
|
835 |
+
};
|
836 |
+
|
837 |
+
p.notify = function notify() {
|
838 |
+
var this$1 = this;
|
839 |
+
|
840 |
+
async(function () {
|
841 |
+
if (this$1.state !== PENDING) {
|
842 |
+
while (this$1.deferred.length) {
|
843 |
+
var ref = this$1.deferred.shift();
|
844 |
+
var onResolved = ref[0];
|
845 |
+
var onRejected = ref[1];
|
846 |
+
var resolve = ref[2];
|
847 |
+
var reject = ref[3];
|
848 |
+
|
849 |
+
try {
|
850 |
+
if (this$1.state === RESOLVED) {
|
851 |
+
if (isFunction(onResolved)) {
|
852 |
+
resolve(onResolved.call(undefined, this$1.value));
|
853 |
+
} else {
|
854 |
+
resolve(this$1.value);
|
855 |
+
}
|
856 |
+
} else if (this$1.state === REJECTED) {
|
857 |
+
if (isFunction(onRejected)) {
|
858 |
+
resolve(onRejected.call(undefined, this$1.value));
|
859 |
+
} else {
|
860 |
+
reject(this$1.value);
|
861 |
+
}
|
862 |
+
}
|
863 |
+
} catch (e) {
|
864 |
+
reject(e);
|
865 |
+
}
|
866 |
+
}
|
867 |
+
}
|
868 |
+
});
|
869 |
+
};
|
870 |
+
|
871 |
+
p.then = function then(onResolved, onRejected) {
|
872 |
+
var this$1 = this;
|
873 |
+
|
874 |
+
return new PromiseFn(function (resolve, reject) {
|
875 |
+
this$1.deferred.push([onResolved, onRejected, resolve, reject]);
|
876 |
+
this$1.notify();
|
877 |
+
});
|
878 |
+
};
|
879 |
+
|
880 |
+
p.catch = function (onRejected) {
|
881 |
+
return this.then(undefined, onRejected);
|
882 |
+
};
|
883 |
+
|
884 |
+
function ajax(url, options) {
|
885 |
+
return new Promise(function (resolve, reject) {
|
886 |
+
|
887 |
+
var env = assign({
|
888 |
+
data: null,
|
889 |
+
method: 'GET',
|
890 |
+
headers: {},
|
891 |
+
xhr: new XMLHttpRequest(),
|
892 |
+
beforeSend: noop,
|
893 |
+
responseType: ''
|
894 |
+
}, options);
|
895 |
+
|
896 |
+
env.beforeSend(env);
|
897 |
+
|
898 |
+
var xhr = env.xhr;
|
899 |
+
|
900 |
+
for (var prop in env) {
|
901 |
+
if (prop in xhr) {
|
902 |
+
try {
|
903 |
+
|
904 |
+
xhr[prop] = env[prop];
|
905 |
+
|
906 |
+
} catch (e) {}
|
907 |
+
}
|
908 |
+
}
|
909 |
+
|
910 |
+
xhr.open(env.method.toUpperCase(), url);
|
911 |
+
|
912 |
+
for (var header in env.headers) {
|
913 |
+
xhr.setRequestHeader(header, env.headers[header]);
|
914 |
+
}
|
915 |
+
|
916 |
+
on(xhr, 'load', function () {
|
917 |
+
|
918 |
+
if (xhr.status === 0 || xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {
|
919 |
+
resolve(xhr);
|
920 |
+
} else {
|
921 |
+
reject(assign(Error(xhr.statusText), {
|
922 |
+
xhr: xhr,
|
923 |
+
status: xhr.status
|
924 |
+
}));
|
925 |
+
}
|
926 |
+
|
927 |
+
});
|
928 |
+
|
929 |
+
on(xhr, 'error', function () { return reject(assign(Error('Network Error'), {xhr: xhr})); });
|
930 |
+
on(xhr, 'timeout', function () { return reject(assign(Error('Network Timeout'), {xhr: xhr})); });
|
931 |
+
|
932 |
+
xhr.send(env.data);
|
933 |
+
});
|
934 |
+
}
|
935 |
+
|
936 |
+
function getImage(src, srcset, sizes) {
|
937 |
+
|
938 |
+
return new Promise(function (resolve, reject) {
|
939 |
+
var img = new Image();
|
940 |
+
|
941 |
+
img.onerror = reject;
|
942 |
+
img.onload = function () { return resolve(img); };
|
943 |
+
|
944 |
+
sizes && (img.sizes = sizes);
|
945 |
+
srcset && (img.srcset = srcset);
|
946 |
+
img.src = src;
|
947 |
+
});
|
948 |
+
|
949 |
+
}
|
950 |
+
|
951 |
+
/* global DocumentTouch */
|
952 |
+
|
953 |
+
var isIE = /msie|trident/i.test(window.navigator.userAgent);
|
954 |
+
var isRtl = attr(document.documentElement, 'dir') === 'rtl';
|
955 |
+
|
956 |
+
var hasTouchEvents = 'ontouchstart' in window;
|
957 |
+
var hasPointerEvents = window.PointerEvent;
|
958 |
+
var hasTouch = hasTouchEvents
|
959 |
+
|| window.DocumentTouch && document instanceof DocumentTouch
|
960 |
+
|| navigator.maxTouchPoints; // IE >=11
|
961 |
+
|
962 |
+
var pointerDown = !hasTouch ? 'mousedown' : ("mousedown " + (hasTouchEvents ? 'touchstart' : 'pointerdown'));
|
963 |
+
var pointerMove = !hasTouch ? 'mousemove' : ("mousemove " + (hasTouchEvents ? 'touchmove' : 'pointermove'));
|
964 |
+
var pointerUp = !hasTouch ? 'mouseup' : ("mouseup " + (hasTouchEvents ? 'touchend' : 'pointerup'));
|
965 |
+
var pointerEnter = hasTouch && hasPointerEvents ? 'pointerenter' : 'mouseenter';
|
966 |
+
var pointerLeave = hasTouch && hasPointerEvents ? 'pointerleave' : 'mouseleave';
|
967 |
+
|
968 |
+
function isReady() {
|
969 |
+
return document.readyState === 'complete' || document.readyState !== 'loading' && !document.documentElement.doScroll;
|
970 |
+
}
|
971 |
+
|
972 |
+
function ready(fn) {
|
973 |
+
|
974 |
+
if (isReady()) {
|
975 |
+
fn();
|
976 |
+
return;
|
977 |
+
}
|
978 |
+
|
979 |
+
var handle = function () {
|
980 |
+
unbind1();
|
981 |
+
unbind2();
|
982 |
+
fn();
|
983 |
+
};
|
984 |
+
var unbind1 = on(document, 'DOMContentLoaded', handle);
|
985 |
+
var unbind2 = on(window, 'load', handle);
|
986 |
+
}
|
987 |
+
|
988 |
+
function index(element, ref) {
|
989 |
+
return ref
|
990 |
+
? toNodes(element).indexOf(toNode(ref))
|
991 |
+
: toNodes((element = toNode(element)) && element.parentNode.children).indexOf(element);
|
992 |
+
}
|
993 |
+
|
994 |
+
function getIndex(i, elements, current, finite) {
|
995 |
+
if ( current === void 0 ) current = 0;
|
996 |
+
if ( finite === void 0 ) finite = false;
|
997 |
+
|
998 |
+
|
999 |
+
elements = toNodes(elements);
|
1000 |
+
|
1001 |
+
var length = elements.length;
|
1002 |
+
|
1003 |
+
i = isNumeric(i)
|
1004 |
+
? toNumber(i)
|
1005 |
+
: i === 'next'
|
1006 |
+
? current + 1
|
1007 |
+
: i === 'previous'
|
1008 |
+
? current - 1
|
1009 |
+
: index(elements, i);
|
1010 |
+
|
1011 |
+
if (finite) {
|
1012 |
+
return clamp(i, 0, length - 1);
|
1013 |
+
}
|
1014 |
+
|
1015 |
+
i %= length;
|
1016 |
+
|
1017 |
+
return i < 0 ? i + length : i;
|
1018 |
+
}
|
1019 |
+
|
1020 |
+
function empty(element) {
|
1021 |
+
element = $(element);
|
1022 |
+
element.innerHTML = '';
|
1023 |
+
return element;
|
1024 |
+
}
|
1025 |
+
|
1026 |
+
function html(parent, html) {
|
1027 |
+
parent = $(parent);
|
1028 |
+
return isUndefined(html)
|
1029 |
+
? parent.innerHTML
|
1030 |
+
: append(parent.hasChildNodes() ? empty(parent) : parent, html);
|
1031 |
+
}
|
1032 |
+
|
1033 |
+
function prepend(parent, element) {
|
1034 |
+
|
1035 |
+
parent = $(parent);
|
1036 |
+
|
1037 |
+
if (!parent.hasChildNodes()) {
|
1038 |
+
return append(parent, element);
|
1039 |
+
} else {
|
1040 |
+
return insertNodes(element, function (element) { return parent.insertBefore(element, parent.firstChild); });
|
1041 |
+
}
|
1042 |
+
}
|
1043 |
+
|
1044 |
+
function append(parent, element) {
|
1045 |
+
parent = $(parent);
|
1046 |
+
return insertNodes(element, function (element) { return parent.appendChild(element); });
|
1047 |
+
}
|
1048 |
+
|
1049 |
+
function before(ref, element) {
|
1050 |
+
ref = $(ref);
|
1051 |
+
return insertNodes(element, function (element) { return ref.parentNode.insertBefore(element, ref); });
|
1052 |
+
}
|
1053 |
+
|
1054 |
+
function after(ref, element) {
|
1055 |
+
ref = $(ref);
|
1056 |
+
return insertNodes(element, function (element) { return ref.nextSibling
|
1057 |
+
? before(ref.nextSibling, element)
|
1058 |
+
: append(ref.parentNode, element); }
|
1059 |
+
);
|
1060 |
+
}
|
1061 |
+
|
1062 |
+
function insertNodes(element, fn) {
|
1063 |
+
element = isString(element) ? fragment(element) : element;
|
1064 |
+
return element
|
1065 |
+
? 'length' in element
|
1066 |
+
? toNodes(element).map(fn)
|
1067 |
+
: fn(element)
|
1068 |
+
: null;
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
function remove(element) {
|
1072 |
+
toNodes(element).map(function (element) { return element.parentNode && element.parentNode.removeChild(element); });
|
1073 |
+
}
|
1074 |
+
|
1075 |
+
function wrapAll(element, structure) {
|
1076 |
+
|
1077 |
+
structure = toNode(before(element, structure));
|
1078 |
+
|
1079 |
+
while (structure.firstChild) {
|
1080 |
+
structure = structure.firstChild;
|
1081 |
+
}
|
1082 |
+
|
1083 |
+
append(structure, element);
|
1084 |
+
|
1085 |
+
return structure;
|
1086 |
+
}
|
1087 |
+
|
1088 |
+
function wrapInner(element, structure) {
|
1089 |
+
return toNodes(toNodes(element).map(function (element) { return element.hasChildNodes ? wrapAll(toNodes(element.childNodes), structure) : append(element, structure); }
|
1090 |
+
));
|
1091 |
+
}
|
1092 |
+
|
1093 |
+
function unwrap(element) {
|
1094 |
+
toNodes(element)
|
1095 |
+
.map(function (element) { return element.parentNode; })
|
1096 |
+
.filter(function (value, index, self) { return self.indexOf(value) === index; })
|
1097 |
+
.forEach(function (parent) {
|
1098 |
+
before(parent, parent.childNodes);
|
1099 |
+
remove(parent);
|
1100 |
+
});
|
1101 |
+
}
|
1102 |
+
|
1103 |
+
var fragmentRe = /^\s*<(\w+|!)[^>]*>/;
|
1104 |
+
var singleTagRe = /^<(\w+)\s*\/?>(?:<\/\1>)?$/;
|
1105 |
+
|
1106 |
+
function fragment(html) {
|
1107 |
+
|
1108 |
+
var matches$$1 = singleTagRe.exec(html);
|
1109 |
+
if (matches$$1) {
|
1110 |
+
return document.createElement(matches$$1[1]);
|
1111 |
+
}
|
1112 |
+
|
1113 |
+
var container = document.createElement('div');
|
1114 |
+
if (fragmentRe.test(html)) {
|
1115 |
+
container.insertAdjacentHTML('beforeend', html.trim());
|
1116 |
+
} else {
|
1117 |
+
container.textContent = html;
|
1118 |
+
}
|
1119 |
+
|
1120 |
+
return container.childNodes.length > 1 ? toNodes(container.childNodes) : container.firstChild;
|
1121 |
+
|
1122 |
+
}
|
1123 |
+
|
1124 |
+
function apply(node, fn) {
|
1125 |
+
|
1126 |
+
if (!node || node.nodeType !== 1) {
|
1127 |
+
return;
|
1128 |
+
}
|
1129 |
+
|
1130 |
+
fn(node);
|
1131 |
+
node = node.firstElementChild;
|
1132 |
+
while (node) {
|
1133 |
+
apply(node, fn);
|
1134 |
+
node = node.nextElementSibling;
|
1135 |
+
}
|
1136 |
+
}
|
1137 |
+
|
1138 |
+
function $(selector, context) {
|
1139 |
+
return !isString(selector)
|
1140 |
+
? toNode(selector)
|
1141 |
+
: isHtml(selector)
|
1142 |
+
? toNode(fragment(selector))
|
1143 |
+
: find(selector, context);
|
1144 |
+
}
|
1145 |
+
|
1146 |
+
function $$(selector, context) {
|
1147 |
+
return !isString(selector)
|
1148 |
+
? toNodes(selector)
|
1149 |
+
: isHtml(selector)
|
1150 |
+
? toNodes(fragment(selector))
|
1151 |
+
: findAll(selector, context);
|
1152 |
+
}
|
1153 |
+
|
1154 |
+
function isHtml(str) {
|
1155 |
+
return str[0] === '<' || str.match(/^\s*</);
|
1156 |
+
}
|
1157 |
+
|
1158 |
+
function addClass(element) {
|
1159 |
+
var args = [], len = arguments.length - 1;
|
1160 |
+
while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
|
1161 |
+
|
1162 |
+
apply$1(element, args, 'add');
|
1163 |
+
}
|
1164 |
+
|
1165 |
+
function removeClass(element) {
|
1166 |
+
var args = [], len = arguments.length - 1;
|
1167 |
+
while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
|
1168 |
+
|
1169 |
+
apply$1(element, args, 'remove');
|
1170 |
+
}
|
1171 |
+
|
1172 |
+
function removeClasses(element, cls) {
|
1173 |
+
attr(element, 'class', function (value) { return (value || '').replace(new RegExp(("\\b" + cls + "\\b"), 'g'), ''); });
|
1174 |
+
}
|
1175 |
+
|
1176 |
+
function replaceClass(element) {
|
1177 |
+
var args = [], len = arguments.length - 1;
|
1178 |
+
while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
|
1179 |
+
|
1180 |
+
args[0] && removeClass(element, args[0]);
|
1181 |
+
args[1] && addClass(element, args[1]);
|
1182 |
+
}
|
1183 |
+
|
1184 |
+
function hasClass(element, cls) {
|
1185 |
+
return toNodes(element).some(function (element) { return element.classList.contains(cls); });
|
1186 |
+
}
|
1187 |
+
|
1188 |
+
function toggleClass(element) {
|
1189 |
+
var args = [], len = arguments.length - 1;
|
1190 |
+
while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];
|
1191 |
+
|
1192 |
+
|
1193 |
+
if (!args.length) {
|
1194 |
+
return;
|
1195 |
+
}
|
1196 |
+
|
1197 |
+
args = getArgs$1(args);
|
1198 |
+
|
1199 |
+
var force = !isString(args[args.length - 1]) ? args.pop() : []; // in iOS 9.3 force === undefined evaluates to false
|
1200 |
+
|
1201 |
+
args = args.filter(Boolean);
|
1202 |
+
|
1203 |
+
toNodes(element).forEach(function (ref) {
|
1204 |
+
var classList = ref.classList;
|
1205 |
+
|
1206 |
+
for (var i = 0; i < args.length; i++) {
|
1207 |
+
supports.Force
|
1208 |
+
? classList.toggle.apply(classList, [args[i]].concat(force))
|
1209 |
+
: (classList[(!isUndefined(force) ? force : !classList.contains(args[i])) ? 'add' : 'remove'](args[i]));
|
1210 |
+
}
|
1211 |
+
});
|
1212 |
+
|
1213 |
+
}
|
1214 |
+
|
1215 |
+
function apply$1(element, args, fn) {
|
1216 |
+
args = getArgs$1(args).filter(Boolean);
|
1217 |
+
|
1218 |
+
args.length && toNodes(element).forEach(function (ref) {
|
1219 |
+
var classList = ref.classList;
|
1220 |
+
|
1221 |
+
supports.Multiple
|
1222 |
+
? classList[fn].apply(classList, args)
|
1223 |
+
: args.forEach(function (cls) { return classList[fn](cls); });
|
1224 |
+
});
|
1225 |
+
}
|
1226 |
+
|
1227 |
+
function getArgs$1(args) {
|
1228 |
+
return args.reduce(function (args, arg) { return args.concat.call(args, isString(arg) && includes(arg, ' ') ? arg.trim().split(' ') : arg); }
|
1229 |
+
, []);
|
1230 |
+
}
|
1231 |
+
|
1232 |
+
var supports = {};
|
1233 |
+
|
1234 |
+
// IE 11
|
1235 |
+
(function () {
|
1236 |
+
|
1237 |
+
var list = document.createElement('_').classList;
|
1238 |
+
if (list) {
|
1239 |
+
list.add('a', 'b');
|
1240 |
+
list.toggle('c', false);
|
1241 |
+
supports.Multiple = list.contains('b');
|
1242 |
+
supports.Force = !list.contains('c');
|
1243 |
+
}
|
1244 |
+
list = null;
|
1245 |
+
|
1246 |
+
})();
|
1247 |
+
|
1248 |
+
var cssNumber = {
|
1249 |
+
'animation-iteration-count': true,
|
1250 |
+
'column-count': true,
|
1251 |
+
'fill-opacity': true,
|
1252 |
+
'flex-grow': true,
|
1253 |
+
'flex-shrink': true,
|
1254 |
+
'font-weight': true,
|
1255 |
+
'line-height': true,
|
1256 |
+
'opacity': true,
|
1257 |
+
'order': true,
|
1258 |
+
'orphans': true,
|
1259 |
+
'widows': true,
|
1260 |
+
'z-index': true,
|
1261 |
+
'zoom': true
|
1262 |
+
};
|
1263 |
+
|
1264 |
+
function css(element, property, value) {
|
1265 |
+
|
1266 |
+
return toNodes(element).map(function (element) {
|
1267 |
+
|
1268 |
+
if (isString(property)) {
|
1269 |
+
|
1270 |
+
property = propName(property);
|
1271 |
+
|
1272 |
+
if (isUndefined(value)) {
|
1273 |
+
return getStyle(element, property);
|
1274 |
+
} else if (!value && value !== 0) {
|
1275 |
+
element.style.removeProperty(property);
|
1276 |
+
} else {
|
1277 |
+
element.style[property] = isNumeric(value) && !cssNumber[property] ? (value + "px") : value;
|
1278 |
+
}
|
1279 |
+
|
1280 |
+
} else if (isArray(property)) {
|
1281 |
+
|
1282 |
+
var styles = getStyles(element);
|
1283 |
+
|
1284 |
+
return property.reduce(function (props, property) {
|
1285 |
+
props[property] = styles[propName(property)];
|
1286 |
+
return props;
|
1287 |
+
}, {});
|
1288 |
+
|
1289 |
+
} else if (isObject(property)) {
|
1290 |
+
each(property, function (value, property) { return css(element, property, value); });
|
1291 |
+
}
|
1292 |
+
|
1293 |
+
return element;
|
1294 |
+
|
1295 |
+
})[0];
|
1296 |
+
|
1297 |
+
}
|
1298 |
+
|
1299 |
+
function getStyles(element, pseudoElt) {
|
1300 |
+
element = toNode(element);
|
1301 |
+
return element.ownerDocument.defaultView.getComputedStyle(element, pseudoElt);
|
1302 |
+
}
|
1303 |
+
|
1304 |
+
function getStyle(element, property, pseudoElt) {
|
1305 |
+
return getStyles(element, pseudoElt)[property];
|
1306 |
+
}
|
1307 |
+
|
1308 |
+
var vars = {};
|
1309 |
+
|
1310 |
+
function getCssVar(name) {
|
1311 |
+
|
1312 |
+
var docEl = document.documentElement;
|
1313 |
+
|
1314 |
+
if (!isIE) {
|
1315 |
+
return getStyles(docEl).getPropertyValue(("--uk-" + name));
|
1316 |
+
}
|
1317 |
+
|
1318 |
+
if (!(name in vars)) {
|
1319 |
+
|
1320 |
+
/* usage in css: .uk-name:before { content:"xyz" } */
|
1321 |
+
|
1322 |
+
var element = append(docEl, document.createElement('div'));
|
1323 |
+
|
1324 |
+
addClass(element, ("uk-" + name));
|
1325 |
+
|
1326 |
+
vars[name] = getStyle(element, 'content', ':before').replace(/^["'](.*)["']$/, '$1');
|
1327 |
+
|
1328 |
+
remove(element);
|
1329 |
+
|
1330 |
+
}
|
1331 |
+
|
1332 |
+
return vars[name];
|
1333 |
+
|
1334 |
+
}
|
1335 |
+
|
1336 |
+
var cssProps = {};
|
1337 |
+
|
1338 |
+
function propName(name) {
|
1339 |
+
|
1340 |
+
var ret = cssProps[name];
|
1341 |
+
if (!ret) {
|
1342 |
+
ret = cssProps[name] = vendorPropName(name) || name;
|
1343 |
+
}
|
1344 |
+
return ret;
|
1345 |
+
}
|
1346 |
+
|
1347 |
+
var cssPrefixes = ['webkit', 'moz', 'ms'];
|
1348 |
+
var ref = document.createElement('_');
|
1349 |
+
var style = ref.style;
|
1350 |
+
|
1351 |
+
function vendorPropName(name) {
|
1352 |
+
|
1353 |
+
name = hyphenate(name);
|
1354 |
+
|
1355 |
+
if (name in style) {
|
1356 |
+
return name;
|
1357 |
+
}
|
1358 |
+
|
1359 |
+
var i = cssPrefixes.length, prefixedName;
|
1360 |
+
|
1361 |
+
while (i--) {
|
1362 |
+
prefixedName = "-" + (cssPrefixes[i]) + "-" + name;
|
1363 |
+
if (prefixedName in style) {
|
1364 |
+
return prefixedName;
|
1365 |
+
}
|
1366 |
+
}
|
1367 |
+
}
|
1368 |
+
|
1369 |
+
function transition(element, props, duration, timing) {
|
1370 |
+
if ( duration === void 0 ) duration = 400;
|
1371 |
+
if ( timing === void 0 ) timing = 'linear';
|
1372 |
+
|
1373 |
+
|
1374 |
+
return Promise.all(toNodes(element).map(function (element) { return new Promise(function (resolve, reject) {
|
1375 |
+
|
1376 |
+
for (var name in props) {
|
1377 |
+
var value = css(element, name);
|
1378 |
+
if (value === '') {
|
1379 |
+
css(element, name, value);
|
1380 |
+
}
|
1381 |
+
}
|
1382 |
+
|
1383 |
+
var timer = setTimeout(function () { return trigger(element, 'transitionend'); }, duration);
|
1384 |
+
|
1385 |
+
once(element, 'transitionend transitioncanceled', function (ref) {
|
1386 |
+
var type = ref.type;
|
1387 |
+
|
1388 |
+
clearTimeout(timer);
|
1389 |
+
removeClass(element, 'uk-transition');
|
1390 |
+
css(element, {
|
1391 |
+
'transition-property': '',
|
1392 |
+
'transition-duration': '',
|
1393 |
+
'transition-timing-function': ''
|
1394 |
+
});
|
1395 |
+
type === 'transitioncanceled' ? reject() : resolve();
|
1396 |
+
}, false, function (ref) {
|
1397 |
+
var target = ref.target;
|
1398 |
+
|
1399 |
+
return element === target;
|
1400 |
+
});
|
1401 |
+
|
1402 |
+
addClass(element, 'uk-transition');
|
1403 |
+
css(element, assign({
|
1404 |
+
'transition-property': Object.keys(props).map(propName).join(','),
|
1405 |
+
'transition-duration': (duration + "ms"),
|
1406 |
+
'transition-timing-function': timing
|
1407 |
+
}, props));
|
1408 |
+
|
1409 |
+
}); }
|
1410 |
+
));
|
1411 |
+
|
1412 |
+
}
|
1413 |
+
|
1414 |
+
var Transition = {
|
1415 |
+
|
1416 |
+
start: transition,
|
1417 |
+
|
1418 |
+
stop: function(element) {
|
1419 |
+
trigger(element, 'transitionend');
|
1420 |
+
return Promise.resolve();
|
1421 |
+
},
|
1422 |
+
|
1423 |
+
cancel: function(element) {
|
1424 |
+
trigger(element, 'transitioncanceled');
|
1425 |
+
},
|
1426 |
+
|
1427 |
+
inProgress: function(element) {
|
1428 |
+
return hasClass(element, 'uk-transition');
|
1429 |
+
}
|
1430 |
+
|
1431 |
+
};
|
1432 |
+
|
1433 |
+
var animationPrefix = 'uk-animation-';
|
1434 |
+
var clsCancelAnimation = 'uk-cancel-animation';
|
1435 |
+
|
1436 |
+
function animate(element, animation, duration, origin, out) {
|
1437 |
+
var arguments$1 = arguments;
|
1438 |
+
if ( duration === void 0 ) duration = 200;
|
1439 |
+
|
1440 |
+
|
1441 |
+
return Promise.all(toNodes(element).map(function (element) { return new Promise(function (resolve, reject) {
|
1442 |
+
|
1443 |
+
if (hasClass(element, clsCancelAnimation)) {
|
1444 |
+
requestAnimationFrame(function () { return Promise.resolve().then(function () { return animate.apply(void 0, arguments$1).then(resolve, reject); }
|
1445 |
+
); }
|
1446 |
+
);
|
1447 |
+
return;
|
1448 |
+
}
|
1449 |
+
|
1450 |
+
var cls = animation + " " + animationPrefix + (out ? 'leave' : 'enter');
|
1451 |
+
|
1452 |
+
if (startsWith(animation, animationPrefix)) {
|
1453 |
+
|
1454 |
+
if (origin) {
|
1455 |
+
cls += " uk-transform-origin-" + origin;
|
1456 |
+
}
|
1457 |
+
|
1458 |
+
if (out) {
|
1459 |
+
cls += " " + animationPrefix + "reverse";
|
1460 |
+
}
|
1461 |
+
|
1462 |
+
}
|
1463 |
+
|
1464 |
+
reset();
|
1465 |
+
|
1466 |
+
once(element, 'animationend animationcancel', function (ref) {
|
1467 |
+
var type = ref.type;
|
1468 |
+
|
1469 |
+
|
1470 |
+
var hasReset = false;
|
1471 |
+
|
1472 |
+
if (type === 'animationcancel') {
|
1473 |
+
reject();
|
1474 |
+
reset();
|
1475 |
+
} else {
|
1476 |
+
resolve();
|
1477 |
+
Promise.resolve().then(function () {
|
1478 |
+
hasReset = true;
|
1479 |
+
reset();
|
1480 |
+
});
|
1481 |
+
}
|
1482 |
+
|
1483 |
+
requestAnimationFrame(function () {
|
1484 |
+
if (!hasReset) {
|
1485 |
+
addClass(element, clsCancelAnimation);
|
1486 |
+
|
1487 |
+
requestAnimationFrame(function () { return removeClass(element, clsCancelAnimation); });
|
1488 |
+
}
|
1489 |
+
});
|
1490 |
+
|
1491 |
+
}, false, function (ref) {
|
1492 |
+
var target = ref.target;
|
1493 |
+
|
1494 |
+
return element === target;
|
1495 |
+
});
|
1496 |
+
|
1497 |
+
css(element, 'animationDuration', (duration + "ms"));
|
1498 |
+
addClass(element, cls);
|
1499 |
+
|
1500 |
+
function reset() {
|
1501 |
+
css(element, 'animationDuration', '');
|
1502 |
+
removeClasses(element, (animationPrefix + "\\S*"));
|
1503 |
+
}
|
1504 |
+
|
1505 |
+
}); }
|
1506 |
+
));
|
1507 |
+
|
1508 |
+
}
|
1509 |
+
|
1510 |
+
var inProgress = new RegExp((animationPrefix + "(enter|leave)"));
|
1511 |
+
var Animation = {
|
1512 |
+
|
1513 |
+
in: function(element, animation, duration, origin) {
|
1514 |
+
return animate(element, animation, duration, origin, false);
|
1515 |
+
},
|
1516 |
+
|
1517 |
+
out: function(element, animation, duration, origin) {
|
1518 |
+
return animate(element, animation, duration, origin, true);
|
1519 |
+
},
|
1520 |
+
|
1521 |
+
inProgress: function(element) {
|
1522 |
+
return inProgress.test(attr(element, 'class'));
|
1523 |
+
},
|
1524 |
+
|
1525 |
+
cancel: function(element) {
|
1526 |
+
trigger(element, 'animationcancel');
|
1527 |
+
}
|
1528 |
+
|
1529 |
+
};
|
1530 |
+
|
1531 |
+
var dirs = {
|
1532 |
+
width: ['x', 'left', 'right'],
|
1533 |
+
height: ['y', 'top', 'bottom']
|
1534 |
+
};
|
1535 |
+
|
1536 |
+
function positionAt(element, target, elAttach, targetAttach, elOffset, targetOffset, flip, boundary) {
|
1537 |
+
|
1538 |
+
elAttach = getPos(elAttach);
|
1539 |
+
targetAttach = getPos(targetAttach);
|
1540 |
+
|
1541 |
+
var flipped = {element: elAttach, target: targetAttach};
|
1542 |
+
|
1543 |
+
if (!element || !target) {
|
1544 |
+
return flipped;
|
1545 |
+
}
|
1546 |
+
|
1547 |
+
var dim = getDimensions(element);
|
1548 |
+
var targetDim = getDimensions(target);
|
1549 |
+
var position = targetDim;
|
1550 |
+
|
1551 |
+
moveTo(position, elAttach, dim, -1);
|
1552 |
+
moveTo(position, targetAttach, targetDim, 1);
|
1553 |
+
|
1554 |
+
elOffset = getOffsets(elOffset, dim.width, dim.height);
|
1555 |
+
targetOffset = getOffsets(targetOffset, targetDim.width, targetDim.height);
|
1556 |
+
|
1557 |
+
elOffset['x'] += targetOffset['x'];
|
1558 |
+
elOffset['y'] += targetOffset['y'];
|
1559 |
+
|
1560 |
+
position.left += elOffset['x'];
|
1561 |
+
position.top += elOffset['y'];
|
1562 |
+
|
1563 |
+
boundary = getDimensions(boundary || window$1(element));
|
1564 |
+
|
1565 |
+
if (flip) {
|
1566 |
+
each(dirs, function (ref, prop) {
|
1567 |
+
var dir = ref[0];
|
1568 |
+
var align = ref[1];
|
1569 |
+
var alignFlip = ref[2];
|
1570 |
+
|
1571 |
+
|
1572 |
+
if (!(flip === true || includes(flip, dir))) {
|
1573 |
+
return;
|
1574 |
+
}
|
1575 |
+
|
1576 |
+
var elemOffset = elAttach[dir] === align
|
1577 |
+
? -dim[prop]
|
1578 |
+
: elAttach[dir] === alignFlip
|
1579 |
+
? dim[prop]
|
1580 |
+
: 0;
|
1581 |
+
|
1582 |
+
var targetOffset = targetAttach[dir] === align
|
1583 |
+
? targetDim[prop]
|
1584 |
+
: targetAttach[dir] === alignFlip
|
1585 |
+
? -targetDim[prop]
|
1586 |
+
: 0;
|
1587 |
+
|
1588 |
+
if (position[align] < boundary[align] || position[align] + dim[prop] > boundary[alignFlip]) {
|
1589 |
+
|
1590 |
+
var centerOffset = dim[prop] / 2;
|
1591 |
+
var centerTargetOffset = targetAttach[dir] === 'center' ? -targetDim[prop] / 2 : 0;
|
1592 |
+
|
1593 |
+
elAttach[dir] === 'center' && (
|
1594 |
+
apply(centerOffset, centerTargetOffset)
|
1595 |
+
|| apply(-centerOffset, -centerTargetOffset)
|
1596 |
+
) || apply(elemOffset, targetOffset);
|
1597 |
+
|
1598 |
+
}
|
1599 |
+
|
1600 |
+
function apply(elemOffset, targetOffset) {
|
1601 |
+
|
1602 |
+
var newVal = position[align] + elemOffset + targetOffset - elOffset[dir] * 2;
|
1603 |
+
|
1604 |
+
if (newVal >= boundary[align] && newVal + dim[prop] <= boundary[alignFlip]) {
|
1605 |
+
position[align] = newVal;
|
1606 |
+
|
1607 |
+
['element', 'target'].forEach(function (el) {
|
1608 |
+
flipped[el][dir] = !elemOffset
|
1609 |
+
? flipped[el][dir]
|
1610 |
+
: flipped[el][dir] === dirs[prop][1]
|
1611 |
+
? dirs[prop][2]
|
1612 |
+
: dirs[prop][1];
|
1613 |
+
});
|
1614 |
+
|
1615 |
+
return true;
|
1616 |
+
}
|
1617 |
+
|
1618 |
+
}
|
1619 |
+
|
1620 |
+
});
|
1621 |
+
}
|
1622 |
+
|
1623 |
+
offset(element, position);
|
1624 |
+
|
1625 |
+
return flipped;
|
1626 |
+
}
|
1627 |
+
|
1628 |
+
function offset(element, coordinates) {
|
1629 |
+
|
1630 |
+
element = toNode(element);
|
1631 |
+
|
1632 |
+
if (coordinates) {
|
1633 |
+
|
1634 |
+
var currentOffset = offset(element);
|
1635 |
+
var pos = css(element, 'position');
|
1636 |
+
|
1637 |
+
['left', 'top'].forEach(function (prop) {
|
1638 |
+
if (prop in coordinates) {
|
1639 |
+
var value = css(element, prop);
|
1640 |
+
css(element, prop, coordinates[prop] - currentOffset[prop]
|
1641 |
+
+ toFloat(pos === 'absolute' && value === 'auto'
|
1642 |
+
? position(element)[prop]
|
1643 |
+
: value)
|
1644 |
+
);
|
1645 |
+
}
|
1646 |
+
});
|
1647 |
+
|
1648 |
+
return;
|
1649 |
+
}
|
1650 |
+
|
1651 |
+
return getDimensions(element);
|
1652 |
+
}
|
1653 |
+
|
1654 |
+
function getDimensions(element) {
|
1655 |
+
|
1656 |
+
element = toNode(element);
|
1657 |
+
|
1658 |
+
var ref = window$1(element);
|
1659 |
+
var top = ref.pageYOffset;
|
1660 |
+
var left = ref.pageXOffset;
|
1661 |
+
|
1662 |
+
if (isWindow(element)) {
|
1663 |
+
|
1664 |
+
var height = element.innerHeight;
|
1665 |
+
var width = element.innerWidth;
|
1666 |
+
|
1667 |
+
return {
|
1668 |
+
top: top,
|
1669 |
+
left: left,
|
1670 |
+
height: height,
|
1671 |
+
width: width,
|
1672 |
+
bottom: top + height,
|
1673 |
+
right: left + width,
|
1674 |
+
};
|
1675 |
+
}
|
1676 |
+
|
1677 |
+
var style, hidden;
|
1678 |
+
|
1679 |
+
if (!isVisible(element)) {
|
1680 |
+
style = attr(element, 'style');
|
1681 |
+
hidden = attr(element, 'hidden');
|
1682 |
+
|
1683 |
+
attr(element, {
|
1684 |
+
style: ((style || '') + ";display:block !important;"),
|
1685 |
+
hidden: null
|
1686 |
+
});
|
1687 |
+
}
|
1688 |
+
|
1689 |
+
var rect = element.getBoundingClientRect();
|
1690 |
+
|
1691 |
+
if (!isUndefined(style)) {
|
1692 |
+
attr(element, {style: style, hidden: hidden});
|
1693 |
+
}
|
1694 |
+
|
1695 |
+
return {
|
1696 |
+
height: rect.height,
|
1697 |
+
width: rect.width,
|
1698 |
+
top: rect.top + top,
|
1699 |
+
left: rect.left + left,
|
1700 |
+
bottom: rect.bottom + top,
|
1701 |
+
right: rect.right + left,
|
1702 |
+
};
|
1703 |
+
}
|
1704 |
+
|
1705 |
+
function position(element) {
|
1706 |
+
element = toNode(element);
|
1707 |
+
|
1708 |
+
var parent = element.offsetParent || docEl(element);
|
1709 |
+
var parentOffset = offset(parent);
|
1710 |
+
var ref = ['top', 'left'].reduce(function (props, prop) {
|
1711 |
+
var propName$$1 = ucfirst(prop);
|
1712 |
+
props[prop] -= parentOffset[prop]
|
1713 |
+
+ toFloat(css(element, ("margin" + propName$$1)))
|
1714 |
+
+ toFloat(css(parent, ("border" + propName$$1 + "Width")));
|
1715 |
+
return props;
|
1716 |
+
}, offset(element));
|
1717 |
+
var top = ref.top;
|
1718 |
+
var left = ref.left;
|
1719 |
+
|
1720 |
+
return {top: top, left: left};
|
1721 |
+
}
|
1722 |
+
|
1723 |
+
var height = dimension('height');
|
1724 |
+
var width = dimension('width');
|
1725 |
+
|
1726 |
+
function dimension(prop) {
|
1727 |
+
var propName$$1 = ucfirst(prop);
|
1728 |
+
return function (element, value) {
|
1729 |
+
|
1730 |
+
element = toNode(element);
|
1731 |
+
|
1732 |
+
if (isUndefined(value)) {
|
1733 |
+
|
1734 |
+
if (isWindow(element)) {
|
1735 |
+
return element[("inner" + propName$$1)];
|
1736 |
+
}
|
1737 |
+
|
1738 |
+
if (isDocument(element)) {
|
1739 |
+
var doc = element.documentElement;
|
1740 |
+
return Math.max(doc[("offset" + propName$$1)], doc[("scroll" + propName$$1)]);
|
1741 |
+
}
|
1742 |
+
|
1743 |
+
value = css(element, prop);
|
1744 |
+
value = value === 'auto' ? element[("offset" + propName$$1)] : toFloat(value) || 0;
|
1745 |
+
|
1746 |
+
return value - boxModelAdjust(prop, element);
|
1747 |
+
|
1748 |
+
} else {
|
1749 |
+
|
1750 |
+
css(element, prop, !value && value !== 0
|
1751 |
+
? ''
|
1752 |
+
: +value + boxModelAdjust(prop, element) + 'px'
|
1753 |
+
);
|
1754 |
+
|
1755 |
+
}
|
1756 |
+
|
1757 |
+
};
|
1758 |
+
}
|
1759 |
+
|
1760 |
+
function boxModelAdjust(prop, element, sizing) {
|
1761 |
+
if ( sizing === void 0 ) sizing = 'border-box';
|
1762 |
+
|
1763 |
+
return css(element, 'boxSizing') === sizing
|
1764 |
+
? dirs[prop].slice(1).map(ucfirst).reduce(function (value, prop) { return value
|
1765 |
+
+ toFloat(css(element, ("padding" + prop)))
|
1766 |
+
+ toFloat(css(element, ("border" + prop + "Width"))); }
|
1767 |
+
, 0)
|
1768 |
+
: 0;
|
1769 |
+
}
|
1770 |
+
|
1771 |
+
function moveTo(position, attach, dim, factor) {
|
1772 |
+
each(dirs, function (ref, prop) {
|
1773 |
+
var dir = ref[0];
|
1774 |
+
var align = ref[1];
|
1775 |
+
var alignFlip = ref[2];
|
1776 |
+
|
1777 |
+
if (attach[dir] === alignFlip) {
|
1778 |
+
position[align] += dim[prop] * factor;
|
1779 |
+
} else if (attach[dir] === 'center') {
|
1780 |
+
position[align] += dim[prop] * factor / 2;
|
1781 |
+
}
|
1782 |
+
});
|
1783 |
+
}
|
1784 |
+
|
1785 |
+
function getPos(pos) {
|
1786 |
+
|
1787 |
+
var x = /left|center|right/;
|
1788 |
+
var y = /top|center|bottom/;
|
1789 |
+
|
1790 |
+
pos = (pos || '').split(' ');
|
1791 |
+
|
1792 |
+
if (pos.length === 1) {
|
1793 |
+
pos = x.test(pos[0])
|
1794 |
+
? pos.concat(['center'])
|
1795 |
+
: y.test(pos[0])
|
1796 |
+
? ['center'].concat(pos)
|
1797 |
+
: ['center', 'center'];
|
1798 |
+
}
|
1799 |
+
|
1800 |
+
return {
|
1801 |
+
x: x.test(pos[0]) ? pos[0] : 'center',
|
1802 |
+
y: y.test(pos[1]) ? pos[1] : 'center'
|
1803 |
+
};
|
1804 |
+
}
|
1805 |
+
|
1806 |
+
function getOffsets(offsets, width, height) {
|
1807 |
+
|
1808 |
+
var ref = (offsets || '').split(' ');
|
1809 |
+
var x = ref[0];
|
1810 |
+
var y = ref[1];
|
1811 |
+
|
1812 |
+
return {
|
1813 |
+
x: x ? toFloat(x) * (endsWith(x, '%') ? width / 100 : 1) : 0,
|
1814 |
+
y: y ? toFloat(y) * (endsWith(y, '%') ? height / 100 : 1) : 0
|
1815 |
+
};
|
1816 |
+
}
|
1817 |
+
|
1818 |
+
function flipPosition(pos) {
|
1819 |
+
switch (pos) {
|
1820 |
+
case 'left':
|
1821 |
+
return 'right';
|
1822 |
+
case 'right':
|
1823 |
+
return 'left';
|
1824 |
+
case 'top':
|
1825 |
+
return 'bottom';
|
1826 |
+
case 'bottom':
|
1827 |
+
return 'top';
|
1828 |
+
default:
|
1829 |
+
return pos;
|
1830 |
+
}
|
1831 |
+
}
|
1832 |
+
|
1833 |
+
function isInView(element, topOffset, leftOffset, relativeToViewport) {
|
1834 |
+
if ( topOffset === void 0 ) topOffset = 0;
|
1835 |
+
if ( leftOffset === void 0 ) leftOffset = 0;
|
1836 |
+
|
1837 |
+
|
1838 |
+
if (!isVisible(element)) {
|
1839 |
+
return false;
|
1840 |
+
}
|
1841 |
+
|
1842 |
+
element = toNode(element);
|
1843 |
+
|
1844 |
+
var win = window$1(element);
|
1845 |
+
var client, bounding;
|
1846 |
+
|
1847 |
+
if (relativeToViewport) {
|
1848 |
+
|
1849 |
+
client = element.getBoundingClientRect();
|
1850 |
+
bounding = {
|
1851 |
+
top: -topOffset,
|
1852 |
+
left: -leftOffset,
|
1853 |
+
bottom: topOffset + height(win),
|
1854 |
+
right: leftOffset + width(win)
|
1855 |
+
};
|
1856 |
+
|
1857 |
+
} else {
|
1858 |
+
|
1859 |
+
var ref = offsetPosition(element);
|
1860 |
+
var elTop = ref[0];
|
1861 |
+
var elLeft = ref[1];
|
1862 |
+
var top = win.pageYOffset;
|
1863 |
+
var left = win.pageXOffset;
|
1864 |
+
|
1865 |
+
client = {
|
1866 |
+
top: elTop,
|
1867 |
+
left: elLeft,
|
1868 |
+
bottom: elTop + element.offsetHeight,
|
1869 |
+
right: elTop + element.offsetWidth
|
1870 |
+
};
|
1871 |
+
bounding = {
|
1872 |
+
top: top - topOffset,
|
1873 |
+
left: left - leftOffset,
|
1874 |
+
bottom: top + topOffset + height(win),
|
1875 |
+
right: left + leftOffset + width(win)
|
1876 |
+
};
|
1877 |
+
}
|
1878 |
+
|
1879 |
+
return intersectRect(client, bounding) || pointInRect({x: client.left, y: client.top}, bounding);
|
1880 |
+
|
1881 |
+
}
|
1882 |
+
|
1883 |
+
function scrolledOver(element, heightOffset) {
|
1884 |
+
if ( heightOffset === void 0 ) heightOffset = 0;
|
1885 |
+
|
1886 |
+
|
1887 |
+
if (!isVisible(element)) {
|
1888 |
+
return 0;
|
1889 |
+
}
|
1890 |
+
|
1891 |
+
element = toNode(element);
|
1892 |
+
|
1893 |
+
var win = window$1(element);
|
1894 |
+
var doc = document$1(element);
|
1895 |
+
var elHeight = element.offsetHeight + heightOffset;
|
1896 |
+
var ref = offsetPosition(element);
|
1897 |
+
var top = ref[0];
|
1898 |
+
var vp = height(win);
|
1899 |
+
var vh = vp + Math.min(0, top - vp);
|
1900 |
+
var diff = Math.max(0, vp - (height(doc) + heightOffset - (top + elHeight)));
|
1901 |
+
|
1902 |
+
return clamp(((vh + win.pageYOffset - top) / ((vh + (elHeight - (diff < vp ? diff : 0))) / 100)) / 100);
|
1903 |
+
}
|
1904 |
+
|
1905 |
+
function scrollTop(element, top) {
|
1906 |
+
element = toNode(element);
|
1907 |
+
|
1908 |
+
if (isWindow(element) || isDocument(element)) {
|
1909 |
+
var ref = window$1(element);
|
1910 |
+
var scrollTo = ref.scrollTo;
|
1911 |
+
var pageXOffset = ref.pageXOffset;
|
1912 |
+
scrollTo(pageXOffset, top);
|
1913 |
+
} else {
|
1914 |
+
element.scrollTop = top;
|
1915 |
+
}
|
1916 |
+
}
|
1917 |
+
|
1918 |
+
function offsetPosition(element) {
|
1919 |
+
var offset = [0, 0];
|
1920 |
+
|
1921 |
+
do {
|
1922 |
+
|
1923 |
+
offset[0] += element.offsetTop;
|
1924 |
+
offset[1] += element.offsetLeft;
|
1925 |
+
|
1926 |
+
if (css(element, 'position') === 'fixed') {
|
1927 |
+
var win = window$1(element);
|
1928 |
+
offset[0] += win.pageYOffset;
|
1929 |
+
offset[1] += win.pageXOffset;
|
1930 |
+
return offset;
|
1931 |
+
}
|
1932 |
+
|
1933 |
+
} while ((element = element.offsetParent));
|
1934 |
+
|
1935 |
+
return offset;
|
1936 |
+
}
|
1937 |
+
|
1938 |
+
function window$1(element) {
|
1939 |
+
return isWindow(element) ? element : document$1(element).defaultView;
|
1940 |
+
}
|
1941 |
+
|
1942 |
+
function document$1(element) {
|
1943 |
+
return toNode(element).ownerDocument;
|
1944 |
+
}
|
1945 |
+
|
1946 |
+
function docEl(element) {
|
1947 |
+
return document$1(element).documentElement;
|
1948 |
+
}
|
1949 |
+
|
1950 |
+
/*
|
1951 |
+
Based on:
|
1952 |
+
Copyright (c) 2016 Wilson Page wilsonpage@me.com
|
1953 |
+
https://github.com/wilsonpage/fastdom
|
1954 |
+
*/
|
1955 |
+
|
1956 |
+
var fastdom = {
|
1957 |
+
|
1958 |
+
reads: [],
|
1959 |
+
writes: [],
|
1960 |
+
|
1961 |
+
read: function(task) {
|
1962 |
+
this.reads.push(task);
|
1963 |
+
scheduleFlush();
|
1964 |
+
return task;
|
1965 |
+
},
|
1966 |
+
|
1967 |
+
write: function(task) {
|
1968 |
+
this.writes.push(task);
|
1969 |
+
scheduleFlush();
|
1970 |
+
return task;
|
1971 |
+
},
|
1972 |
+
|
1973 |
+
clear: function(task) {
|
1974 |
+
return remove$1(this.reads, task) || remove$1(this.writes, task);
|
1975 |
+
},
|
1976 |
+
|
1977 |
+
flush: function() {
|
1978 |
+
|
1979 |
+
runTasks(this.reads);
|
1980 |
+
runTasks(this.writes.splice(0, this.writes.length));
|
1981 |
+
|
1982 |
+
this.scheduled = false;
|
1983 |
+
|
1984 |
+
if (this.reads.length || this.writes.length) {
|
1985 |
+
scheduleFlush();
|
1986 |
+
}
|
1987 |
+
|
1988 |
+
}
|
1989 |
+
|
1990 |
+
};
|
1991 |
+
|
1992 |
+
function scheduleFlush() {
|
1993 |
+
if (!fastdom.scheduled) {
|
1994 |
+
fastdom.scheduled = true;
|
1995 |
+
requestAnimationFrame(fastdom.flush.bind(fastdom));
|
1996 |
+
}
|
1997 |
+
}
|
1998 |
+
|
1999 |
+
function runTasks(tasks) {
|
2000 |
+
var task;
|
2001 |
+
while ((task = tasks.shift())) {
|
2002 |
+
task();
|
2003 |
+
}
|
2004 |
+
}
|
2005 |
+
|
2006 |
+
function remove$1(array, item) {
|
2007 |
+
var index = array.indexOf(item);
|
2008 |
+
return !!~index && !!array.splice(index, 1);
|
2009 |
+
}
|
2010 |
+
|
2011 |
+
function MouseTracker() {}
|
2012 |
+
|
2013 |
+
MouseTracker.prototype = {
|
2014 |
+
|
2015 |
+
positions: [],
|
2016 |
+
position: null,
|
2017 |
+
|
2018 |
+
init: function() {
|
2019 |
+
var this$1 = this;
|
2020 |
+
|
2021 |
+
|
2022 |
+
this.positions = [];
|
2023 |
+
this.position = null;
|
2024 |
+
|
2025 |
+
var ticking = false;
|
2026 |
+
this.unbind = on(document, 'mousemove', function (e) {
|
2027 |
+
|
2028 |
+
if (ticking) {
|
2029 |
+
return;
|
2030 |
+
}
|
2031 |
+
|
2032 |
+
setTimeout(function () {
|
2033 |
+
|
2034 |
+
var time = Date.now();
|
2035 |
+
var ref = this$1.positions;
|
2036 |
+
var length = ref.length;
|
2037 |
+
|
2038 |
+
if (length && (time - this$1.positions[length - 1].time > 100)) {
|
2039 |
+
this$1.positions.splice(0, length);
|
2040 |
+
}
|
2041 |
+
|
2042 |
+
this$1.positions.push({time: time, x: e.pageX, y: e.pageY});
|
2043 |
+
|
2044 |
+
if (this$1.positions.length > 5) {
|
2045 |
+
this$1.positions.shift();
|
2046 |
+
}
|
2047 |
+
|
2048 |
+
ticking = false;
|
2049 |
+
}, 5);
|
2050 |
+
|
2051 |
+
ticking = true;
|
2052 |
+
});
|
2053 |
+
|
2054 |
+
},
|
2055 |
+
|
2056 |
+
cancel: function() {
|
2057 |
+
if (this.unbind) {
|
2058 |
+
this.unbind();
|
2059 |
+
}
|
2060 |
+
},
|
2061 |
+
|
2062 |
+
movesTo: function(target) {
|
2063 |
+
|
2064 |
+
if (this.positions.length < 2) {
|
2065 |
+
return false;
|
2066 |
+
}
|
2067 |
+
|
2068 |
+
var p = offset(target);
|
2069 |
+
var position$$1 = this.positions[this.positions.length - 1];
|
2070 |
+
var ref = this.positions;
|
2071 |
+
var prevPos = ref[0];
|
2072 |
+
|
2073 |
+
if (p.left <= position$$1.x && position$$1.x <= p.right && p.top <= position$$1.y && position$$1.y <= p.bottom) {
|
2074 |
+
return false;
|
2075 |
+
}
|
2076 |
+
|
2077 |
+
var points = [
|
2078 |
+
[{x: p.left, y: p.top}, {x: p.right, y: p.bottom}],
|
2079 |
+
[{x: p.right, y: p.top}, {x: p.left, y: p.bottom}]
|
2080 |
+
];
|
2081 |
+
|
2082 |
+
if (p.right <= position$$1.x) ; else if (p.left >= position$$1.x) {
|
2083 |
+
points[0].reverse();
|
2084 |
+
points[1].reverse();
|
2085 |
+
} else if (p.bottom <= position$$1.y) {
|
2086 |
+
points[0].reverse();
|
2087 |
+
} else if (p.top >= position$$1.y) {
|
2088 |
+
points[1].reverse();
|
2089 |
+
}
|
2090 |
+
|
2091 |
+
return !!points.reduce(function (result, point) {
|
2092 |
+
return result + (slope(prevPos, point[0]) < slope(position$$1, point[0]) && slope(prevPos, point[1]) > slope(position$$1, point[1]));
|
2093 |
+
}, 0);
|
2094 |
+
}
|
2095 |
+
|
2096 |
+
};
|
2097 |
+
|
2098 |
+
function slope(a, b) {
|
2099 |
+
return (b.y - a.y) / (b.x - a.x);
|
2100 |
+
}
|
2101 |
+
|
2102 |
+
var strats = {};
|
2103 |
+
|
2104 |
+
// concat strategy
|
2105 |
+
strats.args =
|
2106 |
+
strats.events =
|
2107 |
+
strats.created =
|
2108 |
+
strats.beforeConnect =
|
2109 |
+
strats.connected =
|
2110 |
+
strats.beforeDisconnect =
|
2111 |
+
strats.disconnected =
|
2112 |
+
strats.destroy = function (parentVal, childVal) {
|
2113 |
+
|
2114 |
+
parentVal = parentVal && !isArray(parentVal) ? [parentVal] : parentVal;
|
2115 |
+
|
2116 |
+
return childVal
|
2117 |
+
? parentVal
|
2118 |
+
? parentVal.concat(childVal)
|
2119 |
+
: isArray(childVal)
|
2120 |
+
? childVal
|
2121 |
+
: [childVal]
|
2122 |
+
: parentVal;
|
2123 |
+
};
|
2124 |
+
|
2125 |
+
// update strategy
|
2126 |
+
strats.update = function (parentVal, childVal) {
|
2127 |
+
return sortBy(strats.args(parentVal, isFunction(childVal) ? {read: childVal} : childVal), 'order');
|
2128 |
+
};
|
2129 |
+
|
2130 |
+
// property strategy
|
2131 |
+
strats.props = function (parentVal, childVal) {
|
2132 |
+
|
2133 |
+
if (isArray(childVal)) {
|
2134 |
+
childVal = childVal.reduce(function (value, key) {
|
2135 |
+
value[key] = String;
|
2136 |
+
return value;
|
2137 |
+
}, {});
|
2138 |
+
}
|
2139 |
+
|
2140 |
+
return strats.methods(parentVal, childVal);
|
2141 |
+
};
|
2142 |
+
|
2143 |
+
// extend strategy
|
2144 |
+
strats.computed =
|
2145 |
+
strats.methods = function (parentVal, childVal) {
|
2146 |
+
return childVal
|
2147 |
+
? parentVal
|
2148 |
+
? assign({}, parentVal, childVal)
|
2149 |
+
: childVal
|
2150 |
+
: parentVal;
|
2151 |
+
};
|
2152 |
+
|
2153 |
+
// data strategy
|
2154 |
+
strats.data = function (parentVal, childVal, vm) {
|
2155 |
+
|
2156 |
+
if (!vm) {
|
2157 |
+
|
2158 |
+
if (!childVal) {
|
2159 |
+
return parentVal;
|
2160 |
+
}
|
2161 |
+
|
2162 |
+
if (!parentVal) {
|
2163 |
+
return childVal;
|
2164 |
+
}
|
2165 |
+
|
2166 |
+
return function (vm) {
|
2167 |
+
return mergeFnData(parentVal, childVal, vm);
|
2168 |
+
};
|
2169 |
+
|
2170 |
+
}
|
2171 |
+
|
2172 |
+
return mergeFnData(parentVal, childVal, vm);
|
2173 |
+
};
|
2174 |
+
|
2175 |
+
function mergeFnData(parentVal, childVal, vm) {
|
2176 |
+
return strats.computed(
|
2177 |
+
isFunction(parentVal)
|
2178 |
+
? parentVal.call(vm, vm)
|
2179 |
+
: parentVal,
|
2180 |
+
isFunction(childVal)
|
2181 |
+
? childVal.call(vm, vm)
|
2182 |
+
: childVal
|
2183 |
+
);
|
2184 |
+
}
|
2185 |
+
|
2186 |
+
// default strategy
|
2187 |
+
var defaultStrat = function (parentVal, childVal) {
|
2188 |
+
return isUndefined(childVal) ? parentVal : childVal;
|
2189 |
+
};
|
2190 |
+
|
2191 |
+
function mergeOptions(parent, child, vm) {
|
2192 |
+
|
2193 |
+
var options = {};
|
2194 |
+
|
2195 |
+
if (isFunction(child)) {
|
2196 |
+
child = child.options;
|
2197 |
+
}
|
2198 |
+
|
2199 |
+
if (child.extends) {
|
2200 |
+
parent = mergeOptions(parent, child.extends, vm);
|
2201 |
+
}
|
2202 |
+
|
2203 |
+
if (child.mixins) {
|
2204 |
+
for (var i = 0, l = child.mixins.length; i < l; i++) {
|
2205 |
+
parent = mergeOptions(parent, child.mixins[i], vm);
|
2206 |
+
}
|
2207 |
+
}
|
2208 |
+
|
2209 |
+
for (var key in parent) {
|
2210 |
+
mergeKey(key);
|
2211 |
+
}
|
2212 |
+
|
2213 |
+
for (var key$1 in child) {
|
2214 |
+
if (!hasOwn(parent, key$1)) {
|
2215 |
+
mergeKey(key$1);
|
2216 |
+
}
|
2217 |
+
}
|
2218 |
+
|
2219 |
+
function mergeKey(key) {
|
2220 |
+
options[key] = (strats[key] || defaultStrat)(parent[key], child[key], vm);
|
2221 |
+
}
|
2222 |
+
|
2223 |
+
return options;
|
2224 |
+
}
|
2225 |
+
|
2226 |
+
function parseOptions(options, args) {
|
2227 |
+
var obj;
|
2228 |
+
|
2229 |
+
if ( args === void 0 ) args = [];
|
2230 |
+
|
2231 |
+
try {
|
2232 |
+
|
2233 |
+
return !options
|
2234 |
+
? {}
|
2235 |
+
: startsWith(options, '{')
|
2236 |
+
? JSON.parse(options)
|
2237 |
+
: args.length && !includes(options, ':')
|
2238 |
+
? (( obj = {}, obj[args[0]] = options, obj ))
|
2239 |
+
: options.split(';').reduce(function (options, option) {
|
2240 |
+
var ref = option.split(/:(.*)/);
|
2241 |
+
var key = ref[0];
|
2242 |
+
var value = ref[1];
|
2243 |
+
if (key && !isUndefined(value)) {
|
2244 |
+
options[key.trim()] = value.trim();
|
2245 |
+
}
|
2246 |
+
return options;
|
2247 |
+
}, {});
|
2248 |
+
|
2249 |
+
} catch (e) {
|
2250 |
+
return {};
|
2251 |
+
}
|
2252 |
+
|
2253 |
+
}
|
2254 |
+
|
2255 |
+
var id = 0;
|
2256 |
+
|
2257 |
+
var Player = function(el) {
|
2258 |
+
this.id = ++id;
|
2259 |
+
this.el = toNode(el);
|
2260 |
+
};
|
2261 |
+
|
2262 |
+
Player.prototype.isVideo = function () {
|
2263 |
+
return this.isYoutube() || this.isVimeo() || this.isHTML5();
|
2264 |
+
};
|
2265 |
+
|
2266 |
+
Player.prototype.isHTML5 = function () {
|
2267 |
+
return this.el.tagName === 'VIDEO';
|
2268 |
+
};
|
2269 |
+
|
2270 |
+
Player.prototype.isIFrame = function () {
|
2271 |
+
return this.el.tagName === 'IFRAME';
|
2272 |
+
};
|
2273 |
+
|
2274 |
+
Player.prototype.isYoutube = function () {
|
2275 |
+
return this.isIFrame() && !!this.el.src.match(/\/\/.*?youtube(-nocookie)?\.[a-z]+\/(watch\?v=[^&\s]+|embed)|youtu\.be\/.*/);
|
2276 |
+
};
|
2277 |
+
|
2278 |
+
Player.prototype.isVimeo = function () {
|
2279 |
+
return this.isIFrame() && !!this.el.src.match(/vimeo\.com\/video\/.*/);
|
2280 |
+
};
|
2281 |
+
|
2282 |
+
Player.prototype.enableApi = function () {
|
2283 |
+
var this$1 = this;
|
2284 |
+
|
2285 |
+
|
2286 |
+
if (this.ready) {
|
2287 |
+
return this.ready;
|
2288 |
+
}
|
2289 |
+
|
2290 |
+
var youtube = this.isYoutube();
|
2291 |
+
var vimeo = this.isVimeo();
|
2292 |
+
|
2293 |
+
var poller;
|
2294 |
+
|
2295 |
+
if (youtube || vimeo) {
|
2296 |
+
|
2297 |
+
return this.ready = new Promise(function (resolve) {
|
2298 |
+
|
2299 |
+
once(this$1.el, 'load', function () {
|
2300 |
+
if (youtube) {
|
2301 |
+
var listener = function () { return post(this$1.el, {event: 'listening', id: this$1.id}); };
|
2302 |
+
poller = setInterval(listener, 100);
|
2303 |
+
listener();
|
2304 |
+
}
|
2305 |
+
});
|
2306 |
+
|
2307 |
+
listen(function (data$$1) { return youtube && data$$1.id === this$1.id && data$$1.event === 'onReady' || vimeo && Number(data$$1.player_id) === this$1.id; })
|
2308 |
+
.then(function () {
|
2309 |
+
resolve();
|
2310 |
+
poller && clearInterval(poller);
|
2311 |
+
});
|
2312 |
+
|
2313 |
+
attr(this$1.el, 'src', ("" + (this$1.el.src) + (includes(this$1.el.src, '?') ? '&' : '?') + (youtube ? 'enablejsapi=1' : ("api=1&player_id=" + (this$1.id)))));
|
2314 |
+
|
2315 |
+
});
|
2316 |
+
|
2317 |
+
}
|
2318 |
+
|
2319 |
+
return Promise.resolve();
|
2320 |
+
|
2321 |
+
};
|
2322 |
+
|
2323 |
+
Player.prototype.play = function () {
|
2324 |
+
var this$1 = this;
|
2325 |
+
|
2326 |
+
|
2327 |
+
if (!this.isVideo()) {
|
2328 |
+
return;
|
2329 |
+
}
|
2330 |
+
|
2331 |
+
if (this.isIFrame()) {
|
2332 |
+
this.enableApi().then(function () { return post(this$1.el, {func: 'playVideo', method: 'play'}); });
|
2333 |
+
} else if (this.isHTML5()) {
|
2334 |
+
try {
|
2335 |
+
var promise = this.el.play();
|
2336 |
+
|
2337 |
+
if (promise) {
|
2338 |
+
promise.catch(noop);
|
2339 |
+
}
|
2340 |
+
} catch (e) {}
|
2341 |
+
}
|
2342 |
+
};
|
2343 |
+
|
2344 |
+
Player.prototype.pause = function () {
|
2345 |
+
var this$1 = this;
|
2346 |
+
|
2347 |
+
|
2348 |
+
if (!this.isVideo()) {
|
2349 |
+
return;
|
2350 |
+
}
|
2351 |
+
|
2352 |
+
if (this.isIFrame()) {
|
2353 |
+
this.enableApi().then(function () { return post(this$1.el, {func: 'pauseVideo', method: 'pause'}); });
|
2354 |
+
} else if (this.isHTML5()) {
|
2355 |
+
this.el.pause();
|
2356 |
+
}
|
2357 |
+
};
|
2358 |
+
|
2359 |
+
Player.prototype.mute = function () {
|
2360 |
+
var this$1 = this;
|
2361 |
+
|
2362 |
+
|
2363 |
+
if (!this.isVideo()) {
|
2364 |
+
return;
|
2365 |
+
}
|
2366 |
+
|
2367 |
+
if (this.isIFrame()) {
|
2368 |
+
this.enableApi().then(function () { return post(this$1.el, {func: 'mute', method: 'setVolume', value: 0}); });
|
2369 |
+
} else if (this.isHTML5()) {
|
2370 |
+
this.el.muted = true;
|
2371 |
+
attr(this.el, 'muted', '');
|
2372 |
+
}
|
2373 |
+
|
2374 |
+
};
|
2375 |
+
|
2376 |
+
function post(el, cmd) {
|
2377 |
+
try {
|
2378 |
+
el.contentWindow.postMessage(JSON.stringify(assign({event: 'command'}, cmd)), '*');
|
2379 |
+
} catch (e) {}
|
2380 |
+
}
|
2381 |
+
|
2382 |
+
function listen(cb) {
|
2383 |
+
|
2384 |
+
return new Promise(function (resolve) {
|
2385 |
+
|
2386 |
+
once(window, 'message', function (_, data$$1) { return resolve(data$$1); }, false, function (ref) {
|
2387 |
+
var data$$1 = ref.data;
|
2388 |
+
|
2389 |
+
|
2390 |
+
if (!data$$1 || !isString(data$$1)) {
|
2391 |
+
return;
|
2392 |
+
}
|
2393 |
+
|
2394 |
+
try {
|
2395 |
+
data$$1 = JSON.parse(data$$1);
|
2396 |
+
} catch (e) {
|
2397 |
+
return;
|
2398 |
+
}
|
2399 |
+
|
2400 |
+
return data$$1 && cb(data$$1);
|
2401 |
+
|
2402 |
+
});
|
2403 |
+
|
2404 |
+
});
|
2405 |
+
|
2406 |
+
}
|
2407 |
+
|
2408 |
+
/*
|
2409 |
+
Based on:
|
2410 |
+
Copyright (c) 2010-2016 Thomas Fuchs
|
2411 |
+
http://zeptojs.com/
|
2412 |
+
*/
|
2413 |
+
|
2414 |
+
var touch = {}, clickTimeout, swipeTimeout, tapTimeout, clicked;
|
2415 |
+
|
2416 |
+
function swipeDirection(ref) {
|
2417 |
+
var x1 = ref.x1;
|
2418 |
+
var x2 = ref.x2;
|
2419 |
+
var y1 = ref.y1;
|
2420 |
+
var y2 = ref.y2;
|
2421 |
+
|
2422 |
+
return Math.abs(x1 - x2) >= Math.abs(y1 - y2) ? (x1 - x2 > 0 ? 'Left' : 'Right') : (y1 - y2 > 0 ? 'Up' : 'Down');
|
2423 |
+
}
|
2424 |
+
|
2425 |
+
function cancelAll() {
|
2426 |
+
clickTimeout && clearTimeout(clickTimeout);
|
2427 |
+
swipeTimeout && clearTimeout(swipeTimeout);
|
2428 |
+
tapTimeout && clearTimeout(tapTimeout);
|
2429 |
+
clickTimeout = swipeTimeout = tapTimeout = null;
|
2430 |
+
touch = {};
|
2431 |
+
}
|
2432 |
+
|
2433 |
+
ready(function () {
|
2434 |
+
|
2435 |
+
on(document, 'click', function () { return clicked = true; }, true);
|
2436 |
+
|
2437 |
+
on(document, pointerDown, function (e) {
|
2438 |
+
|
2439 |
+
var target = e.target;
|
2440 |
+
var ref = getPos$1(e);
|
2441 |
+
var x = ref.x;
|
2442 |
+
var y = ref.y;
|
2443 |
+
var now = Date.now();
|
2444 |
+
var type = getType(e.type);
|
2445 |
+
|
2446 |
+
if (touch.type && touch.type !== type) {
|
2447 |
+
return;
|
2448 |
+
}
|
2449 |
+
|
2450 |
+
touch.el = 'tagName' in target ? target : target.parentNode;
|
2451 |
+
|
2452 |
+
clickTimeout && clearTimeout(clickTimeout);
|
2453 |
+
|
2454 |
+
touch.x1 = x;
|
2455 |
+
touch.y1 = y;
|
2456 |
+
|
2457 |
+
if (touch.last && now - touch.last <= 250) {
|
2458 |
+
touch = {};
|
2459 |
+
}
|
2460 |
+
|
2461 |
+
touch.type = type;
|
2462 |
+
touch.last = now;
|
2463 |
+
|
2464 |
+
clicked = e.button > 0;
|
2465 |
+
|
2466 |
+
});
|
2467 |
+
|
2468 |
+
on(document, pointerMove, function (e) {
|
2469 |
+
|
2470 |
+
if (e.defaultPrevented) {
|
2471 |
+
return;
|
2472 |
+
}
|
2473 |
+
|
2474 |
+
var ref = getPos$1(e);
|
2475 |
+
var x = ref.x;
|
2476 |
+
var y = ref.y;
|
2477 |
+
|
2478 |
+
touch.x2 = x;
|
2479 |
+
touch.y2 = y;
|
2480 |
+
|
2481 |
+
});
|
2482 |
+
|
2483 |
+
on(document, pointerUp, function (ref) {
|
2484 |
+
var type = ref.type;
|
2485 |
+
var target = ref.target;
|
2486 |
+
|
2487 |
+
|
2488 |
+
if (touch.type !== getType(type)) {
|
2489 |
+
return;
|
2490 |
+
}
|
2491 |
+
|
2492 |
+
// swipe
|
2493 |
+
if (touch.x2 && Math.abs(touch.x1 - touch.x2) > 30 || touch.y2 && Math.abs(touch.y1 - touch.y2) > 30) {
|
2494 |
+
|
2495 |
+
swipeTimeout = setTimeout(function () {
|
2496 |
+
if (touch.el) {
|
2497 |
+
trigger(touch.el, 'swipe');
|
2498 |
+
trigger(touch.el, ("swipe" + (swipeDirection(touch))));
|
2499 |
+
}
|
2500 |
+
touch = {};
|
2501 |
+
});
|
2502 |
+
|
2503 |
+
// normal tap
|
2504 |
+
} else if ('last' in touch) {
|
2505 |
+
|
2506 |
+
tapTimeout = setTimeout(function () { return trigger(touch.el, 'tap'); });
|
2507 |
+
|
2508 |
+
// trigger single click after 350ms of inactivity
|
2509 |
+
if (touch.el && type !== 'mouseup' && within(target, touch.el)) {
|
2510 |
+
clickTimeout = setTimeout(function () {
|
2511 |
+
clickTimeout = null;
|
2512 |
+
if (touch.el && !clicked) {
|
2513 |
+
trigger(touch.el, 'click');
|
2514 |
+
}
|
2515 |
+
touch = {};
|
2516 |
+
}, 350);
|
2517 |
+
}
|
2518 |
+
|
2519 |
+
} else {
|
2520 |
+
touch = {};
|
2521 |
+
}
|
2522 |
+
|
2523 |
+
});
|
2524 |
+
|
2525 |
+
on(document, 'touchcancel', cancelAll);
|
2526 |
+
on(window, 'scroll', cancelAll);
|
2527 |
+
|
2528 |
+
});
|
2529 |
+
|
2530 |
+
var touching = false;
|
2531 |
+
on(document, 'touchstart', function () { return touching = true; }, true);
|
2532 |
+
on(document, 'click', function () {touching = false;});
|
2533 |
+
on(document, 'touchcancel', function () { return touching = false; }, true);
|
2534 |
+
|
2535 |
+
function isTouch(e) {
|
2536 |
+
return touching || e.pointerType === 'touch';
|
2537 |
+
}
|
2538 |
+
|
2539 |
+
function getPos$1(e) {
|
2540 |
+
var touches = e.touches;
|
2541 |
+
var changedTouches = e.changedTouches;
|
2542 |
+
var ref = touches && touches[0] || changedTouches && changedTouches[0] || e;
|
2543 |
+
var x = ref.pageX;
|
2544 |
+
var y = ref.pageY;
|
2545 |
+
|
2546 |
+
return {x: x, y: y};
|
2547 |
+
}
|
2548 |
+
|
2549 |
+
function getType(type) {
|
2550 |
+
return type.slice(0, 5);
|
2551 |
+
}
|
2552 |
+
|
2553 |
+
|
2554 |
+
|
2555 |
+
var util = /*#__PURE__*/Object.freeze({
|
2556 |
+
ajax: ajax,
|
2557 |
+
getImage: getImage,
|
2558 |
+
transition: transition,
|
2559 |
+
Transition: Transition,
|
2560 |
+
animate: animate,
|
2561 |
+
Animation: Animation,
|
2562 |
+
attr: attr,
|
2563 |
+
hasAttr: hasAttr,
|
2564 |
+
removeAttr: removeAttr,
|
2565 |
+
data: data,
|
2566 |
+
addClass: addClass,
|
2567 |
+
removeClass: removeClass,
|
2568 |
+
removeClasses: removeClasses,
|
2569 |
+
replaceClass: replaceClass,
|
2570 |
+
hasClass: hasClass,
|
2571 |
+
toggleClass: toggleClass,
|
2572 |
+
positionAt: positionAt,
|
2573 |
+
offset: offset,
|
2574 |
+
position: position,
|
2575 |
+
height: height,
|
2576 |
+
width: width,
|
2577 |
+
boxModelAdjust: boxModelAdjust,
|
2578 |
+
flipPosition: flipPosition,
|
2579 |
+
isInView: isInView,
|
2580 |
+
scrolledOver: scrolledOver,
|
2581 |
+
scrollTop: scrollTop,
|
2582 |
+
offsetPosition: offsetPosition,
|
2583 |
+
isReady: isReady,
|
2584 |
+
ready: ready,
|
2585 |
+
index: index,
|
2586 |
+
getIndex: getIndex,
|
2587 |
+
empty: empty,
|
2588 |
+
html: html,
|
2589 |
+
prepend: prepend,
|
2590 |
+
append: append,
|
2591 |
+
before: before,
|
2592 |
+
after: after,
|
2593 |
+
remove: remove,
|
2594 |
+
wrapAll: wrapAll,
|
2595 |
+
wrapInner: wrapInner,
|
2596 |
+
unwrap: unwrap,
|
2597 |
+
fragment: fragment,
|
2598 |
+
apply: apply,
|
2599 |
+
$: $,
|
2600 |
+
$$: $$,
|
2601 |
+
isIE: isIE,
|
2602 |
+
isRtl: isRtl,
|
2603 |
+
hasTouch: hasTouch,
|
2604 |
+
pointerDown: pointerDown,
|
2605 |
+
pointerMove: pointerMove,
|
2606 |
+
pointerUp: pointerUp,
|
2607 |
+
pointerEnter: pointerEnter,
|
2608 |
+
pointerLeave: pointerLeave,
|
2609 |
+
on: on,
|
2610 |
+
off: off,
|
2611 |
+
once: once,
|
2612 |
+
trigger: trigger,
|
2613 |
+
createEvent: createEvent,
|
2614 |
+
toEventTargets: toEventTargets,
|
2615 |
+
preventClick: preventClick,
|
2616 |
+
fastdom: fastdom,
|
2617 |
+
isVoidElement: isVoidElement,
|
2618 |
+
isVisible: isVisible,
|
2619 |
+
selInput: selInput,
|
2620 |
+
isInput: isInput,
|
2621 |
+
filter: filter,
|
2622 |
+
within: within,
|
2623 |
+
bind: bind,
|
2624 |
+
hasOwn: hasOwn,
|
2625 |
+
hyphenate: hyphenate,
|
2626 |
+
camelize: camelize,
|
2627 |
+
ucfirst: ucfirst,
|
2628 |
+
startsWith: startsWith,
|
2629 |
+
endsWith: endsWith,
|
2630 |
+
includes: includes,
|
2631 |
+
isArray: isArray,
|
2632 |
+
isFunction: isFunction,
|
2633 |
+
isObject: isObject,
|
2634 |
+
isPlainObject: isPlainObject,
|
2635 |
+
isWindow: isWindow,
|
2636 |
+
isDocument: isDocument,
|
2637 |
+
isJQuery: isJQuery,
|
2638 |
+
isNode: isNode,
|
2639 |
+
isNodeCollection: isNodeCollection,
|
2640 |
+
isBoolean: isBoolean,
|
2641 |
+
isString: isString,
|
2642 |
+
isNumber: isNumber,
|
2643 |
+
isNumeric: isNumeric,
|
2644 |
+
isUndefined: isUndefined,
|
2645 |
+
toBoolean: toBoolean,
|
2646 |
+
toNumber: toNumber,
|
2647 |
+
toFloat: toFloat,
|
2648 |
+
toNode: toNode,
|
2649 |
+
toNodes: toNodes,
|
2650 |
+
toList: toList,
|
2651 |
+
toMs: toMs,
|
2652 |
+
swap: swap,
|
2653 |
+
assign: assign,
|
2654 |
+
each: each,
|
2655 |
+
sortBy: sortBy,
|
2656 |
+
clamp: clamp,
|
2657 |
+
noop: noop,
|
2658 |
+
intersectRect: intersectRect,
|
2659 |
+
pointInRect: pointInRect,
|
2660 |
+
Dimensions: Dimensions,
|
2661 |
+
MouseTracker: MouseTracker,
|
2662 |
+
mergeOptions: mergeOptions,
|
2663 |
+
parseOptions: parseOptions,
|
2664 |
+
Player: Player,
|
2665 |
+
Promise: Promise,
|
2666 |
+
Deferred: Deferred,
|
2667 |
+
query: query,
|
2668 |
+
queryAll: queryAll,
|
2669 |
+
find: find,
|
2670 |
+
findAll: findAll,
|
2671 |
+
matches: matches,
|
2672 |
+
closest: closest,
|
2673 |
+
parents: parents,
|
2674 |
+
escape: escape,
|
2675 |
+
css: css,
|
2676 |
+
getStyles: getStyles,
|
2677 |
+
getStyle: getStyle,
|
2678 |
+
getCssVar: getCssVar,
|
2679 |
+
propName: propName,
|
2680 |
+
isTouch: isTouch,
|
2681 |
+
getPos: getPos$1
|
2682 |
+
});
|
2683 |
+
|
2684 |
+
function componentAPI (UIkit) {
|
2685 |
+
|
2686 |
+
var DATA = UIkit.data;
|
2687 |
+
|
2688 |
+
var components = {};
|
2689 |
+
|
2690 |
+
UIkit.component = function (name, options) {
|
2691 |
+
|
2692 |
+
if (!options) {
|
2693 |
+
|
2694 |
+
if (isPlainObject(components[name])) {
|
2695 |
+
components[name] = UIkit.extend(components[name]);
|
2696 |
+
}
|
2697 |
+
|
2698 |
+
return components[name];
|
2699 |
+
|
2700 |
+
}
|
2701 |
+
|
2702 |
+
UIkit[name] = function (element, data$$1) {
|
2703 |
+
var i = arguments.length, argsArray = Array(i);
|
2704 |
+
while ( i-- ) argsArray[i] = arguments[i];
|
2705 |
+
|
2706 |
+
|
2707 |
+
var component = UIkit.component(name);
|
2708 |
+
|
2709 |
+
if (isPlainObject(element)) {
|
2710 |
+
return new component({data: element});
|
2711 |
+
}
|
2712 |
+
|
2713 |
+
if (component.options.functional) {
|
2714 |
+
return new component({data: [].concat( argsArray )});
|
2715 |
+
}
|
2716 |
+
|
2717 |
+
return element && element.nodeType ? init(element) : $$(element).map(init)[0];
|
2718 |
+
|
2719 |
+
function init(element) {
|
2720 |
+
|
2721 |
+
var instance = UIkit.getComponent(element, name);
|
2722 |
+
|
2723 |
+
if (instance) {
|
2724 |
+
if (!data$$1) {
|
2725 |
+
return instance;
|
2726 |
+
} else {
|
2727 |
+
instance.$destroy();
|
2728 |
+
}
|
2729 |
+
}
|
2730 |
+
|
2731 |
+
return new component({el: element, data: data$$1});
|
2732 |
+
|
2733 |
+
}
|
2734 |
+
|
2735 |
+
};
|
2736 |
+
|
2737 |
+
var opt = isPlainObject(options) ? assign({}, options) : options.options;
|
2738 |
+
|
2739 |
+
opt.name = name;
|
2740 |
+
|
2741 |
+
if (opt.install) {
|
2742 |
+
opt.install(UIkit, opt, name);
|
2743 |
+
}
|
2744 |
+
|
2745 |
+
if (UIkit._initialized && !opt.functional) {
|
2746 |
+
var id = hyphenate(name);
|
2747 |
+
fastdom.read(function () { return UIkit[name](("[uk-" + id + "],[data-uk-" + id + "]")); });
|
2748 |
+
}
|
2749 |
+
|
2750 |
+
return components[name] = isPlainObject(options) ? opt : options;
|
2751 |
+
};
|
2752 |
+
|
2753 |
+
UIkit.getComponents = function (element) { return element && element[DATA] || {}; };
|
2754 |
+
UIkit.getComponent = function (element, name) { return UIkit.getComponents(element)[name]; };
|
2755 |
+
|
2756 |
+
UIkit.connect = function (node) {
|
2757 |
+
|
2758 |
+
if (node[DATA]) {
|
2759 |
+
for (var name in node[DATA]) {
|
2760 |
+
node[DATA][name]._callConnected();
|
2761 |
+
}
|
2762 |
+
}
|
2763 |
+
|
2764 |
+
for (var i = 0; i < node.attributes.length; i++) {
|
2765 |
+
|
2766 |
+
var name$1 = getComponentName(node.attributes[i].name);
|
2767 |
+
|
2768 |
+
if (name$1 && name$1 in components) {
|
2769 |
+
UIkit[name$1](node);
|
2770 |
+
}
|
2771 |
+
|
2772 |
+
}
|
2773 |
+
|
2774 |
+
};
|
2775 |
+
|
2776 |
+
UIkit.disconnect = function (node) {
|
2777 |
+
for (var name in node[DATA]) {
|
2778 |
+
node[DATA][name]._callDisconnected();
|
2779 |
+
}
|
2780 |
+
};
|
2781 |
+
|
2782 |
+
}
|
2783 |
+
|
2784 |
+
function getComponentName(attribute) {
|
2785 |
+
return startsWith(attribute, 'uk-') || startsWith(attribute, 'data-uk-')
|
2786 |
+
? camelize(attribute.replace('data-uk-', '').replace('uk-', ''))
|
2787 |
+
: false;
|
2788 |
+
}
|
2789 |
+
|
2790 |
+
function boot (UIkit) {
|
2791 |
+
|
2792 |
+
var connect = UIkit.connect;
|
2793 |
+
var disconnect = UIkit.disconnect;
|
2794 |
+
|
2795 |
+
if (!('MutationObserver' in window)) {
|
2796 |
+
return;
|
2797 |
+
}
|
2798 |
+
|
2799 |
+
if (document.body) {
|
2800 |
+
|
2801 |
+
init();
|
2802 |
+
|
2803 |
+
} else {
|
2804 |
+
|
2805 |
+
(new MutationObserver(function () {
|
2806 |
+
|
2807 |
+
if (document.body) {
|
2808 |
+
this.disconnect();
|
2809 |
+
init();
|
2810 |
+
}
|
2811 |
+
|
2812 |
+
})).observe(document, {childList: true, subtree: true});
|
2813 |
+
|
2814 |
+
}
|
2815 |
+
|
2816 |
+
function init() {
|
2817 |
+
|
2818 |
+
apply$$1(document.body, connect);
|
2819 |
+
|
2820 |
+
fastdom.flush();
|
2821 |
+
|
2822 |
+
(new MutationObserver(function (mutations) { return mutations.forEach(applyMutation); })).observe(document, {
|
2823 |
+
childList: true,
|
2824 |
+
subtree: true,
|
2825 |
+
characterData: true,
|
2826 |
+
attributes: true
|
2827 |
+
});
|
2828 |
+
|
2829 |
+
UIkit._initialized = true;
|
2830 |
+
}
|
2831 |
+
|
2832 |
+
function applyMutation(mutation) {
|
2833 |
+
|
2834 |
+
var target = mutation.target;
|
2835 |
+
var type = mutation.type;
|
2836 |
+
|
2837 |
+
var update = type !== 'attributes'
|
2838 |
+
? applyChildList(mutation)
|
2839 |
+
: applyAttribute(mutation);
|
2840 |
+
|
2841 |
+
update && UIkit.update(target);
|
2842 |
+
|
2843 |
+
}
|
2844 |
+
|
2845 |
+
function applyAttribute(ref) {
|
2846 |
+
var target = ref.target;
|
2847 |
+
var attributeName = ref.attributeName;
|
2848 |
+
|
2849 |
+
|
2850 |
+
if (attributeName === 'href') {
|
2851 |
+
return true;
|
2852 |
+
}
|
2853 |
+
|
2854 |
+
var name = getComponentName(attributeName);
|
2855 |
+
|
2856 |
+
if (!name || !(name in UIkit)) {
|
2857 |
+
return;
|
2858 |
+
}
|
2859 |
+
|
2860 |
+
if (hasAttr(target, attributeName)) {
|
2861 |
+
UIkit[name](target);
|
2862 |
+
return true;
|
2863 |
+
}
|
2864 |
+
|
2865 |
+
var component = UIkit.getComponent(target, name);
|
2866 |
+
|
2867 |
+
if (component) {
|
2868 |
+
component.$destroy();
|
2869 |
+
return true;
|
2870 |
+
}
|
2871 |
+
|
2872 |
+
}
|
2873 |
+
|
2874 |
+
function applyChildList(ref) {
|
2875 |
+
var addedNodes = ref.addedNodes;
|
2876 |
+
var removedNodes = ref.removedNodes;
|
2877 |
+
|
2878 |
+
|
2879 |
+
for (var i = 0; i < addedNodes.length; i++) {
|
2880 |
+
apply$$1(addedNodes[i], connect);
|
2881 |
+
}
|
2882 |
+
|
2883 |
+
for (var i$1 = 0; i$1 < removedNodes.length; i$1++) {
|
2884 |
+
apply$$1(removedNodes[i$1], disconnect);
|
2885 |
+
}
|
2886 |
+
|
2887 |
+
return true;
|
2888 |
+
}
|
2889 |
+
|
2890 |
+
function apply$$1(node, fn) {
|
2891 |
+
|
2892 |
+
if (node.nodeType !== 1 || hasAttr(node, 'uk-no-boot')) {
|
2893 |
+
return;
|
2894 |
+
}
|
2895 |
+
|
2896 |
+
fn(node);
|
2897 |
+
node = node.firstElementChild;
|
2898 |
+
while (node) {
|
2899 |
+
var next = node.nextElementSibling;
|
2900 |
+
apply$$1(node, fn);
|
2901 |
+
node = next;
|
2902 |
+
}
|
2903 |
+
}
|
2904 |
+
|
2905 |
+
}
|
2906 |
+
|
2907 |
+
function globalAPI (UIkit) {
|
2908 |
+
|
2909 |
+
var DATA = UIkit.data;
|
2910 |
+
|
2911 |
+
UIkit.use = function (plugin) {
|
2912 |
+
|
2913 |
+
if (plugin.installed) {
|
2914 |
+
return;
|
2915 |
+
}
|
2916 |
+
|
2917 |
+
plugin.call(null, this);
|
2918 |
+
plugin.installed = true;
|
2919 |
+
|
2920 |
+
return this;
|
2921 |
+
};
|
2922 |
+
|
2923 |
+
UIkit.mixin = function (mixin, component) {
|
2924 |
+
component = (isString(component) ? UIkit.component(component) : component) || this;
|
2925 |
+
component.options = mergeOptions(component.options, mixin);
|
2926 |
+
};
|
2927 |
+
|
2928 |
+
UIkit.extend = function (options) {
|
2929 |
+
|
2930 |
+
options = options || {};
|
2931 |
+
|
2932 |
+
var Super = this;
|
2933 |
+
var Sub = function UIkitComponent (options) {
|
2934 |
+
this._init(options);
|
2935 |
+
};
|
2936 |
+
|
2937 |
+
Sub.prototype = Object.create(Super.prototype);
|
2938 |
+
Sub.prototype.constructor = Sub;
|
2939 |
+
Sub.options = mergeOptions(Super.options, options);
|
2940 |
+
|
2941 |
+
Sub.super = Super;
|
2942 |
+
Sub.extend = Super.extend;
|
2943 |
+
|
2944 |
+
return Sub;
|
2945 |
+
};
|
2946 |
+
|
2947 |
+
UIkit.update = function (element, e) {
|
2948 |
+
|
2949 |
+
e = createEvent(e || 'update');
|
2950 |
+
element = element ? toNode(element) : document.body;
|
2951 |
+
|
2952 |
+
path(element).map(function (element) { return update(element[DATA], e); });
|
2953 |
+
apply(element, function (element) { return update(element[DATA], e); });
|
2954 |
+
|
2955 |
+
};
|
2956 |
+
|
2957 |
+
var container;
|
2958 |
+
Object.defineProperty(UIkit, 'container', {
|
2959 |
+
|
2960 |
+
get: function() {
|
2961 |
+
return container || document.body;
|
2962 |
+
},
|
2963 |
+
|
2964 |
+
set: function(element) {
|
2965 |
+
container = $(element);
|
2966 |
+
}
|
2967 |
+
|
2968 |
+
});
|
2969 |
+
|
2970 |
+
function update(data$$1, e) {
|
2971 |
+
|
2972 |
+
if (!data$$1) {
|
2973 |
+
return;
|
2974 |
+
}
|
2975 |
+
|
2976 |
+
for (var name in data$$1) {
|
2977 |
+
if (data$$1[name]._connected) {
|
2978 |
+
data$$1[name]._callUpdate(e);
|
2979 |
+
}
|
2980 |
+
}
|
2981 |
+
|
2982 |
+
}
|
2983 |
+
|
2984 |
+
function path(element) {
|
2985 |
+
var path = [];
|
2986 |
+
|
2987 |
+
while (element && element !== document.body && element.parentNode) {
|
2988 |
+
|
2989 |
+
element = element.parentNode;
|
2990 |
+
path.unshift(element);
|
2991 |
+
|
2992 |
+
}
|
2993 |
+
|
2994 |
+
return path;
|
2995 |
+
}
|
2996 |
+
|
2997 |
+
}
|
2998 |
+
|
2999 |
+
function hooksAPI (UIkit) {
|
3000 |
+
|
3001 |
+
UIkit.prototype._callHook = function (hook) {
|
3002 |
+
var this$1 = this;
|
3003 |
+
|
3004 |
+
|
3005 |
+
var handlers = this.$options[hook];
|
3006 |
+
|
3007 |
+
if (handlers) {
|
3008 |
+
handlers.forEach(function (handler) { return handler.call(this$1); });
|
3009 |
+
}
|
3010 |
+
};
|
3011 |
+
|
3012 |
+
UIkit.prototype._callConnected = function () {
|
3013 |
+
|
3014 |
+
if (this._connected) {
|
3015 |
+
return;
|
3016 |
+
}
|
3017 |
+
|
3018 |
+
this._data = {};
|
3019 |
+
this._initProps();
|
3020 |
+
|
3021 |
+
this._callHook('beforeConnect');
|
3022 |
+
this._connected = true;
|
3023 |
+
|
3024 |
+
this._initEvents();
|
3025 |
+
this._initObserver();
|
3026 |
+
|
3027 |
+
this._callHook('connected');
|
3028 |
+
this._callUpdate();
|
3029 |
+
};
|
3030 |
+
|
3031 |
+
UIkit.prototype._callDisconnected = function () {
|
3032 |
+
|
3033 |
+
if (!this._connected) {
|
3034 |
+
return;
|
3035 |
+
}
|
3036 |
+
|
3037 |
+
this._callHook('beforeDisconnect');
|
3038 |
+
|
3039 |
+
if (this._observer) {
|
3040 |
+
this._observer.disconnect();
|
3041 |
+
this._observer = null;
|
3042 |
+
}
|
3043 |
+
|
3044 |
+
this._unbindEvents();
|
3045 |
+
this._callHook('disconnected');
|
3046 |
+
|
3047 |
+
this._connected = false;
|
3048 |
+
|
3049 |
+
};
|
3050 |
+
|
3051 |
+
UIkit.prototype._callUpdate = function (e) {
|
3052 |
+
var this$1 = this;
|
3053 |
+
|
3054 |
+
|
3055 |
+
e = createEvent(e || 'update');
|
3056 |
+
|
3057 |
+
var type = e.type;
|
3058 |
+
|
3059 |
+
if (includes(['update', 'load', 'resize'], type)) {
|
3060 |
+
this._resetComputeds();
|
3061 |
+
}
|
3062 |
+
|
3063 |
+
var updates = this.$options.update;
|
3064 |
+
var ref = this._frames;
|
3065 |
+
var reads = ref.reads;
|
3066 |
+
var writes = ref.writes;
|
3067 |
+
|
3068 |
+
if (!updates) {
|
3069 |
+
return;
|
3070 |
+
}
|
3071 |
+
|
3072 |
+
updates.forEach(function (ref, i) {
|
3073 |
+
var read = ref.read;
|
3074 |
+
var write = ref.write;
|
3075 |
+
var events = ref.events;
|
3076 |
+
|
3077 |
+
|
3078 |
+
if (type !== 'update' && !includes(events, type)) {
|
3079 |
+
return;
|
3080 |
+
}
|
3081 |
+
|
3082 |
+
if (read && !includes(fastdom.reads, reads[i])) {
|
3083 |
+
reads[i] = fastdom.read(function () {
|
3084 |
+
|
3085 |
+
var result = this$1._connected && read.call(this$1, this$1._data, e);
|
3086 |
+
|
3087 |
+
if (result === false && write) {
|
3088 |
+
fastdom.clear(writes[i]);
|
3089 |
+
delete writes[i];
|
3090 |
+
} else if (isPlainObject(result)) {
|
3091 |
+
assign(this$1._data, result);
|
3092 |
+
}
|
3093 |
+
delete reads[i];
|
3094 |
+
});
|
3095 |
+
}
|
3096 |
+
|
3097 |
+
if (write && !includes(fastdom.writes, writes[i])) {
|
3098 |
+
writes[i] = fastdom.write(function () {
|
3099 |
+
this$1._connected && write.call(this$1, this$1._data, e);
|
3100 |
+
delete writes[i];
|
3101 |
+
});
|
3102 |
+
}
|
3103 |
+
|
3104 |
+
});
|
3105 |
+
|
3106 |
+
};
|
3107 |
+
|
3108 |
+
}
|
3109 |
+
|
3110 |
+
function stateAPI (UIkit) {
|
3111 |
+
|
3112 |
+
var uid = 0;
|
3113 |
+
|
3114 |
+
UIkit.prototype._init = function (options) {
|
3115 |
+
|
3116 |
+
options = options || {};
|
3117 |
+
options.data = normalizeData(options, this.constructor.options);
|
3118 |
+
|
3119 |
+
this.$options = mergeOptions(this.constructor.options, options, this);
|
3120 |
+
this.$el = null;
|
3121 |
+
this.$props = {};
|
3122 |
+
|
3123 |
+
this._frames = {reads: {}, writes: {}};
|
3124 |
+
this._events = [];
|
3125 |
+
|
3126 |
+
this._uid = uid++;
|
3127 |
+
this._initData();
|
3128 |
+
this._initMethods();
|
3129 |
+
this._initComputeds();
|
3130 |
+
this._callHook('created');
|
3131 |
+
|
3132 |
+
if (options.el) {
|
3133 |
+
this.$mount(options.el);
|
3134 |
+
}
|
3135 |
+
};
|
3136 |
+
|
3137 |
+
UIkit.prototype._initData = function () {
|
3138 |
+
var this$1 = this;
|
3139 |
+
|
3140 |
+
|
3141 |
+
var ref = this.$options;
|
3142 |
+
var data$$1 = ref.data; if ( data$$1 === void 0 ) data$$1 = {};
|
3143 |
+
|
3144 |
+
for (var key in data$$1) {
|
3145 |
+
this$1.$props[key] = this$1[key] = data$$1[key];
|
3146 |
+
}
|
3147 |
+
};
|
3148 |
+
|
3149 |
+
UIkit.prototype._initMethods = function () {
|
3150 |
+
var this$1 = this;
|
3151 |
+
|
3152 |
+
|
3153 |
+
var ref = this.$options;
|
3154 |
+
var methods = ref.methods;
|
3155 |
+
|
3156 |
+
if (methods) {
|
3157 |
+
for (var key in methods) {
|
3158 |
+
this$1[key] = bind(methods[key], this$1);
|
3159 |
+
}
|
3160 |
+
}
|
3161 |
+
};
|
3162 |
+
|
3163 |
+
UIkit.prototype._initComputeds = function () {
|
3164 |
+
var this$1 = this;
|
3165 |
+
|
3166 |
+
|
3167 |
+
var ref = this.$options;
|
3168 |
+
var computed = ref.computed;
|
3169 |
+
|
3170 |
+
this._resetComputeds();
|
3171 |
+
|
3172 |
+
if (computed) {
|
3173 |
+
for (var key in computed) {
|
3174 |
+
registerComputed(this$1, key, computed[key]);
|
3175 |
+
}
|
3176 |
+
}
|
3177 |
+
};
|
3178 |
+
|
3179 |
+
UIkit.prototype._resetComputeds = function () {
|
3180 |
+
this._computeds = {};
|
3181 |
+
};
|
3182 |
+
|
3183 |
+
UIkit.prototype._initProps = function (props) {
|
3184 |
+
var this$1 = this;
|
3185 |
+
|
3186 |
+
|
3187 |
+
var key;
|
3188 |
+
|
3189 |
+
this._resetComputeds();
|
3190 |
+
|
3191 |
+
props = props || getProps(this.$options, this.$name);
|
3192 |
+
|
3193 |
+
for (key in props) {
|
3194 |
+
if (!isUndefined(props[key])) {
|
3195 |
+
this$1.$props[key] = props[key];
|
3196 |
+
}
|
3197 |
+
}
|
3198 |
+
|
3199 |
+
var exclude = [this.$options.computed, this.$options.methods];
|
3200 |
+
for (key in this$1.$props) {
|
3201 |
+
if (key in props && notIn(exclude, key)) {
|
3202 |
+
this$1[key] = this$1.$props[key];
|
3203 |
+
}
|
3204 |
+
}
|
3205 |
+
};
|
3206 |
+
|
3207 |
+
UIkit.prototype._initEvents = function () {
|
3208 |
+
var this$1 = this;
|
3209 |
+
|
3210 |
+
|
3211 |
+
var ref = this.$options;
|
3212 |
+
var events = ref.events;
|
3213 |
+
|
3214 |
+
if (events) {
|
3215 |
+
|
3216 |
+
events.forEach(function (event) {
|
3217 |
+
|
3218 |
+
if (!hasOwn(event, 'handler')) {
|
3219 |
+
for (var key in event) {
|
3220 |
+
registerEvent(this$1, event[key], key);
|
3221 |
+
}
|
3222 |
+
} else {
|
3223 |
+
registerEvent(this$1, event);
|
3224 |
+
}
|
3225 |
+
|
3226 |
+
});
|
3227 |
+
}
|
3228 |
+
};
|
3229 |
+
|
3230 |
+
UIkit.prototype._unbindEvents = function () {
|
3231 |
+
this._events.forEach(function (unbind) { return unbind(); });
|
3232 |
+
this._events = [];
|
3233 |
+
};
|
3234 |
+
|
3235 |
+
UIkit.prototype._initObserver = function () {
|
3236 |
+
var this$1 = this;
|
3237 |
+
|
3238 |
+
|
3239 |
+
var ref = this.$options;
|
3240 |
+
var attrs = ref.attrs;
|
3241 |
+
var props = ref.props;
|
3242 |
+
var el = ref.el;
|
3243 |
+
if (this._observer || !props || attrs === false) {
|
3244 |
+
return;
|
3245 |
+
}
|
3246 |
+
|
3247 |
+
attrs = isArray(attrs) ? attrs : Object.keys(props);
|
3248 |
+
|
3249 |
+
this._observer = new MutationObserver(function () {
|
3250 |
+
|
3251 |
+
var data$$1 = getProps(this$1.$options, this$1.$name);
|
3252 |
+
if (attrs.some(function (key) { return !isUndefined(data$$1[key]) && data$$1[key] !== this$1.$props[key]; })) {
|
3253 |
+
this$1.$reset();
|
3254 |
+
}
|
3255 |
+
|
3256 |
+
});
|
3257 |
+
|
3258 |
+
var filter$$1 = attrs.map(function (key) { return hyphenate(key); }).concat(this.$name);
|
3259 |
+
|
3260 |
+
this._observer.observe(el, {
|
3261 |
+
attributes: true,
|
3262 |
+
attributeFilter: filter$$1.concat(filter$$1.map(function (key) { return ("data-" + key); }))
|
3263 |
+
});
|
3264 |
+
};
|
3265 |
+
|
3266 |
+
function getProps(opts, name) {
|
3267 |
+
|
3268 |
+
var data$$1 = {};
|
3269 |
+
var args = opts.args; if ( args === void 0 ) args = [];
|
3270 |
+
var props = opts.props; if ( props === void 0 ) props = {};
|
3271 |
+
var el = opts.el;
|
3272 |
+
|
3273 |
+
if (!props) {
|
3274 |
+
return data$$1;
|
3275 |
+
}
|
3276 |
+
|
3277 |
+
for (var key in props) {
|
3278 |
+
var prop = hyphenate(key);
|
3279 |
+
var value = data(el, prop);
|
3280 |
+
|
3281 |
+
if (!isUndefined(value)) {
|
3282 |
+
|
3283 |
+
value = props[key] === Boolean && value === ''
|
3284 |
+
? true
|
3285 |
+
: coerce(props[key], value);
|
3286 |
+
|
3287 |
+
if (prop === 'target' && (!value || startsWith(value, '_'))) {
|
3288 |
+
continue;
|
3289 |
+
}
|
3290 |
+
|
3291 |
+
data$$1[key] = value;
|
3292 |
+
}
|
3293 |
+
}
|
3294 |
+
|
3295 |
+
var options = parseOptions(data(el, name), args);
|
3296 |
+
|
3297 |
+
for (var key$1 in options) {
|
3298 |
+
var prop$1 = camelize(key$1);
|
3299 |
+
if (props[prop$1] !== undefined) {
|
3300 |
+
data$$1[prop$1] = coerce(props[prop$1], options[key$1]);
|
3301 |
+
}
|
3302 |
+
}
|
3303 |
+
|
3304 |
+
return data$$1;
|
3305 |
+
}
|
3306 |
+
|
3307 |
+
function registerComputed(component, key, cb) {
|
3308 |
+
Object.defineProperty(component, key, {
|
3309 |
+
|
3310 |
+
enumerable: true,
|
3311 |
+
|
3312 |
+
get: function() {
|
3313 |
+
|
3314 |
+
var _computeds = component._computeds;
|
3315 |
+
var $props = component.$props;
|
3316 |
+
var $el = component.$el;
|
3317 |
+
|
3318 |
+
if (!hasOwn(_computeds, key)) {
|
3319 |
+
_computeds[key] = cb.call(component, $props, $el);
|
3320 |
+
}
|
3321 |
+
|
3322 |
+
return _computeds[key];
|
3323 |
+
},
|
3324 |
+
|
3325 |
+
set: function(value) {
|
3326 |
+
component._computeds[key] = value;
|
3327 |
+
}
|
3328 |
+
|
3329 |
+
});
|
3330 |
+
}
|
3331 |
+
|
3332 |
+
function registerEvent(component, event, key) {
|
3333 |
+
|
3334 |
+
if (!isPlainObject(event)) {
|
3335 |
+
event = ({name: key, handler: event});
|
3336 |
+
}
|
3337 |
+
|
3338 |
+
var name = event.name;
|
3339 |
+
var el = event.el;
|
3340 |
+
var handler = event.handler;
|
3341 |
+
var capture = event.capture;
|
3342 |
+
var passive = event.passive;
|
3343 |
+
var delegate = event.delegate;
|
3344 |
+
var filter$$1 = event.filter;
|
3345 |
+
var self = event.self;
|
3346 |
+
el = isFunction(el)
|
3347 |
+
? el.call(component)
|
3348 |
+
: el || component.$el;
|
3349 |
+
|
3350 |
+
if (isArray(el)) {
|
3351 |
+
el.forEach(function (el) { return registerEvent(component, assign({}, event, {el: el}), key); });
|
3352 |
+
return;
|
3353 |
+
}
|
3354 |
+
|
3355 |
+
if (!el || filter$$1 && !filter$$1.call(component)) {
|
3356 |
+
return;
|
3357 |
+
}
|
3358 |
+
|
3359 |
+
handler = detail(isString(handler) ? component[handler] : bind(handler, component));
|
3360 |
+
|
3361 |
+
if (self) {
|
3362 |
+
handler = selfFilter(handler);
|
3363 |
+
}
|
3364 |
+
|
3365 |
+
component._events.push(
|
3366 |
+
on(
|
3367 |
+
el,
|
3368 |
+
name,
|
3369 |
+
!delegate
|
3370 |
+
? null
|
3371 |
+
: isString(delegate)
|
3372 |
+
? delegate
|
3373 |
+
: delegate.call(component),
|
3374 |
+
handler,
|
3375 |
+
isBoolean(passive)
|
3376 |
+
? {passive: passive, capture: capture}
|
3377 |
+
: capture
|
3378 |
+
)
|
3379 |
+
);
|
3380 |
+
|
3381 |
+
}
|
3382 |
+
|
3383 |
+
function selfFilter(handler) {
|
3384 |
+
return function selfHandler(e) {
|
3385 |
+
if (e.target === e.currentTarget || e.target === e.current) {
|
3386 |
+
return handler.call(null, e);
|
3387 |
+
}
|
3388 |
+
};
|
3389 |
+
}
|
3390 |
+
|
3391 |
+
function notIn(options, key) {
|
3392 |
+
return options.every(function (arr) { return !arr || !hasOwn(arr, key); });
|
3393 |
+
}
|
3394 |
+
|
3395 |
+
function detail(listener) {
|
3396 |
+
return function (e) { return isArray(e.detail) ? listener.apply(void 0, [e].concat(e.detail)) : listener(e); };
|
3397 |
+
}
|
3398 |
+
|
3399 |
+
function coerce(type, value) {
|
3400 |
+
|
3401 |
+
if (type === Boolean) {
|
3402 |
+
return toBoolean(value);
|
3403 |
+
} else if (type === Number) {
|
3404 |
+
return toNumber(value);
|
3405 |
+
} else if (type === 'list') {
|
3406 |
+
return toList(value);
|
3407 |
+
}
|
3408 |
+
|
3409 |
+
return type ? type(value) : value;
|
3410 |
+
}
|
3411 |
+
|
3412 |
+
function normalizeData(ref, ref$1) {
|
3413 |
+
var data$$1 = ref.data;
|
3414 |
+
var el = ref.el;
|
3415 |
+
var args = ref$1.args;
|
3416 |
+
var props = ref$1.props; if ( props === void 0 ) props = {};
|
3417 |
+
|
3418 |
+
data$$1 = isArray(data$$1)
|
3419 |
+
? args && args.length
|
3420 |
+
? data$$1.slice(0, args.length).reduce(function (data$$1, value, index$$1) {
|
3421 |
+
if (isPlainObject(value)) {
|
3422 |
+
assign(data$$1, value);
|
3423 |
+
} else {
|
3424 |
+
data$$1[args[index$$1]] = value;
|
3425 |
+
}
|
3426 |
+
return data$$1;
|
3427 |
+
}, {})
|
3428 |
+
: undefined
|
3429 |
+
: data$$1;
|
3430 |
+
|
3431 |
+
if (data$$1) {
|
3432 |
+
for (var key in data$$1) {
|
3433 |
+
if (isUndefined(data$$1[key])) {
|
3434 |
+
delete data$$1[key];
|
3435 |
+
} else {
|
3436 |
+
data$$1[key] = props[key] ? coerce(props[key], data$$1[key], el) : data$$1[key];
|
3437 |
+
}
|
3438 |
+
}
|
3439 |
+
}
|
3440 |
+
|
3441 |
+
return data$$1;
|
3442 |
+
}
|
3443 |
+
}
|
3444 |
+
|
3445 |
+
function instanceAPI (UIkit) {
|
3446 |
+
|
3447 |
+
var DATA = UIkit.data;
|
3448 |
+
|
3449 |
+
UIkit.prototype.$mount = function (el) {
|
3450 |
+
|
3451 |
+
var ref = this.$options;
|
3452 |
+
var name = ref.name;
|
3453 |
+
|
3454 |
+
if (!el[DATA]) {
|
3455 |
+
el[DATA] = {};
|
3456 |
+
}
|
3457 |
+
|
3458 |
+
if (el[DATA][name]) {
|
3459 |
+
return;
|
3460 |
+
}
|
3461 |
+
|
3462 |
+
el[DATA][name] = this;
|
3463 |
+
|
3464 |
+
this.$el = this.$options.el = this.$options.el || el;
|
3465 |
+
|
3466 |
+
if (within(el, document)) {
|
3467 |
+
this._callConnected();
|
3468 |
+
}
|
3469 |
+
};
|
3470 |
+
|
3471 |
+
UIkit.prototype.$emit = function (e) {
|
3472 |
+
this._callUpdate(e);
|
3473 |
+
};
|
3474 |
+
|
3475 |
+
UIkit.prototype.$reset = function () {
|
3476 |
+
this._callDisconnected();
|
3477 |
+
this._callConnected();
|
3478 |
+
};
|
3479 |
+
|
3480 |
+
UIkit.prototype.$destroy = function (removeEl) {
|
3481 |
+
if ( removeEl === void 0 ) removeEl = false;
|
3482 |
+
|
3483 |
+
|
3484 |
+
var ref = this.$options;
|
3485 |
+
var el = ref.el;
|
3486 |
+
var name = ref.name;
|
3487 |
+
|
3488 |
+
if (el) {
|
3489 |
+
this._callDisconnected();
|
3490 |
+
}
|
3491 |
+
|
3492 |
+
this._callHook('destroy');
|
3493 |
+
|
3494 |
+
if (!el || !el[DATA]) {
|
3495 |
+
return;
|
3496 |
+
}
|
3497 |
+
|
3498 |
+
delete el[DATA][name];
|
3499 |
+
|
3500 |
+
if (!Object.keys(el[DATA]).length) {
|
3501 |
+
delete el[DATA];
|
3502 |
+
}
|
3503 |
+
|
3504 |
+
if (removeEl) {
|
3505 |
+
remove(this.$el);
|
3506 |
+
}
|
3507 |
+
};
|
3508 |
+
|
3509 |
+
UIkit.prototype.$create = function (component, element, data$$1) {
|
3510 |
+
return UIkit[component](element, data$$1);
|
3511 |
+
};
|
3512 |
+
|
3513 |
+
UIkit.prototype.$update = UIkit.update;
|
3514 |
+
UIkit.prototype.$getComponent = UIkit.getComponent;
|
3515 |
+
|
3516 |
+
var names = {};
|
3517 |
+
Object.defineProperties(UIkit.prototype, {
|
3518 |
+
|
3519 |
+
$container: Object.getOwnPropertyDescriptor(UIkit, 'container'),
|
3520 |
+
|
3521 |
+
$name: {
|
3522 |
+
|
3523 |
+
get: function() {
|
3524 |
+
var ref = this.$options;
|
3525 |
+
var name = ref.name;
|
3526 |
+
|
3527 |
+
if (!names[name]) {
|
3528 |
+
names[name] = UIkit.prefix + hyphenate(name);
|
3529 |
+
}
|
3530 |
+
|
3531 |
+
return names[name];
|
3532 |
+
}
|
3533 |
+
|
3534 |
+
}
|
3535 |
+
|
3536 |
+
});
|
3537 |
+
|
3538 |
+
}
|
3539 |
+
|
3540 |
+
var UIkit = function (options) {
|
3541 |
+
this._init(options);
|
3542 |
+
};
|
3543 |
+
|
3544 |
+
UIkit.util = util;
|
3545 |
+
UIkit.data = '__uikit__';
|
3546 |
+
UIkit.prefix = 'uk-';
|
3547 |
+
UIkit.options = {};
|
3548 |
+
|
3549 |
+
globalAPI(UIkit);
|
3550 |
+
hooksAPI(UIkit);
|
3551 |
+
stateAPI(UIkit);
|
3552 |
+
componentAPI(UIkit);
|
3553 |
+
instanceAPI(UIkit);
|
3554 |
+
|
3555 |
+
var Class = {
|
3556 |
+
|
3557 |
+
connected: function() {
|
3558 |
+
!hasClass(this.$el, this.$name) && addClass(this.$el, this.$name);
|
3559 |
+
}
|
3560 |
+
|
3561 |
+
};
|
3562 |
+
|
3563 |
+
var Togglable = {
|
3564 |
+
|
3565 |
+
props: {
|
3566 |
+
cls: Boolean,
|
3567 |
+
animation: 'list',
|
3568 |
+
duration: Number,
|
3569 |
+
origin: String,
|
3570 |
+
transition: String,
|
3571 |
+
queued: Boolean
|
3572 |
+
},
|
3573 |
+
|
3574 |
+
data: {
|
3575 |
+
cls: false,
|
3576 |
+
animation: [false],
|
3577 |
+
duration: 200,
|
3578 |
+
origin: false,
|
3579 |
+
transition: 'linear',
|
3580 |
+
queued: false,
|
3581 |
+
|
3582 |
+
initProps: {
|
3583 |
+
overflow: '',
|
3584 |
+
height: '',
|
3585 |
+
paddingTop: '',
|
3586 |
+
paddingBottom: '',
|
3587 |
+
marginTop: '',
|
3588 |
+
marginBottom: ''
|
3589 |
+
},
|
3590 |
+
|
3591 |
+
hideProps: {
|
3592 |
+
overflow: 'hidden',
|
3593 |
+
height: 0,
|
3594 |
+
paddingTop: 0,
|
3595 |
+
paddingBottom: 0,
|
3596 |
+
marginTop: 0,
|
3597 |
+
marginBottom: 0
|
3598 |
+
}
|
3599 |
+
|
3600 |
+
},
|
3601 |
+
|
3602 |
+
computed: {
|
3603 |
+
|
3604 |
+
hasAnimation: function(ref) {
|
3605 |
+
var animation = ref.animation;
|
3606 |
+
|
3607 |
+
return !!animation[0];
|
3608 |
+
},
|
3609 |
+
|
3610 |
+
hasTransition: function(ref) {
|
3611 |
+
var animation = ref.animation;
|
3612 |
+
|
3613 |
+
return this.hasAnimation && animation[0] === true;
|
3614 |
+
}
|
3615 |
+
|
3616 |
+
},
|
3617 |
+
|
3618 |
+
methods: {
|
3619 |
+
|
3620 |
+
toggleElement: function(targets, show, animate$$1) {
|
3621 |
+
var this$1 = this;
|
3622 |
+
|
3623 |
+
return new Promise(function (resolve) {
|
3624 |
+
|
3625 |
+
targets = toNodes(targets);
|
3626 |
+
|
3627 |
+
var all = function (targets) { return Promise.all(targets.map(function (el) { return this$1._toggleElement(el, show, animate$$1); })); };
|
3628 |
+
var toggled = targets.filter(function (el) { return this$1.isToggled(el); });
|
3629 |
+
var untoggled = targets.filter(function (el) { return !includes(toggled, el); });
|
3630 |
+
|
3631 |
+
var p;
|
3632 |
+
|
3633 |
+
if (!this$1.queued || !isUndefined(animate$$1) || !isUndefined(show) || !this$1.hasAnimation || targets.length < 2) {
|
3634 |
+
|
3635 |
+
p = all(untoggled.concat(toggled));
|
3636 |
+
|
3637 |
+
} else {
|
3638 |
+
|
3639 |
+
var body = document.body;
|
3640 |
+
var scroll = body.scrollTop;
|
3641 |
+
var el = toggled[0];
|
3642 |
+
var inProgress = Animation.inProgress(el) && hasClass(el, 'uk-animation-leave')
|
3643 |
+
|| Transition.inProgress(el) && el.style.height === '0px';
|
3644 |
+
|
3645 |
+
p = all(toggled);
|
3646 |
+
|
3647 |
+
if (!inProgress) {
|
3648 |
+
p = p.then(function () {
|
3649 |
+
var p = all(untoggled);
|
3650 |
+
body.scrollTop = scroll;
|
3651 |
+
return p;
|
3652 |
+
});
|
3653 |
+
}
|
3654 |
+
|
3655 |
+
}
|
3656 |
+
|
3657 |
+
p.then(resolve, noop);
|
3658 |
+
|
3659 |
+
});
|
3660 |
+
},
|
3661 |
+
|
3662 |
+
toggleNow: function(targets, show) {
|
3663 |
+
var this$1 = this;
|
3664 |
+
|
3665 |
+
return new Promise(function (resolve) { return Promise.all(toNodes(targets).map(function (el) { return this$1._toggleElement(el, show, false); })).then(resolve, noop); });
|
3666 |
+
},
|
3667 |
+
|
3668 |
+
isToggled: function(el) {
|
3669 |
+
var nodes = toNodes(el || this.$el);
|
3670 |
+
return this.cls
|
3671 |
+
? hasClass(nodes, this.cls.split(' ')[0])
|
3672 |
+
: !hasAttr(nodes, 'hidden');
|
3673 |
+
},
|
3674 |
+
|
3675 |
+
updateAria: function(el) {
|
3676 |
+
if (this.cls === false) {
|
3677 |
+
attr(el, 'aria-hidden', !this.isToggled(el));
|
3678 |
+
}
|
3679 |
+
},
|
3680 |
+
|
3681 |
+
_toggleElement: function(el, show, animate$$1) {
|
3682 |
+
var this$1 = this;
|
3683 |
+
|
3684 |
+
|
3685 |
+
show = isBoolean(show)
|
3686 |
+
? show
|
3687 |
+
: Animation.inProgress(el)
|
3688 |
+
? hasClass(el, 'uk-animation-leave')
|
3689 |
+
: Transition.inProgress(el)
|
3690 |
+
? el.style.height === '0px'
|
3691 |
+
: !this.isToggled(el);
|
3692 |
+
|
3693 |
+
if (!trigger(el, ("before" + (show ? 'show' : 'hide')), [this])) {
|
3694 |
+
return Promise.reject();
|
3695 |
+
}
|
3696 |
+
|
3697 |
+
var promise = (
|
3698 |
+
isFunction(animate$$1)
|
3699 |
+
? animate$$1
|
3700 |
+
: animate$$1 === false || !this.hasAnimation
|
3701 |
+
? this._toggle
|
3702 |
+
: this.hasTransition
|
3703 |
+
? toggleHeight(this)
|
3704 |
+
: toggleAnimation(this)
|
3705 |
+
)(el, show);
|
3706 |
+
|
3707 |
+
trigger(el, show ? 'show' : 'hide', [this]);
|
3708 |
+
|
3709 |
+
var final = function () {
|
3710 |
+
trigger(el, show ? 'shown' : 'hidden', [this$1]);
|
3711 |
+
this$1.$update(el);
|
3712 |
+
};
|
3713 |
+
|
3714 |
+
return promise ? promise.then(final) : Promise.resolve(final());
|
3715 |
+
},
|
3716 |
+
|
3717 |
+
_toggle: function(el, toggled) {
|
3718 |
+
|
3719 |
+
if (!el) {
|
3720 |
+
return;
|
3721 |
+
}
|
3722 |
+
|
3723 |
+
var changed;
|
3724 |
+
if (this.cls) {
|
3725 |
+
changed = includes(this.cls, ' ') || Boolean(toggled) !== hasClass(el, this.cls);
|
3726 |
+
changed && toggleClass(el, this.cls, includes(this.cls, ' ') ? undefined : toggled);
|
3727 |
+
} else {
|
3728 |
+
changed = Boolean(toggled) === hasAttr(el, 'hidden');
|
3729 |
+
changed && attr(el, 'hidden', !toggled ? '' : null);
|
3730 |
+
}
|
3731 |
+
|
3732 |
+
$$('[autofocus]', el).some(function (el) { return isVisible(el) && (el.focus() || true); });
|
3733 |
+
|
3734 |
+
this.updateAria(el);
|
3735 |
+
changed && this.$update(el);
|
3736 |
+
}
|
3737 |
+
|
3738 |
+
}
|
3739 |
+
|
3740 |
+
};
|
3741 |
+
|
3742 |
+
function toggleHeight(ref) {
|
3743 |
+
var isToggled = ref.isToggled;
|
3744 |
+
var duration = ref.duration;
|
3745 |
+
var initProps = ref.initProps;
|
3746 |
+
var hideProps = ref.hideProps;
|
3747 |
+
var transition$$1 = ref.transition;
|
3748 |
+
var _toggle = ref._toggle;
|
3749 |
+
|
3750 |
+
return function (el, show) {
|
3751 |
+
|
3752 |
+
var inProgress = Transition.inProgress(el);
|
3753 |
+
var inner = el.hasChildNodes ? toFloat(css(el.firstElementChild, 'marginTop')) + toFloat(css(el.lastElementChild, 'marginBottom')) : 0;
|
3754 |
+
var currentHeight = isVisible(el) ? height(el) + (inProgress ? 0 : inner) : 0;
|
3755 |
+
|
3756 |
+
Transition.cancel(el);
|
3757 |
+
|
3758 |
+
if (!isToggled(el)) {
|
3759 |
+
_toggle(el, true);
|
3760 |
+
}
|
3761 |
+
|
3762 |
+
height(el, '');
|
3763 |
+
|
3764 |
+
// Update child components first
|
3765 |
+
fastdom.flush();
|
3766 |
+
|
3767 |
+
var endHeight = height(el) + (inProgress ? 0 : inner);
|
3768 |
+
height(el, currentHeight);
|
3769 |
+
|
3770 |
+
return (show
|
3771 |
+
? Transition.start(el, assign({}, initProps, {overflow: 'hidden', height: endHeight}), Math.round(duration * (1 - currentHeight / endHeight)), transition$$1)
|
3772 |
+
: Transition.start(el, hideProps, Math.round(duration * (currentHeight / endHeight)), transition$$1).then(function () { return _toggle(el, false); })
|
3773 |
+
).then(function () { return css(el, initProps); });
|
3774 |
+
|
3775 |
+
};
|
3776 |
+
}
|
3777 |
+
|
3778 |
+
function toggleAnimation(ref) {
|
3779 |
+
var animation = ref.animation;
|
3780 |
+
var duration = ref.duration;
|
3781 |
+
var origin = ref.origin;
|
3782 |
+
var _toggle = ref._toggle;
|
3783 |
+
|
3784 |
+
return function (el, show) {
|
3785 |
+
|
3786 |
+
Animation.cancel(el);
|
3787 |
+
|
3788 |
+
if (show) {
|
3789 |
+
_toggle(el, true);
|
3790 |
+
return Animation.in(el, animation[0], duration, origin);
|
3791 |
+
}
|
3792 |
+
|
3793 |
+
return Animation.out(el, animation[1] || animation[0], duration, origin).then(function () { return _toggle(el, false); });
|
3794 |
+
};
|
3795 |
+
}
|
3796 |
+
|
3797 |
+
var Accordion = {
|
3798 |
+
|
3799 |
+
mixins: [Class, Togglable],
|
3800 |
+
|
3801 |
+
props: {
|
3802 |
+
targets: String,
|
3803 |
+
active: null,
|
3804 |
+
collapsible: Boolean,
|
3805 |
+
multiple: Boolean,
|
3806 |
+
toggle: String,
|
3807 |
+
content: String,
|
3808 |
+
transition: String
|
3809 |
+
},
|
3810 |
+
|
3811 |
+
data: {
|
3812 |
+
targets: '> *',
|
3813 |
+
active: false,
|
3814 |
+
animation: [true],
|
3815 |
+
collapsible: true,
|
3816 |
+
multiple: false,
|
3817 |
+
clsOpen: 'uk-open',
|
3818 |
+
toggle: '> .uk-accordion-title',
|
3819 |
+
content: '> .uk-accordion-content',
|
3820 |
+
transition: 'ease'
|
3821 |
+
},
|
3822 |
+
|
3823 |
+
computed: {
|
3824 |
+
|
3825 |
+
items: function(ref, $el) {
|
3826 |
+
var targets = ref.targets;
|
3827 |
+
|
3828 |
+
return $$(targets, $el);
|
3829 |
+
}
|
3830 |
+
|
3831 |
+
},
|
3832 |
+
|
3833 |
+
events: [
|
3834 |
+
|
3835 |
+
{
|
3836 |
+
|
3837 |
+
name: 'click',
|
3838 |
+
|
3839 |
+
delegate: function() {
|
3840 |
+
return ((this.targets) + " " + (this.$props.toggle));
|
3841 |
+
},
|
3842 |
+
|
3843 |
+
handler: function(e) {
|
3844 |
+
e.preventDefault();
|
3845 |
+
this.toggle(index($$(((this.targets) + " " + (this.$props.toggle)), this.$el), e.current));
|
3846 |
+
}
|
3847 |
+
|
3848 |
+
}
|
3849 |
+
|
3850 |
+
],
|
3851 |
+
|
3852 |
+
connected: function() {
|
3853 |
+
|
3854 |
+
if (this.active === false) {
|
3855 |
+
return;
|
3856 |
+
}
|
3857 |
+
|
3858 |
+
var active = this.items[Number(this.active)];
|
3859 |
+
if (active && !hasClass(active, this.clsOpen)) {
|
3860 |
+
this.toggle(active, false);
|
3861 |
+
}
|
3862 |
+
},
|
3863 |
+
|
3864 |
+
update: function() {
|
3865 |
+
var this$1 = this;
|
3866 |
+
|
3867 |
+
|
3868 |
+
this.items.forEach(function (el) { return this$1._toggle($(this$1.content, el), hasClass(el, this$1.clsOpen)); });
|
3869 |
+
|
3870 |
+
var active = !this.collapsible && !hasClass(this.items, this.clsOpen) && this.items[0];
|
3871 |
+
if (active) {
|
3872 |
+
this.toggle(active, false);
|
3873 |
+
}
|
3874 |
+
},
|
3875 |
+
|
3876 |
+
methods: {
|
3877 |
+
|
3878 |
+
toggle: function(item, animate$$1) {
|
3879 |
+
var this$1 = this;
|
3880 |
+
|
3881 |
+
|
3882 |
+
var index$$1 = getIndex(item, this.items);
|
3883 |
+
var active = filter(this.items, ("." + (this.clsOpen)));
|
3884 |
+
|
3885 |
+
item = this.items[index$$1];
|
3886 |
+
|
3887 |
+
item && [item]
|
3888 |
+
.concat(!this.multiple && !includes(active, item) && active || [])
|
3889 |
+
.forEach(function (el) {
|
3890 |
+
|
3891 |
+
var isItem = el === item;
|
3892 |
+
var state = isItem && !hasClass(el, this$1.clsOpen);
|
3893 |
+
|
3894 |
+
if (!state && isItem && !this$1.collapsible && active.length < 2) {
|
3895 |
+
return;
|
3896 |
+
}
|
3897 |
+
|
3898 |
+
toggleClass(el, this$1.clsOpen, state);
|
3899 |
+
|
3900 |
+
var content = el._wrapper ? el._wrapper.firstElementChild : $(this$1.content, el);
|
3901 |
+
|
3902 |
+
if (!el._wrapper) {
|
3903 |
+
el._wrapper = wrapAll(content, '<div>');
|
3904 |
+
attr(el._wrapper, 'hidden', state ? '' : null);
|
3905 |
+
}
|
3906 |
+
|
3907 |
+
this$1._toggle(content, true);
|
3908 |
+
this$1.toggleElement(el._wrapper, state, animate$$1).then(function () {
|
3909 |
+
|
3910 |
+
if (hasClass(el, this$1.clsOpen) !== state) {
|
3911 |
+
return;
|
3912 |
+
}
|
3913 |
+
|
3914 |
+
if (!state) {
|
3915 |
+
this$1._toggle(content, false);
|
3916 |
+
}
|
3917 |
+
|
3918 |
+
el._wrapper = null;
|
3919 |
+
unwrap(content);
|
3920 |
+
|
3921 |
+
});
|
3922 |
+
|
3923 |
+
});
|
3924 |
+
}
|
3925 |
+
|
3926 |
+
}
|
3927 |
+
|
3928 |
+
};
|
3929 |
+
|
3930 |
+
var Alert = {
|
3931 |
+
|
3932 |
+
mixins: [Class, Togglable],
|
3933 |
+
|
3934 |
+
args: 'animation',
|
3935 |
+
|
3936 |
+
props: {
|
3937 |
+
close: String
|
3938 |
+
},
|
3939 |
+
|
3940 |
+
data: {
|
3941 |
+
animation: [true],
|
3942 |
+
selClose: '.uk-alert-close',
|
3943 |
+
duration: 150,
|
3944 |
+
hideProps: assign({opacity: 0}, Togglable.data.hideProps)
|
3945 |
+
},
|
3946 |
+
|
3947 |
+
events: [
|
3948 |
+
|
3949 |
+
{
|
3950 |
+
|
3951 |
+
name: 'click',
|
3952 |
+
|
3953 |
+
delegate: function() {
|
3954 |
+
return this.selClose;
|
3955 |
+
},
|
3956 |
+
|
3957 |
+
handler: function(e) {
|
3958 |
+
e.preventDefault();
|
3959 |
+
this.close();
|
3960 |
+
}
|
3961 |
+
|
3962 |
+
}
|
3963 |
+
|
3964 |
+
],
|
3965 |
+
|
3966 |
+
methods: {
|
3967 |
+
|
3968 |
+
close: function() {
|
3969 |
+
var this$1 = this;
|
3970 |
+
|
3971 |
+
this.toggleElement(this.$el).then(function () { return this$1.$destroy(true); });
|
3972 |
+
}
|
3973 |
+
|
3974 |
+
}
|
3975 |
+
|
3976 |
+
};
|
3977 |
+
|
3978 |
+
function Core (UIkit) {
|
3979 |
+
|
3980 |
+
ready(function () {
|
3981 |
+
|
3982 |
+
UIkit.update();
|
3983 |
+
|
3984 |
+
var scroll = 0;
|
3985 |
+
var started = 0;
|
3986 |
+
|
3987 |
+
on(window, 'load resize', function (e) { return UIkit.update(null, e); });
|
3988 |
+
on(window, 'scroll', function (e) {
|
3989 |
+
var target = e.target;
|
3990 |
+
e.dir = scroll <= window.pageYOffset ? 'down' : 'up';
|
3991 |
+
e.pageYOffset = scroll = window.pageYOffset;
|
3992 |
+
UIkit.update(target.nodeType !== 1 ? document.body : target, e);
|
3993 |
+
}, {passive: true, capture: true});
|
3994 |
+
on(document, 'loadedmetadata load', function (ref) {
|
3995 |
+
var target = ref.target;
|
3996 |
+
|
3997 |
+
return UIkit.update(target, 'load');
|
3998 |
+
}, true);
|
3999 |
+
|
4000 |
+
on(document, 'animationstart', function (ref) {
|
4001 |
+
var target = ref.target;
|
4002 |
+
|
4003 |
+
if ((css(target, 'animationName') || '').match(/^uk-.*(left|right)/)) {
|
4004 |
+
|
4005 |
+
started++;
|
4006 |
+
css(document.body, 'overflowX', 'hidden');
|
4007 |
+
setTimeout(function () {
|
4008 |
+
if (!--started) {
|
4009 |
+
css(document.body, 'overflowX', '');
|
4010 |
+
}
|
4011 |
+
}, toMs(css(target, 'animationDuration')) + 100);
|
4012 |
+
}
|
4013 |
+
}, true);
|
4014 |
+
|
4015 |
+
if (!hasTouch) {
|
4016 |
+
return;
|
4017 |
+
}
|
4018 |
+
|
4019 |
+
var cls = 'uk-hover';
|
4020 |
+
|
4021 |
+
on(document, 'tap', function (ref) {
|
4022 |
+
var target = ref.target;
|
4023 |
+
|
4024 |
+
return $$(("." + cls)).forEach(function (el) { return !within(target, el) && removeClass(el, cls); }
|
4025 |
+
);
|
4026 |
+
}
|
4027 |
+
);
|
4028 |
+
|
4029 |
+
Object.defineProperty(UIkit, 'hoverSelector', {
|
4030 |
+
|
4031 |
+
set: function(selector) {
|
4032 |
+
on(document, 'tap', selector, function (ref) {
|
4033 |
+
var current = ref.current;
|
4034 |
+
|
4035 |
+
return addClass(current, cls);
|
4036 |
+
});
|
4037 |
+
}
|
4038 |
+
|
4039 |
+
});
|
4040 |
+
|
4041 |
+
UIkit.hoverSelector = '.uk-animation-toggle, .uk-transition-toggle, [uk-hover]';
|
4042 |
+
|
4043 |
+
});
|
4044 |
+
|
4045 |
+
}
|
4046 |
+
|
4047 |
+
var Video = {
|
4048 |
+
|
4049 |
+
args: 'autoplay',
|
4050 |
+
|
4051 |
+
props: {
|
4052 |
+
automute: Boolean,
|
4053 |
+
autoplay: Boolean,
|
4054 |
+
},
|
4055 |
+
|
4056 |
+
data: {
|
4057 |
+
automute: false,
|
4058 |
+
autoplay: true
|
4059 |
+
},
|
4060 |
+
|
4061 |
+
computed: {
|
4062 |
+
|
4063 |
+
inView: function(ref) {
|
4064 |
+
var autoplay = ref.autoplay;
|
4065 |
+
|
4066 |
+
return autoplay === 'inview';
|
4067 |
+
}
|
4068 |
+
|
4069 |
+
},
|
4070 |
+
|
4071 |
+
connected: function() {
|
4072 |
+
|
4073 |
+
if (this.inView && !hasAttr(this.$el, 'preload')) {
|
4074 |
+
this.$el.preload = 'none';
|
4075 |
+
}
|
4076 |
+
|
4077 |
+
this.player = new Player(this.$el);
|
4078 |
+
|
4079 |
+
if (this.automute) {
|
4080 |
+
this.player.mute();
|
4081 |
+
}
|
4082 |
+
|
4083 |
+
},
|
4084 |
+
|
4085 |
+
update: {
|
4086 |
+
|
4087 |
+
read: function(_, ref) {
|
4088 |
+
var type = ref.type;
|
4089 |
+
|
4090 |
+
|
4091 |
+
return !this.player || (type === 'scroll' || type === 'resize') && !this.inView
|
4092 |
+
? false
|
4093 |
+
: {
|
4094 |
+
visible: isVisible(this.$el) && css(this.$el, 'visibility') !== 'hidden',
|
4095 |
+
inView: this.inView && isInView(this.$el)
|
4096 |
+
};
|
4097 |
+
},
|
4098 |
+
|
4099 |
+
write: function(ref) {
|
4100 |
+
var visible = ref.visible;
|
4101 |
+
var inView = ref.inView;
|
4102 |
+
|
4103 |
+
|
4104 |
+
if (!visible || this.inView && !inView) {
|
4105 |
+
this.player.pause();
|
4106 |
+
} else if (this.autoplay === true || this.inView && inView) {
|
4107 |
+
this.player.play();
|
4108 |
+
}
|
4109 |
+
|
4110 |
+
},
|
4111 |
+
|
4112 |
+
events: ['load', 'resize', 'scroll']
|
4113 |
+
|
4114 |
+
}
|
4115 |
+
|
4116 |
+
};
|
4117 |
+
|
4118 |
+
var Cover = {
|
4119 |
+
|
4120 |
+
mixins: [Class, Video],
|
4121 |
+
|
4122 |
+
props: {
|
4123 |
+
width: Number,
|
4124 |
+
height: Number
|
4125 |
+
},
|
4126 |
+
|
4127 |
+
data: {
|
4128 |
+
automute: true
|
4129 |
+
},
|
4130 |
+
|
4131 |
+
update: {
|
4132 |
+
|
4133 |
+
read: function() {
|
4134 |
+
|
4135 |
+
var el = this.$el;
|
4136 |
+
|
4137 |
+
if (!isVisible(el)) {
|
4138 |
+
return false;
|
4139 |
+
}
|
4140 |
+
|
4141 |
+
var ref = el.parentNode;
|
4142 |
+
var height$$1 = ref.offsetHeight;
|
4143 |
+
var width$$1 = ref.offsetWidth;
|
4144 |
+
|
4145 |
+
return {height: height$$1, width: width$$1};
|
4146 |
+
},
|
4147 |
+
|
4148 |
+
write: function(ref) {
|
4149 |
+
var height$$1 = ref.height;
|
4150 |
+
var width$$1 = ref.width;
|
4151 |
+
|
4152 |
+
|
4153 |
+
var el = this.$el;
|
4154 |
+
var elWidth = this.width || el.naturalWidth || el.videoWidth || el.clientWidth;
|
4155 |
+
var elHeight = this.height || el.naturalHeight || el.videoHeight || el.clientHeight;
|
4156 |
+
|
4157 |
+
if (!elWidth || !elHeight) {
|
4158 |
+
return;
|
4159 |
+
}
|
4160 |
+
|
4161 |
+
css(el, Dimensions.cover(
|
4162 |
+
{
|
4163 |
+
width: elWidth,
|
4164 |
+
height: elHeight
|
4165 |
+
},
|
4166 |
+
{
|
4167 |
+
width: width$$1 + (width$$1 % 2 ? 1 : 0),
|
4168 |
+
height: height$$1 + (height$$1 % 2 ? 1 : 0)
|
4169 |
+
}
|
4170 |
+
));
|
4171 |
+
|
4172 |
+
},
|
4173 |
+
|
4174 |
+
events: ['load', 'resize']
|
4175 |
+
|
4176 |
+
}
|
4177 |
+
|
4178 |
+
};
|
4179 |
+
|
4180 |
+
var Position = {
|
4181 |
+
|
4182 |
+
props: {
|
4183 |
+
pos: String,
|
4184 |
+
offset: null,
|
4185 |
+
flip: Boolean,
|
4186 |
+
clsPos: String
|
4187 |
+
},
|
4188 |
+
|
4189 |
+
data: {
|
4190 |
+
pos: ("bottom-" + (!isRtl ? 'left' : 'right')),
|
4191 |
+
flip: true,
|
4192 |
+
offset: false,
|
4193 |
+
clsPos: ''
|
4194 |
+
},
|
4195 |
+
|
4196 |
+
computed: {
|
4197 |
+
|
4198 |
+
pos: function(ref) {
|
4199 |
+
var pos = ref.pos;
|
4200 |
+
|
4201 |
+
return (pos + (!includes(pos, '-') ? '-center' : '')).split('-');
|
4202 |
+
},
|
4203 |
+
|
4204 |
+
dir: function() {
|
4205 |
+
return this.pos[0];
|
4206 |
+
},
|
4207 |
+
|
4208 |
+
align: function() {
|
4209 |
+
return this.pos[1];
|
4210 |
+
}
|
4211 |
+
|
4212 |
+
},
|
4213 |
+
|
4214 |
+
methods: {
|
4215 |
+
|
4216 |
+
positionAt: function(element, target, boundary) {
|
4217 |
+
|
4218 |
+
removeClasses(element, ((this.clsPos) + "-(top|bottom|left|right)(-[a-z]+)?"));
|
4219 |
+
css(element, {top: '', left: ''});
|
4220 |
+
|
4221 |
+
var node;
|
4222 |
+
var ref = this;
|
4223 |
+
var offset$$1 = ref.offset;
|
4224 |
+
var axis = this.getAxis();
|
4225 |
+
|
4226 |
+
offset$$1 = isNumeric(offset$$1)
|
4227 |
+
? offset$$1
|
4228 |
+
: (node = $(offset$$1))
|
4229 |
+
? offset(node)[axis === 'x' ? 'left' : 'top'] - offset(target)[axis === 'x' ? 'right' : 'bottom']
|
4230 |
+
: 0;
|
4231 |
+
|
4232 |
+
var ref$1 = positionAt(
|
4233 |
+
element,
|
4234 |
+
target,
|
4235 |
+
axis === 'x' ? ((flipPosition(this.dir)) + " " + (this.align)) : ((this.align) + " " + (flipPosition(this.dir))),
|
4236 |
+
axis === 'x' ? ((this.dir) + " " + (this.align)) : ((this.align) + " " + (this.dir)),
|
4237 |
+
axis === 'x' ? ("" + (this.dir === 'left' ? -offset$$1 : offset$$1)) : (" " + (this.dir === 'top' ? -offset$$1 : offset$$1)),
|
4238 |
+
null,
|
4239 |
+
this.flip,
|
4240 |
+
boundary
|
4241 |
+
).target;
|
4242 |
+
var x = ref$1.x;
|
4243 |
+
var y = ref$1.y;
|
4244 |
+
|
4245 |
+
this.dir = axis === 'x' ? x : y;
|
4246 |
+
this.align = axis === 'x' ? y : x;
|
4247 |
+
|
4248 |
+
toggleClass(element, ((this.clsPos) + "-" + (this.dir) + "-" + (this.align)), this.offset === false);
|
4249 |
+
|
4250 |
+
},
|
4251 |
+
|
4252 |
+
getAxis: function() {
|
4253 |
+
return this.dir === 'top' || this.dir === 'bottom' ? 'y' : 'x';
|
4254 |
+
}
|
4255 |
+
|
4256 |
+
}
|
4257 |
+
|
4258 |
+
};
|
4259 |
+
|
4260 |
+
var active;
|
4261 |
+
|
4262 |
+
var Drop = {
|
4263 |
+
|
4264 |
+
mixins: [Position, Togglable],
|
4265 |
+
|
4266 |
+
args: 'pos',
|
4267 |
+
|
4268 |
+
props: {
|
4269 |
+
mode: 'list',
|
4270 |
+
toggle: Boolean,
|
4271 |
+
boundary: Boolean,
|
4272 |
+
boundaryAlign: Boolean,
|
4273 |
+
delayShow: Number,
|
4274 |
+
delayHide: Number,
|
4275 |
+
clsDrop: String
|
4276 |
+
},
|
4277 |
+
|
4278 |
+
data: {
|
4279 |
+
mode: ['click', 'hover'],
|
4280 |
+
toggle: '- *',
|
4281 |
+
boundary: window,
|
4282 |
+
boundaryAlign: false,
|
4283 |
+
delayShow: 0,
|
4284 |
+
delayHide: 800,
|
4285 |
+
clsDrop: false,
|
4286 |
+
hoverIdle: 200,
|
4287 |
+
animation: ['uk-animation-fade'],
|
4288 |
+
cls: 'uk-open'
|
4289 |
+
},
|
4290 |
+
|
4291 |
+
computed: {
|
4292 |
+
|
4293 |
+
boundary: function(ref, $el) {
|
4294 |
+
var boundary = ref.boundary;
|
4295 |
+
|
4296 |
+
return query(boundary, $el);
|
4297 |
+
},
|
4298 |
+
|
4299 |
+
clsDrop: function(ref) {
|
4300 |
+
var clsDrop = ref.clsDrop;
|
4301 |
+
|
4302 |
+
return clsDrop || ("uk-" + (this.$options.name));
|
4303 |
+
},
|
4304 |
+
|
4305 |
+
clsPos: function() {
|
4306 |
+
return this.clsDrop;
|
4307 |
+
}
|
4308 |
+
|
4309 |
+
},
|
4310 |
+
|
4311 |
+
created: function() {
|
4312 |
+
this.tracker = new MouseTracker();
|
4313 |
+
},
|
4314 |
+
|
4315 |
+
connected: function() {
|
4316 |
+
|
4317 |
+
addClass(this.$el, this.clsDrop);
|
4318 |
+
|
4319 |
+
var ref = this.$props;
|
4320 |
+
var toggle = ref.toggle;
|
4321 |
+
this.toggle = toggle && this.$create('toggle', query(toggle, this.$el), {
|
4322 |
+
target: this.$el,
|
4323 |
+
mode: this.mode
|
4324 |
+
});
|
4325 |
+
|
4326 |
+
this.updateAria(this.$el);
|
4327 |
+
|
4328 |
+
},
|
4329 |
+
|
4330 |
+
events: [
|
4331 |
+
|
4332 |
+
|
4333 |
+
{
|
4334 |
+
|
4335 |
+
name: 'click',
|
4336 |
+
|
4337 |
+
delegate: function() {
|
4338 |
+
return ("." + (this.clsDrop) + "-close");
|
4339 |
+
},
|
4340 |
+
|
4341 |
+
handler: function(e) {
|
4342 |
+
e.preventDefault();
|
4343 |
+
this.hide(false);
|
4344 |
+
}
|
4345 |
+
|
4346 |
+
},
|
4347 |
+
|
4348 |
+
{
|
4349 |
+
|
4350 |
+
name: 'click',
|
4351 |
+
|
4352 |
+
delegate: function() {
|
4353 |
+
return 'a[href^="#"]';
|
4354 |
+
},
|
4355 |
+
|
4356 |
+
handler: function(e) {
|
4357 |
+
|
4358 |
+
if (e.defaultPrevented) {
|
4359 |
+
return;
|
4360 |
+
}
|
4361 |
+
|
4362 |
+
var id = e.target.hash;
|
4363 |
+
|
4364 |
+
if (!id) {
|
4365 |
+
e.preventDefault();
|
4366 |
+
}
|
4367 |
+
|
4368 |
+
if (!id || !within(id, this.$el)) {
|
4369 |
+
this.hide(false);
|
4370 |
+
}
|
4371 |
+
}
|
4372 |
+
|
4373 |
+
},
|
4374 |
+
|
4375 |
+
{
|
4376 |
+
|
4377 |
+
name: 'beforescroll',
|
4378 |
+
|
4379 |
+
handler: function() {
|
4380 |
+
this.hide(false);
|
4381 |
+
}
|
4382 |
+
|
4383 |
+
},
|
4384 |
+
|
4385 |
+
{
|
4386 |
+
|
4387 |
+
name: 'toggle',
|
4388 |
+
|
4389 |
+
self: true,
|
4390 |
+
|
4391 |
+
handler: function(e, toggle) {
|
4392 |
+
|
4393 |
+
e.preventDefault();
|
4394 |
+
|
4395 |
+
if (this.isToggled()) {
|
4396 |
+
this.hide(false);
|
4397 |
+
} else {
|
4398 |
+
this.show(toggle, false);
|
4399 |
+
}
|
4400 |
+
}
|
4401 |
+
|
4402 |
+
},
|
4403 |
+
|
4404 |
+
{
|
4405 |
+
|
4406 |
+
name: pointerEnter,
|
4407 |
+
|
4408 |
+
filter: function() {
|
4409 |
+
return includes(this.mode, 'hover');
|
4410 |
+
},
|
4411 |
+
|
4412 |
+
handler: function(e) {
|
4413 |
+
|
4414 |
+
if (isTouch(e)) {
|
4415 |
+
return;
|
4416 |
+
}
|
4417 |
+
|
4418 |
+
if (active
|
4419 |
+
&& active !== this
|
4420 |
+
&& active.toggle
|
4421 |
+
&& includes(active.toggle.mode, 'hover')
|
4422 |
+
&& !within(e.target, active.toggle.$el)
|
4423 |
+
&& !pointInRect({x: e.pageX, y: e.pageY}, offset(active.$el))
|
4424 |
+
) {
|
4425 |
+
active.hide(false);
|
4426 |
+
}
|
4427 |
+
|
4428 |
+
e.preventDefault();
|
4429 |
+
this.show(this.toggle);
|
4430 |
+
}
|
4431 |
+
|
4432 |
+
},
|
4433 |
+
|
4434 |
+
{
|
4435 |
+
|
4436 |
+
name: 'toggleshow',
|
4437 |
+
|
4438 |
+
handler: function(e, toggle) {
|
4439 |
+
|
4440 |
+
if (toggle && !includes(toggle.target, this.$el)) {
|
4441 |
+
return;
|
4442 |
+
}
|
4443 |
+
|
4444 |
+
e.preventDefault();
|
4445 |
+
this.show(toggle || this.toggle);
|
4446 |
+
}
|
4447 |
+
|
4448 |
+
},
|
4449 |
+
|
4450 |
+
{
|
4451 |
+
|
4452 |
+
name: ("togglehide " + pointerLeave),
|
4453 |
+
|
4454 |
+
handler: function(e, toggle) {
|
4455 |
+
|
4456 |
+
if (isTouch(e) || toggle && !includes(toggle.target, this.$el)) {
|
4457 |
+
return;
|
4458 |
+
}
|
4459 |
+
|
4460 |
+
e.preventDefault();
|
4461 |
+
|
4462 |
+
if (this.toggle && includes(this.toggle.mode, 'hover')) {
|
4463 |
+
this.hide();
|
4464 |
+
}
|
4465 |
+
}
|
4466 |
+
|
4467 |
+
},
|
4468 |
+
|
4469 |
+
{
|
4470 |
+
|
4471 |
+
name: 'beforeshow',
|
4472 |
+
|
4473 |
+
self: true,
|
4474 |
+
|
4475 |
+
handler: function() {
|
4476 |
+
this.clearTimers();
|
4477 |
+
Animation.cancel(this.$el);
|
4478 |
+
this.position();
|
4479 |
+
}
|
4480 |
+
|
4481 |
+
},
|
4482 |
+
|
4483 |
+
{
|
4484 |
+
|
4485 |
+
name: 'show',
|
4486 |
+
|
4487 |
+
self: true,
|
4488 |
+
|
4489 |
+
handler: function() {
|
4490 |
+
this.tracker.init();
|
4491 |
+
if (this.toggle) {
|
4492 |
+
addClass(this.toggle.$el, this.cls);
|
4493 |
+
attr(this.toggle.$el, 'aria-expanded', 'true');
|
4494 |
+
}
|
4495 |
+
registerEvent();
|
4496 |
+
}
|
4497 |
+
|
4498 |
+
},
|
4499 |
+
|
4500 |
+
{
|
4501 |
+
|
4502 |
+
name: 'beforehide',
|
4503 |
+
|
4504 |
+
self: true,
|
4505 |
+
|
4506 |
+
handler: function() {
|
4507 |
+
this.clearTimers();
|
4508 |
+
}
|
4509 |
+
|
4510 |
+
},
|
4511 |
+
|
4512 |
+
{
|
4513 |
+
|
4514 |
+
name: 'hide',
|
4515 |
+
|
4516 |
+
handler: function(ref) {
|
4517 |
+
var target = ref.target;
|
4518 |
+
|
4519 |
+
|
4520 |
+
if (this.$el !== target) {
|
4521 |
+
active = active === null && within(target, this.$el) && this.isToggled() ? this : active;
|
4522 |
+
return;
|
4523 |
+
}
|
4524 |
+
|
4525 |
+
active = this.isActive() ? null : active;
|
4526 |
+
|
4527 |
+
if (this.toggle) {
|
4528 |
+
removeClass(this.toggle.$el, this.cls);
|
4529 |
+
attr(this.toggle.$el, 'aria-expanded', 'false');
|
4530 |
+
this.toggle.$el.blur();
|
4531 |
+
$$('a, button', this.toggle.$el).forEach(function (el) { return el.blur(); });
|
4532 |
+
}
|
4533 |
+
|
4534 |
+
this.tracker.cancel();
|
4535 |
+
}
|
4536 |
+
|
4537 |
+
}
|
4538 |
+
|
4539 |
+
],
|
4540 |
+
|
4541 |
+
update: {
|
4542 |
+
|
4543 |
+
write: function() {
|
4544 |
+
|
4545 |
+
if (this.isToggled() && !Animation.inProgress(this.$el)) {
|
4546 |
+
this.position();
|
4547 |
+
}
|
4548 |
+
|
4549 |
+
},
|
4550 |
+
|
4551 |
+
events: ['resize']
|
4552 |
+
|
4553 |
+
},
|
4554 |
+
|
4555 |
+
methods: {
|
4556 |
+
|
4557 |
+
show: function(toggle, delay) {
|
4558 |
+
var this$1 = this;
|
4559 |
+
if ( delay === void 0 ) delay = true;
|
4560 |
+
|
4561 |
+
|
4562 |
+
var show = function () { return !this$1.isToggled() && this$1.toggleElement(this$1.$el, true); };
|
4563 |
+
var tryShow = function () {
|
4564 |
+
|
4565 |
+
this$1.toggle = toggle || this$1.toggle;
|
4566 |
+
|
4567 |
+
this$1.clearTimers();
|
4568 |
+
|
4569 |
+
if (this$1.isActive()) {
|
4570 |
+
return;
|
4571 |
+
} else if (delay && active && active !== this$1 && active.isDelaying) {
|
4572 |
+
this$1.showTimer = setTimeout(this$1.show, 10);
|
4573 |
+
return;
|
4574 |
+
} else if (this$1.isParentOf(active)) {
|
4575 |
+
|
4576 |
+
if (active.hideTimer) {
|
4577 |
+
active.hide(false);
|
4578 |
+
} else {
|
4579 |
+
return;
|
4580 |
+
}
|
4581 |
+
|
4582 |
+
} else if (active && !this$1.isChildOf(active) && !this$1.isParentOf(active)) {
|
4583 |
+
|
4584 |
+
var prev;
|
4585 |
+
while (active && active !== prev && !this$1.isChildOf(active)) {
|
4586 |
+
prev = active;
|
4587 |
+
active.hide(false);
|
4588 |
+
}
|
4589 |
+
|
4590 |
+
}
|
4591 |
+
|
4592 |
+
if (delay && this$1.delayShow) {
|
4593 |
+
this$1.showTimer = setTimeout(show, this$1.delayShow);
|
4594 |
+
} else {
|
4595 |
+
show();
|
4596 |
+
}
|
4597 |
+
|
4598 |
+
active = this$1;
|
4599 |
+
};
|
4600 |
+
|
4601 |
+
if (toggle && this.toggle && toggle.$el !== this.toggle.$el) {
|
4602 |
+
|
4603 |
+
once(this.$el, 'hide', tryShow);
|
4604 |
+
this.hide(false);
|
4605 |
+
|
4606 |
+
} else {
|
4607 |
+
tryShow();
|
4608 |
+
}
|
4609 |
+
},
|
4610 |
+
|
4611 |
+
hide: function(delay) {
|
4612 |
+
var this$1 = this;
|
4613 |
+
if ( delay === void 0 ) delay = true;
|
4614 |
+
|
4615 |
+
|
4616 |
+
var hide = function () { return this$1.toggleNow(this$1.$el, false); };
|
4617 |
+
|
4618 |
+
this.clearTimers();
|
4619 |
+
|
4620 |
+
this.isDelaying = this.tracker.movesTo(this.$el);
|
4621 |
+
|
4622 |
+
if (delay && this.isDelaying) {
|
4623 |
+
this.hideTimer = setTimeout(this.hide, this.hoverIdle);
|
4624 |
+
} else if (delay && this.delayHide) {
|
4625 |
+
this.hideTimer = setTimeout(hide, this.delayHide);
|
4626 |
+
} else {
|
4627 |
+
hide();
|
4628 |
+
}
|
4629 |
+
},
|
4630 |
+
|
4631 |
+
clearTimers: function() {
|
4632 |
+
clearTimeout(this.showTimer);
|
4633 |
+
clearTimeout(this.hideTimer);
|
4634 |
+
this.showTimer = null;
|
4635 |
+
this.hideTimer = null;
|
4636 |
+
this.isDelaying = false;
|
4637 |
+
},
|
4638 |
+
|
4639 |
+
isActive: function() {
|
4640 |
+
return active === this;
|
4641 |
+
},
|
4642 |
+
|
4643 |
+
isChildOf: function(drop) {
|
4644 |
+
return drop && drop !== this && within(this.$el, drop.$el);
|
4645 |
+
},
|
4646 |
+
|
4647 |
+
isParentOf: function(drop) {
|
4648 |
+
return drop && drop !== this && within(drop.$el, this.$el);
|
4649 |
+
},
|
4650 |
+
|
4651 |
+
position: function() {
|
4652 |
+
|
4653 |
+
removeClasses(this.$el, ((this.clsDrop) + "-(stack|boundary)"));
|
4654 |
+
css(this.$el, {top: '', left: '', display: 'block'});
|
4655 |
+
toggleClass(this.$el, ((this.clsDrop) + "-boundary"), this.boundaryAlign);
|
4656 |
+
|
4657 |
+
var boundary = offset(this.boundary);
|
4658 |
+
var alignTo = this.boundaryAlign ? boundary : offset(this.toggle.$el);
|
4659 |
+
|
4660 |
+
if (this.align === 'justify') {
|
4661 |
+
var prop = this.getAxis() === 'y' ? 'width' : 'height';
|
4662 |
+
css(this.$el, prop, alignTo[prop]);
|
4663 |
+
} else if (this.$el.offsetWidth > Math.max(boundary.right - alignTo.left, alignTo.right - boundary.left)) {
|
4664 |
+
addClass(this.$el, ((this.clsDrop) + "-stack"));
|
4665 |
+
}
|
4666 |
+
|
4667 |
+
this.positionAt(this.$el, this.boundaryAlign ? this.boundary : this.toggle.$el, this.boundary);
|
4668 |
+
|
4669 |
+
css(this.$el, 'display', '');
|
4670 |
+
|
4671 |
+
}
|
4672 |
+
|
4673 |
+
}
|
4674 |
+
|
4675 |
+
};
|
4676 |
+
|
4677 |
+
var registered;
|
4678 |
+
|
4679 |
+
function registerEvent() {
|
4680 |
+
|
4681 |
+
if (registered) {
|
4682 |
+
return;
|
4683 |
+
}
|
4684 |
+
|
4685 |
+
registered = true;
|
4686 |
+
on(document, 'click', function (ref) {
|
4687 |
+
var target = ref.target;
|
4688 |
+
var defaultPrevented = ref.defaultPrevented;
|
4689 |
+
|
4690 |
+
var prev;
|
4691 |
+
|
4692 |
+
if (defaultPrevented) {
|
4693 |
+
return;
|
4694 |
+
}
|
4695 |
+
|
4696 |
+
while (active && active !== prev && !within(target, active.$el) && !(active.toggle && within(target, active.toggle.$el))) {
|
4697 |
+
prev = active;
|
4698 |
+
active.hide(false);
|
4699 |
+
}
|
4700 |
+
});
|
4701 |
+
}
|
4702 |
+
|
4703 |
+
var Dropdown = {
|
4704 |
+
|
4705 |
+
extends: Drop
|
4706 |
+
|
4707 |
+
};
|
4708 |
+
|
4709 |
+
var FormCustom = {
|
4710 |
+
|
4711 |
+
mixins: [Class],
|
4712 |
+
|
4713 |
+
args: 'target',
|
4714 |
+
|
4715 |
+
props: {
|
4716 |
+
target: Boolean
|
4717 |
+
},
|
4718 |
+
|
4719 |
+
data: {
|
4720 |
+
target: false
|
4721 |
+
},
|
4722 |
+
|
4723 |
+
computed: {
|
4724 |
+
|
4725 |
+
input: function(_, $el) {
|
4726 |
+
return $(selInput, $el);
|
4727 |
+
},
|
4728 |
+
|
4729 |
+
state: function() {
|
4730 |
+
return this.input.nextElementSibling;
|
4731 |
+
},
|
4732 |
+
|
4733 |
+
target: function(ref, $el) {
|
4734 |
+
var target = ref.target;
|
4735 |
+
|
4736 |
+
return target && (target === true
|
4737 |
+
&& this.input.parentNode === $el
|
4738 |
+
&& this.input.nextElementSibling
|
4739 |
+
|| query(target, $el));
|
4740 |
+
}
|
4741 |
+
|
4742 |
+
},
|
4743 |
+
|
4744 |
+
update: function() {
|
4745 |
+
|
4746 |
+
var ref = this;
|
4747 |
+
var target = ref.target;
|
4748 |
+
var input = ref.input;
|
4749 |
+
|
4750 |
+
if (!target) {
|
4751 |
+
return;
|
4752 |
+
}
|
4753 |
+
|
4754 |
+
var option;
|
4755 |
+
var prop = isInput(target) ? 'value' : 'textContent';
|
4756 |
+
var prev = target[prop];
|
4757 |
+
var value = input.files && input.files[0]
|
4758 |
+
? input.files[0].name
|
4759 |
+
: matches(input, 'select') && (option = $$('option', input).filter(function (el) { return el.selected; })[0])
|
4760 |
+
? option.textContent
|
4761 |
+
: input.value;
|
4762 |
+
|
4763 |
+
if (prev !== value) {
|
4764 |
+
target[prop] = value;
|
4765 |
+
}
|
4766 |
+
|
4767 |
+
},
|
4768 |
+
|
4769 |
+
events: [
|
4770 |
+
|
4771 |
+
{
|
4772 |
+
|
4773 |
+
name: 'focusin focusout mouseenter mouseleave',
|
4774 |
+
|
4775 |
+
delegate: selInput,
|
4776 |
+
|
4777 |
+
handler: function(ref) {
|
4778 |
+
var type = ref.type;
|
4779 |
+
var current = ref.current;
|
4780 |
+
|
4781 |
+
if (current === this.input) {
|
4782 |
+
toggleClass(
|
4783 |
+
this.state,
|
4784 |
+
("uk-" + (includes(type, 'focus') ? 'focus' : 'hover')),
|
4785 |
+
includes(['focusin', 'mouseenter'], type)
|
4786 |
+
);
|
4787 |
+
}
|
4788 |
+
}
|
4789 |
+
|
4790 |
+
},
|
4791 |
+
|
4792 |
+
{
|
4793 |
+
|
4794 |
+
name: 'change',
|
4795 |
+
|
4796 |
+
handler: function() {
|
4797 |
+
this.$emit();
|
4798 |
+
}
|
4799 |
+
|
4800 |
+
}
|
4801 |
+
|
4802 |
+
]
|
4803 |
+
|
4804 |
+
};
|
4805 |
+
|
4806 |
+
// Deprecated
|
4807 |
+
var Gif = {
|
4808 |
+
|
4809 |
+
update: {
|
4810 |
+
|
4811 |
+
read: function(data$$1) {
|
4812 |
+
|
4813 |
+
var inview = isInView(this.$el);
|
4814 |
+
|
4815 |
+
if (!inview || data$$1.isInView === inview) {
|
4816 |
+
return false;
|
4817 |
+
}
|
4818 |
+
|
4819 |
+
data$$1.isInView = inview;
|
4820 |
+
},
|
4821 |
+
|
4822 |
+
write: function() {
|
4823 |
+
this.$el.src = this.$el.src;
|
4824 |
+
},
|
4825 |
+
|
4826 |
+
events: ['scroll', 'load', 'resize']
|
4827 |
+
}
|
4828 |
+
|
4829 |
+
};
|
4830 |
+
|
4831 |
+
var Margin = {
|
4832 |
+
|
4833 |
+
props: {
|
4834 |
+
margin: String,
|
4835 |
+
firstColumn: Boolean
|
4836 |
+
},
|
4837 |
+
|
4838 |
+
data: {
|
4839 |
+
margin: 'uk-margin-small-top',
|
4840 |
+
firstColumn: 'uk-first-column'
|
4841 |
+
},
|
4842 |
+
|
4843 |
+
update: {
|
4844 |
+
|
4845 |
+
read: function(data$$1) {
|
4846 |
+
|
4847 |
+
var items = this.$el.children;
|
4848 |
+
var rows = [[]];
|
4849 |
+
|
4850 |
+
if (!items.length || !isVisible(this.$el)) {
|
4851 |
+
return data$$1.rows = rows;
|
4852 |
+
}
|
4853 |
+
|
4854 |
+
data$$1.rows = getRows(items);
|
4855 |
+
data$$1.stacks = !data$$1.rows.some(function (row) { return row.length > 1; });
|
4856 |
+
|
4857 |
+
},
|
4858 |
+
|
4859 |
+
write: function(ref) {
|
4860 |
+
var this$1 = this;
|
4861 |
+
var rows = ref.rows;
|
4862 |
+
|
4863 |
+
|
4864 |
+
rows.forEach(function (row, i) { return row.forEach(function (el, j) {
|
4865 |
+
toggleClass(el, this$1.margin, i !== 0);
|
4866 |
+
toggleClass(el, this$1.firstColumn, j === 0);
|
4867 |
+
}); }
|
4868 |
+
);
|
4869 |
+
|
4870 |
+
},
|
4871 |
+
|
4872 |
+
events: ['load', 'resize']
|
4873 |
+
|
4874 |
+
}
|
4875 |
+
|
4876 |
+
};
|
4877 |
+
|
4878 |
+
function getRows(items) {
|
4879 |
+
var rows = [[]];
|
4880 |
+
|
4881 |
+
for (var i = 0; i < items.length; i++) {
|
4882 |
+
|
4883 |
+
var el = items[i];
|
4884 |
+
var dim = getOffset(el);
|
4885 |
+
|
4886 |
+
if (!dim.height) {
|
4887 |
+
continue;
|
4888 |
+
}
|
4889 |
+
|
4890 |
+
for (var j = rows.length - 1; j >= 0; j--) {
|
4891 |
+
|
4892 |
+
var row = rows[j];
|
4893 |
+
|
4894 |
+
if (!row[0]) {
|
4895 |
+
row.push(el);
|
4896 |
+
break;
|
4897 |
+
}
|
4898 |
+
|
4899 |
+
var leftDim = (void 0);
|
4900 |
+
if (row[0].offsetParent === el.offsetParent) {
|
4901 |
+
leftDim = getOffset(row[0]);
|
4902 |
+
} else {
|
4903 |
+
dim = getOffset(el, true);
|
4904 |
+
leftDim = getOffset(row[0], true);
|
4905 |
+
}
|
4906 |
+
|
4907 |
+
if (dim.top >= leftDim.bottom - 1) {
|
4908 |
+
rows.push([el]);
|
4909 |
+
break;
|
4910 |
+
}
|
4911 |
+
|
4912 |
+
if (dim.bottom > leftDim.top) {
|
4913 |
+
|
4914 |
+
if (dim.left < leftDim.left && !isRtl) {
|
4915 |
+
row.unshift(el);
|
4916 |
+
break;
|
4917 |
+
}
|
4918 |
+
|
4919 |
+
row.push(el);
|
4920 |
+
break;
|
4921 |
+
}
|
4922 |
+
|
4923 |
+
if (j === 0) {
|
4924 |
+
rows.unshift([el]);
|
4925 |
+
break;
|
4926 |
+
}
|
4927 |
+
|
4928 |
+
}
|
4929 |
+
|
4930 |
+
}
|
4931 |
+
|
4932 |
+
return rows;
|
4933 |
+
|
4934 |
+
}
|
4935 |
+
|
4936 |
+
function getOffset(element, offset$$1) {
|
4937 |
+
var assign$$1;
|
4938 |
+
|
4939 |
+
if ( offset$$1 === void 0 ) offset$$1 = false;
|
4940 |
+
|
4941 |
+
var offsetTop = element.offsetTop;
|
4942 |
+
var offsetLeft = element.offsetLeft;
|
4943 |
+
var offsetHeight = element.offsetHeight;
|
4944 |
+
|
4945 |
+
if (offset$$1) {
|
4946 |
+
(assign$$1 = offsetPosition(element), offsetTop = assign$$1[0], offsetLeft = assign$$1[1]);
|
4947 |
+
}
|
4948 |
+
|
4949 |
+
return {
|
4950 |
+
top: offsetTop,
|
4951 |
+
left: offsetLeft,
|
4952 |
+
height: offsetHeight,
|
4953 |
+
bottom: offsetTop + offsetHeight
|
4954 |
+
};
|
4955 |
+
}
|
4956 |
+
|
4957 |
+
var Grid = {
|
4958 |
+
|
4959 |
+
extends: Margin,
|
4960 |
+
|
4961 |
+
mixins: [Class],
|
4962 |
+
|
4963 |
+
name: 'grid',
|
4964 |
+
|
4965 |
+
props: {
|
4966 |
+
masonry: Boolean,
|
4967 |
+
parallax: Number
|
4968 |
+
},
|
4969 |
+
|
4970 |
+
data: {
|
4971 |
+
margin: 'uk-grid-margin',
|
4972 |
+
clsStack: 'uk-grid-stack',
|
4973 |
+
masonry: false,
|
4974 |
+
parallax: 0
|
4975 |
+
},
|
4976 |
+
|
4977 |
+
computed: {
|
4978 |
+
|
4979 |
+
length: function(_, $el) {
|
4980 |
+
return $el.children.length;
|
4981 |
+
},
|
4982 |
+
|
4983 |
+
parallax: function(ref) {
|
4984 |
+
var parallax = ref.parallax;
|
4985 |
+
|
4986 |
+
return parallax && this.length ? Math.abs(parallax) : '';
|
4987 |
+
}
|
4988 |
+
|
4989 |
+
},
|
4990 |
+
|
4991 |
+
connected: function() {
|
4992 |
+
this.masonry && addClass(this.$el, 'uk-flex-top uk-flex-wrap-top');
|
4993 |
+
},
|
4994 |
+
|
4995 |
+
update: [
|
4996 |
+
|
4997 |
+
{
|
4998 |
+
|
4999 |
+
read: function(ref) {
|
5000 |
+
var rows = ref.rows;
|
5001 |
+
|
5002 |
+
|
5003 |
+
if (this.masonry || this.parallax) {
|
5004 |
+
rows = rows.map(function (elements) { return sortBy(elements, 'offsetLeft'); });
|
5005 |
+
}
|
5006 |
+
|
5007 |
+
var hasStaticContent = rows.some(function (elements) { return elements.some(function (element) { return element.style.position === 'static'; }); });
|
5008 |
+
var translates = false;
|
5009 |
+
var elHeight = '';
|
5010 |
+
|
5011 |
+
if (this.masonry && this.length) {
|
5012 |
+
|
5013 |
+
var height$$1 = 0;
|
5014 |
+
|
5015 |
+
translates = rows.reduce(function (translates, row, i) {
|
5016 |
+
|
5017 |
+
translates[i] = row.map(function (_, j) { return i === 0 ? 0 : toFloat(translates[i - 1][j]) + (height$$1 - toFloat(rows[i - 1][j] && rows[i - 1][j].offsetHeight)); });
|
5018 |
+
height$$1 = row.reduce(function (height$$1, el) { return Math.max(height$$1, el.offsetHeight); }, 0);
|
5019 |
+
|
5020 |
+
return translates;
|
5021 |
+
|
5022 |
+
}, []);
|
5023 |
+
|
5024 |
+
elHeight = maxColumnHeight(rows) + getMarginTop(this.$el, this.margin) * (rows.length - 1);
|
5025 |
+
|
5026 |
+
}
|
5027 |
+
|
5028 |
+
return {rows: rows, translates: translates, height: hasStaticContent ? elHeight : false};
|
5029 |
+
|
5030 |
+
},
|
5031 |
+
|
5032 |
+
write: function(ref) {
|
5033 |
+
var stacks = ref.stacks;
|
5034 |
+
var height$$1 = ref.height;
|
5035 |
+
|
5036 |
+
|
5037 |
+
toggleClass(this.$el, this.clsStack, stacks);
|
5038 |
+
|
5039 |
+
css(this.$el, 'paddingBottom', this.parallax);
|
5040 |
+
height$$1 !== false && css(this.$el, 'height', height$$1);
|
5041 |
+
|
5042 |
+
},
|
5043 |
+
|
5044 |
+
events: ['load', 'resize']
|
5045 |
+
|
5046 |
+
},
|
5047 |
+
|
5048 |
+
{
|
5049 |
+
|
5050 |
+
read: function(ref) {
|
5051 |
+
var height$$1 = ref.height;
|
5052 |
+
|
5053 |
+
return {
|
5054 |
+
scrolled: this.parallax
|
5055 |
+
? scrolledOver(this.$el, height$$1 ? height$$1 - height(this.$el) : 0) * this.parallax
|
5056 |
+
: false
|
5057 |
+
};
|
5058 |
+
},
|
5059 |
+
|
5060 |
+
write: function(ref) {
|
5061 |
+
var rows = ref.rows;
|
5062 |
+
var scrolled = ref.scrolled;
|
5063 |
+
var translates = ref.translates;
|
5064 |
+
|
5065 |
+
|
5066 |
+
if (scrolled === false && !translates) {
|
5067 |
+
return;
|
5068 |
+
}
|
5069 |
+
|
5070 |
+
rows.forEach(function (row, i) { return row.forEach(function (el, j) { return css(el, 'transform', !scrolled && !translates ? '' : ("translateY(" + ((translates && -translates[i][j]) + (scrolled ? j % 2 ? scrolled : scrolled / 8 : 0)) + "px)")); }
|
5071 |
+
); }
|
5072 |
+
);
|
5073 |
+
|
5074 |
+
},
|
5075 |
+
|
5076 |
+
events: ['scroll', 'load', 'resize']
|
5077 |
+
|
5078 |
+
}
|
5079 |
+
|
5080 |
+
]
|
5081 |
+
|
5082 |
+
};
|
5083 |
+
|
5084 |
+
function getMarginTop(root, cls) {
|
5085 |
+
|
5086 |
+
var nodes = toNodes(root.children);
|
5087 |
+
var ref = nodes.filter(function (el) { return hasClass(el, cls); });
|
5088 |
+
var node = ref[0];
|
5089 |
+
|
5090 |
+
return toFloat(node
|
5091 |
+
? css(node, 'marginTop')
|
5092 |
+
: css(nodes[0], 'paddingLeft'));
|
5093 |
+
}
|
5094 |
+
|
5095 |
+
function maxColumnHeight(rows) {
|
5096 |
+
return Math.max.apply(Math, rows.reduce(function (sum, row) {
|
5097 |
+
row.forEach(function (el, i) { return sum[i] = (sum[i] || 0) + el.offsetHeight; });
|
5098 |
+
return sum;
|
5099 |
+
}, []));
|
5100 |
+
}
|
5101 |
+
|
5102 |
+
// IE 11 fix (min-height on a flex container won't apply to its flex items)
|
5103 |
+
var FlexBug = isIE ? {
|
5104 |
+
|
5105 |
+
data: {
|
5106 |
+
selMinHeight: false,
|
5107 |
+
forceHeight: false
|
5108 |
+
},
|
5109 |
+
|
5110 |
+
computed: {
|
5111 |
+
|
5112 |
+
elements: function(ref, $el) {
|
5113 |
+
var selMinHeight = ref.selMinHeight;
|
5114 |
+
|
5115 |
+
return selMinHeight ? $$(selMinHeight, $el) : [$el];
|
5116 |
+
}
|
5117 |
+
|
5118 |
+
},
|
5119 |
+
|
5120 |
+
update: [
|
5121 |
+
|
5122 |
+
{
|
5123 |
+
|
5124 |
+
read: function() {
|
5125 |
+
css(this.elements, 'height', '');
|
5126 |
+
},
|
5127 |
+
|
5128 |
+
order: -5,
|
5129 |
+
|
5130 |
+
events: ['load', 'resize']
|
5131 |
+
|
5132 |
+
},
|
5133 |
+
|
5134 |
+
{
|
5135 |
+
|
5136 |
+
write: function() {
|
5137 |
+
var this$1 = this;
|
5138 |
+
|
5139 |
+
this.elements.forEach(function (el) {
|
5140 |
+
var height$$1 = toFloat(css(el, 'minHeight'));
|
5141 |
+
if (height$$1 && (this$1.forceHeight || Math.round(height$$1) >= height(el))) {
|
5142 |
+
css(el, 'height', height$$1);
|
5143 |
+
}
|
5144 |
+
});
|
5145 |
+
},
|
5146 |
+
|
5147 |
+
order: 5,
|
5148 |
+
|
5149 |
+
events: ['load', 'resize']
|
5150 |
+
|
5151 |
+
}
|
5152 |
+
|
5153 |
+
]
|
5154 |
+
|
5155 |
+
} : {};
|
5156 |
+
|
5157 |
+
var HeightMatch = {
|
5158 |
+
|
5159 |
+
mixins: [FlexBug],
|
5160 |
+
|
5161 |
+
args: 'target',
|
5162 |
+
|
5163 |
+
props: {
|
5164 |
+
target: String,
|
5165 |
+
row: Boolean
|
5166 |
+
},
|
5167 |
+
|
5168 |
+
data: {
|
5169 |
+
target: '> *',
|
5170 |
+
row: true,
|
5171 |
+
forceHeight: true
|
5172 |
+
},
|
5173 |
+
|
5174 |
+
computed: {
|
5175 |
+
|
5176 |
+
elements: function(ref, $el) {
|
5177 |
+
var target = ref.target;
|
5178 |
+
|
5179 |
+
return $$(target, $el);
|
5180 |
+
}
|
5181 |
+
|
5182 |
+
},
|
5183 |
+
|
5184 |
+
update: {
|
5185 |
+
|
5186 |
+
read: function() {
|
5187 |
+
return {
|
5188 |
+
rows: (this.row ? getRows(this.elements) : [this.elements]).map(match)
|
5189 |
+
};
|
5190 |
+
},
|
5191 |
+
|
5192 |
+
write: function(ref) {
|
5193 |
+
var rows = ref.rows;
|
5194 |
+
|
5195 |
+
rows.forEach(function (ref) {
|
5196 |
+
var heights = ref.heights;
|
5197 |
+
var elements = ref.elements;
|
5198 |
+
|
5199 |
+
return elements.forEach(function (el, i) { return css(el, 'minHeight', heights[i]); }
|
5200 |
+
);
|
5201 |
+
}
|
5202 |
+
);
|
5203 |
+
},
|
5204 |
+
|
5205 |
+
events: ['load', 'resize']
|
5206 |
+
|
5207 |
+
}
|
5208 |
+
|
5209 |
+
};
|
5210 |
+
|
5211 |
+
function match(elements) {
|
5212 |
+
var assign$$1;
|
5213 |
+
|
5214 |
+
|
5215 |
+
if (elements.length < 2) {
|
5216 |
+
return {heights: [''], elements: elements};
|
5217 |
+
}
|
5218 |
+
|
5219 |
+
var ref = getHeights(elements);
|
5220 |
+
var heights = ref.heights;
|
5221 |
+
var max = ref.max;
|
5222 |
+
var hasMinHeight = elements.some(function (el) { return el.style.minHeight; });
|
5223 |
+
var hasShrunk = elements.some(function (el, i) { return !el.style.minHeight && heights[i] < max; });
|
5224 |
+
|
5225 |
+
if (hasMinHeight && hasShrunk) {
|
5226 |
+
css(elements, 'minHeight', '');
|
5227 |
+
((assign$$1 = getHeights(elements), heights = assign$$1.heights, max = assign$$1.max));
|
5228 |
+
}
|
5229 |
+
|
5230 |
+
heights = elements.map(function (el, i) { return heights[i] === max && toFloat(el.style.minHeight).toFixed(2) !== max.toFixed(2) ? '' : max; }
|
5231 |
+
);
|
5232 |
+
|
5233 |
+
return {heights: heights, elements: elements};
|
5234 |
+
}
|
5235 |
+
|
5236 |
+
function getHeights(elements) {
|
5237 |
+
var heights = elements.map(function (el) { return offset(el).height - boxModelAdjust('height', el, 'content-box'); });
|
5238 |
+
var max = Math.max.apply(null, heights);
|
5239 |
+
|
5240 |
+
return {heights: heights, max: max};
|
5241 |
+
}
|
5242 |
+
|
5243 |
+
var HeightViewport = {
|
5244 |
+
|
5245 |
+
mixins: [FlexBug],
|
5246 |
+
|
5247 |
+
props: {
|
5248 |
+
expand: Boolean,
|
5249 |
+
offsetTop: Boolean,
|
5250 |
+
offsetBottom: Boolean,
|
5251 |
+
minHeight: Number
|
5252 |
+
},
|
5253 |
+
|
5254 |
+
data: {
|
5255 |
+
expand: false,
|
5256 |
+
offsetTop: false,
|
5257 |
+
offsetBottom: false,
|
5258 |
+
minHeight: 0
|
5259 |
+
},
|
5260 |
+
|
5261 |
+
update: {
|
5262 |
+
|
5263 |
+
read: function() {
|
5264 |
+
|
5265 |
+
var minHeight = '';
|
5266 |
+
var box = boxModelAdjust('height', this.$el, 'content-box');
|
5267 |
+
|
5268 |
+
if (this.expand) {
|
5269 |
+
|
5270 |
+
minHeight = height(window) - (offsetHeight(document.documentElement) - offsetHeight(this.$el)) - box || '';
|
5271 |
+
|
5272 |
+
} else {
|
5273 |
+
|
5274 |
+
// on mobile devices (iOS and Android) window.innerHeight !== 100vh
|
5275 |
+
minHeight = 'calc(100vh';
|
5276 |
+
|
5277 |
+
if (this.offsetTop) {
|
5278 |
+
|
5279 |
+
var ref = offset(this.$el);
|
5280 |
+
var top = ref.top;
|
5281 |
+
minHeight += top < height(window) / 2 ? (" - " + top + "px") : '';
|
5282 |
+
|
5283 |
+
}
|
5284 |
+
|
5285 |
+
if (this.offsetBottom === true) {
|
5286 |
+
|
5287 |
+
minHeight += " - " + (offsetHeight(this.$el.nextElementSibling)) + "px";
|
5288 |
+
|
5289 |
+
} else if (isNumeric(this.offsetBottom)) {
|
5290 |
+
|
5291 |
+
minHeight += " - " + (this.offsetBottom) + "vh";
|
5292 |
+
|
5293 |
+
} else if (this.offsetBottom && endsWith(this.offsetBottom, 'px')) {
|
5294 |
+
|
5295 |
+
minHeight += " - " + (toFloat(this.offsetBottom)) + "px";
|
5296 |
+
|
5297 |
+
} else if (isString(this.offsetBottom)) {
|
5298 |
+
|
5299 |
+
minHeight += " - " + (offsetHeight(query(this.offsetBottom, this.$el))) + "px";
|
5300 |
+
|
5301 |
+
}
|
5302 |
+
|
5303 |
+
minHeight += (box ? (" - " + box + "px") : '') + ")";
|
5304 |
+
|
5305 |
+
}
|
5306 |
+
|
5307 |
+
return {minHeight: minHeight};
|
5308 |
+
},
|
5309 |
+
|
5310 |
+
write: function(ref) {
|
5311 |
+
var minHeight = ref.minHeight;
|
5312 |
+
|
5313 |
+
|
5314 |
+
css(this.$el, {minHeight: minHeight});
|
5315 |
+
|
5316 |
+
if (this.minHeight && toFloat(css(this.$el, 'minHeight')) < this.minHeight) {
|
5317 |
+
css(this.$el, 'minHeight', this.minHeight);
|
5318 |
+
}
|
5319 |
+
|
5320 |
+
},
|
5321 |
+
|
5322 |
+
events: ['load', 'resize']
|
5323 |
+
|
5324 |
+
}
|
5325 |
+
|
5326 |
+
};
|
5327 |
+
|
5328 |
+
function offsetHeight(el) {
|
5329 |
+
return el && el.offsetHeight || 0;
|
5330 |
+
}
|
5331 |
+
|
5332 |
+
var svgs = {};
|
5333 |
+
|
5334 |
+
var SVG = {
|
5335 |
+
|
5336 |
+
props: {
|
5337 |
+
id: String,
|
5338 |
+
icon: String,
|
5339 |
+
src: String,
|
5340 |
+
style: String,
|
5341 |
+
width: Number,
|
5342 |
+
height: Number,
|
5343 |
+
ratio: Number,
|
5344 |
+
'class': String
|
5345 |
+
},
|
5346 |
+
|
5347 |
+
data: {
|
5348 |
+
ratio: 1,
|
5349 |
+
id: false,
|
5350 |
+
exclude: ['ratio', 'src', 'icon'],
|
5351 |
+
'class': ''
|
5352 |
+
},
|
5353 |
+
|
5354 |
+
connected: function() {
|
5355 |
+
var this$1 = this;
|
5356 |
+
var assign$$1;
|
5357 |
+
|
5358 |
+
|
5359 |
+
this.class += ' uk-svg';
|
5360 |
+
|
5361 |
+
if (!this.icon && includes(this.src, '#')) {
|
5362 |
+
|
5363 |
+
var parts = this.src.split('#');
|
5364 |
+
|
5365 |
+
if (parts.length > 1) {
|
5366 |
+
(assign$$1 = parts, this.src = assign$$1[0], this.icon = assign$$1[1]);
|
5367 |
+
}
|
5368 |
+
}
|
5369 |
+
|
5370 |
+
this.svg = this.getSvg().then(function (svg) {
|
5371 |
+
|
5372 |
+
var el;
|
5373 |
+
|
5374 |
+
if (isString(svg)) {
|
5375 |
+
|
5376 |
+
if (this$1.icon && includes(svg, '<symbol')) {
|
5377 |
+
svg = parseSymbols(svg, this$1.icon) || svg;
|
5378 |
+
}
|
5379 |
+
|
5380 |
+
el = $(svg.substr(svg.indexOf('<svg')));
|
5381 |
+
|
5382 |
+
} else {
|
5383 |
+
el = svg.cloneNode(true);
|
5384 |
+
}
|
5385 |
+
|
5386 |
+
if (!el) {
|
5387 |
+
return Promise.reject('SVG not found.');
|
5388 |
+
}
|
5389 |
+
|
5390 |
+
var dimensions = attr(el, 'viewBox');
|
5391 |
+
|
5392 |
+
if (dimensions) {
|
5393 |
+
dimensions = dimensions.split(' ');
|
5394 |
+
this$1.width = this$1.$props.width || dimensions[2];
|
5395 |
+
this$1.height = this$1.$props.height || dimensions[3];
|
5396 |
+
}
|
5397 |
+
|
5398 |
+
this$1.width *= this$1.ratio;
|
5399 |
+
this$1.height *= this$1.ratio;
|
5400 |
+
|
5401 |
+
for (var prop in this$1.$options.props) {
|
5402 |
+
if (this$1[prop] && !includes(this$1.exclude, prop)) {
|
5403 |
+
attr(el, prop, this$1[prop]);
|
5404 |
+
}
|
5405 |
+
}
|
5406 |
+
|
5407 |
+
if (!this$1.id) {
|
5408 |
+
removeAttr(el, 'id');
|
5409 |
+
}
|
5410 |
+
|
5411 |
+
if (this$1.width && !this$1.height) {
|
5412 |
+
removeAttr(el, 'height');
|
5413 |
+
}
|
5414 |
+
|
5415 |
+
if (this$1.height && !this$1.width) {
|
5416 |
+
removeAttr(el, 'width');
|
5417 |
+
}
|
5418 |
+
|
5419 |
+
var root = this$1.$el;
|
5420 |
+
if (isVoidElement(root) || root.tagName === 'CANVAS') {
|
5421 |
+
|
5422 |
+
attr(root, {hidden: true, id: null});
|
5423 |
+
|
5424 |
+
var next = root.nextElementSibling;
|
5425 |
+
if (next && el.isEqualNode(next)) {
|
5426 |
+
el = next;
|
5427 |
+
} else {
|
5428 |
+
after(root, el);
|
5429 |
+
}
|
5430 |
+
|
5431 |
+
} else {
|
5432 |
+
|
5433 |
+
var last = root.lastElementChild;
|
5434 |
+
if (last && el.isEqualNode(last)) {
|
5435 |
+
el = last;
|
5436 |
+
} else {
|
5437 |
+
append(root, el);
|
5438 |
+
}
|
5439 |
+
|
5440 |
+
}
|
5441 |
+
|
5442 |
+
this$1.svgEl = el;
|
5443 |
+
|
5444 |
+
return el;
|
5445 |
+
|
5446 |
+
}, noop);
|
5447 |
+
|
5448 |
+
},
|
5449 |
+
|
5450 |
+
disconnected: function() {
|
5451 |
+
var this$1 = this;
|
5452 |
+
|
5453 |
+
|
5454 |
+
if (isVoidElement(this.$el)) {
|
5455 |
+
attr(this.$el, {hidden: null, id: this.id || null});
|
5456 |
+
}
|
5457 |
+
|
5458 |
+
if (this.svg) {
|
5459 |
+
this.svg.then(function (svg) { return (!this$1._connected || svg !== this$1.svgEl) && remove(svg); }, noop);
|
5460 |
+
}
|
5461 |
+
|
5462 |
+
this.svg = this.svgEl = null;
|
5463 |
+
|
5464 |
+
},
|
5465 |
+
|
5466 |
+
methods: {
|
5467 |
+
|
5468 |
+
getSvg: function() {
|
5469 |
+
var this$1 = this;
|
5470 |
+
|
5471 |
+
|
5472 |
+
if (!this.src) {
|
5473 |
+
return Promise.reject();
|
5474 |
+
}
|
5475 |
+
|
5476 |
+
if (svgs[this.src]) {
|
5477 |
+
return svgs[this.src];
|
5478 |
+
}
|
5479 |
+
|
5480 |
+
svgs[this.src] = new Promise(function (resolve, reject) {
|
5481 |
+
|
5482 |
+
if (startsWith(this$1.src, 'data:')) {
|
5483 |
+
resolve(decodeURIComponent(this$1.src.split(',')[1]));
|
5484 |
+
} else {
|
5485 |
+
|
5486 |
+
ajax(this$1.src).then(
|
5487 |
+
function (xhr) { return resolve(xhr.response); },
|
5488 |
+
function () { return reject('SVG not found.'); }
|
5489 |
+
);
|
5490 |
+
|
5491 |
+
}
|
5492 |
+
|
5493 |
+
});
|
5494 |
+
|
5495 |
+
return svgs[this.src];
|
5496 |
+
|
5497 |
+
}
|
5498 |
+
|
5499 |
+
}
|
5500 |
+
|
5501 |
+
};
|
5502 |
+
|
5503 |
+
var symbolRe = /<symbol(.*?id=(['"])(.*?)\2[^]*?<\/)symbol>/g;
|
5504 |
+
var symbols = {};
|
5505 |
+
|
5506 |
+
function parseSymbols(svg, icon) {
|
5507 |
+
|
5508 |
+
if (!symbols[svg]) {
|
5509 |
+
|
5510 |
+
symbols[svg] = {};
|
5511 |
+
|
5512 |
+
var match;
|
5513 |
+
while ((match = symbolRe.exec(svg))) {
|
5514 |
+
symbols[svg][match[3]] = "<svg xmlns=\"http://www.w3.org/2000/svg\"" + (match[1]) + "svg>";
|
5515 |
+
}
|
5516 |
+
|
5517 |
+
symbolRe.lastIndex = 0;
|
5518 |
+
|
5519 |
+
}
|
5520 |
+
|
5521 |
+
return symbols[svg][icon];
|
5522 |
+
}
|
5523 |
+
|
5524 |
+
var closeIcon = "<svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" xmlns=\"http://www.w3.org/2000/svg\"><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" x1=\"1\" y1=\"1\" x2=\"13\" y2=\"13\"/><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" x1=\"13\" y1=\"1\" x2=\"1\" y2=\"13\"/></svg>";
|
5525 |
+
|
5526 |
+
var closeLarge = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.4\" x1=\"1\" y1=\"1\" x2=\"19\" y2=\"19\"/><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.4\" x1=\"19\" y1=\"1\" x2=\"1\" y2=\"19\"/></svg>";
|
5527 |
+
|
5528 |
+
var marker = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"9\" y=\"4\" width=\"1\" height=\"11\"/><rect x=\"4\" y=\"9\" width=\"11\" height=\"1\"/></svg>";
|
5529 |
+
|
5530 |
+
var navbarToggleIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><rect y=\"9\" width=\"20\" height=\"2\"/><rect y=\"3\" width=\"20\" height=\"2\"/><rect y=\"15\" width=\"20\" height=\"2\"/></svg>";
|
5531 |
+
|
5532 |
+
var overlayIcon = "<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"19\" y=\"0\" width=\"1\" height=\"40\"/><rect x=\"0\" y=\"19\" width=\"40\" height=\"1\"/></svg>";
|
5533 |
+
|
5534 |
+
var paginationNext = "<svg width=\"7\" height=\"12\" viewBox=\"0 0 7 12\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.2\" points=\"1 1 6 6 1 11\"/></svg>";
|
5535 |
+
|
5536 |
+
var paginationPrevious = "<svg width=\"7\" height=\"12\" viewBox=\"0 0 7 12\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.2\" points=\"6 1 1 6 6 11\"/></svg>";
|
5537 |
+
|
5538 |
+
var searchIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><circle fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" cx=\"9\" cy=\"9\" r=\"7\"/><path fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" d=\"M14,14 L18,18 L14,14 Z\"/></svg>";
|
5539 |
+
|
5540 |
+
var searchLarge = "<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><circle fill=\"none\" stroke=\"#000\" stroke-width=\"1.8\" cx=\"17.5\" cy=\"17.5\" r=\"16.5\"/><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.8\" x1=\"38\" y1=\"39\" x2=\"29\" y2=\"30\"/></svg>";
|
5541 |
+
|
5542 |
+
var searchNavbar = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><circle fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" cx=\"10.5\" cy=\"10.5\" r=\"9.5\"/><line fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" x1=\"23\" y1=\"23\" x2=\"17\" y2=\"17\"/></svg>";
|
5543 |
+
|
5544 |
+
var slidenavNext = "<svg width=\"14px\" height=\"24px\" viewBox=\"0 0 14 24\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.4\" points=\"1.225,23 12.775,12 1.225,1 \"/></svg>";
|
5545 |
+
|
5546 |
+
var slidenavNextLarge = "<svg width=\"25px\" height=\"40px\" viewBox=\"0 0 25 40\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"2\" points=\"4.002,38.547 22.527,20.024 4,1.5 \"/></svg>";
|
5547 |
+
|
5548 |
+
var slidenavPrevious = "<svg width=\"14px\" height=\"24px\" viewBox=\"0 0 14 24\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.4\" points=\"12.775,1 1.225,12 12.775,23 \"/></svg>";
|
5549 |
+
|
5550 |
+
var slidenavPreviousLarge = "<svg width=\"25px\" height=\"40px\" viewBox=\"0 0 25 40\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"2\" points=\"20.527,1.5 2,20.024 20.525,38.547 \"/></svg>";
|
5551 |
+
|
5552 |
+
var spinner = "<svg width=\"30\" height=\"30\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\"><circle fill=\"none\" stroke=\"#000\" cx=\"15\" cy=\"15\" r=\"14\"/></svg>";
|
5553 |
+
|
5554 |
+
var totop = "<svg width=\"18\" height=\"10\" viewBox=\"0 0 18 10\" xmlns=\"http://www.w3.org/2000/svg\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.2\" points=\"1 9 9 1 17 9 \"/></svg>";
|
5555 |
+
|
5556 |
+
var parsed = {};
|
5557 |
+
var icons = {
|
5558 |
+
spinner: spinner,
|
5559 |
+
totop: totop,
|
5560 |
+
marker: marker,
|
5561 |
+
'close-icon': closeIcon,
|
5562 |
+
'close-large': closeLarge,
|
5563 |
+
'navbar-toggle-icon': navbarToggleIcon,
|
5564 |
+
'overlay-icon': overlayIcon,
|
5565 |
+
'pagination-next': paginationNext,
|
5566 |
+
'pagination-previous': paginationPrevious,
|
5567 |
+
'search-icon': searchIcon,
|
5568 |
+
'search-large': searchLarge,
|
5569 |
+
'search-navbar': searchNavbar,
|
5570 |
+
'slidenav-next': slidenavNext,
|
5571 |
+
'slidenav-next-large': slidenavNextLarge,
|
5572 |
+
'slidenav-previous': slidenavPrevious,
|
5573 |
+
'slidenav-previous-large': slidenavPreviousLarge
|
5574 |
+
};
|
5575 |
+
|
5576 |
+
var Icon = {
|
5577 |
+
|
5578 |
+
install: install,
|
5579 |
+
|
5580 |
+
attrs: ['icon', 'ratio'],
|
5581 |
+
|
5582 |
+
mixins: [Class, SVG],
|
5583 |
+
|
5584 |
+
args: 'icon',
|
5585 |
+
|
5586 |
+
props: ['icon'],
|
5587 |
+
|
5588 |
+
data: {exclude: ['id', 'style', 'class', 'src', 'icon', 'ratio']},
|
5589 |
+
|
5590 |
+
isIcon: true,
|
5591 |
+
|
5592 |
+
connected: function() {
|
5593 |
+
addClass(this.$el, 'uk-icon');
|
5594 |
+
},
|
5595 |
+
|
5596 |
+
methods: {
|
5597 |
+
|
5598 |
+
getSvg: function() {
|
5599 |
+
|
5600 |
+
var icon = getIcon(applyRtl(this.icon));
|
5601 |
+
|
5602 |
+
if (!icon) {
|
5603 |
+
return Promise.reject('Icon not found.');
|
5604 |
+
}
|
5605 |
+
|
5606 |
+
return Promise.resolve(icon);
|
5607 |
+
}
|
5608 |
+
|
5609 |
+
}
|
5610 |
+
|
5611 |
+
};
|
5612 |
+
|
5613 |
+
var IconComponent = {
|
5614 |
+
|
5615 |
+
extends: Icon,
|
5616 |
+
|
5617 |
+
data: function (vm) { return ({
|
5618 |
+
icon: hyphenate(vm.constructor.options.name)
|
5619 |
+
}); }
|
5620 |
+
|
5621 |
+
};
|
5622 |
+
|
5623 |
+
var Slidenav = {
|
5624 |
+
|
5625 |
+
extends: IconComponent,
|
5626 |
+
|
5627 |
+
connected: function() {
|
5628 |
+
addClass(this.$el, 'uk-slidenav');
|
5629 |
+
},
|
5630 |
+
|
5631 |
+
computed: {
|
5632 |
+
|
5633 |
+
icon: function(ref, $el) {
|
5634 |
+
var icon = ref.icon;
|
5635 |
+
|
5636 |
+
return hasClass($el, 'uk-slidenav-large')
|
5637 |
+
? (icon + "-large")
|
5638 |
+
: icon;
|
5639 |
+
}
|
5640 |
+
|
5641 |
+
}
|
5642 |
+
|
5643 |
+
};
|
5644 |
+
|
5645 |
+
var Search = {
|
5646 |
+
|
5647 |
+
extends: IconComponent,
|
5648 |
+
|
5649 |
+
computed: {
|
5650 |
+
|
5651 |
+
icon: function(ref, $el) {
|
5652 |
+
var icon = ref.icon;
|
5653 |
+
|
5654 |
+
return hasClass($el, 'uk-search-icon') && parents($el, '.uk-search-large').length
|
5655 |
+
? 'search-large'
|
5656 |
+
: parents($el, '.uk-search-navbar').length
|
5657 |
+
? 'search-navbar'
|
5658 |
+
: icon;
|
5659 |
+
}
|
5660 |
+
|
5661 |
+
}
|
5662 |
+
|
5663 |
+
};
|
5664 |
+
|
5665 |
+
var Close = {
|
5666 |
+
|
5667 |
+
extends: IconComponent,
|
5668 |
+
|
5669 |
+
computed: {
|
5670 |
+
|
5671 |
+
icon: function() {
|
5672 |
+
return ("close-" + (hasClass(this.$el, 'uk-close-large') ? 'large' : 'icon'));
|
5673 |
+
}
|
5674 |
+
|
5675 |
+
}
|
5676 |
+
|
5677 |
+
};
|
5678 |
+
|
5679 |
+
var Spinner = {
|
5680 |
+
|
5681 |
+
extends: IconComponent,
|
5682 |
+
|
5683 |
+
connected: function() {
|
5684 |
+
var this$1 = this;
|
5685 |
+
|
5686 |
+
this.svg.then(function (svg) { return this$1.ratio !== 1 && css($('circle', svg), 'strokeWidth', 1 / this$1.ratio); }, noop);
|
5687 |
+
}
|
5688 |
+
|
5689 |
+
};
|
5690 |
+
|
5691 |
+
function install(UIkit) {
|
5692 |
+
UIkit.icon.add = function (name, svg) {
|
5693 |
+
var obj;
|
5694 |
+
|
5695 |
+
|
5696 |
+
var added = isString(name) ? (( obj = {}, obj[name] = svg, obj )) : name;
|
5697 |
+
each(added, function (svg, name) {
|
5698 |
+
icons[name] = svg;
|
5699 |
+
delete parsed[name];
|
5700 |
+
});
|
5701 |
+
|
5702 |
+
if (UIkit._initialized) {
|
5703 |
+
apply(document.body, function (el) { return each(UIkit.getComponents(el), function (cmp) { return cmp.$options.isIcon && cmp.icon in added && cmp.$reset(); }
|
5704 |
+
); }
|
5705 |
+
);
|
5706 |
+
}
|
5707 |
+
};
|
5708 |
+
}
|
5709 |
+
|
5710 |
+
function getIcon(icon) {
|
5711 |
+
|
5712 |
+
if (!icons[icon]) {
|
5713 |
+
return null;
|
5714 |
+
}
|
5715 |
+
|
5716 |
+
if (!parsed[icon]) {
|
5717 |
+
parsed[icon] = $(icons[icon].trim());
|
5718 |
+
}
|
5719 |
+
|
5720 |
+
return parsed[icon];
|
5721 |
+
}
|
5722 |
+
|
5723 |
+
function applyRtl(icon) {
|
5724 |
+
return isRtl ? swap(swap(icon, 'left', 'right'), 'previous', 'next') : icon;
|
5725 |
+
}
|
5726 |
+
|
5727 |
+
var Img = {
|
5728 |
+
|
5729 |
+
props: {
|
5730 |
+
dataSrc: String,
|
5731 |
+
dataSrcset: Boolean,
|
5732 |
+
sizes: String,
|
5733 |
+
width: Number,
|
5734 |
+
height: Number,
|
5735 |
+
offsetTop: String,
|
5736 |
+
offsetLeft: String,
|
5737 |
+
target: String
|
5738 |
+
},
|
5739 |
+
|
5740 |
+
data: {
|
5741 |
+
dataSrc: '',
|
5742 |
+
dataSrcset: false,
|
5743 |
+
sizes: false,
|
5744 |
+
width: false,
|
5745 |
+
height: false,
|
5746 |
+
offsetTop: '50vh',
|
5747 |
+
offsetLeft: 0,
|
5748 |
+
target: false
|
5749 |
+
},
|
5750 |
+
|
5751 |
+
computed: {
|
5752 |
+
|
5753 |
+
cacheKey: function(ref) {
|
5754 |
+
var dataSrc = ref.dataSrc;
|
5755 |
+
|
5756 |
+
return ((this.$name) + "." + dataSrc);
|
5757 |
+
},
|
5758 |
+
|
5759 |
+
width: function(ref) {
|
5760 |
+
var width$$1 = ref.width;
|
5761 |
+
var dataWidth = ref.dataWidth;
|
5762 |
+
|
5763 |
+
return width$$1 || dataWidth;
|
5764 |
+
},
|
5765 |
+
|
5766 |
+
height: function(ref) {
|
5767 |
+
var height$$1 = ref.height;
|
5768 |
+
var dataHeight = ref.dataHeight;
|
5769 |
+
|
5770 |
+
return height$$1 || dataHeight;
|
5771 |
+
},
|
5772 |
+
|
5773 |
+
sizes: function(ref) {
|
5774 |
+
var sizes = ref.sizes;
|
5775 |
+
var dataSizes = ref.dataSizes;
|
5776 |
+
|
5777 |
+
return sizes || dataSizes;
|
5778 |
+
},
|
5779 |
+
|
5780 |
+
isImg: function(_, $el) {
|
5781 |
+
return isImg($el);
|
5782 |
+
},
|
5783 |
+
|
5784 |
+
target: function(ref) {
|
5785 |
+
var target = ref.target;
|
5786 |
+
|
5787 |
+
return [this.$el].concat(queryAll(target, this.$el));
|
5788 |
+
},
|
5789 |
+
|
5790 |
+
offsetTop: function(ref) {
|
5791 |
+
var offsetTop = ref.offsetTop;
|
5792 |
+
|
5793 |
+
return toPx(offsetTop, 'height');
|
5794 |
+
},
|
5795 |
+
|
5796 |
+
offsetLeft: function(ref) {
|
5797 |
+
var offsetLeft = ref.offsetLeft;
|
5798 |
+
|
5799 |
+
return toPx(offsetLeft, 'width');
|
5800 |
+
}
|
5801 |
+
|
5802 |
+
},
|
5803 |
+
|
5804 |
+
connected: function() {
|
5805 |
+
|
5806 |
+
if (storage[this.cacheKey]) {
|
5807 |
+
setSrcAttrs(this.$el, storage[this.cacheKey] || this.dataSrc, this.dataSrcset, this.sizes);
|
5808 |
+
} else if (this.isImg && this.width && this.height) {
|
5809 |
+
setSrcAttrs(this.$el, getPlaceholderImage(this.width, this.height, this.sizes));
|
5810 |
+
}
|
5811 |
+
|
5812 |
+
},
|
5813 |
+
|
5814 |
+
update: {
|
5815 |
+
|
5816 |
+
read: function(ref) {
|
5817 |
+
var this$1 = this;
|
5818 |
+
var update = ref.update;
|
5819 |
+
var image = ref.image;
|
5820 |
+
|
5821 |
+
|
5822 |
+
if (!update) {
|
5823 |
+
return;
|
5824 |
+
}
|
5825 |
+
|
5826 |
+
if (image || !this.target.some(function (el) { return isInView(el, this$1.offsetTop, this$1.offsetLeft, true); })) {
|
5827 |
+
|
5828 |
+
if (!this.isImg && image) {
|
5829 |
+
image.then(function (img) { return img && setSrcAttrs(this$1.$el, currentSrc(img)); });
|
5830 |
+
}
|
5831 |
+
|
5832 |
+
return;
|
5833 |
+
}
|
5834 |
+
|
5835 |
+
return {
|
5836 |
+
image: getImage(this.dataSrc, this.dataSrcset, this.sizes).then(function (img) {
|
5837 |
+
|
5838 |
+
setSrcAttrs(this$1.$el, currentSrc(img), img.srcset, img.sizes);
|
5839 |
+
storage[this$1.cacheKey] = currentSrc(img);
|
5840 |
+
return img;
|
5841 |
+
|
5842 |
+
}, noop)
|
5843 |
+
};
|
5844 |
+
|
5845 |
+
},
|
5846 |
+
|
5847 |
+
write: function(data$$1) {
|
5848 |
+
|
5849 |
+
// Give placeholder images time to apply their dimensions
|
5850 |
+
if (!data$$1.update) {
|
5851 |
+
this.$emit();
|
5852 |
+
return data$$1.update = true;
|
5853 |
+
}
|
5854 |
+
|
5855 |
+
},
|
5856 |
+
|
5857 |
+
events: ['scroll', 'load', 'resize']
|
5858 |
+
|
5859 |
+
}
|
5860 |
+
|
5861 |
+
};
|
5862 |
+
|
5863 |
+
function setSrcAttrs(el, src, srcset, sizes) {
|
5864 |
+
|
5865 |
+
if (isImg(el)) {
|
5866 |
+
sizes && (el.sizes = sizes);
|
5867 |
+
srcset && (el.srcset = srcset);
|
5868 |
+
src && (el.src = src);
|
5869 |
+
} else if (src) {
|
5870 |
+
|
5871 |
+
var change = !includes(el.style.backgroundImage, src);
|
5872 |
+
css(el, 'backgroundImage', ("url(" + src + ")"));
|
5873 |
+
if (change) {
|
5874 |
+
trigger(el, createEvent('load', false));
|
5875 |
+
}
|
5876 |
+
|
5877 |
+
}
|
5878 |
+
|
5879 |
+
}
|
5880 |
+
|
5881 |
+
var sizesRe = /\s*(.*?)\s*(\w+|calc\(.*?\))\s*(?:,|$)/g;
|
5882 |
+
function getPlaceholderImage(width$$1, height$$1, sizes) {
|
5883 |
+
var assign$$1;
|
5884 |
+
|
5885 |
+
|
5886 |
+
if (sizes) {
|
5887 |
+
var matches$$1;
|
5888 |
+
|
5889 |
+
while ((matches$$1 = sizesRe.exec(sizes))) {
|
5890 |
+
if (!matches$$1[1] || window.matchMedia(matches$$1[1]).matches) {
|
5891 |
+
matches$$1 = evaluateSize(matches$$1[2]);
|
5892 |
+
break;
|
5893 |
+
}
|
5894 |
+
}
|
5895 |
+
|
5896 |
+
sizesRe.lastIndex = 0;
|
5897 |
+
|
5898 |
+
((assign$$1 = Dimensions.ratio({width: width$$1, height: height$$1}, 'width', toPx(matches$$1 || '100vw')), width$$1 = assign$$1.width, height$$1 = assign$$1.height));
|
5899 |
+
|
5900 |
+
}
|
5901 |
+
|
5902 |
+
return ("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"" + width$$1 + "\" height=\"" + height$$1 + "\"></svg>");
|
5903 |
+
}
|
5904 |
+
|
5905 |
+
var sizeRe = /\d+(?:\w+|%)/g;
|
5906 |
+
var additionRe = /[+-]?(\d+)/g;
|
5907 |
+
function evaluateSize(size) {
|
5908 |
+
return startsWith(size, 'calc')
|
5909 |
+
? size
|
5910 |
+
.substring(5, size.length - 1)
|
5911 |
+
.replace(sizeRe, function (size) { return toPx(size); })
|
5912 |
+
.replace(/ /g, '')
|
5913 |
+
.match(additionRe)
|
5914 |
+
.reduce(function (a, b) { return a + +b; }, 0)
|
5915 |
+
: size;
|
5916 |
+
}
|
5917 |
+
|
5918 |
+
function toPx(value, property, element) {
|
5919 |
+
if ( property === void 0 ) property = 'width';
|
5920 |
+
if ( element === void 0 ) element = window;
|
5921 |
+
|
5922 |
+
return isNumeric(value)
|
5923 |
+
? +value
|
5924 |
+
: endsWith(value, 'vw')
|
5925 |
+
? percent(element, 'width', value)
|
5926 |
+
: endsWith(value, 'vh')
|
5927 |
+
? percent(element, 'height', value)
|
5928 |
+
: endsWith(value, '%')
|
5929 |
+
? percent(element, property, value)
|
5930 |
+
: toFloat(value);
|
5931 |
+
}
|
5932 |
+
|
5933 |
+
var dimensions = {height: height, width: width};
|
5934 |
+
function percent(element, property, value) {
|
5935 |
+
return dimensions[property](element) * toFloat(value) / 100;
|
5936 |
+
}
|
5937 |
+
|
5938 |
+
function isImg(el) {
|
5939 |
+
return el.tagName === 'IMG';
|
5940 |
+
}
|
5941 |
+
|
5942 |
+
function currentSrc(el) {
|
5943 |
+
return el.currentSrc || el.src;
|
5944 |
+
}
|
5945 |
+
|
5946 |
+
var key = '__test__';
|
5947 |
+
var storage;
|
5948 |
+
|
5949 |
+
// workaround for Safari's private browsing mode and accessing sessionStorage in Blink
|
5950 |
+
try {
|
5951 |
+
storage = window.sessionStorage || {};
|
5952 |
+
storage[key] = 1;
|
5953 |
+
delete storage[key];
|
5954 |
+
} catch (e) {
|
5955 |
+
storage = {};
|
5956 |
+
}
|
5957 |
+
|
5958 |
+
var Media = {
|
5959 |
+
|
5960 |
+
props: {
|
5961 |
+
media: Boolean
|
5962 |
+
},
|
5963 |
+
|
5964 |
+
data: {
|
5965 |
+
media: false
|
5966 |
+
},
|
5967 |
+
|
5968 |
+
computed: {
|
5969 |
+
|
5970 |
+
matchMedia: function() {
|
5971 |
+
var media = toMedia(this.media);
|
5972 |
+
return !media || window.matchMedia(media).matches;
|
5973 |
+
}
|
5974 |
+
|
5975 |
+
}
|
5976 |
+
|
5977 |
+
};
|
5978 |
+
|
5979 |
+
function toMedia(value) {
|
5980 |
+
|
5981 |
+
if (isString(value)) {
|
5982 |
+
if (value[0] === '@') {
|
5983 |
+
var name = "breakpoint-" + (value.substr(1));
|
5984 |
+
value = toFloat(getCssVar(name));
|
5985 |
+
} else if (isNaN(value)) {
|
5986 |
+
return value;
|
5987 |
+
}
|
5988 |
+
}
|
5989 |
+
|
5990 |
+
return value && !isNaN(value) ? ("(min-width: " + value + "px)") : false;
|
5991 |
+
}
|
5992 |
+
|
5993 |
+
var Leader = {
|
5994 |
+
|
5995 |
+
mixins: [Class, Media],
|
5996 |
+
|
5997 |
+
props: {
|
5998 |
+
fill: String
|
5999 |
+
},
|
6000 |
+
|
6001 |
+
data: {
|
6002 |
+
fill: '',
|
6003 |
+
clsWrapper: 'uk-leader-fill',
|
6004 |
+
clsHide: 'uk-leader-hide',
|
6005 |
+
attrFill: 'data-fill'
|
6006 |
+
},
|
6007 |
+
|
6008 |
+
computed: {
|
6009 |
+
|
6010 |
+
fill: function(ref) {
|
6011 |
+
var fill = ref.fill;
|
6012 |
+
|
6013 |
+
return fill || getCssVar('leader-fill-content');
|
6014 |
+
}
|
6015 |
+
|
6016 |
+
},
|
6017 |
+
|
6018 |
+
connected: function() {
|
6019 |
+
var assign$$1;
|
6020 |
+
|
6021 |
+
(assign$$1 = wrapInner(this.$el, ("<span class=\"" + (this.clsWrapper) + "\">")), this.wrapper = assign$$1[0]);
|
6022 |
+
},
|
6023 |
+
|
6024 |
+
disconnected: function() {
|
6025 |
+
unwrap(this.wrapper.childNodes);
|
6026 |
+
},
|
6027 |
+
|
6028 |
+
update: {
|
6029 |
+
|
6030 |
+
read: function(ref) {
|
6031 |
+
var changed = ref.changed;
|
6032 |
+
var width$$1 = ref.width;
|
6033 |
+
|
6034 |
+
|
6035 |
+
var prev = width$$1;
|
6036 |
+
|
6037 |
+
width$$1 = Math.floor(this.$el.offsetWidth / 2);
|
6038 |
+
|
6039 |
+
return {
|
6040 |
+
width: width$$1,
|
6041 |
+
changed: changed || prev !== width$$1,
|
6042 |
+
hide: !this.matchMedia
|
6043 |
+
};
|
6044 |
+
},
|
6045 |
+
|
6046 |
+
write: function(data$$1) {
|
6047 |
+
|
6048 |
+
toggleClass(this.wrapper, this.clsHide, data$$1.hide);
|
6049 |
+
|
6050 |
+
if (data$$1.changed) {
|
6051 |
+
data$$1.changed = false;
|
6052 |
+
attr(this.wrapper, this.attrFill, new Array(data$$1.width).join(this.fill));
|
6053 |
+
}
|
6054 |
+
|
6055 |
+
},
|
6056 |
+
|
6057 |
+
events: ['load', 'resize']
|
6058 |
+
|
6059 |
+
}
|
6060 |
+
|
6061 |
+
};
|
6062 |
+
|
6063 |
+
var Container = {
|
6064 |
+
|
6065 |
+
props: {
|
6066 |
+
container: Boolean
|
6067 |
+
},
|
6068 |
+
|
6069 |
+
data: {
|
6070 |
+
container: true
|
6071 |
+
},
|
6072 |
+
|
6073 |
+
computed: {
|
6074 |
+
|
6075 |
+
container: function(ref) {
|
6076 |
+
var container = ref.container;
|
6077 |
+
|
6078 |
+
return container === true && this.$container || container && $(container);
|
6079 |
+
}
|
6080 |
+
|
6081 |
+
}
|
6082 |
+
|
6083 |
+
};
|
6084 |
+
|
6085 |
+
var active$1;
|
6086 |
+
|
6087 |
+
var Modal = {
|
6088 |
+
|
6089 |
+
mixins: [Class, Container, Togglable],
|
6090 |
+
|
6091 |
+
props: {
|
6092 |
+
selPanel: String,
|
6093 |
+
selClose: String,
|
6094 |
+
escClose: Boolean,
|
6095 |
+
bgClose: Boolean,
|
6096 |
+
stack: Boolean
|
6097 |
+
},
|
6098 |
+
|
6099 |
+
data: {
|
6100 |
+
cls: 'uk-open',
|
6101 |
+
escClose: true,
|
6102 |
+
bgClose: true,
|
6103 |
+
overlay: true,
|
6104 |
+
stack: false
|
6105 |
+
},
|
6106 |
+
|
6107 |
+
computed: {
|
6108 |
+
|
6109 |
+
panel: function(ref, $el) {
|
6110 |
+
var selPanel = ref.selPanel;
|
6111 |
+
|
6112 |
+
return $(selPanel, $el);
|
6113 |
+
},
|
6114 |
+
|
6115 |
+
transitionElement: function() {
|
6116 |
+
return this.panel;
|
6117 |
+
},
|
6118 |
+
|
6119 |
+
bgClose: function(ref) {
|
6120 |
+
var bgClose = ref.bgClose;
|
6121 |
+
|
6122 |
+
return bgClose && this.panel;
|
6123 |
+
}
|
6124 |
+
|
6125 |
+
},
|
6126 |
+
|
6127 |
+
beforeDisconnect: function() {
|
6128 |
+
if (this.isToggled()) {
|
6129 |
+
this.toggleNow(this.$el, false);
|
6130 |
+
}
|
6131 |
+
},
|
6132 |
+
|
6133 |
+
events: [
|
6134 |
+
|
6135 |
+
{
|
6136 |
+
|
6137 |
+
name: 'click',
|
6138 |
+
|
6139 |
+
delegate: function() {
|
6140 |
+
return this.selClose;
|
6141 |
+
},
|
6142 |
+
|
6143 |
+
handler: function(e) {
|
6144 |
+
e.preventDefault();
|
6145 |
+
this.hide();
|
6146 |
+
}
|
6147 |
+
|
6148 |
+
},
|
6149 |
+
|
6150 |
+
{
|
6151 |
+
|
6152 |
+
name: 'toggle',
|
6153 |
+
|
6154 |
+
self: true,
|
6155 |
+
|
6156 |
+
handler: function(e) {
|
6157 |
+
|
6158 |
+
if (e.defaultPrevented) {
|
6159 |
+
return;
|
6160 |
+
}
|
6161 |
+
|
6162 |
+
e.preventDefault();
|
6163 |
+
this.toggle();
|
6164 |
+
}
|
6165 |
+
|
6166 |
+
},
|
6167 |
+
|
6168 |
+
{
|
6169 |
+
name: 'beforeshow',
|
6170 |
+
|
6171 |
+
self: true,
|
6172 |
+
|
6173 |
+
handler: function(e) {
|
6174 |
+
|
6175 |
+
var prev = active$1 && active$1 !== this && active$1;
|
6176 |
+
|
6177 |
+
active$1 = this;
|
6178 |
+
|
6179 |
+
if (prev) {
|
6180 |
+
if (this.stack) {
|
6181 |
+
this.prev = prev;
|
6182 |
+
} else {
|
6183 |
+
prev.hide().then(this.show);
|
6184 |
+
e.preventDefault();
|
6185 |
+
return;
|
6186 |
+
}
|
6187 |
+
}
|
6188 |
+
|
6189 |
+
registerEvents();
|
6190 |
+
|
6191 |
+
}
|
6192 |
+
|
6193 |
+
},
|
6194 |
+
|
6195 |
+
{
|
6196 |
+
name: 'beforehide',
|
6197 |
+
|
6198 |
+
self: true,
|
6199 |
+
|
6200 |
+
handler: function() {
|
6201 |
+
|
6202 |
+
active$1 = active$1 && active$1 !== this && active$1 || this.prev;
|
6203 |
+
|
6204 |
+
if (!active$1) {
|
6205 |
+
deregisterEvents();
|
6206 |
+
}
|
6207 |
+
|
6208 |
+
}
|
6209 |
+
|
6210 |
+
},
|
6211 |
+
|
6212 |
+
{
|
6213 |
+
|
6214 |
+
name: 'show',
|
6215 |
+
|
6216 |
+
self: true,
|
6217 |
+
|
6218 |
+
handler: function() {
|
6219 |
+
|
6220 |
+
if (!hasClass(document.documentElement, this.clsPage)) {
|
6221 |
+
this.scrollbarWidth = width(window) - width(document);
|
6222 |
+
css(document.body, 'overflowY', this.scrollbarWidth && this.overlay ? 'scroll' : '');
|
6223 |
+
}
|
6224 |
+
|
6225 |
+
addClass(document.documentElement, this.clsPage);
|
6226 |
+
|
6227 |
+
}
|
6228 |
+
|
6229 |
+
},
|
6230 |
+
|
6231 |
+
{
|
6232 |
+
|
6233 |
+
name: 'hidden',
|
6234 |
+
|
6235 |
+
self: true,
|
6236 |
+
|
6237 |
+
handler: function() {
|
6238 |
+
var this$1 = this;
|
6239 |
+
|
6240 |
+
|
6241 |
+
var found;
|
6242 |
+
var ref = this;
|
6243 |
+
var prev = ref.prev;
|
6244 |
+
|
6245 |
+
while (prev) {
|
6246 |
+
|
6247 |
+
if (prev.clsPage === this$1.clsPage) {
|
6248 |
+
found = true;
|
6249 |
+
break;
|
6250 |
+
}
|
6251 |
+
|
6252 |
+
prev = prev.prev;
|
6253 |
+
|
6254 |
+
}
|
6255 |
+
|
6256 |
+
if (!found) {
|
6257 |
+
removeClass(document.documentElement, this.clsPage);
|
6258 |
+
|
6259 |
+
}
|
6260 |
+
|
6261 |
+
!this.prev && css(document.body, 'overflowY', '');
|
6262 |
+
}
|
6263 |
+
|
6264 |
+
}
|
6265 |
+
|
6266 |
+
],
|
6267 |
+
|
6268 |
+
methods: {
|
6269 |
+
|
6270 |
+
toggle: function() {
|
6271 |
+
return this.isToggled() ? this.hide() : this.show();
|
6272 |
+
},
|
6273 |
+
|
6274 |
+
show: function() {
|
6275 |
+
|
6276 |
+
if (this.isToggled()) {
|
6277 |
+
return Promise.resolve();
|
6278 |
+
}
|
6279 |
+
|
6280 |
+
if (this.container && this.$el.parentNode !== this.container) {
|
6281 |
+
append(this.container, this.$el);
|
6282 |
+
this._callConnected();
|
6283 |
+
}
|
6284 |
+
|
6285 |
+
return this.toggleElement(this.$el, true, animate$1(this));
|
6286 |
+
},
|
6287 |
+
|
6288 |
+
hide: function() {
|
6289 |
+
return this.isToggled()
|
6290 |
+
? this.toggleElement(this.$el, false, animate$1(this))
|
6291 |
+
: Promise.resolve();
|
6292 |
+
},
|
6293 |
+
|
6294 |
+
getActive: function() {
|
6295 |
+
return active$1;
|
6296 |
+
}
|
6297 |
+
|
6298 |
+
}
|
6299 |
+
|
6300 |
+
};
|
6301 |
+
|
6302 |
+
var events;
|
6303 |
+
|
6304 |
+
function registerEvents() {
|
6305 |
+
|
6306 |
+
if (events) {
|
6307 |
+
return;
|
6308 |
+
}
|
6309 |
+
|
6310 |
+
events = [
|
6311 |
+
on(document, 'click', function (ref) {
|
6312 |
+
var target = ref.target;
|
6313 |
+
var defaultPrevented = ref.defaultPrevented;
|
6314 |
+
|
6315 |
+
if (active$1 && active$1.bgClose && !defaultPrevented && (!active$1.overlay || within(target, active$1.$el)) && !within(target, active$1.panel)) {
|
6316 |
+
active$1.hide();
|
6317 |
+
}
|
6318 |
+
}),
|
6319 |
+
on(document, 'keydown', function (e) {
|
6320 |
+
if (e.keyCode === 27 && active$1 && active$1.escClose) {
|
6321 |
+
e.preventDefault();
|
6322 |
+
active$1.hide();
|
6323 |
+
}
|
6324 |
+
})
|
6325 |
+
];
|
6326 |
+
}
|
6327 |
+
|
6328 |
+
function deregisterEvents() {
|
6329 |
+
events && events.forEach(function (unbind) { return unbind(); });
|
6330 |
+
events = null;
|
6331 |
+
}
|
6332 |
+
|
6333 |
+
function animate$1(ref) {
|
6334 |
+
var transitionElement = ref.transitionElement;
|
6335 |
+
var _toggle = ref._toggle;
|
6336 |
+
|
6337 |
+
return function (el, show) { return new Promise(function (resolve) { return requestAnimationFrame(function () {
|
6338 |
+
|
6339 |
+
_toggle(el, show);
|
6340 |
+
|
6341 |
+
if (toMs(css(transitionElement, 'transitionDuration'))) {
|
6342 |
+
once(transitionElement, 'transitionend', resolve, false, function (e) { return e.target === transitionElement; });
|
6343 |
+
} else {
|
6344 |
+
resolve();
|
6345 |
+
}
|
6346 |
+
}); }
|
6347 |
+
); };
|
6348 |
+
}
|
6349 |
+
|
6350 |
+
var Modal$1 = {
|
6351 |
+
|
6352 |
+
install: install$1,
|
6353 |
+
|
6354 |
+
mixins: [Modal],
|
6355 |
+
|
6356 |
+
data: {
|
6357 |
+
clsPage: 'uk-modal-page',
|
6358 |
+
selPanel: '.uk-modal-dialog',
|
6359 |
+
selClose: '.uk-modal-close, .uk-modal-close-default, .uk-modal-close-outside, .uk-modal-close-full'
|
6360 |
+
},
|
6361 |
+
|
6362 |
+
events: [
|
6363 |
+
|
6364 |
+
{
|
6365 |
+
name: 'show',
|
6366 |
+
|
6367 |
+
self: true,
|
6368 |
+
|
6369 |
+
handler: function() {
|
6370 |
+
|
6371 |
+
if (hasClass(this.panel, 'uk-margin-auto-vertical')) {
|
6372 |
+
addClass(this.$el, 'uk-flex');
|
6373 |
+
} else {
|
6374 |
+
css(this.$el, 'display', 'block');
|
6375 |
+
}
|
6376 |
+
|
6377 |
+
height(this.$el); // force reflow
|
6378 |
+
}
|
6379 |
+
},
|
6380 |
+
|
6381 |
+
{
|
6382 |
+
name: 'hidden',
|
6383 |
+
|
6384 |
+
self: true,
|
6385 |
+
|
6386 |
+
handler: function() {
|
6387 |
+
|
6388 |
+
css(this.$el, 'display', '');
|
6389 |
+
removeClass(this.$el, 'uk-flex');
|
6390 |
+
|
6391 |
+
}
|
6392 |
+
}
|
6393 |
+
|
6394 |
+
]
|
6395 |
+
|
6396 |
+
};
|
6397 |
+
|
6398 |
+
function install$1 (UIkit) {
|
6399 |
+
|
6400 |
+
UIkit.modal.dialog = function (content, options) {
|
6401 |
+
|
6402 |
+
var dialog = UIkit.modal((" <div class=\"uk-modal\"> <div class=\"uk-modal-dialog\">" + content + "</div> </div> "), options);
|
6403 |
+
|
6404 |
+
dialog.show();
|
6405 |
+
|
6406 |
+
on(dialog.$el, 'hidden', function (ref) {
|
6407 |
+
var target = ref.target;
|
6408 |
+
var currentTarget = ref.currentTarget;
|
6409 |
+
|
6410 |
+
if (target === currentTarget) {
|
6411 |
+
dialog.$destroy(true);
|
6412 |
+
}
|
6413 |
+
});
|
6414 |
+
|
6415 |
+
return dialog;
|
6416 |
+
};
|
6417 |
+
|
6418 |
+
UIkit.modal.alert = function (message, options) {
|
6419 |
+
|
6420 |
+
options = assign({bgClose: false, escClose: false, labels: UIkit.modal.labels}, options);
|
6421 |
+
|
6422 |
+
return new Promise(
|
6423 |
+
function (resolve) { return on(UIkit.modal.dialog((" <div class=\"uk-modal-body\">" + (isString(message) ? message : html(message)) + "</div> <div class=\"uk-modal-footer uk-text-right\"> <button class=\"uk-button uk-button-primary uk-modal-close\" autofocus>" + (options.labels.ok) + "</button> </div> "), options).$el, 'hide', resolve); }
|
6424 |
+
);
|
6425 |
+
};
|
6426 |
+
|
6427 |
+
UIkit.modal.confirm = function (message, options) {
|
6428 |
+
|
6429 |
+
options = assign({bgClose: false, escClose: true, labels: UIkit.modal.labels}, options);
|
6430 |
+
|
6431 |
+
return new Promise(function (resolve, reject) {
|
6432 |
+
|
6433 |
+
var confirm = UIkit.modal.dialog((" <form> <div class=\"uk-modal-body\">" + (isString(message) ? message : html(message)) + "</div> <div class=\"uk-modal-footer uk-text-right\"> <button class=\"uk-button uk-button-default uk-modal-close\" type=\"button\">" + (options.labels.cancel) + "</button> <button class=\"uk-button uk-button-primary\" autofocus>" + (options.labels.ok) + "</button> </div> </form> "), options);
|
6434 |
+
|
6435 |
+
var resolved = false;
|
6436 |
+
|
6437 |
+
on(confirm.$el, 'submit', 'form', function (e) {
|
6438 |
+
e.preventDefault();
|
6439 |
+
resolve();
|
6440 |
+
resolved = true;
|
6441 |
+
confirm.hide();
|
6442 |
+
});
|
6443 |
+
on(confirm.$el, 'hide', function () {
|
6444 |
+
if (!resolved) {
|
6445 |
+
reject();
|
6446 |
+
}
|
6447 |
+
});
|
6448 |
+
|
6449 |
+
});
|
6450 |
+
};
|
6451 |
+
|
6452 |
+
UIkit.modal.prompt = function (message, value, options) {
|
6453 |
+
|
6454 |
+
options = assign({bgClose: false, escClose: true, labels: UIkit.modal.labels}, options);
|
6455 |
+
|
6456 |
+
return new Promise(function (resolve) {
|
6457 |
+
|
6458 |
+
var prompt = UIkit.modal.dialog((" <form class=\"uk-form-stacked\"> <div class=\"uk-modal-body\"> <label>" + (isString(message) ? message : html(message)) + "</label> <input class=\"uk-input\" autofocus> </div> <div class=\"uk-modal-footer uk-text-right\"> <button class=\"uk-button uk-button-default uk-modal-close\" type=\"button\">" + (options.labels.cancel) + "</button> <button class=\"uk-button uk-button-primary\">" + (options.labels.ok) + "</button> </div> </form> "), options),
|
6459 |
+
input = $('input', prompt.$el);
|
6460 |
+
|
6461 |
+
input.value = value;
|
6462 |
+
|
6463 |
+
var resolved = false;
|
6464 |
+
|
6465 |
+
on(prompt.$el, 'submit', 'form', function (e) {
|
6466 |
+
e.preventDefault();
|
6467 |
+
resolve(input.value);
|
6468 |
+
resolved = true;
|
6469 |
+
prompt.hide();
|
6470 |
+
});
|
6471 |
+
on(prompt.$el, 'hide', function () {
|
6472 |
+
if (!resolved) {
|
6473 |
+
resolve(null);
|
6474 |
+
}
|
6475 |
+
});
|
6476 |
+
|
6477 |
+
});
|
6478 |
+
};
|
6479 |
+
|
6480 |
+
UIkit.modal.labels = {
|
6481 |
+
ok: 'Ok',
|
6482 |
+
cancel: 'Cancel'
|
6483 |
+
};
|
6484 |
+
|
6485 |
+
}
|
6486 |
+
|
6487 |
+
var Nav = {
|
6488 |
+
|
6489 |
+
extends: Accordion,
|
6490 |
+
|
6491 |
+
data: {
|
6492 |
+
targets: '> .uk-parent',
|
6493 |
+
toggle: '> a',
|
6494 |
+
content: '> ul'
|
6495 |
+
}
|
6496 |
+
|
6497 |
+
};
|
6498 |
+
|
6499 |
+
var Navbar = {
|
6500 |
+
|
6501 |
+
mixins: [Class, FlexBug],
|
6502 |
+
|
6503 |
+
props: {
|
6504 |
+
dropdown: String,
|
6505 |
+
mode: 'list',
|
6506 |
+
align: String,
|
6507 |
+
offset: Number,
|
6508 |
+
boundary: Boolean,
|
6509 |
+
boundaryAlign: Boolean,
|
6510 |
+
clsDrop: String,
|
6511 |
+
delayShow: Number,
|
6512 |
+
delayHide: Number,
|
6513 |
+
dropbar: Boolean,
|
6514 |
+
dropbarMode: String,
|
6515 |
+
dropbarAnchor: Boolean,
|
6516 |
+
duration: Number
|
6517 |
+
},
|
6518 |
+
|
6519 |
+
data: {
|
6520 |
+
dropdown: '.uk-navbar-nav > li',
|
6521 |
+
align: !isRtl ? 'left' : 'right',
|
6522 |
+
clsDrop: 'uk-navbar-dropdown',
|
6523 |
+
mode: undefined,
|
6524 |
+
offset: undefined,
|
6525 |
+
delayShow: undefined,
|
6526 |
+
delayHide: undefined,
|
6527 |
+
boundaryAlign: undefined,
|
6528 |
+
flip: 'x',
|
6529 |
+
boundary: true,
|
6530 |
+
dropbar: false,
|
6531 |
+
dropbarMode: 'slide',
|
6532 |
+
dropbarAnchor: false,
|
6533 |
+
duration: 200,
|
6534 |
+
forceHeight: true,
|
6535 |
+
selMinHeight: '.uk-navbar-nav > li > a, .uk-navbar-item, .uk-navbar-toggle'
|
6536 |
+
},
|
6537 |
+
|
6538 |
+
computed: {
|
6539 |
+
|
6540 |
+
boundary: function(ref, $el) {
|
6541 |
+
var boundary = ref.boundary;
|
6542 |
+
var boundaryAlign = ref.boundaryAlign;
|
6543 |
+
|
6544 |
+
return (boundary === true || boundaryAlign) ? $el : boundary;
|
6545 |
+
},
|
6546 |
+
|
6547 |
+
dropbarAnchor: function(ref, $el) {
|
6548 |
+
var dropbarAnchor = ref.dropbarAnchor;
|
6549 |
+
|
6550 |
+
return query(dropbarAnchor, $el);
|
6551 |
+
},
|
6552 |
+
|
6553 |
+
pos: function(ref) {
|
6554 |
+
var align = ref.align;
|
6555 |
+
|
6556 |
+
return ("bottom-" + align);
|
6557 |
+
},
|
6558 |
+
|
6559 |
+
dropdowns: function(ref, $el) {
|
6560 |
+
var dropdown = ref.dropdown;
|
6561 |
+
var clsDrop = ref.clsDrop;
|
6562 |
+
|
6563 |
+
return $$((dropdown + " ." + clsDrop), $el);
|
6564 |
+
}
|
6565 |
+
|
6566 |
+
},
|
6567 |
+
|
6568 |
+
beforeConnect: function() {
|
6569 |
+
|
6570 |
+
var ref = this.$props;
|
6571 |
+
var dropbar = ref.dropbar;
|
6572 |
+
|
6573 |
+
this.dropbar = dropbar && (query(dropbar, this.$el) || $('+ .uk-navbar-dropbar', this.$el) || $('<div></div>'));
|
6574 |
+
|
6575 |
+
if (this.dropbar) {
|
6576 |
+
|
6577 |
+
addClass(this.dropbar, 'uk-navbar-dropbar');
|
6578 |
+
|
6579 |
+
if (this.dropbarMode === 'slide') {
|
6580 |
+
addClass(this.dropbar, 'uk-navbar-dropbar-slide');
|
6581 |
+
}
|
6582 |
+
}
|
6583 |
+
|
6584 |
+
},
|
6585 |
+
|
6586 |
+
disconnected: function() {
|
6587 |
+
this.dropbar && remove(this.dropbar);
|
6588 |
+
},
|
6589 |
+
|
6590 |
+
update: function() {
|
6591 |
+
var this$1 = this;
|
6592 |
+
|
6593 |
+
|
6594 |
+
this.$create(
|
6595 |
+
'drop',
|
6596 |
+
this.dropdowns.filter(function (el) { return !this$1.getDropdown(el); }),
|
6597 |
+
assign({}, this.$props, {boundary: this.boundary, pos: this.pos, offset: this.dropbar || this.offset})
|
6598 |
+
);
|
6599 |
+
|
6600 |
+
},
|
6601 |
+
|
6602 |
+
events: [
|
6603 |
+
|
6604 |
+
{
|
6605 |
+
name: 'mouseover',
|
6606 |
+
|
6607 |
+
delegate: function() {
|
6608 |
+
return this.dropdown;
|
6609 |
+
},
|
6610 |
+
|
6611 |
+
handler: function(ref) {
|
6612 |
+
var current = ref.current;
|
6613 |
+
|
6614 |
+
var active = this.getActive();
|
6615 |
+
if (active && active.toggle && !within(active.toggle.$el, current) && !active.tracker.movesTo(active.$el)) {
|
6616 |
+
active.hide(false);
|
6617 |
+
}
|
6618 |
+
}
|
6619 |
+
|
6620 |
+
},
|
6621 |
+
|
6622 |
+
{
|
6623 |
+
name: 'mouseleave',
|
6624 |
+
|
6625 |
+
el: function() {
|
6626 |
+
return this.dropbar;
|
6627 |
+
},
|
6628 |
+
|
6629 |
+
handler: function() {
|
6630 |
+
var active = this.getActive();
|
6631 |
+
|
6632 |
+
if (active && !matches(this.dropbar, ':hover')) {
|
6633 |
+
active.hide();
|
6634 |
+
}
|
6635 |
+
}
|
6636 |
+
},
|
6637 |
+
|
6638 |
+
{
|
6639 |
+
name: 'beforeshow',
|
6640 |
+
|
6641 |
+
capture: true,
|
6642 |
+
|
6643 |
+
filter: function() {
|
6644 |
+
return this.dropbar;
|
6645 |
+
},
|
6646 |
+
|
6647 |
+
handler: function() {
|
6648 |
+
|
6649 |
+
if (!this.dropbar.parentNode) {
|
6650 |
+
after(this.dropbarAnchor || this.$el, this.dropbar);
|
6651 |
+
}
|
6652 |
+
|
6653 |
+
}
|
6654 |
+
},
|
6655 |
+
|
6656 |
+
{
|
6657 |
+
name: 'show',
|
6658 |
+
|
6659 |
+
capture: true,
|
6660 |
+
|
6661 |
+
filter: function() {
|
6662 |
+
return this.dropbar;
|
6663 |
+
},
|
6664 |
+
|
6665 |
+
handler: function(_, drop) {
|
6666 |
+
|
6667 |
+
var $el = drop.$el;
|
6668 |
+
var dir = drop.dir;
|
6669 |
+
|
6670 |
+
this.clsDrop && addClass($el, ((this.clsDrop) + "-dropbar"));
|
6671 |
+
|
6672 |
+
if (dir === 'bottom') {
|
6673 |
+
this.transitionTo($el.offsetHeight + toFloat(css($el, 'marginTop')) + toFloat(css($el, 'marginBottom')), $el);
|
6674 |
+
}
|
6675 |
+
}
|
6676 |
+
},
|
6677 |
+
|
6678 |
+
{
|
6679 |
+
name: 'beforehide',
|
6680 |
+
|
6681 |
+
filter: function() {
|
6682 |
+
return this.dropbar;
|
6683 |
+
},
|
6684 |
+
|
6685 |
+
handler: function(e, ref) {
|
6686 |
+
var $el = ref.$el;
|
6687 |
+
|
6688 |
+
|
6689 |
+
var active = this.getActive();
|
6690 |
+
|
6691 |
+
if (matches(this.dropbar, ':hover') && active && active.$el === $el) {
|
6692 |
+
e.preventDefault();
|
6693 |
+
}
|
6694 |
+
}
|
6695 |
+
},
|
6696 |
+
|
6697 |
+
{
|
6698 |
+
name: 'hide',
|
6699 |
+
|
6700 |
+
filter: function() {
|
6701 |
+
return this.dropbar;
|
6702 |
+
},
|
6703 |
+
|
6704 |
+
handler: function(_, ref) {
|
6705 |
+
var $el = ref.$el;
|
6706 |
+
|
6707 |
+
|
6708 |
+
var active = this.getActive();
|
6709 |
+
|
6710 |
+
if (!active || active && active.$el === $el) {
|
6711 |
+
this.transitionTo(0);
|
6712 |
+
}
|
6713 |
+
}
|
6714 |
+
}
|
6715 |
+
|
6716 |
+
],
|
6717 |
+
|
6718 |
+
methods: {
|
6719 |
+
|
6720 |
+
getActive: function() {
|
6721 |
+
var ref = this.dropdowns.map(this.getDropdown).filter(function (drop) { return drop && drop.isActive(); });
|
6722 |
+
var active = ref[0];
|
6723 |
+
return active && includes(active.mode, 'hover') && within(active.toggle.$el, this.$el) && active;
|
6724 |
+
},
|
6725 |
+
|
6726 |
+
transitionTo: function(newHeight, el) {
|
6727 |
+
var this$1 = this;
|
6728 |
+
|
6729 |
+
|
6730 |
+
var ref = this;
|
6731 |
+
var dropbar = ref.dropbar;
|
6732 |
+
var oldHeight = isVisible(dropbar) ? height(dropbar) : 0;
|
6733 |
+
|
6734 |
+
el = oldHeight < newHeight && el;
|
6735 |
+
|
6736 |
+
css(el, 'clip', ("rect(0," + (el.offsetWidth) + "px," + oldHeight + "px,0)"));
|
6737 |
+
|
6738 |
+
height(dropbar, oldHeight);
|
6739 |
+
|
6740 |
+
Transition.cancel([el, dropbar]);
|
6741 |
+
return Promise.all([
|
6742 |
+
Transition.start(dropbar, {height: newHeight}, this.duration),
|
6743 |
+
Transition.start(el, {clip: ("rect(0," + (el.offsetWidth) + "px," + newHeight + "px,0)")}, this.duration)
|
6744 |
+
])
|
6745 |
+
.catch(noop)
|
6746 |
+
.then(function () {
|
6747 |
+
css(el, {clip: ''});
|
6748 |
+
this$1.$update(dropbar);
|
6749 |
+
});
|
6750 |
+
},
|
6751 |
+
|
6752 |
+
getDropdown: function(el) {
|
6753 |
+
return this.$getComponent(el, 'drop') || this.$getComponent(el, 'dropdown');
|
6754 |
+
}
|
6755 |
+
|
6756 |
+
}
|
6757 |
+
|
6758 |
+
};
|
6759 |
+
|
6760 |
+
var scroll;
|
6761 |
+
|
6762 |
+
var Offcanvas = {
|
6763 |
+
|
6764 |
+
mixins: [Modal],
|
6765 |
+
|
6766 |
+
args: 'mode',
|
6767 |
+
|
6768 |
+
props: {
|
6769 |
+
content: String,
|
6770 |
+
mode: String,
|
6771 |
+
flip: Boolean,
|
6772 |
+
overlay: Boolean
|
6773 |
+
},
|
6774 |
+
|
6775 |
+
data: {
|
6776 |
+
content: '.uk-offcanvas-content',
|
6777 |
+
mode: 'slide',
|
6778 |
+
flip: false,
|
6779 |
+
overlay: false,
|
6780 |
+
clsPage: 'uk-offcanvas-page',
|
6781 |
+
clsContainer: 'uk-offcanvas-container',
|
6782 |
+
selPanel: '.uk-offcanvas-bar',
|
6783 |
+
clsFlip: 'uk-offcanvas-flip',
|
6784 |
+
clsContent: 'uk-offcanvas-content',
|
6785 |
+
clsContentAnimation: 'uk-offcanvas-content-animation',
|
6786 |
+
clsSidebarAnimation: 'uk-offcanvas-bar-animation',
|
6787 |
+
clsMode: 'uk-offcanvas',
|
6788 |
+
clsOverlay: 'uk-offcanvas-overlay',
|
6789 |
+
selClose: '.uk-offcanvas-close'
|
6790 |
+
},
|
6791 |
+
|
6792 |
+
computed: {
|
6793 |
+
|
6794 |
+
content: function(ref) {
|
6795 |
+
var content = ref.content;
|
6796 |
+
|
6797 |
+
return $(content) || document.body;
|
6798 |
+
},
|
6799 |
+
|
6800 |
+
clsFlip: function(ref) {
|
6801 |
+
var flip = ref.flip;
|
6802 |
+
var clsFlip = ref.clsFlip;
|
6803 |
+
|
6804 |
+
return flip ? clsFlip : '';
|
6805 |
+
},
|
6806 |
+
|
6807 |
+
clsOverlay: function(ref) {
|
6808 |
+
var overlay = ref.overlay;
|
6809 |
+
var clsOverlay = ref.clsOverlay;
|
6810 |
+
|
6811 |
+
return overlay ? clsOverlay : '';
|
6812 |
+
},
|
6813 |
+
|
6814 |
+
clsMode: function(ref) {
|
6815 |
+
var mode = ref.mode;
|
6816 |
+
var clsMode = ref.clsMode;
|
6817 |
+
|
6818 |
+
return (clsMode + "-" + mode);
|
6819 |
+
},
|
6820 |
+
|
6821 |
+
clsSidebarAnimation: function(ref) {
|
6822 |
+
var mode = ref.mode;
|
6823 |
+
var clsSidebarAnimation = ref.clsSidebarAnimation;
|
6824 |
+
|
6825 |
+
return mode === 'none' || mode === 'reveal' ? '' : clsSidebarAnimation;
|
6826 |
+
},
|
6827 |
+
|
6828 |
+
clsContentAnimation: function(ref) {
|
6829 |
+
var mode = ref.mode;
|
6830 |
+
var clsContentAnimation = ref.clsContentAnimation;
|
6831 |
+
|
6832 |
+
return mode !== 'push' && mode !== 'reveal' ? '' : clsContentAnimation;
|
6833 |
+
},
|
6834 |
+
|
6835 |
+
transitionElement: function(ref) {
|
6836 |
+
var mode = ref.mode;
|
6837 |
+
|
6838 |
+
return mode === 'reveal' ? this.panel.parentNode : this.panel;
|
6839 |
+
}
|
6840 |
+
|
6841 |
+
},
|
6842 |
+
|
6843 |
+
update: {
|
6844 |
+
|
6845 |
+
write: function() {
|
6846 |
+
|
6847 |
+
if (this.getActive() === this) {
|
6848 |
+
|
6849 |
+
if (this.overlay || this.clsContentAnimation) {
|
6850 |
+
width(this.content, width(window) - this.scrollbarWidth);
|
6851 |
+
}
|
6852 |
+
|
6853 |
+
if (this.overlay) {
|
6854 |
+
height(this.content, height(window));
|
6855 |
+
if (scroll) {
|
6856 |
+
this.content.scrollTop = scroll.y;
|
6857 |
+
}
|
6858 |
+
}
|
6859 |
+
|
6860 |
+
}
|
6861 |
+
|
6862 |
+
},
|
6863 |
+
|
6864 |
+
events: ['resize']
|
6865 |
+
|
6866 |
+
},
|
6867 |
+
|
6868 |
+
events: [
|
6869 |
+
|
6870 |
+
{
|
6871 |
+
|
6872 |
+
name: 'click',
|
6873 |
+
|
6874 |
+
delegate: function() {
|
6875 |
+
return 'a[href^="#"]';
|
6876 |
+
},
|
6877 |
+
|
6878 |
+
handler: function(ref) {
|
6879 |
+
var current = ref.current;
|
6880 |
+
|
6881 |
+
if (current.hash && $(current.hash, this.content)) {
|
6882 |
+
scroll = null;
|
6883 |
+
this.hide();
|
6884 |
+
}
|
6885 |
+
}
|
6886 |
+
|
6887 |
+
},
|
6888 |
+
|
6889 |
+
{
|
6890 |
+
|
6891 |
+
name: 'beforescroll',
|
6892 |
+
|
6893 |
+
filter: function() {
|
6894 |
+
return this.overlay;
|
6895 |
+
},
|
6896 |
+
|
6897 |
+
handler: function(e, scroll, target) {
|
6898 |
+
if (scroll && target && this.isToggled() && $(target, this.content)) {
|
6899 |
+
once(this.$el, 'hidden', function () { return scroll.scrollTo(target); });
|
6900 |
+
e.preventDefault();
|
6901 |
+
}
|
6902 |
+
}
|
6903 |
+
|
6904 |
+
},
|
6905 |
+
|
6906 |
+
{
|
6907 |
+
name: 'show',
|
6908 |
+
|
6909 |
+
self: true,
|
6910 |
+
|
6911 |
+
handler: function() {
|
6912 |
+
|
6913 |
+
scroll = scroll || {x: window.pageXOffset, y: window.pageYOffset};
|
6914 |
+
|
6915 |
+
if (this.mode === 'reveal' && !hasClass(this.panel, this.clsMode)) {
|
6916 |
+
wrapAll(this.panel, '<div>');
|
6917 |
+
addClass(this.panel.parentNode, this.clsMode);
|
6918 |
+
}
|
6919 |
+
|
6920 |
+
css(document.documentElement, 'overflowY', (!this.clsContentAnimation || this.flip) && this.scrollbarWidth && this.overlay ? 'scroll' : '');
|
6921 |
+
addClass(document.body, this.clsContainer, this.clsFlip, this.clsOverlay);
|
6922 |
+
height(document.body); // force reflow
|
6923 |
+
addClass(this.content, this.clsContentAnimation);
|
6924 |
+
addClass(this.panel, this.clsSidebarAnimation, this.mode !== 'reveal' ? this.clsMode : '');
|
6925 |
+
addClass(this.$el, this.clsOverlay);
|
6926 |
+
css(this.$el, 'display', 'block');
|
6927 |
+
height(this.$el); // force reflow
|
6928 |
+
|
6929 |
+
}
|
6930 |
+
},
|
6931 |
+
|
6932 |
+
{
|
6933 |
+
name: 'hide',
|
6934 |
+
|
6935 |
+
self: true,
|
6936 |
+
|
6937 |
+
handler: function() {
|
6938 |
+
removeClass(this.content, this.clsContentAnimation);
|
6939 |
+
|
6940 |
+
var active = this.getActive();
|
6941 |
+
if (this.mode === 'none' || active && active !== this && active !== this.prev) {
|
6942 |
+
trigger(this.panel, 'transitionend');
|
6943 |
+
}
|
6944 |
+
}
|
6945 |
+
},
|
6946 |
+
|
6947 |
+
{
|
6948 |
+
name: 'hidden',
|
6949 |
+
|
6950 |
+
self: true,
|
6951 |
+
|
6952 |
+
handler: function() {
|
6953 |
+
|
6954 |
+
if (this.mode === 'reveal') {
|
6955 |
+
unwrap(this.panel);
|
6956 |
+
}
|
6957 |
+
|
6958 |
+
if (!this.overlay) {
|
6959 |
+
scroll = {x: window.pageXOffset, y: window.pageYOffset};
|
6960 |
+
} else if (!scroll) {
|
6961 |
+
var ref = this.content;
|
6962 |
+
var x = ref.scrollLeft;
|
6963 |
+
var y = ref.scrollTop;
|
6964 |
+
scroll = {x: x, y: y};
|
6965 |
+
}
|
6966 |
+
|
6967 |
+
removeClass(this.panel, this.clsSidebarAnimation, this.clsMode);
|
6968 |
+
removeClass(this.$el, this.clsOverlay);
|
6969 |
+
css(this.$el, 'display', '');
|
6970 |
+
removeClass(document.body, this.clsContainer, this.clsFlip, this.clsOverlay);
|
6971 |
+
document.body.scrollTop = scroll.y;
|
6972 |
+
|
6973 |
+
css(document.documentElement, 'overflowY', '');
|
6974 |
+
|
6975 |
+
width(this.content, '');
|
6976 |
+
height(this.content, '');
|
6977 |
+
|
6978 |
+
window.scroll(scroll.x, scroll.y);
|
6979 |
+
|
6980 |
+
scroll = null;
|
6981 |
+
|
6982 |
+
}
|
6983 |
+
},
|
6984 |
+
|
6985 |
+
{
|
6986 |
+
name: 'swipeLeft swipeRight',
|
6987 |
+
|
6988 |
+
handler: function(e) {
|
6989 |
+
|
6990 |
+
if (this.isToggled() && isTouch(e) && (e.type === 'swipeLeft' && !this.flip || e.type === 'swipeRight' && this.flip)) {
|
6991 |
+
this.hide();
|
6992 |
+
}
|
6993 |
+
|
6994 |
+
}
|
6995 |
+
}
|
6996 |
+
|
6997 |
+
]
|
6998 |
+
|
6999 |
+
};
|
7000 |
+
|
7001 |
+
var OverflowAuto = {
|
7002 |
+
|
7003 |
+
mixins: [Class],
|
7004 |
+
|
7005 |
+
props: {
|
7006 |
+
selContainer: String,
|
7007 |
+
selContent: String,
|
7008 |
+
},
|
7009 |
+
|
7010 |
+
data: {
|
7011 |
+
selContainer: '.uk-modal',
|
7012 |
+
selContent: '.uk-modal-dialog',
|
7013 |
+
},
|
7014 |
+
|
7015 |
+
computed: {
|
7016 |
+
|
7017 |
+
container: function(ref, $el) {
|
7018 |
+
var selContainer = ref.selContainer;
|
7019 |
+
|
7020 |
+
return closest($el, selContainer);
|
7021 |
+
},
|
7022 |
+
|
7023 |
+
content: function(ref, $el) {
|
7024 |
+
var selContent = ref.selContent;
|
7025 |
+
|
7026 |
+
return closest($el, selContent);
|
7027 |
+
}
|
7028 |
+
|
7029 |
+
},
|
7030 |
+
|
7031 |
+
connected: function() {
|
7032 |
+
css(this.$el, 'minHeight', 150);
|
7033 |
+
},
|
7034 |
+
|
7035 |
+
update: {
|
7036 |
+
|
7037 |
+
read: function() {
|
7038 |
+
|
7039 |
+
if (!this.content || !this.container) {
|
7040 |
+
return false;
|
7041 |
+
}
|
7042 |
+
|
7043 |
+
return {
|
7044 |
+
current: toFloat(css(this.$el, 'maxHeight')),
|
7045 |
+
max: Math.max(150, height(this.container) - (offset(this.content).height - height(this.$el)))
|
7046 |
+
};
|
7047 |
+
},
|
7048 |
+
|
7049 |
+
write: function(ref) {
|
7050 |
+
var current = ref.current;
|
7051 |
+
var max = ref.max;
|
7052 |
+
|
7053 |
+
css(this.$el, 'maxHeight', max);
|
7054 |
+
if (Math.round(current) !== Math.round(max)) {
|
7055 |
+
trigger(this.$el, 'resize');
|
7056 |
+
}
|
7057 |
+
},
|
7058 |
+
|
7059 |
+
events: ['load', 'resize']
|
7060 |
+
|
7061 |
+
}
|
7062 |
+
|
7063 |
+
};
|
7064 |
+
|
7065 |
+
var Responsive = {
|
7066 |
+
|
7067 |
+
props: ['width', 'height'],
|
7068 |
+
|
7069 |
+
connected: function() {
|
7070 |
+
addClass(this.$el, 'uk-responsive-width');
|
7071 |
+
},
|
7072 |
+
|
7073 |
+
update: {
|
7074 |
+
|
7075 |
+
read: function() {
|
7076 |
+
return isVisible(this.$el) && this.width && this.height
|
7077 |
+
? {width: width(this.$el.parentNode), height: this.height}
|
7078 |
+
: false;
|
7079 |
+
},
|
7080 |
+
|
7081 |
+
write: function(dim) {
|
7082 |
+
height(this.$el, Dimensions.contain({
|
7083 |
+
height: this.height,
|
7084 |
+
width: this.width
|
7085 |
+
}, dim).height);
|
7086 |
+
},
|
7087 |
+
|
7088 |
+
events: ['load', 'resize']
|
7089 |
+
|
7090 |
+
}
|
7091 |
+
|
7092 |
+
};
|
7093 |
+
|
7094 |
+
var Scroll = {
|
7095 |
+
|
7096 |
+
props: {
|
7097 |
+
duration: Number,
|
7098 |
+
offset: Number
|
7099 |
+
},
|
7100 |
+
|
7101 |
+
data: {
|
7102 |
+
duration: 1000,
|
7103 |
+
offset: 0
|
7104 |
+
},
|
7105 |
+
|
7106 |
+
methods: {
|
7107 |
+
|
7108 |
+
scrollTo: function(el) {
|
7109 |
+
var this$1 = this;
|
7110 |
+
|
7111 |
+
|
7112 |
+
el = el && $(el) || document.body;
|
7113 |
+
|
7114 |
+
var docHeight = height(document);
|
7115 |
+
var winHeight = height(window);
|
7116 |
+
|
7117 |
+
var target = offset(el).top - this.offset;
|
7118 |
+
if (target + winHeight > docHeight) {
|
7119 |
+
target = docHeight - winHeight;
|
7120 |
+
}
|
7121 |
+
|
7122 |
+
if (!trigger(this.$el, 'beforescroll', [this, el])) {
|
7123 |
+
return;
|
7124 |
+
}
|
7125 |
+
|
7126 |
+
var start = Date.now();
|
7127 |
+
var startY = window.pageYOffset;
|
7128 |
+
var step = function () {
|
7129 |
+
|
7130 |
+
var currentY = startY + (target - startY) * ease(clamp((Date.now() - start) / this$1.duration));
|
7131 |
+
|
7132 |
+
scrollTop(window, currentY);
|
7133 |
+
|
7134 |
+
// scroll more if we have not reached our destination
|
7135 |
+
if (currentY !== target) {
|
7136 |
+
requestAnimationFrame(step);
|
7137 |
+
} else {
|
7138 |
+
trigger(this$1.$el, 'scrolled', [this$1, el]);
|
7139 |
+
}
|
7140 |
+
|
7141 |
+
};
|
7142 |
+
|
7143 |
+
step();
|
7144 |
+
|
7145 |
+
}
|
7146 |
+
|
7147 |
+
},
|
7148 |
+
|
7149 |
+
events: {
|
7150 |
+
|
7151 |
+
click: function(e) {
|
7152 |
+
|
7153 |
+
if (e.defaultPrevented) {
|
7154 |
+
return;
|
7155 |
+
}
|
7156 |
+
|
7157 |
+
e.preventDefault();
|
7158 |
+
this.scrollTo(escape(decodeURIComponent(this.$el.hash)).substr(1));
|
7159 |
+
}
|
7160 |
+
|
7161 |
+
}
|
7162 |
+
|
7163 |
+
};
|
7164 |
+
|
7165 |
+
function ease(k) {
|
7166 |
+
return 0.5 * (1 - Math.cos(Math.PI * k));
|
7167 |
+
}
|
7168 |
+
|
7169 |
+
var Scrollspy = {
|
7170 |
+
|
7171 |
+
args: 'cls',
|
7172 |
+
|
7173 |
+
props: {
|
7174 |
+
cls: 'list',
|
7175 |
+
target: String,
|
7176 |
+
hidden: Boolean,
|
7177 |
+
offsetTop: Number,
|
7178 |
+
offsetLeft: Number,
|
7179 |
+
repeat: Boolean,
|
7180 |
+
delay: Number
|
7181 |
+
},
|
7182 |
+
|
7183 |
+
data: function () { return ({
|
7184 |
+
cls: [],
|
7185 |
+
target: false,
|
7186 |
+
hidden: true,
|
7187 |
+
offsetTop: 0,
|
7188 |
+
offsetLeft: 0,
|
7189 |
+
repeat: false,
|
7190 |
+
delay: 0,
|
7191 |
+
inViewClass: 'uk-scrollspy-inview'
|
7192 |
+
}); },
|
7193 |
+
|
7194 |
+
computed: {
|
7195 |
+
|
7196 |
+
elements: function(ref, $el) {
|
7197 |
+
var target = ref.target;
|
7198 |
+
|
7199 |
+
return target ? $$(target, $el) : [$el];
|
7200 |
+
}
|
7201 |
+
|
7202 |
+
},
|
7203 |
+
|
7204 |
+
update: [
|
7205 |
+
|
7206 |
+
{
|
7207 |
+
|
7208 |
+
write: function() {
|
7209 |
+
if (this.hidden) {
|
7210 |
+
css(filter(this.elements, (":not(." + (this.inViewClass) + ")")), 'visibility', 'hidden');
|
7211 |
+
}
|
7212 |
+
}
|
7213 |
+
|
7214 |
+
},
|
7215 |
+
|
7216 |
+
{
|
7217 |
+
|
7218 |
+
read: function(els) {
|
7219 |
+
var this$1 = this;
|
7220 |
+
|
7221 |
+
|
7222 |
+
if (!els.update) {
|
7223 |
+
return;
|
7224 |
+
}
|
7225 |
+
|
7226 |
+
this.elements.forEach(function (el, i) {
|
7227 |
+
|
7228 |
+
var elData = els[i];
|
7229 |
+
|
7230 |
+
if (!elData || elData.el !== el) {
|
7231 |
+
var cls = data(el, 'uk-scrollspy-class');
|
7232 |
+
elData = {el: el, toggles: cls && cls.split(',') || this$1.cls};
|
7233 |
+
}
|
7234 |
+
|
7235 |
+
elData.show = isInView(el, this$1.offsetTop, this$1.offsetLeft);
|
7236 |
+
els[i] = elData;
|
7237 |
+
|
7238 |
+
});
|
7239 |
+
|
7240 |
+
},
|
7241 |
+
|
7242 |
+
write: function(els) {
|
7243 |
+
var this$1 = this;
|
7244 |
+
|
7245 |
+
|
7246 |
+
// Let child components be applied at least once first
|
7247 |
+
if (!els.update) {
|
7248 |
+
this.$emit();
|
7249 |
+
return els.update = true;
|
7250 |
+
}
|
7251 |
+
|
7252 |
+
this.elements.forEach(function (el, i) {
|
7253 |
+
|
7254 |
+
var elData = els[i];
|
7255 |
+
var cls = elData.toggles[i] || elData.toggles[0];
|
7256 |
+
|
7257 |
+
if (elData.show && !elData.inview && !elData.queued) {
|
7258 |
+
|
7259 |
+
var show = function () {
|
7260 |
+
|
7261 |
+
css(el, 'visibility', '');
|
7262 |
+
addClass(el, this$1.inViewClass);
|
7263 |
+
toggleClass(el, cls);
|
7264 |
+
|
7265 |
+
trigger(el, 'inview');
|
7266 |
+
|
7267 |
+
this$1.$update(el);
|
7268 |
+
|
7269 |
+
elData.inview = true;
|
7270 |
+
elData.abort && elData.abort();
|
7271 |
+
};
|
7272 |
+
|
7273 |
+
if (this$1.delay) {
|
7274 |
+
|
7275 |
+
elData.queued = true;
|
7276 |
+
els.promise = (els.promise || Promise.resolve()).then(function () {
|
7277 |
+
return !elData.inview && new Promise(function (resolve) {
|
7278 |
+
|
7279 |
+
var timer = setTimeout(function () {
|
7280 |
+
|
7281 |
+
show();
|
7282 |
+
resolve();
|
7283 |
+
|
7284 |
+
}, els.promise || this$1.elements.length === 1 ? this$1.delay : 0);
|
7285 |
+
|
7286 |
+
elData.abort = function () {
|
7287 |
+
clearTimeout(timer);
|
7288 |
+
resolve();
|
7289 |
+
elData.queued = false;
|
7290 |
+
};
|
7291 |
+
|
7292 |
+
});
|
7293 |
+
|
7294 |
+
});
|
7295 |
+
|
7296 |
+
} else {
|
7297 |
+
show();
|
7298 |
+
}
|
7299 |
+
|
7300 |
+
} else if (!elData.show && (elData.inview || elData.queued) && this$1.repeat) {
|
7301 |
+
|
7302 |
+
elData.abort && elData.abort();
|
7303 |
+
|
7304 |
+
if (!elData.inview) {
|
7305 |
+
return;
|
7306 |
+
}
|
7307 |
+
|
7308 |
+
css(el, 'visibility', this$1.hidden ? 'hidden' : '');
|
7309 |
+
removeClass(el, this$1.inViewClass);
|
7310 |
+
toggleClass(el, cls);
|
7311 |
+
|
7312 |
+
trigger(el, 'outview');
|
7313 |
+
|
7314 |
+
this$1.$update(el);
|
7315 |
+
|
7316 |
+
elData.inview = false;
|
7317 |
+
|
7318 |
+
}
|
7319 |
+
|
7320 |
+
|
7321 |
+
});
|
7322 |
+
|
7323 |
+
},
|
7324 |
+
|
7325 |
+
events: ['scroll', 'load', 'resize']
|
7326 |
+
|
7327 |
+
}
|
7328 |
+
|
7329 |
+
]
|
7330 |
+
|
7331 |
+
};
|
7332 |
+
|
7333 |
+
var ScrollspyNav = {
|
7334 |
+
|
7335 |
+
props: {
|
7336 |
+
cls: String,
|
7337 |
+
closest: String,
|
7338 |
+
scroll: Boolean,
|
7339 |
+
overflow: Boolean,
|
7340 |
+
offset: Number
|
7341 |
+
},
|
7342 |
+
|
7343 |
+
data: {
|
7344 |
+
cls: 'uk-active',
|
7345 |
+
closest: false,
|
7346 |
+
scroll: false,
|
7347 |
+
overflow: true,
|
7348 |
+
offset: 0
|
7349 |
+
},
|
7350 |
+
|
7351 |
+
computed: {
|
7352 |
+
|
7353 |
+
links: function(_, $el) {
|
7354 |
+
return $$('a[href^="#"]', $el).filter(function (el) { return el.hash; });
|
7355 |
+
},
|
7356 |
+
|
7357 |
+
elements: function() {
|
7358 |
+
return this.closest ? closest(this.links, this.closest) : this.links;
|
7359 |
+
},
|
7360 |
+
|
7361 |
+
targets: function() {
|
7362 |
+
return $$(this.links.map(function (el) { return el.hash; }).join(','));
|
7363 |
+
}
|
7364 |
+
|
7365 |
+
},
|
7366 |
+
|
7367 |
+
update: [
|
7368 |
+
|
7369 |
+
{
|
7370 |
+
|
7371 |
+
read: function() {
|
7372 |
+
if (this.scroll) {
|
7373 |
+
this.$create('scroll', this.links, {offset: this.offset || 0});
|
7374 |
+
}
|
7375 |
+
}
|
7376 |
+
|
7377 |
+
},
|
7378 |
+
|
7379 |
+
{
|
7380 |
+
|
7381 |
+
read: function(data$$1) {
|
7382 |
+
var this$1 = this;
|
7383 |
+
|
7384 |
+
|
7385 |
+
var scroll = window.pageYOffset + this.offset + 1;
|
7386 |
+
var max = height(document) - height(window) + this.offset;
|
7387 |
+
|
7388 |
+
data$$1.active = false;
|
7389 |
+
|
7390 |
+
this.targets.every(function (el, i) {
|
7391 |
+
|
7392 |
+
var ref = offset(el);
|
7393 |
+
var top = ref.top;
|
7394 |
+
var last = i + 1 === this$1.targets.length;
|
7395 |
+
|
7396 |
+
if (!this$1.overflow && (i === 0 && top > scroll || last && top + el.offsetTop < scroll)) {
|
7397 |
+
return false;
|
7398 |
+
}
|
7399 |
+
|
7400 |
+
if (!last && offset(this$1.targets[i + 1]).top <= scroll) {
|
7401 |
+
return true;
|
7402 |
+
}
|
7403 |
+
|
7404 |
+
if (scroll >= max) {
|
7405 |
+
for (var j = this$1.targets.length - 1; j > i; j--) {
|
7406 |
+
if (isInView(this$1.targets[j])) {
|
7407 |
+
el = this$1.targets[j];
|
7408 |
+
break;
|
7409 |
+
}
|
7410 |
+
}
|
7411 |
+
}
|
7412 |
+
|
7413 |
+
return !(data$$1.active = $(filter(this$1.links, ("[href=\"#" + (el.id) + "\"]"))));
|
7414 |
+
|
7415 |
+
});
|
7416 |
+
|
7417 |
+
},
|
7418 |
+
|
7419 |
+
write: function(ref) {
|
7420 |
+
var active = ref.active;
|
7421 |
+
|
7422 |
+
|
7423 |
+
this.links.forEach(function (el) { return el.blur(); });
|
7424 |
+
removeClass(this.elements, this.cls);
|
7425 |
+
|
7426 |
+
if (active) {
|
7427 |
+
trigger(this.$el, 'active', [active, addClass(this.closest ? closest(active, this.closest) : active, this.cls)]);
|
7428 |
+
}
|
7429 |
+
|
7430 |
+
},
|
7431 |
+
|
7432 |
+
events: ['scroll', 'load', 'resize']
|
7433 |
+
|
7434 |
+
}
|
7435 |
+
|
7436 |
+
]
|
7437 |
+
|
7438 |
+
};
|
7439 |
+
|
7440 |
+
var Sticky = {
|
7441 |
+
|
7442 |
+
mixins: [Class, Media],
|
7443 |
+
|
7444 |
+
props: {
|
7445 |
+
top: null,
|
7446 |
+
bottom: Boolean,
|
7447 |
+
offset: Number,
|
7448 |
+
animation: String,
|
7449 |
+
clsActive: String,
|
7450 |
+
clsInactive: String,
|
7451 |
+
clsFixed: String,
|
7452 |
+
clsBelow: String,
|
7453 |
+
selTarget: String,
|
7454 |
+
widthElement: Boolean,
|
7455 |
+
showOnUp: Boolean,
|
7456 |
+
targetOffset: Number
|
7457 |
+
},
|
7458 |
+
|
7459 |
+
data: {
|
7460 |
+
top: 0,
|
7461 |
+
bottom: false,
|
7462 |
+
offset: 0,
|
7463 |
+
animation: '',
|
7464 |
+
clsActive: 'uk-active',
|
7465 |
+
clsInactive: '',
|
7466 |
+
clsFixed: 'uk-sticky-fixed',
|
7467 |
+
clsBelow: 'uk-sticky-below',
|
7468 |
+
selTarget: '',
|
7469 |
+
widthElement: false,
|
7470 |
+
showOnUp: false,
|
7471 |
+
targetOffset: false
|
7472 |
+
},
|
7473 |
+
|
7474 |
+
computed: {
|
7475 |
+
|
7476 |
+
selTarget: function(ref, $el) {
|
7477 |
+
var selTarget = ref.selTarget;
|
7478 |
+
|
7479 |
+
return selTarget && $(selTarget, $el) || $el;
|
7480 |
+
},
|
7481 |
+
|
7482 |
+
widthElement: function(ref, $el) {
|
7483 |
+
var widthElement = ref.widthElement;
|
7484 |
+
|
7485 |
+
return query(widthElement, $el) || this.placeholder;
|
7486 |
+
}
|
7487 |
+
|
7488 |
+
},
|
7489 |
+
|
7490 |
+
connected: function() {
|
7491 |
+
this.placeholder = $('+ .uk-sticky-placeholder', this.$el) || $('<div class="uk-sticky-placeholder"></div>');
|
7492 |
+
},
|
7493 |
+
|
7494 |
+
disconnected: function() {
|
7495 |
+
|
7496 |
+
if (this.isActive) {
|
7497 |
+
this.isActive = undefined;
|
7498 |
+
this.hide();
|
7499 |
+
removeClass(this.selTarget, this.clsInactive);
|
7500 |
+
}
|
7501 |
+
|
7502 |
+
remove(this.placeholder);
|
7503 |
+
this.placeholder = null;
|
7504 |
+
this.widthElement = null;
|
7505 |
+
},
|
7506 |
+
|
7507 |
+
events: [
|
7508 |
+
|
7509 |
+
{
|
7510 |
+
name: 'active',
|
7511 |
+
|
7512 |
+
self: true,
|
7513 |
+
|
7514 |
+
handler: function() {
|
7515 |
+
replaceClass(this.selTarget, this.clsInactive, this.clsActive);
|
7516 |
+
}
|
7517 |
+
|
7518 |
+
},
|
7519 |
+
|
7520 |
+
{
|
7521 |
+
name: 'inactive',
|
7522 |
+
|
7523 |
+
self: true,
|
7524 |
+
|
7525 |
+
handler: function() {
|
7526 |
+
replaceClass(this.selTarget, this.clsActive, this.clsInactive);
|
7527 |
+
}
|
7528 |
+
|
7529 |
+
},
|
7530 |
+
|
7531 |
+
{
|
7532 |
+
|
7533 |
+
name: 'load hashchange popstate',
|
7534 |
+
|
7535 |
+
el: window,
|
7536 |
+
|
7537 |
+
handler: function() {
|
7538 |
+
var this$1 = this;
|
7539 |
+
|
7540 |
+
|
7541 |
+
if (!(this.targetOffset !== false && location.hash && window.pageYOffset > 0)) {
|
7542 |
+
return;
|
7543 |
+
}
|
7544 |
+
|
7545 |
+
var target = $(location.hash);
|
7546 |
+
|
7547 |
+
if (target) {
|
7548 |
+
fastdom.read(function () {
|
7549 |
+
|
7550 |
+
var ref = offset(target);
|
7551 |
+
var top = ref.top;
|
7552 |
+
var elTop = offset(this$1.$el).top;
|
7553 |
+
var elHeight = this$1.$el.offsetHeight;
|
7554 |
+
|
7555 |
+
if (this$1.isActive && elTop + elHeight >= top && elTop <= top + target.offsetHeight) {
|
7556 |
+
scrollTop(window, top - elHeight - (isNumeric(this$1.targetOffset) ? this$1.targetOffset : 0) - this$1.offset);
|
7557 |
+
}
|
7558 |
+
|
7559 |
+
});
|
7560 |
+
}
|
7561 |
+
|
7562 |
+
}
|
7563 |
+
|
7564 |
+
}
|
7565 |
+
|
7566 |
+
],
|
7567 |
+
|
7568 |
+
update: [
|
7569 |
+
|
7570 |
+
{
|
7571 |
+
|
7572 |
+
read: function(ref, ref$1) {
|
7573 |
+
var height$$1 = ref.height;
|
7574 |
+
var type = ref$1.type;
|
7575 |
+
|
7576 |
+
|
7577 |
+
height$$1 = !this.isActive || type === 'resize' ? this.$el.offsetHeight : height$$1;
|
7578 |
+
|
7579 |
+
this.topOffset = offset(this.isActive ? this.placeholder : this.$el).top;
|
7580 |
+
this.bottomOffset = this.topOffset + height$$1;
|
7581 |
+
|
7582 |
+
var bottom = parseProp('bottom', this);
|
7583 |
+
|
7584 |
+
this.top = Math.max(toFloat(parseProp('top', this)), this.topOffset) - this.offset;
|
7585 |
+
this.bottom = bottom && bottom - height$$1;
|
7586 |
+
this.inactive = !this.matchMedia;
|
7587 |
+
|
7588 |
+
return {
|
7589 |
+
height: height$$1,
|
7590 |
+
margins: css(this.$el, ['marginTop', 'marginBottom', 'marginLeft', 'marginRight'])
|
7591 |
+
};
|
7592 |
+
},
|
7593 |
+
|
7594 |
+
write: function(ref) {
|
7595 |
+
var height$$1 = ref.height;
|
7596 |
+
var margins = ref.margins;
|
7597 |
+
|
7598 |
+
|
7599 |
+
var ref$1 = this;
|
7600 |
+
var placeholder = ref$1.placeholder;
|
7601 |
+
|
7602 |
+
css(placeholder, assign({height: height$$1}, margins));
|
7603 |
+
|
7604 |
+
if (!within(placeholder, document)) {
|
7605 |
+
after(this.$el, placeholder);
|
7606 |
+
attr(placeholder, 'hidden', '');
|
7607 |
+
}
|
7608 |
+
|
7609 |
+
if (isUndefined(this.isActive)) {
|
7610 |
+
this.hide();
|
7611 |
+
}
|
7612 |
+
|
7613 |
+
},
|
7614 |
+
|
7615 |
+
events: ['load', 'resize']
|
7616 |
+
|
7617 |
+
},
|
7618 |
+
|
7619 |
+
{
|
7620 |
+
|
7621 |
+
read: function(_, ref) {
|
7622 |
+
var scrollY = ref.scrollY; if ( scrollY === void 0 ) scrollY = window.pageYOffset;
|
7623 |
+
|
7624 |
+
|
7625 |
+
this.width = (isVisible(this.widthElement) ? this.widthElement : this.$el).offsetWidth;
|
7626 |
+
|
7627 |
+
return {
|
7628 |
+
scroll: this.scroll = scrollY,
|
7629 |
+
visible: isVisible(this.$el)
|
7630 |
+
};
|
7631 |
+
},
|
7632 |
+
|
7633 |
+
write: function(ref, ref$1) {
|
7634 |
+
var this$1 = this;
|
7635 |
+
var visible = ref.visible;
|
7636 |
+
var scroll = ref.scroll;
|
7637 |
+
if ( ref$1 === void 0 ) ref$1 = {};
|
7638 |
+
var dir = ref$1.dir;
|
7639 |
+
|
7640 |
+
|
7641 |
+
if (scroll < 0 || !visible || this.disabled || this.showOnUp && !dir) {
|
7642 |
+
return;
|
7643 |
+
}
|
7644 |
+
|
7645 |
+
if (this.inactive
|
7646 |
+
|| scroll < this.top
|
7647 |
+
|| this.showOnUp && (scroll <= this.top || dir === 'down' || dir === 'up' && !this.isActive && scroll <= this.bottomOffset)
|
7648 |
+
) {
|
7649 |
+
|
7650 |
+
if (!this.isActive) {
|
7651 |
+
return;
|
7652 |
+
}
|
7653 |
+
|
7654 |
+
this.isActive = false;
|
7655 |
+
|
7656 |
+
if (this.animation && scroll > this.topOffset) {
|
7657 |
+
Animation.cancel(this.$el);
|
7658 |
+
Animation.out(this.$el, this.animation).then(function () { return this$1.hide(); }, noop);
|
7659 |
+
} else {
|
7660 |
+
this.hide();
|
7661 |
+
}
|
7662 |
+
|
7663 |
+
} else if (this.isActive) {
|
7664 |
+
|
7665 |
+
this.update();
|
7666 |
+
|
7667 |
+
} else if (this.animation) {
|
7668 |
+
|
7669 |
+
Animation.cancel(this.$el);
|
7670 |
+
this.show();
|
7671 |
+
Animation.in(this.$el, this.animation).catch(noop);
|
7672 |
+
|
7673 |
+
} else {
|
7674 |
+
this.show();
|
7675 |
+
}
|
7676 |
+
|
7677 |
+
},
|
7678 |
+
|
7679 |
+
events: ['load', 'resize', 'scroll']
|
7680 |
+
|
7681 |
+
} ],
|
7682 |
+
|
7683 |
+
methods: {
|
7684 |
+
|
7685 |
+
show: function() {
|
7686 |
+
|
7687 |
+
this.isActive = true;
|
7688 |
+
this.update();
|
7689 |
+
attr(this.placeholder, 'hidden', null);
|
7690 |
+
|
7691 |
+
},
|
7692 |
+
|
7693 |
+
hide: function() {
|
7694 |
+
|
7695 |
+
if (!this.isActive || hasClass(this.selTarget, this.clsActive)) {
|
7696 |
+
trigger(this.$el, 'inactive');
|
7697 |
+
}
|
7698 |
+
|
7699 |
+
removeClass(this.$el, this.clsFixed, this.clsBelow);
|
7700 |
+
css(this.$el, {position: '', top: '', width: ''});
|
7701 |
+
attr(this.placeholder, 'hidden', '');
|
7702 |
+
|
7703 |
+
},
|
7704 |
+
|
7705 |
+
update: function() {
|
7706 |
+
|
7707 |
+
var active = this.top !== 0 || this.scroll > this.top;
|
7708 |
+
var top = Math.max(0, this.offset);
|
7709 |
+
|
7710 |
+
if (this.bottom && this.scroll > this.bottom - this.offset) {
|
7711 |
+
top = this.bottom - this.scroll;
|
7712 |
+
}
|
7713 |
+
|
7714 |
+
css(this.$el, {
|
7715 |
+
position: 'fixed',
|
7716 |
+
top: (top + "px"),
|
7717 |
+
width: this.width
|
7718 |
+
});
|
7719 |
+
|
7720 |
+
if (hasClass(this.selTarget, this.clsActive)) {
|
7721 |
+
|
7722 |
+
if (!active) {
|
7723 |
+
trigger(this.$el, 'inactive');
|
7724 |
+
}
|
7725 |
+
|
7726 |
+
} else if (active) {
|
7727 |
+
trigger(this.$el, 'active');
|
7728 |
+
}
|
7729 |
+
|
7730 |
+
toggleClass(this.$el, this.clsBelow, this.scroll > this.bottomOffset);
|
7731 |
+
addClass(this.$el, this.clsFixed);
|
7732 |
+
|
7733 |
+
}
|
7734 |
+
|
7735 |
+
}
|
7736 |
+
|
7737 |
+
};
|
7738 |
+
|
7739 |
+
function parseProp(prop, ref) {
|
7740 |
+
var $props = ref.$props;
|
7741 |
+
var $el = ref.$el;
|
7742 |
+
var propOffset = ref[(prop + "Offset")];
|
7743 |
+
|
7744 |
+
|
7745 |
+
var value = $props[prop];
|
7746 |
+
|
7747 |
+
if (!value) {
|
7748 |
+
return;
|
7749 |
+
}
|
7750 |
+
|
7751 |
+
if (isNumeric(value)) {
|
7752 |
+
|
7753 |
+
return propOffset + toFloat(value);
|
7754 |
+
|
7755 |
+
} else if (isString(value) && value.match(/^-?\d+vh$/)) {
|
7756 |
+
|
7757 |
+
return height(window) * toFloat(value) / 100;
|
7758 |
+
|
7759 |
+
} else {
|
7760 |
+
|
7761 |
+
var el = value === true ? $el.parentNode : query(value, $el);
|
7762 |
+
|
7763 |
+
if (el) {
|
7764 |
+
return offset(el).top + el.offsetHeight;
|
7765 |
+
}
|
7766 |
+
|
7767 |
+
}
|
7768 |
+
}
|
7769 |
+
|
7770 |
+
var Switcher = {
|
7771 |
+
|
7772 |
+
mixins: [Togglable],
|
7773 |
+
|
7774 |
+
args: 'connect',
|
7775 |
+
|
7776 |
+
props: {
|
7777 |
+
connect: String,
|
7778 |
+
toggle: String,
|
7779 |
+
active: Number,
|
7780 |
+
swiping: Boolean
|
7781 |
+
},
|
7782 |
+
|
7783 |
+
data: {
|
7784 |
+
connect: '~.uk-switcher',
|
7785 |
+
toggle: '> *',
|
7786 |
+
active: 0,
|
7787 |
+
swiping: true,
|
7788 |
+
cls: 'uk-active',
|
7789 |
+
clsContainer: 'uk-switcher',
|
7790 |
+
attrItem: 'uk-switcher-item',
|
7791 |
+
queued: true
|
7792 |
+
},
|
7793 |
+
|
7794 |
+
computed: {
|
7795 |
+
|
7796 |
+
connects: function(ref, $el) {
|
7797 |
+
var connect = ref.connect;
|
7798 |
+
|
7799 |
+
return queryAll(connect, $el);
|
7800 |
+
},
|
7801 |
+
|
7802 |
+
toggles: function(ref, $el) {
|
7803 |
+
var toggle = ref.toggle;
|
7804 |
+
|
7805 |
+
return $$(toggle, $el);
|
7806 |
+
}
|
7807 |
+
|
7808 |
+
},
|
7809 |
+
|
7810 |
+
events: [
|
7811 |
+
|
7812 |
+
{
|
7813 |
+
|
7814 |
+
name: 'click',
|
7815 |
+
|
7816 |
+
delegate: function() {
|
7817 |
+
return ((this.toggle) + ":not(.uk-disabled)");
|
7818 |
+
},
|
7819 |
+
|
7820 |
+
handler: function(e) {
|
7821 |
+
e.preventDefault();
|
7822 |
+
this.show(e.current);
|
7823 |
+
}
|
7824 |
+
|
7825 |
+
},
|
7826 |
+
|
7827 |
+
{
|
7828 |
+
name: 'click',
|
7829 |
+
|
7830 |
+
el: function() {
|
7831 |
+
return this.connects;
|
7832 |
+
},
|
7833 |
+
|
7834 |
+
delegate: function() {
|
7835 |
+
return ("[" + (this.attrItem) + "],[data-" + (this.attrItem) + "]");
|
7836 |
+
},
|
7837 |
+
|
7838 |
+
handler: function(e) {
|
7839 |
+
e.preventDefault();
|
7840 |
+
this.show(data(e.current, this.attrItem));
|
7841 |
+
}
|
7842 |
+
},
|
7843 |
+
|
7844 |
+
{
|
7845 |
+
name: 'swipeRight swipeLeft',
|
7846 |
+
|
7847 |
+
filter: function() {
|
7848 |
+
return this.swiping;
|
7849 |
+
},
|
7850 |
+
|
7851 |
+
el: function() {
|
7852 |
+
return this.connects;
|
7853 |
+
},
|
7854 |
+
|
7855 |
+
handler: function(e) {
|
7856 |
+
if (!isTouch(e)) {
|
7857 |
+
return;
|
7858 |
+
}
|
7859 |
+
|
7860 |
+
e.preventDefault();
|
7861 |
+
if (!window.getSelection().toString()) {
|
7862 |
+
this.show(e.type === 'swipeLeft' ? 'next' : 'previous');
|
7863 |
+
}
|
7864 |
+
}
|
7865 |
+
}
|
7866 |
+
|
7867 |
+
],
|
7868 |
+
|
7869 |
+
update: function() {
|
7870 |
+
var this$1 = this;
|
7871 |
+
|
7872 |
+
|
7873 |
+
this.connects.forEach(function (list) { return this$1.updateAria(list.children); });
|
7874 |
+
this.show(filter(this.toggles, ("." + (this.cls)))[0] || this.toggles[this.active] || this.toggles[0]);
|
7875 |
+
|
7876 |
+
},
|
7877 |
+
|
7878 |
+
methods: {
|
7879 |
+
|
7880 |
+
index: function() {
|
7881 |
+
return !!this.connects.length && index(filter(this.connects[0].children, ("." + (this.cls)))[0]);
|
7882 |
+
},
|
7883 |
+
|
7884 |
+
show: function(item) {
|
7885 |
+
var this$1 = this;
|
7886 |
+
|
7887 |
+
|
7888 |
+
var ref = this.toggles;
|
7889 |
+
var length = ref.length;
|
7890 |
+
var prev = this.index();
|
7891 |
+
var hasPrev = prev >= 0;
|
7892 |
+
var dir = item === 'previous' ? -1 : 1;
|
7893 |
+
|
7894 |
+
var toggle, next = getIndex(item, this.toggles, prev);
|
7895 |
+
|
7896 |
+
for (var i = 0; i < length; i++, next = (next + dir + length) % length) {
|
7897 |
+
if (!matches(this$1.toggles[next], '.uk-disabled, [disabled]')) {
|
7898 |
+
toggle = this$1.toggles[next];
|
7899 |
+
break;
|
7900 |
+
}
|
7901 |
+
}
|
7902 |
+
|
7903 |
+
if (!toggle || prev >= 0 && hasClass(toggle, this.cls) || prev === next) {
|
7904 |
+
return;
|
7905 |
+
}
|
7906 |
+
|
7907 |
+
removeClass(this.toggles, this.cls);
|
7908 |
+
attr(this.toggles, 'aria-expanded', false);
|
7909 |
+
addClass(toggle, this.cls);
|
7910 |
+
attr(toggle, 'aria-expanded', true);
|
7911 |
+
|
7912 |
+
this.connects.forEach(function (list) {
|
7913 |
+
if (!hasPrev) {
|
7914 |
+
this$1.toggleNow(list.children[next]);
|
7915 |
+
} else {
|
7916 |
+
this$1.toggleElement([list.children[prev], list.children[next]]);
|
7917 |
+
}
|
7918 |
+
});
|
7919 |
+
|
7920 |
+
}
|
7921 |
+
|
7922 |
+
}
|
7923 |
+
|
7924 |
+
};
|
7925 |
+
|
7926 |
+
var Tab = {
|
7927 |
+
|
7928 |
+
mixins: [Class],
|
7929 |
+
|
7930 |
+
extends: Switcher,
|
7931 |
+
|
7932 |
+
props: {
|
7933 |
+
media: Boolean
|
7934 |
+
},
|
7935 |
+
|
7936 |
+
data: {
|
7937 |
+
media: 960,
|
7938 |
+
attrItem: 'uk-tab-item'
|
7939 |
+
},
|
7940 |
+
|
7941 |
+
connected: function() {
|
7942 |
+
|
7943 |
+
var cls = hasClass(this.$el, 'uk-tab-left')
|
7944 |
+
? 'uk-tab-left'
|
7945 |
+
: hasClass(this.$el, 'uk-tab-right')
|
7946 |
+
? 'uk-tab-right'
|
7947 |
+
: false;
|
7948 |
+
|
7949 |
+
if (cls) {
|
7950 |
+
this.$create('toggle', this.$el, {cls: cls, mode: 'media', media: this.media});
|
7951 |
+
}
|
7952 |
+
}
|
7953 |
+
|
7954 |
+
};
|
7955 |
+
|
7956 |
+
var Toggle = {
|
7957 |
+
|
7958 |
+
mixins: [Media, Togglable],
|
7959 |
+
|
7960 |
+
args: 'target',
|
7961 |
+
|
7962 |
+
props: {
|
7963 |
+
href: String,
|
7964 |
+
target: null,
|
7965 |
+
mode: 'list',
|
7966 |
+
},
|
7967 |
+
|
7968 |
+
data: {
|
7969 |
+
href: false,
|
7970 |
+
target: false,
|
7971 |
+
mode: 'click',
|
7972 |
+
queued: true,
|
7973 |
+
},
|
7974 |
+
|
7975 |
+
computed: {
|
7976 |
+
|
7977 |
+
target: function(ref, $el) {
|
7978 |
+
var href = ref.href;
|
7979 |
+
var target = ref.target;
|
7980 |
+
|
7981 |
+
target = queryAll(target || href, $el);
|
7982 |
+
return target.length && target || [$el];
|
7983 |
+
}
|
7984 |
+
|
7985 |
+
},
|
7986 |
+
|
7987 |
+
events: [
|
7988 |
+
|
7989 |
+
{
|
7990 |
+
|
7991 |
+
name: (pointerEnter + " " + pointerLeave),
|
7992 |
+
|
7993 |
+
filter: function() {
|
7994 |
+
return includes(this.mode, 'hover');
|
7995 |
+
},
|
7996 |
+
|
7997 |
+
handler: function(e) {
|
7998 |
+
if (!isTouch(e)) {
|
7999 |
+
this.toggle(("toggle" + (e.type === pointerEnter ? 'show' : 'hide')));
|
8000 |
+
}
|
8001 |
+
}
|
8002 |
+
|
8003 |
+
},
|
8004 |
+
|
8005 |
+
{
|
8006 |
+
|
8007 |
+
name: 'click',
|
8008 |
+
|
8009 |
+
filter: function() {
|
8010 |
+
return includes(this.mode, 'click') || hasTouch && includes(this.mode, 'hover');
|
8011 |
+
},
|
8012 |
+
|
8013 |
+
handler: function(e) {
|
8014 |
+
|
8015 |
+
if (!isTouch(e) && !includes(this.mode, 'click')) {
|
8016 |
+
return;
|
8017 |
+
}
|
8018 |
+
|
8019 |
+
// TODO better isToggled handling
|
8020 |
+
var link;
|
8021 |
+
if (closest(e.target, 'a[href="#"], button')
|
8022 |
+
|| (link = closest(e.target, 'a[href]')) && (
|
8023 |
+
this.cls
|
8024 |
+
|| !isVisible(this.target)
|
8025 |
+
|| link.hash && matches(this.target, link.hash)
|
8026 |
+
)
|
8027 |
+
) {
|
8028 |
+
once(document, 'click', function (e) { return e.preventDefault(); });
|
8029 |
+
}
|
8030 |
+
|
8031 |
+
this.toggle();
|
8032 |
+
}
|
8033 |
+
|
8034 |
+
}
|
8035 |
+
],
|
8036 |
+
|
8037 |
+
update: {
|
8038 |
+
|
8039 |
+
write: function() {
|
8040 |
+
|
8041 |
+
if (!includes(this.mode, 'media') || !this.media) {
|
8042 |
+
return;
|
8043 |
+
}
|
8044 |
+
|
8045 |
+
var toggled = this.isToggled(this.target);
|
8046 |
+
if (this.matchMedia ? !toggled : toggled) {
|
8047 |
+
this.toggle();
|
8048 |
+
}
|
8049 |
+
|
8050 |
+
},
|
8051 |
+
|
8052 |
+
events: ['load', 'resize']
|
8053 |
+
|
8054 |
+
},
|
8055 |
+
|
8056 |
+
methods: {
|
8057 |
+
|
8058 |
+
toggle: function(type) {
|
8059 |
+
if (trigger(this.target, type || 'toggle', [this])) {
|
8060 |
+
this.toggleElement(this.target);
|
8061 |
+
}
|
8062 |
+
}
|
8063 |
+
|
8064 |
+
}
|
8065 |
+
|
8066 |
+
};
|
8067 |
+
|
8068 |
+
function core (UIkit) {
|
8069 |
+
|
8070 |
+
// core components
|
8071 |
+
UIkit.component('accordion', Accordion);
|
8072 |
+
UIkit.component('alert', Alert);
|
8073 |
+
UIkit.component('cover', Cover);
|
8074 |
+
UIkit.component('drop', Drop);
|
8075 |
+
UIkit.component('dropdown', Dropdown);
|
8076 |
+
UIkit.component('formCustom', FormCustom);
|
8077 |
+
UIkit.component('gif', Gif);
|
8078 |
+
UIkit.component('grid', Grid);
|
8079 |
+
UIkit.component('heightMatch', HeightMatch);
|
8080 |
+
UIkit.component('heightViewport', HeightViewport);
|
8081 |
+
UIkit.component('icon', Icon);
|
8082 |
+
UIkit.component('img', Img);
|
8083 |
+
UIkit.component('leader', Leader);
|
8084 |
+
UIkit.component('margin', Margin);
|
8085 |
+
UIkit.component('modal', Modal$1);
|
8086 |
+
UIkit.component('nav', Nav);
|
8087 |
+
UIkit.component('navbar', Navbar);
|
8088 |
+
UIkit.component('offcanvas', Offcanvas);
|
8089 |
+
UIkit.component('overflowAuto', OverflowAuto);
|
8090 |
+
UIkit.component('responsive', Responsive);
|
8091 |
+
UIkit.component('scroll', Scroll);
|
8092 |
+
UIkit.component('scrollspy', Scrollspy);
|
8093 |
+
UIkit.component('scrollspyNav', ScrollspyNav);
|
8094 |
+
UIkit.component('sticky', Sticky);
|
8095 |
+
UIkit.component('svg', SVG);
|
8096 |
+
UIkit.component('switcher', Switcher);
|
8097 |
+
UIkit.component('tab', Tab);
|
8098 |
+
UIkit.component('toggle', Toggle);
|
8099 |
+
UIkit.component('video', Video);
|
8100 |
+
|
8101 |
+
// Icon components
|
8102 |
+
UIkit.component('close', Close);
|
8103 |
+
UIkit.component('marker', IconComponent);
|
8104 |
+
UIkit.component('navbarToggleIcon', IconComponent);
|
8105 |
+
UIkit.component('overlayIcon', IconComponent);
|
8106 |
+
UIkit.component('paginationNext', IconComponent);
|
8107 |
+
UIkit.component('paginationPrevious', IconComponent);
|
8108 |
+
UIkit.component('searchIcon', Search);
|
8109 |
+
UIkit.component('slidenavNext', Slidenav);
|
8110 |
+
UIkit.component('slidenavPrevious', Slidenav);
|
8111 |
+
UIkit.component('spinner', Spinner);
|
8112 |
+
UIkit.component('totop', IconComponent);
|
8113 |
+
|
8114 |
+
// core functionality
|
8115 |
+
UIkit.use(Core);
|
8116 |
+
|
8117 |
+
}
|
8118 |
+
|
8119 |
+
UIkit.version = '3.0.0-rc.19';
|
8120 |
+
|
8121 |
+
core(UIkit);
|
8122 |
+
|
8123 |
+
var Countdown = {
|
8124 |
+
|
8125 |
+
mixins: [Class],
|
8126 |
+
|
8127 |
+
props: {
|
8128 |
+
date: String,
|
8129 |
+
clsWrapper: String
|
8130 |
+
},
|
8131 |
+
|
8132 |
+
data: {
|
8133 |
+
date: '',
|
8134 |
+
clsWrapper: '.uk-countdown-%unit%'
|
8135 |
+
},
|
8136 |
+
|
8137 |
+
computed: {
|
8138 |
+
|
8139 |
+
date: function(ref) {
|
8140 |
+
var date = ref.date;
|
8141 |
+
|
8142 |
+
return Date.parse(date);
|
8143 |
+
},
|
8144 |
+
|
8145 |
+
days: function(ref, $el) {
|
8146 |
+
var clsWrapper = ref.clsWrapper;
|
8147 |
+
|
8148 |
+
return $(clsWrapper.replace('%unit%', 'days'), $el);
|
8149 |
+
},
|
8150 |
+
|
8151 |
+
hours: function(ref, $el) {
|
8152 |
+
var clsWrapper = ref.clsWrapper;
|
8153 |
+
|
8154 |
+
return $(clsWrapper.replace('%unit%', 'hours'), $el);
|
8155 |
+
},
|
8156 |
+
|
8157 |
+
minutes: function(ref, $el) {
|
8158 |
+
var clsWrapper = ref.clsWrapper;
|
8159 |
+
|
8160 |
+
return $(clsWrapper.replace('%unit%', 'minutes'), $el);
|
8161 |
+
},
|
8162 |
+
|
8163 |
+
seconds: function(ref, $el) {
|
8164 |
+
var clsWrapper = ref.clsWrapper;
|
8165 |
+
|
8166 |
+
return $(clsWrapper.replace('%unit%', 'seconds'), $el);
|
8167 |
+
},
|
8168 |
+
|
8169 |
+
units: function() {
|
8170 |
+
var this$1 = this;
|
8171 |
+
|
8172 |
+
return ['days', 'hours', 'minutes', 'seconds'].filter(function (unit) { return this$1[unit]; });
|
8173 |
+
}
|
8174 |
+
|
8175 |
+
},
|
8176 |
+
|
8177 |
+
connected: function() {
|
8178 |
+
this.start();
|
8179 |
+
},
|
8180 |
+
|
8181 |
+
disconnected: function() {
|
8182 |
+
var this$1 = this;
|
8183 |
+
|
8184 |
+
this.stop();
|
8185 |
+
this.units.forEach(function (unit) { return empty(this$1[unit]); });
|
8186 |
+
},
|
8187 |
+
|
8188 |
+
events: [
|
8189 |
+
|
8190 |
+
{
|
8191 |
+
|
8192 |
+
name: 'visibilitychange',
|
8193 |
+
|
8194 |
+
el: document,
|
8195 |
+
|
8196 |
+
handler: function() {
|
8197 |
+
if (document.hidden) {
|
8198 |
+
this.stop();
|
8199 |
+
} else {
|
8200 |
+
this.start();
|
8201 |
+
}
|
8202 |
+
}
|
8203 |
+
|
8204 |
+
}
|
8205 |
+
|
8206 |
+
],
|
8207 |
+
|
8208 |
+
update: {
|
8209 |
+
|
8210 |
+
write: function() {
|
8211 |
+
var this$1 = this;
|
8212 |
+
|
8213 |
+
|
8214 |
+
var timespan = getTimeSpan(this.date);
|
8215 |
+
|
8216 |
+
if (timespan.total <= 0) {
|
8217 |
+
|
8218 |
+
this.stop();
|
8219 |
+
|
8220 |
+
timespan.days
|
8221 |
+
= timespan.hours
|
8222 |
+
= timespan.minutes
|
8223 |
+
= timespan.seconds
|
8224 |
+
= 0;
|
8225 |
+
}
|
8226 |
+
|
8227 |
+
this.units.forEach(function (unit) {
|
8228 |
+
|
8229 |
+
var digits = String(Math.floor(timespan[unit]));
|
8230 |
+
|
8231 |
+
digits = digits.length < 2 ? ("0" + digits) : digits;
|
8232 |
+
|
8233 |
+
var el = this$1[unit];
|
8234 |
+
if (el.textContent !== digits) {
|
8235 |
+
digits = digits.split('');
|
8236 |
+
|
8237 |
+
if (digits.length !== el.children.length) {
|
8238 |
+
html(el, digits.map(function () { return '<span></span>'; }).join(''));
|
8239 |
+
}
|
8240 |
+
|
8241 |
+
digits.forEach(function (digit, i) { return el.children[i].textContent = digit; });
|
8242 |
+
}
|
8243 |
+
|
8244 |
+
});
|
8245 |
+
|
8246 |
+
}
|
8247 |
+
|
8248 |
+
},
|
8249 |
+
|
8250 |
+
methods: {
|
8251 |
+
|
8252 |
+
start: function() {
|
8253 |
+
var this$1 = this;
|
8254 |
+
|
8255 |
+
|
8256 |
+
this.stop();
|
8257 |
+
|
8258 |
+
if (this.date && this.units.length) {
|
8259 |
+
this.$emit();
|
8260 |
+
this.timer = setInterval(function () { return this$1.$emit(); }, 1000);
|
8261 |
+
}
|
8262 |
+
|
8263 |
+
},
|
8264 |
+
|
8265 |
+
stop: function() {
|
8266 |
+
|
8267 |
+
if (this.timer) {
|
8268 |
+
clearInterval(this.timer);
|
8269 |
+
this.timer = null;
|
8270 |
+
}
|
8271 |
+
|
8272 |
+
}
|
8273 |
+
|
8274 |
+
}
|
8275 |
+
|
8276 |
+
};
|
8277 |
+
|
8278 |
+
function getTimeSpan(date) {
|
8279 |
+
|
8280 |
+
var total = date - Date.now();
|
8281 |
+
|
8282 |
+
return {
|
8283 |
+
total: total,
|
8284 |
+
seconds: total / 1000 % 60,
|
8285 |
+
minutes: total / 1000 / 60 % 60,
|
8286 |
+
hours: total / 1000 / 60 / 60 % 24,
|
8287 |
+
days: total / 1000 / 60 / 60 / 24
|
8288 |
+
};
|
8289 |
+
}
|
8290 |
+
|
8291 |
+
var targetClass = 'uk-animation-target';
|
8292 |
+
|
8293 |
+
var Animate = {
|
8294 |
+
|
8295 |
+
props: {
|
8296 |
+
animation: Number
|
8297 |
+
},
|
8298 |
+
|
8299 |
+
data: {
|
8300 |
+
animation: 150
|
8301 |
+
},
|
8302 |
+
|
8303 |
+
computed: {
|
8304 |
+
|
8305 |
+
target: function() {
|
8306 |
+
return this.$el;
|
8307 |
+
}
|
8308 |
+
|
8309 |
+
},
|
8310 |
+
|
8311 |
+
methods: {
|
8312 |
+
|
8313 |
+
animate: function(action) {
|
8314 |
+
var this$1 = this;
|
8315 |
+
|
8316 |
+
|
8317 |
+
addStyle();
|
8318 |
+
|
8319 |
+
var children = toNodes(this.target.children);
|
8320 |
+
var propsFrom = children.map(function (el) { return getProps(el, true); });
|
8321 |
+
|
8322 |
+
var oldHeight = height(this.target);
|
8323 |
+
var oldScrollY = window.pageYOffset;
|
8324 |
+
|
8325 |
+
action();
|
8326 |
+
|
8327 |
+
Transition.cancel(this.target);
|
8328 |
+
children.forEach(Transition.cancel);
|
8329 |
+
|
8330 |
+
reset(this.target);
|
8331 |
+
this.$update(this.target);
|
8332 |
+
fastdom.flush();
|
8333 |
+
|
8334 |
+
var newHeight = height(this.target);
|
8335 |
+
|
8336 |
+
children = children.concat(toNodes(this.target.children).filter(function (el) { return !includes(children, el); }));
|
8337 |
+
|
8338 |
+
var propsTo = children.map(function (el, i) { return el.parentNode && i in propsFrom
|
8339 |
+
? propsFrom[i]
|
8340 |
+
? isVisible(el)
|
8341 |
+
? getPositionWithMargin(el)
|
8342 |
+
: {opacity: 0}
|
8343 |
+
: {opacity: isVisible(el) ? 1 : 0}
|
8344 |
+
: false; }
|
8345 |
+
);
|
8346 |
+
|
8347 |
+
propsFrom = propsTo.map(function (props, i) {
|
8348 |
+
var from = children[i].parentNode === this$1.target
|
8349 |
+
? propsFrom[i] || getProps(children[i])
|
8350 |
+
: false;
|
8351 |
+
|
8352 |
+
if (from) {
|
8353 |
+
if (!props) {
|
8354 |
+
delete from.opacity;
|
8355 |
+
} else if (!('opacity' in props)) {
|
8356 |
+
var opacity = from.opacity;
|
8357 |
+
|
8358 |
+
if (opacity % 1) {
|
8359 |
+
props.opacity = 1;
|
8360 |
+
} else {
|
8361 |
+
delete from.opacity;
|
8362 |
+
}
|
8363 |
+
}
|
8364 |
+
}
|
8365 |
+
|
8366 |
+
return from;
|
8367 |
+
});
|
8368 |
+
|
8369 |
+
addClass(this.target, targetClass);
|
8370 |
+
children.forEach(function (el, i) { return propsFrom[i] && css(el, propsFrom[i]); });
|
8371 |
+
css(this.target, 'height', oldHeight);
|
8372 |
+
scrollTop(window, oldScrollY);
|
8373 |
+
|
8374 |
+
return Promise.all(children.map(function (el, i) { return propsFrom[i] && propsTo[i]
|
8375 |
+
? Transition.start(el, propsTo[i], this$1.animation, 'ease')
|
8376 |
+
: Promise.resolve(); }
|
8377 |
+
).concat(Transition.start(this.target, {height: newHeight}, this.animation, 'ease'))).then(function () {
|
8378 |
+
children.forEach(function (el, i) { return css(el, {display: propsTo[i].opacity === 0 ? 'none' : '', zIndex: ''}); });
|
8379 |
+
reset(this$1.target);
|
8380 |
+
this$1.$update(this$1.target);
|
8381 |
+
fastdom.flush(); // needed for IE11
|
8382 |
+
}, noop);
|
8383 |
+
|
8384 |
+
}
|
8385 |
+
}
|
8386 |
+
};
|
8387 |
+
|
8388 |
+
function getProps(el, opacity) {
|
8389 |
+
|
8390 |
+
var zIndex = css(el, 'zIndex');
|
8391 |
+
|
8392 |
+
return isVisible(el)
|
8393 |
+
? assign({
|
8394 |
+
display: '',
|
8395 |
+
opacity: opacity ? css(el, 'opacity') : '0',
|
8396 |
+
pointerEvents: 'none',
|
8397 |
+
position: 'absolute',
|
8398 |
+
zIndex: zIndex === 'auto' ? index(el) : zIndex
|
8399 |
+
}, getPositionWithMargin(el))
|
8400 |
+
: false;
|
8401 |
+
}
|
8402 |
+
|
8403 |
+
function reset(el) {
|
8404 |
+
css(el.children, {
|
8405 |
+
height: '',
|
8406 |
+
left: '',
|
8407 |
+
opacity: '',
|
8408 |
+
pointerEvents: '',
|
8409 |
+
position: '',
|
8410 |
+
top: '',
|
8411 |
+
width: ''
|
8412 |
+
});
|
8413 |
+
removeClass(el, targetClass);
|
8414 |
+
css(el, 'height', '');
|
8415 |
+
}
|
8416 |
+
|
8417 |
+
function getPositionWithMargin(el) {
|
8418 |
+
var ref = el.getBoundingClientRect();
|
8419 |
+
var height$$1 = ref.height;
|
8420 |
+
var width$$1 = ref.width;
|
8421 |
+
var ref$1 = position(el);
|
8422 |
+
var top = ref$1.top;
|
8423 |
+
var left = ref$1.left;
|
8424 |
+
top += toFloat(css(el, 'marginTop'));
|
8425 |
+
|
8426 |
+
return {top: top, left: left, height: height$$1, width: width$$1};
|
8427 |
+
}
|
8428 |
+
|
8429 |
+
var style$1;
|
8430 |
+
|
8431 |
+
function addStyle() {
|
8432 |
+
if (!style$1) {
|
8433 |
+
style$1 = append(document.head, '<style>').sheet;
|
8434 |
+
style$1.insertRule(
|
8435 |
+
("." + targetClass + " > * {\n margin-top: 0 !important;\n transform: none !important;\n }"), 0
|
8436 |
+
);
|
8437 |
+
}
|
8438 |
+
}
|
8439 |
+
|
8440 |
+
var Filter = {
|
8441 |
+
|
8442 |
+
mixins: [Animate],
|
8443 |
+
|
8444 |
+
args: 'target',
|
8445 |
+
|
8446 |
+
props: {
|
8447 |
+
target: Boolean,
|
8448 |
+
selActive: Boolean
|
8449 |
+
},
|
8450 |
+
|
8451 |
+
data: {
|
8452 |
+
target: null,
|
8453 |
+
selActive: false,
|
8454 |
+
attrItem: 'uk-filter-control',
|
8455 |
+
cls: 'uk-active',
|
8456 |
+
animation: 250
|
8457 |
+
},
|
8458 |
+
|
8459 |
+
computed: {
|
8460 |
+
|
8461 |
+
toggles: function(ref, $el) {
|
8462 |
+
var attrItem = ref.attrItem;
|
8463 |
+
|
8464 |
+
return $$(("[" + (this.attrItem) + "],[data-" + (this.attrItem) + "]"), $el);
|
8465 |
+
},
|
8466 |
+
|
8467 |
+
target: function(ref, $el) {
|
8468 |
+
var target = ref.target;
|
8469 |
+
|
8470 |
+
return $(target, $el);
|
8471 |
+
}
|
8472 |
+
|
8473 |
+
},
|
8474 |
+
|
8475 |
+
events: [
|
8476 |
+
|
8477 |
+
{
|
8478 |
+
|
8479 |
+
name: 'click',
|
8480 |
+
|
8481 |
+
delegate: function() {
|
8482 |
+
return ("[" + (this.attrItem) + "],[data-" + (this.attrItem) + "]");
|
8483 |
+
},
|
8484 |
+
|
8485 |
+
handler: function(e) {
|
8486 |
+
|
8487 |
+
e.preventDefault();
|
8488 |
+
this.apply(e.current);
|
8489 |
+
|
8490 |
+
}
|
8491 |
+
|
8492 |
+
}
|
8493 |
+
|
8494 |
+
],
|
8495 |
+
|
8496 |
+
connected: function() {
|
8497 |
+
var this$1 = this;
|
8498 |
+
|
8499 |
+
|
8500 |
+
if (this.selActive === false) {
|
8501 |
+
return;
|
8502 |
+
}
|
8503 |
+
|
8504 |
+
var actives = $$(this.selActive, this.$el);
|
8505 |
+
this.toggles.forEach(function (el) { return toggleClass(el, this$1.cls, includes(actives, el)); });
|
8506 |
+
},
|
8507 |
+
|
8508 |
+
update: function(data$$1) {
|
8509 |
+
|
8510 |
+
var toggles = data$$1.toggles;
|
8511 |
+
var children = data$$1.children;
|
8512 |
+
if (isEqualList(toggles, this.toggles, false) && isEqualList(children, this.target.children, false)) {
|
8513 |
+
return;
|
8514 |
+
}
|
8515 |
+
|
8516 |
+
data$$1.toggles = this.toggles;
|
8517 |
+
data$$1.children = this.target.children;
|
8518 |
+
|
8519 |
+
this.setState(this.getState(), false);
|
8520 |
+
|
8521 |
+
},
|
8522 |
+
|
8523 |
+
methods: {
|
8524 |
+
|
8525 |
+
apply: function(el) {
|
8526 |
+
this.setState(mergeState(el, this.attrItem, this.getState()));
|
8527 |
+
},
|
8528 |
+
|
8529 |
+
getState: function() {
|
8530 |
+
var this$1 = this;
|
8531 |
+
|
8532 |
+
return this.toggles
|
8533 |
+
.filter(function (item) { return hasClass(item, this$1.cls); })
|
8534 |
+
.reduce(function (state, el) { return mergeState(el, this$1.attrItem, state); }, {filter: {'': ''}, sort: []});
|
8535 |
+
},
|
8536 |
+
|
8537 |
+
setState: function(state, animate$$1) {
|
8538 |
+
var this$1 = this;
|
8539 |
+
if ( animate$$1 === void 0 ) animate$$1 = true;
|
8540 |
+
|
8541 |
+
|
8542 |
+
state = assign({filter: {'': ''}, sort: []}, state);
|
8543 |
+
|
8544 |
+
trigger(this.$el, 'beforeFilter', [this, state]);
|
8545 |
+
|
8546 |
+
var children = toNodes(this.target.children);
|
8547 |
+
|
8548 |
+
this.toggles.forEach(function (el) { return toggleClass(el, this$1.cls, matchFilter(el, this$1.attrItem, state)); });
|
8549 |
+
|
8550 |
+
var apply$$1 = function () {
|
8551 |
+
|
8552 |
+
var selector = getSelector(state);
|
8553 |
+
|
8554 |
+
children.forEach(function (el) { return css(el, 'display', selector && !matches(el, selector) ? 'none' : ''); });
|
8555 |
+
|
8556 |
+
var ref = state.sort;
|
8557 |
+
var sort = ref[0];
|
8558 |
+
var order = ref[1];
|
8559 |
+
|
8560 |
+
if (sort) {
|
8561 |
+
var sorted = sortItems(children, sort, order);
|
8562 |
+
if (!isEqualList(sorted, children)) {
|
8563 |
+
sorted.forEach(function (el) { return append(this$1.target, el); });
|
8564 |
+
}
|
8565 |
+
}
|
8566 |
+
|
8567 |
+
};
|
8568 |
+
|
8569 |
+
if (animate$$1) {
|
8570 |
+
this.animate(apply$$1).then(function () { return trigger(this$1.$el, 'afterFilter', [this$1]); });
|
8571 |
+
} else {
|
8572 |
+
apply$$1();
|
8573 |
+
trigger(this.$el, 'afterFilter', [this]);
|
8574 |
+
}
|
8575 |
+
|
8576 |
+
}
|
8577 |
+
|
8578 |
+
}
|
8579 |
+
|
8580 |
+
};
|
8581 |
+
|
8582 |
+
function getFilter(el, attr$$1) {
|
8583 |
+
return parseOptions(data(el, attr$$1), ['filter']);
|
8584 |
+
}
|
8585 |
+
|
8586 |
+
function mergeState(el, attr$$1, state) {
|
8587 |
+
|
8588 |
+
toNodes(el).forEach(function (el) {
|
8589 |
+
var filterBy = getFilter(el, attr$$1);
|
8590 |
+
var filter$$1 = filterBy.filter;
|
8591 |
+
var group = filterBy.group;
|
8592 |
+
var sort = filterBy.sort;
|
8593 |
+
var order = filterBy.order; if ( order === void 0 ) order = 'asc';
|
8594 |
+
|
8595 |
+
if (filter$$1 || isUndefined(sort)) {
|
8596 |
+
|
8597 |
+
if (group) {
|
8598 |
+
delete state.filter[''];
|
8599 |
+
state.filter[group] = filter$$1;
|
8600 |
+
} else {
|
8601 |
+
state.filter = {'': filter$$1};
|
8602 |
+
}
|
8603 |
+
|
8604 |
+
}
|
8605 |
+
|
8606 |
+
if (!isUndefined(sort)) {
|
8607 |
+
state.sort = [sort, order];
|
8608 |
+
}
|
8609 |
+
});
|
8610 |
+
|
8611 |
+
return state;
|
8612 |
+
}
|
8613 |
+
|
8614 |
+
function matchFilter(el, attr$$1, ref) {
|
8615 |
+
var stateFilter = ref.filter;
|
8616 |
+
var ref_sort = ref.sort;
|
8617 |
+
var stateSort = ref_sort[0];
|
8618 |
+
var stateOrder = ref_sort[1];
|
8619 |
+
|
8620 |
+
var ref$1 = getFilter(el, attr$$1);
|
8621 |
+
var filter$$1 = ref$1.filter;
|
8622 |
+
var group = ref$1.group; if ( group === void 0 ) group = '';
|
8623 |
+
var sort = ref$1.sort;
|
8624 |
+
var order = ref$1.order; if ( order === void 0 ) order = 'asc';
|
8625 |
+
return Boolean(
|
8626 |
+
(filter$$1 || isUndefined(sort)) && group in stateFilter && (filter$$1 === stateFilter[group] || isUndefined(filter$$1) && !stateFilter[group])
|
8627 |
+
|| stateSort && sort && stateSort === sort && stateOrder === order
|
8628 |
+
);
|
8629 |
+
}
|
8630 |
+
|
8631 |
+
function isEqualList(listA, listB, strict) {
|
8632 |
+
if ( strict === void 0 ) strict = true;
|
8633 |
+
|
8634 |
+
|
8635 |
+
listA = toNodes(listA);
|
8636 |
+
listB = toNodes(listB);
|
8637 |
+
|
8638 |
+
return listA.length === listB.length
|
8639 |
+
&& listA.every(function (el, i) { return strict ? el === listB[i] : ~listB.indexOf(el); });
|
8640 |
+
}
|
8641 |
+
|
8642 |
+
function getSelector(ref) {
|
8643 |
+
var filter$$1 = ref.filter;
|
8644 |
+
|
8645 |
+
var selector = '';
|
8646 |
+
each(filter$$1, function (value) { return selector += value || ''; });
|
8647 |
+
return selector;
|
8648 |
+
}
|
8649 |
+
|
8650 |
+
function sortItems(nodes, sort, order) {
|
8651 |
+
return toNodes(nodes).sort(function (a, b) { return data(a, sort).localeCompare(data(b, sort), undefined, {numeric: true}) * (order === 'asc' || -1); });
|
8652 |
+
}
|
8653 |
+
|
8654 |
+
var Animations = {
|
8655 |
+
|
8656 |
+
slide: {
|
8657 |
+
|
8658 |
+
show: function(dir) {
|
8659 |
+
return [
|
8660 |
+
{transform: translate(dir * -100)},
|
8661 |
+
{transform: translate()}
|
8662 |
+
];
|
8663 |
+
},
|
8664 |
+
|
8665 |
+
percent: function(current) {
|
8666 |
+
return translated(current);
|
8667 |
+
},
|
8668 |
+
|
8669 |
+
translate: function(percent, dir) {
|
8670 |
+
return [
|
8671 |
+
{transform: translate(dir * -100 * percent)},
|
8672 |
+
{transform: translate(dir * 100 * (1 - percent))}
|
8673 |
+
];
|
8674 |
+
}
|
8675 |
+
|
8676 |
+
}
|
8677 |
+
|
8678 |
+
};
|
8679 |
+
|
8680 |
+
function translated(el) {
|
8681 |
+
return Math.abs(css(el, 'transform').split(',')[4] / el.offsetWidth) || 0;
|
8682 |
+
}
|
8683 |
+
|
8684 |
+
function translate(value, unit) {
|
8685 |
+
if ( value === void 0 ) value = 0;
|
8686 |
+
if ( unit === void 0 ) unit = '%';
|
8687 |
+
|
8688 |
+
return ("translateX(" + value + (value ? unit : '') + ")"); // currently not translate3d to support IE, translate3d within translate3d does not work while transitioning
|
8689 |
+
}
|
8690 |
+
|
8691 |
+
function scale3d(value) {
|
8692 |
+
return ("scale3d(" + value + ", " + value + ", 1)");
|
8693 |
+
}
|
8694 |
+
|
8695 |
+
var Animations$1 = assign({}, Animations, {
|
8696 |
+
|
8697 |
+
fade: {
|
8698 |
+
|
8699 |
+
show: function() {
|
8700 |
+
return [
|
8701 |
+
{opacity: 0},
|
8702 |
+
{opacity: 1}
|
8703 |
+
];
|
8704 |
+
},
|
8705 |
+
|
8706 |
+
percent: function(current) {
|
8707 |
+
return 1 - css(current, 'opacity');
|
8708 |
+
},
|
8709 |
+
|
8710 |
+
translate: function(percent) {
|
8711 |
+
return [
|
8712 |
+
{opacity: 1 - percent},
|
8713 |
+
{opacity: percent}
|
8714 |
+
];
|
8715 |
+
}
|
8716 |
+
|
8717 |
+
},
|
8718 |
+
|
8719 |
+
scale: {
|
8720 |
+
|
8721 |
+
show: function() {
|
8722 |
+
return [
|
8723 |
+
{opacity: 0, transform: scale3d(1 - .2)},
|
8724 |
+
{opacity: 1, transform: scale3d(1)}
|
8725 |
+
];
|
8726 |
+
},
|
8727 |
+
|
8728 |
+
percent: function(current) {
|
8729 |
+
return 1 - css(current, 'opacity');
|
8730 |
+
},
|
8731 |
+
|
8732 |
+
translate: function(percent) {
|
8733 |
+
return [
|
8734 |
+
{opacity: 1 - percent, transform: scale3d(1 - .2 * percent)},
|
8735 |
+
{opacity: percent, transform: scale3d(1 - .2 + .2 * percent)}
|
8736 |
+
];
|
8737 |
+
}
|
8738 |
+
|
8739 |
+
}
|
8740 |
+
|
8741 |
+
});
|
8742 |
+
|
8743 |
+
function Transitioner(prev, next, dir, ref) {
|
8744 |
+
var animation = ref.animation;
|
8745 |
+
var easing = ref.easing;
|
8746 |
+
|
8747 |
+
|
8748 |
+
var percent = animation.percent;
|
8749 |
+
var translate = animation.translate;
|
8750 |
+
var show = animation.show; if ( show === void 0 ) show = noop;
|
8751 |
+
var props = show(dir);
|
8752 |
+
var deferred = new Deferred();
|
8753 |
+
|
8754 |
+
return {
|
8755 |
+
|
8756 |
+
dir: dir,
|
8757 |
+
|
8758 |
+
show: function(duration, percent, linear) {
|
8759 |
+
var this$1 = this;
|
8760 |
+
if ( percent === void 0 ) percent = 0;
|
8761 |
+
|
8762 |
+
|
8763 |
+
var timing = linear ? 'linear' : easing;
|
8764 |
+
duration -= Math.round(duration * clamp(percent, -1, 1));
|
8765 |
+
|
8766 |
+
this.translate(percent);
|
8767 |
+
|
8768 |
+
triggerUpdate(next, 'itemin', {percent: percent, duration: duration, timing: timing, dir: dir});
|
8769 |
+
triggerUpdate(prev, 'itemout', {percent: 1 - percent, duration: duration, timing: timing, dir: dir});
|
8770 |
+
|
8771 |
+
Promise.all([
|
8772 |
+
Transition.start(next, props[1], duration, timing),
|
8773 |
+
Transition.start(prev, props[0], duration, timing)
|
8774 |
+
]).then(function () {
|
8775 |
+
this$1.reset();
|
8776 |
+
deferred.resolve();
|
8777 |
+
}, noop);
|
8778 |
+
|
8779 |
+
return deferred.promise;
|
8780 |
+
},
|
8781 |
+
|
8782 |
+
stop: function() {
|
8783 |
+
return Transition.stop([next, prev]);
|
8784 |
+
},
|
8785 |
+
|
8786 |
+
cancel: function() {
|
8787 |
+
Transition.cancel([next, prev]);
|
8788 |
+
},
|
8789 |
+
|
8790 |
+
reset: function() {
|
8791 |
+
for (var prop in props[0]) {
|
8792 |
+
css([next, prev], prop, '');
|
8793 |
+
}
|
8794 |
+
},
|
8795 |
+
|
8796 |
+
forward: function(duration, percent) {
|
8797 |
+
if ( percent === void 0 ) percent = this.percent();
|
8798 |
+
|
8799 |
+
Transition.cancel([next, prev]);
|
8800 |
+
return this.show(duration, percent, true);
|
8801 |
+
|
8802 |
+
},
|
8803 |
+
|
8804 |
+
translate: function(percent) {
|
8805 |
+
|
8806 |
+
this.reset();
|
8807 |
+
|
8808 |
+
var props = translate(percent, dir);
|
8809 |
+
css(next, props[1]);
|
8810 |
+
css(prev, props[0]);
|
8811 |
+
triggerUpdate(next, 'itemtranslatein', {percent: percent, dir: dir});
|
8812 |
+
triggerUpdate(prev, 'itemtranslateout', {percent: 1 - percent, dir: dir});
|
8813 |
+
|
8814 |
+
},
|
8815 |
+
|
8816 |
+
percent: function() {
|
8817 |
+
return percent(prev || next, next, dir);
|
8818 |
+
},
|
8819 |
+
|
8820 |
+
getDistance: function() {
|
8821 |
+
return prev.offsetWidth;
|
8822 |
+
}
|
8823 |
+
|
8824 |
+
};
|
8825 |
+
|
8826 |
+
}
|
8827 |
+
|
8828 |
+
function triggerUpdate(el, type, data$$1) {
|
8829 |
+
trigger(el, createEvent(type, false, false, data$$1));
|
8830 |
+
}
|
8831 |
+
|
8832 |
+
var SliderAutoplay = {
|
8833 |
+
|
8834 |
+
props: {
|
8835 |
+
autoplay: Boolean,
|
8836 |
+
autoplayInterval: Number,
|
8837 |
+
pauseOnHover: Boolean
|
8838 |
+
},
|
8839 |
+
|
8840 |
+
data: {
|
8841 |
+
autoplay: false,
|
8842 |
+
autoplayInterval: 7000,
|
8843 |
+
pauseOnHover: true
|
8844 |
+
},
|
8845 |
+
|
8846 |
+
connected: function() {
|
8847 |
+
this.startAutoplay();
|
8848 |
+
},
|
8849 |
+
|
8850 |
+
disconnected: function() {
|
8851 |
+
this.stopAutoplay();
|
8852 |
+
},
|
8853 |
+
|
8854 |
+
events: [
|
8855 |
+
|
8856 |
+
{
|
8857 |
+
|
8858 |
+
name: 'visibilitychange',
|
8859 |
+
|
8860 |
+
el: document,
|
8861 |
+
|
8862 |
+
handler: function() {
|
8863 |
+
if (document.hidden) {
|
8864 |
+
this.stopAutoplay();
|
8865 |
+
} else {
|
8866 |
+
this.startAutoplay();
|
8867 |
+
}
|
8868 |
+
}
|
8869 |
+
|
8870 |
+
},
|
8871 |
+
|
8872 |
+
{
|
8873 |
+
|
8874 |
+
name: pointerDown,
|
8875 |
+
handler: 'stopAutoplay'
|
8876 |
+
|
8877 |
+
},
|
8878 |
+
|
8879 |
+
{
|
8880 |
+
|
8881 |
+
name: 'mouseenter',
|
8882 |
+
|
8883 |
+
filter: function() {
|
8884 |
+
return this.autoplay;
|
8885 |
+
},
|
8886 |
+
|
8887 |
+
handler: function() {
|
8888 |
+
this.isHovering = true;
|
8889 |
+
}
|
8890 |
+
|
8891 |
+
},
|
8892 |
+
|
8893 |
+
{
|
8894 |
+
|
8895 |
+
name: 'mouseleave',
|
8896 |
+
|
8897 |
+
filter: function() {
|
8898 |
+
return this.autoplay;
|
8899 |
+
},
|
8900 |
+
|
8901 |
+
handler: function() {
|
8902 |
+
this.isHovering = false;
|
8903 |
+
}
|
8904 |
+
|
8905 |
+
}
|
8906 |
+
|
8907 |
+
],
|
8908 |
+
|
8909 |
+
methods: {
|
8910 |
+
|
8911 |
+
startAutoplay: function() {
|
8912 |
+
var this$1 = this;
|
8913 |
+
|
8914 |
+
|
8915 |
+
this.stopAutoplay();
|
8916 |
+
|
8917 |
+
if (this.autoplay) {
|
8918 |
+
this.interval = setInterval(
|
8919 |
+
function () { return !(this$1.isHovering && this$1.pauseOnHover) && !this$1.stack.length && this$1.show('next'); },
|
8920 |
+
this.autoplayInterval
|
8921 |
+
);
|
8922 |
+
}
|
8923 |
+
|
8924 |
+
},
|
8925 |
+
|
8926 |
+
stopAutoplay: function() {
|
8927 |
+
if (this.interval) {
|
8928 |
+
clearInterval(this.interval);
|
8929 |
+
}
|
8930 |
+
}
|
8931 |
+
|
8932 |
+
}
|
8933 |
+
|
8934 |
+
};
|
8935 |
+
|
8936 |
+
var SliderDrag = {
|
8937 |
+
|
8938 |
+
data: {
|
8939 |
+
threshold: 10,
|
8940 |
+
preventCatch: false
|
8941 |
+
},
|
8942 |
+
|
8943 |
+
created: function() {
|
8944 |
+
var this$1 = this;
|
8945 |
+
|
8946 |
+
|
8947 |
+
['start', 'move', 'end'].forEach(function (key) {
|
8948 |
+
|
8949 |
+
var fn = this$1[key];
|
8950 |
+
this$1[key] = function (e) {
|
8951 |
+
|
8952 |
+
var pos = getPos$1(e).x * (isRtl ? -1 : 1);
|
8953 |
+
|
8954 |
+
this$1.prevPos = pos !== this$1.pos ? this$1.pos : this$1.prevPos;
|
8955 |
+
this$1.pos = pos;
|
8956 |
+
|
8957 |
+
fn(e);
|
8958 |
+
};
|
8959 |
+
|
8960 |
+
});
|
8961 |
+
|
8962 |
+
},
|
8963 |
+
|
8964 |
+
events: [
|
8965 |
+
|
8966 |
+
{
|
8967 |
+
|
8968 |
+
name: pointerDown,
|
8969 |
+
|
8970 |
+
delegate: function() {
|
8971 |
+
return this.slidesSelector;
|
8972 |
+
},
|
8973 |
+
|
8974 |
+
handler: function(e) {
|
8975 |
+
|
8976 |
+
if (!isTouch(e) && hasTextNodesOnly(e.target)
|
8977 |
+
|| e.button > 0
|
8978 |
+
|| this.length < 2
|
8979 |
+
|| this.preventCatch
|
8980 |
+
) {
|
8981 |
+
return;
|
8982 |
+
}
|
8983 |
+
|
8984 |
+
this.start(e);
|
8985 |
+
}
|
8986 |
+
|
8987 |
+
},
|
8988 |
+
|
8989 |
+
{
|
8990 |
+
|
8991 |
+
// Workaround for iOS 11 bug: https://bugs.webkit.org/show_bug.cgi?id=184250
|
8992 |
+
|
8993 |
+
name: 'touchmove',
|
8994 |
+
passive: false,
|
8995 |
+
handler: 'move',
|
8996 |
+
delegate: function() {
|
8997 |
+
return this.slidesSelector;
|
8998 |
+
}
|
8999 |
+
|
9000 |
+
},
|
9001 |
+
|
9002 |
+
{
|
9003 |
+
name: 'dragstart',
|
9004 |
+
|
9005 |
+
handler: function(e) {
|
9006 |
+
e.preventDefault();
|
9007 |
+
}
|
9008 |
+
}
|
9009 |
+
|
9010 |
+
],
|
9011 |
+
|
9012 |
+
methods: {
|
9013 |
+
|
9014 |
+
start: function() {
|
9015 |
+
var this$1 = this;
|
9016 |
+
|
9017 |
+
|
9018 |
+
this.drag = this.pos;
|
9019 |
+
|
9020 |
+
if (this._transitioner) {
|
9021 |
+
|
9022 |
+
this.percent = this._transitioner.percent();
|
9023 |
+
this.drag += this._transitioner.getDistance() * this.percent * this.dir;
|
9024 |
+
|
9025 |
+
this._transitioner.cancel();
|
9026 |
+
this._transitioner.translate(this.percent);
|
9027 |
+
|
9028 |
+
this.dragging = true;
|
9029 |
+
|
9030 |
+
this.stack = [];
|
9031 |
+
|
9032 |
+
} else {
|
9033 |
+
this.prevIndex = this.index;
|
9034 |
+
}
|
9035 |
+
|
9036 |
+
// See above workaround notice
|
9037 |
+
var off$$1 = on(document, pointerMove.replace(' touchmove', ''), this.move, {passive: false});
|
9038 |
+
this.unbindMove = function () {
|
9039 |
+
off$$1();
|
9040 |
+
this$1.unbindMove = null;
|
9041 |
+
};
|
9042 |
+
on(window, 'scroll', this.unbindMove);
|
9043 |
+
on(document, pointerUp, this.end, true);
|
9044 |
+
|
9045 |
+
},
|
9046 |
+
|
9047 |
+
move: function(e) {
|
9048 |
+
var this$1 = this;
|
9049 |
+
|
9050 |
+
|
9051 |
+
// See above workaround notice
|
9052 |
+
if (!this.unbindMove) {
|
9053 |
+
return;
|
9054 |
+
}
|
9055 |
+
|
9056 |
+
var distance = this.pos - this.drag;
|
9057 |
+
|
9058 |
+
if (distance === 0 || this.prevPos === this.pos || !this.dragging && Math.abs(distance) < this.threshold) {
|
9059 |
+
return;
|
9060 |
+
}
|
9061 |
+
|
9062 |
+
e.cancelable && e.preventDefault();
|
9063 |
+
|
9064 |
+
this.dragging = true;
|
9065 |
+
this.dir = (distance < 0 ? 1 : -1);
|
9066 |
+
|
9067 |
+
var ref = this;
|
9068 |
+
var slides = ref.slides;
|
9069 |
+
var ref$1 = this;
|
9070 |
+
var prevIndex = ref$1.prevIndex;
|
9071 |
+
var dis = Math.abs(distance);
|
9072 |
+
var nextIndex = this.getIndex(prevIndex + this.dir, prevIndex);
|
9073 |
+
var width$$1 = this._getDistance(prevIndex, nextIndex) || slides[prevIndex].offsetWidth;
|
9074 |
+
|
9075 |
+
while (nextIndex !== prevIndex && dis > width$$1) {
|
9076 |
+
|
9077 |
+
this$1.drag -= width$$1 * this$1.dir;
|
9078 |
+
|
9079 |
+
prevIndex = nextIndex;
|
9080 |
+
dis -= width$$1;
|
9081 |
+
nextIndex = this$1.getIndex(prevIndex + this$1.dir, prevIndex);
|
9082 |
+
width$$1 = this$1._getDistance(prevIndex, nextIndex) || slides[prevIndex].offsetWidth;
|
9083 |
+
|
9084 |
+
}
|
9085 |
+
|
9086 |
+
this.percent = dis / width$$1;
|
9087 |
+
|
9088 |
+
var prev = slides[prevIndex];
|
9089 |
+
var next = slides[nextIndex];
|
9090 |
+
var changed = this.index !== nextIndex;
|
9091 |
+
var edge = prevIndex === nextIndex;
|
9092 |
+
|
9093 |
+
var itemShown;
|
9094 |
+
|
9095 |
+
[this.index, this.prevIndex].filter(function (i) { return !includes([nextIndex, prevIndex], i); }).forEach(function (i) {
|
9096 |
+
trigger(slides[i], 'itemhidden', [this$1]);
|
9097 |
+
|
9098 |
+
if (edge) {
|
9099 |
+
itemShown = true;
|
9100 |
+
this$1.prevIndex = prevIndex;
|
9101 |
+
}
|
9102 |
+
|
9103 |
+
});
|
9104 |
+
|
9105 |
+
if (this.index === prevIndex && this.prevIndex !== prevIndex || itemShown) {
|
9106 |
+
trigger(slides[this.index], 'itemshown', [this]);
|
9107 |
+
}
|
9108 |
+
|
9109 |
+
if (changed) {
|
9110 |
+
this.prevIndex = prevIndex;
|
9111 |
+
this.index = nextIndex;
|
9112 |
+
|
9113 |
+
!edge && trigger(prev, 'beforeitemhide', [this]);
|
9114 |
+
trigger(next, 'beforeitemshow', [this]);
|
9115 |
+
}
|
9116 |
+
|
9117 |
+
this._transitioner = this._translate(Math.abs(this.percent), prev, !edge && next);
|
9118 |
+
|
9119 |
+
if (changed) {
|
9120 |
+
!edge && trigger(prev, 'itemhide', [this]);
|
9121 |
+
trigger(next, 'itemshow', [this]);
|
9122 |
+
}
|
9123 |
+
|
9124 |
+
},
|
9125 |
+
|
9126 |
+
end: function() {
|
9127 |
+
|
9128 |
+
off(window, 'scroll', this.unbindMove);
|
9129 |
+
this.unbindMove && this.unbindMove();
|
9130 |
+
off(document, pointerUp, this.end, true);
|
9131 |
+
|
9132 |
+
if (this.dragging) {
|
9133 |
+
|
9134 |
+
this.dragging = null;
|
9135 |
+
|
9136 |
+
if (this.index === this.prevIndex) {
|
9137 |
+
this.percent = 1 - this.percent;
|
9138 |
+
this.dir *= -1;
|
9139 |
+
this._show(false, this.index, true);
|
9140 |
+
this._transitioner = null;
|
9141 |
+
} else {
|
9142 |
+
|
9143 |
+
var dirChange = (isRtl ? this.dir * (isRtl ? 1 : -1) : this.dir) < 0 === this.prevPos > this.pos;
|
9144 |
+
this.index = dirChange ? this.index : this.prevIndex;
|
9145 |
+
|
9146 |
+
if (dirChange) {
|
9147 |
+
this.percent = 1 - this.percent;
|
9148 |
+
}
|
9149 |
+
|
9150 |
+
this.show(this.dir > 0 && !dirChange || this.dir < 0 && dirChange ? 'next' : 'previous', true);
|
9151 |
+
}
|
9152 |
+
|
9153 |
+
preventClick();
|
9154 |
+
|
9155 |
+
}
|
9156 |
+
|
9157 |
+
this.drag
|
9158 |
+
= this.percent
|
9159 |
+
= null;
|
9160 |
+
|
9161 |
+
}
|
9162 |
+
|
9163 |
+
}
|
9164 |
+
|
9165 |
+
};
|
9166 |
+
|
9167 |
+
function hasTextNodesOnly(el) {
|
9168 |
+
return !el.children.length && el.childNodes.length;
|
9169 |
+
}
|
9170 |
+
|
9171 |
+
var SliderNav = {
|
9172 |
+
|
9173 |
+
data: {
|
9174 |
+
selNav: false
|
9175 |
+
},
|
9176 |
+
|
9177 |
+
computed: {
|
9178 |
+
|
9179 |
+
nav: function(ref, $el) {
|
9180 |
+
var selNav = ref.selNav;
|
9181 |
+
|
9182 |
+
return $(selNav, $el);
|
9183 |
+
},
|
9184 |
+
|
9185 |
+
navItemSelector: function(ref) {
|
9186 |
+
var attrItem = ref.attrItem;
|
9187 |
+
|
9188 |
+
return ("[" + attrItem + "],[data-" + attrItem + "]");
|
9189 |
+
},
|
9190 |
+
|
9191 |
+
navItems: function(_, $el) {
|
9192 |
+
return $$(this.navItemSelector, $el);
|
9193 |
+
}
|
9194 |
+
|
9195 |
+
},
|
9196 |
+
|
9197 |
+
update: {
|
9198 |
+
|
9199 |
+
write: function() {
|
9200 |
+
var this$1 = this;
|
9201 |
+
|
9202 |
+
|
9203 |
+
if (this.nav && this.length !== this.nav.children.length) {
|
9204 |
+
html(this.nav, this.slides.map(function (_, i) { return ("<li " + (this$1.attrItem) + "=\"" + i + "\"><a href=\"#\"></a></li>"); }).join(''));
|
9205 |
+
}
|
9206 |
+
|
9207 |
+
toggleClass($$(this.navItemSelector, this.$el).concat(this.nav), 'uk-hidden', !this.maxIndex);
|
9208 |
+
|
9209 |
+
this.updateNav();
|
9210 |
+
|
9211 |
+
},
|
9212 |
+
|
9213 |
+
events: ['load', 'resize']
|
9214 |
+
|
9215 |
+
},
|
9216 |
+
|
9217 |
+
events: [
|
9218 |
+
|
9219 |
+
{
|
9220 |
+
|
9221 |
+
name: 'click',
|
9222 |
+
|
9223 |
+
delegate: function() {
|
9224 |
+
return this.navItemSelector;
|
9225 |
+
},
|
9226 |
+
|
9227 |
+
handler: function(e) {
|
9228 |
+
e.preventDefault();
|
9229 |
+
e.current.blur();
|
9230 |
+
this.show(data(e.current, this.attrItem));
|
9231 |
+
}
|
9232 |
+
|
9233 |
+
},
|
9234 |
+
|
9235 |
+
{
|
9236 |
+
|
9237 |
+
name: 'itemshow',
|
9238 |
+
handler: 'updateNav'
|
9239 |
+
|
9240 |
+
}
|
9241 |
+
|
9242 |
+
],
|
9243 |
+
|
9244 |
+
methods: {
|
9245 |
+
|
9246 |
+
updateNav: function() {
|
9247 |
+
var this$1 = this;
|
9248 |
+
|
9249 |
+
|
9250 |
+
var i = this.getValidIndex();
|
9251 |
+
this.navItems.forEach(function (el) {
|
9252 |
+
|
9253 |
+
var cmd = data(el, this$1.attrItem);
|
9254 |
+
|
9255 |
+
toggleClass(el, this$1.clsActive, toNumber(cmd) === i);
|
9256 |
+
toggleClass(el, 'uk-invisible', this$1.finite && (cmd === 'previous' && i === 0 || cmd === 'next' && i >= this$1.maxIndex));
|
9257 |
+
});
|
9258 |
+
|
9259 |
+
}
|
9260 |
+
|
9261 |
+
}
|
9262 |
+
|
9263 |
+
};
|
9264 |
+
|
9265 |
+
var Slider = {
|
9266 |
+
|
9267 |
+
mixins: [SliderAutoplay, SliderDrag, SliderNav],
|
9268 |
+
|
9269 |
+
props: {
|
9270 |
+
clsActivated: Boolean,
|
9271 |
+
easing: String,
|
9272 |
+
index: Number,
|
9273 |
+
finite: Boolean,
|
9274 |
+
velocity: Number
|
9275 |
+
},
|
9276 |
+
|
9277 |
+
data: function () { return ({
|
9278 |
+
easing: 'ease',
|
9279 |
+
finite: false,
|
9280 |
+
velocity: 1,
|
9281 |
+
index: 0,
|
9282 |
+
stack: [],
|
9283 |
+
percent: 0,
|
9284 |
+
clsActive: 'uk-active',
|
9285 |
+
clsActivated: false,
|
9286 |
+
Transitioner: false,
|
9287 |
+
transitionOptions: {}
|
9288 |
+
}); },
|
9289 |
+
|
9290 |
+
computed: {
|
9291 |
+
|
9292 |
+
duration: function(ref, $el) {
|
9293 |
+
var velocity = ref.velocity;
|
9294 |
+
|
9295 |
+
return speedUp($el.offsetWidth / velocity);
|
9296 |
+
},
|
9297 |
+
|
9298 |
+
length: function() {
|
9299 |
+
return this.slides.length;
|
9300 |
+
},
|
9301 |
+
|
9302 |
+
list: function(ref, $el) {
|
9303 |
+
var selList = ref.selList;
|
9304 |
+
|
9305 |
+
return $(selList, $el);
|
9306 |
+
},
|
9307 |
+
|
9308 |
+
maxIndex: function() {
|
9309 |
+
return this.length - 1;
|
9310 |
+
},
|
9311 |
+
|
9312 |
+
slidesSelector: function(ref) {
|
9313 |
+
var selList = ref.selList;
|
9314 |
+
|
9315 |
+
return (selList + " > *");
|
9316 |
+
},
|
9317 |
+
|
9318 |
+
slides: function() {
|
9319 |
+
return toNodes(this.list.children);
|
9320 |
+
}
|
9321 |
+
|
9322 |
+
},
|
9323 |
+
|
9324 |
+
events: {
|
9325 |
+
|
9326 |
+
itemshown: function() {
|
9327 |
+
this.$update(this.list);
|
9328 |
+
}
|
9329 |
+
|
9330 |
+
},
|
9331 |
+
|
9332 |
+
methods: {
|
9333 |
+
|
9334 |
+
show: function(index$$1, force) {
|
9335 |
+
var this$1 = this;
|
9336 |
+
if ( force === void 0 ) force = false;
|
9337 |
+
|
9338 |
+
|
9339 |
+
if (this.dragging || !this.length) {
|
9340 |
+
return;
|
9341 |
+
}
|
9342 |
+
|
9343 |
+
var ref = this;
|
9344 |
+
var stack = ref.stack;
|
9345 |
+
var queueIndex = force ? 0 : stack.length;
|
9346 |
+
var reset = function () {
|
9347 |
+
stack.splice(queueIndex, 1);
|
9348 |
+
|
9349 |
+
if (stack.length) {
|
9350 |
+
this$1.show(stack.shift(), true);
|
9351 |
+
}
|
9352 |
+
};
|
9353 |
+
|
9354 |
+
stack[force ? 'unshift' : 'push'](index$$1);
|
9355 |
+
|
9356 |
+
if (!force && stack.length > 1) {
|
9357 |
+
|
9358 |
+
if (stack.length === 2) {
|
9359 |
+
this._transitioner.forward(Math.min(this.duration, 200));
|
9360 |
+
}
|
9361 |
+
|
9362 |
+
return;
|
9363 |
+
}
|
9364 |
+
|
9365 |
+
var prevIndex = this.index;
|
9366 |
+
var prev = hasClass(this.slides, this.clsActive) && this.slides[prevIndex];
|
9367 |
+
var nextIndex = this.getIndex(index$$1, this.index);
|
9368 |
+
var next = this.slides[nextIndex];
|
9369 |
+
|
9370 |
+
if (prev === next) {
|
9371 |
+
reset();
|
9372 |
+
return;
|
9373 |
+
}
|
9374 |
+
|
9375 |
+
this.dir = getDirection(index$$1, prevIndex);
|
9376 |
+
this.prevIndex = prevIndex;
|
9377 |
+
this.index = nextIndex;
|
9378 |
+
|
9379 |
+
prev && trigger(prev, 'beforeitemhide', [this]);
|
9380 |
+
if (!trigger(next, 'beforeitemshow', [this, prev])) {
|
9381 |
+
this.index = this.prevIndex;
|
9382 |
+
reset();
|
9383 |
+
return;
|
9384 |
+
}
|
9385 |
+
|
9386 |
+
var promise = this._show(prev, next, force).then(function () {
|
9387 |
+
|
9388 |
+
prev && trigger(prev, 'itemhidden', [this$1]);
|
9389 |
+
trigger(next, 'itemshown', [this$1]);
|
9390 |
+
|
9391 |
+
return new Promise(function (resolve) {
|
9392 |
+
fastdom.write(function () {
|
9393 |
+
stack.shift();
|
9394 |
+
if (stack.length) {
|
9395 |
+
this$1.show(stack.shift(), true);
|
9396 |
+
} else {
|
9397 |
+
this$1._transitioner = null;
|
9398 |
+
}
|
9399 |
+
resolve();
|
9400 |
+
});
|
9401 |
+
});
|
9402 |
+
|
9403 |
+
});
|
9404 |
+
|
9405 |
+
prev && trigger(prev, 'itemhide', [this]);
|
9406 |
+
trigger(next, 'itemshow', [this]);
|
9407 |
+
|
9408 |
+
return promise;
|
9409 |
+
|
9410 |
+
},
|
9411 |
+
|
9412 |
+
getIndex: function(index$$1, prev) {
|
9413 |
+
if ( index$$1 === void 0 ) index$$1 = this.index;
|
9414 |
+
if ( prev === void 0 ) prev = this.index;
|
9415 |
+
|
9416 |
+
return clamp(getIndex(index$$1, this.slides, prev, this.finite), 0, this.maxIndex);
|
9417 |
+
},
|
9418 |
+
|
9419 |
+
getValidIndex: function(index$$1, prevIndex) {
|
9420 |
+
if ( index$$1 === void 0 ) index$$1 = this.index;
|
9421 |
+
if ( prevIndex === void 0 ) prevIndex = this.prevIndex;
|
9422 |
+
|
9423 |
+
return this.getIndex(index$$1, prevIndex);
|
9424 |
+
},
|
9425 |
+
|
9426 |
+
_show: function(prev, next, force) {
|
9427 |
+
|
9428 |
+
this._transitioner = this._getTransitioner(
|
9429 |
+
prev,
|
9430 |
+
next,
|
9431 |
+
this.dir,
|
9432 |
+
assign({
|
9433 |
+
easing: force
|
9434 |
+
? next.offsetWidth < 600
|
9435 |
+
? 'cubic-bezier(0.25, 0.46, 0.45, 0.94)' /* easeOutQuad */
|
9436 |
+
: 'cubic-bezier(0.165, 0.84, 0.44, 1)' /* easeOutQuart */
|
9437 |
+
: this.easing
|
9438 |
+
}, this.transitionOptions)
|
9439 |
+
);
|
9440 |
+
|
9441 |
+
if (!force && !prev) {
|
9442 |
+
this._transitioner.translate(1);
|
9443 |
+
return Promise.resolve();
|
9444 |
+
}
|
9445 |
+
|
9446 |
+
var ref = this.stack;
|
9447 |
+
var length = ref.length;
|
9448 |
+
return this._transitioner[length > 1 ? 'forward' : 'show'](length > 1 ? Math.min(this.duration, 75 + 75 / (length - 1)) : this.duration, this.percent);
|
9449 |
+
|
9450 |
+
},
|
9451 |
+
|
9452 |
+
_getDistance: function(prev, next) {
|
9453 |
+
return new this._getTransitioner(prev, prev !== next && next).getDistance();
|
9454 |
+
},
|
9455 |
+
|
9456 |
+
_translate: function(percent, prev, next) {
|
9457 |
+
if ( prev === void 0 ) prev = this.prevIndex;
|
9458 |
+
if ( next === void 0 ) next = this.index;
|
9459 |
+
|
9460 |
+
var transitioner = this._getTransitioner(prev !== next ? prev : false, next);
|
9461 |
+
transitioner.translate(percent);
|
9462 |
+
return transitioner;
|
9463 |
+
},
|
9464 |
+
|
9465 |
+
_getTransitioner: function(prev, next, dir, options) {
|
9466 |
+
if ( prev === void 0 ) prev = this.prevIndex;
|
9467 |
+
if ( next === void 0 ) next = this.index;
|
9468 |
+
if ( dir === void 0 ) dir = this.dir || 1;
|
9469 |
+
if ( options === void 0 ) options = this.transitionOptions;
|
9470 |
+
|
9471 |
+
return new this.Transitioner(
|
9472 |
+
isNumber(prev) ? this.slides[prev] : prev,
|
9473 |
+
isNumber(next) ? this.slides[next] : next,
|
9474 |
+
dir * (isRtl ? -1 : 1),
|
9475 |
+
options
|
9476 |
+
);
|
9477 |
+
}
|
9478 |
+
|
9479 |
+
}
|
9480 |
+
|
9481 |
+
};
|
9482 |
+
|
9483 |
+
function getDirection(index$$1, prevIndex) {
|
9484 |
+
return index$$1 === 'next'
|
9485 |
+
? 1
|
9486 |
+
: index$$1 === 'previous'
|
9487 |
+
? -1
|
9488 |
+
: index$$1 < prevIndex
|
9489 |
+
? -1
|
9490 |
+
: 1;
|
9491 |
+
}
|
9492 |
+
|
9493 |
+
function speedUp(x) {
|
9494 |
+
return .5 * x + 300; // parabola through (400,500; 600,600; 1800,1200)
|
9495 |
+
}
|
9496 |
+
|
9497 |
+
var Slideshow = {
|
9498 |
+
|
9499 |
+
mixins: [Slider],
|
9500 |
+
|
9501 |
+
props: {
|
9502 |
+
animation: String
|
9503 |
+
},
|
9504 |
+
|
9505 |
+
data: {
|
9506 |
+
animation: 'slide',
|
9507 |
+
clsActivated: 'uk-transition-active',
|
9508 |
+
Animations: Animations,
|
9509 |
+
Transitioner: Transitioner
|
9510 |
+
},
|
9511 |
+
|
9512 |
+
computed: {
|
9513 |
+
|
9514 |
+
animation: function(ref) {
|
9515 |
+
var animation = ref.animation;
|
9516 |
+
var Animations$$1 = ref.Animations;
|
9517 |
+
|
9518 |
+
return assign(animation in Animations$$1 ? Animations$$1[animation] : Animations$$1.slide, {name: animation});
|
9519 |
+
},
|
9520 |
+
|
9521 |
+
transitionOptions: function() {
|
9522 |
+
return {animation: this.animation};
|
9523 |
+
}
|
9524 |
+
|
9525 |
+
},
|
9526 |
+
|
9527 |
+
events: {
|
9528 |
+
|
9529 |
+
'itemshow itemhide itemshown itemhidden': function(ref) {
|
9530 |
+
var target = ref.target;
|
9531 |
+
|
9532 |
+
this.$update(target);
|
9533 |
+
},
|
9534 |
+
|
9535 |
+
itemshow: function() {
|
9536 |
+
isNumber(this.prevIndex) && fastdom.flush(); // iOS 10+ will honor the video.play only if called from a gesture handler
|
9537 |
+
},
|
9538 |
+
|
9539 |
+
beforeitemshow: function(ref) {
|
9540 |
+
var target = ref.target;
|
9541 |
+
|
9542 |
+
addClass(target, this.clsActive);
|
9543 |
+
},
|
9544 |
+
|
9545 |
+
itemshown: function(ref) {
|
9546 |
+
var target = ref.target;
|
9547 |
+
|
9548 |
+
addClass(target, this.clsActivated);
|
9549 |
+
},
|
9550 |
+
|
9551 |
+
itemhidden: function(ref) {
|
9552 |
+
var target = ref.target;
|
9553 |
+
|
9554 |
+
removeClass(target, this.clsActive, this.clsActivated);
|
9555 |
+
}
|
9556 |
+
|
9557 |
+
}
|
9558 |
+
|
9559 |
+
};
|
9560 |
+
|
9561 |
+
var LightboxPanel = {
|
9562 |
+
|
9563 |
+
mixins: [Container, Modal, Togglable, Slideshow],
|
9564 |
+
|
9565 |
+
functional: true,
|
9566 |
+
|
9567 |
+
props: {
|
9568 |
+
delayControls: Number,
|
9569 |
+
preload: Number,
|
9570 |
+
videoAutoplay: Boolean,
|
9571 |
+
template: String
|
9572 |
+
},
|
9573 |
+
|
9574 |
+
data: function () { return ({
|
9575 |
+
preload: 1,
|
9576 |
+
videoAutoplay: false,
|
9577 |
+
delayControls: 3000,
|
9578 |
+
items: [],
|
9579 |
+
cls: 'uk-open',
|
9580 |
+
clsPage: 'uk-lightbox-page',
|
9581 |
+
selList: '.uk-lightbox-items',
|
9582 |
+
attrItem: 'uk-lightbox-item',
|
9583 |
+
selClose: '.uk-close-large',
|
9584 |
+
pauseOnHover: false,
|
9585 |
+
velocity: 2,
|
9586 |
+
Animations: Animations$1,
|
9587 |
+
template: "<div class=\"uk-lightbox uk-overflow-hidden\"> <ul class=\"uk-lightbox-items\"></ul> <div class=\"uk-lightbox-toolbar uk-position-top uk-text-right uk-transition-slide-top uk-transition-opaque\"> <button class=\"uk-lightbox-toolbar-icon uk-close-large\" type=\"button\" uk-close></button> </div> <a class=\"uk-lightbox-button uk-position-center-left uk-position-medium uk-transition-fade\" href=\"#\" uk-slidenav-previous uk-lightbox-item=\"previous\"></a> <a class=\"uk-lightbox-button uk-position-center-right uk-position-medium uk-transition-fade\" href=\"#\" uk-slidenav-next uk-lightbox-item=\"next\"></a> <div class=\"uk-lightbox-toolbar uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque\"></div> </div>"
|
9588 |
+
}); },
|
9589 |
+
|
9590 |
+
created: function() {
|
9591 |
+
var this$1 = this;
|
9592 |
+
|
9593 |
+
|
9594 |
+
this.$mount(append(this.container, this.template));
|
9595 |
+
|
9596 |
+
this.caption = $('.uk-lightbox-caption', this.$el);
|
9597 |
+
|
9598 |
+
this.items.forEach(function () { return append(this$1.list, '<li></li>'); });
|
9599 |
+
|
9600 |
+
},
|
9601 |
+
|
9602 |
+
events: [
|
9603 |
+
|
9604 |
+
{
|
9605 |
+
|
9606 |
+
name: (pointerMove + " " + pointerDown + " keydown"),
|
9607 |
+
|
9608 |
+
handler: 'showControls'
|
9609 |
+
|
9610 |
+
},
|
9611 |
+
|
9612 |
+
{
|
9613 |
+
|
9614 |
+
name: 'click',
|
9615 |
+
|
9616 |
+
self: true,
|
9617 |
+
|
9618 |
+
delegate: function() {
|
9619 |
+
return this.slidesSelector;
|
9620 |
+
},
|
9621 |
+
|
9622 |
+
handler: function(e) {
|
9623 |
+
e.preventDefault();
|
9624 |
+
this.hide();
|
9625 |
+
}
|
9626 |
+
|
9627 |
+
},
|
9628 |
+
|
9629 |
+
{
|
9630 |
+
|
9631 |
+
name: 'shown',
|
9632 |
+
|
9633 |
+
self: true,
|
9634 |
+
|
9635 |
+
handler: function() {
|
9636 |
+
this.startAutoplay();
|
9637 |
+
this.showControls();
|
9638 |
+
}
|
9639 |
+
|
9640 |
+
},
|
9641 |
+
|
9642 |
+
{
|
9643 |
+
|
9644 |
+
name: 'hide',
|
9645 |
+
|
9646 |
+
self: true,
|
9647 |
+
|
9648 |
+
handler: function() {
|
9649 |
+
|
9650 |
+
this.stopAutoplay();
|
9651 |
+
this.hideControls();
|
9652 |
+
|
9653 |
+
removeClass(this.slides, this.clsActive);
|
9654 |
+
Transition.stop(this.slides);
|
9655 |
+
|
9656 |
+
}
|
9657 |
+
},
|
9658 |
+
|
9659 |
+
{
|
9660 |
+
|
9661 |
+
name: 'keyup',
|
9662 |
+
|
9663 |
+
el: document,
|
9664 |
+
|
9665 |
+
handler: function(e) {
|
9666 |
+
|
9667 |
+
if (!this.isToggled(this.$el)) {
|
9668 |
+
return;
|
9669 |
+
}
|
9670 |
+
|
9671 |
+
switch (e.keyCode) {
|
9672 |
+
case 37:
|
9673 |
+
this.show('previous');
|
9674 |
+
break;
|
9675 |
+
case 39:
|
9676 |
+
this.show('next');
|
9677 |
+
break;
|
9678 |
+
}
|
9679 |
+
}
|
9680 |
+
},
|
9681 |
+
|
9682 |
+
{
|
9683 |
+
|
9684 |
+
name: 'beforeitemshow',
|
9685 |
+
|
9686 |
+
handler: function(e) {
|
9687 |
+
|
9688 |
+
if (this.isToggled()) {
|
9689 |
+
return;
|
9690 |
+
}
|
9691 |
+
|
9692 |
+
this.preventCatch = true;
|
9693 |
+
|
9694 |
+
e.preventDefault();
|
9695 |
+
|
9696 |
+
this.toggleNow(this.$el, true);
|
9697 |
+
|
9698 |
+
this.animation = Animations$1['scale'];
|
9699 |
+
removeClass(e.target, this.clsActive);
|
9700 |
+
this.stack.splice(1, 0, this.index);
|
9701 |
+
|
9702 |
+
}
|
9703 |
+
|
9704 |
+
},
|
9705 |
+
|
9706 |
+
{
|
9707 |
+
|
9708 |
+
name: 'itemshow',
|
9709 |
+
|
9710 |
+
handler: function(ref) {
|
9711 |
+
var this$1 = this;
|
9712 |
+
var target = ref.target;
|
9713 |
+
|
9714 |
+
|
9715 |
+
var i = index(target);
|
9716 |
+
var ref$1 = this.getItem(i);
|
9717 |
+
var caption = ref$1.caption;
|
9718 |
+
|
9719 |
+
css(this.caption, 'display', caption ? '' : 'none');
|
9720 |
+
html(this.caption, caption);
|
9721 |
+
|
9722 |
+
for (var j = 0; j <= this.preload; j++) {
|
9723 |
+
this$1.loadItem(this$1.getIndex(i + j));
|
9724 |
+
this$1.loadItem(this$1.getIndex(i - j));
|
9725 |
+
}
|
9726 |
+
|
9727 |
+
}
|
9728 |
+
|
9729 |
+
},
|
9730 |
+
|
9731 |
+
{
|
9732 |
+
|
9733 |
+
name: 'itemshown',
|
9734 |
+
|
9735 |
+
handler: function() {
|
9736 |
+
this.preventCatch = false;
|
9737 |
+
}
|
9738 |
+
|
9739 |
+
},
|
9740 |
+
|
9741 |
+
{
|
9742 |
+
|
9743 |
+
name: 'itemload',
|
9744 |
+
|
9745 |
+
handler: function(_, item) {
|
9746 |
+
var this$1 = this;
|
9747 |
+
|
9748 |
+
|
9749 |
+
var source = item.source;
|
9750 |
+
var type = item.type;
|
9751 |
+
var alt = item.alt;
|
9752 |
+
|
9753 |
+
this.setItem(item, '<span uk-spinner></span>');
|
9754 |
+
|
9755 |
+
if (!source) {
|
9756 |
+
return;
|
9757 |
+
}
|
9758 |
+
|
9759 |
+
var matches$$1;
|
9760 |
+
|
9761 |
+
// Image
|
9762 |
+
if (type === 'image' || source.match(/\.(jp(e)?g|png|gif|svg)($|\?)/i)) {
|
9763 |
+
|
9764 |
+
getImage(source).then(
|
9765 |
+
function (img) { return this$1.setItem(item, ("<img width=\"" + (img.width) + "\" height=\"" + (img.height) + "\" src=\"" + source + "\" alt=\"" + (alt ? alt : '') + "\">")); },
|
9766 |
+
function () { return this$1.setError(item); }
|
9767 |
+
);
|
9768 |
+
|
9769 |
+
// Video
|
9770 |
+
} else if (type === 'video' || source.match(/\.(mp4|webm|ogv)($|\?)/i)) {
|
9771 |
+
|
9772 |
+
var video = $(("<video controls playsinline" + (item.poster ? (" poster=\"" + (item.poster) + "\"") : '') + " uk-video=\"" + (this.videoAutoplay) + "\"></video>"));
|
9773 |
+
attr(video, 'src', source);
|
9774 |
+
|
9775 |
+
on(video, 'error', function () { return this$1.setError(item); });
|
9776 |
+
on(video, 'loadedmetadata', function () {
|
9777 |
+
attr(video, {width: video.videoWidth, height: video.videoHeight});
|
9778 |
+
this$1.setItem(item, video);
|
9779 |
+
});
|
9780 |
+
|
9781 |
+
// Iframe
|
9782 |
+
} else if (type === 'iframe' || source.match(/\.(html|php)($|\?)/i)) {
|
9783 |
+
|
9784 |
+
this.setItem(item, ("<iframe class=\"uk-lightbox-iframe\" src=\"" + source + "\" frameborder=\"0\" allowfullscreen></iframe>"));
|
9785 |
+
|
9786 |
+
// YouTube
|
9787 |
+
} else if ((matches$$1 = source.match(/\/\/.*?youtube(-nocookie)?\.[a-z]+\/watch\?v=([^&\s]+)/) || source.match(/()youtu\.be\/(.*)/))) {
|
9788 |
+
|
9789 |
+
var id = matches$$1[2];
|
9790 |
+
var setIframe = function (width$$1, height$$1) {
|
9791 |
+
if ( width$$1 === void 0 ) width$$1 = 640;
|
9792 |
+
if ( height$$1 === void 0 ) height$$1 = 450;
|
9793 |
+
|
9794 |
+
return this$1.setItem(item, getIframe(("https://www.youtube" + (matches$$1[1] || '') + ".com/embed/" + id), width$$1, height$$1, this$1.videoAutoplay));
|
9795 |
+
};
|
9796 |
+
|
9797 |
+
getImage(("https://img.youtube.com/vi/" + id + "/maxresdefault.jpg")).then(
|
9798 |
+
function (ref) {
|
9799 |
+
var width$$1 = ref.width;
|
9800 |
+
var height$$1 = ref.height;
|
9801 |
+
|
9802 |
+
// YouTube default 404 thumb, fall back to low resolution
|
9803 |
+
if (width$$1 === 120 && height$$1 === 90) {
|
9804 |
+
getImage(("https://img.youtube.com/vi/" + id + "/0.jpg")).then(
|
9805 |
+
function (ref) {
|
9806 |
+
var width$$1 = ref.width;
|
9807 |
+
var height$$1 = ref.height;
|
9808 |
+
|
9809 |
+
return setIframe(width$$1, height$$1);
|
9810 |
+
},
|
9811 |
+
setIframe
|
9812 |
+
);
|
9813 |
+
} else {
|
9814 |
+
setIframe(width$$1, height$$1);
|
9815 |
+
}
|
9816 |
+
},
|
9817 |
+
setIframe
|
9818 |
+
);
|
9819 |
+
|
9820 |
+
// Vimeo
|
9821 |
+
} else if ((matches$$1 = source.match(/(\/\/.*?)vimeo\.[a-z]+\/([0-9]+).*?/))) {
|
9822 |
+
|
9823 |
+
ajax(("https://vimeo.com/api/oembed.json?maxwidth=1920&url=" + (encodeURI(source))), {responseType: 'json', withCredentials: false})
|
9824 |
+
.then(
|
9825 |
+
function (ref) {
|
9826 |
+
var ref_response = ref.response;
|
9827 |
+
var height$$1 = ref_response.height;
|
9828 |
+
var width$$1 = ref_response.width;
|
9829 |
+
|
9830 |
+
return this$1.setItem(item, getIframe(("https://player.vimeo.com/video/" + (matches$$1[2])), width$$1, height$$1, this$1.videoAutoplay));
|
9831 |
+
},
|
9832 |
+
function () { return this$1.setError(item); }
|
9833 |
+
);
|
9834 |
+
|
9835 |
+
}
|
9836 |
+
|
9837 |
+
}
|
9838 |
+
|
9839 |
+
}
|
9840 |
+
|
9841 |
+
],
|
9842 |
+
|
9843 |
+
methods: {
|
9844 |
+
|
9845 |
+
loadItem: function(index$$1) {
|
9846 |
+
if ( index$$1 === void 0 ) index$$1 = this.index;
|
9847 |
+
|
9848 |
+
|
9849 |
+
var item = this.getItem(index$$1);
|
9850 |
+
|
9851 |
+
if (item.content) {
|
9852 |
+
return;
|
9853 |
+
}
|
9854 |
+
|
9855 |
+
trigger(this.$el, 'itemload', [item]);
|
9856 |
+
},
|
9857 |
+
|
9858 |
+
getItem: function(index$$1) {
|
9859 |
+
if ( index$$1 === void 0 ) index$$1 = this.index;
|
9860 |
+
|
9861 |
+
return this.items[index$$1] || {};
|
9862 |
+
},
|
9863 |
+
|
9864 |
+
setItem: function(item, content) {
|
9865 |
+
assign(item, {content: content});
|
9866 |
+
var el = html(this.slides[this.items.indexOf(item)], content);
|
9867 |
+
trigger(this.$el, 'itemloaded', [this, el]);
|
9868 |
+
this.$update(el);
|
9869 |
+
},
|
9870 |
+
|
9871 |
+
setError: function(item) {
|
9872 |
+
this.setItem(item, '<span uk-icon="icon: bolt; ratio: 2"></span>');
|
9873 |
+
},
|
9874 |
+
|
9875 |
+
showControls: function() {
|
9876 |
+
|
9877 |
+
clearTimeout(this.controlsTimer);
|
9878 |
+
this.controlsTimer = setTimeout(this.hideControls, this.delayControls);
|
9879 |
+
|
9880 |
+
addClass(this.$el, 'uk-active', 'uk-transition-active');
|
9881 |
+
|
9882 |
+
},
|
9883 |
+
|
9884 |
+
hideControls: function() {
|
9885 |
+
removeClass(this.$el, 'uk-active', 'uk-transition-active');
|
9886 |
+
}
|
9887 |
+
|
9888 |
+
}
|
9889 |
+
|
9890 |
+
};
|
9891 |
+
|
9892 |
+
function getIframe(src, width$$1, height$$1, autoplay) {
|
9893 |
+
return ("<iframe src=\"" + src + "\" width=\"" + width$$1 + "\" height=\"" + height$$1 + "\" style=\"max-width: 100%; box-sizing: border-box;\" frameborder=\"0\" allowfullscreen uk-video=\"autoplay: " + autoplay + "\" uk-responsive></iframe>");
|
9894 |
+
}
|
9895 |
+
|
9896 |
+
var Lightbox = {
|
9897 |
+
|
9898 |
+
install: install$2,
|
9899 |
+
|
9900 |
+
props: {toggle: String},
|
9901 |
+
|
9902 |
+
data: {toggle: 'a'},
|
9903 |
+
|
9904 |
+
computed: {
|
9905 |
+
|
9906 |
+
toggles: function(ref, $el) {
|
9907 |
+
var toggle = ref.toggle;
|
9908 |
+
|
9909 |
+
return $$(toggle, $el);
|
9910 |
+
}
|
9911 |
+
|
9912 |
+
},
|
9913 |
+
|
9914 |
+
disconnected: function() {
|
9915 |
+
this._destroy();
|
9916 |
+
},
|
9917 |
+
|
9918 |
+
events: [
|
9919 |
+
|
9920 |
+
{
|
9921 |
+
|
9922 |
+
name: 'click',
|
9923 |
+
|
9924 |
+
delegate: function() {
|
9925 |
+
return ((this.toggle) + ":not(.uk-disabled)");
|
9926 |
+
},
|
9927 |
+
|
9928 |
+
handler: function(e) {
|
9929 |
+
e.preventDefault();
|
9930 |
+
e.current.blur();
|
9931 |
+
this.show(index(this.toggles, e.current));
|
9932 |
+
}
|
9933 |
+
|
9934 |
+
}
|
9935 |
+
|
9936 |
+
],
|
9937 |
+
|
9938 |
+
update: function(data$$1) {
|
9939 |
+
|
9940 |
+
data$$1.toggles = this.panel && data$$1.toggles || this.toggles;
|
9941 |
+
|
9942 |
+
if (!this.panel || isEqualList$1(data$$1.toggles, this.toggles)) {
|
9943 |
+
return;
|
9944 |
+
}
|
9945 |
+
|
9946 |
+
data$$1.toggles = this.toggles;
|
9947 |
+
this._destroy();
|
9948 |
+
this._init();
|
9949 |
+
|
9950 |
+
},
|
9951 |
+
|
9952 |
+
methods: {
|
9953 |
+
|
9954 |
+
_init: function() {
|
9955 |
+
return this.panel = this.panel || this.$create('lightboxPanel', assign({}, this.$props, {
|
9956 |
+
items: this.toggles.reduce(function (items, el) {
|
9957 |
+
items.push(['href', 'caption', 'type', 'poster', 'alt'].reduce(function (obj, attr$$1) {
|
9958 |
+
obj[attr$$1 === 'href' ? 'source' : attr$$1] = data(el, attr$$1);
|
9959 |
+
return obj;
|
9960 |
+
}, {}));
|
9961 |
+
return items;
|
9962 |
+
}, [])
|
9963 |
+
}));
|
9964 |
+
},
|
9965 |
+
|
9966 |
+
_destroy: function() {
|
9967 |
+
if (this.panel) {
|
9968 |
+
this.panel.$destroy(true);
|
9969 |
+
this.panel = null;
|
9970 |
+
}
|
9971 |
+
},
|
9972 |
+
|
9973 |
+
show: function(index$$1) {
|
9974 |
+
|
9975 |
+
if (!this.panel) {
|
9976 |
+
this._init();
|
9977 |
+
}
|
9978 |
+
|
9979 |
+
return this.panel.show(index$$1);
|
9980 |
+
|
9981 |
+
},
|
9982 |
+
|
9983 |
+
hide: function() {
|
9984 |
+
|
9985 |
+
return this.panel && this.panel.hide();
|
9986 |
+
|
9987 |
+
}
|
9988 |
+
|
9989 |
+
}
|
9990 |
+
|
9991 |
+
};
|
9992 |
+
|
9993 |
+
function isEqualList$1(listA, listB) {
|
9994 |
+
return listA.length === listB.length
|
9995 |
+
&& listA.every(function (el, i) { return el === listB[i]; });
|
9996 |
+
}
|
9997 |
+
|
9998 |
+
function install$2(UIkit, Lightbox) {
|
9999 |
+
|
10000 |
+
if (!UIkit.lightboxPanel) {
|
10001 |
+
UIkit.component('lightboxPanel', LightboxPanel);
|
10002 |
+
}
|
10003 |
+
|
10004 |
+
assign(
|
10005 |
+
Lightbox.props,
|
10006 |
+
UIkit.component('lightboxPanel').options.props
|
10007 |
+
);
|
10008 |
+
|
10009 |
+
}
|
10010 |
+
|
10011 |
+
var obj;
|
10012 |
+
|
10013 |
+
var containers = {};
|
10014 |
+
|
10015 |
+
var Notification = {
|
10016 |
+
|
10017 |
+
functional: true,
|
10018 |
+
|
10019 |
+
args: ['message', 'status'],
|
10020 |
+
|
10021 |
+
data: {
|
10022 |
+
message: '',
|
10023 |
+
status: '',
|
10024 |
+
timeout: 5000,
|
10025 |
+
group: null,
|
10026 |
+
pos: 'top-center',
|
10027 |
+
clsClose: 'uk-notification-close',
|
10028 |
+
clsMsg: 'uk-notification-message'
|
10029 |
+
},
|
10030 |
+
|
10031 |
+
install: install$3,
|
10032 |
+
|
10033 |
+
created: function() {
|
10034 |
+
|
10035 |
+
if (!containers[this.pos]) {
|
10036 |
+
containers[this.pos] = append(this.$container, ("<div class=\"uk-notification uk-notification-" + (this.pos) + "\"></div>"));
|
10037 |
+
}
|
10038 |
+
|
10039 |
+
var container = css(containers[this.pos], 'display', 'block');
|
10040 |
+
|
10041 |
+
this.$mount(append(container,
|
10042 |
+
("<div class=\"" + (this.clsMsg) + (this.status ? (" " + (this.clsMsg) + "-" + (this.status)) : '') + "\"> <a href=\"#\" class=\"" + (this.clsClose) + "\" data-uk-close></a> <div>" + (this.message) + "</div> </div>")
|
10043 |
+
));
|
10044 |
+
|
10045 |
+
},
|
10046 |
+
|
10047 |
+
connected: function() {
|
10048 |
+
var this$1 = this;
|
10049 |
+
|
10050 |
+
|
10051 |
+
var marginBottom = toFloat(css(this.$el, 'marginBottom'));
|
10052 |
+
Transition.start(
|
10053 |
+
css(this.$el, {opacity: 0, marginTop: -this.$el.offsetHeight, marginBottom: 0}),
|
10054 |
+
{opacity: 1, marginTop: 0, marginBottom: marginBottom}
|
10055 |
+
).then(function () {
|
10056 |
+
if (this$1.timeout) {
|
10057 |
+
this$1.timer = setTimeout(this$1.close, this$1.timeout);
|
10058 |
+
}
|
10059 |
+
});
|
10060 |
+
|
10061 |
+
},
|
10062 |
+
|
10063 |
+
events: ( obj = {
|
10064 |
+
|
10065 |
+
click: function(e) {
|
10066 |
+
if (closest(e.target, 'a[href="#"]')) {
|
10067 |
+
e.preventDefault();
|
10068 |
+
}
|
10069 |
+
this.close();
|
10070 |
+
}
|
10071 |
+
|
10072 |
+
}, obj[pointerEnter] = function () {
|
10073 |
+
if (this.timer) {
|
10074 |
+
clearTimeout(this.timer);
|
10075 |
+
}
|
10076 |
+
}, obj[pointerLeave] = function () {
|
10077 |
+
if (this.timeout) {
|
10078 |
+
this.timer = setTimeout(this.close, this.timeout);
|
10079 |
+
}
|
10080 |
+
}, obj ),
|
10081 |
+
|
10082 |
+
methods: {
|
10083 |
+
|
10084 |
+
close: function(immediate) {
|
10085 |
+
var this$1 = this;
|
10086 |
+
|
10087 |
+
|
10088 |
+
var removeFn = function () {
|
10089 |
+
|
10090 |
+
trigger(this$1.$el, 'close', [this$1]);
|
10091 |
+
remove(this$1.$el);
|
10092 |
+
|
10093 |
+
if (!containers[this$1.pos].children.length) {
|
10094 |
+
css(containers[this$1.pos], 'display', 'none');
|
10095 |
+
}
|
10096 |
+
|
10097 |
+
};
|
10098 |
+
|
10099 |
+
if (this.timer) {
|
10100 |
+
clearTimeout(this.timer);
|
10101 |
+
}
|
10102 |
+
|
10103 |
+
if (immediate) {
|
10104 |
+
removeFn();
|
10105 |
+
} else {
|
10106 |
+
Transition.start(this.$el, {
|
10107 |
+
opacity: 0,
|
10108 |
+
marginTop: -this.$el.offsetHeight,
|
10109 |
+
marginBottom: 0
|
10110 |
+
}).then(removeFn);
|
10111 |
+
}
|
10112 |
+
}
|
10113 |
+
|
10114 |
+
}
|
10115 |
+
|
10116 |
+
};
|
10117 |
+
|
10118 |
+
function install$3(UIkit) {
|
10119 |
+
UIkit.notification.closeAll = function (group, immediate) {
|
10120 |
+
apply(document.body, function (el) {
|
10121 |
+
var notification = UIkit.getComponent(el, 'notification');
|
10122 |
+
if (notification && (!group || group === notification.group)) {
|
10123 |
+
notification.close(immediate);
|
10124 |
+
}
|
10125 |
+
});
|
10126 |
+
};
|
10127 |
+
}
|
10128 |
+
|
10129 |
+
var props = ['x', 'y', 'bgx', 'bgy', 'rotate', 'scale', 'color', 'backgroundColor', 'borderColor', 'opacity', 'blur', 'hue', 'grayscale', 'invert', 'saturate', 'sepia', 'fopacity'];
|
10130 |
+
|
10131 |
+
var Parallax = {
|
10132 |
+
|
10133 |
+
mixins: [Media],
|
10134 |
+
|
10135 |
+
props: props.reduce(function (props, prop) {
|
10136 |
+
props[prop] = 'list';
|
10137 |
+
return props;
|
10138 |
+
}, {}),
|
10139 |
+
|
10140 |
+
data: props.reduce(function (data$$1, prop) {
|
10141 |
+
data$$1[prop] = undefined;
|
10142 |
+
return data$$1;
|
10143 |
+
}, {}),
|
10144 |
+
|
10145 |
+
computed: {
|
10146 |
+
|
10147 |
+
props: function(properties, $el) {
|
10148 |
+
var this$1 = this;
|
10149 |
+
|
10150 |
+
|
10151 |
+
return props.reduce(function (props, prop) {
|
10152 |
+
|
10153 |
+
if (isUndefined(properties[prop])) {
|
10154 |
+
return props;
|
10155 |
+
}
|
10156 |
+
|
10157 |
+
var isColor = prop.match(/color/i);
|
10158 |
+
var isCssProp = isColor || prop === 'opacity';
|
10159 |
+
|
10160 |
+
var pos, bgPos, diff;
|
10161 |
+
var steps = properties[prop].slice(0);
|
10162 |
+
|
10163 |
+
if (isCssProp) {
|
10164 |
+
css($el, prop, '');
|
10165 |
+
}
|
10166 |
+
|
10167 |
+
if (steps.length < 2) {
|
10168 |
+
steps.unshift((prop === 'scale'
|
10169 |
+
? 1
|
10170 |
+
: isCssProp
|
10171 |
+
? css($el, prop)
|
10172 |
+
: 0) || 0);
|
10173 |
+
}
|
10174 |
+
|
10175 |
+
var unit = includes(steps.join(''), '%') ? '%' : 'px';
|
10176 |
+
|
10177 |
+
if (isColor) {
|
10178 |
+
|
10179 |
+
var ref = $el.style;
|
10180 |
+
var color = ref.color;
|
10181 |
+
steps = steps.map(function (step) { return parseColor($el, step); });
|
10182 |
+
$el.style.color = color;
|
10183 |
+
|
10184 |
+
} else {
|
10185 |
+
|
10186 |
+
steps = steps.map(toFloat);
|
10187 |
+
|
10188 |
+
}
|
10189 |
+
|
10190 |
+
if (prop.match(/^bg/)) {
|
10191 |
+
|
10192 |
+
css($el, ("background-position-" + (prop[2])), '');
|
10193 |
+
bgPos = css($el, 'backgroundPosition').split(' ')[prop[2] === 'x' ? 0 : 1]; // IE 11 can't read background-position-[x|y]
|
10194 |
+
|
10195 |
+
if (this$1.covers) {
|
10196 |
+
|
10197 |
+
var min = Math.min.apply(Math, steps);
|
10198 |
+
var max = Math.max.apply(Math, steps);
|
10199 |
+
var down = steps.indexOf(min) < steps.indexOf(max);
|
10200 |
+
|
10201 |
+
diff = max - min;
|
10202 |
+
|
10203 |
+
steps = steps.map(function (step) { return step - (down ? min : max); });
|
10204 |
+
pos = (down ? -diff : 0) + "px";
|
10205 |
+
|
10206 |
+
} else {
|
10207 |
+
|
10208 |
+
pos = bgPos;
|
10209 |
+
|
10210 |
+
}
|
10211 |
+
}
|
10212 |
+
|
10213 |
+
props[prop] = {steps: steps, unit: unit, pos: pos, bgPos: bgPos, diff: diff};
|
10214 |
+
|
10215 |
+
return props;
|
10216 |
+
|
10217 |
+
}, {});
|
10218 |
+
|
10219 |
+
},
|
10220 |
+
|
10221 |
+
bgProps: function() {
|
10222 |
+
var this$1 = this;
|
10223 |
+
|
10224 |
+
return ['bgx', 'bgy'].filter(function (bg) { return bg in this$1.props; });
|
10225 |
+
},
|
10226 |
+
|
10227 |
+
covers: function(_, $el) {
|
10228 |
+
return covers($el);
|
10229 |
+
}
|
10230 |
+
|
10231 |
+
},
|
10232 |
+
|
10233 |
+
disconnected: function() {
|
10234 |
+
delete this._image;
|
10235 |
+
},
|
10236 |
+
|
10237 |
+
update: {
|
10238 |
+
|
10239 |
+
read: function(data$$1) {
|
10240 |
+
var this$1 = this;
|
10241 |
+
|
10242 |
+
|
10243 |
+
data$$1.active = this.matchMedia;
|
10244 |
+
|
10245 |
+
if (!data$$1.active) {
|
10246 |
+
return;
|
10247 |
+
}
|
10248 |
+
|
10249 |
+
if (!data$$1.image && this.covers && this.bgProps.length) {
|
10250 |
+
var src = css(this.$el, 'backgroundImage').replace(/^none|url\(["']?(.+?)["']?\)$/, '$1');
|
10251 |
+
|
10252 |
+
if (src) {
|
10253 |
+
var img = new Image();
|
10254 |
+
img.src = src;
|
10255 |
+
data$$1.image = img;
|
10256 |
+
|
10257 |
+
if (!img.naturalWidth) {
|
10258 |
+
img.onload = function () { return this$1.$emit(); };
|
10259 |
+
}
|
10260 |
+
}
|
10261 |
+
|
10262 |
+
}
|
10263 |
+
|
10264 |
+
var image = data$$1.image;
|
10265 |
+
|
10266 |
+
if (!image || !image.naturalWidth) {
|
10267 |
+
return;
|
10268 |
+
}
|
10269 |
+
|
10270 |
+
var dimEl = {
|
10271 |
+
width: this.$el.offsetWidth,
|
10272 |
+
height: this.$el.offsetHeight
|
10273 |
+
};
|
10274 |
+
var dimImage = {
|
10275 |
+
width: image.naturalWidth,
|
10276 |
+
height: image.naturalHeight
|
10277 |
+
};
|
10278 |
+
|
10279 |
+
var dim = Dimensions.cover(dimImage, dimEl);
|
10280 |
+
|
10281 |
+
this.bgProps.forEach(function (prop) {
|
10282 |
+
|
10283 |
+
var ref = this$1.props[prop];
|
10284 |
+
var diff = ref.diff;
|
10285 |
+
var bgPos = ref.bgPos;
|
10286 |
+
var steps = ref.steps;
|
10287 |
+
var attr$$1 = prop === 'bgy' ? 'height' : 'width';
|
10288 |
+
var span = dim[attr$$1] - dimEl[attr$$1];
|
10289 |
+
|
10290 |
+
if (!bgPos.match(/%$|0px/)) {
|
10291 |
+
return;
|
10292 |
+
}
|
10293 |
+
|
10294 |
+
if (span < diff) {
|
10295 |
+
dimEl[attr$$1] = dim[attr$$1] + diff - span;
|
10296 |
+
} else if (span > diff) {
|
10297 |
+
|
10298 |
+
var bgPosFloat = parseFloat(bgPos);
|
10299 |
+
|
10300 |
+
if (bgPosFloat) {
|
10301 |
+
this$1.props[prop].steps = steps.map(function (step) { return step - (span - diff) / (100 / bgPosFloat); });
|
10302 |
+
}
|
10303 |
+
}
|
10304 |
+
|
10305 |
+
dim = Dimensions.cover(dimImage, dimEl);
|
10306 |
+
});
|
10307 |
+
|
10308 |
+
data$$1.dim = dim;
|
10309 |
+
},
|
10310 |
+
|
10311 |
+
write: function(ref) {
|
10312 |
+
var dim = ref.dim;
|
10313 |
+
var active = ref.active;
|
10314 |
+
|
10315 |
+
|
10316 |
+
if (!active) {
|
10317 |
+
css(this.$el, {backgroundSize: '', backgroundRepeat: ''});
|
10318 |
+
return;
|
10319 |
+
}
|
10320 |
+
|
10321 |
+
dim && css(this.$el, {
|
10322 |
+
backgroundSize: ((dim.width) + "px " + (dim.height) + "px"),
|
10323 |
+
backgroundRepeat: 'no-repeat'
|
10324 |
+
});
|
10325 |
+
|
10326 |
+
},
|
10327 |
+
|
10328 |
+
events: ['load', 'resize']
|
10329 |
+
|
10330 |
+
},
|
10331 |
+
|
10332 |
+
methods: {
|
10333 |
+
|
10334 |
+
reset: function() {
|
10335 |
+
var this$1 = this;
|
10336 |
+
|
10337 |
+
each(this.getCss(0), function (_, prop) { return css(this$1.$el, prop, ''); });
|
10338 |
+
},
|
10339 |
+
|
10340 |
+
getCss: function(percent) {
|
10341 |
+
|
10342 |
+
var ref = this;
|
10343 |
+
var props = ref.props;
|
10344 |
+
var translated = false;
|
10345 |
+
|
10346 |
+
return Object.keys(props).reduce(function (css$$1, prop) {
|
10347 |
+
|
10348 |
+
var ref = props[prop];
|
10349 |
+
var steps = ref.steps;
|
10350 |
+
var unit = ref.unit;
|
10351 |
+
var pos = ref.pos;
|
10352 |
+
var value = getValue(steps, percent);
|
10353 |
+
|
10354 |
+
switch (prop) {
|
10355 |
+
|
10356 |
+
// transforms
|
10357 |
+
case 'x':
|
10358 |
+
case 'y':
|
10359 |
+
|
10360 |
+
if (translated) {
|
10361 |
+
break;
|
10362 |
+
}
|
10363 |
+
|
10364 |
+
var ref$1 = ['x', 'y'].map(function (dir) { return prop === dir
|
10365 |
+
? toFloat(value).toFixed(0) + unit
|
10366 |
+
: props[dir]
|
10367 |
+
? getValue(props[dir].steps, percent, 0) + props[dir].unit
|
10368 |
+
: 0; }
|
10369 |
+
);
|
10370 |
+
var x = ref$1[0];
|
10371 |
+
var y = ref$1[1];
|
10372 |
+
|
10373 |
+
translated = css$$1.transform += " translate3d(" + x + ", " + y + ", 0)";
|
10374 |
+
break;
|
10375 |
+
case 'rotate':
|
10376 |
+
css$$1.transform += " rotate(" + value + "deg)";
|
10377 |
+
break;
|
10378 |
+
case 'scale':
|
10379 |
+
css$$1.transform += " scale(" + value + ")";
|
10380 |
+
break;
|
10381 |
+
|
10382 |
+
// bg image
|
10383 |
+
case 'bgy':
|
10384 |
+
case 'bgx':
|
10385 |
+
css$$1[("background-position-" + (prop[2]))] = "calc(" + pos + " + " + (value + unit) + ")";
|
10386 |
+
break;
|
10387 |
+
|
10388 |
+
// color
|
10389 |
+
case 'color':
|
10390 |
+
case 'backgroundColor':
|
10391 |
+
case 'borderColor':
|
10392 |
+
|
10393 |
+
var ref$2 = getStep(steps, percent);
|
10394 |
+
var start = ref$2[0];
|
10395 |
+
var end = ref$2[1];
|
10396 |
+
var p = ref$2[2];
|
10397 |
+
|
10398 |
+
css$$1[prop] = "rgba(" + (start.map(function (value, i) {
|
10399 |
+
value = value + p * (end[i] - value);
|
10400 |
+
return i === 3 ? toFloat(value) : parseInt(value, 10);
|
10401 |
+
}).join(',')) + ")";
|
10402 |
+
break;
|
10403 |
+
|
10404 |
+
// CSS Filter
|
10405 |
+
case 'blur':
|
10406 |
+
css$$1.filter += " blur(" + value + "px)";
|
10407 |
+
break;
|
10408 |
+
case 'hue':
|
10409 |
+
css$$1.filter += " hue-rotate(" + value + "deg)";
|
10410 |
+
break;
|
10411 |
+
case 'fopacity':
|
10412 |
+
css$$1.filter += " opacity(" + value + "%)";
|
10413 |
+
break;
|
10414 |
+
case 'grayscale':
|
10415 |
+
case 'invert':
|
10416 |
+
case 'saturate':
|
10417 |
+
case 'sepia':
|
10418 |
+
css$$1.filter += " " + prop + "(" + value + "%)";
|
10419 |
+
break;
|
10420 |
+
|
10421 |
+
default:
|
10422 |
+
css$$1[prop] = value;
|
10423 |
+
}
|
10424 |
+
|
10425 |
+
return css$$1;
|
10426 |
+
|
10427 |
+
}, {transform: '', filter: ''});
|
10428 |
+
|
10429 |
+
}
|
10430 |
+
|
10431 |
+
}
|
10432 |
+
|
10433 |
+
};
|
10434 |
+
|
10435 |
+
function parseColor(el, color) {
|
10436 |
+
return css(css(el, 'color', color), 'color').split(/[(),]/g).slice(1, -1).concat(1).slice(0, 4).map(function (n) { return toFloat(n); });
|
10437 |
+
}
|
10438 |
+
|
10439 |
+
function getStep(steps, percent) {
|
10440 |
+
var count = steps.length - 1;
|
10441 |
+
var index$$1 = Math.min(Math.floor(count * percent), count - 1);
|
10442 |
+
var step = steps.slice(index$$1, index$$1 + 2);
|
10443 |
+
|
10444 |
+
step.push(percent === 1 ? 1 : percent % (1 / count) * count);
|
10445 |
+
|
10446 |
+
return step;
|
10447 |
+
}
|
10448 |
+
|
10449 |
+
function getValue(steps, percent, digits) {
|
10450 |
+
if ( digits === void 0 ) digits = 2;
|
10451 |
+
|
10452 |
+
var ref = getStep(steps, percent);
|
10453 |
+
var start = ref[0];
|
10454 |
+
var end = ref[1];
|
10455 |
+
var p = ref[2];
|
10456 |
+
return (isNumber(start)
|
10457 |
+
? start + Math.abs(start - end) * p * (start < end ? 1 : -1)
|
10458 |
+
: +end
|
10459 |
+
).toFixed(digits);
|
10460 |
+
}
|
10461 |
+
|
10462 |
+
function covers(el) {
|
10463 |
+
var ref = el.style;
|
10464 |
+
var backgroundSize = ref.backgroundSize;
|
10465 |
+
var covers = css(css(el, 'backgroundSize', ''), 'backgroundSize') === 'cover';
|
10466 |
+
el.style.backgroundSize = backgroundSize;
|
10467 |
+
return covers;
|
10468 |
+
}
|
10469 |
+
|
10470 |
+
var Parallax$1 = {
|
10471 |
+
|
10472 |
+
mixins: [Parallax],
|
10473 |
+
|
10474 |
+
props: {
|
10475 |
+
target: String,
|
10476 |
+
viewport: Number,
|
10477 |
+
easing: Number,
|
10478 |
+
},
|
10479 |
+
|
10480 |
+
data: {
|
10481 |
+
target: false,
|
10482 |
+
viewport: 1,
|
10483 |
+
easing: 1,
|
10484 |
+
},
|
10485 |
+
|
10486 |
+
computed: {
|
10487 |
+
|
10488 |
+
target: function(ref, $el) {
|
10489 |
+
var target = ref.target;
|
10490 |
+
|
10491 |
+
return target && query(target, $el) || $el;
|
10492 |
+
}
|
10493 |
+
|
10494 |
+
},
|
10495 |
+
|
10496 |
+
update: {
|
10497 |
+
|
10498 |
+
read: function(ref, ref$1) {
|
10499 |
+
var percent = ref.percent;
|
10500 |
+
var active = ref.active;
|
10501 |
+
var type = ref$1.type;
|
10502 |
+
|
10503 |
+
|
10504 |
+
if (type !== 'scroll') {
|
10505 |
+
percent = false;
|
10506 |
+
}
|
10507 |
+
|
10508 |
+
if (!active) {
|
10509 |
+
return;
|
10510 |
+
}
|
10511 |
+
|
10512 |
+
var prev = percent;
|
10513 |
+
percent = ease$1(scrolledOver(this.target) / (this.viewport || 1), this.easing);
|
10514 |
+
|
10515 |
+
return {
|
10516 |
+
percent: percent,
|
10517 |
+
style: prev !== percent ? this.getCss(percent) : false
|
10518 |
+
};
|
10519 |
+
},
|
10520 |
+
|
10521 |
+
write: function(ref) {
|
10522 |
+
var style = ref.style;
|
10523 |
+
var active = ref.active;
|
10524 |
+
|
10525 |
+
|
10526 |
+
if (!active) {
|
10527 |
+
this.reset();
|
10528 |
+
return;
|
10529 |
+
}
|
10530 |
+
|
10531 |
+
style && css(this.$el, style);
|
10532 |
+
|
10533 |
+
},
|
10534 |
+
|
10535 |
+
events: ['scroll', 'load', 'resize']
|
10536 |
+
}
|
10537 |
+
|
10538 |
+
};
|
10539 |
+
|
10540 |
+
function ease$1(percent, easing) {
|
10541 |
+
return clamp(percent * (1 - (easing - easing * percent)));
|
10542 |
+
}
|
10543 |
+
|
10544 |
+
var SliderReactive = {
|
10545 |
+
|
10546 |
+
update: {
|
10547 |
+
|
10548 |
+
write: function() {
|
10549 |
+
|
10550 |
+
if (this.stack.length || this.dragging) {
|
10551 |
+
return;
|
10552 |
+
}
|
10553 |
+
|
10554 |
+
var index$$1 = this.getValidIndex();
|
10555 |
+
delete this.index;
|
10556 |
+
removeClass(this.slides, this.clsActive, this.clsActivated);
|
10557 |
+
this.show(index$$1);
|
10558 |
+
|
10559 |
+
},
|
10560 |
+
|
10561 |
+
events: ['load', 'resize']
|
10562 |
+
|
10563 |
+
}
|
10564 |
+
|
10565 |
+
};
|
10566 |
+
|
10567 |
+
function Transitioner$1 (prev, next, dir, ref) {
|
10568 |
+
var center = ref.center;
|
10569 |
+
var easing = ref.easing;
|
10570 |
+
var list = ref.list;
|
10571 |
+
|
10572 |
+
|
10573 |
+
var deferred = new Deferred();
|
10574 |
+
|
10575 |
+
var from = prev
|
10576 |
+
? getLeft(prev, list, center)
|
10577 |
+
: getLeft(next, list, center) + bounds(next).width * dir;
|
10578 |
+
var to = next
|
10579 |
+
? getLeft(next, list, center)
|
10580 |
+
: from + bounds(prev).width * dir * (isRtl ? -1 : 1);
|
10581 |
+
|
10582 |
+
return {
|
10583 |
+
|
10584 |
+
dir: dir,
|
10585 |
+
|
10586 |
+
show: function(duration, percent, linear) {
|
10587 |
+
if ( percent === void 0 ) percent = 0;
|
10588 |
+
|
10589 |
+
|
10590 |
+
var timing = linear ? 'linear' : easing;
|
10591 |
+
duration -= Math.round(duration * clamp(percent, -1, 1));
|
10592 |
+
|
10593 |
+
this.translate(percent);
|
10594 |
+
|
10595 |
+
prev && this.updateTranslates();
|
10596 |
+
percent = prev ? percent : clamp(percent, 0, 1);
|
10597 |
+
triggerUpdate$1(this.getItemIn(), 'itemin', {percent: percent, duration: duration, timing: timing, dir: dir});
|
10598 |
+
prev && triggerUpdate$1(this.getItemIn(true), 'itemout', {percent: 1 - percent, duration: duration, timing: timing, dir: dir});
|
10599 |
+
|
10600 |
+
Transition
|
10601 |
+
.start(list, {transform: translate(-to * (isRtl ? -1 : 1), 'px')}, duration, timing)
|
10602 |
+
.then(deferred.resolve, noop);
|
10603 |
+
|
10604 |
+
return deferred.promise;
|
10605 |
+
|
10606 |
+
},
|
10607 |
+
|
10608 |
+
stop: function() {
|
10609 |
+
return Transition.stop(list);
|
10610 |
+
},
|
10611 |
+
|
10612 |
+
cancel: function() {
|
10613 |
+
Transition.cancel(list);
|
10614 |
+
},
|
10615 |
+
|
10616 |
+
reset: function() {
|
10617 |
+
css(list, 'transform', '');
|
10618 |
+
},
|
10619 |
+
|
10620 |
+
forward: function(duration, percent) {
|
10621 |
+
if ( percent === void 0 ) percent = this.percent();
|
10622 |
+
|
10623 |
+
Transition.cancel(list);
|
10624 |
+
return this.show(duration, percent, true);
|
10625 |
+
},
|
10626 |
+
|
10627 |
+
translate: function(percent) {
|
10628 |
+
|
10629 |
+
var distance = this.getDistance() * dir * (isRtl ? -1 : 1);
|
10630 |
+
|
10631 |
+
css(list, 'transform', translate(clamp(
|
10632 |
+
-to + (distance - distance * percent),
|
10633 |
+
-getWidth(list),
|
10634 |
+
bounds(list).width
|
10635 |
+
) * (isRtl ? -1 : 1), 'px'));
|
10636 |
+
|
10637 |
+
this.updateTranslates();
|
10638 |
+
|
10639 |
+
if (prev) {
|
10640 |
+
percent = clamp(percent, -1, 1);
|
10641 |
+
triggerUpdate$1(this.getItemIn(), 'itemtranslatein', {percent: percent, dir: dir});
|
10642 |
+
triggerUpdate$1(this.getItemIn(true), 'itemtranslateout', {percent: 1 - percent, dir: dir});
|
10643 |
+
}
|
10644 |
+
|
10645 |
+
},
|
10646 |
+
|
10647 |
+
percent: function() {
|
10648 |
+
return Math.abs((css(list, 'transform').split(',')[4] * (isRtl ? -1 : 1) + from) / (to - from));
|
10649 |
+
},
|
10650 |
+
|
10651 |
+
getDistance: function() {
|
10652 |
+
return Math.abs(to - from);
|
10653 |
+
},
|
10654 |
+
|
10655 |
+
getItemIn: function(out) {
|
10656 |
+
if ( out === void 0 ) out = false;
|
10657 |
+
|
10658 |
+
|
10659 |
+
var actives = this.getActives();
|
10660 |
+
var all = sortBy(slides(list), 'offsetLeft');
|
10661 |
+
var i = index(all, actives[dir * (out ? -1 : 1) > 0 ? actives.length - 1 : 0]);
|
10662 |
+
|
10663 |
+
return ~i && all[i + (prev && !out ? dir : 0)];
|
10664 |
+
|
10665 |
+
},
|
10666 |
+
|
10667 |
+
getActives: function() {
|
10668 |
+
|
10669 |
+
var left = getLeft(prev || next, list, center);
|
10670 |
+
|
10671 |
+
return sortBy(slides(list).filter(function (slide) {
|
10672 |
+
var slideLeft = getElLeft(slide, list);
|
10673 |
+
return slideLeft >= left && slideLeft + bounds(slide).width <= bounds(list).width + left;
|
10674 |
+
}), 'offsetLeft');
|
10675 |
+
|
10676 |
+
},
|
10677 |
+
|
10678 |
+
updateTranslates: function() {
|
10679 |
+
|
10680 |
+
var actives = this.getActives();
|
10681 |
+
|
10682 |
+
slides(list).forEach(function (slide) {
|
10683 |
+
var isActive = includes(actives, slide);
|
10684 |
+
|
10685 |
+
triggerUpdate$1(slide, ("itemtranslate" + (isActive ? 'in' : 'out')), {
|
10686 |
+
percent: isActive ? 1 : 0,
|
10687 |
+
dir: slide.offsetLeft <= next.offsetLeft ? 1 : -1
|
10688 |
+
});
|
10689 |
+
});
|
10690 |
+
}
|
10691 |
+
|
10692 |
+
};
|
10693 |
+
|
10694 |
+
}
|
10695 |
+
|
10696 |
+
function getLeft(el, list, center) {
|
10697 |
+
|
10698 |
+
var left = getElLeft(el, list);
|
10699 |
+
|
10700 |
+
return center
|
10701 |
+
? left - centerEl(el, list)
|
10702 |
+
: Math.min(left, getMax(list));
|
10703 |
+
|
10704 |
+
}
|
10705 |
+
|
10706 |
+
function getMax(list) {
|
10707 |
+
return Math.max(0, getWidth(list) - bounds(list).width);
|
10708 |
+
}
|
10709 |
+
|
10710 |
+
function getWidth(list) {
|
10711 |
+
return slides(list).reduce(function (right, el) { return bounds(el).width + right; }, 0);
|
10712 |
+
}
|
10713 |
+
|
10714 |
+
function getMaxWidth(list) {
|
10715 |
+
return slides(list).reduce(function (right, el) { return Math.max(right, bounds(el).width); }, 0);
|
10716 |
+
}
|
10717 |
+
|
10718 |
+
function centerEl(el, list) {
|
10719 |
+
return bounds(list).width / 2 - bounds(el).width / 2;
|
10720 |
+
}
|
10721 |
+
|
10722 |
+
function getElLeft(el, list) {
|
10723 |
+
return (position(el).left + (isRtl ? bounds(el).width - bounds(list).width : 0)) * (isRtl ? -1 : 1);
|
10724 |
+
}
|
10725 |
+
|
10726 |
+
function bounds(el) {
|
10727 |
+
return el.getBoundingClientRect();
|
10728 |
+
}
|
10729 |
+
|
10730 |
+
function triggerUpdate$1(el, type, data$$1) {
|
10731 |
+
trigger(el, createEvent(type, false, false, data$$1));
|
10732 |
+
}
|
10733 |
+
|
10734 |
+
function slides(list) {
|
10735 |
+
return toNodes(list.children);
|
10736 |
+
}
|
10737 |
+
|
10738 |
+
var Slider$1 = {
|
10739 |
+
|
10740 |
+
mixins: [Class, Slider, SliderReactive],
|
10741 |
+
|
10742 |
+
props: {
|
10743 |
+
center: Boolean,
|
10744 |
+
sets: Boolean,
|
10745 |
+
},
|
10746 |
+
|
10747 |
+
data: {
|
10748 |
+
center: false,
|
10749 |
+
sets: false,
|
10750 |
+
attrItem: 'uk-slider-item',
|
10751 |
+
selList: '.uk-slider-items',
|
10752 |
+
selNav: '.uk-slider-nav',
|
10753 |
+
clsContainer: 'uk-slider-container',
|
10754 |
+
Transitioner: Transitioner$1
|
10755 |
+
},
|
10756 |
+
|
10757 |
+
computed: {
|
10758 |
+
|
10759 |
+
avgWidth: function() {
|
10760 |
+
return getWidth(this.list) / this.length;
|
10761 |
+
},
|
10762 |
+
|
10763 |
+
finite: function(ref) {
|
10764 |
+
var finite = ref.finite;
|
10765 |
+
|
10766 |
+
return finite || getWidth(this.list) < bounds(this.list).width + getMaxWidth(this.list) + this.center;
|
10767 |
+
},
|
10768 |
+
|
10769 |
+
maxIndex: function() {
|
10770 |
+
var this$1 = this;
|
10771 |
+
|
10772 |
+
|
10773 |
+
if (!this.finite || this.center && !this.sets) {
|
10774 |
+
return this.length - 1;
|
10775 |
+
}
|
10776 |
+
|
10777 |
+
if (this.center) {
|
10778 |
+
return this.sets[this.sets.length - 1];
|
10779 |
+
}
|
10780 |
+
|
10781 |
+
css(this.slides, 'order', '');
|
10782 |
+
|
10783 |
+
var max = getMax(this.list);
|
10784 |
+
var i = this.length;
|
10785 |
+
|
10786 |
+
while (i--) {
|
10787 |
+
if (getElLeft(this$1.list.children[i], this$1.list) < max) {
|
10788 |
+
return Math.min(i + 1, this$1.length - 1);
|
10789 |
+
}
|
10790 |
+
}
|
10791 |
+
|
10792 |
+
return 0;
|
10793 |
+
},
|
10794 |
+
|
10795 |
+
sets: function(ref) {
|
10796 |
+
var this$1 = this;
|
10797 |
+
var sets = ref.sets;
|
10798 |
+
|
10799 |
+
|
10800 |
+
var width$$1 = bounds(this.list).width / (this.center ? 2 : 1);
|
10801 |
+
|
10802 |
+
var left = 0;
|
10803 |
+
var leftCenter = width$$1;
|
10804 |
+
var slideLeft = 0;
|
10805 |
+
|
10806 |
+
sets = sets && this.slides.reduce(function (sets, slide, i) {
|
10807 |
+
|
10808 |
+
var ref = bounds(slide);
|
10809 |
+
var slideWidth = ref.width;
|
10810 |
+
var slideRight = slideLeft + slideWidth;
|
10811 |
+
|
10812 |
+
if (slideRight > left) {
|
10813 |
+
|
10814 |
+
if (!this$1.center && i > this$1.maxIndex) {
|
10815 |
+
i = this$1.maxIndex;
|
10816 |
+
}
|
10817 |
+
|
10818 |
+
if (!includes(sets, i)) {
|
10819 |
+
|
10820 |
+
var cmp = this$1.slides[i + 1];
|
10821 |
+
if (this$1.center && cmp && slideWidth < leftCenter - bounds(cmp).width / 2) {
|
10822 |
+
leftCenter -= slideWidth;
|
10823 |
+
} else {
|
10824 |
+
leftCenter = width$$1;
|
10825 |
+
sets.push(i);
|
10826 |
+
left = slideLeft + width$$1 + (this$1.center ? slideWidth / 2 : 0);
|
10827 |
+
}
|
10828 |
+
|
10829 |
+
}
|
10830 |
+
}
|
10831 |
+
|
10832 |
+
slideLeft += slideWidth;
|
10833 |
+
|
10834 |
+
return sets;
|
10835 |
+
|
10836 |
+
}, []);
|
10837 |
+
|
10838 |
+
return sets && sets.length && sets;
|
10839 |
+
|
10840 |
+
},
|
10841 |
+
|
10842 |
+
transitionOptions: function() {
|
10843 |
+
return {
|
10844 |
+
center: this.center,
|
10845 |
+
list: this.list
|
10846 |
+
};
|
10847 |
+
}
|
10848 |
+
|
10849 |
+
},
|
10850 |
+
|
10851 |
+
connected: function() {
|
10852 |
+
toggleClass(this.$el, this.clsContainer, !$(("." + (this.clsContainer)), this.$el));
|
10853 |
+
},
|
10854 |
+
|
10855 |
+
update: {
|
10856 |
+
|
10857 |
+
write: function() {
|
10858 |
+
var this$1 = this;
|
10859 |
+
|
10860 |
+
|
10861 |
+
$$(("[" + (this.attrItem) + "],[data-" + (this.attrItem) + "]"), this.$el).forEach(function (el) {
|
10862 |
+
var index$$1 = data(el, this$1.attrItem);
|
10863 |
+
this$1.maxIndex && toggleClass(el, 'uk-hidden', isNumeric(index$$1) && (this$1.sets && !includes(this$1.sets, toFloat(index$$1)) || index$$1 > this$1.maxIndex));
|
10864 |
+
});
|
10865 |
+
|
10866 |
+
},
|
10867 |
+
|
10868 |
+
events: ['load', 'resize']
|
10869 |
+
|
10870 |
+
},
|
10871 |
+
|
10872 |
+
events: {
|
10873 |
+
|
10874 |
+
beforeitemshow: function(e) {
|
10875 |
+
var this$1 = this;
|
10876 |
+
|
10877 |
+
|
10878 |
+
if (!this.dragging && this.sets && this.stack.length < 2 && !includes(this.sets, this.index)) {
|
10879 |
+
this.index = this.getValidIndex();
|
10880 |
+
}
|
10881 |
+
|
10882 |
+
var diff = Math.abs(
|
10883 |
+
this.index
|
10884 |
+
- this.prevIndex
|
10885 |
+
+ (this.dir > 0 && this.index < this.prevIndex || this.dir < 0 && this.index > this.prevIndex ? (this.maxIndex + 1) * this.dir : 0)
|
10886 |
+
);
|
10887 |
+
|
10888 |
+
if (!this.dragging && diff > 1) {
|
10889 |
+
|
10890 |
+
for (var i = 0; i < diff; i++) {
|
10891 |
+
this$1.stack.splice(1, 0, this$1.dir > 0 ? 'next' : 'previous');
|
10892 |
+
}
|
10893 |
+
|
10894 |
+
e.preventDefault();
|
10895 |
+
return;
|
10896 |
+
}
|
10897 |
+
|
10898 |
+
this.duration = speedUp(this.avgWidth / this.velocity)
|
10899 |
+
* (bounds(
|
10900 |
+
this.dir < 0 || !this.slides[this.prevIndex]
|
10901 |
+
? this.slides[this.index]
|
10902 |
+
: this.slides[this.prevIndex]
|
10903 |
+
).width / this.avgWidth);
|
10904 |
+
|
10905 |
+
this.reorder();
|
10906 |
+
|
10907 |
+
},
|
10908 |
+
|
10909 |
+
itemshow: function() {
|
10910 |
+
!isUndefined(this.prevIndex) && addClass(this._getTransitioner().getItemIn(), this.clsActive);
|
10911 |
+
},
|
10912 |
+
|
10913 |
+
itemshown: function() {
|
10914 |
+
var this$1 = this;
|
10915 |
+
|
10916 |
+
var actives = this._getTransitioner(this.index).getActives();
|
10917 |
+
this.slides.forEach(function (slide) { return toggleClass(slide, this$1.clsActive, includes(actives, slide)); });
|
10918 |
+
(!this.sets || includes(this.sets, toFloat(this.index))) && this.slides.forEach(function (slide) { return toggleClass(slide, this$1.clsActivated, includes(actives, slide)); });
|
10919 |
+
}
|
10920 |
+
|
10921 |
+
},
|
10922 |
+
|
10923 |
+
methods: {
|
10924 |
+
|
10925 |
+
reorder: function() {
|
10926 |
+
var this$1 = this;
|
10927 |
+
|
10928 |
+
|
10929 |
+
css(this.slides, 'order', '');
|
10930 |
+
|
10931 |
+
if (this.finite) {
|
10932 |
+
return;
|
10933 |
+
}
|
10934 |
+
|
10935 |
+
var index$$1 = this.dir > 0 && this.slides[this.prevIndex] ? this.prevIndex : this.index;
|
10936 |
+
|
10937 |
+
this.slides.forEach(function (slide, i) { return css(slide, 'order', this$1.dir > 0 && i < index$$1
|
10938 |
+
? 1
|
10939 |
+
: this$1.dir < 0 && i >= this$1.index
|
10940 |
+
? -1
|
10941 |
+
: ''
|
10942 |
+
); }
|
10943 |
+
);
|
10944 |
+
|
10945 |
+
if (!this.center) {
|
10946 |
+
return;
|
10947 |
+
}
|
10948 |
+
|
10949 |
+
var next = this.slides[index$$1];
|
10950 |
+
var width$$1 = bounds(this.list).width / 2 - bounds(next).width / 2;
|
10951 |
+
var j = 0;
|
10952 |
+
|
10953 |
+
while (width$$1 > 0) {
|
10954 |
+
var slideIndex = this$1.getIndex(--j + index$$1, index$$1);
|
10955 |
+
var slide = this$1.slides[slideIndex];
|
10956 |
+
|
10957 |
+
css(slide, 'order', slideIndex > index$$1 ? -2 : -1);
|
10958 |
+
width$$1 -= bounds(slide).width;
|
10959 |
+
}
|
10960 |
+
|
10961 |
+
},
|
10962 |
+
|
10963 |
+
getValidIndex: function(index$$1, prevIndex) {
|
10964 |
+
var this$1 = this;
|
10965 |
+
if ( index$$1 === void 0 ) index$$1 = this.index;
|
10966 |
+
if ( prevIndex === void 0 ) prevIndex = this.prevIndex;
|
10967 |
+
|
10968 |
+
|
10969 |
+
index$$1 = this.getIndex(index$$1, prevIndex);
|
10970 |
+
|
10971 |
+
if (!this.sets) {
|
10972 |
+
return index$$1;
|
10973 |
+
}
|
10974 |
+
|
10975 |
+
var prev;
|
10976 |
+
|
10977 |
+
do {
|
10978 |
+
|
10979 |
+
if (includes(this$1.sets, index$$1)) {
|
10980 |
+
return index$$1;
|
10981 |
+
}
|
10982 |
+
|
10983 |
+
prev = index$$1;
|
10984 |
+
index$$1 = this$1.getIndex(index$$1 + this$1.dir, prevIndex);
|
10985 |
+
|
10986 |
+
} while (index$$1 !== prev);
|
10987 |
+
|
10988 |
+
return index$$1;
|
10989 |
+
}
|
10990 |
+
|
10991 |
+
}
|
10992 |
+
|
10993 |
+
};
|
10994 |
+
|
10995 |
+
var SliderParallax = {
|
10996 |
+
|
10997 |
+
mixins: [Parallax],
|
10998 |
+
|
10999 |
+
data: {
|
11000 |
+
selItem: '!li'
|
11001 |
+
},
|
11002 |
+
|
11003 |
+
computed: {
|
11004 |
+
|
11005 |
+
item: function(ref, $el) {
|
11006 |
+
var selItem = ref.selItem;
|
11007 |
+
|
11008 |
+
return query(selItem, $el);
|
11009 |
+
}
|
11010 |
+
|
11011 |
+
},
|
11012 |
+
|
11013 |
+
events: [
|
11014 |
+
|
11015 |
+
{
|
11016 |
+
|
11017 |
+
name: 'itemshown',
|
11018 |
+
|
11019 |
+
self: true,
|
11020 |
+
|
11021 |
+
el: function() {
|
11022 |
+
return this.item;
|
11023 |
+
},
|
11024 |
+
|
11025 |
+
handler: function() {
|
11026 |
+
css(this.$el, this.getCss(.5));
|
11027 |
+
}
|
11028 |
+
|
11029 |
+
},
|
11030 |
+
|
11031 |
+
{
|
11032 |
+
name: 'itemin itemout',
|
11033 |
+
|
11034 |
+
self: true,
|
11035 |
+
|
11036 |
+
el: function() {
|
11037 |
+
return this.item;
|
11038 |
+
},
|
11039 |
+
|
11040 |
+
handler: function(ref) {
|
11041 |
+
var type = ref.type;
|
11042 |
+
var ref_detail = ref.detail;
|
11043 |
+
var percent = ref_detail.percent;
|
11044 |
+
var duration = ref_detail.duration;
|
11045 |
+
var timing = ref_detail.timing;
|
11046 |
+
var dir = ref_detail.dir;
|
11047 |
+
|
11048 |
+
|
11049 |
+
Transition.cancel(this.$el);
|
11050 |
+
css(this.$el, this.getCss(getCurrent(type, dir, percent)));
|
11051 |
+
|
11052 |
+
Transition.start(this.$el, this.getCss(isIn(type)
|
11053 |
+
? .5
|
11054 |
+
: dir > 0
|
11055 |
+
? 1
|
11056 |
+
: 0
|
11057 |
+
), duration, timing).catch(noop);
|
11058 |
+
|
11059 |
+
}
|
11060 |
+
},
|
11061 |
+
|
11062 |
+
{
|
11063 |
+
name: 'transitioncanceled transitionend',
|
11064 |
+
|
11065 |
+
self: true,
|
11066 |
+
|
11067 |
+
el: function() {
|
11068 |
+
return this.item;
|
11069 |
+
},
|
11070 |
+
|
11071 |
+
handler: function() {
|
11072 |
+
Transition.cancel(this.$el);
|
11073 |
+
}
|
11074 |
+
|
11075 |
+
},
|
11076 |
+
|
11077 |
+
{
|
11078 |
+
name: 'itemtranslatein itemtranslateout',
|
11079 |
+
|
11080 |
+
self: true,
|
11081 |
+
|
11082 |
+
el: function() {
|
11083 |
+
return this.item;
|
11084 |
+
},
|
11085 |
+
|
11086 |
+
handler: function(ref) {
|
11087 |
+
var type = ref.type;
|
11088 |
+
var ref_detail = ref.detail;
|
11089 |
+
var percent = ref_detail.percent;
|
11090 |
+
var dir = ref_detail.dir;
|
11091 |
+
|
11092 |
+
Transition.cancel(this.$el);
|
11093 |
+
css(this.$el, this.getCss(getCurrent(type, dir, percent)));
|
11094 |
+
}
|
11095 |
+
}
|
11096 |
+
|
11097 |
+
]
|
11098 |
+
|
11099 |
+
};
|
11100 |
+
|
11101 |
+
function isIn(type) {
|
11102 |
+
return endsWith(type, 'in');
|
11103 |
+
}
|
11104 |
+
|
11105 |
+
function getCurrent(type, dir, percent) {
|
11106 |
+
|
11107 |
+
percent /= 2;
|
11108 |
+
|
11109 |
+
return !isIn(type)
|
11110 |
+
? dir < 0
|
11111 |
+
? percent
|
11112 |
+
: 1 - percent
|
11113 |
+
: dir < 0
|
11114 |
+
? 1 - percent
|
11115 |
+
: percent;
|
11116 |
+
}
|
11117 |
+
|
11118 |
+
var Animations$2 = assign({}, Animations, {
|
11119 |
+
|
11120 |
+
fade: {
|
11121 |
+
|
11122 |
+
show: function() {
|
11123 |
+
return [
|
11124 |
+
{opacity: 0, zIndex: 0},
|
11125 |
+
{zIndex: -1}
|
11126 |
+
];
|
11127 |
+
},
|
11128 |
+
|
11129 |
+
percent: function(current) {
|
11130 |
+
return 1 - css(current, 'opacity');
|
11131 |
+
},
|
11132 |
+
|
11133 |
+
translate: function(percent) {
|
11134 |
+
return [
|
11135 |
+
{opacity: 1 - percent, zIndex: 0},
|
11136 |
+
{zIndex: -1}
|
11137 |
+
];
|
11138 |
+
}
|
11139 |
+
|
11140 |
+
},
|
11141 |
+
|
11142 |
+
scale: {
|
11143 |
+
|
11144 |
+
show: function() {
|
11145 |
+
return [
|
11146 |
+
{opacity: 0, transform: scale3d(1 + .5), zIndex: 0},
|
11147 |
+
{zIndex: -1}
|
11148 |
+
];
|
11149 |
+
},
|
11150 |
+
|
11151 |
+
percent: function(current) {
|
11152 |
+
return 1 - css(current, 'opacity');
|
11153 |
+
},
|
11154 |
+
|
11155 |
+
translate: function(percent) {
|
11156 |
+
return [
|
11157 |
+
{opacity: 1 - percent, transform: scale3d(1 + .5 * percent), zIndex: 0},
|
11158 |
+
{zIndex: -1}
|
11159 |
+
];
|
11160 |
+
}
|
11161 |
+
|
11162 |
+
},
|
11163 |
+
|
11164 |
+
pull: {
|
11165 |
+
|
11166 |
+
show: function(dir) {
|
11167 |
+
return dir < 0
|
11168 |
+
? [
|
11169 |
+
{transform: translate(30), zIndex: -1},
|
11170 |
+
{transform: translate(), zIndex: 0} ]
|
11171 |
+
: [
|
11172 |
+
{transform: translate(-100), zIndex: 0},
|
11173 |
+
{transform: translate(), zIndex: -1}
|
11174 |
+
];
|
11175 |
+
},
|
11176 |
+
|
11177 |
+
percent: function(current, next, dir) {
|
11178 |
+
return dir < 0
|
11179 |
+
? 1 - translated(next)
|
11180 |
+
: translated(current);
|
11181 |
+
},
|
11182 |
+
|
11183 |
+
translate: function(percent, dir) {
|
11184 |
+
return dir < 0
|
11185 |
+
? [
|
11186 |
+
{transform: translate(30 * percent), zIndex: -1},
|
11187 |
+
{transform: translate(-100 * (1 - percent)), zIndex: 0} ]
|
11188 |
+
: [
|
11189 |
+
{transform: translate(-percent * 100), zIndex: 0},
|
11190 |
+
{transform: translate(30 * (1 - percent)), zIndex: -1}
|
11191 |
+
];
|
11192 |
+
}
|
11193 |
+
|
11194 |
+
},
|
11195 |
+
|
11196 |
+
push: {
|
11197 |
+
|
11198 |
+
show: function(dir) {
|
11199 |
+
return dir < 0
|
11200 |
+
? [
|
11201 |
+
{transform: translate(100), zIndex: 0},
|
11202 |
+
{transform: translate(), zIndex: -1} ]
|
11203 |
+
: [
|
11204 |
+
{transform: translate(-30), zIndex: -1},
|
11205 |
+
{transform: translate(), zIndex: 0}
|
11206 |
+
];
|
11207 |
+
},
|
11208 |
+
|
11209 |
+
percent: function(current, next, dir) {
|
11210 |
+
return dir > 0
|
11211 |
+
? 1 - translated(next)
|
11212 |
+
: translated(current);
|
11213 |
+
},
|
11214 |
+
|
11215 |
+
translate: function(percent, dir) {
|
11216 |
+
return dir < 0
|
11217 |
+
? [
|
11218 |
+
{transform: translate(percent * 100), zIndex: 0},
|
11219 |
+
{transform: translate(-30 * (1 - percent)), zIndex: -1} ]
|
11220 |
+
: [
|
11221 |
+
{transform: translate(-30 * percent), zIndex: -1},
|
11222 |
+
{transform: translate(100 * (1 - percent)), zIndex: 0}
|
11223 |
+
];
|
11224 |
+
}
|
11225 |
+
|
11226 |
+
}
|
11227 |
+
|
11228 |
+
});
|
11229 |
+
|
11230 |
+
var Slideshow$1 = {
|
11231 |
+
|
11232 |
+
mixins: [Class, Slideshow, SliderReactive],
|
11233 |
+
|
11234 |
+
props: {
|
11235 |
+
ratio: String,
|
11236 |
+
minHeight: Boolean,
|
11237 |
+
maxHeight: Boolean,
|
11238 |
+
},
|
11239 |
+
|
11240 |
+
data: {
|
11241 |
+
ratio: '16:9',
|
11242 |
+
minHeight: false,
|
11243 |
+
maxHeight: false,
|
11244 |
+
selList: '.uk-slideshow-items',
|
11245 |
+
attrItem: 'uk-slideshow-item',
|
11246 |
+
selNav: '.uk-slideshow-nav',
|
11247 |
+
Animations: Animations$2
|
11248 |
+
},
|
11249 |
+
|
11250 |
+
update: {
|
11251 |
+
|
11252 |
+
read: function() {
|
11253 |
+
|
11254 |
+
var ref = this.ratio.split(':').map(Number);
|
11255 |
+
var width$$1 = ref[0];
|
11256 |
+
var height$$1 = ref[1];
|
11257 |
+
|
11258 |
+
height$$1 = height$$1 * this.list.offsetWidth / width$$1;
|
11259 |
+
|
11260 |
+
if (this.minHeight) {
|
11261 |
+
height$$1 = Math.max(this.minHeight, height$$1);
|
11262 |
+
}
|
11263 |
+
|
11264 |
+
if (this.maxHeight) {
|
11265 |
+
height$$1 = Math.min(this.maxHeight, height$$1);
|
11266 |
+
}
|
11267 |
+
|
11268 |
+
return {height: height$$1 - boxModelAdjust(this.list, 'content-box')};
|
11269 |
+
},
|
11270 |
+
|
11271 |
+
write: function(ref) {
|
11272 |
+
var height$$1 = ref.height;
|
11273 |
+
|
11274 |
+
css(this.list, 'minHeight', height$$1);
|
11275 |
+
},
|
11276 |
+
|
11277 |
+
events: ['load', 'resize']
|
11278 |
+
|
11279 |
+
}
|
11280 |
+
|
11281 |
+
};
|
11282 |
+
|
11283 |
+
var obj$1;
|
11284 |
+
|
11285 |
+
var Sortable = {
|
11286 |
+
|
11287 |
+
mixins: [Class, Animate],
|
11288 |
+
|
11289 |
+
props: {
|
11290 |
+
group: String,
|
11291 |
+
threshold: Number,
|
11292 |
+
clsItem: String,
|
11293 |
+
clsPlaceholder: String,
|
11294 |
+
clsDrag: String,
|
11295 |
+
clsDragState: String,
|
11296 |
+
clsBase: String,
|
11297 |
+
clsNoDrag: String,
|
11298 |
+
clsEmpty: String,
|
11299 |
+
clsCustom: String,
|
11300 |
+
handle: String
|
11301 |
+
},
|
11302 |
+
|
11303 |
+
data: {
|
11304 |
+
group: false,
|
11305 |
+
threshold: 5,
|
11306 |
+
clsItem: 'uk-sortable-item',
|
11307 |
+
clsPlaceholder: 'uk-sortable-placeholder',
|
11308 |
+
clsDrag: 'uk-sortable-drag',
|
11309 |
+
clsDragState: 'uk-drag',
|
11310 |
+
clsBase: 'uk-sortable',
|
11311 |
+
clsNoDrag: 'uk-sortable-nodrag',
|
11312 |
+
clsEmpty: 'uk-sortable-empty',
|
11313 |
+
clsCustom: '',
|
11314 |
+
handle: false
|
11315 |
+
},
|
11316 |
+
|
11317 |
+
created: function() {
|
11318 |
+
var this$1 = this;
|
11319 |
+
|
11320 |
+
['init', 'start', 'move', 'end'].forEach(function (key) {
|
11321 |
+
var fn = this$1[key];
|
11322 |
+
this$1[key] = function (e) {
|
11323 |
+
this$1.scrollY = window.pageYOffset;
|
11324 |
+
var ref = getPos$1(e);
|
11325 |
+
var x = ref.x;
|
11326 |
+
var y = ref.y;
|
11327 |
+
this$1.pos = {x: x, y: y};
|
11328 |
+
|
11329 |
+
fn(e);
|
11330 |
+
};
|
11331 |
+
});
|
11332 |
+
},
|
11333 |
+
|
11334 |
+
events: ( obj$1 = {}, obj$1[pointerDown] = 'init', obj$1 ),
|
11335 |
+
|
11336 |
+
update: {
|
11337 |
+
|
11338 |
+
write: function() {
|
11339 |
+
|
11340 |
+
if (this.clsEmpty) {
|
11341 |
+
toggleClass(this.$el, this.clsEmpty, !this.$el.children.length);
|
11342 |
+
}
|
11343 |
+
|
11344 |
+
css(this.handle ? $$(this.handle, this.$el) : this.$el.children, 'touchAction', 'none');
|
11345 |
+
|
11346 |
+
if (!this.drag) {
|
11347 |
+
return;
|
11348 |
+
}
|
11349 |
+
|
11350 |
+
offset(this.drag, {top: this.pos.y + this.origin.top, left: this.pos.x + this.origin.left});
|
11351 |
+
|
11352 |
+
var ref = offset(this.drag);
|
11353 |
+
var top = ref.top;
|
11354 |
+
var bottom = top + this.drag.offsetHeight;
|
11355 |
+
var scroll;
|
11356 |
+
|
11357 |
+
if (top > 0 && top < this.scrollY) {
|
11358 |
+
scroll = this.scrollY - 5;
|
11359 |
+
} else if (bottom < height(document) && bottom > height(window) + this.scrollY) {
|
11360 |
+
scroll = this.scrollY + 5;
|
11361 |
+
}
|
11362 |
+
|
11363 |
+
scroll && setTimeout(function () { return scrollTop(window, scroll); }, 5);
|
11364 |
+
}
|
11365 |
+
|
11366 |
+
},
|
11367 |
+
|
11368 |
+
methods: {
|
11369 |
+
|
11370 |
+
init: function(e) {
|
11371 |
+
|
11372 |
+
var target = e.target;
|
11373 |
+
var button = e.button;
|
11374 |
+
var defaultPrevented = e.defaultPrevented;
|
11375 |
+
var ref = toNodes(this.$el.children).filter(function (el) { return within(target, el); });
|
11376 |
+
var placeholder = ref[0];
|
11377 |
+
|
11378 |
+
if (!placeholder
|
11379 |
+
|| isInput(e.target)
|
11380 |
+
|| this.handle && !within(target, this.handle)
|
11381 |
+
|| button > 0
|
11382 |
+
|| within(target, ("." + (this.clsNoDrag)))
|
11383 |
+
|| defaultPrevented
|
11384 |
+
) {
|
11385 |
+
return;
|
11386 |
+
}
|
11387 |
+
|
11388 |
+
e.preventDefault();
|
11389 |
+
|
11390 |
+
this.touched = [this];
|
11391 |
+
this.placeholder = placeholder;
|
11392 |
+
this.origin = assign({target: target, index: index(placeholder)}, this.pos);
|
11393 |
+
|
11394 |
+
on(document, pointerMove, this.move);
|
11395 |
+
on(document, pointerUp, this.end);
|
11396 |
+
on(window, 'scroll', this.scroll);
|
11397 |
+
|
11398 |
+
if (!this.threshold) {
|
11399 |
+
this.start(e);
|
11400 |
+
}
|
11401 |
+
|
11402 |
+
},
|
11403 |
+
|
11404 |
+
start: function(e) {
|
11405 |
+
|
11406 |
+
this.drag = append(this.$container, this.placeholder.outerHTML.replace(/^<li/i, '<div').replace(/li>$/i, 'div>'));
|
11407 |
+
|
11408 |
+
css(this.drag, assign({
|
11409 |
+
boxSizing: 'border-box',
|
11410 |
+
width: this.placeholder.offsetWidth,
|
11411 |
+
height: this.placeholder.offsetHeight
|
11412 |
+
}, css(this.placeholder, ['paddingLeft', 'paddingRight', 'paddingTop', 'paddingBottom'])));
|
11413 |
+
attr(this.drag, 'uk-no-boot', '');
|
11414 |
+
addClass(this.drag, this.clsDrag, this.clsCustom);
|
11415 |
+
|
11416 |
+
height(this.drag.firstElementChild, height(this.placeholder.firstElementChild));
|
11417 |
+
|
11418 |
+
var ref = offset(this.placeholder);
|
11419 |
+
var left = ref.left;
|
11420 |
+
var top = ref.top;
|
11421 |
+
assign(this.origin, {left: left - this.pos.x, top: top - this.pos.y});
|
11422 |
+
|
11423 |
+
addClass(this.placeholder, this.clsPlaceholder);
|
11424 |
+
addClass(this.$el.children, this.clsItem);
|
11425 |
+
addClass(document.documentElement, this.clsDragState);
|
11426 |
+
|
11427 |
+
trigger(this.$el, 'start', [this, this.placeholder]);
|
11428 |
+
|
11429 |
+
this.move(e);
|
11430 |
+
},
|
11431 |
+
|
11432 |
+
move: function(e) {
|
11433 |
+
|
11434 |
+
if (!this.drag) {
|
11435 |
+
|
11436 |
+
if (Math.abs(this.pos.x - this.origin.x) > this.threshold || Math.abs(this.pos.y - this.origin.y) > this.threshold) {
|
11437 |
+
this.start(e);
|
11438 |
+
}
|
11439 |
+
|
11440 |
+
return;
|
11441 |
+
}
|
11442 |
+
|
11443 |
+
this.$emit();
|
11444 |
+
|
11445 |
+
var target = e.type === 'mousemove' ? e.target : document.elementFromPoint(this.pos.x - document.body.scrollLeft, this.pos.y - document.body.scrollTop);
|
11446 |
+
|
11447 |
+
var sortable = this.getSortable(target);
|
11448 |
+
var previous = this.getSortable(this.placeholder);
|
11449 |
+
var move = sortable !== previous;
|
11450 |
+
|
11451 |
+
if (!sortable || within(target, this.placeholder) || move && (!sortable.group || sortable.group !== previous.group)) {
|
11452 |
+
return;
|
11453 |
+
}
|
11454 |
+
|
11455 |
+
target = sortable.$el === target.parentNode && target || toNodes(sortable.$el.children).filter(function (element) { return within(target, element); })[0];
|
11456 |
+
|
11457 |
+
if (move) {
|
11458 |
+
previous.remove(this.placeholder);
|
11459 |
+
} else if (!target) {
|
11460 |
+
return;
|
11461 |
+
}
|
11462 |
+
|
11463 |
+
sortable.insert(this.placeholder, target);
|
11464 |
+
|
11465 |
+
if (!includes(this.touched, sortable)) {
|
11466 |
+
this.touched.push(sortable);
|
11467 |
+
}
|
11468 |
+
|
11469 |
+
},
|
11470 |
+
|
11471 |
+
scroll: function() {
|
11472 |
+
var scroll = window.pageYOffset;
|
11473 |
+
if (scroll !== this.scrollY) {
|
11474 |
+
this.pos.y += scroll - this.scrollY;
|
11475 |
+
this.scrollY = scroll;
|
11476 |
+
this.$emit();
|
11477 |
+
}
|
11478 |
+
},
|
11479 |
+
|
11480 |
+
end: function(e) {
|
11481 |
+
|
11482 |
+
off(document, pointerMove, this.move);
|
11483 |
+
off(document, pointerUp, this.end);
|
11484 |
+
off(window, 'scroll', this.scroll);
|
11485 |
+
|
11486 |
+
if (!this.drag) {
|
11487 |
+
|
11488 |
+
if (e.type !== 'mouseup' && within(e.target, 'a[href]')) {
|
11489 |
+
location.href = closest(e.target, 'a[href]').href;
|
11490 |
+
}
|
11491 |
+
|
11492 |
+
return;
|
11493 |
+
}
|
11494 |
+
|
11495 |
+
preventClick();
|
11496 |
+
|
11497 |
+
var sortable = this.getSortable(this.placeholder);
|
11498 |
+
|
11499 |
+
if (this === sortable) {
|
11500 |
+
if (this.origin.index !== index(this.placeholder)) {
|
11501 |
+
trigger(this.$el, 'moved', [this, this.placeholder]);
|
11502 |
+
}
|
11503 |
+
} else {
|
11504 |
+
trigger(sortable.$el, 'added', [sortable, this.placeholder]);
|
11505 |
+
trigger(this.$el, 'removed', [this, this.placeholder]);
|
11506 |
+
}
|
11507 |
+
|
11508 |
+
trigger(this.$el, 'stop', [this, this.placeholder]);
|
11509 |
+
|
11510 |
+
remove(this.drag);
|
11511 |
+
this.drag = null;
|
11512 |
+
|
11513 |
+
var classes = this.touched.map(function (sortable) { return ((sortable.clsPlaceholder) + " " + (sortable.clsItem)); }).join(' ');
|
11514 |
+
this.touched.forEach(function (sortable) { return removeClass(sortable.$el.children, classes); });
|
11515 |
+
|
11516 |
+
removeClass(document.documentElement, this.clsDragState);
|
11517 |
+
|
11518 |
+
},
|
11519 |
+
|
11520 |
+
insert: function(element, target) {
|
11521 |
+
var this$1 = this;
|
11522 |
+
|
11523 |
+
|
11524 |
+
addClass(this.$el.children, this.clsItem);
|
11525 |
+
|
11526 |
+
var insert = function () {
|
11527 |
+
|
11528 |
+
if (target) {
|
11529 |
+
|
11530 |
+
if (!within(element, this$1.$el) || isPredecessor(element, target)) {
|
11531 |
+
before(target, element);
|
11532 |
+
} else {
|
11533 |
+
after(target, element);
|
11534 |
+
}
|
11535 |
+
|
11536 |
+
} else {
|
11537 |
+
append(this$1.$el, element);
|
11538 |
+
}
|
11539 |
+
|
11540 |
+
};
|
11541 |
+
|
11542 |
+
if (this.animation) {
|
11543 |
+
this.animate(insert);
|
11544 |
+
} else {
|
11545 |
+
insert();
|
11546 |
+
}
|
11547 |
+
|
11548 |
+
},
|
11549 |
+
|
11550 |
+
remove: function(element) {
|
11551 |
+
|
11552 |
+
if (!within(element, this.$el)) {
|
11553 |
+
return;
|
11554 |
+
}
|
11555 |
+
|
11556 |
+
if (this.animation) {
|
11557 |
+
this.animate(function () { return remove(element); });
|
11558 |
+
} else {
|
11559 |
+
remove(element);
|
11560 |
+
}
|
11561 |
+
|
11562 |
+
},
|
11563 |
+
|
11564 |
+
getSortable: function(element) {
|
11565 |
+
return element && (this.$getComponent(element, 'sortable') || this.getSortable(element.parentNode));
|
11566 |
+
}
|
11567 |
+
|
11568 |
+
}
|
11569 |
+
|
11570 |
+
};
|
11571 |
+
|
11572 |
+
function isPredecessor(element, target) {
|
11573 |
+
return element.parentNode === target.parentNode && index(element) > index(target);
|
11574 |
+
}
|
11575 |
+
|
11576 |
+
var obj$2;
|
11577 |
+
|
11578 |
+
var actives = [];
|
11579 |
+
|
11580 |
+
var Tooltip = {
|
11581 |
+
|
11582 |
+
mixins: [Container, Togglable, Position],
|
11583 |
+
|
11584 |
+
args: 'title',
|
11585 |
+
|
11586 |
+
props: {
|
11587 |
+
delay: Number,
|
11588 |
+
title: String
|
11589 |
+
},
|
11590 |
+
|
11591 |
+
data: {
|
11592 |
+
pos: 'top',
|
11593 |
+
title: '',
|
11594 |
+
delay: 0,
|
11595 |
+
animation: ['uk-animation-scale-up'],
|
11596 |
+
duration: 100,
|
11597 |
+
cls: 'uk-active',
|
11598 |
+
clsPos: 'uk-tooltip'
|
11599 |
+
},
|
11600 |
+
|
11601 |
+
beforeConnect: function() {
|
11602 |
+
this._hasTitle = hasAttr(this.$el, 'title');
|
11603 |
+
attr(this.$el, {title: '', 'aria-expanded': false});
|
11604 |
+
},
|
11605 |
+
|
11606 |
+
disconnected: function() {
|
11607 |
+
this.hide();
|
11608 |
+
attr(this.$el, {title: this._hasTitle ? this.title : null, 'aria-expanded': null});
|
11609 |
+
},
|
11610 |
+
|
11611 |
+
methods: {
|
11612 |
+
|
11613 |
+
show: function() {
|
11614 |
+
var this$1 = this;
|
11615 |
+
|
11616 |
+
|
11617 |
+
if (includes(actives, this)) {
|
11618 |
+
return;
|
11619 |
+
}
|
11620 |
+
|
11621 |
+
actives.forEach(function (active) { return active.hide(); });
|
11622 |
+
actives.push(this);
|
11623 |
+
|
11624 |
+
this._unbind = on(document, 'click', function (e) { return !within(e.target, this$1.$el) && this$1.hide(); });
|
11625 |
+
|
11626 |
+
clearTimeout(this.showTimer);
|
11627 |
+
this.showTimer = setTimeout(function () {
|
11628 |
+
this$1._show();
|
11629 |
+
this$1.hideTimer = setInterval(function () {
|
11630 |
+
|
11631 |
+
if (!isVisible(this$1.$el)) {
|
11632 |
+
this$1.hide();
|
11633 |
+
}
|
11634 |
+
|
11635 |
+
}, 150);
|
11636 |
+
}, this.delay);
|
11637 |
+
},
|
11638 |
+
|
11639 |
+
hide: function() {
|
11640 |
+
|
11641 |
+
var index$$1 = actives.indexOf(this);
|
11642 |
+
|
11643 |
+
if (!~index$$1 || matches(this.$el, 'input') && this.$el === document.activeElement) {
|
11644 |
+
return;
|
11645 |
+
}
|
11646 |
+
|
11647 |
+
actives.splice(index$$1, 1);
|
11648 |
+
|
11649 |
+
clearTimeout(this.showTimer);
|
11650 |
+
clearInterval(this.hideTimer);
|
11651 |
+
attr(this.$el, 'aria-expanded', false);
|
11652 |
+
this.toggleElement(this.tooltip, false);
|
11653 |
+
this.tooltip && remove(this.tooltip);
|
11654 |
+
this.tooltip = false;
|
11655 |
+
this._unbind();
|
11656 |
+
|
11657 |
+
},
|
11658 |
+
|
11659 |
+
_show: function() {
|
11660 |
+
|
11661 |
+
this.tooltip = append(this.container,
|
11662 |
+
("<div class=\"" + (this.clsPos) + "\" aria-expanded=\"true\" aria-hidden> <div class=\"" + (this.clsPos) + "-inner\">" + (this.title) + "</div> </div>")
|
11663 |
+
);
|
11664 |
+
|
11665 |
+
this.positionAt(this.tooltip, this.$el);
|
11666 |
+
|
11667 |
+
this.origin = this.getAxis() === 'y'
|
11668 |
+
? ((flipPosition(this.dir)) + "-" + (this.align))
|
11669 |
+
: ((this.align) + "-" + (flipPosition(this.dir)));
|
11670 |
+
|
11671 |
+
this.toggleElement(this.tooltip, true);
|
11672 |
+
|
11673 |
+
}
|
11674 |
+
|
11675 |
+
},
|
11676 |
+
|
11677 |
+
events: ( obj$2 = {}, obj$2[("focus " + pointerEnter + " " + pointerDown)] = function (e) {
|
11678 |
+
if (e.type !== pointerDown || !isTouch(e)) {
|
11679 |
+
this.show();
|
11680 |
+
}
|
11681 |
+
}, obj$2.blur = 'hide', obj$2[pointerLeave] = function (e) {
|
11682 |
+
if (!isTouch(e)) {
|
11683 |
+
this.hide();
|
11684 |
+
}
|
11685 |
+
}, obj$2 )
|
11686 |
+
|
11687 |
+
};
|
11688 |
+
|
11689 |
+
var Upload = {
|
11690 |
+
|
11691 |
+
props: {
|
11692 |
+
allow: String,
|
11693 |
+
clsDragover: String,
|
11694 |
+
concurrent: Number,
|
11695 |
+
maxSize: Number,
|
11696 |
+
method: String,
|
11697 |
+
mime: String,
|
11698 |
+
msgInvalidMime: String,
|
11699 |
+
msgInvalidName: String,
|
11700 |
+
msgInvalidSize: String,
|
11701 |
+
multiple: Boolean,
|
11702 |
+
name: String,
|
11703 |
+
params: Object,
|
11704 |
+
type: String,
|
11705 |
+
url: String,
|
11706 |
+
},
|
11707 |
+
|
11708 |
+
data: {
|
11709 |
+
allow: false,
|
11710 |
+
clsDragover: 'uk-dragover',
|
11711 |
+
concurrent: 1,
|
11712 |
+
maxSize: 0,
|
11713 |
+
method: 'POST',
|
11714 |
+
mime: false,
|
11715 |
+
msgInvalidMime: 'Invalid File Type: %s',
|
11716 |
+
msgInvalidName: 'Invalid File Name: %s',
|
11717 |
+
msgInvalidSize: 'Invalid File Size: %s Kilobytes Max',
|
11718 |
+
multiple: false,
|
11719 |
+
name: 'files[]',
|
11720 |
+
params: {},
|
11721 |
+
type: '',
|
11722 |
+
url: '',
|
11723 |
+
abort: noop,
|
11724 |
+
beforeAll: noop,
|
11725 |
+
beforeSend: noop,
|
11726 |
+
complete: noop,
|
11727 |
+
completeAll: noop,
|
11728 |
+
error: noop,
|
11729 |
+
fail: noop,
|
11730 |
+
load: noop,
|
11731 |
+
loadEnd: noop,
|
11732 |
+
loadStart: noop,
|
11733 |
+
progress: noop
|
11734 |
+
},
|
11735 |
+
|
11736 |
+
events: {
|
11737 |
+
|
11738 |
+
change: function(e) {
|
11739 |
+
|
11740 |
+
if (!matches(e.target, 'input[type="file"]')) {
|
11741 |
+
return;
|
11742 |
+
}
|
11743 |
+
|
11744 |
+
e.preventDefault();
|
11745 |
+
|
11746 |
+
if (e.target.files) {
|
11747 |
+
this.upload(e.target.files);
|
11748 |
+
}
|
11749 |
+
|
11750 |
+
e.target.value = '';
|
11751 |
+
},
|
11752 |
+
|
11753 |
+
drop: function(e) {
|
11754 |
+
stop(e);
|
11755 |
+
|
11756 |
+
var transfer = e.dataTransfer;
|
11757 |
+
|
11758 |
+
if (!transfer || !transfer.files) {
|
11759 |
+
return;
|
11760 |
+
}
|
11761 |
+
|
11762 |
+
removeClass(this.$el, this.clsDragover);
|
11763 |
+
|
11764 |
+
this.upload(transfer.files);
|
11765 |
+
},
|
11766 |
+
|
11767 |
+
dragenter: function(e) {
|
11768 |
+
stop(e);
|
11769 |
+
},
|
11770 |
+
|
11771 |
+
dragover: function(e) {
|
11772 |
+
stop(e);
|
11773 |
+
addClass(this.$el, this.clsDragover);
|
11774 |
+
},
|
11775 |
+
|
11776 |
+
dragleave: function(e) {
|
11777 |
+
stop(e);
|
11778 |
+
removeClass(this.$el, this.clsDragover);
|
11779 |
+
}
|
11780 |
+
|
11781 |
+
},
|
11782 |
+
|
11783 |
+
methods: {
|
11784 |
+
|
11785 |
+
upload: function(files) {
|
11786 |
+
var this$1 = this;
|
11787 |
+
|
11788 |
+
|
11789 |
+
if (!files.length) {
|
11790 |
+
return;
|
11791 |
+
}
|
11792 |
+
|
11793 |
+
trigger(this.$el, 'upload', [files]);
|
11794 |
+
|
11795 |
+
for (var i = 0; i < files.length; i++) {
|
11796 |
+
|
11797 |
+
if (this$1.maxSize && this$1.maxSize * 1000 < files[i].size) {
|
11798 |
+
this$1.fail(this$1.msgInvalidSize.replace('%s', this$1.maxSize));
|
11799 |
+
return;
|
11800 |
+
}
|
11801 |
+
|
11802 |
+
if (this$1.allow && !match$1(this$1.allow, files[i].name)) {
|
11803 |
+
this$1.fail(this$1.msgInvalidName.replace('%s', this$1.allow));
|
11804 |
+
return;
|
11805 |
+
}
|
11806 |
+
|
11807 |
+
if (this$1.mime && !match$1(this$1.mime, files[i].type)) {
|
11808 |
+
this$1.fail(this$1.msgInvalidMime.replace('%s', this$1.mime));
|
11809 |
+
return;
|
11810 |
+
}
|
11811 |
+
|
11812 |
+
}
|
11813 |
+
|
11814 |
+
if (!this.multiple) {
|
11815 |
+
files = [files[0]];
|
11816 |
+
}
|
11817 |
+
|
11818 |
+
this.beforeAll(this, files);
|
11819 |
+
|
11820 |
+
var chunks = chunk(files, this.concurrent);
|
11821 |
+
var upload = function (files) {
|
11822 |
+
|
11823 |
+
var data$$1 = new FormData();
|
11824 |
+
|
11825 |
+
files.forEach(function (file) { return data$$1.append(this$1.name, file); });
|
11826 |
+
|
11827 |
+
for (var key in this$1.params) {
|
11828 |
+
data$$1.append(key, this$1.params[key]);
|
11829 |
+
}
|
11830 |
+
|
11831 |
+
ajax(this$1.url, {
|
11832 |
+
data: data$$1,
|
11833 |
+
method: this$1.method,
|
11834 |
+
responseType: this$1.type,
|
11835 |
+
beforeSend: function (env) {
|
11836 |
+
|
11837 |
+
var xhr = env.xhr;
|
11838 |
+
xhr.upload && on(xhr.upload, 'progress', this$1.progress);
|
11839 |
+
['loadStart', 'load', 'loadEnd', 'abort'].forEach(function (type) { return on(xhr, type.toLowerCase(), this$1[type]); }
|
11840 |
+
);
|
11841 |
+
|
11842 |
+
this$1.beforeSend(env);
|
11843 |
+
|
11844 |
+
}
|
11845 |
+
}).then(
|
11846 |
+
function (xhr) {
|
11847 |
+
|
11848 |
+
this$1.complete(xhr);
|
11849 |
+
|
11850 |
+
if (chunks.length) {
|
11851 |
+
upload(chunks.shift());
|
11852 |
+
} else {
|
11853 |
+
this$1.completeAll(xhr);
|
11854 |
+
}
|
11855 |
+
|
11856 |
+
},
|
11857 |
+
function (e) { return this$1.error(e); }
|
11858 |
+
);
|
11859 |
+
|
11860 |
+
};
|
11861 |
+
|
11862 |
+
upload(chunks.shift());
|
11863 |
+
|
11864 |
+
}
|
11865 |
+
|
11866 |
+
}
|
11867 |
+
|
11868 |
+
};
|
11869 |
+
|
11870 |
+
function match$1(pattern, path) {
|
11871 |
+
return path.match(new RegExp(("^" + (pattern.replace(/\//g, '\\/').replace(/\*\*/g, '(\\/[^\\/]+)*').replace(/\*/g, '[^\\/]+').replace(/((?!\\))\?/g, '$1.')) + "$"), 'i'));
|
11872 |
+
}
|
11873 |
+
|
11874 |
+
function chunk(files, size) {
|
11875 |
+
var chunks = [];
|
11876 |
+
for (var i = 0; i < files.length; i += size) {
|
11877 |
+
var chunk = [];
|
11878 |
+
for (var j = 0; j < size; j++) {
|
11879 |
+
chunk.push(files[i + j]);
|
11880 |
+
}
|
11881 |
+
chunks.push(chunk);
|
11882 |
+
}
|
11883 |
+
return chunks;
|
11884 |
+
}
|
11885 |
+
|
11886 |
+
function stop(e) {
|
11887 |
+
e.preventDefault();
|
11888 |
+
e.stopPropagation();
|
11889 |
+
}
|
11890 |
+
|
11891 |
+
UIkit.component('countdown', Countdown);
|
11892 |
+
UIkit.component('filter', Filter);
|
11893 |
+
UIkit.component('lightbox', Lightbox);
|
11894 |
+
UIkit.component('lightboxPanel', LightboxPanel);
|
11895 |
+
UIkit.component('notification', Notification);
|
11896 |
+
UIkit.component('parallax', Parallax$1);
|
11897 |
+
UIkit.component('slider', Slider$1);
|
11898 |
+
UIkit.component('sliderParallax', SliderParallax);
|
11899 |
+
UIkit.component('slideshow', Slideshow$1);
|
11900 |
+
UIkit.component('slideshowParallax', SliderParallax);
|
11901 |
+
UIkit.component('sortable', Sortable);
|
11902 |
+
UIkit.component('tooltip', Tooltip);
|
11903 |
+
UIkit.component('upload', Upload);
|
11904 |
+
|
11905 |
+
{
|
11906 |
+
boot(UIkit);
|
11907 |
+
}
|
11908 |
+
|
11909 |
+
return UIkit;
|
11910 |
+
|
11911 |
+
})));
|
admin/admin.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
/*! UIkit 3.0.0-rc.19 | http://www.getuikit.com | (c) 2014 - 2018 YOOtheme | MIT License */html{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;-webkit-text-size-adjust:100%;background:#fff;color:#666}body{margin:0}a{-webkit-text-decoration-skip:objects}a:active,a:hover{outline:0}.uk-link,a{color:#1e87f0;text-decoration:none;cursor:pointer}.uk-link:hover,a:hover{color:#0f6ecd;text-decoration:underline}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}:not(pre)>code,:not(pre)>kbd,:not(pre)>samp{font-family:Consolas,monaco,monospace;font-size:.875rem;color:#f0506e;white-space:nowrap;padding:2px 6px;background:#f8f8f8}em{color:#f0506e}ins{background:#ffd;color:#666;text-decoration:none}mark{background:#ffd;color:#666}q{font-style:italic}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}audio,canvas,iframe,img,svg,video{vertical-align:middle}audio,canvas,img,video{max-width:100%;height:auto;box-sizing:border-box}@supports (display:block){svg{max-width:100%;height:auto;box-sizing:border-box}}svg:not(:root){overflow:hidden}img:not([src]){visibility:hidden}iframe{border:0}address,dl,fieldset,figure,ol,p,pre,ul{margin:0 0 20px 0}*+address,*+dl,*+fieldset,*+figure,*+ol,*+p,*+pre,*+ul{margin-top:20px}.uk-h1,.uk-h2,.uk-h3,.uk-h4,.uk-h5,.uk-h6,h1,h2,h3,h4,h5,h6{margin:0 0 20px 0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:400;color:#333;text-transform:none}*+.uk-h1,*+.uk-h2,*+.uk-h3,*+.uk-h4,*+.uk-h5,*+.uk-h6,*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:40px}.uk-h1,h1{font-size:2.23125rem;line-height:1.2}.uk-h2,h2{font-size:1.7rem;line-height:1.3}.uk-h3,h3{font-size:1.5rem;line-height:1.4}.uk-h4,h4{font-size:1.25rem;line-height:1.4}.uk-h5,h5{font-size:16px;line-height:1.4}.uk-h6,h6{font-size:.875rem;line-height:1.4}@media (min-width:960px){.uk-h1,h1{font-size:2.625rem}.uk-h2,h2{font-size:2rem}}ol,ul{padding-left:30px}ol>li>ol,ol>li>ul,ul>li>ol,ul>li>ul{margin:0}dt{font-weight:700}dd{margin-left:0}.uk-hr,hr{box-sizing:content-box;height:0;overflow:visible;text-align:inherit;margin:0 0 20px 0;border:0;border-top:1px solid #e5e5e5}*+.uk-hr,*+hr{margin-top:20px}address{font-style:normal}blockquote{margin:0 0 20px 0;font-size:1.25rem;line-height:1.5;font-style:italic;color:#333}*+blockquote{margin-top:20px}blockquote p:last-of-type{margin-bottom:0}blockquote footer{margin-top:10px;font-size:.875rem;line-height:1.5;color:#666}blockquote footer::before{content:"— "}pre{font:.875rem/1.5 Consolas,monaco,monospace;color:#666;-moz-tab-size:4;tab-size:4;overflow:auto;padding:10px;border:1px solid #e5e5e5;border-radius:3px;background:#fff}pre code{font-family:Consolas,monaco,monospace}::selection{background:#39f;color:#fff;text-shadow:none}details,main{display:block}summary{display:list-item}template{display:none}.uk-breakpoint-s::before{content:'640px'}.uk-breakpoint-m::before{content:'960px'}.uk-breakpoint-l::before{content:'1200px'}.uk-breakpoint-xl::before{content:'1600px'}:root{--uk-breakpoint-s:640px;--uk-breakpoint-m:960px;--uk-breakpoint-l:1200px;--uk-breakpoint-xl:1600px}.uk-link-muted a,a.uk-link-muted{color:#999}.uk-link-muted a:hover,a.uk-link-muted:hover{color:#666}.uk-link-text a:not(:hover),a.uk-link-text:not(:hover){color:inherit}.uk-link-text a:hover,a.uk-link-text:hover{color:#999}.uk-link-heading a:not(:hover),a.uk-link-heading:not(:hover){color:inherit}.uk-link-heading a:hover,a.uk-link-heading:hover{color:#1e87f0;text-decoration:none}.uk-link-reset a,.uk-link-reset a:hover,a.uk-link-reset,a.uk-link-reset:hover{color:inherit!important;text-decoration:none!important}.uk-heading-primary{font-size:3rem;line-height:1.2}@media (min-width:960px){.uk-heading-primary{font-size:3.375rem}}@media (min-width:1200px){.uk-heading-primary{font-size:3.75rem;line-height:1.1}}.uk-heading-hero{font-size:4rem;line-height:1.1}@media (min-width:960px){.uk-heading-hero{font-size:6rem;line-height:1}}@media (min-width:1200px){.uk-heading-hero{font-size:8rem;line-height:1}}.uk-heading-divider{padding-bottom:10px;border-bottom:1px solid #e5e5e5}.uk-heading-bullet{position:relative}.uk-heading-bullet::before{content:"";display:inline-block;position:relative;top:calc(-.1 * 1em);vertical-align:middle;height:.9em;margin-right:10px;border-left:5px solid #e5e5e5}.uk-heading-line{overflow:hidden}.uk-heading-line>*{display:inline-block;position:relative}.uk-heading-line>::after,.uk-heading-line>::before{content:"";position:absolute;top:calc(50% - (1px / 2));width:2000px;border-bottom:1px solid #e5e5e5}.uk-heading-line>::before{right:100%;margin-right:.6em}.uk-heading-line>::after{left:100%;margin-left:.6em}[class*=uk-divider]{border:none;margin-bottom:20px}*+[class*=uk-divider]{margin-top:20px}.uk-divider-icon{position:relative;height:20px;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23e5e5e5%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");background-repeat:no-repeat;background-position:50% 50%}.uk-divider-icon::after,.uk-divider-icon::before{content:"";position:absolute;top:50%;max-width:calc(50% - (50px / 2));border-bottom:1px solid #e5e5e5}.uk-divider-icon::before{right:calc(50% + (50px / 2));width:100%}.uk-divider-icon::after{left:calc(50% + (50px / 2));width:100%}.uk-divider-small{line-height:0}.uk-divider-small::after{content:"";display:inline-block;width:100px;max-width:100%;border-top:1px solid #e5e5e5;vertical-align:top}.uk-divider-vertical{width:1px;height:100px;margin-left:auto;margin-right:auto;border-left:1px solid #e5e5e5}.uk-list{padding:0;list-style:none}.uk-list>li::after,.uk-list>li::before{content:"";display:table}.uk-list>li::after{clear:both}.uk-list>li>:last-child{margin-bottom:0}.uk-list ul{margin:0;padding-left:30px;list-style:none}.uk-list>li:nth-child(n+2),.uk-list>li>ul{margin-top:10px}.uk-list-divider>li:nth-child(n+2){margin-top:10px;padding-top:10px;border-top:1px solid #e5e5e5}.uk-list-striped>li{padding:10px 10px}.uk-list-striped>li:nth-of-type(odd){border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.uk-list-striped>li:nth-of-type(odd){background:#f8f8f8}.uk-list-striped>li:nth-child(n+2){margin-top:0}.uk-list-bullet>li{position:relative;padding-left:calc(1.5em + 10px)}.uk-list-bullet>li::before{content:"";position:absolute;top:0;left:0;width:1.5em;height:1.5em;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:50% 50%;display:block}.uk-list-large>li:nth-child(n+2),.uk-list-large>li>ul{margin-top:20px}.uk-list-large.uk-list-divider>li:nth-child(n+2){margin-top:20px;padding-top:20px}.uk-list-large.uk-list-striped>li{padding:20px 10px}.uk-list-large.uk-list-striped>li:nth-of-type(odd){border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.uk-list-large.uk-list-striped>li:nth-child(n+2){margin-top:0}.uk-description-list>dt{color:#333;font-size:.875rem;font-weight:400;text-transform:uppercase}.uk-description-list>dt:nth-child(n+2){margin-top:20px}.uk-description-list-divider>dt:nth-child(n+2){margin-top:20px;padding-top:20px;border-top:1px solid #e5e5e5}.uk-table{border-collapse:collapse;border-spacing:0;width:100%;margin-bottom:20px}*+.uk-table{margin-top:20px}.uk-table th{padding:16px 12px;text-align:left;vertical-align:bottom;font-size:.875rem;font-weight:400;color:#999;text-transform:uppercase}.uk-table td{padding:16px 12px;vertical-align:top}.uk-table td>:last-child{margin-bottom:0}.uk-table tfoot{font-size:.875rem}.uk-table caption{font-size:.875rem;text-align:left;color:#999}.uk-table-middle,.uk-table-middle td{vertical-align:middle!important}.uk-table-divider>:first-child>tr:not(:first-child),.uk-table-divider>:not(:first-child)>tr,.uk-table-divider>tr:not(:first-child){border-top:1px solid #e5e5e5}.uk-table-striped tbody tr:nth-of-type(odd),.uk-table-striped>tr:nth-of-type(odd){background:#f8f8f8;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.uk-table-hover tbody tr:hover,.uk-table-hover>tr:hover{background:#ffd}.uk-table tbody tr.uk-active,.uk-table>tr.uk-active{background:#ffd}.uk-table-small td,.uk-table-small th{padding:10px 12px}.uk-table-large td,.uk-table-large th{padding:22px 12px}.uk-table-justify td:first-child,.uk-table-justify th:first-child{padding-left:0}.uk-table-justify td:last-child,.uk-table-justify th:last-child{padding-right:0}.uk-table-shrink{width:1px}.uk-table-expand{min-width:150px}.uk-table-link{padding:0!important}.uk-table-link>a{display:block;padding:16px 12px}.uk-table-small .uk-table-link>a{padding:10px 12px}@media (max-width:959px){.uk-table-responsive,.uk-table-responsive tbody,.uk-table-responsive td,.uk-table-responsive th,.uk-table-responsive tr{display:block}.uk-table-responsive thead{display:none}.uk-table-responsive td,.uk-table-responsive th{width:auto!important;max-width:none!important;min-width:0!important;overflow:visible!important;white-space:normal!important}.uk-table-responsive .uk-table-link:not(:first-child)>a,.uk-table-responsive td:not(:first-child):not(.uk-table-link),.uk-table-responsive th:not(:first-child):not(.uk-table-link){padding-top:5px!important}.uk-table-responsive .uk-table-link:not(:last-child)>a,.uk-table-responsive td:not(:last-child):not(.uk-table-link),.uk-table-responsive th:not(:last-child):not(.uk-table-link){padding-bottom:5px!important}.uk-table-justify.uk-table-responsive td,.uk-table-justify.uk-table-responsive th{padding-left:0;padding-right:0}}.uk-table tbody tr{transition:background-color .1s linear}.uk-icon{margin:0;border:none;border-radius:0;overflow:visible;font:inherit;color:inherit;text-transform:none;padding:0;background-color:transparent;display:inline-block;fill:currentcolor;line-height:0}button.uk-icon:not(:disabled){cursor:pointer}.uk-icon::-moz-focus-inner{border:0;padding:0}.uk-icon:not(.uk-preserve) [fill*='#']:not(.uk-preserve){fill:currentcolor}.uk-icon:not(.uk-preserve) [stroke*='#']:not(.uk-preserve){stroke:currentcolor}.uk-icon>*{transform:translate(0,0)}.uk-icon-image{width:20px;height:20px;background-position:50% 50%;background-repeat:no-repeat;background-size:contain;vertical-align:middle}.uk-icon-link{color:#999}.uk-icon-link:focus,.uk-icon-link:hover{color:#666;outline:0}.uk-active>.uk-icon-link,.uk-icon-link:active{color:#595959}.uk-icon-button{box-sizing:border-box;width:36px;height:36px;border-radius:500px;background:#f8f8f8;color:#999;vertical-align:middle;display:inline-flex;justify-content:center;align-items:center;transition:.1s ease-in-out;transition-property:color,background-color}.uk-icon-button:focus,.uk-icon-button:hover{background-color:#ebebeb;color:#666;outline:0}.uk-active>.uk-icon-button,.uk-icon-button:active{background-color:#dfdfdf;color:#666}.uk-range{box-sizing:border-box;margin:0;vertical-align:middle;max-width:100%;width:100%;-webkit-appearance:none;background:0 0;padding:0}.uk-range:focus{outline:0}.uk-range::-moz-focus-outer{border:none}.uk-range::-ms-track{height:15px;background:0 0;border-color:transparent;color:transparent}.uk-range:not(:disabled)::-webkit-slider-thumb{cursor:pointer}.uk-range:not(:disabled)::-moz-range-thumb{cursor:pointer}.uk-range:not(:disabled)::-ms-thumb{cursor:pointer}.uk-range::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-7px;height:15px;width:15px;border-radius:500px;background:#fff;border:1px solid #ccc}.uk-range::-moz-range-thumb{border:none;height:15px;width:15px;border-radius:500px;background:#fff;border:1px solid #ccc}.uk-range::-ms-thumb{margin-top:0}.uk-range::-ms-thumb{border:none;height:15px;width:15px;border-radius:500px;background:#fff;border:1px solid #ccc}.uk-range::-ms-tooltip{display:none}.uk-range::-webkit-slider-runnable-track{height:3px;background:#ebebeb;border-radius:500px}.uk-range:active::-webkit-slider-runnable-track,.uk-range:focus::-webkit-slider-runnable-track{background:#d2d2d2}.uk-range::-moz-range-track{height:3px;background:#ebebeb;border-radius:500px}.uk-range:focus::-moz-range-track{background:#d2d2d2}.uk-range::-ms-fill-lower,.uk-range::-ms-fill-upper{height:3px;background:#ebebeb;border-radius:500px}.uk-range:focus::-ms-fill-lower,.uk-range:focus::-ms-fill-upper{background:#d2d2d2}.uk-checkbox,.uk-input,.uk-radio,.uk-select,.uk-textarea{box-sizing:border-box;margin:0;border-radius:0;font:inherit}.uk-input{overflow:visible}.uk-select{text-transform:none}.uk-select optgroup{font:inherit;font-weight:700}.uk-textarea{overflow:auto}.uk-input[type=search]::-webkit-search-cancel-button,.uk-input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.uk-input[type=number]::-webkit-inner-spin-button,.uk-input[type=number]::-webkit-outer-spin-button{height:auto}.uk-input::-moz-placeholder,.uk-textarea::-moz-placeholder{opacity:1}.uk-checkbox:not(:disabled),.uk-radio:not(:disabled){cursor:pointer}.uk-fieldset{border:none;margin:0;padding:0}.uk-input,.uk-textarea{-webkit-appearance:none}.uk-input,.uk-select,.uk-textarea{max-width:100%;width:100%;border:0 none;padding:0 10px;background:#fff;color:#666;border:1px solid #e5e5e5;transition:.2s ease-in-out;transition-property:color,background-color,border}.uk-input,.uk-select:not([multiple]):not([size]){height:40px;vertical-align:middle;display:inline-block}.uk-input:not(input),.uk-select:not(select){line-height:38px}.uk-select[multiple],.uk-select[size],.uk-textarea{padding-top:4px;padding-bottom:4px;vertical-align:top}.uk-input:focus,.uk-select:focus,.uk-textarea:focus{outline:0;background-color:#fff;color:#666;border-color:#1e87f0}.uk-input:disabled,.uk-select:disabled,.uk-textarea:disabled{background-color:#f8f8f8;color:#999;border-color:#e5e5e5}.uk-input::-ms-input-placeholder{color:#999!important}.uk-input::placeholder{color:#999}.uk-textarea::-ms-input-placeholder{color:#999!important}.uk-textarea::placeholder{color:#999}.uk-form-small{font-size:.875rem}.uk-form-small:not(textarea):not([multiple]):not([size]){height:30px;padding-left:8px;padding-right:8px}.uk-form-small:not(select):not(input):not(textarea){line-height:28px}.uk-form-large{font-size:1.25rem}.uk-form-large:not(textarea):not([multiple]):not([size]){height:55px;padding-left:12px;padding-right:12px}.uk-form-large:not(select):not(input):not(textarea){line-height:53px}.uk-form-danger,.uk-form-danger:focus{color:#f0506e;border-color:#f0506e}.uk-form-success,.uk-form-success:focus{color:#32d296;border-color:#32d296}.uk-form-blank{background:0 0;border-color:transparent}.uk-form-blank:focus{border-color:#e5e5e5;border-style:dashed}input.uk-form-width-xsmall{width:50px}select.uk-form-width-xsmall{width:75px}.uk-form-width-small{width:130px}.uk-form-width-medium{width:200px}.uk-form-width-large{width:500px}.uk-select:not([multiple]):not([size]){-webkit-appearance:none;-moz-appearance:none;padding-right:20px;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");background-repeat:no-repeat;background-position:100% 50%}.uk-select:not([multiple]):not([size])::-ms-expand{display:none}.uk-select:not([multiple]):not([size]) option{color:#444}.uk-select:not([multiple]):not([size]):disabled{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-checkbox,.uk-radio{display:inline-block;height:16px;width:16px;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;background-color:transparent;background-repeat:no-repeat;background-position:50% 50%;border:1px solid #ccc;transition:.2s ease-in-out;transition-property:background-color,border}.uk-radio{border-radius:50%}.uk-checkbox:focus,.uk-radio:focus{outline:0;border-color:#1e87f0}.uk-checkbox:checked,.uk-checkbox:indeterminate,.uk-radio:checked{background-color:#1e87f0;border-color:transparent}.uk-checkbox:checked:focus,.uk-checkbox:indeterminate:focus,.uk-radio:checked:focus{background-color:#0e6dcd}.uk-radio:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23fff%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-checkbox:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23fff%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-checkbox:indeterminate{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23fff%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-checkbox:disabled,.uk-radio:disabled{background-color:#f8f8f8;border-color:#e5e5e5}.uk-radio:disabled:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23999%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-checkbox:disabled:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-checkbox:disabled:indeterminate{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23999%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-legend{width:100%;color:inherit;padding:0;font-size:1.5rem;line-height:1.4}.uk-form-custom{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-form-custom input[type=file],.uk-form-custom select{position:absolute;top:0;z-index:1;width:100%;height:100%;left:0;-webkit-appearance:none;opacity:0;cursor:pointer}.uk-form-custom input[type=file]{font-size:500px;overflow:hidden}.uk-form-label{color:#333;font-size:.875rem}.uk-form-stacked .uk-form-label{display:block;margin-bottom:5px}@media (max-width:959px){.uk-form-horizontal .uk-form-label{display:block;margin-bottom:5px}}@media (min-width:960px){.uk-form-horizontal .uk-form-label{width:200px;margin-top:7px;float:left}.uk-form-horizontal .uk-form-controls{margin-left:215px}.uk-form-horizontal .uk-form-controls-text{padding-top:7px}}.uk-form-icon{position:absolute;top:0;bottom:0;left:0;width:40px;display:inline-flex;justify-content:center;align-items:center;color:#999}.uk-form-icon:hover{color:#666}.uk-form-icon:not(a):not(button):not(input){pointer-events:none}.uk-form-icon:not(.uk-form-icon-flip)~.uk-input{padding-left:40px!important}.uk-form-icon-flip{right:0;left:auto}.uk-form-icon-flip~.uk-input{padding-right:40px!important}.uk-button{margin:0;border:none;overflow:visible;font:inherit;color:inherit;text-transform:none;display:inline-block;box-sizing:border-box;padding:0 30px;vertical-align:middle;font-size:.875rem;line-height:38px;text-align:center;text-decoration:none;text-transform:uppercase;transition:.1s ease-in-out;transition-property:color,background-color,border-color}.uk-button:not(:disabled){cursor:pointer}.uk-button::-moz-focus-inner{border:0;padding:0}.uk-button:hover{text-decoration:none}.uk-button:focus{outline:0}.uk-button-default{background-color:transparent;color:#333;border:1px solid #e5e5e5}.uk-button-default:focus,.uk-button-default:hover{background-color:transparent;color:#333;border-color:#b2b2b2}.uk-button-default.uk-active,.uk-button-default:active{background-color:transparent;color:#333;border-color:#999}.uk-button-primary{background-color:#1e87f0;color:#fff;border:1px solid transparent}.uk-button-primary:focus,.uk-button-primary:hover{background-color:#0f7ae5;color:#fff}.uk-button-primary.uk-active,.uk-button-primary:active{background-color:#0e6dcd;color:#fff}.uk-button-secondary{background-color:#222;color:#fff;border:1px solid transparent}.uk-button-secondary:focus,.uk-button-secondary:hover{background-color:#151515;color:#fff}.uk-button-secondary.uk-active,.uk-button-secondary:active{background-color:#080808;color:#fff}.uk-button-danger{background-color:#f0506e;color:#fff;border:1px solid transparent}.uk-button-danger:focus,.uk-button-danger:hover{background-color:#ee395b;color:#fff}.uk-button-danger.uk-active,.uk-button-danger:active{background-color:#ec2147;color:#fff}.uk-button-danger:disabled,.uk-button-default:disabled,.uk-button-primary:disabled,.uk-button-secondary:disabled{background-color:transparent;color:#999;border-color:#e5e5e5}.uk-button-small{padding:0 15px;line-height:28px;font-size:.875rem}.uk-button-large{padding:0 40px;line-height:53px;font-size:.875rem}.uk-button-text{padding:0;line-height:1.5;background:0 0;color:#333;position:relative}.uk-button-text::before{content:"";position:absolute;bottom:0;left:0;right:100%;border-bottom:1px solid #333;transition:right .3s ease-out}.uk-button-text:focus,.uk-button-text:hover{color:#333}.uk-button-text:focus::before,.uk-button-text:hover::before{right:0}.uk-button-text:disabled{color:#999}.uk-button-text:disabled::before{display:none}.uk-button-link{padding:0;line-height:1.5;background:0 0;color:#1e87f0}.uk-button-link:focus,.uk-button-link:hover{color:#0f6ecd;text-decoration:underline}.uk-button-link:disabled{color:#999;text-decoration:none}.uk-button-group{display:inline-flex;vertical-align:middle;position:relative}.uk-button-group>.uk-button:nth-child(n+2),.uk-button-group>div:nth-child(n+2) .uk-button{margin-left:-1px}.uk-button-group .uk-button.uk-active,.uk-button-group .uk-button:active,.uk-button-group .uk-button:focus,.uk-button-group .uk-button:hover{position:relative;z-index:1}.uk-section{box-sizing:border-box;padding-top:40px;padding-bottom:40px}@media (min-width:960px){.uk-section{padding-top:70px;padding-bottom:70px}}.uk-section::after,.uk-section::before{content:"";display:table}.uk-section::after{clear:both}.uk-section>:last-child{margin-bottom:0}.uk-section-xsmall{padding-top:20px;padding-bottom:20px}.uk-section-small{padding-top:40px;padding-bottom:40px}.uk-section-large{padding-top:70px;padding-bottom:70px}@media (min-width:960px){.uk-section-large{padding-top:140px;padding-bottom:140px}}.uk-section-xlarge{padding-top:140px;padding-bottom:140px}@media (min-width:960px){.uk-section-xlarge{padding-top:210px;padding-bottom:210px}}.uk-section-default{background:#fff}.uk-section-muted{background:#f8f8f8}.uk-section-primary{background:#1e87f0}.uk-section-secondary{background:#222}.uk-container{box-sizing:content-box;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}@media (min-width:640px){.uk-container{padding-left:30px;padding-right:30px}}@media (min-width:960px){.uk-container{padding-left:40px;padding-right:40px}}.uk-container::after,.uk-container::before{content:"";display:table}.uk-container::after{clear:both}.uk-container>:last-child{margin-bottom:0}.uk-container .uk-container{padding-left:0;padding-right:0}.uk-container-xsmall{max-width:750px}.uk-container-small{max-width:900px}.uk-container-large{max-width:1600px}.uk-container-expand{max-width:none}.uk-grid{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.uk-grid>*{margin:0}.uk-grid>*>:last-child{margin-bottom:0}.uk-grid{margin-left:-30px}.uk-grid>*{padding-left:30px}*+.uk-grid-margin,.uk-grid+.uk-grid,.uk-grid>.uk-grid-margin{margin-top:30px}@media (min-width:1200px){.uk-grid{margin-left:-40px}.uk-grid>*{padding-left:40px}*+.uk-grid-margin,.uk-grid+.uk-grid,.uk-grid>.uk-grid-margin{margin-top:40px}}.uk-grid-small{margin-left:-15px}.uk-grid-small>*{padding-left:15px}*+.uk-grid-margin-small,.uk-grid+.uk-grid-small,.uk-grid-small>.uk-grid-margin{margin-top:15px}.uk-grid-medium{margin-left:-30px}.uk-grid-medium>*{padding-left:30px}*+.uk-grid-margin-medium,.uk-grid+.uk-grid-medium,.uk-grid-medium>.uk-grid-margin{margin-top:30px}.uk-grid-large{margin-left:-40px}.uk-grid-large>*{padding-left:40px}*+.uk-grid-margin-large,.uk-grid+.uk-grid-large,.uk-grid-large>.uk-grid-margin{margin-top:40px}@media (min-width:1200px){.uk-grid-large{margin-left:-70px}.uk-grid-large>*{padding-left:70px}*+.uk-grid-margin-large,.uk-grid+.uk-grid-large,.uk-grid-large>.uk-grid-margin{margin-top:70px}}.uk-grid-collapse{margin-left:0}.uk-grid-collapse>*{padding-left:0}.uk-grid+.uk-grid-collapse,.uk-grid-collapse>.uk-grid-margin{margin-top:0}.uk-grid-divider>*{position:relative}.uk-grid-divider>:not(.uk-first-column)::before{content:"";position:absolute;top:0;bottom:0;border-left:1px solid #e5e5e5}.uk-grid-divider.uk-grid-stack>.uk-grid-margin::before{content:"";position:absolute;left:0;right:0;border-top:1px solid #e5e5e5}.uk-grid-divider{margin-left:-60px}.uk-grid-divider>*{padding-left:60px}.uk-grid-divider>:not(.uk-first-column)::before{left:30px}.uk-grid-divider.uk-grid-stack>.uk-grid-margin{margin-top:60px}.uk-grid-divider.uk-grid-stack>.uk-grid-margin::before{top:-30px;left:60px}@media (min-width:1200px){.uk-grid-divider{margin-left:-80px}.uk-grid-divider>*{padding-left:80px}.uk-grid-divider>:not(.uk-first-column)::before{left:40px}.uk-grid-divider.uk-grid-stack>.uk-grid-margin{margin-top:80px}.uk-grid-divider.uk-grid-stack>.uk-grid-margin::before{top:-40px;left:80px}}.uk-grid-divider.uk-grid-small{margin-left:-30px}.uk-grid-divider.uk-grid-small>*{padding-left:30px}.uk-grid-divider.uk-grid-small>:not(.uk-first-column)::before{left:15px}.uk-grid-divider.uk-grid-small.uk-grid-stack>.uk-grid-margin{margin-top:30px}.uk-grid-divider.uk-grid-small.uk-grid-stack>.uk-grid-margin::before{top:-15px;left:30px}.uk-grid-divider.uk-grid-medium{margin-left:-60px}.uk-grid-divider.uk-grid-medium>*{padding-left:60px}.uk-grid-divider.uk-grid-medium>:not(.uk-first-column)::before{left:30px}.uk-grid-divider.uk-grid-medium.uk-grid-stack>.uk-grid-margin{margin-top:60px}.uk-grid-divider.uk-grid-medium.uk-grid-stack>.uk-grid-margin::before{top:-30px;left:60px}.uk-grid-divider.uk-grid-large{margin-left:-80px}.uk-grid-divider.uk-grid-large>*{padding-left:80px}.uk-grid-divider.uk-grid-large>:not(.uk-first-column)::before{left:40px}.uk-grid-divider.uk-grid-large.uk-grid-stack>.uk-grid-margin{margin-top:80px}.uk-grid-divider.uk-grid-large.uk-grid-stack>.uk-grid-margin::before{top:-40px;left:80px}@media (min-width:1200px){.uk-grid-divider.uk-grid-large{margin-left:-140px}.uk-grid-divider.uk-grid-large>*{padding-left:140px}.uk-grid-divider.uk-grid-large>:not(.uk-first-column)::before{left:70px}.uk-grid-divider.uk-grid-large.uk-grid-stack>.uk-grid-margin{margin-top:140px}.uk-grid-divider.uk-grid-large.uk-grid-stack>.uk-grid-margin::before{top:-70px;left:140px}}.uk-grid-item-match,.uk-grid-match>*{display:flex;flex-wrap:wrap}.uk-grid-item-match>:not([class*=uk-width]),.uk-grid-match>*>:not([class*=uk-width]){box-sizing:border-box;width:100%;flex:auto}.uk-tile{position:relative;box-sizing:border-box;padding-left:15px;padding-right:15px;padding-top:40px;padding-bottom:40px}@media (min-width:640px){.uk-tile{padding-left:30px;padding-right:30px}}@media (min-width:960px){.uk-tile{padding-left:40px;padding-right:40px;padding-top:70px;padding-bottom:70px}}.uk-tile::after,.uk-tile::before{content:"";display:table}.uk-tile::after{clear:both}.uk-tile>:last-child{margin-bottom:0}.uk-tile-xsmall{padding-top:20px;padding-bottom:20px}.uk-tile-small{padding-top:40px;padding-bottom:40px}.uk-tile-large{padding-top:70px;padding-bottom:70px}@media (min-width:960px){.uk-tile-large{padding-top:140px;padding-bottom:140px}}.uk-tile-xlarge{padding-top:140px;padding-bottom:140px}@media (min-width:960px){.uk-tile-xlarge{padding-top:210px;padding-bottom:210px}}.uk-tile-default{background:#fff}.uk-tile-muted{background:#f8f8f8}.uk-tile-primary{background:#1e87f0}.uk-tile-secondary{background:#222}.uk-card{position:relative;box-sizing:border-box;transition:box-shadow .1s ease-in-out}.uk-card-body{padding:30px 30px}.uk-card-header{padding:15px 30px}.uk-card-footer{padding:15px 30px}@media (min-width:1200px){.uk-card-body{padding:40px 40px}.uk-card-header{padding:20px 40px}.uk-card-footer{padding:20px 40px}}.uk-card-body::after,.uk-card-body::before,.uk-card-footer::after,.uk-card-footer::before,.uk-card-header::after,.uk-card-header::before{content:"";display:table}.uk-card-body::after,.uk-card-footer::after,.uk-card-header::after{clear:both}.uk-card-body>:last-child,.uk-card-footer>:last-child,.uk-card-header>:last-child{margin-bottom:0}.uk-card-title{font-size:1.5rem;line-height:1.4}.uk-card-badge{position:absolute;top:30px;right:30px;z-index:1}.uk-card-badge:first-child+*{margin-top:0}.uk-card-hover:not(.uk-card-default):not(.uk-card-primary):not(.uk-card-secondary):hover{background:#fff;box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-card-default{background:#fff;color:#666;box-shadow:0 5px 15px rgba(0,0,0,.08)}.uk-card-default .uk-card-title{color:#333}.uk-card-default.uk-card-hover:hover{background-color:#fff;box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-card-default .uk-card-header{border-bottom:1px solid #e5e5e5}.uk-card-default .uk-card-footer{border-top:1px solid #e5e5e5}.uk-card-primary{background:#1e87f0;color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.08)}.uk-card-primary .uk-card-title{color:#fff}.uk-card-primary.uk-card-hover:hover{background-color:#1e87f0;box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-card-secondary{background:#222;color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.08)}.uk-card-secondary .uk-card-title{color:#fff}.uk-card-secondary.uk-card-hover:hover{background-color:#222;box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-card-small .uk-card-body,.uk-card-small.uk-card-body{padding:20px 20px}.uk-card-small .uk-card-header{padding:13px 20px}.uk-card-small .uk-card-footer{padding:13px 20px}@media (min-width:1200px){.uk-card-large .uk-card-body,.uk-card-large.uk-card-body{padding:70px 70px}.uk-card-large .uk-card-header{padding:35px 70px}.uk-card-large .uk-card-footer{padding:35px 70px}}.uk-card-body>.uk-nav-default{margin-left:-30px;margin-right:-30px}.uk-card-body>.uk-nav-default:only-child{margin-top:-15px;margin-bottom:-15px}.uk-card-body .uk-nav-default .uk-nav-divider,.uk-card-body .uk-nav-default .uk-nav-header,.uk-card-body .uk-nav-default>li>a{padding-left:30px;padding-right:30px}.uk-card-body .uk-nav-default .uk-nav-sub{padding-left:45px}@media (min-width:1200px){.uk-card-body>.uk-nav-default{margin-left:-40px;margin-right:-40px}.uk-card-body>.uk-nav-default:only-child{margin-top:-25px;margin-bottom:-25px}.uk-card-body .uk-nav-default .uk-nav-divider,.uk-card-body .uk-nav-default .uk-nav-header,.uk-card-body .uk-nav-default>li>a{padding-left:40px;padding-right:40px}.uk-card-body .uk-nav-default .uk-nav-sub{padding-left:55px}}.uk-card-small>.uk-nav-default{margin-left:-20px;margin-right:-20px}.uk-card-small>.uk-nav-default:only-child{margin-top:-5px;margin-bottom:-5px}.uk-card-small .uk-nav-default .uk-nav-divider,.uk-card-small .uk-nav-default .uk-nav-header,.uk-card-small .uk-nav-default>li>a{padding-left:20px;padding-right:20px}.uk-card-small .uk-nav-default .uk-nav-sub{padding-left:35px}@media (min-width:1200px){.uk-card-large>.uk-nav-default{margin:0}.uk-card-large>.uk-nav-default:only-child{margin:0}.uk-card-large .uk-nav-default .uk-nav-divider,.uk-card-large .uk-nav-default .uk-nav-header,.uk-card-large .uk-nav-default>li>a{padding-left:0;padding-right:0}.uk-card-large .uk-nav-default .uk-nav-sub{padding-left:15px}}.uk-close{color:#999;transition:.1s ease-in-out;transition-property:color,opacity}.uk-close:focus,.uk-close:hover{color:#666;outline:0}.uk-spinner>*{animation:uk-spinner-rotate 1.4s linear infinite}@keyframes uk-spinner-rotate{0%{transform:rotate(0)}100%{transform:rotate(270deg)}}.uk-spinner>*>*{stroke-dasharray:88px;stroke-dashoffset:0;transform-origin:center;animation:uk-spinner-dash 1.4s ease-in-out infinite;stroke-width:1;stroke-linecap:round}@keyframes uk-spinner-dash{0%{stroke-dashoffset:88px}50%{stroke-dashoffset:22px;transform:rotate(135deg)}100%{stroke-dashoffset:88px;transform:rotate(450deg)}}.uk-totop{padding:5px;color:#999;transition:color .1s ease-in-out}.uk-totop:focus,.uk-totop:hover{color:#666;outline:0}.uk-totop:active{color:#333}.uk-marker{padding:5px;background:#222;color:#fff;border-radius:500px}.uk-marker:focus,.uk-marker:hover{color:#fff;outline:0}.uk-alert{position:relative;margin-bottom:20px;padding:15px 29px 15px 15px;background:#f8f8f8;color:#666}*+.uk-alert{margin-top:20px}.uk-alert>:last-child{margin-bottom:0}.uk-alert-close{position:absolute;top:20px;right:15px;color:inherit;opacity:.4}.uk-alert-close:first-child+*{margin-top:0}.uk-alert-close:focus,.uk-alert-close:hover{color:inherit;opacity:.8}.uk-alert-primary{background:#d8eafc;color:#1e87f0}.uk-alert-success{background:#edfbf6;color:#32d296}.uk-alert-warning{background:#fff6ee;color:#faa05a}.uk-alert-danger{background:#fef4f6;color:#f0506e}.uk-alert h1,.uk-alert h2,.uk-alert h3,.uk-alert h4,.uk-alert h5,.uk-alert h6{color:inherit}.uk-alert a:not([class]){color:inherit;text-decoration:underline}.uk-alert a:not([class]):hover{color:inherit;text-decoration:underline}.uk-badge{box-sizing:border-box;min-width:22px;height:22px;padding:0 5px;border-radius:500px;vertical-align:middle;background:#1e87f0;color:#fff;font-size:.875rem;display:inline-flex;justify-content:center;align-items:center}.uk-badge:focus,.uk-badge:hover{color:#fff;text-decoration:none;outline:0}.uk-label{display:inline-block;padding:0 10px;background:#1e87f0;line-height:1.5;font-size:.875rem;color:#fff;vertical-align:middle;white-space:nowrap;border-radius:2px;text-transform:uppercase}.uk-label-success{background-color:#32d296;color:#fff}.uk-label-warning{background-color:#faa05a;color:#fff}.uk-label-danger{background-color:#f0506e;color:#fff}.uk-overlay{padding:30px 30px}.uk-overlay>:last-child{margin-bottom:0}.uk-overlay-default{background:rgba(255,255,255,.8)}.uk-overlay-primary{background:rgba(34,34,34,.8)}.uk-article::after,.uk-article::before{content:"";display:table}.uk-article::after{clear:both}.uk-article>:last-child{margin-bottom:0}.uk-article+.uk-article{margin-top:70px}.uk-article-title{font-size:2.23125rem;line-height:1.2}@media (min-width:960px){.uk-article-title{font-size:2.625rem}}.uk-article-meta{font-size:.875rem;line-height:1.4;color:#999}.uk-article-meta a{color:#999}.uk-article-meta a:hover{color:#666;text-decoration:none}.uk-comment-body{overflow-wrap:break-word;word-wrap:break-word}.uk-comment-header{margin-bottom:20px}.uk-comment-body::after,.uk-comment-body::before,.uk-comment-header::after,.uk-comment-header::before{content:"";display:table}.uk-comment-body::after,.uk-comment-header::after{clear:both}.uk-comment-body>:last-child,.uk-comment-header>:last-child{margin-bottom:0}.uk-comment-title{font-size:1.25rem;line-height:1.4}.uk-comment-meta{font-size:.875rem;line-height:1.4;color:#999}.uk-comment-list{padding:0;list-style:none}.uk-comment-list>:nth-child(n+2){margin-top:70px}.uk-comment-list .uk-comment~ul{margin:70px 0 0 0;padding-left:30px;list-style:none}@media (min-width:960px){.uk-comment-list .uk-comment~ul{padding-left:100px}}.uk-comment-list .uk-comment~ul>:nth-child(n+2){margin-top:70px}.uk-comment-primary{padding:30px;background-color:#f8f8f8}.uk-search{display:inline-block;position:relative;max-width:100%;margin:0}.uk-search-input::-webkit-search-cancel-button,.uk-search-input::-webkit-search-decoration{-webkit-appearance:none}.uk-search-input::-moz-placeholder{opacity:1}.uk-search-input{box-sizing:border-box;margin:0;border-radius:0;font:inherit;overflow:visible;-webkit-appearance:none;vertical-align:middle;width:100%;border:none;color:#666}.uk-search-input:focus{outline:0}.uk-search-input:-ms-input-placeholder{color:#999!important}.uk-search-input::placeholder{color:#999}.uk-search-icon:focus{outline:0}.uk-search .uk-search-icon{position:absolute;top:0;bottom:0;left:0;display:inline-flex;justify-content:center;align-items:center;color:#999}.uk-search .uk-search-icon:hover{color:#999}.uk-search .uk-search-icon:not(a):not(button):not(input){pointer-events:none}.uk-search .uk-search-icon-flip{right:0;left:auto}.uk-search-default{width:180px}.uk-search-default .uk-search-input{height:40px;padding-left:6px;padding-right:6px;background:0 0;border:1px solid #e5e5e5}.uk-search-default .uk-search-input:focus{background-color:transparent}.uk-search-default .uk-search-icon{width:40px}.uk-search-default .uk-search-icon:not(.uk-search-icon-flip)~.uk-search-input{padding-left:40px}.uk-search-default .uk-search-icon-flip~.uk-search-input{padding-right:40px}.uk-search-navbar{width:400px}.uk-search-navbar .uk-search-input{height:40px;background:0 0;font-size:1.5rem}.uk-search-navbar .uk-search-icon{width:40px}.uk-search-navbar .uk-search-icon:not(.uk-search-icon-flip)~.uk-search-input{padding-left:40px}.uk-search-navbar .uk-search-icon-flip~.uk-search-input{padding-right:40px}.uk-search-large{width:500px}.uk-search-large .uk-search-input{height:80px;background:0 0;font-size:2.625rem}.uk-search-large .uk-search-icon{width:80px}.uk-search-large .uk-search-icon:not(.uk-search-icon-flip)~.uk-search-input{padding-left:80px}.uk-search-large .uk-search-icon-flip~.uk-search-input{padding-right:80px}.uk-search-toggle{color:#999}.uk-search-toggle:focus,.uk-search-toggle:hover{color:#666}.uk-nav,.uk-nav ul{margin:0;padding:0;list-style:none}.uk-nav li>a{display:block;text-decoration:none}.uk-nav li>a:focus{outline:0}.uk-nav>li>a{padding:5px 0}ul.uk-nav-sub{padding:5px 0 5px 15px}.uk-nav-sub ul{padding-left:15px}.uk-nav-sub a{padding:2px 0}.uk-nav-parent-icon>.uk-parent>a::after{content:"";width:1.5em;height:1.5em;float:right;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:50% 50%}.uk-nav-parent-icon>.uk-parent.uk-open>a::after{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-nav-header{padding:5px 0;text-transform:uppercase;font-size:.875rem}.uk-nav-header:not(:first-child){margin-top:20px}.uk-nav-divider{margin:5px 0}.uk-nav-default{font-size:.875rem}.uk-nav-default>li>a{color:#999}.uk-nav-default>li>a:focus,.uk-nav-default>li>a:hover{color:#666}.uk-nav-default>li.uk-active>a{color:#333}.uk-nav-default .uk-nav-header{color:#333}.uk-nav-default .uk-nav-divider{border-top:1px solid #e5e5e5}.uk-nav-default .uk-nav-sub a{color:#999}.uk-nav-default .uk-nav-sub a:focus,.uk-nav-default .uk-nav-sub a:hover{color:#666}.uk-nav-primary>li>a{font-size:1.5rem;line-height:1.5;color:#999}.uk-nav-primary>li>a:focus,.uk-nav-primary>li>a:hover{color:#666}.uk-nav-primary>li.uk-active>a{color:#333}.uk-nav-primary .uk-nav-header{color:#333}.uk-nav-primary .uk-nav-divider{border-top:1px solid #e5e5e5}.uk-nav-primary .uk-nav-sub a{color:#999}.uk-nav-primary .uk-nav-sub a:focus,.uk-nav-primary .uk-nav-sub a:hover{color:#666}.uk-nav-center{text-align:center}.uk-nav-center .uk-nav-sub,.uk-nav-center .uk-nav-sub ul{padding-left:0}.uk-nav-center.uk-nav-parent-icon>.uk-parent>a::after{position:absolute}.uk-navbar{display:flex;position:relative}.uk-navbar-container:not(.uk-navbar-transparent){background:#f8f8f8}.uk-navbar-container>::after,.uk-navbar-container>::before{display:none!important}.uk-navbar-center,.uk-navbar-center-left>*,.uk-navbar-center-right>*,.uk-navbar-left,.uk-navbar-right{display:flex;align-items:center}.uk-navbar-right{margin-left:auto}.uk-navbar-center:only-child{margin-left:auto;margin-right:auto;position:relative}.uk-navbar-center:not(:only-child){position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:990}.uk-navbar-center:not(:only-child) .uk-navbar-item,.uk-navbar-center:not(:only-child) .uk-navbar-nav>li>a,.uk-navbar-center:not(:only-child) .uk-navbar-toggle{white-space:nowrap}.uk-navbar-center-left,.uk-navbar-center-right{position:absolute;top:0}.uk-navbar-center-left{right:100%}.uk-navbar-center-right{left:100%}[class*=uk-navbar-center-] .uk-navbar-item,[class*=uk-navbar-center-] .uk-navbar-nav>li>a,[class*=uk-navbar-center-] .uk-navbar-toggle{white-space:nowrap}.uk-navbar-nav{display:flex;margin:0;padding:0;list-style:none}.uk-navbar-center:only-child,.uk-navbar-left,.uk-navbar-right{flex-wrap:wrap}.uk-navbar-item,.uk-navbar-nav>li>a,.uk-navbar-toggle{display:flex;justify-content:center;align-items:center;box-sizing:border-box;min-height:80px;padding:0 15px;font-size:.875rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;text-decoration:none}.uk-navbar-nav>li>a{color:#999;text-transform:uppercase;transition:.1s ease-in-out;transition-property:color,background-color}.uk-navbar-nav>li:hover>a,.uk-navbar-nav>li>a.uk-open,.uk-navbar-nav>li>a:focus{color:#666;outline:0}.uk-navbar-nav>li>a:active{color:#333}.uk-navbar-nav>li.uk-active>a{color:#333}.uk-navbar-item{color:#666}.uk-navbar-toggle{color:#999}.uk-navbar-toggle.uk-open,.uk-navbar-toggle:focus,.uk-navbar-toggle:hover{color:#666;outline:0;text-decoration:none}.uk-navbar-subtitle{font-size:.875rem}.uk-navbar-dropdown{display:none;position:absolute;z-index:1020;box-sizing:border-box;width:200px;padding:25px;background:#fff;color:#666;box-shadow:0 5px 12px rgba(0,0,0,.15)}.uk-navbar-dropdown.uk-open{display:block}[class*=uk-navbar-dropdown-top]{margin-top:-15px}[class*=uk-navbar-dropdown-bottom]{margin-top:15px}[class*=uk-navbar-dropdown-left]{margin-left:-15px}[class*=uk-navbar-dropdown-right]{margin-left:15px}.uk-navbar-dropdown-grid{margin-left:-50px}.uk-navbar-dropdown-grid>*{padding-left:50px}.uk-navbar-dropdown-grid>.uk-grid-margin{margin-top:50px}.uk-navbar-dropdown-stack .uk-navbar-dropdown-grid>*{width:100%!important}.uk-navbar-dropdown-width-2:not(.uk-navbar-dropdown-stack){width:400px}.uk-navbar-dropdown-width-3:not(.uk-navbar-dropdown-stack){width:600px}.uk-navbar-dropdown-width-4:not(.uk-navbar-dropdown-stack){width:800px}.uk-navbar-dropdown-width-5:not(.uk-navbar-dropdown-stack){width:1000px}.uk-navbar-dropdown-dropbar{margin-top:0;margin-bottom:0;box-shadow:none}.uk-navbar-dropdown-nav{font-size:.875rem}.uk-navbar-dropdown-nav>li>a{color:#999}.uk-navbar-dropdown-nav>li>a:focus,.uk-navbar-dropdown-nav>li>a:hover{color:#666}.uk-navbar-dropdown-nav>li.uk-active>a{color:#333}.uk-navbar-dropdown-nav .uk-nav-header{color:#333}.uk-navbar-dropdown-nav .uk-nav-divider{border-top:1px solid #e5e5e5}.uk-navbar-dropdown-nav .uk-nav-sub a{color:#999}.uk-navbar-dropdown-nav .uk-nav-sub a:focus,.uk-navbar-dropdown-nav .uk-nav-sub a:hover{color:#666}.uk-navbar-dropbar{background:#fff}.uk-navbar-dropbar-slide{position:absolute;z-index:980;left:0;right:0;box-shadow:0 5px 7px rgba(0,0,0,.05)}.uk-navbar-container>.uk-container .uk-navbar-left{margin-left:-15px;margin-right:-15px}.uk-navbar-container>.uk-container .uk-navbar-right{margin-right:-15px}.uk-navbar-dropdown-grid>*{position:relative}.uk-navbar-dropdown-grid>:not(.uk-first-column)::before{content:"";position:absolute;top:0;bottom:0;left:25px;border-left:1px solid #e5e5e5}.uk-navbar-dropdown-grid.uk-grid-stack>.uk-grid-margin::before{content:"";position:absolute;top:-25px;left:50px;right:0;border-top:1px solid #e5e5e5}.uk-subnav{display:flex;flex-wrap:wrap;margin-left:-20px;padding:0;list-style:none}.uk-subnav>*{flex:none;padding-left:20px;position:relative}.uk-subnav>*>:first-child{display:block;color:#999;font-size:.875rem;text-transform:uppercase;transition:.1s ease-in-out;transition-property:color,background-color}.uk-subnav>*>a:focus,.uk-subnav>*>a:hover{color:#666;text-decoration:none;outline:0}.uk-subnav>.uk-active>a{color:#333}.uk-subnav-divider>*{display:flex;align-items:center}.uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before{content:"";height:1.5em;margin-left:0;margin-right:20px;border-left:1px solid #e5e5e5}.uk-subnav-pill>*>:first-child{padding:5px 10px;background:0 0;color:#999}.uk-subnav-pill>*>a:focus,.uk-subnav-pill>*>a:hover{background-color:#f8f8f8;color:#666}.uk-subnav-pill>*>a:active{background-color:#f8f8f8;color:#666}.uk-subnav-pill>.uk-active>a{background-color:#1e87f0;color:#fff}.uk-subnav>.uk-disabled>a{color:#999}.uk-breadcrumb{display:flex;flex-wrap:wrap;padding:0;list-style:none}.uk-breadcrumb>*{flex:none}.uk-breadcrumb>*>*{display:inline-block;font-size:.875rem;color:#999}.uk-breadcrumb>*>:focus,.uk-breadcrumb>*>:hover{color:#666;text-decoration:none}.uk-breadcrumb>:last-child>*{color:#666}.uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before{content:"/";display:inline-block;margin:0 20px;color:#999}.uk-pagination{display:flex;flex-wrap:wrap;margin-left:-20px;padding:0;list-style:none}.uk-pagination>*{flex:none;padding-left:20px;position:relative}.uk-pagination>*>*{display:block;color:#999;transition:color .1s ease-in-out}.uk-pagination>*>:focus,.uk-pagination>*>:hover{color:#666;text-decoration:none}.uk-pagination>.uk-active>*{color:#666}.uk-pagination>.uk-disabled>*{color:#999}.uk-tab{display:flex;flex-wrap:wrap;margin-left:-20px;padding:0;list-style:none;position:relative}.uk-tab::before{content:"";position:absolute;bottom:0;left:20px;right:0;border-bottom:1px solid #e5e5e5}.uk-tab>*{flex:none;padding-left:20px;position:relative}.uk-tab>*>a{display:block;text-align:center;padding:5px 10px;color:#999;border-bottom:1px solid transparent;font-size:.875rem;text-transform:uppercase;transition:color .1s ease-in-out}.uk-tab>*>a:focus,.uk-tab>*>a:hover{color:#666;text-decoration:none}.uk-tab>.uk-active>a{color:#333;border-color:#1e87f0}.uk-tab>.uk-disabled>a{color:#999}.uk-tab-bottom::before{top:0;bottom:auto}.uk-tab-bottom>*>a{border-top:1px solid transparent;border-bottom:none}.uk-tab-left,.uk-tab-right{flex-direction:column;margin-left:0}.uk-tab-left>*,.uk-tab-right>*{padding-left:0}.uk-tab-left::before{top:0;bottom:0;left:auto;right:0;border-left:1px solid #e5e5e5;border-bottom:none}.uk-tab-right::before{top:0;bottom:0;left:0;right:auto;border-left:1px solid #e5e5e5;border-bottom:none}.uk-tab-left>*>a{text-align:left;border-right:1px solid transparent;border-bottom:none}.uk-tab-right>*>a{text-align:left;border-left:1px solid transparent;border-bottom:none}.uk-tab .uk-dropdown{margin-left:30px}.uk-slidenav{padding:5px 10px;color:rgba(102,102,102,.5);transition:color .1s ease-in-out}.uk-slidenav:focus,.uk-slidenav:hover{color:rgba(102,102,102,.9);outline:0}.uk-slidenav:active{color:rgba(102,102,102,.5)}.uk-slidenav-large{padding:10px 10px}.uk-slidenav-container{display:flex}.uk-dotnav{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;margin-left:-12px}.uk-dotnav>*{flex:none;padding-left:12px}.uk-dotnav>*>*{display:block;box-sizing:border-box;width:10px;height:10px;border-radius:50%;background:0 0;text-indent:100%;overflow:hidden;white-space:nowrap;border:1px solid rgba(102,102,102,.4);transition:.2s ease-in-out;transition-property:background-color,border-color}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background-color:rgba(102,102,102,.6);outline:0;border-color:transparent}.uk-dotnav>*>:active{background-color:rgba(102,102,102,.2);border-color:transparent}.uk-dotnav>.uk-active>*{background-color:rgba(102,102,102,.6);border-color:transparent}.uk-dotnav-vertical{flex-direction:column;margin-left:0;margin-top:-12px}.uk-dotnav-vertical>*{padding-left:0;padding-top:12px}.uk-thumbnav{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;margin-left:-15px}.uk-thumbnav>*{padding-left:15px}.uk-thumbnav>*>*{display:inline-block;position:relative}.uk-thumbnav>*>::after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(255,255,255,.4);transition:background-color .1s ease-in-out}.uk-thumbnav>*>:focus,.uk-thumbnav>*>:hover{outline:0}.uk-thumbnav>*>:focus::after,.uk-thumbnav>*>:hover::after{background-color:transparent}.uk-thumbnav>.uk-active>::after{background-color:transparent}.uk-thumbnav-vertical{flex-direction:column;margin-left:0;margin-top:-15px}.uk-thumbnav-vertical>*{padding-left:0;padding-top:15px}.uk-accordion{padding:0;list-style:none}.uk-accordion>:nth-child(n+2){margin-top:20px}.uk-accordion-title{display:block;font-size:1.25rem;line-height:1.4;color:#333;overflow:hidden}.uk-accordion-title::before{content:"";width:1.4em;height:1.4em;margin-left:10px;float:right;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:50% 50%}.uk-open>.uk-accordion-title::before{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-accordion-title:focus,.uk-accordion-title:hover{color:#666;text-decoration:none;outline:0}.uk-accordion-content{margin-top:20px}.uk-accordion-content::after,.uk-accordion-content::before{content:"";display:table}.uk-accordion-content::after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}.uk-drop{display:none;position:absolute;z-index:1020;box-sizing:border-box;width:300px}.uk-drop.uk-open{display:block}[class*=uk-drop-top]{margin-top:-20px}[class*=uk-drop-bottom]{margin-top:20px}[class*=uk-drop-left]{margin-left:-20px}[class*=uk-drop-right]{margin-left:20px}.uk-drop-stack .uk-drop-grid>*{width:100%!important}.uk-dropdown{display:none;position:absolute;z-index:1020;box-sizing:border-box;min-width:200px;padding:25px;background:#fff;color:#666;box-shadow:0 5px 12px rgba(0,0,0,.15)}.uk-dropdown.uk-open{display:block}.uk-dropdown-nav{white-space:nowrap;font-size:.875rem}.uk-dropdown-nav>li>a{color:#999}.uk-dropdown-nav>li.uk-active>a,.uk-dropdown-nav>li>a:focus,.uk-dropdown-nav>li>a:hover{color:#666}.uk-dropdown-nav .uk-nav-header{color:#333}.uk-dropdown-nav .uk-nav-divider{border-top:1px solid #e5e5e5}.uk-dropdown-nav .uk-nav-sub a{color:#999}.uk-dropdown-nav .uk-nav-sub a:focus,.uk-dropdown-nav .uk-nav-sub a:hover{color:#666}[class*=uk-dropdown-top]{margin-top:-10px}[class*=uk-dropdown-bottom]{margin-top:10px}[class*=uk-dropdown-left]{margin-left:-10px}[class*=uk-dropdown-right]{margin-left:10px}.uk-dropdown-stack .uk-dropdown-grid>*{width:100%!important}.uk-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1010;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:15px 15px;background:rgba(0,0,0,.6);opacity:0;transition:opacity .15s linear}@media (min-width:640px){.uk-modal{padding:50px 30px}}@media (min-width:960px){.uk-modal{padding-left:40px;padding-right:40px}}.uk-modal.uk-open{opacity:1}.uk-modal-page{overflow:hidden}.uk-modal-dialog{position:relative;box-sizing:border-box;margin:0 auto;width:600px;max-width:calc(100% - .01px)!important;background:#fff;opacity:0;transform:translateY(-100px);transition:.3s linear;transition-property:opacity,transform}.uk-open>.uk-modal-dialog{opacity:1;transform:translateY(0)}.uk-modal-container .uk-modal-dialog{width:1200px}.uk-modal-full{padding:0;background:0 0}.uk-modal-full .uk-modal-dialog{margin:0;width:100%;max-width:100%;transform:translateY(0)}.uk-modal-body{padding:30px 30px}.uk-modal-header{padding:15px 30px;background:#fff;border-bottom:1px solid #e5e5e5}.uk-modal-footer{padding:15px 30px;background:#fff;border-top:1px solid #e5e5e5}.uk-modal-body::after,.uk-modal-body::before,.uk-modal-footer::after,.uk-modal-footer::before,.uk-modal-header::after,.uk-modal-header::before{content:"";display:table}.uk-modal-body::after,.uk-modal-footer::after,.uk-modal-header::after{clear:both}.uk-modal-body>:last-child,.uk-modal-footer>:last-child,.uk-modal-header>:last-child{margin-bottom:0}.uk-modal-title{font-size:2rem;line-height:1.3}[class*=uk-modal-close-]{position:absolute;z-index:1010;top:10px;right:10px;padding:5px}[class*=uk-modal-close-]:first-child+*{margin-top:0}.uk-modal-close-outside{top:0;right:-5px;transform:translate(0,-100%);color:#fff}.uk-modal-close-outside:hover{color:#fff}@media (min-width:960px){.uk-modal-close-outside{right:0;transform:translate(100%,-100%)}}.uk-modal-close-full{top:0;right:0;padding:20px;background:#fff}.uk-lightbox{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1010;background:#000;opacity:0;transition:opacity .15s linear}.uk-lightbox.uk-open{display:block;opacity:1}.uk-lightbox-page{overflow:hidden}.uk-lightbox-items>*{position:absolute;top:0;right:0;bottom:0;left:0;display:none;justify-content:center;align-items:center;color:rgba(255,255,255,.7);will-change:transform,opacity}.uk-lightbox-items>*>*{max-width:100vw;max-height:100vh}.uk-lightbox-items>*>:not(iframe){width:auto;height:auto}.uk-lightbox-items>.uk-active{display:flex}.uk-lightbox-toolbar{padding:10px 10px;background:rgba(0,0,0,.3);color:rgba(255,255,255,.7)}.uk-lightbox-toolbar>*{color:rgba(255,255,255,.7)}.uk-lightbox-toolbar-icon{padding:5px;color:rgba(255,255,255,.7)}.uk-lightbox-toolbar-icon:hover{color:#fff}.uk-lightbox-button{box-sizing:border-box;width:50px;height:50px;background:rgba(0,0,0,.3);color:rgba(255,255,255,.7);display:inline-flex;justify-content:center;align-items:center}.uk-lightbox-button:hover{color:#fff}.uk-lightbox-iframe{width:80%;height:80%}.uk-slideshow{-webkit-tap-highlight-color:transparent}.uk-slideshow-items{position:relative;z-index:0;margin:0;padding:0;list-style:none;overflow:hidden;-webkit-touch-callout:none}.uk-slideshow-items>*{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;will-change:transform,opacity;touch-action:pan-y}.uk-slideshow-items>:not(.uk-active){display:none}.uk-slider{-webkit-tap-highlight-color:transparent}.uk-slider-container{overflow:hidden}.uk-slider-items{will-change:transform;position:relative}.uk-slider-items:not(.uk-grid){display:flex;margin:0;padding:0;list-style:none;-webkit-touch-callout:none}.uk-slider-items.uk-grid{flex-wrap:nowrap}.uk-slider-items>*{flex:none;position:relative;touch-action:pan-y}.uk-sticky-fixed{z-index:980;box-sizing:border-box;margin:0!important;-webkit-backface-visibility:hidden;backface-visibility:hidden}.uk-sticky[class*=uk-animation-]{animation-duration:.2s}.uk-sticky.uk-animation-reverse{animation-duration:.2s}.uk-offcanvas{display:none;position:fixed;top:0;bottom:0;left:0;z-index:1000}.uk-offcanvas-flip .uk-offcanvas{right:0;left:auto}.uk-offcanvas-bar{position:absolute;top:0;bottom:0;left:0;box-sizing:border-box;width:270px;padding:20px 20px;background:#222;overflow-y:auto;-webkit-overflow-scrolling:touch;transform:translateX(-100%)}@media (min-width:960px){.uk-offcanvas-bar{width:350px;padding:40px 40px}}.uk-offcanvas-flip .uk-offcanvas-bar{left:auto;right:0;transform:translateX(100%)}.uk-open>.uk-offcanvas-bar{transform:translateX(0)}.uk-offcanvas-bar-animation{transition:transform .3s ease-out}.uk-offcanvas-reveal{position:absolute;top:0;bottom:0;left:0;width:0;overflow:hidden;transition:width .3s ease-out}.uk-offcanvas-reveal .uk-offcanvas-bar{transform:translateX(0)}.uk-open>.uk-offcanvas-reveal{width:270px}@media (min-width:960px){.uk-open>.uk-offcanvas-reveal{width:350px}}.uk-offcanvas-flip .uk-offcanvas-reveal{right:0;left:auto}.uk-offcanvas-close{position:absolute;z-index:1000;top:20px;right:20px;padding:5px}.uk-offcanvas-overlay{width:100vw;touch-action:none}.uk-offcanvas-overlay::before{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,.1);opacity:0;transition:opacity .15s linear}.uk-offcanvas-overlay.uk-open::before{opacity:1}.uk-offcanvas-container,.uk-offcanvas-page{overflow-x:hidden}.uk-offcanvas-container-overlay{overflow:hidden}.uk-offcanvas-container .uk-offcanvas-content{position:relative;left:0;transition:left .3s ease-out;-webkit-overflow-scrolling:touch}.uk-offcanvas-overlay .uk-offcanvas-content{overflow-y:hidden}:not(.uk-offcanvas-flip)>.uk-offcanvas-content-animation{left:270px}.uk-offcanvas-flip>.uk-offcanvas-content-animation{left:-270px}@media (min-width:960px){:not(.uk-offcanvas-flip)>.uk-offcanvas-content-animation{left:350px}.uk-offcanvas-flip>.uk-offcanvas-content-animation{left:-350px}}.uk-switcher{margin:0;padding:0;list-style:none}.uk-switcher>:not(.uk-active){display:none}.uk-switcher>*>:last-child{margin-bottom:0}.uk-leader{overflow:hidden}.uk-leader-fill::after{display:inline-block;margin-left:15px;width:0;content:attr(data-fill);white-space:nowrap}.uk-leader-fill.uk-leader-hide::after{display:none}.uk-leader-fill-content::before{content:'.'}:root{--uk-leader-fill-content:.}.uk-iconnav{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;margin-left:-10px}.uk-iconnav>*{padding-left:10px}.uk-iconnav>*>a{display:block;color:#999}.uk-iconnav>*>a:focus,.uk-iconnav>*>a:hover{color:#666;outline:0}.uk-iconnav>.uk-active>a{color:#666}.uk-iconnav-vertical{flex-direction:column;margin-left:0;margin-top:-10px}.uk-iconnav-vertical>*{padding-left:0;padding-top:10px}.uk-notification{position:fixed;top:10px;left:10px;z-index:1040;box-sizing:border-box;width:350px}.uk-notification-bottom-right,.uk-notification-top-right{left:auto;right:10px}.uk-notification-bottom-center,.uk-notification-top-center{left:50%;margin-left:-175px}.uk-notification-bottom-center,.uk-notification-bottom-left,.uk-notification-bottom-right{top:auto;bottom:10px}@media (max-width:639px){.uk-notification{left:10px;right:10px;width:auto;margin:0}}.uk-notification-message{position:relative;margin-bottom:10px;padding:15px;background:#f8f8f8;color:#666;font-size:1.25rem;line-height:1.4;cursor:pointer}.uk-notification-close{display:none;position:absolute;top:20px;right:15px}.uk-notification-message:hover .uk-notification-close{display:block}.uk-notification-message-primary{color:#1e87f0}.uk-notification-message-success{color:#32d296}.uk-notification-message-warning{color:#faa05a}.uk-notification-message-danger{color:#f0506e}.uk-tooltip{display:none;position:absolute;z-index:1030;box-sizing:border-box;max-width:200px;padding:3px 6px;background:#666;border-radius:2px;color:#fff;font-size:12px}.uk-tooltip.uk-active{display:block}[class*=uk-tooltip-top]{margin-top:-10px}[class*=uk-tooltip-bottom]{margin-top:10px}[class*=uk-tooltip-left]{margin-left:-10px}[class*=uk-tooltip-right]{margin-left:10px}.uk-placeholder{margin-bottom:20px;padding:30px 30px;background:0 0;border:1px dashed #e5e5e5}*+.uk-placeholder{margin-top:20px}.uk-placeholder>:last-child{margin-bottom:0}.uk-progress{vertical-align:baseline;-webkit-appearance:none;-moz-appearance:none;display:block;width:100%;border:0;background-color:#f8f8f8;margin-bottom:20px;height:15px;border-radius:500px;overflow:hidden}*+.uk-progress{margin-top:20px}.uk-progress:indeterminate{color:transparent}.uk-progress::-webkit-progress-bar{background-color:#f8f8f8;border-radius:500px;overflow:hidden}.uk-progress:indeterminate::-moz-progress-bar{width:0}.uk-progress::-webkit-progress-value{background-color:#1e87f0;transition:width .6s ease}.uk-progress::-moz-progress-bar{background-color:#1e87f0}.uk-progress::-ms-fill{background-color:#1e87f0;transition:width .6s ease;border:0}.uk-sortable{position:relative}.uk-sortable svg{pointer-events:none}.uk-sortable>:last-child{margin-bottom:0}.uk-sortable-drag{position:absolute!important;z-index:1050!important;pointer-events:none}.uk-sortable-placeholder{opacity:0}.uk-sortable-empty{min-height:50px}.uk-sortable-handle:hover{cursor:move}.uk-countdown-number,.uk-countdown-separator{line-height:70px}.uk-countdown-number{font-size:2rem}@media (min-width:640px){.uk-countdown-number{font-size:4rem}}@media (min-width:960px){.uk-countdown-number{font-size:6rem}}.uk-countdown-separator{font-size:1rem}@media (min-width:640px){.uk-countdown-separator{font-size:2rem}}@media (min-width:960px){.uk-countdown-separator{font-size:3rem}}[class*=uk-animation-]{animation-duration:.5s;animation-timing-function:ease-out;animation-fill-mode:both}.uk-animation-reverse{animation-direction:reverse;animation-timing-function:ease-in}.uk-animation-fade{animation-name:uk-fade;animation-duration:.8s;animation-timing-function:linear}.uk-animation-scale-up{animation-name:uk-fade-scale-02}.uk-animation-scale-down{animation-name:uk-fade-scale-18}.uk-animation-slide-top{animation-name:uk-fade-top}.uk-animation-slide-bottom{animation-name:uk-fade-bottom}.uk-animation-slide-left{animation-name:uk-fade-left}.uk-animation-slide-right{animation-name:uk-fade-right}.uk-animation-slide-top-small{animation-name:uk-fade-top-small}.uk-animation-slide-bottom-small{animation-name:uk-fade-bottom-small}.uk-animation-slide-left-small{animation-name:uk-fade-left-small}.uk-animation-slide-right-small{animation-name:uk-fade-right-small}.uk-animation-slide-top-medium{animation-name:uk-fade-top-medium}.uk-animation-slide-bottom-medium{animation-name:uk-fade-bottom-medium}.uk-animation-slide-left-medium{animation-name:uk-fade-left-medium}.uk-animation-slide-right-medium{animation-name:uk-fade-right-medium}.uk-animation-kenburns{animation-name:uk-scale-kenburns;animation-duration:15s}.uk-animation-shake{animation-name:uk-shake}.uk-animation-fast{animation-duration:.1s}.uk-animation-toggle:not(:hover):not(.uk-hover) [class*=uk-animation-]{animation-name:none}@keyframes uk-fade{0%{opacity:0}100%{opacity:1}}@keyframes uk-fade-top{0%{opacity:0;transform:translateY(-100%)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-bottom{0%{opacity:0;transform:translateY(100%)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-left{0%{opacity:0;transform:translateX(-100%)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-right{0%{opacity:0;transform:translateX(100%)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-top-small{0%{opacity:0;transform:translateY(-10px)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-bottom-small{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-left-small{0%{opacity:0;transform:translateX(-10px)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-right-small{0%{opacity:0;transform:translateX(10px)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-top-medium{0%{opacity:0;transform:translateY(-50px)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-bottom-medium{0%{opacity:0;transform:translateY(50px)}100%{opacity:1;transform:translateY(0)}}@keyframes uk-fade-left-medium{0%{opacity:0;transform:translateX(-50px)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-right-medium{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@keyframes uk-fade-scale-02{0%{opacity:0;transform:scale(.2)}100%{opacity:1;transform:scale(1)}}@keyframes uk-fade-scale-18{0%{opacity:0;transform:scale(1.8)}100%{opacity:1;transform:scale(1)}}@keyframes uk-scale-kenburns{0%{transform:scale(1)}100%{transform:scale(1.2)}}@keyframes uk-shake{0%,100%{transform:translateX(0)}10%{transform:translateX(-9px)}20%{transform:translateX(8px)}30%{transform:translateX(-7px)}40%{transform:translateX(6px)}50%{transform:translateX(-5px)}60%{transform:translateX(4px)}70%{transform:translateX(-3px)}80%{transform:translateX(2px)}90%{transform:translateX(-1px)}}[class*=uk-child-width]>*{box-sizing:border-box;width:100%}.uk-child-width-1-2>*{width:50%}.uk-child-width-1-3>*{width:calc(100% * 1 / 3.001)}.uk-child-width-1-4>*{width:25%}.uk-child-width-1-5>*{width:20%}.uk-child-width-1-6>*{width:calc(100% * 1 / 6.001)}.uk-child-width-auto>*{width:auto}.uk-child-width-expand>:not([class*=uk-width]){flex:1;min-width:1px}@media (min-width:640px){.uk-child-width-1-1\@s>*{width:100%}.uk-child-width-1-2\@s>*{width:50%}.uk-child-width-1-3\@s>*{width:calc(100% * 1 / 3.001)}.uk-child-width-1-4\@s>*{width:25%}.uk-child-width-1-5\@s>*{width:20%}.uk-child-width-1-6\@s>*{width:calc(100% * 1 / 6.001)}.uk-child-width-auto\@s>*{width:auto}.uk-child-width-expand\@s>:not([class*=uk-width]){flex:1;min-width:1px}}@media (min-width:960px){.uk-child-width-1-1\@m>*{width:100%}.uk-child-width-1-2\@m>*{width:50%}.uk-child-width-1-3\@m>*{width:calc(100% * 1 / 3.001)}.uk-child-width-1-4\@m>*{width:25%}.uk-child-width-1-5\@m>*{width:20%}.uk-child-width-1-6\@m>*{width:calc(100% * 1 / 6.001)}.uk-child-width-auto\@m>*{width:auto}.uk-child-width-expand\@m>:not([class*=uk-width]){flex:1;min-width:1px}}@media (min-width:1200px){.uk-child-width-1-1\@l>*{width:100%}.uk-child-width-1-2\@l>*{width:50%}.uk-child-width-1-3\@l>*{width:calc(100% * 1 / 3.001)}.uk-child-width-1-4\@l>*{width:25%}.uk-child-width-1-5\@l>*{width:20%}.uk-child-width-1-6\@l>*{width:calc(100% * 1 / 6.001)}.uk-child-width-auto\@l>*{width:auto}.uk-child-width-expand\@l>:not([class*=uk-width]){flex:1;min-width:1px}}@media (min-width:1600px){.uk-child-width-1-1\@xl>*{width:100%}.uk-child-width-1-2\@xl>*{width:50%}.uk-child-width-1-3\@xl>*{width:calc(100% * 1 / 3.001)}.uk-child-width-1-4\@xl>*{width:25%}.uk-child-width-1-5\@xl>*{width:20%}.uk-child-width-1-6\@xl>*{width:calc(100% * 1 / 6.001)}.uk-child-width-auto\@xl>*{width:auto}.uk-child-width-expand\@xl>:not([class*=uk-width]){flex:1;min-width:1px}}[class*=uk-width]{box-sizing:border-box;width:100%;max-width:100%}.uk-width-1-2{width:50%}.uk-width-1-3{width:calc(100% * 1 / 3.001)}.uk-width-2-3{width:calc(100% * 2 / 3.001)}.uk-width-1-4{width:25%}.uk-width-3-4{width:75%}.uk-width-1-5{width:20%}.uk-width-2-5{width:40%}.uk-width-3-5{width:60%}.uk-width-4-5{width:80%}.uk-width-1-6{width:calc(100% * 1 / 6.001)}.uk-width-5-6{width:calc(100% * 5 / 6.001)}.uk-width-small{width:150px}.uk-width-medium{width:300px}.uk-width-large{width:450px}.uk-width-xlarge{width:600px}.uk-width-xxlarge{width:750px}.uk-width-auto{width:auto}.uk-width-expand{flex:1;min-width:1px}@media (min-width:640px){.uk-width-1-1\@s{width:100%}.uk-width-1-2\@s{width:50%}.uk-width-1-3\@s{width:calc(100% * 1 / 3.001)}.uk-width-2-3\@s{width:calc(100% * 2 / 3.001)}.uk-width-1-4\@s{width:25%}.uk-width-3-4\@s{width:75%}.uk-width-1-5\@s{width:20%}.uk-width-2-5\@s{width:40%}.uk-width-3-5\@s{width:60%}.uk-width-4-5\@s{width:80%}.uk-width-1-6\@s{width:calc(100% * 1 / 6.001)}.uk-width-5-6\@s{width:calc(100% * 5 / 6.001)}.uk-width-small\@s{width:150px}.uk-width-medium\@s{width:300px}.uk-width-large\@s{width:450px}.uk-width-xlarge\@s{width:600px}.uk-width-xxlarge\@s{width:750px}.uk-width-auto\@s{width:auto}.uk-width-expand\@s{flex:1;min-width:1px}}@media (min-width:960px){.uk-width-1-1\@m{width:100%}.uk-width-1-2\@m{width:50%}.uk-width-1-3\@m{width:calc(100% * 1 / 3.001)}.uk-width-2-3\@m{width:calc(100% * 2 / 3.001)}.uk-width-1-4\@m{width:25%}.uk-width-3-4\@m{width:75%}.uk-width-1-5\@m{width:20%}.uk-width-2-5\@m{width:40%}.uk-width-3-5\@m{width:60%}.uk-width-4-5\@m{width:80%}.uk-width-1-6\@m{width:calc(100% * 1 / 6.001)}.uk-width-5-6\@m{width:calc(100% * 5 / 6.001)}.uk-width-small\@m{width:150px}.uk-width-medium\@m{width:300px}.uk-width-large\@m{width:450px}.uk-width-xlarge\@m{width:600px}.uk-width-xxlarge\@m{width:750px}.uk-width-auto\@m{width:auto}.uk-width-expand\@m{flex:1;min-width:1px}}@media (min-width:1200px){.uk-width-1-1\@l{width:100%}.uk-width-1-2\@l{width:50%}.uk-width-1-3\@l{width:calc(100% * 1 / 3.001)}.uk-width-2-3\@l{width:calc(100% * 2 / 3.001)}.uk-width-1-4\@l{width:25%}.uk-width-3-4\@l{width:75%}.uk-width-1-5\@l{width:20%}.uk-width-2-5\@l{width:40%}.uk-width-3-5\@l{width:60%}.uk-width-4-5\@l{width:80%}.uk-width-1-6\@l{width:calc(100% * 1 / 6.001)}.uk-width-5-6\@l{width:calc(100% * 5 / 6.001)}.uk-width-small\@l{width:150px}.uk-width-medium\@l{width:300px}.uk-width-large\@l{width:450px}.uk-width-xlarge\@l{width:600px}.uk-width-xxlarge\@l{width:750px}.uk-width-auto\@l{width:auto}.uk-width-expand\@l{flex:1;min-width:1px}}@media (min-width:1600px){.uk-width-1-1\@xl{width:100%}.uk-width-1-2\@xl{width:50%}.uk-width-1-3\@xl{width:calc(100% * 1 / 3.001)}.uk-width-2-3\@xl{width:calc(100% * 2 / 3.001)}.uk-width-1-4\@xl{width:25%}.uk-width-3-4\@xl{width:75%}.uk-width-1-5\@xl{width:20%}.uk-width-2-5\@xl{width:40%}.uk-width-3-5\@xl{width:60%}.uk-width-4-5\@xl{width:80%}.uk-width-1-6\@xl{width:calc(100% * 1 / 6.001)}.uk-width-5-6\@xl{width:calc(100% * 5 / 6.001)}.uk-width-small\@xl{width:150px}.uk-width-medium\@xl{width:300px}.uk-width-large\@xl{width:450px}.uk-width-xlarge\@xl{width:600px}.uk-width-xxlarge\@xl{width:750px}.uk-width-auto\@xl{width:auto}.uk-width-expand\@xl{flex:1;min-width:1px}}[class*=uk-height]{box-sizing:border-box}.uk-height-1-1{height:100%}.uk-height-viewport{min-height:100vh}.uk-height-small{height:150px}.uk-height-medium{height:300px}.uk-height-large{height:450px}.uk-height-max-small{max-height:150px}.uk-height-max-medium{max-height:300px}.uk-height-max-large{max-height:450px}.uk-text-lead{font-size:1.5rem;line-height:1.5;color:#333}.uk-text-meta{font-size:.875rem;line-height:1.4;color:#999}.uk-text-meta a{color:#999}.uk-text-meta a:hover{color:#666;text-decoration:none}.uk-text-small{font-size:.875rem;line-height:1.5}.uk-text-large{font-size:1.5rem;line-height:1.5}.uk-text-bold{font-weight:bolder}.uk-text-uppercase{text-transform:uppercase!important}.uk-text-capitalize{text-transform:capitalize!important}.uk-text-lowercase{text-transform:lowercase!important}.uk-text-muted{color:#999!important}.uk-text-primary{color:#1e87f0!important}.uk-text-success{color:#32d296!important}.uk-text-warning{color:#faa05a!important}.uk-text-danger{color:#f0506e!important}.uk-text-background{-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block;color:#1e87f0!important}@supports (-webkit-background-clip:text){.uk-text-background{background-color:#1e87f0}}.uk-text-left{text-align:left!important}.uk-text-right{text-align:right!important}.uk-text-center{text-align:center!important}.uk-text-justify{text-align:justify!important}@media (min-width:640px){.uk-text-left\@s{text-align:left!important}.uk-text-right\@s{text-align:right!important}.uk-text-center\@s{text-align:center!important}}@media (min-width:960px){.uk-text-left\@m{text-align:left!important}.uk-text-right\@m{text-align:right!important}.uk-text-center\@m{text-align:center!important}}@media (min-width:1200px){.uk-text-left\@l{text-align:left!important}.uk-text-right\@l{text-align:right!important}.uk-text-center\@l{text-align:center!important}}@media (min-width:1600px){.uk-text-left\@xl{text-align:left!important}.uk-text-right\@xl{text-align:right!important}.uk-text-center\@xl{text-align:center!important}}.uk-text-top{vertical-align:top!important}.uk-text-middle{vertical-align:middle!important}.uk-text-bottom{vertical-align:bottom!important}.uk-text-baseline{vertical-align:baseline!important}.uk-text-nowrap{white-space:nowrap}.uk-text-truncate{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td.uk-text-truncate,th.uk-text-truncate{max-width:0}.uk-text-break{overflow-wrap:break-word;word-wrap:break-word}td.uk-text-break,th.uk-text-break{word-break:break-all}[class*=uk-column-]{column-gap:30px}@media (min-width:1200px){[class*=uk-column-]{column-gap:40px}}[class*=uk-column-] img{transform:translate3d(0,0,0)}.uk-column-divider{column-rule:1px solid #e5e5e5;column-gap:60px}@media (min-width:1200px){.uk-column-divider{column-gap:80px}}.uk-column-1-2{column-count:2}.uk-column-1-3{column-count:3}.uk-column-1-4{column-count:4}.uk-column-1-5{column-count:5}.uk-column-1-6{column-count:6}@media (min-width:640px){.uk-column-1-2\@s{column-count:2}.uk-column-1-3\@s{column-count:3}.uk-column-1-4\@s{column-count:4}.uk-column-1-5\@s{column-count:5}.uk-column-1-6\@s{column-count:6}}@media (min-width:960px){.uk-column-1-2\@m{column-count:2}.uk-column-1-3\@m{column-count:3}.uk-column-1-4\@m{column-count:4}.uk-column-1-5\@m{column-count:5}.uk-column-1-6\@m{column-count:6}}@media (min-width:1200px){.uk-column-1-2\@l{column-count:2}.uk-column-1-3\@l{column-count:3}.uk-column-1-4\@l{column-count:4}.uk-column-1-5\@l{column-count:5}.uk-column-1-6\@l{column-count:6}}@media (min-width:1600px){.uk-column-1-2\@xl{column-count:2}.uk-column-1-3\@xl{column-count:3}.uk-column-1-4\@xl{column-count:4}.uk-column-1-5\@xl{column-count:5}.uk-column-1-6\@xl{column-count:6}}.uk-column-span{column-span:all}.uk-cover{max-width:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}iframe.uk-cover{pointer-events:none}.uk-cover-container{overflow:hidden;position:relative}.uk-background-default{background-color:#fff}.uk-background-muted{background-color:#f8f8f8}.uk-background-primary{background-color:#1e87f0}.uk-background-secondary{background-color:#222}.uk-background-contain,.uk-background-cover{background-position:50% 50%;background-repeat:no-repeat}.uk-background-cover{background-size:cover}.uk-background-contain{background-size:contain}.uk-background-top-left{background-position:0 0}.uk-background-top-center{background-position:50% 0}.uk-background-top-right{background-position:100% 0}.uk-background-center-left{background-position:0 50%}.uk-background-center-center{background-position:50% 50%}.uk-background-center-right{background-position:100% 50%}.uk-background-bottom-left{background-position:0 100%}.uk-background-bottom-center{background-position:50% 100%}.uk-background-bottom-right{background-position:100% 100%}.uk-background-norepeat{background-repeat:no-repeat}.uk-background-fixed{background-attachment:fixed;backface-visibility:hidden}@media (pointer:coarse){.uk-background-fixed{background-attachment:scroll}}@media (max-width:639px){.uk-background-image\@s{background-image:none!important}}@media (max-width:959px){.uk-background-image\@m{background-image:none!important}}@media (max-width:1199px){.uk-background-image\@l{background-image:none!important}}@media (max-width:1599px){.uk-background-image\@xl{background-image:none!important}}.uk-background-blend-multiply{background-blend-mode:multiply}.uk-background-blend-screen{background-blend-mode:screen}.uk-background-blend-overlay{background-blend-mode:overlay}.uk-background-blend-darken{background-blend-mode:darken}.uk-background-blend-lighten{background-blend-mode:lighten}.uk-background-blend-color-dodge{background-blend-mode:color-dodge}.uk-background-blend-color-burn{background-blend-mode:color-burn}.uk-background-blend-hard-light{background-blend-mode:hard-light}.uk-background-blend-soft-light{background-blend-mode:soft-light}.uk-background-blend-difference{background-blend-mode:difference}.uk-background-blend-exclusion{background-blend-mode:exclusion}.uk-background-blend-hue{background-blend-mode:hue}.uk-background-blend-saturation{background-blend-mode:saturation}.uk-background-blend-color{background-blend-mode:color}.uk-background-blend-luminosity{background-blend-mode:luminosity}[class*=uk-align]{display:block;margin-bottom:30px}*+[class*=uk-align]{margin-top:30px}.uk-align-center{margin-left:auto;margin-right:auto}.uk-align-left{margin-top:0;margin-right:30px;float:left}.uk-align-right{margin-top:0;margin-left:30px;float:right}@media (min-width:640px){.uk-align-left\@s{margin-top:0;margin-right:30px;float:left}.uk-align-right\@s{margin-top:0;margin-left:30px;float:right}}@media (min-width:960px){.uk-align-left\@m{margin-top:0;margin-right:30px;float:left}.uk-align-right\@m{margin-top:0;margin-left:30px;float:right}}@media (min-width:1200px){.uk-align-left\@l{margin-top:0;float:left}.uk-align-right\@l{margin-top:0;float:right}.uk-align-left,.uk-align-left\@l,.uk-align-left\@m,.uk-align-left\@s{margin-right:40px}.uk-align-right,.uk-align-right\@l,.uk-align-right\@m,.uk-align-right\@s{margin-left:40px}}@media (min-width:1600px){.uk-align-left\@xl{margin-top:0;margin-right:40px;float:left}.uk-align-right\@xl{margin-top:0;margin-left:40px;float:right}}.uk-svg,.uk-svg:not(.uk-preserve) [fill*='#']:not(.uk-preserve){fill:currentcolor}.uk-svg:not(.uk-preserve) [stroke*='#']:not(.uk-preserve){stroke:currentcolor}.uk-svg{transform:translate(0,0)}.uk-panel{position:relative;box-sizing:border-box}.uk-panel::after,.uk-panel::before{content:"";display:table}.uk-panel::after{clear:both}.uk-panel>:last-child{margin-bottom:0}.uk-panel-scrollable{height:170px;padding:10px;border:1px solid #e5e5e5;overflow:auto;-webkit-overflow-scrolling:touch;resize:both}.uk-clearfix::before{content:"";display:table-cell}.uk-clearfix::after{content:"";display:table;clear:both}.uk-float-left{float:left}.uk-float-right{float:right}[class*=uk-float-]{max-width:100%}.uk-overflow-hidden{overflow:hidden}.uk-overflow-auto{overflow:auto;-webkit-overflow-scrolling:touch}.uk-overflow-auto>:last-child{margin-bottom:0}.uk-resize{resize:both}.uk-resize-vertical{resize:vertical}.uk-display-block{display:block!important}.uk-display-inline{display:inline!important}.uk-display-inline-block{display:inline-block!important}[class*=uk-inline]{display:inline-block;position:relative;max-width:100%;vertical-align:middle;-webkit-backface-visibility:hidden}.uk-inline-clip{overflow:hidden}.uk-preserve-width,.uk-preserve-width audio,.uk-preserve-width canvas,.uk-preserve-width img,.uk-preserve-width svg,.uk-preserve-width video{max-width:none}.uk-responsive-height,.uk-responsive-width{box-sizing:border-box}.uk-responsive-width{max-width:100%!important;height:auto}.uk-responsive-height{max-height:100%;width:auto;max-width:none}.uk-border-circle{border-radius:50%}.uk-border-pill{border-radius:500px}.uk-border-rounded{border-radius:5px}.uk-inline-clip[class*=uk-border-]{-webkit-transform:translateZ(0)}.uk-box-shadow-small{box-shadow:0 2px 8px rgba(0,0,0,.08)}.uk-box-shadow-medium{box-shadow:0 5px 15px rgba(0,0,0,.08)}.uk-box-shadow-large{box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-box-shadow-xlarge{box-shadow:0 28px 50px rgba(0,0,0,.16)}[class*=uk-box-shadow-hover]{transition:box-shadow .1s ease-in-out}.uk-box-shadow-hover-small:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}.uk-box-shadow-hover-medium:hover{box-shadow:0 5px 15px rgba(0,0,0,.08)}.uk-box-shadow-hover-large:hover{box-shadow:0 14px 25px rgba(0,0,0,.16)}.uk-box-shadow-hover-xlarge:hover{box-shadow:0 28px 50px rgba(0,0,0,.16)}@supports (filter:blur(0)){.uk-box-shadow-bottom{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-box-shadow-bottom::before{content:'';position:absolute;bottom:-30px;left:0;right:0;height:30px;border-radius:100%;background:#444;filter:blur(20px)}.uk-box-shadow-bottom>*{position:relative}}.uk-dropcap::first-letter,.uk-dropcap>p:first-of-type::first-letter{display:block;margin-right:10px;float:left;font-size:4.5em;line-height:1;margin-bottom:-2px}@-moz-document url-prefix(){.uk-dropcap::first-letter,.uk-dropcap>p:first-of-type::first-letter{margin-top:1.1%}}@supports (-ms-ime-align:auto){.uk-dropcap>p:first-of-type::first-letter{font-size:1em}}.uk-logo{font-size:1.5rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#666;text-decoration:none}.uk-logo:focus,.uk-logo:hover{color:#666;outline:0;text-decoration:none}.uk-logo-inverse{display:none}.uk-disabled{pointer-events:none}.uk-drag,.uk-drag *{cursor:move}.uk-drag iframe{pointer-events:none}.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)}.uk-blend-multiply{mix-blend-mode:multiply}.uk-blend-screen{mix-blend-mode:screen}.uk-blend-overlay{mix-blend-mode:overlay}.uk-blend-darken{mix-blend-mode:darken}.uk-blend-lighten{mix-blend-mode:lighten}.uk-blend-color-dodge{mix-blend-mode:color-dodge}.uk-blend-color-burn{mix-blend-mode:color-burn}.uk-blend-hard-light{mix-blend-mode:hard-light}.uk-blend-soft-light{mix-blend-mode:soft-light}.uk-blend-difference{mix-blend-mode:difference}.uk-blend-exclusion{mix-blend-mode:exclusion}.uk-blend-hue{mix-blend-mode:hue}.uk-blend-saturation{mix-blend-mode:saturation}.uk-blend-color{mix-blend-mode:color}.uk-blend-luminosity{mix-blend-mode:luminosity}.uk-transform-center{transform:translate(-50%,-50%)}.uk-transform-origin-top-left{transform-origin:0 0}.uk-transform-origin-top-center{transform-origin:50% 0}.uk-transform-origin-top-right{transform-origin:100% 0}.uk-transform-origin-center-left{transform-origin:0 50%}.uk-transform-origin-center-right{transform-origin:100% 50%}.uk-transform-origin-bottom-left{transform-origin:0 100%}.uk-transform-origin-bottom-center{transform-origin:50% 100%}.uk-transform-origin-bottom-right{transform-origin:100% 100%}.uk-flex{display:flex}.uk-flex-inline{display:inline-flex}.uk-flex-inline::after,.uk-flex-inline::before,.uk-flex::after,.uk-flex::before{display:none}.uk-flex-left{justify-content:flex-start}.uk-flex-center{justify-content:center}.uk-flex-right{justify-content:flex-end}.uk-flex-between{justify-content:space-between}.uk-flex-around{justify-content:space-around}@media (min-width:640px){.uk-flex-left\@s{justify-content:flex-start}.uk-flex-center\@s{justify-content:center}.uk-flex-right\@s{justify-content:flex-end}.uk-flex-between\@s{justify-content:space-between}.uk-flex-around\@s{justify-content:space-around}}@media (min-width:960px){.uk-flex-left\@m{justify-content:flex-start}.uk-flex-center\@m{justify-content:center}.uk-flex-right\@m{justify-content:flex-end}.uk-flex-between\@m{justify-content:space-between}.uk-flex-around\@m{justify-content:space-around}}@media (min-width:1200px){.uk-flex-left\@l{justify-content:flex-start}.uk-flex-center\@l{justify-content:center}.uk-flex-right\@l{justify-content:flex-end}.uk-flex-between\@l{justify-content:space-between}.uk-flex-around\@l{justify-content:space-around}}@media (min-width:1600px){.uk-flex-left\@xl{justify-content:flex-start}.uk-flex-center\@xl{justify-content:center}.uk-flex-right\@xl{justify-content:flex-end}.uk-flex-between\@xl{justify-content:space-between}.uk-flex-around\@xl{justify-content:space-around}}.uk-flex-stretch{align-items:stretch}.uk-flex-top{align-items:flex-start}.uk-flex-middle{align-items:center}.uk-flex-bottom{align-items:flex-end}.uk-flex-row{flex-direction:row}.uk-flex-row-reverse{flex-direction:row-reverse}.uk-flex-column{flex-direction:column}.uk-flex-column-reverse{flex-direction:column-reverse}.uk-flex-nowrap{flex-wrap:nowrap}.uk-flex-wrap{flex-wrap:wrap}.uk-flex-wrap-reverse{flex-wrap:wrap-reverse}.uk-flex-wrap-stretch{align-content:stretch}.uk-flex-wrap-top{align-content:flex-start}.uk-flex-wrap-middle{align-content:center}.uk-flex-wrap-bottom{align-content:flex-end}.uk-flex-wrap-between{align-content:space-between}.uk-flex-wrap-around{align-content:space-around}.uk-flex-first{order:-1}.uk-flex-last{order:99}@media (min-width:640px){.uk-flex-first\@s{order:-1}.uk-flex-last\@s{order:99}}@media (min-width:960px){.uk-flex-first\@m{order:-1}.uk-flex-last\@m{order:99}}@media (min-width:1200px){.uk-flex-first\@l{order:-1}.uk-flex-last\@l{order:99}}@media (min-width:1600px){.uk-flex-first\@xl{order:-1}.uk-flex-last\@xl{order:99}}.uk-flex-none{flex:none}.uk-flex-auto{flex:auto}.uk-flex-1{flex:1}.uk-margin{margin-bottom:20px}*+.uk-margin{margin-top:20px!important}.uk-margin-top{margin-top:20px!important}.uk-margin-bottom{margin-bottom:20px!important}.uk-margin-left{margin-left:20px!important}.uk-margin-right{margin-right:20px!important}.uk-margin-small{margin-bottom:10px}*+.uk-margin-small{margin-top:10px!important}.uk-margin-small-top{margin-top:10px!important}.uk-margin-small-bottom{margin-bottom:10px!important}.uk-margin-small-left{margin-left:10px!important}.uk-margin-small-right{margin-right:10px!important}.uk-margin-medium{margin-bottom:40px}*+.uk-margin-medium{margin-top:40px!important}.uk-margin-medium-top{margin-top:40px!important}.uk-margin-medium-bottom{margin-bottom:40px!important}.uk-margin-medium-left{margin-left:40px!important}.uk-margin-medium-right{margin-right:40px!important}.uk-margin-large{margin-bottom:40px}*+.uk-margin-large{margin-top:40px!important}.uk-margin-large-top{margin-top:40px!important}.uk-margin-large-bottom{margin-bottom:40px!important}.uk-margin-large-left{margin-left:40px!important}.uk-margin-large-right{margin-right:40px!important}@media (min-width:1200px){.uk-margin-large{margin-bottom:70px}*+.uk-margin-large{margin-top:70px!important}.uk-margin-large-top{margin-top:70px!important}.uk-margin-large-bottom{margin-bottom:70px!important}.uk-margin-large-left{margin-left:70px!important}.uk-margin-large-right{margin-right:70px!important}}.uk-margin-xlarge{margin-bottom:70px}*+.uk-margin-xlarge{margin-top:70px!important}.uk-margin-xlarge-top{margin-top:70px!important}.uk-margin-xlarge-bottom{margin-bottom:70px!important}.uk-margin-xlarge-left{margin-left:70px!important}.uk-margin-xlarge-right{margin-right:70px!important}@media (min-width:1200px){.uk-margin-xlarge{margin-bottom:140px}*+.uk-margin-xlarge{margin-top:140px!important}.uk-margin-xlarge-top{margin-top:140px!important}.uk-margin-xlarge-bottom{margin-bottom:140px!important}.uk-margin-xlarge-left{margin-left:140px!important}.uk-margin-xlarge-right{margin-right:140px!important}}.uk-margin-remove{margin:0!important}.uk-margin-remove-top{margin-top:0!important}.uk-margin-remove-bottom{margin-bottom:0!important}.uk-margin-remove-left{margin-left:0!important}.uk-margin-remove-right{margin-right:0!important}.uk-margin-remove-vertical{margin-top:0!important;margin-bottom:0!important}.uk-margin-remove-adjacent+*{margin-top:0!important}.uk-margin-auto{margin-left:auto!important;margin-right:auto!important}.uk-margin-auto-top{margin-top:auto!important}.uk-margin-auto-bottom{margin-bottom:auto!important}.uk-margin-auto-left{margin-left:auto!important}.uk-margin-auto-right{margin-right:auto!important}.uk-margin-auto-vertical{margin-top:auto!important;margin-bottom:auto!important}.uk-padding{padding:30px}@media (min-width:1200px){.uk-padding{padding:40px}}.uk-padding-small{padding:15px}.uk-padding-large{padding:30px}@media (min-width:1200px){.uk-padding-large{padding:70px}}.uk-padding-remove{padding:0!important}.uk-padding-remove-top{padding-top:0!important}.uk-padding-remove-bottom{padding-bottom:0!important}.uk-padding-remove-left{padding-left:0!important}.uk-padding-remove-right{padding-right:0!important}.uk-padding-remove-vertical{padding-top:0!important;padding-bottom:0!important}.uk-padding-remove-horizontal{padding-left:0!important;padding-right:0!important}[class*=uk-position-bottom],[class*=uk-position-center],[class*=uk-position-left],[class*=uk-position-right],[class*=uk-position-top]{position:absolute!important}.uk-position-top{top:0;left:0;right:0}.uk-position-bottom{bottom:0;left:0;right:0}.uk-position-left{top:0;bottom:0;left:0}.uk-position-right{top:0;bottom:0;right:0}.uk-position-top-left{top:0;left:0}.uk-position-top-right{top:0;right:0}.uk-position-bottom-left{bottom:0;left:0}.uk-position-bottom-right{bottom:0;right:0}.uk-position-center{top:50%;left:50%;transform:translate(-50%,-50%);display:table;width:-moz-max-content;max-width:100%;box-sizing:border-box}[class*=uk-position-center-left],[class*=uk-position-center-right]{top:50%;transform:translateY(-50%)}.uk-position-center-left{left:0}.uk-position-center-right{right:0}.uk-position-center-left-out{right:100%;width:max-content}.uk-position-center-right-out{left:100%;width:max-content}.uk-position-bottom-center,.uk-position-top-center{left:50%;transform:translateX(-50%);display:table;width:-moz-max-content;max-width:100%;box-sizing:border-box}.uk-position-top-center{top:0}.uk-position-bottom-center{bottom:0}.uk-position-cover{position:absolute;top:0;bottom:0;left:0;right:0}.uk-position-relative{position:relative!important}.uk-position-absolute{position:absolute!important}.uk-position-fixed{position:fixed!important}.uk-position-z-index{z-index:1}.uk-position-small{margin:15px}.uk-position-small.uk-position-center{transform:translate(-50%,-50%) translate(-15px,-15px)}.uk-position-small[class*=uk-position-center-left],.uk-position-small[class*=uk-position-center-right]{transform:translateY(-50%) translateY(-15px)}.uk-position-small.uk-position-bottom-center,.uk-position-small.uk-position-top-center{transform:translateX(-50%) translateX(-15px)}.uk-position-medium{margin:30px}.uk-position-medium.uk-position-center{transform:translate(-50%,-50%) translate(-30px,-30px)}.uk-position-medium[class*=uk-position-center-left],.uk-position-medium[class*=uk-position-center-right]{transform:translateY(-50%) translateY(-30px)}.uk-position-medium.uk-position-bottom-center,.uk-position-medium.uk-position-top-center{transform:translateX(-50%) translateX(-30px)}.uk-position-large{margin:30px}.uk-position-large.uk-position-center{transform:translate(-50%,-50%) translate(-30px,-30px)}.uk-position-large[class*=uk-position-center-left],.uk-position-large[class*=uk-position-center-right]{transform:translateY(-50%) translateY(-30px)}.uk-position-large.uk-position-bottom-center,.uk-position-large.uk-position-top-center{transform:translateX(-50%) translateX(-30px)}@media (min-width:1200px){.uk-position-large{margin:50px}.uk-position-large.uk-position-center{transform:translate(-50%,-50%) translate(-50px,-50px)}.uk-position-large[class*=uk-position-center-left],.uk-position-large[class*=uk-position-center-right]{transform:translateY(-50%) translateY(-50px)}.uk-position-large.uk-position-bottom-center,.uk-position-large.uk-position-top-center{transform:translateX(-50%) translateX(-50px)}}.uk-transition-fade,[class*=uk-transition-scale],[class*=uk-transition-slide]{transition:.3s ease-out;transition-property:opacity,transform,filter}.uk-transition-toggle:focus{outline:0}.uk-transition-fade{opacity:0}.uk-transition-active.uk-active [class*=uk-transition-fade],.uk-transition-toggle.uk-hover [class*=uk-transition-fade],.uk-transition-toggle:focus [class*=uk-transition-fade],.uk-transition-toggle:hover [class*=uk-transition-fade]{opacity:1}[class*=uk-transition-scale]{opacity:0}.uk-transition-scale-up{transform:scale3d(1,1,1)}.uk-transition-scale-down{transform:scale3d(1.1,1.1,1)}.uk-transition-active.uk-active .uk-transition-scale-up,.uk-transition-toggle.uk-hover .uk-transition-scale-up,.uk-transition-toggle:focus .uk-transition-scale-up,.uk-transition-toggle:hover .uk-transition-scale-up{opacity:1;transform:scale3d(1.1,1.1,1)}.uk-transition-active.uk-active .uk-transition-scale-down,.uk-transition-toggle.uk-hover .uk-transition-scale-down,.uk-transition-toggle:focus .uk-transition-scale-down,.uk-transition-toggle:hover .uk-transition-scale-down{opacity:1;transform:scale3d(1,1,1)}[class*=uk-transition-slide]{opacity:0}.uk-transition-slide-top{transform:translateY(-100%)}.uk-transition-slide-bottom{transform:translateY(100%)}.uk-transition-slide-left{transform:translateX(-100%)}.uk-transition-slide-right{transform:translateX(100%)}.uk-transition-slide-top-small{transform:translateY(-10px)}.uk-transition-slide-bottom-small{transform:translateY(10px)}.uk-transition-slide-left-small{transform:translateX(-10px)}.uk-transition-slide-right-small{transform:translateX(10px)}.uk-transition-slide-top-medium{transform:translateY(-50px)}.uk-transition-slide-bottom-medium{transform:translateY(50px)}.uk-transition-slide-left-medium{transform:translateX(-50px)}.uk-transition-slide-right-medium{transform:translateX(50px)}.uk-transition-active.uk-active [class*=uk-transition-slide],.uk-transition-toggle.uk-hover [class*=uk-transition-slide],.uk-transition-toggle:focus [class*=uk-transition-slide],.uk-transition-toggle:hover [class*=uk-transition-slide]{opacity:1;transform:translateX(0) translateY(0)}.uk-transition-opaque{opacity:1}.uk-transition-slow{transition-duration:.7s}.uk-hidden,[hidden]{display:none!important}@media (min-width:640px){.uk-hidden\@s{display:none!important}}@media (min-width:960px){.uk-hidden\@m{display:none!important}}@media (min-width:1200px){.uk-hidden\@l{display:none!important}}@media (min-width:1600px){.uk-hidden\@xl{display:none!important}}@media (max-width:639px){.uk-visible\@s{display:none!important}}@media (max-width:959px){.uk-visible\@m{display:none!important}}@media (max-width:1199px){.uk-visible\@l{display:none!important}}@media (max-width:1599px){.uk-visible\@xl{display:none!important}}.uk-invisible{visibility:hidden!important}.uk-visible-toggle:not(:hover):not(.uk-hover) .uk-hidden-hover:not(:focus){position:absolute!important;width:0!important;height:0!important;padding:0!important;margin:0!important;overflow:hidden!important}.uk-visible-toggle:not(:hover):not(.uk-hover) .uk-invisible-hover:not(:focus){opacity:0!important}@media (pointer:coarse){.uk-hidden-touch{display:none!important}}.uk-hidden-notouch{display:none!important}@media (pointer:coarse){.uk-hidden-notouch{display:block!important}}.uk-card-primary.uk-card-body,.uk-card-primary>:not([class*=uk-card-media]),.uk-card-secondary.uk-card-body,.uk-card-secondary>:not([class*=uk-card-media]),.uk-light,.uk-offcanvas-bar,.uk-overlay-primary,.uk-section-primary:not(.uk-preserve-color),.uk-section-secondary:not(.uk-preserve-color),.uk-tile-primary:not(.uk-preserve-color),.uk-tile-secondary:not(.uk-preserve-color){color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-link,.uk-card-primary.uk-card-body a,.uk-card-primary>:not([class*=uk-card-media]) .uk-link,.uk-card-primary>:not([class*=uk-card-media]) a,.uk-card-secondary.uk-card-body .uk-link,.uk-card-secondary.uk-card-body a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link,.uk-card-secondary>:not([class*=uk-card-media]) a,.uk-light .uk-link,.uk-light a,.uk-offcanvas-bar .uk-link,.uk-offcanvas-bar a,.uk-overlay-primary .uk-link,.uk-overlay-primary a,.uk-section-primary:not(.uk-preserve-color) .uk-link,.uk-section-primary:not(.uk-preserve-color) a,.uk-section-secondary:not(.uk-preserve-color) .uk-link,.uk-section-secondary:not(.uk-preserve-color) a,.uk-tile-primary:not(.uk-preserve-color) .uk-link,.uk-tile-primary:not(.uk-preserve-color) a,.uk-tile-secondary:not(.uk-preserve-color) .uk-link,.uk-tile-secondary:not(.uk-preserve-color) a{color:#fff}.uk-card-primary.uk-card-body .uk-link:hover,.uk-card-primary.uk-card-body a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-link:hover,.uk-card-primary>:not([class*=uk-card-media]) a:hover,.uk-card-secondary.uk-card-body .uk-link:hover,.uk-card-secondary.uk-card-body a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link:hover,.uk-card-secondary>:not([class*=uk-card-media]) a:hover,.uk-light .uk-link:hover,.uk-light a:hover,.uk-offcanvas-bar .uk-link:hover,.uk-offcanvas-bar a:hover,.uk-overlay-primary .uk-link:hover,.uk-overlay-primary a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-link:hover,.uk-section-primary:not(.uk-preserve-color) a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-link:hover,.uk-section-secondary:not(.uk-preserve-color) a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-link:hover,.uk-tile-primary:not(.uk-preserve-color) a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-link:hover,.uk-tile-secondary:not(.uk-preserve-color) a:hover{color:#fff}.uk-card-primary.uk-card-body :not(pre)>code,.uk-card-primary.uk-card-body :not(pre)>kbd,.uk-card-primary.uk-card-body :not(pre)>samp,.uk-card-primary>:not([class*=uk-card-media]) :not(pre)>code,.uk-card-primary>:not([class*=uk-card-media]) :not(pre)>kbd,.uk-card-primary>:not([class*=uk-card-media]) :not(pre)>samp,.uk-card-secondary.uk-card-body :not(pre)>code,.uk-card-secondary.uk-card-body :not(pre)>kbd,.uk-card-secondary.uk-card-body :not(pre)>samp,.uk-card-secondary>:not([class*=uk-card-media]) :not(pre)>code,.uk-card-secondary>:not([class*=uk-card-media]) :not(pre)>kbd,.uk-card-secondary>:not([class*=uk-card-media]) :not(pre)>samp,.uk-light :not(pre)>code,.uk-light :not(pre)>kbd,.uk-light :not(pre)>samp,.uk-offcanvas-bar :not(pre)>code,.uk-offcanvas-bar :not(pre)>kbd,.uk-offcanvas-bar :not(pre)>samp,.uk-overlay-primary :not(pre)>code,.uk-overlay-primary :not(pre)>kbd,.uk-overlay-primary :not(pre)>samp,.uk-section-primary:not(.uk-preserve-color) :not(pre)>code,.uk-section-primary:not(.uk-preserve-color) :not(pre)>kbd,.uk-section-primary:not(.uk-preserve-color) :not(pre)>samp,.uk-section-secondary:not(.uk-preserve-color) :not(pre)>code,.uk-section-secondary:not(.uk-preserve-color) :not(pre)>kbd,.uk-section-secondary:not(.uk-preserve-color) :not(pre)>samp,.uk-tile-primary:not(.uk-preserve-color) :not(pre)>code,.uk-tile-primary:not(.uk-preserve-color) :not(pre)>kbd,.uk-tile-primary:not(.uk-preserve-color) :not(pre)>samp,.uk-tile-secondary:not(.uk-preserve-color) :not(pre)>code,.uk-tile-secondary:not(.uk-preserve-color) :not(pre)>kbd,.uk-tile-secondary:not(.uk-preserve-color) :not(pre)>samp{color:rgba(255,255,255,.7);background:rgba(255,255,255,.1)}.uk-card-primary.uk-card-body em,.uk-card-primary>:not([class*=uk-card-media]) em,.uk-card-secondary.uk-card-body em,.uk-card-secondary>:not([class*=uk-card-media]) em,.uk-light em,.uk-offcanvas-bar em,.uk-overlay-primary em,.uk-section-primary:not(.uk-preserve-color) em,.uk-section-secondary:not(.uk-preserve-color) em,.uk-tile-primary:not(.uk-preserve-color) em,.uk-tile-secondary:not(.uk-preserve-color) em{color:#fff}.uk-card-primary.uk-card-body .uk-h1,.uk-card-primary.uk-card-body .uk-h2,.uk-card-primary.uk-card-body .uk-h3,.uk-card-primary.uk-card-body .uk-h4,.uk-card-primary.uk-card-body .uk-h5,.uk-card-primary.uk-card-body .uk-h6,.uk-card-primary.uk-card-body h1,.uk-card-primary.uk-card-body h2,.uk-card-primary.uk-card-body h3,.uk-card-primary.uk-card-body h4,.uk-card-primary.uk-card-body h5,.uk-card-primary.uk-card-body h6,.uk-card-primary>:not([class*=uk-card-media]) .uk-h1,.uk-card-primary>:not([class*=uk-card-media]) .uk-h2,.uk-card-primary>:not([class*=uk-card-media]) .uk-h3,.uk-card-primary>:not([class*=uk-card-media]) .uk-h4,.uk-card-primary>:not([class*=uk-card-media]) .uk-h5,.uk-card-primary>:not([class*=uk-card-media]) .uk-h6,.uk-card-primary>:not([class*=uk-card-media]) h1,.uk-card-primary>:not([class*=uk-card-media]) h2,.uk-card-primary>:not([class*=uk-card-media]) h3,.uk-card-primary>:not([class*=uk-card-media]) h4,.uk-card-primary>:not([class*=uk-card-media]) h5,.uk-card-primary>:not([class*=uk-card-media]) h6,.uk-card-secondary.uk-card-body .uk-h1,.uk-card-secondary.uk-card-body .uk-h2,.uk-card-secondary.uk-card-body .uk-h3,.uk-card-secondary.uk-card-body .uk-h4,.uk-card-secondary.uk-card-body .uk-h5,.uk-card-secondary.uk-card-body .uk-h6,.uk-card-secondary.uk-card-body h1,.uk-card-secondary.uk-card-body h2,.uk-card-secondary.uk-card-body h3,.uk-card-secondary.uk-card-body h4,.uk-card-secondary.uk-card-body h5,.uk-card-secondary.uk-card-body h6,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h1,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h2,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h3,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h4,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h5,.uk-card-secondary>:not([class*=uk-card-media]) .uk-h6,.uk-card-secondary>:not([class*=uk-card-media]) h1,.uk-card-secondary>:not([class*=uk-card-media]) h2,.uk-card-secondary>:not([class*=uk-card-media]) h3,.uk-card-secondary>:not([class*=uk-card-media]) h4,.uk-card-secondary>:not([class*=uk-card-media]) h5,.uk-card-secondary>:not([class*=uk-card-media]) h6,.uk-light .uk-h1,.uk-light .uk-h2,.uk-light .uk-h3,.uk-light .uk-h4,.uk-light .uk-h5,.uk-light .uk-h6,.uk-light h1,.uk-light h2,.uk-light h3,.uk-light h4,.uk-light h5,.uk-light h6,.uk-offcanvas-bar .uk-h1,.uk-offcanvas-bar .uk-h2,.uk-offcanvas-bar .uk-h3,.uk-offcanvas-bar .uk-h4,.uk-offcanvas-bar .uk-h5,.uk-offcanvas-bar .uk-h6,.uk-offcanvas-bar h1,.uk-offcanvas-bar h2,.uk-offcanvas-bar h3,.uk-offcanvas-bar h4,.uk-offcanvas-bar h5,.uk-offcanvas-bar h6,.uk-overlay-primary .uk-h1,.uk-overlay-primary .uk-h2,.uk-overlay-primary .uk-h3,.uk-overlay-primary .uk-h4,.uk-overlay-primary .uk-h5,.uk-overlay-primary .uk-h6,.uk-overlay-primary h1,.uk-overlay-primary h2,.uk-overlay-primary h3,.uk-overlay-primary h4,.uk-overlay-primary h5,.uk-overlay-primary h6,.uk-section-primary:not(.uk-preserve-color) .uk-h1,.uk-section-primary:not(.uk-preserve-color) .uk-h2,.uk-section-primary:not(.uk-preserve-color) .uk-h3,.uk-section-primary:not(.uk-preserve-color) .uk-h4,.uk-section-primary:not(.uk-preserve-color) .uk-h5,.uk-section-primary:not(.uk-preserve-color) .uk-h6,.uk-section-primary:not(.uk-preserve-color) h1,.uk-section-primary:not(.uk-preserve-color) h2,.uk-section-primary:not(.uk-preserve-color) h3,.uk-section-primary:not(.uk-preserve-color) h4,.uk-section-primary:not(.uk-preserve-color) h5,.uk-section-primary:not(.uk-preserve-color) h6,.uk-section-secondary:not(.uk-preserve-color) .uk-h1,.uk-section-secondary:not(.uk-preserve-color) .uk-h2,.uk-section-secondary:not(.uk-preserve-color) .uk-h3,.uk-section-secondary:not(.uk-preserve-color) .uk-h4,.uk-section-secondary:not(.uk-preserve-color) .uk-h5,.uk-section-secondary:not(.uk-preserve-color) .uk-h6,.uk-section-secondary:not(.uk-preserve-color) h1,.uk-section-secondary:not(.uk-preserve-color) h2,.uk-section-secondary:not(.uk-preserve-color) h3,.uk-section-secondary:not(.uk-preserve-color) h4,.uk-section-secondary:not(.uk-preserve-color) h5,.uk-section-secondary:not(.uk-preserve-color) h6,.uk-tile-primary:not(.uk-preserve-color) .uk-h1,.uk-tile-primary:not(.uk-preserve-color) .uk-h2,.uk-tile-primary:not(.uk-preserve-color) .uk-h3,.uk-tile-primary:not(.uk-preserve-color) .uk-h4,.uk-tile-primary:not(.uk-preserve-color) .uk-h5,.uk-tile-primary:not(.uk-preserve-color) .uk-h6,.uk-tile-primary:not(.uk-preserve-color) h1,.uk-tile-primary:not(.uk-preserve-color) h2,.uk-tile-primary:not(.uk-preserve-color) h3,.uk-tile-primary:not(.uk-preserve-color) h4,.uk-tile-primary:not(.uk-preserve-color) h5,.uk-tile-primary:not(.uk-preserve-color) h6,.uk-tile-secondary:not(.uk-preserve-color) .uk-h1,.uk-tile-secondary:not(.uk-preserve-color) .uk-h2,.uk-tile-secondary:not(.uk-preserve-color) .uk-h3,.uk-tile-secondary:not(.uk-preserve-color) .uk-h4,.uk-tile-secondary:not(.uk-preserve-color) .uk-h5,.uk-tile-secondary:not(.uk-preserve-color) .uk-h6,.uk-tile-secondary:not(.uk-preserve-color) h1,.uk-tile-secondary:not(.uk-preserve-color) h2,.uk-tile-secondary:not(.uk-preserve-color) h3,.uk-tile-secondary:not(.uk-preserve-color) h4,.uk-tile-secondary:not(.uk-preserve-color) h5,.uk-tile-secondary:not(.uk-preserve-color) h6{color:#fff}.uk-card-primary.uk-card-body blockquote,.uk-card-primary>:not([class*=uk-card-media]) blockquote,.uk-card-secondary.uk-card-body blockquote,.uk-card-secondary>:not([class*=uk-card-media]) blockquote,.uk-light blockquote,.uk-offcanvas-bar blockquote,.uk-overlay-primary blockquote,.uk-section-primary:not(.uk-preserve-color) blockquote,.uk-section-secondary:not(.uk-preserve-color) blockquote,.uk-tile-primary:not(.uk-preserve-color) blockquote,.uk-tile-secondary:not(.uk-preserve-color) blockquote{color:#fff}.uk-card-primary.uk-card-body blockquote footer,.uk-card-primary>:not([class*=uk-card-media]) blockquote footer,.uk-card-secondary.uk-card-body blockquote footer,.uk-card-secondary>:not([class*=uk-card-media]) blockquote footer,.uk-light blockquote footer,.uk-offcanvas-bar blockquote footer,.uk-overlay-primary blockquote footer,.uk-section-primary:not(.uk-preserve-color) blockquote footer,.uk-section-secondary:not(.uk-preserve-color) blockquote footer,.uk-tile-primary:not(.uk-preserve-color) blockquote footer,.uk-tile-secondary:not(.uk-preserve-color) blockquote footer{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-hr,.uk-card-primary.uk-card-body hr,.uk-card-primary>:not([class*=uk-card-media]) .uk-hr,.uk-card-primary>:not([class*=uk-card-media]) hr,.uk-card-secondary.uk-card-body .uk-hr,.uk-card-secondary.uk-card-body hr,.uk-card-secondary>:not([class*=uk-card-media]) .uk-hr,.uk-card-secondary>:not([class*=uk-card-media]) hr,.uk-light .uk-hr,.uk-light hr,.uk-offcanvas-bar .uk-hr,.uk-offcanvas-bar hr,.uk-overlay-primary .uk-hr,.uk-overlay-primary hr,.uk-section-primary:not(.uk-preserve-color) .uk-hr,.uk-section-primary:not(.uk-preserve-color) hr,.uk-section-secondary:not(.uk-preserve-color) .uk-hr,.uk-section-secondary:not(.uk-preserve-color) hr,.uk-tile-primary:not(.uk-preserve-color) .uk-hr,.uk-tile-primary:not(.uk-preserve-color) hr,.uk-tile-secondary:not(.uk-preserve-color) .uk-hr,.uk-tile-secondary:not(.uk-preserve-color) hr{border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-link-muted a,.uk-card-primary.uk-card-body a.uk-link-muted,.uk-card-primary>:not([class*=uk-card-media]) .uk-link-muted a,.uk-card-primary>:not([class*=uk-card-media]) a.uk-link-muted,.uk-card-secondary.uk-card-body .uk-link-muted a,.uk-card-secondary.uk-card-body a.uk-link-muted,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link-muted a,.uk-card-secondary>:not([class*=uk-card-media]) a.uk-link-muted,.uk-light .uk-link-muted a,.uk-light a.uk-link-muted,.uk-offcanvas-bar .uk-link-muted a,.uk-offcanvas-bar a.uk-link-muted,.uk-overlay-primary .uk-link-muted a,.uk-overlay-primary a.uk-link-muted,.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a,.uk-section-primary:not(.uk-preserve-color) a.uk-link-muted,.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a,.uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted,.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a,.uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted,.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a,.uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-link-muted a:hover,.uk-card-primary.uk-card-body a.uk-link-muted:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-link-muted a:hover,.uk-card-primary>:not([class*=uk-card-media]) a.uk-link-muted:hover,.uk-card-secondary.uk-card-body .uk-link-muted a:hover,.uk-card-secondary.uk-card-body a.uk-link-muted:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link-muted a:hover,.uk-card-secondary>:not([class*=uk-card-media]) a.uk-link-muted:hover,.uk-light .uk-link-muted a:hover,.uk-light a.uk-link-muted:hover,.uk-offcanvas-bar .uk-link-muted a:hover,.uk-offcanvas-bar a.uk-link-muted:hover,.uk-overlay-primary .uk-link-muted a:hover,.uk-overlay-primary a.uk-link-muted:hover,.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a:hover,.uk-section-primary:not(.uk-preserve-color) a.uk-link-muted:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,.uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a:hover,.uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,.uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-link-text a:hover,.uk-card-primary.uk-card-body a.uk-link-text:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-link-text a:hover,.uk-card-primary>:not([class*=uk-card-media]) a.uk-link-text:hover,.uk-card-secondary.uk-card-body .uk-link-text a:hover,.uk-card-secondary.uk-card-body a.uk-link-text:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link-text a:hover,.uk-card-secondary>:not([class*=uk-card-media]) a.uk-link-text:hover,.uk-light .uk-link-text a:hover,.uk-light a.uk-link-text:hover,.uk-offcanvas-bar .uk-link-text a:hover,.uk-offcanvas-bar a.uk-link-text:hover,.uk-overlay-primary .uk-link-text a:hover,.uk-overlay-primary a.uk-link-text:hover,.uk-section-primary:not(.uk-preserve-color) .uk-link-text a:hover,.uk-section-primary:not(.uk-preserve-color) a.uk-link-text:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-link-text a:hover,.uk-section-secondary:not(.uk-preserve-color) a.uk-link-text:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-link-text a:hover,.uk-tile-primary:not(.uk-preserve-color) a.uk-link-text:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-link-text a:hover,.uk-tile-secondary:not(.uk-preserve-color) a.uk-link-text:hover{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-link-heading a:hover,.uk-card-primary.uk-card-body a.uk-link-heading:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-link-heading a:hover,.uk-card-primary>:not([class*=uk-card-media]) a.uk-link-heading:hover,.uk-card-secondary.uk-card-body .uk-link-heading a:hover,.uk-card-secondary.uk-card-body a.uk-link-heading:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-link-heading a:hover,.uk-card-secondary>:not([class*=uk-card-media]) a.uk-link-heading:hover,.uk-light .uk-link-heading a:hover,.uk-light a.uk-link-heading:hover,.uk-offcanvas-bar .uk-link-heading a:hover,.uk-offcanvas-bar a.uk-link-heading:hover,.uk-overlay-primary .uk-link-heading a:hover,.uk-overlay-primary a.uk-link-heading:hover,.uk-section-primary:not(.uk-preserve-color) .uk-link-heading a:hover,.uk-section-primary:not(.uk-preserve-color) a.uk-link-heading:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,.uk-section-secondary:not(.uk-preserve-color) a.uk-link-heading:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-link-heading a:hover,.uk-tile-primary:not(.uk-preserve-color) a.uk-link-heading:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,.uk-tile-secondary:not(.uk-preserve-color) a.uk-link-heading:hover{color:#fff}.uk-card-primary.uk-card-body .uk-heading-divider,.uk-card-primary>:not([class*=uk-card-media]) .uk-heading-divider,.uk-card-secondary.uk-card-body .uk-heading-divider,.uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-divider,.uk-light .uk-heading-divider,.uk-offcanvas-bar .uk-heading-divider,.uk-overlay-primary .uk-heading-divider,.uk-section-primary:not(.uk-preserve-color) .uk-heading-divider,.uk-section-secondary:not(.uk-preserve-color) .uk-heading-divider,.uk-tile-primary:not(.uk-preserve-color) .uk-heading-divider,.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-divider{border-bottom-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-heading-bullet::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-heading-bullet::before,.uk-card-secondary.uk-card-body .uk-heading-bullet::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-bullet::before,.uk-light .uk-heading-bullet::before,.uk-offcanvas-bar .uk-heading-bullet::before,.uk-overlay-primary .uk-heading-bullet::before,.uk-section-primary:not(.uk-preserve-color) .uk-heading-bullet::before,.uk-section-secondary:not(.uk-preserve-color) .uk-heading-bullet::before,.uk-tile-primary:not(.uk-preserve-color) .uk-heading-bullet::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-bullet::before{border-left-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-heading-line>::after,.uk-card-primary.uk-card-body .uk-heading-line>::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-heading-line>::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-heading-line>::before,.uk-card-secondary.uk-card-body .uk-heading-line>::after,.uk-card-secondary.uk-card-body .uk-heading-line>::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-line>::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-line>::before,.uk-light .uk-heading-line>::after,.uk-light .uk-heading-line>::before,.uk-offcanvas-bar .uk-heading-line>::after,.uk-offcanvas-bar .uk-heading-line>::before,.uk-overlay-primary .uk-heading-line>::after,.uk-overlay-primary .uk-heading-line>::before,.uk-section-primary:not(.uk-preserve-color) .uk-heading-line>::after,.uk-section-primary:not(.uk-preserve-color) .uk-heading-line>::before,.uk-section-secondary:not(.uk-preserve-color) .uk-heading-line>::after,.uk-section-secondary:not(.uk-preserve-color) .uk-heading-line>::before,.uk-tile-primary:not(.uk-preserve-color) .uk-heading-line>::after,.uk-tile-primary:not(.uk-preserve-color) .uk-heading-line>::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line>::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line>::before{border-bottom-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-divider-icon,.uk-card-primary>:not([class*=uk-card-media]) .uk-divider-icon,.uk-card-secondary.uk-card-body .uk-divider-icon,.uk-card-secondary>:not([class*=uk-card-media]) .uk-divider-icon,.uk-light .uk-divider-icon,.uk-offcanvas-bar .uk-divider-icon,.uk-overlay-primary .uk-divider-icon,.uk-section-primary:not(.uk-preserve-color) .uk-divider-icon,.uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon,.uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon,.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.2%29%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-card-primary.uk-card-body .uk-divider-icon::after,.uk-card-primary.uk-card-body .uk-divider-icon::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-divider-icon::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-divider-icon::before,.uk-card-secondary.uk-card-body .uk-divider-icon::after,.uk-card-secondary.uk-card-body .uk-divider-icon::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-divider-icon::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-divider-icon::before,.uk-light .uk-divider-icon::after,.uk-light .uk-divider-icon::before,.uk-offcanvas-bar .uk-divider-icon::after,.uk-offcanvas-bar .uk-divider-icon::before,.uk-overlay-primary .uk-divider-icon::after,.uk-overlay-primary .uk-divider-icon::before,.uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::after,.uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::before,.uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::after,.uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::before,.uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::after,.uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::before{border-bottom-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-divider-small::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-divider-small::after,.uk-card-secondary.uk-card-body .uk-divider-small::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-divider-small::after,.uk-light .uk-divider-small::after,.uk-offcanvas-bar .uk-divider-small::after,.uk-overlay-primary .uk-divider-small::after,.uk-section-primary:not(.uk-preserve-color) .uk-divider-small::after,.uk-section-secondary:not(.uk-preserve-color) .uk-divider-small::after,.uk-tile-primary:not(.uk-preserve-color) .uk-divider-small::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-small::after{border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-divider-vertical::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-divider-vertical::after,.uk-card-secondary.uk-card-body .uk-divider-vertical::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-divider-vertical::after,.uk-light .uk-divider-vertical::after,.uk-offcanvas-bar .uk-divider-vertical::after,.uk-overlay-primary .uk-divider-vertical::after,.uk-section-primary:not(.uk-preserve-color) .uk-divider-vertical::after,.uk-section-secondary:not(.uk-preserve-color) .uk-divider-vertical::after,.uk-tile-primary:not(.uk-preserve-color) .uk-divider-vertical::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-vertical::after{border-left-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-list-divider>li:nth-child(n+2),.uk-card-primary>:not([class*=uk-card-media]) .uk-list-divider>li:nth-child(n+2),.uk-card-secondary.uk-card-body .uk-list-divider>li:nth-child(n+2),.uk-card-secondary>:not([class*=uk-card-media]) .uk-list-divider>li:nth-child(n+2),.uk-light .uk-list-divider>li:nth-child(n+2),.uk-offcanvas-bar .uk-list-divider>li:nth-child(n+2),.uk-overlay-primary .uk-list-divider>li:nth-child(n+2),.uk-section-primary:not(.uk-preserve-color) .uk-list-divider>li:nth-child(n+2),.uk-section-secondary:not(.uk-preserve-color) .uk-list-divider>li:nth-child(n+2),.uk-tile-primary:not(.uk-preserve-color) .uk-list-divider>li:nth-child(n+2),.uk-tile-secondary:not(.uk-preserve-color) .uk-list-divider>li:nth-child(n+2){border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-list-striped>li:nth-of-type(odd),.uk-card-primary>:not([class*=uk-card-media]) .uk-list-striped>li:nth-of-type(odd),.uk-card-secondary.uk-card-body .uk-list-striped>li:nth-of-type(odd),.uk-card-secondary>:not([class*=uk-card-media]) .uk-list-striped>li:nth-of-type(odd),.uk-light .uk-list-striped>li:nth-of-type(odd),.uk-offcanvas-bar .uk-list-striped>li:nth-of-type(odd),.uk-overlay-primary .uk-list-striped>li:nth-of-type(odd),.uk-section-primary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-section-secondary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-tile-primary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd){border-top-color:rgba(255,255,255,.2);border-bottom-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-list-striped>li:nth-of-type(odd),.uk-card-primary>:not([class*=uk-card-media]) .uk-list-striped>li:nth-of-type(odd),.uk-card-secondary.uk-card-body .uk-list-striped>li:nth-of-type(odd),.uk-card-secondary>:not([class*=uk-card-media]) .uk-list-striped>li:nth-of-type(odd),.uk-light .uk-list-striped>li:nth-of-type(odd),.uk-offcanvas-bar .uk-list-striped>li:nth-of-type(odd),.uk-overlay-primary .uk-list-striped>li:nth-of-type(odd),.uk-section-primary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-section-secondary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-tile-primary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd),.uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped>li:nth-of-type(odd){background-color:rgba(255,255,255,.1)}.uk-card-primary.uk-card-body .uk-list-bullet>li::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-list-bullet>li::before,.uk-card-secondary.uk-card-body .uk-list-bullet>li::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-list-bullet>li::before,.uk-light .uk-list-bullet>li::before,.uk-offcanvas-bar .uk-list-bullet>li::before,.uk-overlay-primary .uk-list-bullet>li::before,.uk-section-primary:not(.uk-preserve-color) .uk-list-bullet>li::before,.uk-section-secondary:not(.uk-preserve-color) .uk-list-bullet>li::before,.uk-tile-primary:not(.uk-preserve-color) .uk-list-bullet>li::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-list-bullet>li::before{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-table th,.uk-card-primary>:not([class*=uk-card-media]) .uk-table th,.uk-card-secondary.uk-card-body .uk-table th,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table th,.uk-light .uk-table th,.uk-offcanvas-bar .uk-table th,.uk-overlay-primary .uk-table th,.uk-section-primary:not(.uk-preserve-color) .uk-table th,.uk-section-secondary:not(.uk-preserve-color) .uk-table th,.uk-tile-primary:not(.uk-preserve-color) .uk-table th,.uk-tile-secondary:not(.uk-preserve-color) .uk-table th{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-table caption,.uk-card-primary>:not([class*=uk-card-media]) .uk-table caption,.uk-card-secondary.uk-card-body .uk-table caption,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table caption,.uk-light .uk-table caption,.uk-offcanvas-bar .uk-table caption,.uk-overlay-primary .uk-table caption,.uk-section-primary:not(.uk-preserve-color) .uk-table caption,.uk-section-secondary:not(.uk-preserve-color) .uk-table caption,.uk-tile-primary:not(.uk-preserve-color) .uk-table caption,.uk-tile-secondary:not(.uk-preserve-color) .uk-table caption{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-table tbody tr.uk-active,.uk-card-primary.uk-card-body .uk-table>tr.uk-active,.uk-card-primary>:not([class*=uk-card-media]) .uk-table tbody tr.uk-active,.uk-card-primary>:not([class*=uk-card-media]) .uk-table>tr.uk-active,.uk-card-secondary.uk-card-body .uk-table tbody tr.uk-active,.uk-card-secondary.uk-card-body .uk-table>tr.uk-active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table tbody tr.uk-active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table>tr.uk-active,.uk-light .uk-table tbody tr.uk-active,.uk-light .uk-table>tr.uk-active,.uk-offcanvas-bar .uk-table tbody tr.uk-active,.uk-offcanvas-bar .uk-table>tr.uk-active,.uk-overlay-primary .uk-table tbody tr.uk-active,.uk-overlay-primary .uk-table>tr.uk-active,.uk-section-primary:not(.uk-preserve-color) .uk-table tbody tr.uk-active,.uk-section-primary:not(.uk-preserve-color) .uk-table>tr.uk-active,.uk-section-secondary:not(.uk-preserve-color) .uk-table tbody tr.uk-active,.uk-section-secondary:not(.uk-preserve-color) .uk-table>tr.uk-active,.uk-tile-primary:not(.uk-preserve-color) .uk-table tbody tr.uk-active,.uk-tile-primary:not(.uk-preserve-color) .uk-table>tr.uk-active,.uk-tile-secondary:not(.uk-preserve-color) .uk-table tbody tr.uk-active,.uk-tile-secondary:not(.uk-preserve-color) .uk-table>tr.uk-active{background:rgba(255,255,255,.08)}.uk-card-primary.uk-card-body .uk-table-divider>:first-child>tr:not(:first-child),.uk-card-primary.uk-card-body .uk-table-divider>:not(:first-child)>tr,.uk-card-primary.uk-card-body .uk-table-divider>tr:not(:first-child),.uk-card-primary>:not([class*=uk-card-media]) .uk-table-divider>:first-child>tr:not(:first-child),.uk-card-primary>:not([class*=uk-card-media]) .uk-table-divider>:not(:first-child)>tr,.uk-card-primary>:not([class*=uk-card-media]) .uk-table-divider>tr:not(:first-child),.uk-card-secondary.uk-card-body .uk-table-divider>:first-child>tr:not(:first-child),.uk-card-secondary.uk-card-body .uk-table-divider>:not(:first-child)>tr,.uk-card-secondary.uk-card-body .uk-table-divider>tr:not(:first-child),.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-divider>:first-child>tr:not(:first-child),.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-divider>:not(:first-child)>tr,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-divider>tr:not(:first-child),.uk-light .uk-table-divider>:first-child>tr:not(:first-child),.uk-light .uk-table-divider>:not(:first-child)>tr,.uk-light .uk-table-divider>tr:not(:first-child),.uk-offcanvas-bar .uk-table-divider>:first-child>tr:not(:first-child),.uk-offcanvas-bar .uk-table-divider>:not(:first-child)>tr,.uk-offcanvas-bar .uk-table-divider>tr:not(:first-child),.uk-overlay-primary .uk-table-divider>:first-child>tr:not(:first-child),.uk-overlay-primary .uk-table-divider>:not(:first-child)>tr,.uk-overlay-primary .uk-table-divider>tr:not(:first-child),.uk-section-primary:not(.uk-preserve-color) .uk-table-divider>:first-child>tr:not(:first-child),.uk-section-primary:not(.uk-preserve-color) .uk-table-divider>:not(:first-child)>tr,.uk-section-primary:not(.uk-preserve-color) .uk-table-divider>tr:not(:first-child),.uk-section-secondary:not(.uk-preserve-color) .uk-table-divider>:first-child>tr:not(:first-child),.uk-section-secondary:not(.uk-preserve-color) .uk-table-divider>:not(:first-child)>tr,.uk-section-secondary:not(.uk-preserve-color) .uk-table-divider>tr:not(:first-child),.uk-tile-primary:not(.uk-preserve-color) .uk-table-divider>:first-child>tr:not(:first-child),.uk-tile-primary:not(.uk-preserve-color) .uk-table-divider>:not(:first-child)>tr,.uk-tile-primary:not(.uk-preserve-color) .uk-table-divider>tr:not(:first-child),.uk-tile-secondary:not(.uk-preserve-color) .uk-table-divider>:first-child>tr:not(:first-child),.uk-tile-secondary:not(.uk-preserve-color) .uk-table-divider>:not(:first-child)>tr,.uk-tile-secondary:not(.uk-preserve-color) .uk-table-divider>tr:not(:first-child){border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-table-striped tbody tr:nth-of-type(odd),.uk-card-primary.uk-card-body .uk-table-striped>tr:nth-of-type(odd),.uk-card-primary>:not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(odd),.uk-card-primary>:not([class*=uk-card-media]) .uk-table-striped>tr:nth-of-type(odd),.uk-card-secondary.uk-card-body .uk-table-striped tbody tr:nth-of-type(odd),.uk-card-secondary.uk-card-body .uk-table-striped>tr:nth-of-type(odd),.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(odd),.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-striped>tr:nth-of-type(odd),.uk-light .uk-table-striped tbody tr:nth-of-type(odd),.uk-light .uk-table-striped>tr:nth-of-type(odd),.uk-offcanvas-bar .uk-table-striped tbody tr:nth-of-type(odd),.uk-offcanvas-bar .uk-table-striped>tr:nth-of-type(odd),.uk-overlay-primary .uk-table-striped tbody tr:nth-of-type(odd),.uk-overlay-primary .uk-table-striped>tr:nth-of-type(odd),.uk-section-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(odd),.uk-section-primary:not(.uk-preserve-color) .uk-table-striped>tr:nth-of-type(odd),.uk-section-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(odd),.uk-section-secondary:not(.uk-preserve-color) .uk-table-striped>tr:nth-of-type(odd),.uk-tile-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(odd),.uk-tile-primary:not(.uk-preserve-color) .uk-table-striped>tr:nth-of-type(odd),.uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(odd),.uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped>tr:nth-of-type(odd){background:rgba(255,255,255,.1);border-top-color:rgba(255,255,255,.2);border-bottom-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-table-hover tbody tr:hover,.uk-card-primary.uk-card-body .uk-table-hover>tr:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-table-hover tbody tr:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-table-hover>tr:hover,.uk-card-secondary.uk-card-body .uk-table-hover tbody tr:hover,.uk-card-secondary.uk-card-body .uk-table-hover>tr:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-hover tbody tr:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-table-hover>tr:hover,.uk-light .uk-table-hover tbody tr:hover,.uk-light .uk-table-hover>tr:hover,.uk-offcanvas-bar .uk-table-hover tbody tr:hover,.uk-offcanvas-bar .uk-table-hover>tr:hover,.uk-overlay-primary .uk-table-hover tbody tr:hover,.uk-overlay-primary .uk-table-hover>tr:hover,.uk-section-primary:not(.uk-preserve-color) .uk-table-hover tbody tr:hover,.uk-section-primary:not(.uk-preserve-color) .uk-table-hover>tr:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-table-hover tbody tr:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-table-hover>tr:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-table-hover tbody tr:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-table-hover>tr:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-table-hover tbody tr:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-table-hover>tr:hover{background:rgba(255,255,255,.08)}.uk-card-primary.uk-card-body .uk-icon-link,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-link,.uk-card-secondary.uk-card-body .uk-icon-link,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-link,.uk-light .uk-icon-link,.uk-offcanvas-bar .uk-icon-link,.uk-overlay-primary .uk-icon-link,.uk-section-primary:not(.uk-preserve-color) .uk-icon-link,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-link,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-link,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-icon-link:focus,.uk-card-primary.uk-card-body .uk-icon-link:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-link:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-link:hover,.uk-card-secondary.uk-card-body .uk-icon-link:focus,.uk-card-secondary.uk-card-body .uk-icon-link:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-link:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-link:hover,.uk-light .uk-icon-link:focus,.uk-light .uk-icon-link:hover,.uk-offcanvas-bar .uk-icon-link:focus,.uk-offcanvas-bar .uk-icon-link:hover,.uk-overlay-primary .uk-icon-link:focus,.uk-overlay-primary .uk-icon-link:hover,.uk-section-primary:not(.uk-preserve-color) .uk-icon-link:focus,.uk-section-primary:not(.uk-preserve-color) .uk-icon-link:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-active>.uk-icon-link,.uk-card-primary.uk-card-body .uk-icon-link:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-active>.uk-icon-link,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-link:active,.uk-card-secondary.uk-card-body .uk-active>.uk-icon-link,.uk-card-secondary.uk-card-body .uk-icon-link:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-active>.uk-icon-link,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-link:active,.uk-light .uk-active>.uk-icon-link,.uk-light .uk-icon-link:active,.uk-offcanvas-bar .uk-active>.uk-icon-link,.uk-offcanvas-bar .uk-icon-link:active,.uk-overlay-primary .uk-active>.uk-icon-link,.uk-overlay-primary .uk-icon-link:active,.uk-section-primary:not(.uk-preserve-color) .uk-active>.uk-icon-link,.uk-section-primary:not(.uk-preserve-color) .uk-icon-link:active,.uk-section-secondary:not(.uk-preserve-color) .uk-active>.uk-icon-link,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:active,.uk-tile-primary:not(.uk-preserve-color) .uk-active>.uk-icon-link,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-active>.uk-icon-link,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:active{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-icon-button,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-button,.uk-card-secondary.uk-card-body .uk-icon-button,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-button,.uk-light .uk-icon-button,.uk-offcanvas-bar .uk-icon-button,.uk-overlay-primary .uk-icon-button,.uk-section-primary:not(.uk-preserve-color) .uk-icon-button,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-button,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-button,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-icon-button:focus,.uk-card-primary.uk-card-body .uk-icon-button:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-button:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-button:hover,.uk-card-secondary.uk-card-body .uk-icon-button:focus,.uk-card-secondary.uk-card-body .uk-icon-button:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-button:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-button:hover,.uk-light .uk-icon-button:focus,.uk-light .uk-icon-button:hover,.uk-offcanvas-bar .uk-icon-button:focus,.uk-offcanvas-bar .uk-icon-button:hover,.uk-overlay-primary .uk-icon-button:focus,.uk-overlay-primary .uk-icon-button:hover,.uk-section-primary:not(.uk-preserve-color) .uk-icon-button:focus,.uk-section-primary:not(.uk-preserve-color) .uk-icon-button:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:hover{background-color:rgba(242,242,242,.1);color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-icon-button:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-icon-button:active,.uk-card-secondary.uk-card-body .uk-icon-button:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-icon-button:active,.uk-light .uk-icon-button:active,.uk-offcanvas-bar .uk-icon-button:active,.uk-overlay-primary .uk-icon-button:active,.uk-section-primary:not(.uk-preserve-color) .uk-icon-button:active,.uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:active,.uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:active{background-color:rgba(230,230,230,.1);color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-input,.uk-card-primary.uk-card-body .uk-select,.uk-card-primary.uk-card-body .uk-textarea,.uk-card-primary>:not([class*=uk-card-media]) .uk-input,.uk-card-primary>:not([class*=uk-card-media]) .uk-select,.uk-card-primary>:not([class*=uk-card-media]) .uk-textarea,.uk-card-secondary.uk-card-body .uk-input,.uk-card-secondary.uk-card-body .uk-select,.uk-card-secondary.uk-card-body .uk-textarea,.uk-card-secondary>:not([class*=uk-card-media]) .uk-input,.uk-card-secondary>:not([class*=uk-card-media]) .uk-select,.uk-card-secondary>:not([class*=uk-card-media]) .uk-textarea,.uk-light .uk-input,.uk-light .uk-select,.uk-light .uk-textarea,.uk-offcanvas-bar .uk-input,.uk-offcanvas-bar .uk-select,.uk-offcanvas-bar .uk-textarea,.uk-overlay-primary .uk-input,.uk-overlay-primary .uk-select,.uk-overlay-primary .uk-textarea,.uk-section-primary:not(.uk-preserve-color) .uk-input,.uk-section-primary:not(.uk-preserve-color) .uk-select,.uk-section-primary:not(.uk-preserve-color) .uk-textarea,.uk-section-secondary:not(.uk-preserve-color) .uk-input,.uk-section-secondary:not(.uk-preserve-color) .uk-select,.uk-section-secondary:not(.uk-preserve-color) .uk-textarea,.uk-tile-primary:not(.uk-preserve-color) .uk-input,.uk-tile-primary:not(.uk-preserve-color) .uk-select,.uk-tile-primary:not(.uk-preserve-color) .uk-textarea,.uk-tile-secondary:not(.uk-preserve-color) .uk-input,.uk-tile-secondary:not(.uk-preserve-color) .uk-select,.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.7);background-clip:padding-box;border-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-input:focus,.uk-card-primary.uk-card-body .uk-select:focus,.uk-card-primary.uk-card-body .uk-textarea:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-input:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-select:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-textarea:focus,.uk-card-secondary.uk-card-body .uk-input:focus,.uk-card-secondary.uk-card-body .uk-select:focus,.uk-card-secondary.uk-card-body .uk-textarea:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-input:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-select:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-textarea:focus,.uk-light .uk-input:focus,.uk-light .uk-select:focus,.uk-light .uk-textarea:focus,.uk-offcanvas-bar .uk-input:focus,.uk-offcanvas-bar .uk-select:focus,.uk-offcanvas-bar .uk-textarea:focus,.uk-overlay-primary .uk-input:focus,.uk-overlay-primary .uk-select:focus,.uk-overlay-primary .uk-textarea:focus,.uk-section-primary:not(.uk-preserve-color) .uk-input:focus,.uk-section-primary:not(.uk-preserve-color) .uk-select:focus,.uk-section-primary:not(.uk-preserve-color) .uk-textarea:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-input:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-select:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-textarea:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-input:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-select:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-textarea:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-input:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-select:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea:focus{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-input::-ms-input-placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-input::-ms-input-placeholder,.uk-card-secondary.uk-card-body .uk-input::-ms-input-placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-input::-ms-input-placeholder,.uk-light .uk-input::-ms-input-placeholder,.uk-offcanvas-bar .uk-input::-ms-input-placeholder,.uk-overlay-primary .uk-input::-ms-input-placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder{color:rgba(255,255,255,.5)!important}.uk-card-primary.uk-card-body .uk-input::placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-input::placeholder,.uk-card-secondary.uk-card-body .uk-input::placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-input::placeholder,.uk-light .uk-input::placeholder,.uk-offcanvas-bar .uk-input::placeholder,.uk-overlay-primary .uk-input::placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-input::placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-input::placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-input::placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-input::placeholder{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-textarea::-ms-input-placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-textarea::-ms-input-placeholder,.uk-card-secondary.uk-card-body .uk-textarea::-ms-input-placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-textarea::-ms-input-placeholder,.uk-light .uk-textarea::-ms-input-placeholder,.uk-offcanvas-bar .uk-textarea::-ms-input-placeholder,.uk-overlay-primary .uk-textarea::-ms-input-placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder{color:rgba(255,255,255,.5)!important}.uk-card-primary.uk-card-body .uk-textarea::placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-textarea::placeholder,.uk-card-secondary.uk-card-body .uk-textarea::placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-textarea::placeholder,.uk-light .uk-textarea::placeholder,.uk-offcanvas-bar .uk-textarea::placeholder,.uk-overlay-primary .uk-textarea::placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-textarea::placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-textarea::placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-textarea::placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::placeholder{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-select:not([multiple]):not([size]),.uk-card-primary>:not([class*=uk-card-media]) .uk-select:not([multiple]):not([size]),.uk-card-secondary.uk-card-body .uk-select:not([multiple]):not([size]),.uk-card-secondary>:not([class*=uk-card-media]) .uk-select:not([multiple]):not([size]),.uk-light .uk-select:not([multiple]):not([size]),.uk-offcanvas-bar .uk-select:not([multiple]):not([size]),.uk-overlay-primary .uk-select:not([multiple]):not([size]),.uk-section-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]),.uk-section-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]),.uk-tile-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]),.uk-tile-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]){background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-card-primary.uk-card-body .uk-checkbox,.uk-card-primary.uk-card-body .uk-radio,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox,.uk-card-primary>:not([class*=uk-card-media]) .uk-radio,.uk-card-secondary.uk-card-body .uk-checkbox,.uk-card-secondary.uk-card-body .uk-radio,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox,.uk-card-secondary>:not([class*=uk-card-media]) .uk-radio,.uk-light .uk-checkbox,.uk-light .uk-radio,.uk-offcanvas-bar .uk-checkbox,.uk-offcanvas-bar .uk-radio,.uk-overlay-primary .uk-checkbox,.uk-overlay-primary .uk-radio,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox,.uk-section-primary:not(.uk-preserve-color) .uk-radio,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox,.uk-section-secondary:not(.uk-preserve-color) .uk-radio,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox,.uk-tile-primary:not(.uk-preserve-color) .uk-radio,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox,.uk-tile-secondary:not(.uk-preserve-color) .uk-radio{background-color:rgba(242,242,242,.1);border-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-checkbox:focus,.uk-card-primary.uk-card-body .uk-radio:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-radio:focus,.uk-card-secondary.uk-card-body .uk-checkbox:focus,.uk-card-secondary.uk-card-body .uk-radio:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-radio:focus,.uk-light .uk-checkbox:focus,.uk-light .uk-radio:focus,.uk-offcanvas-bar .uk-checkbox:focus,.uk-offcanvas-bar .uk-radio:focus,.uk-overlay-primary .uk-checkbox:focus,.uk-overlay-primary .uk-radio:focus,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:focus,.uk-section-primary:not(.uk-preserve-color) .uk-radio:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-radio:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-radio:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-radio:focus{border-color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-checkbox:checked,.uk-card-primary.uk-card-body .uk-checkbox:indeterminate,.uk-card-primary.uk-card-body .uk-radio:checked,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:checked,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate,.uk-card-primary>:not([class*=uk-card-media]) .uk-radio:checked,.uk-card-secondary.uk-card-body .uk-checkbox:checked,.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate,.uk-card-secondary.uk-card-body .uk-radio:checked,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:checked,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate,.uk-card-secondary>:not([class*=uk-card-media]) .uk-radio:checked,.uk-light .uk-checkbox:checked,.uk-light .uk-checkbox:indeterminate,.uk-light .uk-radio:checked,.uk-offcanvas-bar .uk-checkbox:checked,.uk-offcanvas-bar .uk-checkbox:indeterminate,.uk-offcanvas-bar .uk-radio:checked,.uk-overlay-primary .uk-checkbox:checked,.uk-overlay-primary .uk-checkbox:indeterminate,.uk-overlay-primary .uk-radio:checked,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-section-primary:not(.uk-preserve-color) .uk-radio:checked,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked{background-color:#fff;border-color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-checkbox:checked:focus,.uk-card-primary.uk-card-body .uk-checkbox:indeterminate:focus,.uk-card-primary.uk-card-body .uk-radio:checked:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:checked:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-radio:checked:focus,.uk-card-secondary.uk-card-body .uk-checkbox:checked:focus,.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate:focus,.uk-card-secondary.uk-card-body .uk-radio:checked:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:checked:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-radio:checked:focus,.uk-light .uk-checkbox:checked:focus,.uk-light .uk-checkbox:indeterminate:focus,.uk-light .uk-radio:checked:focus,.uk-offcanvas-bar .uk-checkbox:checked:focus,.uk-offcanvas-bar .uk-checkbox:indeterminate:focus,.uk-offcanvas-bar .uk-radio:checked:focus,.uk-overlay-primary .uk-checkbox:checked:focus,.uk-overlay-primary .uk-checkbox:indeterminate:focus,.uk-overlay-primary .uk-radio:checked:focus,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,.uk-section-primary:not(.uk-preserve-color) .uk-radio:checked:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked:focus{background-color:#e6e6e6}.uk-card-primary.uk-card-body .uk-radio:checked,.uk-card-primary>:not([class*=uk-card-media]) .uk-radio:checked,.uk-card-secondary.uk-card-body .uk-radio:checked,.uk-card-secondary>:not([class*=uk-card-media]) .uk-radio:checked,.uk-light .uk-radio:checked,.uk-offcanvas-bar .uk-radio:checked,.uk-overlay-primary .uk-radio:checked,.uk-section-primary:not(.uk-preserve-color) .uk-radio:checked,.uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked,.uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked,.uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-checkbox:checked,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:checked,.uk-card-secondary.uk-card-body .uk-checkbox:checked,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:checked,.uk-light .uk-checkbox:checked,.uk-offcanvas-bar .uk-checkbox:checked,.uk-overlay-primary .uk-checkbox:checked,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A")}.uk-card-primary.uk-card-body .uk-checkbox:indeterminate,.uk-card-primary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate,.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate,.uk-card-secondary>:not([class*=uk-card-media]) .uk-checkbox:indeterminate,.uk-light .uk-checkbox:indeterminate,.uk-offcanvas-bar .uk-checkbox:indeterminate,.uk-overlay-primary .uk-checkbox:indeterminate,.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-form-label,.uk-card-primary>:not([class*=uk-card-media]) .uk-form-label,.uk-card-secondary.uk-card-body .uk-form-label,.uk-card-secondary>:not([class*=uk-card-media]) .uk-form-label,.uk-light .uk-form-label,.uk-offcanvas-bar .uk-form-label,.uk-overlay-primary .uk-form-label,.uk-section-primary:not(.uk-preserve-color) .uk-form-label,.uk-section-secondary:not(.uk-preserve-color) .uk-form-label,.uk-tile-primary:not(.uk-preserve-color) .uk-form-label,.uk-tile-secondary:not(.uk-preserve-color) .uk-form-label{color:#fff}.uk-card-primary.uk-card-body .uk-form-icon,.uk-card-primary>:not([class*=uk-card-media]) .uk-form-icon,.uk-card-secondary.uk-card-body .uk-form-icon,.uk-card-secondary>:not([class*=uk-card-media]) .uk-form-icon,.uk-light .uk-form-icon,.uk-offcanvas-bar .uk-form-icon,.uk-overlay-primary .uk-form-icon,.uk-section-primary:not(.uk-preserve-color) .uk-form-icon,.uk-section-secondary:not(.uk-preserve-color) .uk-form-icon,.uk-tile-primary:not(.uk-preserve-color) .uk-form-icon,.uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-form-icon:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-form-icon:hover,.uk-card-secondary.uk-card-body .uk-form-icon:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-form-icon:hover,.uk-light .uk-form-icon:hover,.uk-offcanvas-bar .uk-form-icon:hover,.uk-overlay-primary .uk-form-icon:hover,.uk-section-primary:not(.uk-preserve-color) .uk-form-icon:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-form-icon:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-form-icon:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-button-default,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-default,.uk-card-secondary.uk-card-body .uk-button-default,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-default,.uk-light .uk-button-default,.uk-offcanvas-bar .uk-button-default,.uk-overlay-primary .uk-button-default,.uk-section-primary:not(.uk-preserve-color) .uk-button-default,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default,.uk-tile-primary:not(.uk-preserve-color) .uk-button-default,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default{background-color:transparent;color:#fff;border-color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-button-default:focus,.uk-card-primary.uk-card-body .uk-button-default:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-default:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-default:hover,.uk-card-secondary.uk-card-body .uk-button-default:focus,.uk-card-secondary.uk-card-body .uk-button-default:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-default:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-default:hover,.uk-light .uk-button-default:focus,.uk-light .uk-button-default:hover,.uk-offcanvas-bar .uk-button-default:focus,.uk-offcanvas-bar .uk-button-default:hover,.uk-overlay-primary .uk-button-default:focus,.uk-overlay-primary .uk-button-default:hover,.uk-section-primary:not(.uk-preserve-color) .uk-button-default:focus,.uk-section-primary:not(.uk-preserve-color) .uk-button-default:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-button-default:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-button-default:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:hover{background-color:transparent;color:#fff;border-color:#fff}.uk-card-primary.uk-card-body .uk-button-default.uk-active,.uk-card-primary.uk-card-body .uk-button-default:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-default.uk-active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-default:active,.uk-card-secondary.uk-card-body .uk-button-default.uk-active,.uk-card-secondary.uk-card-body .uk-button-default:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-default.uk-active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-default:active,.uk-light .uk-button-default.uk-active,.uk-light .uk-button-default:active,.uk-offcanvas-bar .uk-button-default.uk-active,.uk-offcanvas-bar .uk-button-default:active,.uk-overlay-primary .uk-button-default.uk-active,.uk-overlay-primary .uk-button-default:active,.uk-section-primary:not(.uk-preserve-color) .uk-button-default.uk-active,.uk-section-primary:not(.uk-preserve-color) .uk-button-default:active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-default:active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-default.uk-active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-default:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:active{background-color:transparent;color:#fff;border-color:#fff}.uk-card-primary.uk-card-body .uk-button-primary,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-primary,.uk-card-secondary.uk-card-body .uk-button-primary,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-primary,.uk-light .uk-button-primary,.uk-offcanvas-bar .uk-button-primary,.uk-overlay-primary .uk-button-primary,.uk-section-primary:not(.uk-preserve-color) .uk-button-primary,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary,.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary{background-color:#fff;color:#666}.uk-card-primary.uk-card-body .uk-button-primary:focus,.uk-card-primary.uk-card-body .uk-button-primary:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-primary:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-primary:hover,.uk-card-secondary.uk-card-body .uk-button-primary:focus,.uk-card-secondary.uk-card-body .uk-button-primary:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-primary:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-primary:hover,.uk-light .uk-button-primary:focus,.uk-light .uk-button-primary:hover,.uk-offcanvas-bar .uk-button-primary:focus,.uk-offcanvas-bar .uk-button-primary:hover,.uk-overlay-primary .uk-button-primary:focus,.uk-overlay-primary .uk-button-primary:hover,.uk-section-primary:not(.uk-preserve-color) .uk-button-primary:focus,.uk-section-primary:not(.uk-preserve-color) .uk-button-primary:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:hover{background-color:#f2f2f2;color:#666}.uk-card-primary.uk-card-body .uk-button-primary.uk-active,.uk-card-primary.uk-card-body .uk-button-primary:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-primary.uk-active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-primary:active,.uk-card-secondary.uk-card-body .uk-button-primary.uk-active,.uk-card-secondary.uk-card-body .uk-button-primary:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-primary.uk-active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-primary:active,.uk-light .uk-button-primary.uk-active,.uk-light .uk-button-primary:active,.uk-offcanvas-bar .uk-button-primary.uk-active,.uk-offcanvas-bar .uk-button-primary:active,.uk-overlay-primary .uk-button-primary.uk-active,.uk-overlay-primary .uk-button-primary:active,.uk-section-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,.uk-section-primary:not(.uk-preserve-color) .uk-button-primary:active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:active{background-color:#e6e6e6;color:#666}.uk-card-primary.uk-card-body .uk-button-secondary,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-secondary,.uk-card-secondary.uk-card-body .uk-button-secondary,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-secondary,.uk-light .uk-button-secondary,.uk-offcanvas-bar .uk-button-secondary,.uk-overlay-primary .uk-button-secondary,.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary,.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary,.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary{background-color:#fff;color:#666}.uk-card-primary.uk-card-body .uk-button-secondary:focus,.uk-card-primary.uk-card-body .uk-button-secondary:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-secondary:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-secondary:hover,.uk-card-secondary.uk-card-body .uk-button-secondary:focus,.uk-card-secondary.uk-card-body .uk-button-secondary:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-secondary:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-secondary:hover,.uk-light .uk-button-secondary:focus,.uk-light .uk-button-secondary:hover,.uk-offcanvas-bar .uk-button-secondary:focus,.uk-offcanvas-bar .uk-button-secondary:hover,.uk-overlay-primary .uk-button-secondary:focus,.uk-overlay-primary .uk-button-secondary:hover,.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:focus,.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:hover{background-color:#f2f2f2;color:#666}.uk-card-primary.uk-card-body .uk-button-secondary.uk-active,.uk-card-primary.uk-card-body .uk-button-secondary:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-secondary.uk-active,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-secondary:active,.uk-card-secondary.uk-card-body .uk-button-secondary.uk-active,.uk-card-secondary.uk-card-body .uk-button-secondary:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-secondary.uk-active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-secondary:active,.uk-light .uk-button-secondary.uk-active,.uk-light .uk-button-secondary:active,.uk-offcanvas-bar .uk-button-secondary.uk-active,.uk-offcanvas-bar .uk-button-secondary:active,.uk-overlay-primary .uk-button-secondary.uk-active,.uk-overlay-primary .uk-button-secondary:active,.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:active{background-color:#e6e6e6;color:#666}.uk-card-primary.uk-card-body .uk-button-text,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-text,.uk-card-secondary.uk-card-body .uk-button-text,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-text,.uk-light .uk-button-text,.uk-offcanvas-bar .uk-button-text,.uk-overlay-primary .uk-button-text,.uk-section-primary:not(.uk-preserve-color) .uk-button-text,.uk-section-secondary:not(.uk-preserve-color) .uk-button-text,.uk-tile-primary:not(.uk-preserve-color) .uk-button-text,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text{color:#fff}.uk-card-primary.uk-card-body .uk-button-text::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-text::before,.uk-card-secondary.uk-card-body .uk-button-text::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-text::before,.uk-light .uk-button-text::before,.uk-offcanvas-bar .uk-button-text::before,.uk-overlay-primary .uk-button-text::before,.uk-section-primary:not(.uk-preserve-color) .uk-button-text::before,.uk-section-secondary:not(.uk-preserve-color) .uk-button-text::before,.uk-tile-primary:not(.uk-preserve-color) .uk-button-text::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text::before{border-bottom-color:#fff}.uk-card-primary.uk-card-body .uk-button-text:focus,.uk-card-primary.uk-card-body .uk-button-text:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-text:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-text:hover,.uk-card-secondary.uk-card-body .uk-button-text:focus,.uk-card-secondary.uk-card-body .uk-button-text:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-text:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-text:hover,.uk-light .uk-button-text:focus,.uk-light .uk-button-text:hover,.uk-offcanvas-bar .uk-button-text:focus,.uk-offcanvas-bar .uk-button-text:hover,.uk-overlay-primary .uk-button-text:focus,.uk-overlay-primary .uk-button-text:hover,.uk-section-primary:not(.uk-preserve-color) .uk-button-text:focus,.uk-section-primary:not(.uk-preserve-color) .uk-button-text:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-text:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-button-text:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-button-text:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-button-text:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:hover{color:#fff}.uk-card-primary.uk-card-body .uk-button-text:disabled,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-text:disabled,.uk-card-secondary.uk-card-body .uk-button-text:disabled,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-text:disabled,.uk-light .uk-button-text:disabled,.uk-offcanvas-bar .uk-button-text:disabled,.uk-overlay-primary .uk-button-text:disabled,.uk-section-primary:not(.uk-preserve-color) .uk-button-text:disabled,.uk-section-secondary:not(.uk-preserve-color) .uk-button-text:disabled,.uk-tile-primary:not(.uk-preserve-color) .uk-button-text:disabled,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:disabled{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-button-link,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-link,.uk-card-secondary.uk-card-body .uk-button-link,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-link,.uk-light .uk-button-link,.uk-offcanvas-bar .uk-button-link,.uk-overlay-primary .uk-button-link,.uk-section-primary:not(.uk-preserve-color) .uk-button-link,.uk-section-secondary:not(.uk-preserve-color) .uk-button-link,.uk-tile-primary:not(.uk-preserve-color) .uk-button-link,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-link{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-button-link:focus,.uk-card-primary.uk-card-body .uk-button-link:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-link:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-button-link:hover,.uk-card-secondary.uk-card-body .uk-button-link:focus,.uk-card-secondary.uk-card-body .uk-button-link:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-link:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-button-link:hover,.uk-light .uk-button-link:focus,.uk-light .uk-button-link:hover,.uk-offcanvas-bar .uk-button-link:focus,.uk-offcanvas-bar .uk-button-link:hover,.uk-overlay-primary .uk-button-link:focus,.uk-overlay-primary .uk-button-link:hover,.uk-section-primary:not(.uk-preserve-color) .uk-button-link:focus,.uk-section-primary:not(.uk-preserve-color) .uk-button-link:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-button-link:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-button-link:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-button-link:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-button-link:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-link:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-button-link:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-grid-divider>:not(.uk-first-column)::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-grid-divider>:not(.uk-first-column)::before,.uk-card-secondary.uk-card-body .uk-grid-divider>:not(.uk-first-column)::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-grid-divider>:not(.uk-first-column)::before,.uk-light .uk-grid-divider>:not(.uk-first-column)::before,.uk-offcanvas-bar .uk-grid-divider>:not(.uk-first-column)::before,.uk-overlay-primary .uk-grid-divider>:not(.uk-first-column)::before,.uk-section-primary:not(.uk-preserve-color) .uk-grid-divider>:not(.uk-first-column)::before,.uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider>:not(.uk-first-column)::before,.uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider>:not(.uk-first-column)::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider>:not(.uk-first-column)::before{border-left-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-card-secondary.uk-card-body .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-light .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-offcanvas-bar .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-overlay-primary .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-section-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack>.uk-grid-margin::before{border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-close,.uk-card-primary>:not([class*=uk-card-media]) .uk-close,.uk-card-secondary.uk-card-body .uk-close,.uk-card-secondary>:not([class*=uk-card-media]) .uk-close,.uk-light .uk-close,.uk-offcanvas-bar .uk-close,.uk-overlay-primary .uk-close,.uk-section-primary:not(.uk-preserve-color) .uk-close,.uk-section-secondary:not(.uk-preserve-color) .uk-close,.uk-tile-primary:not(.uk-preserve-color) .uk-close,.uk-tile-secondary:not(.uk-preserve-color) .uk-close{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-close:focus,.uk-card-primary.uk-card-body .uk-close:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-close:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-close:hover,.uk-card-secondary.uk-card-body .uk-close:focus,.uk-card-secondary.uk-card-body .uk-close:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-close:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-close:hover,.uk-light .uk-close:focus,.uk-light .uk-close:hover,.uk-offcanvas-bar .uk-close:focus,.uk-offcanvas-bar .uk-close:hover,.uk-overlay-primary .uk-close:focus,.uk-overlay-primary .uk-close:hover,.uk-section-primary:not(.uk-preserve-color) .uk-close:focus,.uk-section-primary:not(.uk-preserve-color) .uk-close:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-close:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-close:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-close:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-close:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-close:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-close:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-totop,.uk-card-primary>:not([class*=uk-card-media]) .uk-totop,.uk-card-secondary.uk-card-body .uk-totop,.uk-card-secondary>:not([class*=uk-card-media]) .uk-totop,.uk-light .uk-totop,.uk-offcanvas-bar .uk-totop,.uk-overlay-primary .uk-totop,.uk-section-primary:not(.uk-preserve-color) .uk-totop,.uk-section-secondary:not(.uk-preserve-color) .uk-totop,.uk-tile-primary:not(.uk-preserve-color) .uk-totop,.uk-tile-secondary:not(.uk-preserve-color) .uk-totop{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-totop:focus,.uk-card-primary.uk-card-body .uk-totop:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-totop:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-totop:hover,.uk-card-secondary.uk-card-body .uk-totop:focus,.uk-card-secondary.uk-card-body .uk-totop:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-totop:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-totop:hover,.uk-light .uk-totop:focus,.uk-light .uk-totop:hover,.uk-offcanvas-bar .uk-totop:focus,.uk-offcanvas-bar .uk-totop:hover,.uk-overlay-primary .uk-totop:focus,.uk-overlay-primary .uk-totop:hover,.uk-section-primary:not(.uk-preserve-color) .uk-totop:focus,.uk-section-primary:not(.uk-preserve-color) .uk-totop:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-totop:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-totop:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-totop:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-totop:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-totop:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-totop:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-totop:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-totop:active,.uk-card-secondary.uk-card-body .uk-totop:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-totop:active,.uk-light .uk-totop:active,.uk-offcanvas-bar .uk-totop:active,.uk-overlay-primary .uk-totop:active,.uk-section-primary:not(.uk-preserve-color) .uk-totop:active,.uk-section-secondary:not(.uk-preserve-color) .uk-totop:active,.uk-tile-primary:not(.uk-preserve-color) .uk-totop:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-totop:active{color:#fff}.uk-card-primary.uk-card-body .uk-marker,.uk-card-primary>:not([class*=uk-card-media]) .uk-marker,.uk-card-secondary.uk-card-body .uk-marker,.uk-card-secondary>:not([class*=uk-card-media]) .uk-marker,.uk-light .uk-marker,.uk-offcanvas-bar .uk-marker,.uk-overlay-primary .uk-marker,.uk-section-primary:not(.uk-preserve-color) .uk-marker,.uk-section-secondary:not(.uk-preserve-color) .uk-marker,.uk-tile-primary:not(.uk-preserve-color) .uk-marker,.uk-tile-secondary:not(.uk-preserve-color) .uk-marker{background:#f8f8f8;color:#666}.uk-card-primary.uk-card-body .uk-marker:focus,.uk-card-primary.uk-card-body .uk-marker:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-marker:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-marker:hover,.uk-card-secondary.uk-card-body .uk-marker:focus,.uk-card-secondary.uk-card-body .uk-marker:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-marker:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-marker:hover,.uk-light .uk-marker:focus,.uk-light .uk-marker:hover,.uk-offcanvas-bar .uk-marker:focus,.uk-offcanvas-bar .uk-marker:hover,.uk-overlay-primary .uk-marker:focus,.uk-overlay-primary .uk-marker:hover,.uk-section-primary:not(.uk-preserve-color) .uk-marker:focus,.uk-section-primary:not(.uk-preserve-color) .uk-marker:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-marker:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-marker:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-marker:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-marker:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-marker:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-marker:hover{color:#666}.uk-card-primary.uk-card-body .uk-badge,.uk-card-primary>:not([class*=uk-card-media]) .uk-badge,.uk-card-secondary.uk-card-body .uk-badge,.uk-card-secondary>:not([class*=uk-card-media]) .uk-badge,.uk-light .uk-badge,.uk-offcanvas-bar .uk-badge,.uk-overlay-primary .uk-badge,.uk-section-primary:not(.uk-preserve-color) .uk-badge,.uk-section-secondary:not(.uk-preserve-color) .uk-badge,.uk-tile-primary:not(.uk-preserve-color) .uk-badge,.uk-tile-secondary:not(.uk-preserve-color) .uk-badge{background-color:#fff;color:#666}.uk-card-primary.uk-card-body .uk-badge:focus,.uk-card-primary.uk-card-body .uk-badge:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-badge:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-badge:hover,.uk-card-secondary.uk-card-body .uk-badge:focus,.uk-card-secondary.uk-card-body .uk-badge:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-badge:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-badge:hover,.uk-light .uk-badge:focus,.uk-light .uk-badge:hover,.uk-offcanvas-bar .uk-badge:focus,.uk-offcanvas-bar .uk-badge:hover,.uk-overlay-primary .uk-badge:focus,.uk-overlay-primary .uk-badge:hover,.uk-section-primary:not(.uk-preserve-color) .uk-badge:focus,.uk-section-primary:not(.uk-preserve-color) .uk-badge:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-badge:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-badge:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-badge:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-badge:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-badge:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-badge:hover{color:#666}.uk-card-primary.uk-card-body .uk-label,.uk-card-primary>:not([class*=uk-card-media]) .uk-label,.uk-card-secondary.uk-card-body .uk-label,.uk-card-secondary>:not([class*=uk-card-media]) .uk-label,.uk-light .uk-label,.uk-offcanvas-bar .uk-label,.uk-overlay-primary .uk-label,.uk-section-primary:not(.uk-preserve-color) .uk-label,.uk-section-secondary:not(.uk-preserve-color) .uk-label,.uk-tile-primary:not(.uk-preserve-color) .uk-label,.uk-tile-secondary:not(.uk-preserve-color) .uk-label{background-color:#fff;color:#666}.uk-card-primary.uk-card-body .uk-article-meta,.uk-card-primary>:not([class*=uk-card-media]) .uk-article-meta,.uk-card-secondary.uk-card-body .uk-article-meta,.uk-card-secondary>:not([class*=uk-card-media]) .uk-article-meta,.uk-light .uk-article-meta,.uk-offcanvas-bar .uk-article-meta,.uk-overlay-primary .uk-article-meta,.uk-section-primary:not(.uk-preserve-color) .uk-article-meta,.uk-section-secondary:not(.uk-preserve-color) .uk-article-meta,.uk-tile-primary:not(.uk-preserve-color) .uk-article-meta,.uk-tile-secondary:not(.uk-preserve-color) .uk-article-meta{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-search-input,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-input,.uk-card-secondary.uk-card-body .uk-search-input,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-input,.uk-light .uk-search-input,.uk-offcanvas-bar .uk-search-input,.uk-overlay-primary .uk-search-input,.uk-section-primary:not(.uk-preserve-color) .uk-search-input,.uk-section-secondary:not(.uk-preserve-color) .uk-search-input,.uk-tile-primary:not(.uk-preserve-color) .uk-search-input,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-input{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-search-input:-ms-input-placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-input:-ms-input-placeholder,.uk-card-secondary.uk-card-body .uk-search-input:-ms-input-placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-input:-ms-input-placeholder,.uk-light .uk-search-input:-ms-input-placeholder,.uk-offcanvas-bar .uk-search-input:-ms-input-placeholder,.uk-overlay-primary .uk-search-input:-ms-input-placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder{color:rgba(255,255,255,.5)!important}.uk-card-primary.uk-card-body .uk-search-input::placeholder,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-input::placeholder,.uk-card-secondary.uk-card-body .uk-search-input::placeholder,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-input::placeholder,.uk-light .uk-search-input::placeholder,.uk-offcanvas-bar .uk-search-input::placeholder,.uk-overlay-primary .uk-search-input::placeholder,.uk-section-primary:not(.uk-preserve-color) .uk-search-input::placeholder,.uk-section-secondary:not(.uk-preserve-color) .uk-search-input::placeholder,.uk-tile-primary:not(.uk-preserve-color) .uk-search-input::placeholder,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-input::placeholder{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-search .uk-search-icon,.uk-card-primary>:not([class*=uk-card-media]) .uk-search .uk-search-icon,.uk-card-secondary.uk-card-body .uk-search .uk-search-icon,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search .uk-search-icon,.uk-light .uk-search .uk-search-icon,.uk-offcanvas-bar .uk-search .uk-search-icon,.uk-overlay-primary .uk-search .uk-search-icon,.uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon,.uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon,.uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon,.uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-search .uk-search-icon:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-search .uk-search-icon:hover,.uk-card-secondary.uk-card-body .uk-search .uk-search-icon:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search .uk-search-icon:hover,.uk-light .uk-search .uk-search-icon:hover,.uk-offcanvas-bar .uk-search .uk-search-icon:hover,.uk-overlay-primary .uk-search .uk-search-icon:hover,.uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-search-default .uk-search-input,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-default .uk-search-input,.uk-card-secondary.uk-card-body .uk-search-default .uk-search-input,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-default .uk-search-input,.uk-light .uk-search-default .uk-search-input,.uk-offcanvas-bar .uk-search-default .uk-search-input,.uk-overlay-primary .uk-search-default .uk-search-input,.uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input,.uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input,.uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input{background-color:transparent;border-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-search-default .uk-search-input:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-default .uk-search-input:focus,.uk-card-secondary.uk-card-body .uk-search-default .uk-search-input:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-default .uk-search-input:focus,.uk-light .uk-search-default .uk-search-input:focus,.uk-offcanvas-bar .uk-search-default .uk-search-input:focus,.uk-overlay-primary .uk-search-default .uk-search-input:focus,.uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus{background-color:transparent}.uk-card-primary.uk-card-body .uk-search-navbar .uk-search-input,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-navbar .uk-search-input,.uk-card-secondary.uk-card-body .uk-search-navbar .uk-search-input,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-navbar .uk-search-input,.uk-light .uk-search-navbar .uk-search-input,.uk-offcanvas-bar .uk-search-navbar .uk-search-input,.uk-overlay-primary .uk-search-navbar .uk-search-input,.uk-section-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input,.uk-section-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input,.uk-tile-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input{background-color:transparent}.uk-card-primary.uk-card-body .uk-search-large .uk-search-input,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-large .uk-search-input,.uk-card-secondary.uk-card-body .uk-search-large .uk-search-input,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-large .uk-search-input,.uk-light .uk-search-large .uk-search-input,.uk-offcanvas-bar .uk-search-large .uk-search-input,.uk-overlay-primary .uk-search-large .uk-search-input,.uk-section-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input,.uk-section-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input,.uk-tile-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input{background-color:transparent}.uk-card-primary.uk-card-body .uk-search-toggle,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-toggle,.uk-card-secondary.uk-card-body .uk-search-toggle,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-toggle,.uk-light .uk-search-toggle,.uk-offcanvas-bar .uk-search-toggle,.uk-overlay-primary .uk-search-toggle,.uk-section-primary:not(.uk-preserve-color) .uk-search-toggle,.uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle,.uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-search-toggle:focus,.uk-card-primary.uk-card-body .uk-search-toggle:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-toggle:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-search-toggle:hover,.uk-card-secondary.uk-card-body .uk-search-toggle:focus,.uk-card-secondary.uk-card-body .uk-search-toggle:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-toggle:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-search-toggle:hover,.uk-light .uk-search-toggle:focus,.uk-light .uk-search-toggle:hover,.uk-offcanvas-bar .uk-search-toggle:focus,.uk-offcanvas-bar .uk-search-toggle:hover,.uk-overlay-primary .uk-search-toggle:focus,.uk-overlay-primary .uk-search-toggle:hover,.uk-section-primary:not(.uk-preserve-color) .uk-search-toggle:focus,.uk-section-primary:not(.uk-preserve-color) .uk-search-toggle:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-nav-parent-icon>.uk-parent>a::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-parent-icon>.uk-parent>a::after,.uk-card-secondary.uk-card-body .uk-nav-parent-icon>.uk-parent>a::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-parent-icon>.uk-parent>a::after,.uk-light .uk-nav-parent-icon>.uk-parent>a::after,.uk-offcanvas-bar .uk-nav-parent-icon>.uk-parent>a::after,.uk-overlay-primary .uk-nav-parent-icon>.uk-parent>a::after,.uk-section-primary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent>a::after,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent>a::after,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent>a::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent>a::after{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-card-secondary.uk-card-body .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-light .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-offcanvas-bar .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-overlay-primary .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-section-primary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent.uk-open>a::after,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-parent-icon>.uk-parent.uk-open>a::after{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-nav-default>li>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default>li>a,.uk-card-secondary.uk-card-body .uk-nav-default>li>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default>li>a,.uk-light .uk-nav-default>li>a,.uk-offcanvas-bar .uk-nav-default>li>a,.uk-overlay-primary .uk-nav-default>li>a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default>li>a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default>li>a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default>li>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default>li>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-nav-default>li>a:focus,.uk-card-primary.uk-card-body .uk-nav-default>li>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default>li>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default>li>a:hover,.uk-card-secondary.uk-card-body .uk-nav-default>li>a:focus,.uk-card-secondary.uk-card-body .uk-nav-default>li>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default>li>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default>li>a:hover,.uk-light .uk-nav-default>li>a:focus,.uk-light .uk-nav-default>li>a:hover,.uk-offcanvas-bar .uk-nav-default>li>a:focus,.uk-offcanvas-bar .uk-nav-default>li>a:hover,.uk-overlay-primary .uk-nav-default>li>a:focus,.uk-overlay-primary .uk-nav-default>li>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default>li>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default>li>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default>li>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default>li>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default>li>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default>li>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default>li>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default>li>a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-nav-default>li.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default>li.uk-active>a,.uk-card-secondary.uk-card-body .uk-nav-default>li.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default>li.uk-active>a,.uk-light .uk-nav-default>li.uk-active>a,.uk-offcanvas-bar .uk-nav-default>li.uk-active>a,.uk-overlay-primary .uk-nav-default>li.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default>li.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default>li.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default>li.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default>li.uk-active>a{color:#fff}.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-header,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-header,.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-header,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-header,.uk-light .uk-nav-default .uk-nav-header,.uk-offcanvas-bar .uk-nav-default .uk-nav-header,.uk-overlay-primary .uk-nav-default .uk-nav-header,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header{color:#fff}.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-divider,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-divider,.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-divider,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-divider,.uk-light .uk-nav-default .uk-nav-divider,.uk-offcanvas-bar .uk-nav-default .uk-nav-divider,.uk-overlay-primary .uk-nav-default .uk-nav-divider,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider{border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a,.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a,.uk-light .uk-nav-default .uk-nav-sub a,.uk-offcanvas-bar .uk-nav-default .uk-nav-sub a,.uk-overlay-primary .uk-nav-default .uk-nav-sub a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a:focus,.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:hover,.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a:focus,.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:hover,.uk-light .uk-nav-default .uk-nav-sub a:focus,.uk-light .uk-nav-default .uk-nav-sub a:hover,.uk-offcanvas-bar .uk-nav-default .uk-nav-sub a:focus,.uk-offcanvas-bar .uk-nav-default .uk-nav-sub a:hover,.uk-overlay-primary .uk-nav-default .uk-nav-sub a:focus,.uk-overlay-primary .uk-nav-default .uk-nav-sub a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-nav-primary>li>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary>li>a,.uk-card-secondary.uk-card-body .uk-nav-primary>li>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary>li>a,.uk-light .uk-nav-primary>li>a,.uk-offcanvas-bar .uk-nav-primary>li>a,.uk-overlay-primary .uk-nav-primary>li>a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary>li>a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary>li>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-nav-primary>li>a:focus,.uk-card-primary.uk-card-body .uk-nav-primary>li>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary>li>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary>li>a:hover,.uk-card-secondary.uk-card-body .uk-nav-primary>li>a:focus,.uk-card-secondary.uk-card-body .uk-nav-primary>li>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary>li>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary>li>a:hover,.uk-light .uk-nav-primary>li>a:focus,.uk-light .uk-nav-primary>li>a:hover,.uk-offcanvas-bar .uk-nav-primary>li>a:focus,.uk-offcanvas-bar .uk-nav-primary>li>a:hover,.uk-overlay-primary .uk-nav-primary>li>a:focus,.uk-overlay-primary .uk-nav-primary>li>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary>li>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary>li>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary>li>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary>li>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary>li>a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-nav-primary>li.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary>li.uk-active>a,.uk-card-secondary.uk-card-body .uk-nav-primary>li.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary>li.uk-active>a,.uk-light .uk-nav-primary>li.uk-active>a,.uk-offcanvas-bar .uk-nav-primary>li.uk-active>a,.uk-overlay-primary .uk-nav-primary>li.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary>li.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary>li.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary>li.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary>li.uk-active>a{color:#fff}.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-header,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-header,.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-header,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-header,.uk-light .uk-nav-primary .uk-nav-header,.uk-offcanvas-bar .uk-nav-primary .uk-nav-header,.uk-overlay-primary .uk-nav-primary .uk-nav-header,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header{color:#fff}.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-divider,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-divider,.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-divider,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-divider,.uk-light .uk-nav-primary .uk-nav-divider,.uk-offcanvas-bar .uk-nav-primary .uk-nav-divider,.uk-overlay-primary .uk-nav-primary .uk-nav-divider,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider{border-top-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a,.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a,.uk-light .uk-nav-primary .uk-nav-sub a,.uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a,.uk-overlay-primary .uk-nav-primary .uk-nav-sub a,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a:focus,.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:hover,.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a:focus,.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:hover,.uk-light .uk-nav-primary .uk-nav-sub a:focus,.uk-light .uk-nav-primary .uk-nav-sub a:hover,.uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a:focus,.uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a:hover,.uk-overlay-primary .uk-nav-primary .uk-nav-sub a:focus,.uk-overlay-primary .uk-nav-primary .uk-nav-sub a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-navbar-nav>li>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a,.uk-card-secondary.uk-card-body .uk-navbar-nav>li>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a,.uk-light .uk-navbar-nav>li>a,.uk-offcanvas-bar .uk-navbar-nav>li>a,.uk-overlay-primary .uk-navbar-nav>li>a,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-navbar-nav>li:hover>a,.uk-card-primary.uk-card-body .uk-navbar-nav>li>a.uk-open,.uk-card-primary.uk-card-body .uk-navbar-nav>li>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li:hover>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a.uk-open,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a:focus,.uk-card-secondary.uk-card-body .uk-navbar-nav>li:hover>a,.uk-card-secondary.uk-card-body .uk-navbar-nav>li>a.uk-open,.uk-card-secondary.uk-card-body .uk-navbar-nav>li>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li:hover>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a.uk-open,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a:focus,.uk-light .uk-navbar-nav>li:hover>a,.uk-light .uk-navbar-nav>li>a.uk-open,.uk-light .uk-navbar-nav>li>a:focus,.uk-offcanvas-bar .uk-navbar-nav>li:hover>a,.uk-offcanvas-bar .uk-navbar-nav>li>a.uk-open,.uk-offcanvas-bar .uk-navbar-nav>li>a:focus,.uk-overlay-primary .uk-navbar-nav>li:hover>a,.uk-overlay-primary .uk-navbar-nav>li>a.uk-open,.uk-overlay-primary .uk-navbar-nav>li>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li:hover>a,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a.uk-open,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li:hover>a,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a.uk-open,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li:hover>a,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a.uk-open,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li:hover>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a.uk-open,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a:focus{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-navbar-nav>li>a:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a:active,.uk-card-secondary.uk-card-body .uk-navbar-nav>li>a:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li>a:active,.uk-light .uk-navbar-nav>li>a:active,.uk-offcanvas-bar .uk-navbar-nav>li>a:active,.uk-overlay-primary .uk-navbar-nav>li>a:active,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a:active,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a:active,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li>a:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li>a:active{color:#fff}.uk-card-primary.uk-card-body .uk-navbar-nav>li.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-nav>li.uk-active>a,.uk-card-secondary.uk-card-body .uk-navbar-nav>li.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-nav>li.uk-active>a,.uk-light .uk-navbar-nav>li.uk-active>a,.uk-offcanvas-bar .uk-navbar-nav>li.uk-active>a,.uk-overlay-primary .uk-navbar-nav>li.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav>li.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav>li.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav>li.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav>li.uk-active>a{color:#fff}.uk-card-primary.uk-card-body .uk-navbar-item,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-item,.uk-card-secondary.uk-card-body .uk-navbar-item,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-item,.uk-light .uk-navbar-item,.uk-offcanvas-bar .uk-navbar-item,.uk-overlay-primary .uk-navbar-item,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-item,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-item,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-item,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-item{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-navbar-toggle,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-toggle,.uk-card-secondary.uk-card-body .uk-navbar-toggle,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-toggle,.uk-light .uk-navbar-toggle,.uk-offcanvas-bar .uk-navbar-toggle,.uk-overlay-primary .uk-navbar-toggle,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-navbar-toggle.uk-open,.uk-card-primary.uk-card-body .uk-navbar-toggle:focus,.uk-card-primary.uk-card-body .uk-navbar-toggle:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-toggle.uk-open,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-toggle:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-navbar-toggle:hover,.uk-card-secondary.uk-card-body .uk-navbar-toggle.uk-open,.uk-card-secondary.uk-card-body .uk-navbar-toggle:focus,.uk-card-secondary.uk-card-body .uk-navbar-toggle:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-toggle.uk-open,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-toggle:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-navbar-toggle:hover,.uk-light .uk-navbar-toggle.uk-open,.uk-light .uk-navbar-toggle:focus,.uk-light .uk-navbar-toggle:hover,.uk-offcanvas-bar .uk-navbar-toggle.uk-open,.uk-offcanvas-bar .uk-navbar-toggle:focus,.uk-offcanvas-bar .uk-navbar-toggle:hover,.uk-overlay-primary .uk-navbar-toggle.uk-open,.uk-overlay-primary .uk-navbar-toggle:focus,.uk-overlay-primary .uk-navbar-toggle:hover,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle:focus,.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-subnav>*>:first-child,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav>*>:first-child,.uk-card-secondary.uk-card-body .uk-subnav>*>:first-child,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav>*>:first-child,.uk-light .uk-subnav>*>:first-child,.uk-offcanvas-bar .uk-subnav>*>:first-child,.uk-overlay-primary .uk-subnav>*>:first-child,.uk-section-primary:not(.uk-preserve-color) .uk-subnav>*>:first-child,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav>*>:first-child,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav>*>:first-child,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav>*>:first-child{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-subnav>*>a:focus,.uk-card-primary.uk-card-body .uk-subnav>*>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav>*>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav>*>a:hover,.uk-card-secondary.uk-card-body .uk-subnav>*>a:focus,.uk-card-secondary.uk-card-body .uk-subnav>*>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav>*>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav>*>a:hover,.uk-light .uk-subnav>*>a:focus,.uk-light .uk-subnav>*>a:hover,.uk-offcanvas-bar .uk-subnav>*>a:focus,.uk-offcanvas-bar .uk-subnav>*>a:hover,.uk-overlay-primary .uk-subnav>*>a:focus,.uk-overlay-primary .uk-subnav>*>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-subnav>*>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-subnav>*>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav>*>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav>*>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav>*>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav>*>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav>*>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav>*>a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-subnav>.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav>.uk-active>a,.uk-card-secondary.uk-card-body .uk-subnav>.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav>.uk-active>a,.uk-light .uk-subnav>.uk-active>a,.uk-offcanvas-bar .uk-subnav>.uk-active>a,.uk-overlay-primary .uk-subnav>.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-subnav>.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav>.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav>.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav>.uk-active>a{color:#fff}.uk-card-primary.uk-card-body .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-secondary.uk-card-body .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-light .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-offcanvas-bar .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-overlay-primary .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-divider>:nth-child(n+2):not(.uk-first-column)::before{border-left-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-subnav-pill>*>:first-child,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-pill>*>:first-child,.uk-card-secondary.uk-card-body .uk-subnav-pill>*>:first-child,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-pill>*>:first-child,.uk-light .uk-subnav-pill>*>:first-child,.uk-offcanvas-bar .uk-subnav-pill>*>:first-child,.uk-overlay-primary .uk-subnav-pill>*>:first-child,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill>*>:first-child,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>:first-child,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill>*>:first-child,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>:first-child{background-color:transparent;color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-subnav-pill>*>a:focus,.uk-card-primary.uk-card-body .uk-subnav-pill>*>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:hover,.uk-card-secondary.uk-card-body .uk-subnav-pill>*>a:focus,.uk-card-secondary.uk-card-body .uk-subnav-pill>*>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:hover,.uk-light .uk-subnav-pill>*>a:focus,.uk-light .uk-subnav-pill>*>a:hover,.uk-offcanvas-bar .uk-subnav-pill>*>a:focus,.uk-offcanvas-bar .uk-subnav-pill>*>a:hover,.uk-overlay-primary .uk-subnav-pill>*>a:focus,.uk-overlay-primary .uk-subnav-pill>*>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:hover{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-subnav-pill>*>a:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:active,.uk-card-secondary.uk-card-body .uk-subnav-pill>*>a:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-pill>*>a:active,.uk-light .uk-subnav-pill>*>a:active,.uk-offcanvas-bar .uk-subnav-pill>*>a:active,.uk-overlay-primary .uk-subnav-pill>*>a:active,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:active,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:active,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill>*>a:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill>*>a:active{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-subnav-pill>.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav-pill>.uk-active>a,.uk-card-secondary.uk-card-body .uk-subnav-pill>.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav-pill>.uk-active>a,.uk-light .uk-subnav-pill>.uk-active>a,.uk-offcanvas-bar .uk-subnav-pill>.uk-active>a,.uk-overlay-primary .uk-subnav-pill>.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill>.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill>.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill>.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill>.uk-active>a{background-color:#fff;color:#666}.uk-card-primary.uk-card-body .uk-subnav>.uk-disabled>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-subnav>.uk-disabled>a,.uk-card-secondary.uk-card-body .uk-subnav>.uk-disabled>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-subnav>.uk-disabled>a,.uk-light .uk-subnav>.uk-disabled>a,.uk-offcanvas-bar .uk-subnav>.uk-disabled>a,.uk-overlay-primary .uk-subnav>.uk-disabled>a,.uk-section-primary:not(.uk-preserve-color) .uk-subnav>.uk-disabled>a,.uk-section-secondary:not(.uk-preserve-color) .uk-subnav>.uk-disabled>a,.uk-tile-primary:not(.uk-preserve-color) .uk-subnav>.uk-disabled>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav>.uk-disabled>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-breadcrumb>*>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-breadcrumb>*>*,.uk-card-secondary.uk-card-body .uk-breadcrumb>*>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-breadcrumb>*>*,.uk-light .uk-breadcrumb>*>*,.uk-offcanvas-bar .uk-breadcrumb>*>*,.uk-overlay-primary .uk-breadcrumb>*>*,.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb>*>*,.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>*,.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb>*>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>*{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-breadcrumb>*>:focus,.uk-card-primary.uk-card-body .uk-breadcrumb>*>:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-breadcrumb>*>:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-breadcrumb>*>:hover,.uk-card-secondary.uk-card-body .uk-breadcrumb>*>:focus,.uk-card-secondary.uk-card-body .uk-breadcrumb>*>:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-breadcrumb>*>:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-breadcrumb>*>:hover,.uk-light .uk-breadcrumb>*>:focus,.uk-light .uk-breadcrumb>*>:hover,.uk-offcanvas-bar .uk-breadcrumb>*>:focus,.uk-offcanvas-bar .uk-breadcrumb>*>:hover,.uk-overlay-primary .uk-breadcrumb>*>:focus,.uk-overlay-primary .uk-breadcrumb>*>:hover,.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb>*>:focus,.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb>*>:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb>*>:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb>*>:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb>*>:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-breadcrumb>:last-child>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-breadcrumb>:last-child>*,.uk-card-secondary.uk-card-body .uk-breadcrumb>:last-child>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-breadcrumb>:last-child>*,.uk-light .uk-breadcrumb>:last-child>*,.uk-offcanvas-bar .uk-breadcrumb>:last-child>*,.uk-overlay-primary .uk-breadcrumb>:last-child>*,.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb>:last-child>*,.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb>:last-child>*,.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb>:last-child>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb>:last-child>*{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-secondary.uk-card-body .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-light .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-offcanvas-bar .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-overlay-primary .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb>:nth-child(n+2):not(.uk-first-column)::before{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-pagination>*>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-pagination>*>*,.uk-card-secondary.uk-card-body .uk-pagination>*>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-pagination>*>*,.uk-light .uk-pagination>*>*,.uk-offcanvas-bar .uk-pagination>*>*,.uk-overlay-primary .uk-pagination>*>*,.uk-section-primary:not(.uk-preserve-color) .uk-pagination>*>*,.uk-section-secondary:not(.uk-preserve-color) .uk-pagination>*>*,.uk-tile-primary:not(.uk-preserve-color) .uk-pagination>*>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination>*>*{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-pagination>*>:focus,.uk-card-primary.uk-card-body .uk-pagination>*>:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-pagination>*>:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-pagination>*>:hover,.uk-card-secondary.uk-card-body .uk-pagination>*>:focus,.uk-card-secondary.uk-card-body .uk-pagination>*>:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-pagination>*>:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-pagination>*>:hover,.uk-light .uk-pagination>*>:focus,.uk-light .uk-pagination>*>:hover,.uk-offcanvas-bar .uk-pagination>*>:focus,.uk-offcanvas-bar .uk-pagination>*>:hover,.uk-overlay-primary .uk-pagination>*>:focus,.uk-overlay-primary .uk-pagination>*>:hover,.uk-section-primary:not(.uk-preserve-color) .uk-pagination>*>:focus,.uk-section-primary:not(.uk-preserve-color) .uk-pagination>*>:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-pagination>*>:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-pagination>*>:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-pagination>*>:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-pagination>*>:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination>*>:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination>*>:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-pagination>.uk-active>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-pagination>.uk-active>*,.uk-card-secondary.uk-card-body .uk-pagination>.uk-active>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-pagination>.uk-active>*,.uk-light .uk-pagination>.uk-active>*,.uk-offcanvas-bar .uk-pagination>.uk-active>*,.uk-overlay-primary .uk-pagination>.uk-active>*,.uk-section-primary:not(.uk-preserve-color) .uk-pagination>.uk-active>*,.uk-section-secondary:not(.uk-preserve-color) .uk-pagination>.uk-active>*,.uk-tile-primary:not(.uk-preserve-color) .uk-pagination>.uk-active>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination>.uk-active>*{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-pagination>.uk-disabled>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-pagination>.uk-disabled>*,.uk-card-secondary.uk-card-body .uk-pagination>.uk-disabled>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-pagination>.uk-disabled>*,.uk-light .uk-pagination>.uk-disabled>*,.uk-offcanvas-bar .uk-pagination>.uk-disabled>*,.uk-overlay-primary .uk-pagination>.uk-disabled>*,.uk-section-primary:not(.uk-preserve-color) .uk-pagination>.uk-disabled>*,.uk-section-secondary:not(.uk-preserve-color) .uk-pagination>.uk-disabled>*,.uk-tile-primary:not(.uk-preserve-color) .uk-pagination>.uk-disabled>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination>.uk-disabled>*{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-tab::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab::before,.uk-card-secondary.uk-card-body .uk-tab::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab::before,.uk-light .uk-tab::before,.uk-offcanvas-bar .uk-tab::before,.uk-overlay-primary .uk-tab::before,.uk-section-primary:not(.uk-preserve-color) .uk-tab::before,.uk-section-secondary:not(.uk-preserve-color) .uk-tab::before,.uk-tile-primary:not(.uk-preserve-color) .uk-tab::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab::before{border-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-tab>*>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab>*>a,.uk-card-secondary.uk-card-body .uk-tab>*>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab>*>a,.uk-light .uk-tab>*>a,.uk-offcanvas-bar .uk-tab>*>a,.uk-overlay-primary .uk-tab>*>a,.uk-section-primary:not(.uk-preserve-color) .uk-tab>*>a,.uk-section-secondary:not(.uk-preserve-color) .uk-tab>*>a,.uk-tile-primary:not(.uk-preserve-color) .uk-tab>*>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab>*>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-tab>*>a:focus,.uk-card-primary.uk-card-body .uk-tab>*>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab>*>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab>*>a:hover,.uk-card-secondary.uk-card-body .uk-tab>*>a:focus,.uk-card-secondary.uk-card-body .uk-tab>*>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab>*>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab>*>a:hover,.uk-light .uk-tab>*>a:focus,.uk-light .uk-tab>*>a:hover,.uk-offcanvas-bar .uk-tab>*>a:focus,.uk-offcanvas-bar .uk-tab>*>a:hover,.uk-overlay-primary .uk-tab>*>a:focus,.uk-overlay-primary .uk-tab>*>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-tab>*>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-tab>*>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-tab>*>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-tab>*>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-tab>*>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-tab>*>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab>*>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab>*>a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-tab>.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab>.uk-active>a,.uk-card-secondary.uk-card-body .uk-tab>.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab>.uk-active>a,.uk-light .uk-tab>.uk-active>a,.uk-offcanvas-bar .uk-tab>.uk-active>a,.uk-overlay-primary .uk-tab>.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-tab>.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-tab>.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-tab>.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab>.uk-active>a{color:#fff;border-color:#fff}.uk-card-primary.uk-card-body .uk-tab>.uk-disabled>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-tab>.uk-disabled>a,.uk-card-secondary.uk-card-body .uk-tab>.uk-disabled>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-tab>.uk-disabled>a,.uk-light .uk-tab>.uk-disabled>a,.uk-offcanvas-bar .uk-tab>.uk-disabled>a,.uk-overlay-primary .uk-tab>.uk-disabled>a,.uk-section-primary:not(.uk-preserve-color) .uk-tab>.uk-disabled>a,.uk-section-secondary:not(.uk-preserve-color) .uk-tab>.uk-disabled>a,.uk-tile-primary:not(.uk-preserve-color) .uk-tab>.uk-disabled>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-tab>.uk-disabled>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-slidenav,.uk-card-primary>:not([class*=uk-card-media]) .uk-slidenav,.uk-card-secondary.uk-card-body .uk-slidenav,.uk-card-secondary>:not([class*=uk-card-media]) .uk-slidenav,.uk-light .uk-slidenav,.uk-offcanvas-bar .uk-slidenav,.uk-overlay-primary .uk-slidenav,.uk-section-primary:not(.uk-preserve-color) .uk-slidenav,.uk-section-secondary:not(.uk-preserve-color) .uk-slidenav,.uk-tile-primary:not(.uk-preserve-color) .uk-slidenav,.uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-slidenav:focus,.uk-card-primary.uk-card-body .uk-slidenav:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-slidenav:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-slidenav:hover,.uk-card-secondary.uk-card-body .uk-slidenav:focus,.uk-card-secondary.uk-card-body .uk-slidenav:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-slidenav:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-slidenav:hover,.uk-light .uk-slidenav:focus,.uk-light .uk-slidenav:hover,.uk-offcanvas-bar .uk-slidenav:focus,.uk-offcanvas-bar .uk-slidenav:hover,.uk-overlay-primary .uk-slidenav:focus,.uk-overlay-primary .uk-slidenav:hover,.uk-section-primary:not(.uk-preserve-color) .uk-slidenav:focus,.uk-section-primary:not(.uk-preserve-color) .uk-slidenav:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:hover{color:rgba(255,255,255,.95)}.uk-card-primary.uk-card-body .uk-slidenav:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-slidenav:active,.uk-card-secondary.uk-card-body .uk-slidenav:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-slidenav:active,.uk-light .uk-slidenav:active,.uk-offcanvas-bar .uk-slidenav:active,.uk-overlay-primary .uk-slidenav:active,.uk-section-primary:not(.uk-preserve-color) .uk-slidenav:active,.uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:active,.uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:active{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-dotnav>*>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-dotnav>*>*,.uk-card-secondary.uk-card-body .uk-dotnav>*>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-dotnav>*>*,.uk-light .uk-dotnav>*>*,.uk-offcanvas-bar .uk-dotnav>*>*,.uk-overlay-primary .uk-dotnav>*>*,.uk-section-primary:not(.uk-preserve-color) .uk-dotnav>*>*,.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav>*>*,.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav>*>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav>*>*{background-color:transparent;border-color:rgba(255,255,255,.9)}.uk-card-primary.uk-card-body .uk-dotnav>*>:focus,.uk-card-primary.uk-card-body .uk-dotnav>*>:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-dotnav>*>:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-dotnav>*>:hover,.uk-card-secondary.uk-card-body .uk-dotnav>*>:focus,.uk-card-secondary.uk-card-body .uk-dotnav>*>:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-dotnav>*>:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-dotnav>*>:hover,.uk-light .uk-dotnav>*>:focus,.uk-light .uk-dotnav>*>:hover,.uk-offcanvas-bar .uk-dotnav>*>:focus,.uk-offcanvas-bar .uk-dotnav>*>:hover,.uk-overlay-primary .uk-dotnav>*>:focus,.uk-overlay-primary .uk-dotnav>*>:hover,.uk-section-primary:not(.uk-preserve-color) .uk-dotnav>*>:focus,.uk-section-primary:not(.uk-preserve-color) .uk-dotnav>*>:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav>*>:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav>*>:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav>*>:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav>*>:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav>*>:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav>*>:hover{background-color:rgba(255,255,255,.9);border-color:transparent}.uk-card-primary.uk-card-body .uk-dotnav>*>:active,.uk-card-primary>:not([class*=uk-card-media]) .uk-dotnav>*>:active,.uk-card-secondary.uk-card-body .uk-dotnav>*>:active,.uk-card-secondary>:not([class*=uk-card-media]) .uk-dotnav>*>:active,.uk-light .uk-dotnav>*>:active,.uk-offcanvas-bar .uk-dotnav>*>:active,.uk-overlay-primary .uk-dotnav>*>:active,.uk-section-primary:not(.uk-preserve-color) .uk-dotnav>*>:active,.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav>*>:active,.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav>*>:active,.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav>*>:active{background-color:rgba(255,255,255,.5);border-color:transparent}.uk-card-primary.uk-card-body .uk-dotnav>.uk-active>*,.uk-card-primary>:not([class*=uk-card-media]) .uk-dotnav>.uk-active>*,.uk-card-secondary.uk-card-body .uk-dotnav>.uk-active>*,.uk-card-secondary>:not([class*=uk-card-media]) .uk-dotnav>.uk-active>*,.uk-light .uk-dotnav>.uk-active>*,.uk-offcanvas-bar .uk-dotnav>.uk-active>*,.uk-overlay-primary .uk-dotnav>.uk-active>*,.uk-section-primary:not(.uk-preserve-color) .uk-dotnav>.uk-active>*,.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav>.uk-active>*,.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav>.uk-active>*,.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav>.uk-active>*{background-color:rgba(255,255,255,.9);border-color:transparent}.uk-card-primary.uk-card-body .uk-accordion-title,.uk-card-primary>:not([class*=uk-card-media]) .uk-accordion-title,.uk-card-secondary.uk-card-body .uk-accordion-title,.uk-card-secondary>:not([class*=uk-card-media]) .uk-accordion-title,.uk-light .uk-accordion-title,.uk-offcanvas-bar .uk-accordion-title,.uk-overlay-primary .uk-accordion-title,.uk-section-primary:not(.uk-preserve-color) .uk-accordion-title,.uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title,.uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title,.uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title{color:#fff}.uk-card-primary.uk-card-body .uk-accordion-title:focus,.uk-card-primary.uk-card-body .uk-accordion-title:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-accordion-title:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-accordion-title:hover,.uk-card-secondary.uk-card-body .uk-accordion-title:focus,.uk-card-secondary.uk-card-body .uk-accordion-title:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-accordion-title:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-accordion-title:hover,.uk-light .uk-accordion-title:focus,.uk-light .uk-accordion-title:hover,.uk-offcanvas-bar .uk-accordion-title:focus,.uk-offcanvas-bar .uk-accordion-title:hover,.uk-overlay-primary .uk-accordion-title:focus,.uk-overlay-primary .uk-accordion-title:hover,.uk-section-primary:not(.uk-preserve-color) .uk-accordion-title:focus,.uk-section-primary:not(.uk-preserve-color) .uk-accordion-title:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-iconnav>*>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-iconnav>*>a,.uk-card-secondary.uk-card-body .uk-iconnav>*>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-iconnav>*>a,.uk-light .uk-iconnav>*>a,.uk-offcanvas-bar .uk-iconnav>*>a,.uk-overlay-primary .uk-iconnav>*>a,.uk-section-primary:not(.uk-preserve-color) .uk-iconnav>*>a,.uk-section-secondary:not(.uk-preserve-color) .uk-iconnav>*>a,.uk-tile-primary:not(.uk-preserve-color) .uk-iconnav>*>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav>*>a{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-iconnav>*>a:focus,.uk-card-primary.uk-card-body .uk-iconnav>*>a:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-iconnav>*>a:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-iconnav>*>a:hover,.uk-card-secondary.uk-card-body .uk-iconnav>*>a:focus,.uk-card-secondary.uk-card-body .uk-iconnav>*>a:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-iconnav>*>a:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-iconnav>*>a:hover,.uk-light .uk-iconnav>*>a:focus,.uk-light .uk-iconnav>*>a:hover,.uk-offcanvas-bar .uk-iconnav>*>a:focus,.uk-offcanvas-bar .uk-iconnav>*>a:hover,.uk-overlay-primary .uk-iconnav>*>a:focus,.uk-overlay-primary .uk-iconnav>*>a:hover,.uk-section-primary:not(.uk-preserve-color) .uk-iconnav>*>a:focus,.uk-section-primary:not(.uk-preserve-color) .uk-iconnav>*>a:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-iconnav>*>a:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-iconnav>*>a:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-iconnav>*>a:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-iconnav>*>a:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav>*>a:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav>*>a:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-iconnav>.uk-active>a,.uk-card-primary>:not([class*=uk-card-media]) .uk-iconnav>.uk-active>a,.uk-card-secondary.uk-card-body .uk-iconnav>.uk-active>a,.uk-card-secondary>:not([class*=uk-card-media]) .uk-iconnav>.uk-active>a,.uk-light .uk-iconnav>.uk-active>a,.uk-offcanvas-bar .uk-iconnav>.uk-active>a,.uk-overlay-primary .uk-iconnav>.uk-active>a,.uk-section-primary:not(.uk-preserve-color) .uk-iconnav>.uk-active>a,.uk-section-secondary:not(.uk-preserve-color) .uk-iconnav>.uk-active>a,.uk-tile-primary:not(.uk-preserve-color) .uk-iconnav>.uk-active>a,.uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav>.uk-active>a{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-text-lead,.uk-card-primary>:not([class*=uk-card-media]) .uk-text-lead,.uk-card-secondary.uk-card-body .uk-text-lead,.uk-card-secondary>:not([class*=uk-card-media]) .uk-text-lead,.uk-light .uk-text-lead,.uk-offcanvas-bar .uk-text-lead,.uk-overlay-primary .uk-text-lead,.uk-section-primary:not(.uk-preserve-color) .uk-text-lead,.uk-section-secondary:not(.uk-preserve-color) .uk-text-lead,.uk-tile-primary:not(.uk-preserve-color) .uk-text-lead,.uk-tile-secondary:not(.uk-preserve-color) .uk-text-lead{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-text-meta,.uk-card-primary>:not([class*=uk-card-media]) .uk-text-meta,.uk-card-secondary.uk-card-body .uk-text-meta,.uk-card-secondary>:not([class*=uk-card-media]) .uk-text-meta,.uk-light .uk-text-meta,.uk-offcanvas-bar .uk-text-meta,.uk-overlay-primary .uk-text-meta,.uk-section-primary:not(.uk-preserve-color) .uk-text-meta,.uk-section-secondary:not(.uk-preserve-color) .uk-text-meta,.uk-tile-primary:not(.uk-preserve-color) .uk-text-meta,.uk-tile-secondary:not(.uk-preserve-color) .uk-text-meta{color:rgba(255,255,255,.5)}.uk-card-primary.uk-card-body .uk-text-muted,.uk-card-primary>:not([class*=uk-card-media]) .uk-text-muted,.uk-card-secondary.uk-card-body .uk-text-muted,.uk-card-secondary>:not([class*=uk-card-media]) .uk-text-muted,.uk-light .uk-text-muted,.uk-offcanvas-bar .uk-text-muted,.uk-overlay-primary .uk-text-muted,.uk-section-primary:not(.uk-preserve-color) .uk-text-muted,.uk-section-secondary:not(.uk-preserve-color) .uk-text-muted,.uk-tile-primary:not(.uk-preserve-color) .uk-text-muted,.uk-tile-secondary:not(.uk-preserve-color) .uk-text-muted{color:rgba(255,255,255,.5)!important}.uk-card-primary.uk-card-body .uk-text-primary,.uk-card-primary>:not([class*=uk-card-media]) .uk-text-primary,.uk-card-secondary.uk-card-body .uk-text-primary,.uk-card-secondary>:not([class*=uk-card-media]) .uk-text-primary,.uk-light .uk-text-primary,.uk-offcanvas-bar .uk-text-primary,.uk-overlay-primary .uk-text-primary,.uk-section-primary:not(.uk-preserve-color) .uk-text-primary,.uk-section-secondary:not(.uk-preserve-color) .uk-text-primary,.uk-tile-primary:not(.uk-preserve-color) .uk-text-primary,.uk-tile-secondary:not(.uk-preserve-color) .uk-text-primary{color:rgba(255,255,255,.7)!important}.uk-card-primary.uk-card-body .uk-column-divider,.uk-card-primary>:not([class*=uk-card-media]) .uk-column-divider,.uk-card-secondary.uk-card-body .uk-column-divider,.uk-card-secondary>:not([class*=uk-card-media]) .uk-column-divider,.uk-light .uk-column-divider,.uk-offcanvas-bar .uk-column-divider,.uk-overlay-primary .uk-column-divider,.uk-section-primary:not(.uk-preserve-color) .uk-column-divider,.uk-section-secondary:not(.uk-preserve-color) .uk-column-divider,.uk-tile-primary:not(.uk-preserve-color) .uk-column-divider,.uk-tile-secondary:not(.uk-preserve-color) .uk-column-divider{column-rule-color:rgba(255,255,255,.2)}.uk-card-primary.uk-card-body .uk-logo,.uk-card-primary>:not([class*=uk-card-media]) .uk-logo,.uk-card-secondary.uk-card-body .uk-logo,.uk-card-secondary>:not([class*=uk-card-media]) .uk-logo,.uk-light .uk-logo,.uk-offcanvas-bar .uk-logo,.uk-overlay-primary .uk-logo,.uk-section-primary:not(.uk-preserve-color) .uk-logo,.uk-section-secondary:not(.uk-preserve-color) .uk-logo,.uk-tile-primary:not(.uk-preserve-color) .uk-logo,.uk-tile-secondary:not(.uk-preserve-color) .uk-logo{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-logo:focus,.uk-card-primary.uk-card-body .uk-logo:hover,.uk-card-primary>:not([class*=uk-card-media]) .uk-logo:focus,.uk-card-primary>:not([class*=uk-card-media]) .uk-logo:hover,.uk-card-secondary.uk-card-body .uk-logo:focus,.uk-card-secondary.uk-card-body .uk-logo:hover,.uk-card-secondary>:not([class*=uk-card-media]) .uk-logo:focus,.uk-card-secondary>:not([class*=uk-card-media]) .uk-logo:hover,.uk-light .uk-logo:focus,.uk-light .uk-logo:hover,.uk-offcanvas-bar .uk-logo:focus,.uk-offcanvas-bar .uk-logo:hover,.uk-overlay-primary .uk-logo:focus,.uk-overlay-primary .uk-logo:hover,.uk-section-primary:not(.uk-preserve-color) .uk-logo:focus,.uk-section-primary:not(.uk-preserve-color) .uk-logo:hover,.uk-section-secondary:not(.uk-preserve-color) .uk-logo:focus,.uk-section-secondary:not(.uk-preserve-color) .uk-logo:hover,.uk-tile-primary:not(.uk-preserve-color) .uk-logo:focus,.uk-tile-primary:not(.uk-preserve-color) .uk-logo:hover,.uk-tile-secondary:not(.uk-preserve-color) .uk-logo:focus,.uk-tile-secondary:not(.uk-preserve-color) .uk-logo:hover{color:rgba(255,255,255,.7)}.uk-card-primary.uk-card-body .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-card-primary>:not([class*=uk-card-media]) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-card-secondary.uk-card-body .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-card-secondary>:not([class*=uk-card-media]) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-light .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-offcanvas-bar .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-overlay-primary .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-section-primary:not(.uk-preserve-color) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-section-secondary:not(.uk-preserve-color) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-tile-primary:not(.uk-preserve-color) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type),.uk-tile-secondary:not(.uk-preserve-color) .uk-logo>:not(.uk-logo-inverse):not(:only-of-type){display:none}.uk-card-primary.uk-card-body .uk-logo-inverse,.uk-card-primary>:not([class*=uk-card-media]) .uk-logo-inverse,.uk-card-secondary.uk-card-body .uk-logo-inverse,.uk-card-secondary>:not([class*=uk-card-media]) .uk-logo-inverse,.uk-light .uk-logo-inverse,.uk-offcanvas-bar .uk-logo-inverse,.uk-overlay-primary .uk-logo-inverse,.uk-section-primary:not(.uk-preserve-color) .uk-logo-inverse,.uk-section-secondary:not(.uk-preserve-color) .uk-logo-inverse,.uk-tile-primary:not(.uk-preserve-color) .uk-logo-inverse,.uk-tile-secondary:not(.uk-preserve-color) .uk-logo-inverse{display:inline}.uk-card-primary.uk-card-body .uk-accordion-title::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-accordion-title::before,.uk-card-secondary.uk-card-body .uk-accordion-title::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-accordion-title::before,.uk-light .uk-accordion-title::before,.uk-offcanvas-bar .uk-accordion-title::before,.uk-overlay-primary .uk-accordion-title::before,.uk-section-primary:not(.uk-preserve-color) .uk-accordion-title::before,.uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title::before,.uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title::before{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E")}.uk-card-primary.uk-card-body .uk-open>.uk-accordion-title::before,.uk-card-primary>:not([class*=uk-card-media]) .uk-open>.uk-accordion-title::before,.uk-card-secondary.uk-card-body .uk-open>.uk-accordion-title::before,.uk-card-secondary>:not([class*=uk-card-media]) .uk-open>.uk-accordion-title::before,.uk-light .uk-open>.uk-accordion-title::before,.uk-offcanvas-bar .uk-open>.uk-accordion-title::before,.uk-overlay-primary .uk-open>.uk-accordion-title::before,.uk-section-primary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before,.uk-section-secondary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before,.uk-tile-primary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before,.uk-tile-secondary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.7%29%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E")}@media print{*,::after,::before{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}
|
admin/admin.php
CHANGED
@@ -27,164 +27,233 @@ function wpinked_so_admin_page() {
|
|
27 |
'wpinked-widgets',
|
28 |
'wpinked_so_admin_page_content'
|
29 |
);
|
30 |
-
|
31 |
-
// add_submenu_page(
|
32 |
-
// 'wpinked-widgets',
|
33 |
-
// 'Craft',
|
34 |
-
// __( 'Craft Theme', 'wpinked-widgets' ),
|
35 |
-
// 'manage_options',
|
36 |
-
// 'wpinked-craft-theme',
|
37 |
-
// 'wpinked_so_admin_craft'
|
38 |
-
// );
|
39 |
}
|
40 |
add_action( 'admin_menu', 'wpinked_so_admin_page' );
|
41 |
|
42 |
-
// function wpinked_so_admin_craft_external_link() {
|
43 |
-
// $menu_redirect = isset( $_GET['page'] ) ? $_GET['page'] : false;
|
44 |
-
// if ( $menu_redirect == 'wpinked-craft-theme' ) {
|
45 |
-
// header( 'Location: https://wpinked.com/downloads/craft-theme/ ' );
|
46 |
-
// exit();
|
47 |
-
// }
|
48 |
-
// }
|
49 |
-
// add_action( 'admin_init', 'wpinked_so_admin_craft_external_link', 1 );
|
50 |
-
|
51 |
function wpinked_so_admin_page_content() {
|
52 |
?>
|
53 |
-
<
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
<
|
79 |
-
<p class="
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
<h3 class="feature-title">Blog Slider</h3>
|
90 |
-
<p class="feature-content">This widget lets you easily add eye catching post sliders anywhere on your website. It is typically used at the top of pages and goes great in conjunction with the Blog Widget.</p>
|
91 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/blog-slider-widget/" target="_blank">Demo</a></p>
|
92 |
-
</div>
|
93 |
-
<div class="feature">
|
94 |
-
<h3 class="feature-title">Charts</h3>
|
95 |
-
<p class="feature-content">This widget allows you to visualise your data in a number of different ways. Choose from 6 chart types, each of them animated, fully customisable and engaging.</p>
|
96 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/chart-widget/" target="_blank">Demo</a></p>
|
97 |
-
</div>
|
98 |
-
<div class="feature">
|
99 |
-
<h3 class="feature-title">Person Slider</h3>
|
100 |
-
<p class="feature-content">This widget is perfectly suited to showcase your personnel on About Me or Team Member pages, where you would like to highlight their bio. It brings together text, imagery, social media links and a smooth slider in a cohesive manner.</p>
|
101 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/person-slider-widget/" target="_blank">Demo</a></p>
|
102 |
-
</div>
|
103 |
-
<div class="row-sep"></div>
|
104 |
-
<div class="feature">
|
105 |
-
<h3 class="feature-title">Testimonial Slider</h3>
|
106 |
-
<p class="feature-content">This widget gives you is a great way to encourage trust from your visitors by displaying quotes from your customers. It fits snuggly in your Sales, Pricing or Home pages.</p>
|
107 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/testimonial-slider-widget/" target="_blank">Demo</a></p>
|
108 |
-
</div>
|
109 |
-
<div class="feature">
|
110 |
-
<h3 class="feature-title">Flip Box</h3>
|
111 |
-
<p class="feature-content">The Flip Box widget is a simple and elegant combination of text and media. This widget is a fantastic way to highlight small bits of information, such as skills, features or services you offer.</p>
|
112 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/flip-box-widget/" target="_blank">Demo</a></p>
|
113 |
-
</div>
|
114 |
-
<div class="feature">
|
115 |
-
<h3 class="feature-title">Vertical Bar Counter</h3>
|
116 |
-
<p class="feature-content">Animated bars to display your stats.</p>
|
117 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/vertical-bar-counter-widget/" target="_blank">Demo</a></p>
|
118 |
-
</div>
|
119 |
-
<div class="row-sep"></div>
|
120 |
-
<div class="feature">
|
121 |
-
<h3 class="feature-title">Service Box</h3>
|
122 |
-
<p class="feature-content">List out services with their features in a visually pleasing list. You can also add an image or icon.</p>
|
123 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/service-box-widget/" target="_blank">Demo</a></p>
|
124 |
-
</div>
|
125 |
-
<div class="feature">
|
126 |
-
<h3 class="feature-title">Gallery</h3>
|
127 |
-
<p class="feature-content">Present your image collections in a visually rich masonry layout. It is complemented well with the lightbox feature.</p>
|
128 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/gallery-widget/" target="_blank">Demo</a></p>
|
129 |
-
</div>
|
130 |
-
<div class="feature">
|
131 |
-
<h3 class="feature-title">Slider Pro</h3>
|
132 |
-
<p class="feature-content">This widget gives you is a great way to encourage trust from your visitors by displaying quotes from your customers. It fits snuggly in your Sales, Pricing or Home pages.</p>
|
133 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/slider-pro-widget/" target="_blank">Demo</a></p>
|
134 |
-
</div>
|
135 |
-
<div class="row-sep"></div>
|
136 |
-
<div class="feature">
|
137 |
-
<h3 class="feature-title">Animations</h3>
|
138 |
-
<p class="feature-content">This feature gives you an easy way to animate widgets and rows. Choose from 18 different animation effects.</p>
|
139 |
-
<p class="feature-links"><a href="http://widgets.wpinked.com/the-animation-feature/" target="_blank">Demo</a</p>
|
140 |
-
</div>
|
141 |
-
<div class="feature">
|
142 |
-
<h3 class="feature-title">Page Builder</h3>
|
143 |
-
<p class="feature-content">This feature enables the use of the page builder in tabs, accordions and filter accordions.</p>
|
144 |
-
</div>
|
145 |
-
<div class="feature">
|
146 |
-
<h3 class="feature-title">Custom Fonts</h3>
|
147 |
-
<p class="feature-content">This feature lets you apply custom fonts to important elements in your widgets. Choose from hundreds of fonts.</p>
|
148 |
-
</div>
|
149 |
-
<div class="row-sep"></div>
|
150 |
-
<div class="feature">
|
151 |
-
<h3 class="feature-title">Image Lightbox</h3>
|
152 |
-
<p class="feature-content">Let users have a closer look at photos and images with the image and gallery widgets.</p>
|
153 |
-
</div>
|
154 |
-
<div class="row-sep"></div>
|
155 |
-
<div class="buy-pro">
|
156 |
-
<a href="https://wpinked.com/downloads/widgets-for-siteorigin-pro/" target="_blank">
|
157 |
-
<img src="<?php echo plugin_dir_url(__FILE__); ?>img/get-pro-now.jpg">
|
158 |
-
</a>
|
159 |
</div>
|
160 |
</div>
|
161 |
-
|
162 |
</div>
|
163 |
-
|
164 |
</div>
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
<
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
</div>
|
186 |
-
|
187 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
188 |
|
189 |
<?php
|
190 |
}
|
27 |
'wpinked-widgets',
|
28 |
'wpinked_so_admin_page_content'
|
29 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
}
|
31 |
add_action( 'admin_menu', 'wpinked_so_admin_page' );
|
32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
function wpinked_so_admin_page_content() {
|
34 |
?>
|
35 |
+
<style>
|
36 |
+
.uk-text-lead {
|
37 |
+
color: #777;
|
38 |
+
font-size: 18px;
|
39 |
+
}
|
40 |
+
.uk-badge {
|
41 |
+
background: #be003a;
|
42 |
+
font-size: 10px;
|
43 |
+
border-radius: 15px;
|
44 |
+
}
|
45 |
+
.uk-active a {
|
46 |
+
background: #be003a !important;
|
47 |
+
outline: 0;
|
48 |
+
box-shadow: none;
|
49 |
+
}
|
50 |
+
.uk-active a:focus {
|
51 |
+
box-shadow: none;
|
52 |
+
}
|
53 |
+
</style>
|
54 |
+
<div class="uk-section uk-padding-remove">
|
55 |
+
<div class="uk-container uk-container-expand">
|
56 |
+
<div class="uk-inline uk-width-1-1">
|
57 |
+
<img style="max-height: 700px;" class="uk-width-1-1" src="<?php echo plugin_dir_url(__FILE__); ?>img/lowpoly.png" alt="tag-content">
|
58 |
+
<div class="uk-overlay uk-position-center">
|
59 |
+
<h4 class="uk-text-center" style="color: white;">Thank you for installing</h4>
|
60 |
+
<center><img src="<?php echo plugin_dir_url(__FILE__); ?>img/text-name.png" alt="tag-content"></center>
|
61 |
+
<p class="uk-text-center">
|
62 |
+
<a class="uk-button uk-button-secondary uk-button-small" href="http://widgets.wpinked.com/" target="_blank">Live Demo</a>
|
63 |
+
<a class="uk-button uk-button-primary uk-button-small" href="https://wpinked.com/widgets-for-siteorigin-docs/" target="_blank">Documentation</a>
|
64 |
+
<a class="uk-button uk-button-danger uk-button-small" href="https://wpinked.com/forums/" target="_blank">Support</a>
|
65 |
+
</p>
|
66 |
+
<?php if( ! function_exists( 'wpinked_pro_so_widgets' ) ) : ?>
|
67 |
+
<p class="uk-text-center uk-margin-large">
|
68 |
+
<a class="uk-button uk-button-default uk-button-large" style="color:#fff" href="https://wpinked.com/downloads/widgets-for-siteorigin-pro/" target="_blank">Upgrade to Pro</a>
|
69 |
+
</p>
|
70 |
+
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
</div>
|
72 |
</div>
|
|
|
73 |
</div>
|
|
|
74 |
</div>
|
75 |
+
<div class="uk-section">
|
76 |
+
<div class="uk-container uk-container-expand">
|
77 |
+
<div uk-filter="target: .js-filter">
|
78 |
+
<ul class="uk-subnav uk-subnav-pill">
|
79 |
+
<li class="uk-active" uk-filter-control><a href="#">All</a></li>
|
80 |
+
<li uk-filter-control=".tag-basic"><a href="#">Basic</a></li>
|
81 |
+
<li uk-filter-control=".tag-content"><a href="#">Content</a></li>
|
82 |
+
<li uk-filter-control=".tag-posts"><a href="#">Post Type</a></li>
|
83 |
+
<li uk-filter-control=".tag-stats"><a href="#">Stats</a></li>
|
84 |
+
<li uk-filter-control=".tag-media"><a href="#">Media</a></li>
|
85 |
+
<li uk-filter-control=".tag-social"><a href="#">Social</a></li>
|
86 |
+
<li uk-filter-control=".tag-features"><a href="#">Features</a></li>
|
87 |
+
</ul>
|
88 |
+
<div class="uk-child-width-1-2@s uk-child-width-1-3@m uk-child-width-1-4@l uk-text-center js-filter" uk-grid>
|
89 |
+
<div class="tag-basic">
|
90 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Alert</div>
|
91 |
+
</div>
|
92 |
+
<div class="tag-basic">
|
93 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Button</div>
|
94 |
+
</div>
|
95 |
+
<div class="tag-basic">
|
96 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Divider</div>
|
97 |
+
</div>
|
98 |
+
<div class="tag-content">
|
99 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Accordion</div>
|
100 |
+
</div>
|
101 |
+
<div class="tag-content">
|
102 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Tabs</div>
|
103 |
+
</div>
|
104 |
+
<div class="tag-content">
|
105 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Filter Accordion</div>
|
106 |
+
</div>
|
107 |
+
<div class="tag-content">
|
108 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Call to Action</div>
|
109 |
+
</div>
|
110 |
+
<div class="tag-content">
|
111 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Pricing Table</div>
|
112 |
+
</div>
|
113 |
+
<div class="tag-content">
|
114 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Media Box</div>
|
115 |
+
</div>
|
116 |
+
<div class="uk-inline tag-content">
|
117 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Service Box</div>
|
118 |
+
<div class="uk-position-top-right">
|
119 |
+
<span class="uk-badge">PRO</span>
|
120 |
+
<span class=" uk-badge">NEW</span>
|
121 |
+
</div>
|
122 |
+
</div>
|
123 |
+
<div class="uk-inline tag-content">
|
124 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Flip Box</div>
|
125 |
+
<div class="uk-position-top-right">
|
126 |
+
<span class=" uk-badge">PRO</span>
|
127 |
+
</div>
|
128 |
+
</div>
|
129 |
+
<div class="tag-posts">
|
130 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Blog</div>
|
131 |
+
</div>
|
132 |
+
<div class="uk-inline tag-posts">
|
133 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Blog Enhanced</div>
|
134 |
+
<div class="uk-position-top-right">
|
135 |
+
<span class=" uk-badge">PRO</span>
|
136 |
+
</div>
|
137 |
+
</div>
|
138 |
+
<div class="uk-inline tag-posts">
|
139 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Blog Slider</div>
|
140 |
+
<div class="uk-position-top-right">
|
141 |
+
<span class=" uk-badge">PRO</span>
|
142 |
+
</div>
|
143 |
+
</div>
|
144 |
+
<div class="tag-posts">
|
145 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Portfolio</div>
|
146 |
+
</div>
|
147 |
+
<div class="uk-inline tag-posts">
|
148 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Portfolio Enhanced</div>
|
149 |
+
<div class="uk-position-top-right">
|
150 |
+
<span class=" uk-badge">PRO</span>
|
151 |
+
</div>
|
152 |
+
</div>
|
153 |
+
<div class="uk-inline tag-posts">
|
154 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Woo Products</div>
|
155 |
+
<div class="uk-position-top-right">
|
156 |
+
<span class=" uk-badge">PRO</span>
|
157 |
+
</div>
|
158 |
+
</div>
|
159 |
+
<div class="tag-stats">
|
160 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Number Counter</div>
|
161 |
+
</div>
|
162 |
+
<div class="tag-stats">
|
163 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Bar Counter</div>
|
164 |
+
</div>
|
165 |
+
<div class="uk-inline tag-stats">
|
166 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Vertical Bar Counter</div>
|
167 |
+
<div class="uk-position-top-right">
|
168 |
+
<span class=" uk-badge">PRO</span>
|
169 |
+
<span class="uk-badge">NEW</span>
|
170 |
+
</div>
|
171 |
+
</div>
|
172 |
+
<div class="tag-stats">
|
173 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Circle Counter</div>
|
174 |
+
</div>
|
175 |
+
<div class="uk-inline tag-stats">
|
176 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Chart</div>
|
177 |
+
<div class="uk-position-top-right">
|
178 |
+
<span class=" uk-badge">PRO</span>
|
179 |
+
<span class="uk-badge">UPDATED</span>
|
180 |
+
</div>
|
181 |
+
</div>
|
182 |
+
<div class="tag-media">
|
183 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Audio</div>
|
184 |
+
</div>
|
185 |
+
<div class="tag-media">
|
186 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Video</div>
|
187 |
+
</div>
|
188 |
+
<div class="uk-inline tag-media">
|
189 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Image</div>
|
190 |
+
<div class="uk-position-top-right">
|
191 |
+
<span class=" uk-badge">UPDATED</span>
|
192 |
+
</div>
|
193 |
+
</div>
|
194 |
+
<div class="uk-inline tag-media">
|
195 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Gallery</div>
|
196 |
+
<div class="uk-position-top-right">
|
197 |
+
<span class=" uk-badge">PRO</span>
|
198 |
+
</div>
|
199 |
+
</div>
|
200 |
+
<div class="tag-media">
|
201 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Slider</div>
|
202 |
+
</div>
|
203 |
+
<div class="uk-inline tag-media">
|
204 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Slider Pro</div>
|
205 |
+
<div class="uk-position-top-right">
|
206 |
+
<span class=" uk-badge">PRO</span>
|
207 |
+
</div>
|
208 |
+
</div>
|
209 |
+
<div class="uk-inline tag-social">
|
210 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Social Icons</div>
|
211 |
+
<div class="uk-position-top-right">
|
212 |
+
<span class="uk-badge">NEW</span>
|
213 |
+
</div>
|
214 |
+
</div>
|
215 |
+
<div class="tag-social">
|
216 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Person</div>
|
217 |
+
</div>
|
218 |
+
<div class="uk-inline tag-social">
|
219 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Person Slider</div>
|
220 |
+
<div class="uk-position-top-right">
|
221 |
+
<span class=" uk-badge">PRO</span>
|
222 |
+
</div>
|
223 |
+
</div>
|
224 |
+
<div class="tag-social">
|
225 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Testimonial</div>
|
226 |
+
</div>
|
227 |
+
<div class="uk-inline tag-social">
|
228 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Testimonial Slider</div>
|
229 |
+
<div class="uk-position-top-right">
|
230 |
+
<span class=" uk-badge">PRO</span>
|
231 |
+
</div>
|
232 |
+
</div>
|
233 |
+
<div class="uk-inline tag-features">
|
234 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Animations</div>
|
235 |
+
<div class="uk-position-top-right">
|
236 |
+
<span class=" uk-badge">PRO</span>
|
237 |
+
</div>
|
238 |
+
</div>
|
239 |
+
<div class="tag-features">
|
240 |
+
<div class="uk-box-shadow-medium uk-padding uk-text-lead uk-text-uppercase">Visibility</div>
|
241 |
+
</div>
|
242 |
+
</div>
|
243 |
+
</div>
|
244 |
</div>
|
|
|
245 |
</div>
|
246 |
+
<?php if( ! function_exists( 'wpinked_pro_so_widgets' ) ) : ?>
|
247 |
+
<div class="uk-section">
|
248 |
+
<div class="uk-container uk-container-expand">
|
249 |
+
<div class="uk-margin-larege uk-padding-large" style="background: #333">
|
250 |
+
<p class="uk-text-center">
|
251 |
+
<a class="uk-button uk-button-default uk-button-large" style="color:#fff" href="https://wpinked.com/downloads/widgets-for-siteorigin-pro/" target="_blank">Upgrade to Pro</a>
|
252 |
+
</p>
|
253 |
+
</div>
|
254 |
+
</div>
|
255 |
+
</div>
|
256 |
+
<?php endif; ?>
|
257 |
|
258 |
<?php
|
259 |
}
|
admin/img/lowpoly.png
ADDED
Binary file
|
admin/img/text-name.png
ADDED
Binary file
|
inc/enqueue.php
CHANGED
@@ -5,7 +5,8 @@ if ( ! function_exists ( 'wpinked_so_admin_style' ) ) :
|
|
5 |
function wpinked_so_admin_style() {
|
6 |
|
7 |
wp_enqueue_style( 'iw-admin-style', plugin_dir_url( __FILE__ ) . '../css/admin.css', array(), INKED_SO_VER );
|
8 |
-
wp_enqueue_style( 'iw-admin-
|
|
|
9 |
|
10 |
}
|
11 |
endif;
|
5 |
function wpinked_so_admin_style() {
|
6 |
|
7 |
wp_enqueue_style( 'iw-admin-style', plugin_dir_url( __FILE__ ) . '../css/admin.css', array(), INKED_SO_VER );
|
8 |
+
wp_enqueue_style( 'iw-admin-css', plugin_dir_url( __FILE__ ) . '../admin/admin.min.css', array(), INKED_SO_VER );
|
9 |
+
wp_enqueue_script( 'iw-admin-js', plugin_dir_url( __FILE__ ) . '../admin/admin.js', array(), INKED_SO_VER, true );
|
10 |
|
11 |
}
|
12 |
endif;
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: iamadi
|
|
3 |
Tags: bundle, widget, button, alert, accordion, audio, video, blog, divider, person, portfolio, tabs, testimonial, siteorigin
|
4 |
Requires at least: 3.9
|
5 |
Tested up to: 4.9.8
|
6 |
-
Stable tag: 1.
|
7 |
License: GPLv3 or later
|
8 |
|
9 |
A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
@@ -12,96 +12,78 @@ A collection of highly customizable and thoughtfully crafted widgets. Built on t
|
|
12 |
|
13 |
Widgets for SiteOrigin is a bundle of customizable, lightweight and responsive building blocks that can be used to create exciting digital experiences. The widgets can be use with either the [SiteOrigin Page Builder](https://wordpress.org/plugins/siteorigin-panels/) or any other widgetized area.
|
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 |
-
|
67 |
-
|
68 |
-
|
69 |
-
> 1. **Person Slider Widget** is the best way to showcase your personnel on About Me or Team Member pages, where you would like to highlight their bio. This widget brings together text, imagery, social media links and a smooth slider in a cohesive manner. Use the many settings provided to create unique designs.
|
70 |
-
|
71 |
-
> 1. **Testimonial Slider Widget** is a great way to encourage trust from your visitors by displaying quotes from your customers. This widget will snuggly fit in your Sales, Pricing or Home pages. Use the many settings provided to create unique designs.
|
72 |
-
|
73 |
-
> 1. **Chart Widget** allows you to visualize your data in a number of different ways. Choose from 6 chart types, each of them animated, fully customizable and engaging.
|
74 |
-
|
75 |
-
> 1. **Gallery Widget** spice up your image collections. The images are neatly arranged in a masonry layout with a lightbox feature which allows users to have a closer look.
|
76 |
-
|
77 |
-
> 1. **Slider Pro Widget** lets you choose from a number of slider settings and styling options to create simple image slider. In addition you can add animated text and a customizable button.
|
78 |
-
|
79 |
-
> 1. **Flip Box Widget** Interactive media box with flip animations. is a simple and elegant combination of text and media. This widget is a fantastic way to highlight small bits of information, such as skills, features or services you offer. The box also has 3D animated which flips the box on hover. Choose to use icons or images. In addition you can easily link to other webpages using a highly customizable button.
|
80 |
-
|
81 |
-
> 1. **WooCommerce Products Widget** Display a neat grid of WooCommerce products.
|
82 |
-
|
83 |
-
> 1. **Animation feature** lets you an easily animate widgets. Choose from 18 different animation effects.
|
84 |
-
|
85 |
-
Check out <a target="_blank" href="http://widgets.wpinked.com/">**DEMO**</a> and <a target="_blank" href="https://wpinked.com/widgets-for-siteorigin-docs/">**DOCS**</a>.
|
86 |
-
|
87 |
-
<a target="_blank" href="https://wpinked.com/forums/">**Support Forum**</a>.
|
88 |
|
89 |
== Installation ==
|
90 |
|
91 |
-
Upload and install these plugins.
|
92 |
-
|
93 |
-
1. [SiteOrigin Widgets Bundle](https://wordpress.org/plugins/so-widgets-bundle/). **Required**
|
94 |
-
1. Widgets for SiteOrigin
|
95 |
-
1. [Jetpack by WordPress.com](https://wordpress.org/plugins/jetpack/). **Optional** The portfolio widget is built using the **Custom Content Types** module. Activate if you are using the Portfolio Widget
|
96 |
-
|
97 |
Once installed, you can choose to Active/Deactivate widget from Plugins -> SiteOrigin Widgets.
|
98 |
|
|
|
|
|
|
|
99 |
== Screenshots ==
|
100 |
|
101 |
1. Manage which widgets you want enabled or disabled.
|
|
|
102 |
|
103 |
== Changelog ==
|
104 |
|
|
|
|
|
|
|
105 |
= 1.3.9 - October 12 2018 =
|
106 |
* Added social icons widget.
|
107 |
|
3 |
Tags: bundle, widget, button, alert, accordion, audio, video, blog, divider, person, portfolio, tabs, testimonial, siteorigin
|
4 |
Requires at least: 3.9
|
5 |
Tested up to: 4.9.8
|
6 |
+
Stable tag: 1.4.0
|
7 |
License: GPLv3 or later
|
8 |
|
9 |
A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
12 |
|
13 |
Widgets for SiteOrigin is a bundle of customizable, lightweight and responsive building blocks that can be used to create exciting digital experiences. The widgets can be use with either the [SiteOrigin Page Builder](https://wordpress.org/plugins/siteorigin-panels/) or any other widgetized area.
|
14 |
|
15 |
+
[Check out the Demos](http://widgets.wpinked.com/)
|
16 |
+
|
17 |
+
### Highly Customizable
|
18 |
+
Every widget comes with a number of content and styling options to fine tune its looks and feel. Get your creative juices flowing.
|
19 |
+
|
20 |
+
### Lightweight
|
21 |
+
Every widget comes with its own unique code keeps your site smooth and fast. No bulky frameworks.
|
22 |
+
|
23 |
+
## Included widgets (FREE)
|
24 |
+
|
25 |
+
1. **Blog Widget** lists out posts with five highly customizable design layouts. Perfect for magazine homepages.
|
26 |
+
2. **Portfolio Widget** allows you to show off your work in a neat grid.
|
27 |
+
3. **Tabs Widget** looks great inside any sized column. On smaller screens the tabs buttons stack up and are easy to use.
|
28 |
+
4. **Accordion Widget** allows you to compartmentalize information and improve user experience on your site.
|
29 |
+
5. **Filter Accordion Widget** extends on the accordion widget with the use of filters.
|
30 |
+
6. **Audio Widget** allows you to easily add audio to your site.
|
31 |
+
7. **Video Widget** makes it easy to add videos to your site.
|
32 |
+
8. **Media Box Widget** is a simple and elegant way to highlight small bits of information, such as skills, features or services you offer.
|
33 |
+
9. **Testimonial Widget** is the best way to showcase quotes from your customers.
|
34 |
+
10. **Person Widget** is a great way to highlight your team.
|
35 |
+
11. **Pricing Table Widget** allows you to easily create pricing elements for your products or services.
|
36 |
+
12. **Image Widget** allows you to add images with a premium lightbox feature.
|
37 |
+
13. **Slider Widget** lets you create a simple image slider.
|
38 |
+
14. **Call to Action Widget** The call to action widget can be customised to create eye catching user interfaces.
|
39 |
+
15. **Alert widget** is a useful element that can be dropped into a form or inline on a page.
|
40 |
+
16. **Number Counter Widget** is an engaging way to display numerical statistics.
|
41 |
+
17. **Circle Counter Widget** is a great way to display a single animated statistic.
|
42 |
+
18. **Bar Counter Widget** is a beautiful animated display of useful stats.
|
43 |
+
19. **Divider widget** is useful as a separator between different sections of your content.
|
44 |
+
20. **Button Widget** can easily add buttons anywhere on your site.
|
45 |
+
20. **Social Icons Widget** increases social media engagement by redirecting users to your social media profiles with pleasing icons.
|
46 |
+
|
47 |
+
## Additional Features
|
48 |
+
|
49 |
+
1. **Visibility** is a wonderful way to display specific widgets or rows for different screen sizes or screen orientations.
|
50 |
+
|
51 |
+
|
52 |
+
### More widgets with the [Pro Version](https://wpinked.com/downloads/widgets-for-siteorigin-pro/)
|
53 |
+
|
54 |
+
1. **Enhanced Blog Widget** Extends on the blog widget, and comes with a set of predesigned article templates.
|
55 |
+
2. **Blog Slider Widget** lets you easily add eye catching post sliders anywhere on your website.
|
56 |
+
3. **Portfolio Enhanced Widget** builds up on the portfolio widget with more layout and template options.
|
57 |
+
4. **Person Slider Widget** is the best way to showcase your team with a smooth slider in a cohesive manner.
|
58 |
+
5. **Testimonial Slider Widget** is a great way to encourage trust from your visitors.
|
59 |
+
6. **Chart Widget** allows you to visualize your data in a number of different ways.
|
60 |
+
7. **Gallery Widget** spice up your image collections in a masonry layout with a lightbox.
|
61 |
+
8. **Slider Pro Widget** is an image slider with animated text and a customizable button.
|
62 |
+
9. **Flip Box Widget** Interactive media box with flip animations.
|
63 |
+
10. **WooCommerce Products Widget** Display a neat grid of WooCommerce products.
|
64 |
+
11. **Service Box Widget** List out services with their features in a neat visually pleasing list.
|
65 |
+
12. **Vertical Bar Counter Widget** Animated vertical bars to display your stats.
|
66 |
+
13. **Animation feature** lets you an easily animate widgets.
|
67 |
+
|
68 |
+
Get help at our <a target="_blank" href="https://wpinked.com/forums/">**Support Forum**</a>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
|
70 |
== Installation ==
|
71 |
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
Once installed, you can choose to Active/Deactivate widget from Plugins -> SiteOrigin Widgets.
|
73 |
|
74 |
+
### [SiteOrigin Widgets Bundle](https://wordpress.org/plugins/so-widgets-bundle/) is required for this plugin.
|
75 |
+
### [Jetpack by WordPress.com](https://wordpress.org/plugins/jetpack/). **Optional** The portfolio widget is built using the **Custom Content Types** module. Activate if you are using the Portfolio Widget
|
76 |
+
|
77 |
== Screenshots ==
|
78 |
|
79 |
1. Manage which widgets you want enabled or disabled.
|
80 |
+
5. Use all widgets in any widget area.
|
81 |
|
82 |
== Changelog ==
|
83 |
|
84 |
+
= 1.4.0 - October 15 2018 =
|
85 |
+
* Fixed image widget styling.
|
86 |
+
|
87 |
= 1.3.9 - October 12 2018 =
|
88 |
* Added social icons widget.
|
89 |
|
widgets-for-siteorigin.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Plugin Name: Widgets for SiteOrigin
|
5 |
* Plugin URI: http://widgets.wpinked.com/
|
6 |
* Description: A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
7 |
-
* Version: 1.
|
8 |
* Author: wpinked
|
9 |
* Author URI: widgets.wpinked.com
|
10 |
* License: GPL-2.0+
|
@@ -18,7 +18,7 @@
|
|
18 |
*
|
19 |
*/
|
20 |
|
21 |
-
define( 'INKED_SO_VER', '1.
|
22 |
|
23 |
// Allow JS suffix to be pre-set
|
24 |
if ( ! defined( 'INKED_JS_SUFFIX' ) ) {
|
4 |
* Plugin Name: Widgets for SiteOrigin
|
5 |
* Plugin URI: http://widgets.wpinked.com/
|
6 |
* Description: A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
7 |
+
* Version: 1.4.0
|
8 |
* Author: wpinked
|
9 |
* Author URI: widgets.wpinked.com
|
10 |
* License: GPL-2.0+
|
18 |
*
|
19 |
*/
|
20 |
|
21 |
+
define( 'INKED_SO_VER', '1.4.0' );
|
22 |
|
23 |
// Allow JS suffix to be pre-set
|
24 |
if ( ! defined( 'INKED_JS_SUFFIX' ) ) {
|
widgets/ink-imge-widget/css/image.css
CHANGED
@@ -40,7 +40,7 @@
|
|
40 |
opacity: 0;
|
41 |
visibility: hidden;
|
42 |
margin: 0;
|
43 |
-
padding:
|
44 |
-webkit-transition: all 450ms ease-out;
|
45 |
-moz-transition: all 450ms ease-out;
|
46 |
transition: all 450ms ease-out; }
|
40 |
opacity: 0;
|
41 |
visibility: hidden;
|
42 |
margin: 0;
|
43 |
+
padding: 15px;
|
44 |
-webkit-transition: all 450ms ease-out;
|
45 |
-moz-transition: all 450ms ease-out;
|
46 |
transition: all 450ms ease-out; }
|
widgets/ink-imge-widget/styles/image.less
CHANGED
@@ -40,6 +40,10 @@
|
|
40 |
.iw-so-image-caption {
|
41 |
.font(@cap-fly, @cap-wt);
|
42 |
background: fade(@image-ol, @image-ol-o);
|
|
|
|
|
|
|
|
|
43 |
}
|
44 |
|
45 |
&:hover {
|
@@ -241,7 +245,7 @@
|
|
241 |
|
242 |
.iw-so-cap-title,
|
243 |
.iw-so-cap-desc {
|
244 |
-
text-align:
|
245 |
}
|
246 |
|
247 |
.iw-so-cap-title {
|
@@ -346,46 +350,46 @@
|
|
346 |
}
|
347 |
}
|
348 |
|
349 |
-
.iw-so-img-libox-icon {
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
}
|
390 |
}
|
391 |
}
|
40 |
.iw-so-image-caption {
|
41 |
.font(@cap-fly, @cap-wt);
|
42 |
background: fade(@image-ol, @image-ol-o);
|
43 |
+
|
44 |
+
.iw-so-cap-title {
|
45 |
+
.font(@cap-fly, @cap-wt);
|
46 |
+
}
|
47 |
}
|
48 |
|
49 |
&:hover {
|
245 |
|
246 |
.iw-so-cap-title,
|
247 |
.iw-so-cap-desc {
|
248 |
+
text-align: center;
|
249 |
}
|
250 |
|
251 |
.iw-so-cap-title {
|
350 |
}
|
351 |
}
|
352 |
|
353 |
+
// .iw-so-img-libox-icon {
|
354 |
+
// .lb-pos() when (@lb-pos = bottom-left) {
|
355 |
+
// bottom: 20px;
|
356 |
+
// left: 20px;
|
357 |
+
// }
|
358 |
+
// .lb-pos() when (@lb-pos = bottom-right) {
|
359 |
+
// bottom: 20px;
|
360 |
+
// right: 20px;
|
361 |
+
// }
|
362 |
+
// .lb-pos() when (@lb-pos = top-left) {
|
363 |
+
// top: 20px;
|
364 |
+
// left: 20px;
|
365 |
+
// }
|
366 |
+
// .lb-pos() when (@lb-pos = top-right) {
|
367 |
+
// top: 20px;
|
368 |
+
// right: 20px;
|
369 |
+
// }
|
370 |
+
// .lb-pos() when (@lb-pos = center) {
|
371 |
+
// top: 48%;
|
372 |
+
// left: 50%;
|
373 |
+
// -webkit-transform: translate(-50%, -50%);
|
374 |
+
// -moz-transform: translate(-50%, -50%);
|
375 |
+
// -ms-transform: translate(-50%, -50%);
|
376 |
+
// -o-transform: translate(-50%, -50%);
|
377 |
+
// transform: translate(-50%, -50%);
|
378 |
+
// }
|
379 |
+
// .lb-pos();
|
380 |
+
|
381 |
+
// [class^="sow-icon-"] {
|
382 |
+
// color: @icon-clr;
|
383 |
+
// font-size: @icon-size;
|
384 |
+
// }
|
385 |
+
|
386 |
+
// background: @icon-bg;
|
387 |
+
// opacity: @icon-o;
|
388 |
+
// border-radius: @icon-rad;
|
389 |
+
|
390 |
+
// &:hover {
|
391 |
+
// opacity: @icon-oh;
|
392 |
+
// }
|
393 |
+
// }
|
394 |
}
|
395 |
}
|