Skip to content

Commit 581082d

Browse files
committed
Unit extension, elements selector
1 parent 6e7c5cb commit 581082d

File tree

2 files changed

+40
-12
lines changed

2 files changed

+40
-12
lines changed

Sources/SwiftCss/Components/Selector+Types.swift

+4
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@ public func Element(_ name: HTMLElement, @PropertyBuilder _ builder: () -> [Prop
1717
Selector(name.rawValue, builder)
1818
}
1919

20+
public func Elements(_ names: [HTMLElement], @PropertyBuilder _ builder: () -> [Property]) -> Selector {
21+
Selector(names.map(\.rawValue).joined(separator: ","), builder)
22+
}
23+
2024
public func Id(_ name: String, @PropertyBuilder _ builder: () -> [Property]) -> Selector {
2125
Selector("#" + name, builder)
2226
}

Sources/SwiftCss/Components/Unit.swift

+36-12
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,39 @@ public enum Unit {
7878
}
7979
}
8080

81-
//
82-
//extension Int {
83-
// var px: Unit {
84-
// Unit.px(Double(self))
85-
// }
86-
//}
87-
//
88-
//extension Double {
89-
// var px: Unit {
90-
// Unit.px(self)
91-
// }
92-
//}
81+
82+
public extension Int {
83+
var cm: Unit { Unit.cm(Double(self)) }
84+
var mm: Unit { Unit.mm(Double(self)) }
85+
var `in`: Unit { Unit.in(Double(self)) }
86+
var px: Unit { Unit.px(Double(self)) }
87+
var pt: Unit { Unit.pt(Double(self)) }
88+
var pc: Unit { Unit.pc(Double(self)) }
89+
var em: Unit { Unit.em(Double(self)) }
90+
var ex: Unit { Unit.ex(Double(self)) }
91+
var ch: Unit { Unit.ch(Double(self)) }
92+
var rem: Unit { Unit.rem(Double(self)) }
93+
var vw: Unit { Unit.vw(Double(self)) }
94+
var vh: Unit { Unit.vh(Double(self)) }
95+
var vmin: Unit { Unit.vmin(Double(self)) }
96+
var vmax: Unit { Unit.vmax(Double(self)) }
97+
var percent: Unit { Unit.percent(Double(self)) }
98+
}
99+
100+
public extension Double {
101+
var cm: Unit { Unit.cm(self) }
102+
var mm: Unit { Unit.mm(self) }
103+
var `in`: Unit { Unit.in(self) }
104+
var px: Unit { Unit.px(self) }
105+
var pt: Unit { Unit.pt(self) }
106+
var pc: Unit { Unit.pc(self) }
107+
var em: Unit { Unit.em(self) }
108+
var ex: Unit { Unit.ex(self) }
109+
var ch: Unit { Unit.ch(self) }
110+
var rem: Unit { Unit.rem(self) }
111+
var vw: Unit { Unit.vw(self) }
112+
var vh: Unit { Unit.vh(self) }
113+
var vmin: Unit { Unit.vmin(self) }
114+
var vmax: Unit { Unit.vmax(self) }
115+
var percent: Unit { Unit.percent(self) }
116+
}

0 commit comments

Comments
 (0)