Skip to content

Commit b4520a8

Browse files
committed
feat(border): allow strings to be expanded
1 parent a7fd1e1 commit b4520a8

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

packages/system/src/styles/borders.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
import { borders } from './borders'
22

3+
describe('#border', () => {
4+
it('expands border', () => {
5+
expect(borders({ border: 1 })).toEqual({ border: '1px solid' })
6+
expect(borders({ border: '1' })).toEqual({ border: '1px solid' })
7+
expect(borders({ border: '3px' })).toEqual({ border: '3px' })
8+
})
9+
})
10+
311
describe('#divideY', () => {
412
it('works as expected', () => {
513
expect(borders({ divideY: 1 })).toEqual({

packages/system/src/styles/borders.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import * as CSS from 'csstype'
2-
import { num } from '@xstyled/util'
32
import { style, themeGetter, compose } from '../style'
43
import { px } from '../unit'
54
import { getColor, ThemeColor, Color } from './colors'
@@ -14,7 +13,10 @@ export type ThemeBorder<T extends ITheme = Theme> = ThemeNamespaceValue<
1413
export const getBorder = themeGetter<ThemeBorder>({
1514
name: 'border',
1615
key: 'borders',
17-
transform: (n: number | string) => (num(n) && n > 0 ? `${px(n)} solid` : n),
16+
transform: (value: number | string) => {
17+
const num = Number(value)
18+
return num > 0 ? `${px(num)} solid` : value
19+
},
1820
})
1921

2022
export type ThemeBorderWidth<T extends ITheme = Theme> = ThemeNamespaceValue<

0 commit comments

Comments
 (0)