@magmonium/one 0.2.81 → 0.2.82
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/assets/index.json +1 -1
- package/assets/theme/dark.json +7 -7
- package/assets/theme/default.json +7 -7
- package/assets/theme/light.json +7 -7
- package/fesm2022/{magmonium-one-image-editor-aBl2dVEc.mjs → magmonium-one-image-editor-C_KeJ24r.mjs} +2 -2
- package/fesm2022/{magmonium-one-image-editor-aBl2dVEc.mjs.map → magmonium-one-image-editor-C_KeJ24r.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-magmonium-one-CWtMvVOS.mjs → magmonium-one-magmonium-one-zMBbH4e6.mjs} +52 -52
- package/fesm2022/magmonium-one-magmonium-one-zMBbH4e6.mjs.map +1 -0
- package/fesm2022/{magmonium-one-otp-B-oUlDWY.mjs → magmonium-one-otp-D5YLAd5j.mjs} +2 -2
- package/fesm2022/{magmonium-one-otp-B-oUlDWY.mjs.map → magmonium-one-otp-D5YLAd5j.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-password-7gmB_RWb.mjs → magmonium-one-password-DHZnry39.mjs} +4 -4
- package/fesm2022/{magmonium-one-password-7gmB_RWb.mjs.map → magmonium-one-password-DHZnry39.mjs.map} +1 -1
- package/fesm2022/{magmonium-one-toggle-DL3lH7Xo.mjs → magmonium-one-toggle-BIetnmvQ.mjs} +4 -4
- package/fesm2022/{magmonium-one-toggle-DL3lH7Xo.mjs.map → magmonium-one-toggle-BIetnmvQ.mjs.map} +1 -1
- package/fesm2022/magmonium-one.mjs +1 -1
- package/package.json +1 -1
- package/sass/_overlay-hosts.sass +16 -7
- package/sass/mixins/_checkbox.sass +59 -45
- package/sass/mixins/_input.sass +9 -9
- package/sass/mixins/_radio.sass +39 -44
- package/fesm2022/magmonium-one-magmonium-one-CWtMvVOS.mjs.map +0 -1
package/sass/mixins/_radio.sass
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
@use 'flex' as flex
|
|
2
|
-
@use '
|
|
2
|
+
@use '../variables/colors' as *
|
|
3
3
|
@use '../functions/functions' as f
|
|
4
4
|
|
|
5
|
-
// ============================================
|
|
6
|
-
// Configuration & Variables
|
|
7
|
-
// ============================================
|
|
8
|
-
|
|
9
|
-
// Default CSS custom properties (can be overridden)
|
|
10
|
-
$radio-defaults: (size: 1em, color: #4169e1, color-contrast: #ffffff, color-opposite: #e1b941)
|
|
11
|
-
|
|
12
5
|
// ============================================
|
|
13
6
|
// Base Radio Container
|
|
14
7
|
// ============================================
|
|
@@ -16,37 +9,30 @@ $radio-defaults: (size: 1em, color: #4169e1, color-contrast: #ffffff, color-oppo
|
|
|
16
9
|
@mixin radio-container-base
|
|
17
10
|
display: inline-flex
|
|
18
11
|
align-items: center
|
|
19
|
-
$size: 1em
|
|
12
|
+
$size: var(--m-radio-size, calc(var(--input-size, 1em) * 1.25))
|
|
20
13
|
gap: #{f.derive-control-gap($size)}
|
|
21
14
|
cursor: pointer
|
|
22
15
|
user-select: none
|
|
23
16
|
position: relative
|
|
24
17
|
|
|
25
18
|
input[type="radio"]
|
|
26
|
-
// Reset default styles
|
|
27
19
|
appearance: none
|
|
28
20
|
-webkit-appearance: none
|
|
29
21
|
-moz-appearance: none
|
|
30
22
|
margin: 0
|
|
31
23
|
padding: 0
|
|
32
|
-
|
|
33
|
-
// Positioning & dimensions
|
|
34
24
|
position: relative
|
|
35
25
|
width: #{$size}
|
|
36
26
|
height: #{$size}
|
|
37
27
|
flex-shrink: 0
|
|
38
28
|
box-sizing: border-box
|
|
39
|
-
|
|
40
|
-
// Styling
|
|
41
|
-
background-color: transparent
|
|
29
|
+
background: var(--m-radio-background, var(--m-text-input-background, color-mix(in srgb, #{$focus} 2%, #{$background})))
|
|
42
30
|
border-radius: 50%
|
|
43
|
-
border:
|
|
31
|
+
border: var(--m-input-border-width, 1px) solid var(--m-text-input-border, color-mix(in srgb, #{$text} 18%, #{$background}))
|
|
44
32
|
cursor: pointer
|
|
45
33
|
outline: none
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
transition: background-color 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease
|
|
49
|
-
will-change: background-color, box-shadow, border-color
|
|
34
|
+
box-shadow: none
|
|
35
|
+
transition: var(--m-radio-transition, var(--m-text-input-transition, border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease))
|
|
50
36
|
|
|
51
37
|
// Inner dot (checked indicator)
|
|
52
38
|
&::after
|
|
@@ -55,12 +41,12 @@ $radio-defaults: (size: 1em, color: #4169e1, color-contrast: #ffffff, color-oppo
|
|
|
55
41
|
top: 50%
|
|
56
42
|
left: 50%
|
|
57
43
|
transform: translate(-50%, -50%) scale(0)
|
|
58
|
-
width: calc(#{$size} * 0.
|
|
59
|
-
height: calc(#{$size} * 0.
|
|
60
|
-
background-color:
|
|
44
|
+
width: calc(#{$size} * 0.45)
|
|
45
|
+
height: calc(#{$size} * 0.45)
|
|
46
|
+
background-color: #ffffff
|
|
61
47
|
border-radius: 50%
|
|
62
|
-
transition: transform 0.
|
|
63
|
-
|
|
48
|
+
transition: transform 0.2s ease
|
|
49
|
+
box-shadow: none
|
|
64
50
|
|
|
65
51
|
--m-label-margin: 0
|
|
66
52
|
|
|
@@ -69,15 +55,19 @@ $radio-defaults: (size: 1em, color: #4169e1, color-contrast: #ffffff, color-oppo
|
|
|
69
55
|
// ============================================
|
|
70
56
|
|
|
71
57
|
@mixin radio-container-states
|
|
72
|
-
$size: 1em
|
|
58
|
+
$size: var(--input-size, 1em)
|
|
73
59
|
input[type="radio"]
|
|
74
|
-
// Hover state (not disabled)
|
|
75
|
-
&:hover:not(:disabled)
|
|
76
|
-
border-color:
|
|
60
|
+
// Hover state (not disabled, not checked)
|
|
61
|
+
&:hover:not(:disabled):not(:checked)
|
|
62
|
+
border-color: var(--m-text-input-hover-border, color-mix(in srgb, #{$focus} 55%, #{$background}))
|
|
63
|
+
background: var(--m-text-input-hover-background, color-mix(in srgb, #{$focus} 4%, #{$background}))
|
|
64
|
+
box-shadow: none
|
|
77
65
|
|
|
78
66
|
// Focus state (accessibility)
|
|
79
|
-
&:focus
|
|
80
|
-
|
|
67
|
+
&:focus,
|
|
68
|
+
&:focus-visible
|
|
69
|
+
border-color: var(--m-text-input-focus-border, #{$focus})
|
|
70
|
+
box-shadow: var(--m-text-input-focus-shadow, var(--m-text-input-shadow, 0 0 0 3px color-mix(in srgb, #{$focus} 14%, transparent)))
|
|
81
71
|
outline: none
|
|
82
72
|
|
|
83
73
|
// Active/pressed state (not disabled)
|
|
@@ -86,34 +76,39 @@ $radio-defaults: (size: 1em, color: #4169e1, color-contrast: #ffffff, color-oppo
|
|
|
86
76
|
|
|
87
77
|
// Checked state
|
|
88
78
|
&:checked
|
|
89
|
-
border-color: var(--m-
|
|
79
|
+
border-color: var(--m-radio-checked-border, #{$focus})
|
|
80
|
+
background: var(--m-radio-checked-background, #{$focus})
|
|
81
|
+
background-color: var(--m-radio-checked-background, #{$focus})
|
|
82
|
+
box-shadow: none
|
|
90
83
|
|
|
91
84
|
&::after
|
|
92
85
|
transform: translate(-50%, -50%) scale(1)
|
|
86
|
+
background-color: #ffffff
|
|
87
|
+
opacity: 1
|
|
93
88
|
|
|
94
89
|
// Hover when checked
|
|
95
90
|
&:hover:not(:disabled)
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
// Active when checked
|
|
102
|
-
&:active:not(:disabled)::after
|
|
103
|
-
transform: translate(-50%, -50%) scale(0.85)
|
|
91
|
+
background: color-mix(in srgb, var(--m-radio-checked-background, #{$focus}) 88%, black 12%)
|
|
92
|
+
background-color: color-mix(in srgb, var(--m-radio-checked-background, #{$focus}) 88%, black 12%)
|
|
93
|
+
border-color: color-mix(in srgb, var(--m-radio-checked-border, #{$focus}) 88%, black 12%)
|
|
94
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, #{$focus} 18%, transparent)
|
|
104
95
|
|
|
105
96
|
// Focus when checked
|
|
106
|
-
&:focus
|
|
107
|
-
|
|
97
|
+
&:focus,
|
|
98
|
+
&:focus-visible
|
|
99
|
+
box-shadow: var(--m-text-input-focus-shadow, var(--m-text-input-shadow, 0 0 0 3px color-mix(in srgb, #{$focus} 25%, transparent)))
|
|
108
100
|
|
|
109
101
|
// Disabled state
|
|
110
102
|
&:disabled
|
|
111
103
|
opacity: 0.5
|
|
112
104
|
cursor: not-allowed
|
|
113
|
-
border-color: color-mix(in srgb,
|
|
105
|
+
border-color: color-mix(in srgb, #{$text} 12%, #{$background})
|
|
114
106
|
|
|
115
107
|
&:checked::after
|
|
116
|
-
opacity: 0.
|
|
108
|
+
opacity: 0.7
|
|
109
|
+
|
|
110
|
+
&.error
|
|
111
|
+
border-color: $error
|
|
117
112
|
|
|
118
113
|
// ============================================
|
|
119
114
|
// Complete Radio Container
|