@muraldevkit/ui-toolkit 2.15.5 → 2.17.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.
- package/dist/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.d.ts +1 -1
- package/dist/components/button/MrlButton/MrlButton.d.ts +10 -2
- package/dist/components/button/MrlIconButton/MrlIconButton.d.ts +9 -1
- package/dist/components/button/helpers.d.ts +13 -2
- package/dist/components/index.d.ts +1 -0
- package/dist/components/loader/MrlSpinner/MrlSpinner.d.ts +10 -0
- package/dist/components/loader/MrlSpinner/index.d.ts +1 -0
- package/dist/components/loader/constants.d.ts +31 -0
- package/dist/components/loader/index.d.ts +1 -0
- package/dist/components/svg/config.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/styles/MrlButton/global.scss +11 -2
- package/dist/styles/MrlSpinner/module.scss +85 -0
- package/dist/styles/a11y-helpers/global.scss +5 -0
- package/dist/styles/a11y-helpers/mixins.scss +11 -0
- package/dist/styles/loader/variables.scss +6 -0
- package/package.json +1 -1
|
@@ -21,11 +21,19 @@
|
|
|
21
21
|
@include mrl-text-interactive;
|
|
22
22
|
@include mrl-button-size('large');
|
|
23
23
|
}
|
|
24
|
-
.MrlSvgContainer
|
|
24
|
+
.MrlSvgContainer,
|
|
25
|
+
.MrlSpinner-container {
|
|
25
26
|
margin-right: var(--mrl-button-icon-margin-right);
|
|
26
27
|
max-width: var(--mrl-button-icon-size);
|
|
27
28
|
min-width: var(--mrl-button-icon-size);
|
|
28
29
|
}
|
|
30
|
+
.mrlButton-spinner-container {
|
|
31
|
+
margin: 0 auto;
|
|
32
|
+
position: absolute;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
.mrlButton--loading .mrlButton-text {
|
|
36
|
+
opacity: 0;
|
|
29
37
|
}
|
|
30
38
|
.mrlButton--icon-before {
|
|
31
39
|
padding-left: var(--mrl-spacing-04);
|
|
@@ -47,7 +55,8 @@
|
|
|
47
55
|
&.mrlButton--ghost-inverse {
|
|
48
56
|
padding-right: calc(var(--mrl-spacing-01) + var(--mrl-spacing-02));
|
|
49
57
|
}
|
|
50
|
-
.MrlSvgContainer
|
|
58
|
+
.MrlSvgContainer,
|
|
59
|
+
.MrlSpinner-container {
|
|
51
60
|
margin-left: var(--mrl-button-icon-margin-right);
|
|
52
61
|
margin-right: 0;
|
|
53
62
|
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
@use '../loader.variables.scss';
|
|
2
|
+
$spinner-size: var(--mrl-spinner-size);
|
|
3
|
+
$spinner-sm-scale: 1;
|
|
4
|
+
$spinner-md-scale: 1.2;
|
|
5
|
+
$spinner-lg-scale: 2;
|
|
6
|
+
@mixin spinner-size-variant($scale) {
|
|
7
|
+
&::before {
|
|
8
|
+
transform: scale($scale);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
@keyframes spin {
|
|
12
|
+
from {
|
|
13
|
+
transform: rotate(0);
|
|
14
|
+
}
|
|
15
|
+
to {
|
|
16
|
+
transform: rotate(360deg);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
.MrlSpinner-container {
|
|
20
|
+
height: var(--mrl-spinner-size);
|
|
21
|
+
overflow: hidden;
|
|
22
|
+
position: relative;
|
|
23
|
+
width: var(--mrl-spinner-size);
|
|
24
|
+
&--medium {
|
|
25
|
+
height: var(--mrl-spinner-size-medium);
|
|
26
|
+
width: var(--mrl-spinner-size-medium);
|
|
27
|
+
}
|
|
28
|
+
&--large {
|
|
29
|
+
height: var(--mrl-spinner-size-large);
|
|
30
|
+
width: var(--mrl-spinner-size-large);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
.MrlSpinner {
|
|
34
|
+
align-items: center;
|
|
35
|
+
animation: 500ms spin var(--mrl-timing-m3) infinite;
|
|
36
|
+
display: flex;
|
|
37
|
+
height: var(--mrl-spinner-size);
|
|
38
|
+
justify-content: center;
|
|
39
|
+
width: var(--mrl-spinner-size);
|
|
40
|
+
&::before {
|
|
41
|
+
background: conic-gradient(
|
|
42
|
+
from 11.31deg at 50% 50%,
|
|
43
|
+
rgba(var(--mrl-blue-70), 0) 0deg,
|
|
44
|
+
rgba(var(--mrl-blue-70), 0) 0.26deg,
|
|
45
|
+
rgba(var(--mrl-blue-70), 0) 60deg,
|
|
46
|
+
rgba(var(--mrl-blue-70), 0.26) 114.38deg,
|
|
47
|
+
rgba(var(--mrl-blue-70), 1) 217.5deg,
|
|
48
|
+
rgba(var(--mrl-blue-70), 1) 360deg
|
|
49
|
+
);
|
|
50
|
+
border-radius: 6px;
|
|
51
|
+
clip-path: path(
|
|
52
|
+
'M10 1c0-.552-.449-1.005-.999-.95C3.947.55 0 4.813 0 10c0 5.523 4.477 10 10 10s10-4.477 10-10a9.987 9.987 0 0 0-4.152-8.112c-.452-.327-1.073-.154-1.347.332-.268.477-.099 1.077.337 1.408a8 8 0 1 1-5.836-1.566C9.55 1.993 10 1.552 10 1Z'
|
|
53
|
+
);
|
|
54
|
+
content: '';
|
|
55
|
+
display: block;
|
|
56
|
+
height: $spinner-size;
|
|
57
|
+
width: $spinner-size;
|
|
58
|
+
}
|
|
59
|
+
&--medium {
|
|
60
|
+
height: var(--mrl-spinner-size-medium);
|
|
61
|
+
width: var(--mrl-spinner-size-medium);
|
|
62
|
+
@include spinner-size-variant($spinner-md-scale);
|
|
63
|
+
}
|
|
64
|
+
&--large {
|
|
65
|
+
height: var(--mrl-spinner-size-large);
|
|
66
|
+
width: var(--mrl-spinner-size-large);
|
|
67
|
+
@include spinner-size-variant($spinner-lg-scale);
|
|
68
|
+
}
|
|
69
|
+
&--inverse::before {
|
|
70
|
+
background: conic-gradient(
|
|
71
|
+
from 11.31deg at 50% 50%,
|
|
72
|
+
rgba(var(--mrl-white), 0) 0deg,
|
|
73
|
+
rgba(var(--mrl-white), 0) 0.26deg,
|
|
74
|
+
rgba(var(--mrl-white), 0) 60deg,
|
|
75
|
+
rgba(var(--mrl-white), 0.26) 114.38deg,
|
|
76
|
+
rgba(var(--mrl-white), 1) 217.5deg,
|
|
77
|
+
rgba(var(--mrl-white), 1) 360deg
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
@media (prefers-reduced-motion) {
|
|
82
|
+
.MrlSpinner {
|
|
83
|
+
animation: 1.5s spin linear 4;
|
|
84
|
+
}
|
|
85
|
+
}
|