Skip to content

Commit 3b60f68

Browse files
update size values for button, input field and segmented control
1 parent 55444b6 commit 3b60f68

File tree

5 files changed

+21
-14
lines changed

5 files changed

+21
-14
lines changed

Sources/ComponentsKit/Button/Models/ButtonVM.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -114,15 +114,15 @@ extension ButtonVM {
114114
var height: CGFloat {
115115
return switch self.size {
116116
case .small: 36
117-
case .medium: 50
118-
case .large: 70
117+
case .medium: 44
118+
case .large: 52
119119
}
120120
}
121121
var horizontalPadding: CGFloat {
122122
return switch self.size {
123-
case .small: 8
124-
case .medium: 12
125-
case .large: 16
123+
case .small: 16
124+
case .medium: 20
125+
case .large: 24
126126
}
127127
}
128128
}

Sources/ComponentsKit/InputField/Models/InputFieldVM.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ extension InputFieldVM {
9191
var height: CGFloat {
9292
return switch self.size {
9393
case .small: 40
94-
case .medium: 60
95-
case .large: 80
94+
case .medium: 48
95+
case .large: 56
9696
}
9797
}
9898
var horizontalPadding: CGFloat {

Sources/ComponentsKit/SegmentedControl/Models/SegmentedControlVM.swift

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,17 @@ extension SegmentedControlVM {
9292
var height: CGFloat {
9393
return switch self.size {
9494
case .small: 36
95-
case .medium: 50
96-
case .large: 70
95+
case .medium: 44
96+
case .large: 52
97+
}
98+
}
99+
func selectedSegmentCornerRadius(for height: CGFloat = 10_000) -> CGFloat {
100+
let componentRadius = self.cornerRadius.value(for: height)
101+
switch self.cornerRadius {
102+
case .none, .full, .custom:
103+
return componentRadius
104+
case .small, .medium, .large:
105+
return max(0, componentRadius - self.outerPaddings / 2)
97106
}
98107
}
99108
func preferredFont(for id: ID) -> UniversalFont {

Sources/ComponentsKit/SegmentedControl/SUSegmentedControl.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public struct SUSegmentedControl<ID: Hashable>: View {
5555
ZStack {
5656
if itemVM.isEnabled, self.selectedId == itemVM.id {
5757
RoundedRectangle(
58-
cornerRadius: self.model.cornerRadius.value()
58+
cornerRadius: self.model.selectedSegmentCornerRadius()
5959
)
6060
.fill(self.model.selectedSegmentColor.color(
6161
for: self.colorScheme

Sources/ComponentsKit/SegmentedControl/UKSegmentedControl.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ open class UKSegmentedControl<ID: Hashable>: UIView, UKComponent {
171171
open override func layoutSubviews() {
172172
super.layoutSubviews()
173173

174-
self.selectedSegment.layer.cornerRadius = self.model.cornerRadius.value(
174+
self.selectedSegment.layer.cornerRadius = self.model.selectedSegmentCornerRadius(
175175
for: self.container.bounds.height
176176
)
177177
self.layer.cornerRadius = self.model.cornerRadius.value(
@@ -317,9 +317,7 @@ extension UKSegmentedControl {
317317

318318
static func selectedSegment(_ view: UIView, model: Model) {
319319
view.backgroundColor = model.selectedSegmentColor.uiColor
320-
view.layer.cornerRadius = model.cornerRadius.value(
321-
for: view.bounds.height
322-
)
320+
view.layer.cornerRadius = model.selectedSegmentCornerRadius(for: view.bounds.height)
323321
}
324322

325323
static func segment(

0 commit comments

Comments
 (0)