@broxus/react-uikit 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -215,151 +215,44 @@
215
215
  @include hook-subnav-misc;
216
216
  }
217
217
 
218
- // @mixin hook-subnav() {}
219
- // @mixin hook-subnav-item() {}
220
- // @mixin hook-subnav-item-hover() {}
221
- // @mixin hook-subnav-item-active() {}
222
- // @mixin hook-subnav-divider() {}
223
- // @mixin hook-subnav-pill-item() {}
224
- // @mixin hook-subnav-pill-item-hover() {}
225
- // @mixin hook-subnav-pill-item-onclick() {}
226
- // @mixin hook-subnav-pill-item-active() {}
227
- // @mixin hook-subnav-item-disabled() {}
228
- // @mixin hook-subnav-misc() {}
229
-
230
- // Inverse
231
- // ========================================================================
232
-
233
- @mixin hook-inverse() {
234
- .uk-subnav > * > :first-child {
235
- color: var(--inverse-subnav-item-color);
236
- @if mixin-exists(hook-inverse-subnav-item) {
237
- @include hook-inverse-subnav-item;
238
- }
239
- }
240
-
241
- .uk-subnav > * > a:hover,
242
- .uk-subnav > * > a:focus {
243
- color: var(--inverse-subnav-item-hover-color);
244
- @if mixin-exists(hook-inverse-subnav-item-hover) {
245
- @include hook-inverse-subnav-item-hover;
246
- }
247
- }
248
-
249
- .uk-subnav > .uk-active > a {
250
- color: var(--inverse-subnav-item-active-color);
251
- @if mixin-exists(hook-inverse-subnav-item-active) {
252
- @include hook-inverse-subnav-item-active;
253
- }
254
- }
255
-
256
- //
257
- // Divider
258
- //
259
-
260
- .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
261
- border-left-color: var(--inverse-subnav-divider-border);
262
- @if mixin-exists(hook-inverse-subnav-divider) {
263
- @include hook-inverse-subnav-divider;
264
- }
265
- }
266
-
267
- //
268
- // Pill
269
- //
270
-
271
- .uk-subnav-pill > * > :first-child {
272
- background-color: var(--inverse-subnav-pill-item-background);
273
- color: var(--inverse-subnav-pill-item-color);
274
- @if mixin-exists(hook-inverse-subnav-pill-item) {
275
- @include hook-inverse-subnav-pill-item;
276
- }
277
- }
278
-
279
- .uk-subnav-pill > * > a:hover,
280
- .uk-subnav-pill > * > a:focus {
281
- background-color: var(--inverse-subnav-pill-item-hover-background);
282
- color: var(--inverse-subnav-pill-item-hover-color);
283
- @if mixin-exists(hook-inverse-subnav-pill-item-hover) {
284
- @include hook-inverse-subnav-pill-item-hover;
285
- }
286
- }
287
-
288
- .uk-subnav-pill > * > a:active {
289
- background-color: var(--inverse-subnav-pill-item-onclick-background);
290
- color: var(--inverse-subnav-pill-item-onclick-color);
291
- @if mixin-exists(hook-inverse-subnav-pill-item-onclick) {
292
- @include hook-inverse-subnav-pill-item-onclick;
293
- }
294
- }
295
-
296
- .uk-subnav-pill > .uk-active > a {
297
- background-color: var(--inverse-subnav-pill-item-active-background);
298
- color: var(--inverse-subnav-pill-item-active-color);
299
- @if mixin-exists(hook-inverse-subnav-pill-item-active) {
300
- @include hook-inverse-subnav-pill-item-active;
301
- }
302
- }
303
-
304
- //
305
- // Disabled
306
- //
307
-
308
- .uk-subnav > .uk-disabled > a {
309
- color: var(--inverse-subnav-item-disabled-color);
310
- @if mixin-exists(hook-inverse-subnav-item-disabled) {
311
- @include hook-inverse-subnav-item-disabled;
312
- }
313
- }
314
- }
315
218
 
316
- // @mixin hook-inverse-subnav-item() {}
317
- // @mixin hook-inverse-subnav-item-hover() {}
318
- // @mixin hook-inverse-subnav-item-active() {}
319
- // @mixin hook-inverse-subnav-divider() {}
320
- // @mixin hook-inverse-subnav-pill-item() {}
321
- // @mixin hook-inverse-subnav-pill-item-hover() {}
322
- // @mixin hook-inverse-subnav-pill-item-onclick() {}
323
- // @mixin hook-inverse-subnav-pill-item-active() {}
324
- // @mixin hook-inverse-subnav-item-disabled() {}
325
-
326
- // Inverse
219
+ // Vars
327
220
  // ========================================================================
328
221
 
329
222
  :root {
330
- --subnav-margin-horizontal: $subnav-margin-horizontal;
331
- --subnav-item-color: $global-muted-color;
332
- --subnav-item-hover-color: $global-color;
333
- --subnav-item-hover-text-decoration: $subnav-item-hover-text-decoration;
334
- --subnav-item-active-color: $global-emphasis-color;
335
- --subnav-divider-margin-horizontal: $subnav-margin-horizontal;
336
- --subnav-divider-border-height: $subnav-divider-border-height;
337
- --subnav-divider-border-width: $global-border-width;
338
- --subnav-divider-border: $global-border;
339
- --subnav-pill-item-padding-vertical: $subnav-pill-item-padding-vertical;
340
- --subnav-pill-item-padding-horizontal: $subnav-pill-item-padding-horizontal;
341
- --subnav-pill-item-background: $subnav-pill-item-background;
342
- --subnav-pill-item-color: $subnav-item-color;
343
- --subnav-pill-item-hover-background: $global-muted-background;
344
- --subnav-pill-item-hover-color: $global-color;
345
- --subnav-pill-item-onclick-background: $subnav-pill-item-hover-background;
346
- --subnav-pill-item-onclick-color: $subnav-pill-item-hover-color;
347
- --subnav-pill-item-active-background: $global-primary-background;
348
- --subnav-pill-item-active-color: $global-inverse-color;
349
- --subnav-item-disabled-color: $global-muted-color;
223
+ --subnav-margin-horizontal: #{$subnav-margin-horizontal};
224
+ --subnav-item-color: var(--global-muted-color);
225
+ --subnav-item-hover-color: var(--global-color);
226
+ --subnav-item-hover-text-decoration: #{$subnav-item-hover-text-decoration};
227
+ --subnav-item-active-color: var(--global-emphasis-color);
228
+ --subnav-divider-margin-horizontal: #{$subnav-margin-horizontal};
229
+ --subnav-divider-border-height: #{$subnav-divider-border-height};
230
+ --subnav-divider-border-width: var(--global-border-width);
231
+ --subnav-divider-border: var(--global-border);
232
+ --subnav-pill-item-padding-vertical: #{$subnav-pill-item-padding-vertical};
233
+ --subnav-pill-item-padding-horizontal: #{$subnav-pill-item-padding-horizontal};
234
+ --subnav-pill-item-background: #{$subnav-pill-item-background};
235
+ --subnav-pill-item-color: #{$subnav-item-color};
236
+ --subnav-pill-item-hover-background: var(--global-muted-background);
237
+ --subnav-pill-item-hover-color: var(--global-color);
238
+ --subnav-pill-item-onclick-background: #{$subnav-pill-item-hover-background};
239
+ --subnav-pill-item-onclick-color: #{$subnav-pill-item-hover-color};
240
+ --subnav-pill-item-active-background: var(--global-primary-background);
241
+ --subnav-pill-item-active-color: var(--global-inverse-color);
242
+ --subnav-item-disabled-color: var(--global-muted-color);
350
243
 
351
244
  // Inverse
352
- --inverse-subnav-item-color: $inverse-global-muted-color;
353
- --inverse-subnav-item-hover-color: $inverse-global-color;
354
- --inverse-subnav-item-active-color: $inverse-global-emphasis-color;
355
- --inverse-subnav-divider-border: $inverse-global-border;
356
- --inverse-subnav-pill-item-background: $inverse-subnav-pill-item-background;
357
- --inverse-subnav-pill-item-color: $inverse-global-muted-color;
358
- --inverse-subnav-pill-item-hover-background: $inverse-global-muted-background;
359
- --inverse-subnav-pill-item-hover-color: $inverse-global-color;
360
- --inverse-subnav-pill-item-onclick-background: $inverse-subnav-pill-item-hover-background;
361
- --inverse-subnav-pill-item-onclick-color: $inverse-subnav-pill-item-hover-color;
362
- --inverse-subnav-pill-item-active-background: $inverse-global-primary-background;
363
- --inverse-subnav-pill-item-active-color: $inverse-global-inverse-color;
364
- --inverse-subnav-item-disabled-color: $inverse-global-muted-color;
245
+ --inverse-subnav-item-color: var(--inverse-global-muted-color);
246
+ --inverse-subnav-item-hover-color: var(--inverse-global-color);
247
+ --inverse-subnav-item-active-color: var(--inverse-global-emphasis-color);
248
+ --inverse-subnav-divider-border: var(--inverse-global-border);
249
+ --inverse-subnav-pill-item-background: #{$inverse-subnav-pill-item-background};
250
+ --inverse-subnav-pill-item-color: var(--inverse-global-muted-color);
251
+ --inverse-subnav-pill-item-hover-background: var(--inverse-global-muted-background);
252
+ --inverse-subnav-pill-item-hover-color: var(--inverse-global-color);
253
+ --inverse-subnav-pill-item-onclick-background: #{$inverse-subnav-pill-item-hover-background};
254
+ --inverse-subnav-pill-item-onclick-color: #{$inverse-subnav-pill-item-hover-color};
255
+ --inverse-subnav-pill-item-active-background: var(--inverse-global-primary-background);
256
+ --inverse-subnav-pill-item-active-color: var(--inverse-global-inverse-color);
257
+ --inverse-subnav-item-disabled-color: var(--inverse-global-muted-color);
365
258
  }
@@ -24,7 +24,6 @@
24
24
 
25
25
  @import 'variables.scss';
26
26
 
27
-
28
27
  /* ========================================================================
29
28
  Component: Table
30
29
  ========================================================================== */
@@ -45,12 +44,15 @@
45
44
 
46
45
  /* 2 */
47
46
  width: 100%;
48
- .hook-table;
47
+ @if mixin-exists(hook-table) {
48
+ @include hook-table;
49
+ }
49
50
  }
50
51
 
51
52
  /* Add margin if adjacent element */
52
- * + .uk-table { margin-top: var(--table-margin-vertical); }
53
-
53
+ * + .uk-table {
54
+ margin-top: var(--table-margin-vertical);
55
+ }
54
56
 
55
57
  /* Header cell
56
58
  ========================================================================== */
@@ -68,35 +70,40 @@
68
70
  padding: var(--table-cell-padding-vertical);
69
71
  text-align: left;
70
72
  vertical-align: bottom;
71
- .hook-table-header-cell;
73
+ @if mixin-exists(hook-table) {
74
+ @include hook-table-header-cell;
75
+ }
72
76
  }
73
77
 
74
-
75
78
  /* Cell
76
79
  ========================================================================== */
77
80
 
78
81
  .uk-table td {
79
82
  padding: var(--table-cell-padding-vertical);
80
83
  vertical-align: top;
81
- .hook-table-cell;
84
+ @if mixin-exists(hook-table-cell) {
85
+ @include hook-table-cell;
86
+ }
82
87
  }
83
88
 
84
89
  /*
85
90
  * Remove margin from the last-child
86
91
  */
87
92
 
88
- .uk-table td > :last-child { margin-bottom: 0; }
89
-
93
+ .uk-table td > :last-child {
94
+ margin-bottom: 0;
95
+ }
90
96
 
91
97
  /* Footer
92
98
  ========================================================================== */
93
99
 
94
100
  .uk-table tfoot {
95
101
  font-size: var(--table-footer-font-size);
96
- .hook-table-footer;
102
+ @if mixin-exists(hook-table-footer) {
103
+ @include hook-table-footer;
104
+ }
97
105
  }
98
106
 
99
-
100
107
  /* Caption
101
108
  ========================================================================== */
102
109
 
@@ -104,16 +111,18 @@
104
111
  color: var(--table-caption-color);
105
112
  font-size: var(--table-caption-font-size);
106
113
  text-align: left;
107
- .hook-table-caption;
114
+ @if mixin-exists(hook-table-caption) {
115
+ @include hook-table-caption;
116
+ }
108
117
  }
109
118
 
110
-
111
119
  /* Alignment modifier
112
120
  ========================================================================== */
113
121
 
114
122
  .uk-table-middle,
115
- .uk-table-middle td { vertical-align: middle !important; }
116
-
123
+ .uk-table-middle td {
124
+ vertical-align: middle !important;
125
+ }
117
126
 
118
127
  /* Style modifiers
119
128
  ========================================================================== */
@@ -126,7 +135,9 @@
126
135
  .uk-table-divider > :not(:first-child) > tr,
127
136
  .uk-table-divider > :first-child > tr:not(:first-child) {
128
137
  border-top: var(--table-divider-border-width);
129
- .hook-table-divider;
138
+ @if mixin-exists(hook-table-divider) {
139
+ @include hook-table-divider;
140
+ }
130
141
  }
131
142
 
132
143
  /*
@@ -136,7 +147,9 @@
136
147
  .uk-table-striped > tr:nth-of-type(odd),
137
148
  .uk-table-striped tbody tr:nth-of-type(odd) {
138
149
  background: var(--table-striped-row-background);
139
- .hook-table-striped;
150
+ @if mixin-exists(hook-table-striped) {
151
+ @include hook-table-striped;
152
+ }
140
153
  }
141
154
 
142
155
  /*
@@ -146,17 +159,20 @@
146
159
  .uk-table-hover > tr:hover,
147
160
  .uk-table-hover tbody tr:hover {
148
161
  background: var(--table-hover-row-background);
149
- .hook-table-hover;
162
+ @if mixin-exists(hook-table-hover) {
163
+ @include hook-table-hover;
164
+ }
150
165
  }
151
166
 
152
-
153
167
  /* Active state
154
168
  ========================================================================== */
155
169
 
156
170
  .uk-table > tr.uk-active,
157
171
  .uk-table tbody tr.uk-active {
158
172
  background: var(--table-row-active-background);
159
- .hook-table-row-active;
173
+ @if mixin-exists(hook-table-row-active) {
174
+ @include hook-table-row-active;
175
+ }
160
176
  }
161
177
 
162
178
  /* Size modifier
@@ -165,32 +181,42 @@
165
181
  .uk-table-small th,
166
182
  .uk-table-small td {
167
183
  padding: var(--table-small-cell-padding-vertical);
168
- .hook-table-small;
184
+ @if mixin-exists(hook-table-small) {
185
+ @include hook-table-small;
186
+ }
169
187
  }
170
188
 
171
189
  .uk-table-large th,
172
190
  .uk-table-large td {
173
191
  padding: var(--table-large-cell-padding-vertical);
174
- .hook-table-large;
192
+ @if mixin-exists(hook-table-large) {
193
+ @include hook-table-large;
194
+ }
175
195
  }
176
196
 
177
-
178
197
  /* Justify modifier
179
198
  ========================================================================== */
180
199
 
181
200
  .uk-table-justify th:first-child,
182
- .uk-table-justify td:first-child { padding-left: 0; }
201
+ .uk-table-justify td:first-child {
202
+ padding-left: 0;
203
+ }
183
204
 
184
205
  .uk-table-justify th:last-child,
185
- .uk-table-justify td:last-child { padding-right: 0; }
186
-
206
+ .uk-table-justify td:last-child {
207
+ padding-right: 0;
208
+ }
187
209
 
188
210
  /* Cell size modifier
189
211
  ========================================================================== */
190
212
 
191
- .uk-table-shrink { width: 1px; }
192
- .uk-table-expand { min-width: var(--table-expand-min-width); }
213
+ .uk-table-shrink {
214
+ width: 1px;
215
+ }
193
216
 
217
+ .uk-table-expand {
218
+ min-width: var(--table-expand-min-width);
219
+ }
194
220
 
195
221
  /* Cell link modifier
196
222
  ========================================================================== */
@@ -199,7 +225,9 @@
199
225
  * Does not work with `uk-table-justify` at the moment
200
226
  */
201
227
 
202
- .uk-table-link { padding: 0 !important; }
228
+ .uk-table-link {
229
+ padding: 0 !important;
230
+ }
203
231
 
204
232
  .uk-table-link > a {
205
233
  display: block;
@@ -210,21 +238,23 @@
210
238
  padding: var(--table-small-cell-padding-vertical);
211
239
  }
212
240
 
213
-
214
241
  /* Responsive table
215
242
  ========================================================================== */
216
243
 
217
244
 
218
245
  /* Phone landscape and smaller */
219
- @media (max-width: @breakpoint-small-max) {
220
-
246
+ @media (max-width: $breakpoint-small-max) {
221
247
  .uk-table-responsive,
222
248
  .uk-table-responsive tbody,
223
249
  .uk-table-responsive th,
224
250
  .uk-table-responsive td,
225
- .uk-table-responsive tr { display: block; }
251
+ .uk-table-responsive tr {
252
+ display: block;
253
+ }
226
254
 
227
- .uk-table-responsive thead { display: none; }
255
+ .uk-table-responsive thead {
256
+ display: none;
257
+ }
228
258
 
229
259
  .uk-table-responsive th,
230
260
  .uk-table-responsive td {
@@ -235,16 +265,16 @@
235
265
  width: auto !important;
236
266
  }
237
267
 
238
- .uk-table-responsive th:not(:first-child):not(.uk-table-link),
239
- .uk-table-responsive td:not(:first-child):not(.uk-table-link),
268
+ .uk-table-responsive th:not(:first-child, .uk-table-link),
269
+ .uk-table-responsive td:not(:first-child, .uk-table-link),
240
270
  .uk-table-responsive .uk-table-link:not(:first-child) > a {
241
- padding-top: round(@table-cell-padding-vertical / 3) !important;
271
+ padding-top: round($table-cell-padding-vertical / 3) !important;
242
272
  }
243
273
 
244
- .uk-table-responsive th:not(:last-child):not(.uk-table-link),
245
- .uk-table-responsive td:not(:last-child):not(.uk-table-link),
274
+ .uk-table-responsive th:not(:last-child, .uk-table-link),
275
+ .uk-table-responsive td:not(:last-child, .uk-table-link),
246
276
  .uk-table-responsive .uk-table-link:not(:last-child) > a {
247
- padding-bottom: round(@table-cell-padding-vertical / 3) !important;
277
+ padding-bottom: round($table-cell-padding-vertical / 3) !important;
248
278
  }
249
279
 
250
280
  .uk-table-justify.uk-table-responsive th,
@@ -252,123 +282,44 @@
252
282
  padding-left: 0;
253
283
  padding-right: 0;
254
284
  }
255
-
256
285
  }
257
286
 
258
-
259
287
  // Hooks
260
288
  // ========================================================================
261
289
 
262
- .hook-table-misc;
263
-
264
- .hook-table() {}
265
-
266
- .hook-table-header-cell() {}
267
-
268
- .hook-table-cell() {}
269
-
270
- .hook-table-footer() {}
271
-
272
- .hook-table-caption() {}
273
-
274
- .hook-table-row-active() {}
275
-
276
- .hook-table-divider() {}
277
-
278
- .hook-table-striped() {}
279
-
280
- .hook-table-hover() {}
281
-
282
- .hook-table-small() {}
283
-
284
- .hook-table-large() {}
285
-
286
- .hook-table-misc() {}
287
-
288
-
289
- // Inverse
290
- // ========================================================================
291
-
292
- .hook-inverse() {
293
-
294
- .uk-table th {
295
- color: var(--inverse-table-header-cell-color);
296
- .hook-inverse-table-header-cell;
297
- }
298
-
299
- .uk-table caption {
300
- color: var(--inverse-table-caption-color);
301
- .hook-inverse-table-caption;
302
- }
303
-
304
- .uk-table > tr.uk-active,
305
- .uk-table tbody tr.uk-active {
306
- background: var(--inverse-table-row-active-background);
307
- .hook-inverse-table-row-active;
308
- }
309
-
310
- .uk-table-divider > tr:not(:first-child),
311
- .uk-table-divider > :not(:first-child) > tr,
312
- .uk-table-divider > :first-child > tr:not(:first-child) {
313
- border-top-color: var(--inverse-table-divider-border);
314
- .hook-inverse-table-divider;
315
- }
316
-
317
- .uk-table-striped > tr:nth-of-type(odd),
318
- .uk-table-striped tbody tr:nth-of-type(odd) {
319
- background: var(--inverse-table-striped-row-background);
320
- .hook-inverse-table-striped;
321
- }
322
-
323
- .uk-table-hover > tr:hover,
324
- .uk-table-hover tbody tr:hover {
325
- background: var(--inverse-table-hover-row-background);
326
- .hook-inverse-table-hover;
327
- }
328
-
290
+ @if mixin-exists(hook-table-misc) {
291
+ @include hook-table-misc;
329
292
  }
330
293
 
331
- .hook-inverse-table-header-cell() {}
332
-
333
- .hook-inverse-table-caption() {}
334
-
335
- .hook-inverse-table-row-active() {}
336
-
337
- .hook-inverse-table-divider() {}
338
-
339
- .hook-inverse-table-striped() {}
340
-
341
- .hook-inverse-table-hover() {}
342
-
343
294
 
344
295
  // Vars
345
296
  // ========================================================================
346
297
 
347
298
  :root {
348
299
  --table-margin-vertical: var(--global-margin);
349
- --table-cell-padding-vertical: @table-cell-padding-vertical;
350
- --table-cell-padding-horizontal: @table-cell-padding-horizontal;
300
+ --table-cell-padding-vertical: #{$table-cell-padding-vertical};
301
+ --table-cell-padding-horizontal: #{$table-cell-padding-horizontal};
351
302
  --table-header-cell-font-size: var(--global-font-size);
352
- --table-header-cell-font-weight: @table-header-cell-font-weight;
303
+ --table-header-cell-font-weight: #{$table-header-cell-font-weight};
353
304
  --table-header-cell-color: var(--global-color);
354
305
  --table-footer-font-size: var(--global-small-font-size);
355
306
  --table-caption-font-size: var(--global-small-font-size);
356
307
  --table-caption-color: var(--global-muted-color);
357
- --table-row-active-background: @table-row-active-background;
308
+ --table-row-active-background: #{$table-row-active-background};
358
309
  --table-divider-border-width: var(--global-border-width);
359
310
  --table-divider-border: var(--global-border);
360
311
  --table-striped-row-background: var(--global-muted-background);
361
312
  --table-hover-row-background: var(--table-row-active-background);
362
- --table-small-cell-padding-vertical: @table-small-cell-padding-vertical;
363
- --table-small-cell-padding-horizontal: @table-small-cell-padding-horizontal;
364
- --table-large-cell-padding-vertical: @table-large-cell-padding-vertical;
365
- --table-large-cell-padding-horizontal: @table-large-cell-padding-horizontal;
366
- --table-expand-min-width: @table-expand-min-width;
313
+ --table-small-cell-padding-vertical: #{$table-small-cell-padding-vertical};
314
+ --table-small-cell-padding-horizontal: #{$table-small-cell-padding-horizontal};
315
+ --table-large-cell-padding-vertical: #{$table-large-cell-padding-vertical};
316
+ --table-large-cell-padding-horizontal: #{$table-large-cell-padding-horizontal};
317
+ --table-expand-min-width: #{$table-expand-min-width};
367
318
 
368
319
  // Inverse
369
320
  --inverse-table-header-cell-color: var(--inverse-global-color);
370
321
  --inverse-table-caption-color: var(--inverse-global-muted-color);
371
- --inverse-table-row-active-background: @inverse-table-row-active-background;
322
+ --inverse-table-row-active-background: #{$inverse-table-row-active-background};
372
323
  --inverse-table-divider-border: var(--inverse-global-border);
373
324
  --inverse-table-striped-row-background: var(--inverse-global-muted-background);
374
325
  --inverse-table-hover-row-background: var(--inverse-table-row-active-background);
@@ -146,6 +146,6 @@
146
146
  // ========================================================================
147
147
 
148
148
  .hook-inverse() {
149
- --thumbnav-margin-horizontal: @thumbnav-margin-horizontal;
149
+ --thumbnav-margin-horizontal: #{$thumbnav-margin-horizontal};
150
150
  --thumbnav-margin-vertical: var(--thumbnav-margin-horizontal);
151
151
  }
@@ -23,7 +23,9 @@
23
23
  .uk-totop {
24
24
  color: var(--totop-color);
25
25
  padding: var(--totop-padding);
26
- .hook-totop;
26
+ @if mixin-exists(hook-totop) {
27
+ @include hook-totop;
28
+ }
27
29
  }
28
30
 
29
31
  /* Hover + Focus */
@@ -31,20 +33,26 @@
31
33
  .uk-totop:focus {
32
34
  color: var(--totop-hover-color);
33
35
  outline: none;
34
- .hook-totop-hover;
36
+ @if mixin-exists(hook-totop-hover) {
37
+ @include hook-totop-hover;
38
+ }
35
39
  }
36
40
 
37
41
  /* OnClick */
38
42
  .uk-totop:active {
39
43
  color: var(--totop-active-color);
40
- .hook-totop-active;
44
+ @if mixin-exists(hook-totop-active) {
45
+ @include hook-totop-active;
46
+ }
41
47
  }
42
48
 
43
49
 
44
50
  // Hooks
45
51
  // ========================================================================
46
52
 
47
- .hook-totop-misc;
53
+ @if mixin-exists(hook-totop-misc) {
54
+ @include hook-totop-misc;
55
+ }
48
56
 
49
57
  .hook-totop() {}
50
58
 
@@ -58,24 +66,28 @@
58
66
  // Inverse
59
67
  // ========================================================================
60
68
 
61
- .hook-inverse() {
62
-
69
+ .hook-inverse-component-totop() {
63
70
  .uk-totop {
64
71
  color: var(--inverse-totop-color);
65
- .hook-inverse-totop;
72
+ @if mixin-exists(hook-inverse-totop) {
73
+ @include hook-inverse-totop;
74
+ }
66
75
  }
67
76
 
68
77
  .uk-totop:hover,
69
78
  .uk-totop:focus {
70
79
  color: var(--inverse-totop-hover-color);
71
- .hook-inverse-totop-hover;
80
+ @if mixin-exists(hook-inverse-totop-hover) {
81
+ @include hook-inverse-totop-hover;
82
+ }
72
83
  }
73
84
 
74
85
  .uk-totop:active {
75
86
  color: var(--inverse-totop-active-color);
76
- .hook-inverse-totop-active;
87
+ @if mixin-exists(hook-inverse-totop-active) {
88
+ @include hook-inverse-totop-active;
89
+ }
77
90
  }
78
-
79
91
  }
80
92
 
81
93
  .hook-inverse-totop() {}
@@ -89,7 +101,7 @@
89
101
  // ========================================================================
90
102
 
91
103
  :root {
92
- --totop-padding: @totop-padding;
104
+ --totop-padding: #{$totop-padding};
93
105
  --totop-color: var(--global-muted-color);
94
106
  --totop-hover-color: var(--global-color);
95
107
  --totop-active-color: var(--global-emphasis-color);