@oruga-ui/theme-oruga 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +4 -3
  2. package/dist/oruga.css +2 -2
  3. package/dist/scss/components/_autocomplete.scss +15 -15
  4. package/dist/scss/components/_button.scss +175 -162
  5. package/dist/scss/components/_carousel.scss +199 -177
  6. package/dist/scss/components/_checkbox.scss +130 -122
  7. package/dist/scss/components/_collapse.scss +11 -9
  8. package/dist/scss/components/_datepicker.scss +408 -416
  9. package/dist/scss/components/_datetimepicker.scss +8 -8
  10. package/dist/scss/components/_dropdown.scss +224 -206
  11. package/dist/scss/components/_field.scss +107 -106
  12. package/dist/scss/components/_icon.scss +44 -40
  13. package/dist/scss/components/_input.scss +127 -112
  14. package/dist/scss/components/_loading.scss +27 -24
  15. package/dist/scss/components/_menu.scss +100 -63
  16. package/dist/scss/components/_modal.scss +66 -66
  17. package/dist/scss/components/_notification.scss +146 -134
  18. package/dist/scss/components/_pagination.scss +227 -198
  19. package/dist/scss/components/_radio.scss +95 -74
  20. package/dist/scss/components/_select.scss +143 -120
  21. package/dist/scss/components/_sidebar.scss +120 -104
  22. package/dist/scss/components/_skeleton.scss +55 -55
  23. package/dist/scss/components/_slider.scss +166 -156
  24. package/dist/scss/components/_steps.scss +300 -287
  25. package/dist/scss/components/_switch.scss +115 -128
  26. package/dist/scss/components/_table.scss +363 -330
  27. package/dist/scss/components/_tabs.scss +295 -280
  28. package/dist/scss/components/_taginput.scss +95 -93
  29. package/dist/scss/components/_timepicker.scss +74 -68
  30. package/dist/scss/components/_tooltip.scss +522 -424
  31. package/dist/scss/components/_upload.scss +51 -48
  32. package/dist/scss/oruga.scss +0 -1
  33. package/dist/scss/utils/_animations.scss +97 -97
  34. package/dist/scss/utils/_base.scss +31 -14
  35. package/dist/scss/utils/_helpers.scss +65 -65
  36. package/dist/scss/utils/_root.scss +37 -44
  37. package/dist/scss/utils/_variables.scss +44 -44
  38. package/dist/theme.js +1 -1
  39. package/package.json +26 -25
@@ -16,438 +16,536 @@ $tooltip-content-zindex: 38 !default;
16
16
  /* @docs */
17
17
 
18
18
  // Base
19
- .o-tip {
20
- position: relative;
21
- display: inline-flex;
22
-
23
- &__arrow {
24
- position: absolute;
25
- content: "";
26
- pointer-events: none;
27
-
28
- z-index: var(--#{$prefix}tooltip-content-zindex, $tooltip-content-zindex);
29
- color: var(--#{$prefix}tooltip-background-color, $tooltip-background-color);
30
-
31
- // variants
32
- @each $name, $pair in $colors {
33
- $color: list.nth($pair, 1);
34
- $color-invert: list.nth($pair, 2);
35
-
36
- &--#{$name} {
37
- color: var(--#{$prefix}variant-#{$name}, $color);
38
- }
39
- }
40
-
41
- // position
42
- &--bottom {
43
- top: auto;
44
- right: auto;
45
- bottom: 100%;
46
- left: 50%;
47
- transform: translateX(-50%);
48
-
49
- // arrow
50
- border-bottom-style: solid;
51
- border-right-style: solid;
52
- border-right-color: transparent;
53
- border-left-style: solid;
54
- border-left-color: transparent;
55
-
56
- border-bottom-width: var(
57
- --#{$prefix}tooltip-arrow-size,
58
- $tooltip-arrow-size
59
- );
60
- border-right-width: var(
61
- --#{$prefix}tooltip-arrow-size,
62
- $tooltip-arrow-size
63
- );
64
- border-left-width: var(
65
- --#{$prefix}tooltip-arrow-size,
66
- $tooltip-arrow-size
67
- );
68
- }
69
-
70
- &--top {
71
- top: 100%;
72
- right: auto;
73
- bottom: auto;
74
- left: 50%;
75
- transform: translateX(-50%);
76
-
77
- // arrow
78
- border-top-style: solid;
79
- border-right-style: solid;
80
- border-right-color: transparent;
81
- border-left-style: solid;
82
- border-left-color: transparent;
83
-
84
- border-top-width: var(
85
- --#{$prefix}tooltip-arrow-size,
86
- $tooltip-arrow-size
87
- );
88
- border-right-width: var(
89
- --#{$prefix}tooltip-arrow-size,
90
- $tooltip-arrow-size
91
- );
92
- border-left-width: var(
93
- --#{$prefix}tooltip-arrow-size,
94
- $tooltip-arrow-size
95
- );
96
- }
97
-
98
- &--left {
99
- top: 50%;
100
- right: auto;
101
- bottom: auto;
102
- left: 100%;
103
- transform: translateY(-50%);
104
-
105
- border-left-style: solid;
106
- border-top-style: solid;
107
- border-top-color: transparent;
108
- border-bottom-style: solid;
109
- border-bottom-color: transparent;
110
-
111
- border-left-width: var(
112
- --#{$prefix}tooltip-arrow-size,
113
- $tooltip-arrow-size
114
- );
115
- border-top-width: var(
116
- --#{$prefix}tooltip-arrow-size,
117
- $tooltip-arrow-size
118
- );
119
- border-bottom-width: var(
120
- --#{$prefix}tooltip-arrow-size,
121
- $tooltip-arrow-size
122
- );
123
- }
124
-
125
- &--right {
126
- top: 50%;
127
- right: 100%;
128
- bottom: auto;
129
- left: auto;
130
- transform: translateY(-50%);
131
-
132
- border-right-style: solid;
133
- border-top-style: solid;
134
- border-top-color: transparent;
135
- border-bottom-style: solid;
136
- border-bottom-color: transparent;
137
-
138
- border-right-width: var(
139
- --#{$prefix}tooltip-arrow-size,
140
- $tooltip-arrow-size
141
- );
142
- border-top-width: var(
143
- --#{$prefix}tooltip-arrow-size,
144
- $tooltip-arrow-size
145
- );
146
- border-bottom-width: var(
147
- --#{$prefix}tooltip-arrow-size,
148
- $tooltip-arrow-size
149
- );
150
- }
151
-
152
- &--top-right {
153
- top: 100%;
154
- right: auto;
155
- bottom: auto;
156
- left: 50%;
157
- transform: translateX(-50%);
158
-
159
- // arrow
160
- border-top-style: solid;
161
- border-right-style: solid;
162
- border-right-color: transparent;
163
- border-left-style: solid;
164
- border-left-color: transparent;
165
-
166
- border-top-width: var(
167
- --#{$prefix}tooltip-arrow-size,
168
- $tooltip-arrow-size
169
- );
170
- border-right-width: calc(
171
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
172
- );
173
- border-left-width: 0;
174
- }
175
-
176
- &--top-left {
177
- top: 100%;
178
- right: auto;
179
- bottom: auto;
180
- left: 50%;
181
- transform: translateX(-50%);
182
-
183
- // arrow
184
- border-top-style: solid;
185
- border-right-style: solid;
186
- border-right-color: transparent;
187
- border-left-style: solid;
188
- border-left-color: transparent;
189
-
190
- border-top-width: var(
191
- --#{$prefix}tooltip-arrow-size,
192
- $tooltip-arrow-size
193
- );
194
- border-left-width: calc(
195
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
196
- );
197
- border-right-width: 0;
198
- }
199
-
200
- &--bottom-left {
201
- top: auto;
202
- right: auto;
203
- bottom: 100%;
204
- left: 50%;
205
- transform: translateX(-50%);
206
-
207
- // arrow
208
- border-bottom-style: solid;
209
- border-right-style: solid;
210
- border-right-color: transparent;
211
- border-left-style: solid;
212
- border-left-color: transparent;
213
-
214
- border-bottom-width: var(
215
- --#{$prefix}tooltip-arrow-size,
216
- $tooltip-arrow-size
217
- );
218
- border-left-width: calc(
219
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
220
- );
221
- border-right-width: 0;
222
- }
223
-
224
- &--bottom-right {
225
- top: auto;
226
- right: auto;
227
- bottom: 100%;
228
- left: 50%;
229
- transform: translateX(-50%);
230
-
231
- // arrow
232
- border-bottom-style: solid;
233
- border-right-style: solid;
234
- border-right-color: transparent;
235
- border-left-style: solid;
236
- border-left-color: transparent;
237
-
238
- border-bottom-width: var(
239
- --#{$prefix}tooltip-arrow-size,
240
- $tooltip-arrow-size
241
- );
242
- border-right-width: calc(
243
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
244
- );
245
- border-left-width: 0;
246
- }
247
- }
248
-
249
- &__content {
250
- position: absolute;
251
- white-space: nowrap;
252
-
253
- max-width: var(
254
- --#{$prefix}tooltip-content-max-width,
255
- $tooltip-content-max-width
256
- );
257
- padding: var(--#{$prefix}tooltip-content-padding, $tooltip-content-padding);
258
- border-radius: var(
259
- --#{$prefix}tooltip-content-radius-large,
260
- $tooltip-content-radius-large
261
- );
262
- font-size: var(
263
- --#{$prefix}tooltip-content-font-size,
264
- $tooltip-content-font-size
265
- );
266
- font-weight: var(
267
- --#{$prefix}tooltip-content-weight-normal,
268
- $tooltip-content-weight-normal
269
- );
270
- box-shadow: var(
271
- --#{$prefix}tooltip-content-box-shadow,
272
- $tooltip-content-box-shadow
273
- );
274
- z-index: var(--#{$prefix}tooltip-content-zindex, $tooltip-content-zindex);
275
- background-color: var(
276
- --#{$prefix}tooltip-background-color,
277
- $tooltip-background-color
278
- );
279
- color: var(--#{$prefix}tooltip-color, $tooltip-color);
280
-
281
- // variants
282
- @each $name, $pair in $colors {
283
- $color: list.nth($pair, 1);
284
- $color-invert: list.nth($pair, 2);
285
-
286
- &--#{$name} {
287
- background: var(--#{$prefix}variant-#{$name}, $color);
288
- color: var(--#{$prefix}variant-invert-#{$name}, $color-invert);
289
- }
290
- }
291
-
292
- // position
293
- &--top {
294
- top: auto;
295
- right: auto;
296
-
297
- bottom: calc(
298
- (
299
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
300
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
301
- ) + 100%
302
- );
303
- left: 50%;
304
- transform: translateX(-50%);
305
- }
306
-
307
- &--bottom {
308
- top: calc(
309
- (
310
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
311
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
312
- ) + 100%
313
- );
314
- right: auto;
315
- bottom: auto;
316
- left: 50%;
317
- transform: translateX(-50%);
318
- }
319
-
320
- &--right {
321
- top: 50%;
322
- right: auto;
323
- bottom: auto;
324
- left: calc(
325
- (
326
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
327
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
328
- ) + 100%
329
- );
330
- transform: translateY(-50%);
331
- }
332
-
333
- &--left {
334
- top: 50%;
335
- right: calc(
336
- (
337
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
338
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
339
- ) + 100%
340
- );
341
- bottom: auto;
342
- left: auto;
343
- transform: translateY(-50%);
344
- }
345
-
346
- &--top-right {
347
- left: auto;
348
- top: auto;
349
- bottom: calc(
350
- (
351
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
352
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
353
- ) + 100%
354
- );
355
- transform: translateX(50%);
356
- }
357
-
358
- &--top-left {
359
- right: auto;
360
- top: auto;
361
- bottom: calc(
362
- (
363
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
364
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
365
- ) + 100%
366
- );
367
- transform: translateX(-50%);
368
- }
369
-
370
- &--bottom-right {
371
- left: auto;
372
- bottom: auto;
373
- top: calc(
374
- (
375
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
376
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
377
- ) + 100%
378
- );
379
- transform: translateX(50%);
380
- }
19
+ .o-tooltip {
20
+ position: relative;
21
+ display: inline-flex;
22
+
23
+ &__arrow {
24
+ position: absolute;
25
+ content: "";
26
+ pointer-events: none;
27
+
28
+ z-index: var(
29
+ --#{$prefix}tooltip-content-zindex,
30
+ $tooltip-content-zindex
31
+ );
32
+ color: var(
33
+ --#{$prefix}tooltip-background-color,
34
+ $tooltip-background-color
35
+ );
381
36
 
382
- &--bottom-left {
383
- left: auto;
384
- bottom: auto;
385
- top: calc(
386
- (
387
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
388
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
389
- ) + 100%
390
- );
391
- transform: translateX(-50%);
37
+ // variants
38
+ @each $name, $pair in $colors {
39
+ $color: list.nth($pair, 1);
40
+ $color-invert: list.nth($pair, 2);
41
+
42
+ &--#{$name} {
43
+ color: var(--#{$prefix}variant-#{$name}, $color);
44
+ }
45
+ }
46
+
47
+ // position
48
+ &--bottom {
49
+ top: auto;
50
+ right: auto;
51
+ bottom: 100%;
52
+ left: 50%;
53
+ transform: translateX(-50%);
54
+
55
+ // arrow
56
+ border-bottom-style: solid;
57
+ border-right-style: solid;
58
+ border-right-color: transparent;
59
+ border-left-style: solid;
60
+ border-left-color: transparent;
61
+
62
+ border-bottom-width: var(
63
+ --#{$prefix}tooltip-arrow-size,
64
+ $tooltip-arrow-size
65
+ );
66
+ border-right-width: var(
67
+ --#{$prefix}tooltip-arrow-size,
68
+ $tooltip-arrow-size
69
+ );
70
+ border-left-width: var(
71
+ --#{$prefix}tooltip-arrow-size,
72
+ $tooltip-arrow-size
73
+ );
74
+ }
75
+
76
+ &--top {
77
+ top: 100%;
78
+ right: auto;
79
+ bottom: auto;
80
+ left: 50%;
81
+ transform: translateX(-50%);
82
+
83
+ // arrow
84
+ border-top-style: solid;
85
+ border-right-style: solid;
86
+ border-right-color: transparent;
87
+ border-left-style: solid;
88
+ border-left-color: transparent;
89
+
90
+ border-top-width: var(
91
+ --#{$prefix}tooltip-arrow-size,
92
+ $tooltip-arrow-size
93
+ );
94
+ border-right-width: var(
95
+ --#{$prefix}tooltip-arrow-size,
96
+ $tooltip-arrow-size
97
+ );
98
+ border-left-width: var(
99
+ --#{$prefix}tooltip-arrow-size,
100
+ $tooltip-arrow-size
101
+ );
102
+ }
103
+
104
+ &--left {
105
+ top: 50%;
106
+ right: auto;
107
+ bottom: auto;
108
+ left: 100%;
109
+ transform: translateY(-50%);
110
+
111
+ border-left-style: solid;
112
+ border-top-style: solid;
113
+ border-top-color: transparent;
114
+ border-bottom-style: solid;
115
+ border-bottom-color: transparent;
116
+
117
+ border-left-width: var(
118
+ --#{$prefix}tooltip-arrow-size,
119
+ $tooltip-arrow-size
120
+ );
121
+ border-top-width: var(
122
+ --#{$prefix}tooltip-arrow-size,
123
+ $tooltip-arrow-size
124
+ );
125
+ border-bottom-width: var(
126
+ --#{$prefix}tooltip-arrow-size,
127
+ $tooltip-arrow-size
128
+ );
129
+ }
130
+
131
+ &--right {
132
+ top: 50%;
133
+ right: 100%;
134
+ bottom: auto;
135
+ left: auto;
136
+ transform: translateY(-50%);
137
+
138
+ border-right-style: solid;
139
+ border-top-style: solid;
140
+ border-top-color: transparent;
141
+ border-bottom-style: solid;
142
+ border-bottom-color: transparent;
143
+
144
+ border-right-width: var(
145
+ --#{$prefix}tooltip-arrow-size,
146
+ $tooltip-arrow-size
147
+ );
148
+ border-top-width: var(
149
+ --#{$prefix}tooltip-arrow-size,
150
+ $tooltip-arrow-size
151
+ );
152
+ border-bottom-width: var(
153
+ --#{$prefix}tooltip-arrow-size,
154
+ $tooltip-arrow-size
155
+ );
156
+ }
157
+
158
+ &--top-right {
159
+ top: 100%;
160
+ right: auto;
161
+ bottom: auto;
162
+ left: 50%;
163
+ transform: translateX(-50%);
164
+
165
+ // arrow
166
+ border-top-style: solid;
167
+ border-right-style: solid;
168
+ border-right-color: transparent;
169
+ border-left-style: solid;
170
+ border-left-color: transparent;
171
+
172
+ border-top-width: var(
173
+ --#{$prefix}tooltip-arrow-size,
174
+ $tooltip-arrow-size
175
+ );
176
+ border-right-width: calc(
177
+ var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
178
+ );
179
+ border-left-width: 0;
180
+ }
181
+
182
+ &--top-left {
183
+ top: 100%;
184
+ right: auto;
185
+ bottom: auto;
186
+ left: 50%;
187
+ transform: translateX(-50%);
188
+
189
+ // arrow
190
+ border-top-style: solid;
191
+ border-right-style: solid;
192
+ border-right-color: transparent;
193
+ border-left-style: solid;
194
+ border-left-color: transparent;
195
+
196
+ border-top-width: var(
197
+ --#{$prefix}tooltip-arrow-size,
198
+ $tooltip-arrow-size
199
+ );
200
+ border-left-width: calc(
201
+ var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
202
+ );
203
+ border-right-width: 0;
204
+ }
205
+
206
+ &--bottom-left {
207
+ top: auto;
208
+ right: auto;
209
+ bottom: 100%;
210
+ left: 50%;
211
+ transform: translateX(-50%);
212
+
213
+ // arrow
214
+ border-bottom-style: solid;
215
+ border-right-style: solid;
216
+ border-right-color: transparent;
217
+ border-left-style: solid;
218
+ border-left-color: transparent;
219
+
220
+ border-bottom-width: var(
221
+ --#{$prefix}tooltip-arrow-size,
222
+ $tooltip-arrow-size
223
+ );
224
+ border-left-width: calc(
225
+ var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
226
+ );
227
+ border-right-width: 0;
228
+ }
229
+
230
+ &--bottom-right {
231
+ top: auto;
232
+ right: auto;
233
+ bottom: 100%;
234
+ left: 50%;
235
+ transform: translateX(-50%);
236
+
237
+ // arrow
238
+ border-bottom-style: solid;
239
+ border-right-style: solid;
240
+ border-right-color: transparent;
241
+ border-left-style: solid;
242
+ border-left-color: transparent;
243
+
244
+ border-bottom-width: var(
245
+ --#{$prefix}tooltip-arrow-size,
246
+ $tooltip-arrow-size
247
+ );
248
+ border-right-width: calc(
249
+ var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) * 2
250
+ );
251
+ border-left-width: 0;
252
+ }
392
253
  }
393
254
 
394
- &--always {
395
- opacity: 1;
396
- visibility: visible;
397
- }
255
+ &__content {
256
+ position: absolute;
257
+ white-space: nowrap;
398
258
 
399
- &--multiline {
400
- text-align: center;
401
- white-space: normal;
402
- width: var(
403
- --#{$prefix}tooltip-content-multiline-width,
404
- $tooltip-content-multiline-width
405
- );
406
- }
407
- }
408
-
409
- &--teleport {
410
- .o-tip__content {
411
- // position
412
- &--top,
413
- &--top-left,
414
- &--top-right {
415
- margin-top: calc(
416
- -1 * (var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
417
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin))
259
+ max-width: var(
260
+ --#{$prefix}tooltip-content-max-width,
261
+ $tooltip-content-max-width
418
262
  );
419
- }
420
-
421
- &--bottom,
422
- &--bottom-left,
423
- &--bottom-right {
424
- margin-top: calc(
425
- (
426
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
427
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
428
- )
263
+ padding: var(
264
+ --#{$prefix}tooltip-content-padding,
265
+ $tooltip-content-padding
429
266
  );
430
- }
431
-
432
- &--right {
433
- margin-left: calc(
434
- (
435
- var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
436
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin)
437
- )
267
+ border-radius: var(
268
+ --#{$prefix}tooltip-content-radius-large,
269
+ $tooltip-content-radius-large
438
270
  );
439
- }
440
-
441
- &--left {
442
- margin-left: calc(
443
- -1 * (var(--#{$prefix}tooltip-arrow-size, $tooltip-arrow-size) +
444
- var(--#{$prefix}tooltip-arrow-margin, $tooltip-arrow-margin))
271
+ font-size: var(
272
+ --#{$prefix}tooltip-content-font-size,
273
+ $tooltip-content-font-size
274
+ );
275
+ font-weight: var(
276
+ --#{$prefix}tooltip-content-weight-normal,
277
+ $tooltip-content-weight-normal
278
+ );
279
+ box-shadow: var(
280
+ --#{$prefix}tooltip-content-box-shadow,
281
+ $tooltip-content-box-shadow
445
282
  );
446
- }
283
+ z-index: var(
284
+ --#{$prefix}tooltip-content-zindex,
285
+ $tooltip-content-zindex
286
+ );
287
+ background-color: var(
288
+ --#{$prefix}tooltip-background-color,
289
+ $tooltip-background-color
290
+ );
291
+ color: var(--#{$prefix}tooltip-color, $tooltip-color);
292
+
293
+ // variants
294
+ @each $name, $pair in $colors {
295
+ $color: list.nth($pair, 1);
296
+ $color-invert: list.nth($pair, 2);
297
+
298
+ &--#{$name} {
299
+ background: var(--#{$prefix}variant-#{$name}, $color);
300
+ color: var(--#{$prefix}variant-invert-#{$name}, $color-invert);
301
+ }
302
+ }
303
+
304
+ // position
305
+ &--top {
306
+ top: auto;
307
+ right: auto;
308
+
309
+ bottom: calc(
310
+ (
311
+ var(
312
+ --#{$prefix}tooltip-arrow-size,
313
+ $tooltip-arrow-size
314
+ ) +
315
+ var(
316
+ --#{$prefix}tooltip-arrow-margin,
317
+ $tooltip-arrow-margin
318
+ )
319
+ ) +
320
+ 100%
321
+ );
322
+ left: 50%;
323
+ transform: translateX(-50%);
324
+ }
325
+
326
+ &--bottom {
327
+ top: calc(
328
+ (
329
+ var(
330
+ --#{$prefix}tooltip-arrow-size,
331
+ $tooltip-arrow-size
332
+ ) +
333
+ var(
334
+ --#{$prefix}tooltip-arrow-margin,
335
+ $tooltip-arrow-margin
336
+ )
337
+ ) +
338
+ 100%
339
+ );
340
+ right: auto;
341
+ bottom: auto;
342
+ left: 50%;
343
+ transform: translateX(-50%);
344
+ }
345
+
346
+ &--right {
347
+ top: 50%;
348
+ right: auto;
349
+ bottom: auto;
350
+ left: calc(
351
+ (
352
+ var(
353
+ --#{$prefix}tooltip-arrow-size,
354
+ $tooltip-arrow-size
355
+ ) +
356
+ var(
357
+ --#{$prefix}tooltip-arrow-margin,
358
+ $tooltip-arrow-margin
359
+ )
360
+ ) +
361
+ 100%
362
+ );
363
+ transform: translateY(-50%);
364
+ }
365
+
366
+ &--left {
367
+ top: 50%;
368
+ right: calc(
369
+ (
370
+ var(
371
+ --#{$prefix}tooltip-arrow-size,
372
+ $tooltip-arrow-size
373
+ ) +
374
+ var(
375
+ --#{$prefix}tooltip-arrow-margin,
376
+ $tooltip-arrow-margin
377
+ )
378
+ ) +
379
+ 100%
380
+ );
381
+ bottom: auto;
382
+ left: auto;
383
+ transform: translateY(-50%);
384
+ }
385
+
386
+ &--top-right {
387
+ left: auto;
388
+ top: auto;
389
+ bottom: calc(
390
+ (
391
+ var(
392
+ --#{$prefix}tooltip-arrow-size,
393
+ $tooltip-arrow-size
394
+ ) +
395
+ var(
396
+ --#{$prefix}tooltip-arrow-margin,
397
+ $tooltip-arrow-margin
398
+ )
399
+ ) +
400
+ 100%
401
+ );
402
+ transform: translateX(50%);
403
+ }
404
+
405
+ &--top-left {
406
+ right: auto;
407
+ top: auto;
408
+ bottom: calc(
409
+ (
410
+ var(
411
+ --#{$prefix}tooltip-arrow-size,
412
+ $tooltip-arrow-size
413
+ ) +
414
+ var(
415
+ --#{$prefix}tooltip-arrow-margin,
416
+ $tooltip-arrow-margin
417
+ )
418
+ ) +
419
+ 100%
420
+ );
421
+ transform: translateX(-50%);
422
+ }
423
+
424
+ &--bottom-right {
425
+ left: auto;
426
+ bottom: auto;
427
+ top: calc(
428
+ (
429
+ var(
430
+ --#{$prefix}tooltip-arrow-size,
431
+ $tooltip-arrow-size
432
+ ) +
433
+ var(
434
+ --#{$prefix}tooltip-arrow-margin,
435
+ $tooltip-arrow-margin
436
+ )
437
+ ) +
438
+ 100%
439
+ );
440
+ transform: translateX(50%);
441
+ }
442
+
443
+ &--bottom-left {
444
+ left: auto;
445
+ bottom: auto;
446
+ top: calc(
447
+ (
448
+ var(
449
+ --#{$prefix}tooltip-arrow-size,
450
+ $tooltip-arrow-size
451
+ ) +
452
+ var(
453
+ --#{$prefix}tooltip-arrow-margin,
454
+ $tooltip-arrow-margin
455
+ )
456
+ ) +
457
+ 100%
458
+ );
459
+ transform: translateX(-50%);
460
+ }
461
+
462
+ &--always {
463
+ opacity: 1;
464
+ visibility: visible;
465
+ }
466
+
467
+ &--multiline {
468
+ text-align: center;
469
+ white-space: normal;
470
+ width: var(
471
+ --#{$prefix}tooltip-content-multiline-width,
472
+ $tooltip-content-multiline-width
473
+ );
474
+ }
447
475
  }
448
- }
449
476
 
450
- &__trigger {
451
- width: 100%;
452
- }
477
+ &--teleport {
478
+ .o-tip__content {
479
+ // position
480
+ &--top,
481
+ &--top-left,
482
+ &--top-right {
483
+ margin-top: calc(
484
+ -1 *
485
+ (
486
+ var(
487
+ --#{$prefix}tooltip-arrow-size,
488
+ $tooltip-arrow-size
489
+ ) +
490
+ var(
491
+ --#{$prefix}tooltip-arrow-margin,
492
+ $tooltip-arrow-margin
493
+ )
494
+ )
495
+ );
496
+ }
497
+
498
+ &--bottom,
499
+ &--bottom-left,
500
+ &--bottom-right {
501
+ margin-top: calc(
502
+ (
503
+ var(
504
+ --#{$prefix}tooltip-arrow-size,
505
+ $tooltip-arrow-size
506
+ ) +
507
+ var(
508
+ --#{$prefix}tooltip-arrow-margin,
509
+ $tooltip-arrow-margin
510
+ )
511
+ )
512
+ );
513
+ }
514
+
515
+ &--right {
516
+ margin-left: calc(
517
+ (
518
+ var(
519
+ --#{$prefix}tooltip-arrow-size,
520
+ $tooltip-arrow-size
521
+ ) +
522
+ var(
523
+ --#{$prefix}tooltip-arrow-margin,
524
+ $tooltip-arrow-margin
525
+ )
526
+ )
527
+ );
528
+ }
529
+
530
+ &--left {
531
+ margin-left: calc(
532
+ -1 *
533
+ (
534
+ var(
535
+ --#{$prefix}tooltip-arrow-size,
536
+ $tooltip-arrow-size
537
+ ) +
538
+ var(
539
+ --#{$prefix}tooltip-arrow-margin,
540
+ $tooltip-arrow-margin
541
+ )
542
+ )
543
+ );
544
+ }
545
+ }
546
+ }
547
+
548
+ &__trigger {
549
+ width: 100%;
550
+ }
453
551
  }