Skip to content

Commit 65eec5d

Browse files
committed
feat(range): update pressed design for .range-value-min.range-value-max
1 parent d943a3b commit 65eec5d

File tree

3 files changed

+91
-19
lines changed

3 files changed

+91
-19
lines changed

demo/package-lock.json

Lines changed: 54 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"@capacitor/ios": "^7.4.3",
3535
"@capacitor/keyboard": "7.0.3",
3636
"@capacitor/status-bar": "7.0.3",
37-
"@ionic/angular": "^8.7.16",
37+
"@ionic/angular": "^8.7.17-dev.11768943212.1b316931",
3838
"@rdlabo/ionic-theme-ios26": "file:..",
3939
"ionicons": "^7.0.0",
4040
"rxjs": "~7.8.0",
Lines changed: 36 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
@use '../utils/api';
22

3+
@mixin scaled-transform($translate-x) {
4+
transform: scale(1.56, 1.47) translateX(calc(#{$translate-x} * -0.1)) translateZ(0) !important;
5+
-webkit-transform: scale(1.56, 1.47) translateX(calc(#{$translate-x} * -0.1)) translateZ(0) !important;
6+
}
7+
38
ion-range.ios:not(.ios26-disabled) {
49
--knob-size: 20px;
10+
--knob-width: 38px;
511
--knob-border-radius: 24px;
612
&.range-label-placement-start::part(label) {
713
margin-inline: 0 24px;
@@ -17,18 +23,39 @@ ion-range.ios:not(.ios26-disabled) {
1723
}
1824

1925
&::part(knob) {
20-
width: 38px;
26+
width: var(--knob-width);
2127
margin-inline-start: -8px;
22-
transition: transform 300ms ease;
28+
transition:
29+
transform 300ms ease,
30+
margin 300ms ease,
31+
box-shadow 200ms ease;
2332
}
2433
&.range-pressed::part(knob) {
25-
transform: scale(1.4, 1.6) translateX(calc(38px * -0.1)) translateZ(0);
26-
-webkit-transform: scale(1.4, 1.6) translateX(calc(38px * -0.1)) translateZ(0);
27-
@include api.glass-background(0.1, 0.5px, 120%);
34+
@include scaled-transform(0px);
35+
@include api.glass-background(0.1, 0, 120%);
36+
border: none;
2837
box-shadow:
29-
inset 0 8px 8px -8px var(--bar-background),
30-
inset 0 -8px 8px -8px var(--bar-background),
31-
inset 8px 0 8px -8px var(--bar-background),
32-
inset -8px 0 8px -8px var(--bar-background);
38+
0 0.5px 4px rgba(0, 0, 0, 0.12),
39+
0 6px 4px rgba(0, 0, 0, 0.05),
40+
inset 0.4px 0.4px 1px 0 var(--bar-background-active);
41+
}
42+
43+
&:not([dual-knobs='true']).range-pressed.range-value-min {
44+
&::part(knob) {
45+
@include scaled-transform(calc(var(--knob-width) * -2));
46+
box-shadow:
47+
0 0.5px 4px rgba(0, 0, 0, 0.12),
48+
0 6px 4px rgba(0, 0, 0, 0.05);
49+
}
50+
}
51+
52+
&:not([dual-knobs='true']).range-pressed.range-value-max {
53+
&::part(knob) {
54+
@include scaled-transform(calc(var(--knob-width) * 2));
55+
box-shadow:
56+
0 0.5px 4px rgba(0, 0, 0, 0.12),
57+
0 6px 4px rgba(0, 0, 0, 0.05),
58+
inset 0.4px 0.4px 1px 0.2px var(--bar-background-active);
59+
}
3360
}
3461
}

0 commit comments

Comments
 (0)