juicelang-theme 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +37 -0
- data/_includes/logo.html +5 -0
- data/_layouts/default.html +97 -0
- data/_layouts/fullwidth_page.html +7 -0
- data/_layouts/page.html +7 -0
- data/_layouts/post.html +5 -0
- data/_sass/uikit/components/_import.components.scss +56 -0
- data/_sass/uikit/components/_import.scss +95 -0
- data/_sass/uikit/components/_import.utilities.scss +19 -0
- data/_sass/uikit/components/accordion.scss +105 -0
- data/_sass/uikit/components/alert.scss +146 -0
- data/_sass/uikit/components/align.scss +142 -0
- data/_sass/uikit/components/animation.scss +283 -0
- data/_sass/uikit/components/article.scss +99 -0
- data/_sass/uikit/components/background.scss +148 -0
- data/_sass/uikit/components/badge.scss +78 -0
- data/_sass/uikit/components/base.scss +611 -0
- data/_sass/uikit/components/breadcrumb.scss +122 -0
- data/_sass/uikit/components/button.scss +439 -0
- data/_sass/uikit/components/card.scss +384 -0
- data/_sass/uikit/components/close.scss +55 -0
- data/_sass/uikit/components/column.scss +139 -0
- data/_sass/uikit/components/comment.scss +160 -0
- data/_sass/uikit/components/container.scss +185 -0
- data/_sass/uikit/components/countdown.scss +131 -0
- data/_sass/uikit/components/cover.scss +63 -0
- data/_sass/uikit/components/description-list.scss +71 -0
- data/_sass/uikit/components/divider.scss +153 -0
- data/_sass/uikit/components/dotnav.scss +155 -0
- data/_sass/uikit/components/drop.scss +63 -0
- data/_sass/uikit/components/dropbar.scss +126 -0
- data/_sass/uikit/components/dropdown.scss +170 -0
- data/_sass/uikit/components/flex.scss +200 -0
- data/_sass/uikit/components/form-range.scss +139 -0
- data/_sass/uikit/components/form.scss +804 -0
- data/_sass/uikit/components/grid-masonry.scss +69 -0
- data/_sass/uikit/components/grid.scss +407 -0
- data/_sass/uikit/components/heading.scss +321 -0
- data/_sass/uikit/components/height.scss +57 -0
- data/_sass/uikit/components/icon.scss +225 -0
- data/_sass/uikit/components/iconnav.scss +146 -0
- data/_sass/uikit/components/inverse.scss +46 -0
- data/_sass/uikit/components/label.scss +102 -0
- data/_sass/uikit/components/leader.scss +69 -0
- data/_sass/uikit/components/lightbox.scss +248 -0
- data/_sass/uikit/components/link.scss +138 -0
- data/_sass/uikit/components/list.scss +240 -0
- data/_sass/uikit/components/margin.scss +249 -0
- data/_sass/uikit/components/marker.scss +61 -0
- data/_sass/uikit/components/mixin.scss +32 -0
- data/_sass/uikit/components/modal.scss +367 -0
- data/_sass/uikit/components/nav.scss +555 -0
- data/_sass/uikit/components/navbar.scss +634 -0
- data/_sass/uikit/components/notification.scss +191 -0
- data/_sass/uikit/components/offcanvas.scss +324 -0
- data/_sass/uikit/components/overlay.scss +85 -0
- data/_sass/uikit/components/padding.scss +81 -0
- data/_sass/uikit/components/pagination.scss +130 -0
- data/_sass/uikit/components/placeholder.scss +45 -0
- data/_sass/uikit/components/position.scss +230 -0
- data/_sass/uikit/components/print.scss +61 -0
- data/_sass/uikit/components/progress.scss +83 -0
- data/_sass/uikit/components/search.scss +339 -0
- data/_sass/uikit/components/section.scss +212 -0
- data/_sass/uikit/components/slidenav.scss +120 -0
- data/_sass/uikit/components/slider.scss +116 -0
- data/_sass/uikit/components/slideshow.scss +93 -0
- data/_sass/uikit/components/sortable.scss +90 -0
- data/_sass/uikit/components/spinner.scss +74 -0
- data/_sass/uikit/components/sticky.scss +71 -0
- data/_sass/uikit/components/subnav.scss +246 -0
- data/_sass/uikit/components/svg.scss +36 -0
- data/_sass/uikit/components/switcher.scss +47 -0
- data/_sass/uikit/components/tab.scss +196 -0
- data/_sass/uikit/components/table.scss +315 -0
- data/_sass/uikit/components/text.scss +268 -0
- data/_sass/uikit/components/thumbnav.scss +119 -0
- data/_sass/uikit/components/tile.scss +233 -0
- data/_sass/uikit/components/tooltip.scss +79 -0
- data/_sass/uikit/components/totop.scss +69 -0
- data/_sass/uikit/components/transition.scss +165 -0
- data/_sass/uikit/components/utility.scss +522 -0
- data/_sass/uikit/components/variables.scss +123 -0
- data/_sass/uikit/components/visibility.scss +146 -0
- data/_sass/uikit/components/width.scss +386 -0
- data/_sass/uikit/mixins-theme.scss +2170 -0
- data/_sass/uikit/mixins.scss +1812 -0
- data/_sass/uikit/theme/_import.scss +82 -0
- data/_sass/uikit/theme/accordion.scss +59 -0
- data/_sass/uikit/theme/alert.scss +46 -0
- data/_sass/uikit/theme/align.scss +14 -0
- data/_sass/uikit/theme/animation.scss +14 -0
- data/_sass/uikit/theme/article.scss +51 -0
- data/_sass/uikit/theme/background.scss +14 -0
- data/_sass/uikit/theme/badge.scss +29 -0
- data/_sass/uikit/theme/base.scss +116 -0
- data/_sass/uikit/theme/breadcrumb.scss +45 -0
- data/_sass/uikit/theme/button.scss +157 -0
- data/_sass/uikit/theme/card.scss +128 -0
- data/_sass/uikit/theme/close.scss +29 -0
- data/_sass/uikit/theme/column.scss +14 -0
- data/_sass/uikit/theme/comment.scss +69 -0
- data/_sass/uikit/theme/container.scss +14 -0
- data/_sass/uikit/theme/countdown.scss +53 -0
- data/_sass/uikit/theme/description-list.scss +32 -0
- data/_sass/uikit/theme/divider.scss +49 -0
- data/_sass/uikit/theme/dotnav.scss +52 -0
- data/_sass/uikit/theme/drop.scss +14 -0
- data/_sass/uikit/theme/dropbar.scss +44 -0
- data/_sass/uikit/theme/dropdown.scss +49 -0
- data/_sass/uikit/theme/form-range.scss +45 -0
- data/_sass/uikit/theme/form.scss +131 -0
- data/_sass/uikit/theme/grid.scss +28 -0
- data/_sass/uikit/theme/heading.scss +67 -0
- data/_sass/uikit/theme/height.scss +14 -0
- data/_sass/uikit/theme/icon.scss +50 -0
- data/_sass/uikit/theme/iconnav.scss +40 -0
- data/_sass/uikit/theme/inverse.scss +14 -0
- data/_sass/uikit/theme/label.scss +43 -0
- data/_sass/uikit/theme/leader.scss +26 -0
- data/_sass/uikit/theme/lightbox.scss +50 -0
- data/_sass/uikit/theme/link.scss +55 -0
- data/_sass/uikit/theme/list.scss +36 -0
- data/_sass/uikit/theme/margin.scss +14 -0
- data/_sass/uikit/theme/marker.scss +29 -0
- data/_sass/uikit/theme/modal.scss +84 -0
- data/_sass/uikit/theme/nav.scss +140 -0
- data/_sass/uikit/theme/navbar.scss +146 -0
- data/_sass/uikit/theme/notification.scss +44 -0
- data/_sass/uikit/theme/offcanvas.scss +32 -0
- data/_sass/uikit/theme/overlay.scss +33 -0
- data/_sass/uikit/theme/padding.scss +14 -0
- data/_sass/uikit/theme/pagination.scss +41 -0
- data/_sass/uikit/theme/placeholder.scss +29 -0
- data/_sass/uikit/theme/position.scss +14 -0
- data/_sass/uikit/theme/progress.scss +24 -0
- data/_sass/uikit/theme/search.scss +87 -0
- data/_sass/uikit/theme/section.scss +32 -0
- data/_sass/uikit/theme/slidenav.scss +52 -0
- data/_sass/uikit/theme/slider.scss +14 -0
- data/_sass/uikit/theme/sortable.scss +38 -0
- data/_sass/uikit/theme/spinner.scss +14 -0
- data/_sass/uikit/theme/sticky.scss +14 -0
- data/_sass/uikit/theme/subnav.scss +74 -0
- data/_sass/uikit/theme/tab.scss +74 -0
- data/_sass/uikit/theme/table.scss +69 -0
- data/_sass/uikit/theme/text.scss +50 -0
- data/_sass/uikit/theme/thumbnav.scss +42 -0
- data/_sass/uikit/theme/tile.scss +52 -0
- data/_sass/uikit/theme/tooltip.scss +20 -0
- data/_sass/uikit/theme/totop.scss +32 -0
- data/_sass/uikit/theme/transition.scss +14 -0
- data/_sass/uikit/theme/utility.scss +49 -0
- data/_sass/uikit/theme/variables.scss +36 -0
- data/_sass/uikit/theme/width.scss +14 -0
- data/_sass/uikit/uikit-theme.scss +9 -0
- data/_sass/uikit/uikit.scss +5 -0
- data/_sass/uikit/variables-theme.scss +1260 -0
- data/_sass/uikit/variables.scss +1142 -0
- data/assets/css/default.scss +220 -0
- data/assets/images/icons/android-chrome-192x192.png +0 -0
- data/assets/images/icons/android-chrome-512x512.png +0 -0
- data/assets/images/icons/apple-touch-icon.png +0 -0
- data/assets/images/icons/browserconfig.xml +9 -0
- data/assets/images/icons/favicon-16x16.png +0 -0
- data/assets/images/icons/favicon-32x32.png +0 -0
- data/assets/images/icons/favicon.ico +0 -0
- data/assets/images/icons/mstile-144x144.png +0 -0
- data/assets/images/icons/mstile-150x150.png +0 -0
- data/assets/images/icons/mstile-310x150.png +0 -0
- data/assets/images/icons/mstile-310x310.png +0 -0
- data/assets/images/icons/mstile-70x70.png +0 -0
- data/assets/images/icons/safari-pinned-tab.svg +46 -0
- data/assets/images/icons/site.webmanifest +18 -0
- data/assets/images/juice.svg +47 -0
- data/assets/js/default.js +0 -0
- metadata +248 -0
@@ -0,0 +1,146 @@
|
|
1
|
+
// Name: Iconnav
|
2
|
+
// Description: Component to create icon navigations
|
3
|
+
//
|
4
|
+
// Component: `uk-iconnav`
|
5
|
+
//
|
6
|
+
// Modifier: `uk-iconnav-vertical`
|
7
|
+
//
|
8
|
+
// States: `uk-active`
|
9
|
+
//
|
10
|
+
// ========================================================================
|
11
|
+
|
12
|
+
|
13
|
+
// Variables
|
14
|
+
// ========================================================================
|
15
|
+
|
16
|
+
$iconnav-margin-horizontal: $global-small-margin !default;
|
17
|
+
$iconnav-margin-vertical: $iconnav-margin-horizontal !default;
|
18
|
+
|
19
|
+
$iconnav-item-color: $global-muted-color !default;
|
20
|
+
|
21
|
+
$iconnav-item-hover-color: $global-color !default;
|
22
|
+
|
23
|
+
$iconnav-item-active-color: $global-color !default;
|
24
|
+
|
25
|
+
|
26
|
+
/* ========================================================================
|
27
|
+
Component: Iconnav
|
28
|
+
========================================================================== */
|
29
|
+
|
30
|
+
/*
|
31
|
+
* 1. Allow items to wrap into the next line
|
32
|
+
* 2. Reset list
|
33
|
+
* 3. Gutter
|
34
|
+
*/
|
35
|
+
|
36
|
+
.uk-iconnav {
|
37
|
+
display: flex;
|
38
|
+
/* 1 */
|
39
|
+
flex-wrap: wrap;
|
40
|
+
/* 2 */
|
41
|
+
margin: 0;
|
42
|
+
padding: 0;
|
43
|
+
list-style: none;
|
44
|
+
/* 3 */
|
45
|
+
margin-left: (-$iconnav-margin-horizontal);
|
46
|
+
@if(mixin-exists(hook-iconnav)) {@include hook-iconnav();}
|
47
|
+
}
|
48
|
+
|
49
|
+
/*
|
50
|
+
* Space is allocated based on content dimensions, but shrinks: 0 1 auto
|
51
|
+
* 1. Gutter
|
52
|
+
*/
|
53
|
+
|
54
|
+
.uk-iconnav > * {
|
55
|
+
/* 1 */
|
56
|
+
padding-left: $iconnav-margin-horizontal;
|
57
|
+
}
|
58
|
+
|
59
|
+
|
60
|
+
/* Items
|
61
|
+
========================================================================== */
|
62
|
+
|
63
|
+
/*
|
64
|
+
* Items must target `a` elements to exclude other elements (e.g. dropdowns)
|
65
|
+
* 1. Center content vertically if there is still some text
|
66
|
+
* 2. Imitate white space gap when using flexbox
|
67
|
+
* 3. Force text not to affect item height
|
68
|
+
* 4. Style
|
69
|
+
* 5. Required for `a` if there is still some text
|
70
|
+
*/
|
71
|
+
|
72
|
+
.uk-iconnav > * > a {
|
73
|
+
/* 1 */
|
74
|
+
display: flex;
|
75
|
+
align-items: center;
|
76
|
+
/* 2 */
|
77
|
+
column-gap: 0.25em;
|
78
|
+
/* 3 */
|
79
|
+
line-height: 0;
|
80
|
+
/* 4 */
|
81
|
+
color: $iconnav-item-color;
|
82
|
+
/* 5 */
|
83
|
+
text-decoration: none;
|
84
|
+
@if(mixin-exists(hook-iconnav-item)) {@include hook-iconnav-item();}
|
85
|
+
}
|
86
|
+
|
87
|
+
/* Hover */
|
88
|
+
.uk-iconnav > * > a:hover {
|
89
|
+
color: $iconnav-item-hover-color;
|
90
|
+
@if(mixin-exists(hook-iconnav-item-hover)) {@include hook-iconnav-item-hover();}
|
91
|
+
}
|
92
|
+
|
93
|
+
/* Active */
|
94
|
+
.uk-iconnav > .uk-active > a {
|
95
|
+
color: $iconnav-item-active-color;
|
96
|
+
@if(mixin-exists(hook-iconnav-item-active)) {@include hook-iconnav-item-active();}
|
97
|
+
}
|
98
|
+
|
99
|
+
|
100
|
+
/* Modifier: 'uk-iconnav-vertical'
|
101
|
+
========================================================================== */
|
102
|
+
|
103
|
+
/*
|
104
|
+
* 1. Change direction
|
105
|
+
* 2. Gutter
|
106
|
+
*/
|
107
|
+
|
108
|
+
.uk-iconnav-vertical {
|
109
|
+
/* 1 */
|
110
|
+
flex-direction: column;
|
111
|
+
/* 2 */
|
112
|
+
margin-left: 0;
|
113
|
+
margin-top: (-$iconnav-margin-vertical);
|
114
|
+
}
|
115
|
+
|
116
|
+
/* 2 */
|
117
|
+
.uk-iconnav-vertical > * {
|
118
|
+
padding-left: 0;
|
119
|
+
padding-top: $iconnav-margin-vertical;
|
120
|
+
}
|
121
|
+
|
122
|
+
|
123
|
+
// Hooks
|
124
|
+
// ========================================================================
|
125
|
+
|
126
|
+
@if(mixin-exists(hook-iconnav-misc)) {@include hook-iconnav-misc();}
|
127
|
+
|
128
|
+
// @mixin hook-iconnav(){}
|
129
|
+
// @mixin hook-iconnav-item(){}
|
130
|
+
// @mixin hook-iconnav-item-hover(){}
|
131
|
+
// @mixin hook-iconnav-item-active(){}
|
132
|
+
// @mixin hook-iconnav-misc(){}
|
133
|
+
|
134
|
+
|
135
|
+
// Inverse
|
136
|
+
// ========================================================================
|
137
|
+
|
138
|
+
$inverse-iconnav-item-color: $inverse-global-muted-color !default;
|
139
|
+
$inverse-iconnav-item-hover-color: $inverse-global-color !default;
|
140
|
+
$inverse-iconnav-item-active-color: $inverse-global-color !default;
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
// @mixin hook-inverse-iconnav-item(){}
|
145
|
+
// @mixin hook-inverse-iconnav-item-hover(){}
|
146
|
+
// @mixin hook-inverse-iconnav-item-active(){}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
// Name: Inverse
|
2
|
+
// Description: Inverse component style for light or dark backgrounds
|
3
|
+
//
|
4
|
+
// Component: `uk-light`
|
5
|
+
// `uk-dark`
|
6
|
+
//
|
7
|
+
// ========================================================================
|
8
|
+
|
9
|
+
|
10
|
+
// Variables
|
11
|
+
// ========================================================================
|
12
|
+
|
13
|
+
$inverse-global-color-mode: light !default;
|
14
|
+
|
15
|
+
$inverse-global-color: rgba($global-inverse-color, 0.7) !default;
|
16
|
+
$inverse-global-emphasis-color: $global-inverse-color !default;
|
17
|
+
$inverse-global-muted-color: rgba($global-inverse-color, 0.5) !default;
|
18
|
+
$inverse-global-inverse-color: $global-color !default;
|
19
|
+
|
20
|
+
$inverse-global-primary-background: $global-inverse-color !default;
|
21
|
+
$inverse-global-muted-background: rgba($global-inverse-color, 0.1) !default;
|
22
|
+
|
23
|
+
$inverse-global-border: rgba($global-inverse-color, 0.2) !default;
|
24
|
+
|
25
|
+
|
26
|
+
/* ========================================================================
|
27
|
+
Component: Inverse
|
28
|
+
========================================================================== */
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
/*
|
33
|
+
* Implemented class depends on the general theme color
|
34
|
+
* `uk-light` is for light colors on dark backgrounds
|
35
|
+
* `uk-dark` is or dark colors on light backgrounds
|
36
|
+
*/
|
37
|
+
|
38
|
+
@if ($inverse-global-color-mode == light) { .uk-light { @if (mixin-exists(hook-inverse)) {@include hook-inverse();}}}
|
39
|
+
|
40
|
+
@if ($inverse-global-color-mode == dark) { .uk-dark { @if (mixin-exists(hook-inverse)) {@include hook-inverse();}}}
|
41
|
+
|
42
|
+
|
43
|
+
// Hooks
|
44
|
+
// ========================================================================
|
45
|
+
|
46
|
+
// @mixin hook-inverse(){}
|
@@ -0,0 +1,102 @@
|
|
1
|
+
// Name: Label
|
2
|
+
// Description: Component to indicate important notes
|
3
|
+
//
|
4
|
+
// Component: `uk-label`
|
5
|
+
//
|
6
|
+
// Modifiers: `uk-label-success`
|
7
|
+
// `uk-label-warning`
|
8
|
+
// `uk-label-danger`
|
9
|
+
//
|
10
|
+
// ========================================================================
|
11
|
+
|
12
|
+
|
13
|
+
// Variables
|
14
|
+
// ========================================================================
|
15
|
+
|
16
|
+
$label-padding-vertical: 0 !default;
|
17
|
+
$label-padding-horizontal: $global-small-margin !default;
|
18
|
+
$label-background: $global-primary-background !default;
|
19
|
+
$label-line-height: $global-line-height !default;
|
20
|
+
$label-font-size: $global-small-font-size !default;
|
21
|
+
$label-color: $global-inverse-color !default;
|
22
|
+
|
23
|
+
$label-success-background: $global-success-background !default;
|
24
|
+
$label-success-color: $global-inverse-color !default;
|
25
|
+
$label-warning-background: $global-warning-background !default;
|
26
|
+
$label-warning-color: $global-inverse-color !default;
|
27
|
+
$label-danger-background: $global-danger-background !default;
|
28
|
+
$label-danger-color: $global-inverse-color !default;
|
29
|
+
|
30
|
+
|
31
|
+
/* ========================================================================
|
32
|
+
Component: Label
|
33
|
+
========================================================================== */
|
34
|
+
|
35
|
+
.uk-label {
|
36
|
+
display: inline-block;
|
37
|
+
padding: $label-padding-vertical $label-padding-horizontal;
|
38
|
+
background: $label-background;
|
39
|
+
line-height: $label-line-height;
|
40
|
+
font-size: $label-font-size;
|
41
|
+
color: $label-color;
|
42
|
+
vertical-align: middle;
|
43
|
+
white-space: nowrap;
|
44
|
+
@if(mixin-exists(hook-label)) {@include hook-label();}
|
45
|
+
}
|
46
|
+
|
47
|
+
|
48
|
+
/* Color modifiers
|
49
|
+
========================================================================== */
|
50
|
+
|
51
|
+
/*
|
52
|
+
* Success
|
53
|
+
*/
|
54
|
+
|
55
|
+
.uk-label-success {
|
56
|
+
background-color: $label-success-background;
|
57
|
+
color: $label-success-color;
|
58
|
+
@if(mixin-exists(hook-label-success)) {@include hook-label-success();}
|
59
|
+
}
|
60
|
+
|
61
|
+
/*
|
62
|
+
* Warning
|
63
|
+
*/
|
64
|
+
|
65
|
+
.uk-label-warning {
|
66
|
+
background-color: $label-warning-background;
|
67
|
+
color: $label-warning-color;
|
68
|
+
@if(mixin-exists(hook-label-warning)) {@include hook-label-warning();}
|
69
|
+
}
|
70
|
+
|
71
|
+
/*
|
72
|
+
* Danger
|
73
|
+
*/
|
74
|
+
|
75
|
+
.uk-label-danger {
|
76
|
+
background-color: $label-danger-background;
|
77
|
+
color: $label-danger-color;
|
78
|
+
@if(mixin-exists(hook-label-danger)) {@include hook-label-danger();}
|
79
|
+
}
|
80
|
+
|
81
|
+
|
82
|
+
// Hooks
|
83
|
+
// ========================================================================
|
84
|
+
|
85
|
+
@if(mixin-exists(hook-label-misc)) {@include hook-label-misc();}
|
86
|
+
|
87
|
+
// @mixin hook-label(){}
|
88
|
+
// @mixin hook-label-success(){}
|
89
|
+
// @mixin hook-label-warning(){}
|
90
|
+
// @mixin hook-label-danger(){}
|
91
|
+
// @mixin hook-label-misc(){}
|
92
|
+
|
93
|
+
|
94
|
+
// Inverse
|
95
|
+
// ========================================================================
|
96
|
+
|
97
|
+
$inverse-label-background: $inverse-global-primary-background !default;
|
98
|
+
$inverse-label-color: $inverse-global-inverse-color !default;
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
// @mixin hook-inverse-label(){}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
// Name: Leader
|
2
|
+
// Description: Component to create dot leaders
|
3
|
+
//
|
4
|
+
// Component: `uk-leader`
|
5
|
+
//
|
6
|
+
// ========================================================================
|
7
|
+
|
8
|
+
|
9
|
+
// Variables
|
10
|
+
// ========================================================================
|
11
|
+
|
12
|
+
$leader-fill-content: unquote('.') !default;
|
13
|
+
$leader-fill-margin-left: $global-small-gutter !default;
|
14
|
+
|
15
|
+
|
16
|
+
/* ========================================================================
|
17
|
+
Component: Leader
|
18
|
+
========================================================================== */
|
19
|
+
|
20
|
+
.uk-leader { overflow: hidden; }
|
21
|
+
|
22
|
+
/*
|
23
|
+
* 1. Place element in text flow
|
24
|
+
* 2. Never break into a new line
|
25
|
+
* 3. Get a string back with as many repeating characters to fill the container
|
26
|
+
* 4. Prevent wrapping. Overflowing characters will be clipped by the container
|
27
|
+
*/
|
28
|
+
|
29
|
+
.uk-leader-fill::after {
|
30
|
+
/* 1 */
|
31
|
+
display: inline-block;
|
32
|
+
margin-left: $leader-fill-margin-left;
|
33
|
+
/* 2 */
|
34
|
+
width: 0;
|
35
|
+
/* 3 */
|
36
|
+
content: attr(data-fill);
|
37
|
+
/* 4 */
|
38
|
+
white-space: nowrap;
|
39
|
+
@if(mixin-exists(hook-leader)) {@include hook-leader();}
|
40
|
+
}
|
41
|
+
|
42
|
+
/*
|
43
|
+
* Hide if media does not match
|
44
|
+
*/
|
45
|
+
|
46
|
+
.uk-leader-fill.uk-leader-hide::after { display: none; }
|
47
|
+
|
48
|
+
/*
|
49
|
+
* Pass fill character to JS
|
50
|
+
*/
|
51
|
+
|
52
|
+
:root { --uk-leader-fill-content: #{$leader-fill-content}; }
|
53
|
+
|
54
|
+
|
55
|
+
// Hooks
|
56
|
+
// ========================================================================
|
57
|
+
|
58
|
+
@if(mixin-exists(hook-leader-misc)) {@include hook-leader-misc();}
|
59
|
+
|
60
|
+
// @mixin hook-leader(){}
|
61
|
+
// @mixin hook-leader-misc(){}
|
62
|
+
|
63
|
+
|
64
|
+
// Inverse
|
65
|
+
// ========================================================================
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
// @mixin hook-inverse-leader(){}
|
@@ -0,0 +1,248 @@
|
|
1
|
+
// Name: Lightbox
|
2
|
+
// Description: Component to create an lightbox image gallery
|
3
|
+
//
|
4
|
+
// Component: `uk-lightbox`
|
5
|
+
//
|
6
|
+
// Sub-objects: `uk-lightbox-page`
|
7
|
+
// `uk-lightbox-items`
|
8
|
+
// `uk-lightbox-toolbar`
|
9
|
+
// `uk-lightbox-toolbar-icon`
|
10
|
+
// `uk-lightbox-button`
|
11
|
+
// `uk-lightbox-caption`
|
12
|
+
// `uk-lightbox-iframe`
|
13
|
+
//
|
14
|
+
// States: `uk-open`
|
15
|
+
//
|
16
|
+
// ========================================================================
|
17
|
+
|
18
|
+
|
19
|
+
// Variables
|
20
|
+
// ========================================================================
|
21
|
+
|
22
|
+
$lightbox-z-index: $global-z-index + 10 !default;
|
23
|
+
$lightbox-background: #000 !default;
|
24
|
+
|
25
|
+
$lightbox-focus-outline: rgba(255,255,255,0.7) !default;
|
26
|
+
|
27
|
+
$lightbox-item-color: rgba(255,255,255,0.7) !default;
|
28
|
+
$lightbox-item-max-width: 100vw !default;
|
29
|
+
$lightbox-item-max-height: 100vh !default;
|
30
|
+
|
31
|
+
$lightbox-toolbar-padding-vertical: 10px !default;
|
32
|
+
$lightbox-toolbar-padding-horizontal: 10px !default;
|
33
|
+
$lightbox-toolbar-background: rgba(0,0,0,0.3) !default;
|
34
|
+
$lightbox-toolbar-color: rgba(255,255,255,0.7) !default;
|
35
|
+
|
36
|
+
$lightbox-toolbar-icon-padding: 5px !default;
|
37
|
+
$lightbox-toolbar-icon-color: rgba(255,255,255,0.7) !default;
|
38
|
+
|
39
|
+
$lightbox-toolbar-icon-hover-color: #fff !default;
|
40
|
+
|
41
|
+
$lightbox-button-size: 50px !default;
|
42
|
+
$lightbox-button-background: $lightbox-toolbar-background !default;
|
43
|
+
$lightbox-button-color: rgba(255,255,255,0.7) !default;
|
44
|
+
|
45
|
+
$lightbox-button-hover-color: #fff !default;
|
46
|
+
|
47
|
+
|
48
|
+
/* ========================================================================
|
49
|
+
Component: Lightbox
|
50
|
+
========================================================================== */
|
51
|
+
|
52
|
+
/*
|
53
|
+
* 1. Hide by default
|
54
|
+
* 2. Set position
|
55
|
+
* 3. Allow scrolling for the modal dialog
|
56
|
+
* 4. Horizontal padding
|
57
|
+
* 5. Mask the background page
|
58
|
+
* 6. Fade-in transition
|
59
|
+
* 7. Prevent cancellation of pointer events while dragging
|
60
|
+
*/
|
61
|
+
|
62
|
+
.uk-lightbox {
|
63
|
+
/* 1 */
|
64
|
+
display: none;
|
65
|
+
/* 2 */
|
66
|
+
position: fixed;
|
67
|
+
top: 0;
|
68
|
+
right: 0;
|
69
|
+
bottom: 0;
|
70
|
+
left: 0;
|
71
|
+
z-index: $lightbox-z-index;
|
72
|
+
/* 5 */
|
73
|
+
background: $lightbox-background;
|
74
|
+
/* 6 */
|
75
|
+
opacity: 0;
|
76
|
+
transition: opacity 0.15s linear;
|
77
|
+
/* 7 */
|
78
|
+
touch-action: pinch-zoom;
|
79
|
+
@if(mixin-exists(hook-lightbox)) {@include hook-lightbox();}
|
80
|
+
}
|
81
|
+
|
82
|
+
/*
|
83
|
+
* Open
|
84
|
+
* 1. Center child
|
85
|
+
* 2. Fade-in
|
86
|
+
*/
|
87
|
+
|
88
|
+
.uk-lightbox.uk-open {
|
89
|
+
display: block;
|
90
|
+
/* 2 */
|
91
|
+
opacity: 1;
|
92
|
+
}
|
93
|
+
|
94
|
+
/*
|
95
|
+
* Focus
|
96
|
+
*/
|
97
|
+
|
98
|
+
.uk-lightbox :focus { outline-color: $lightbox-focus-outline; }
|
99
|
+
.uk-lightbox :focus-visible { outline-color: $lightbox-focus-outline; }
|
100
|
+
|
101
|
+
|
102
|
+
/* Page
|
103
|
+
========================================================================== */
|
104
|
+
|
105
|
+
/*
|
106
|
+
* Prevent scrollbars
|
107
|
+
*/
|
108
|
+
|
109
|
+
.uk-lightbox-page { overflow: hidden; }
|
110
|
+
|
111
|
+
|
112
|
+
/* Item
|
113
|
+
========================================================================== */
|
114
|
+
|
115
|
+
/*
|
116
|
+
* 1. Center child within the viewport
|
117
|
+
* 2. Not visible by default
|
118
|
+
* 3. Color needed for spinner icon
|
119
|
+
* 4. Optimize animation
|
120
|
+
* 5. Responsiveness
|
121
|
+
* Using `vh` for `max-height` to fix image proportions after resize in Safari and Opera
|
122
|
+
*/
|
123
|
+
|
124
|
+
.uk-lightbox-items > * {
|
125
|
+
/* 1 */
|
126
|
+
position: absolute;
|
127
|
+
top: 0;
|
128
|
+
right: 0;
|
129
|
+
bottom: 0;
|
130
|
+
left: 0;
|
131
|
+
/* 2 */
|
132
|
+
display: none;
|
133
|
+
justify-content: center;
|
134
|
+
align-items: center;
|
135
|
+
/* 3 */
|
136
|
+
color: $lightbox-item-color;
|
137
|
+
/* 4 */
|
138
|
+
will-change: transform, opacity;
|
139
|
+
@if(mixin-exists(hook-lightbox-item)) {@include hook-lightbox-item();}
|
140
|
+
}
|
141
|
+
|
142
|
+
/* 5 */
|
143
|
+
.uk-lightbox-items > * > * {
|
144
|
+
max-width: $lightbox-item-max-width;
|
145
|
+
max-height: $lightbox-item-max-height;
|
146
|
+
}
|
147
|
+
|
148
|
+
.uk-lightbox-items > * > :not(iframe) {
|
149
|
+
width: auto;
|
150
|
+
height: auto;
|
151
|
+
}
|
152
|
+
|
153
|
+
.uk-lightbox-items > .uk-active { display: flex; }
|
154
|
+
|
155
|
+
/* Toolbar
|
156
|
+
========================================================================== */
|
157
|
+
|
158
|
+
.uk-lightbox-toolbar {
|
159
|
+
padding: $lightbox-toolbar-padding-vertical $lightbox-toolbar-padding-horizontal;
|
160
|
+
background: $lightbox-toolbar-background;
|
161
|
+
color: $lightbox-toolbar-color;
|
162
|
+
@if(mixin-exists(hook-lightbox-toolbar)) {@include hook-lightbox-toolbar();}
|
163
|
+
}
|
164
|
+
|
165
|
+
.uk-lightbox-toolbar > * { color: $lightbox-toolbar-color; }
|
166
|
+
|
167
|
+
|
168
|
+
/* Toolbar Icon (Close)
|
169
|
+
========================================================================== */
|
170
|
+
|
171
|
+
.uk-lightbox-toolbar-icon {
|
172
|
+
padding: $lightbox-toolbar-icon-padding;
|
173
|
+
color: $lightbox-toolbar-icon-color;
|
174
|
+
@if(mixin-exists(hook-lightbox-toolbar-icon)) {@include hook-lightbox-toolbar-icon();}
|
175
|
+
}
|
176
|
+
|
177
|
+
/*
|
178
|
+
* Hover
|
179
|
+
*/
|
180
|
+
|
181
|
+
.uk-lightbox-toolbar-icon:hover {
|
182
|
+
color: $lightbox-toolbar-icon-hover-color;
|
183
|
+
@if(mixin-exists(hook-lightbox-toolbar-icon-hover)) {@include hook-lightbox-toolbar-icon-hover();}
|
184
|
+
}
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
/* Button (Slidenav)
|
189
|
+
========================================================================== */
|
190
|
+
|
191
|
+
/*
|
192
|
+
* 1. Center icon vertically and horizontally
|
193
|
+
*/
|
194
|
+
|
195
|
+
.uk-lightbox-button {
|
196
|
+
box-sizing: border-box;
|
197
|
+
width: $lightbox-button-size;
|
198
|
+
height: $lightbox-button-size;
|
199
|
+
background: $lightbox-button-background;
|
200
|
+
color: $lightbox-button-color;
|
201
|
+
/* 1 */
|
202
|
+
display: inline-flex;
|
203
|
+
justify-content: center;
|
204
|
+
align-items: center;
|
205
|
+
@if(mixin-exists(hook-lightbox-button)) {@include hook-lightbox-button();}
|
206
|
+
}
|
207
|
+
|
208
|
+
/* Hover */
|
209
|
+
.uk-lightbox-button:hover {
|
210
|
+
color: $lightbox-button-hover-color;
|
211
|
+
@if(mixin-exists(hook-lightbox-button-hover)) {@include hook-lightbox-button-hover();}
|
212
|
+
}
|
213
|
+
|
214
|
+
/* OnClick */
|
215
|
+
.uk-lightbox-button:active {
|
216
|
+
@if(mixin-exists(hook-lightbox-button-active)) {@include hook-lightbox-button-active();}
|
217
|
+
}
|
218
|
+
|
219
|
+
|
220
|
+
/* Caption
|
221
|
+
========================================================================== */
|
222
|
+
|
223
|
+
.uk-lightbox-caption:empty { display: none; }
|
224
|
+
|
225
|
+
|
226
|
+
/* Iframe
|
227
|
+
========================================================================== */
|
228
|
+
|
229
|
+
.uk-lightbox-iframe {
|
230
|
+
width: 80%;
|
231
|
+
height: 80%;
|
232
|
+
}
|
233
|
+
|
234
|
+
|
235
|
+
// Hooks
|
236
|
+
// ========================================================================
|
237
|
+
|
238
|
+
@if(mixin-exists(hook-lightbox-misc)) {@include hook-lightbox-misc();}
|
239
|
+
|
240
|
+
// @mixin hook-lightbox(){}
|
241
|
+
// @mixin hook-lightbox-item(){}
|
242
|
+
// @mixin hook-lightbox-toolbar(){}
|
243
|
+
// @mixin hook-lightbox-toolbar-icon(){}
|
244
|
+
// @mixin hook-lightbox-toolbar-icon-hover(){}
|
245
|
+
// @mixin hook-lightbox-button(){}
|
246
|
+
// @mixin hook-lightbox-button-hover(){}
|
247
|
+
// @mixin hook-lightbox-button-active(){}
|
248
|
+
// @mixin hook-lightbox-misc(){}
|