Skip to content

Commit 339f7fc

Browse files
committed
fix(system): fix rpx transformers
Fix #274
1 parent d5c953d commit 339f7fc

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

packages/system/src/transformers.test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ describe('#rpxTransformers', () => {
1010
const remProps = { theme: { transformers: { ...rpxTransformers } } }
1111
expect(th.space(1)(remProps)).toBe('0.0625rem')
1212
expect(th.space(2)(remProps)).toBe('0.125rem')
13+
expect(th.space(200)(remProps)).toBe('12.5rem')
1314
expect(th.border(2)(remProps)).toBe('0.125rem solid')
1415
})
1516
})

packages/system/src/unit.test.ts

-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ describe('unit', () => {
66
const em = unit('em')
77
expect(em(0)).toBe(0)
88
expect(em(10)).toBe('10em')
9-
expect(em(null)).toBe(null)
109
expect(em(undefined)).toBe(undefined)
1110
expect(em('10px')).toBe('10px')
1211
})
@@ -16,7 +15,6 @@ describe('unit', () => {
1615
it('adds px if it is a number', () => {
1716
expect(px(0)).toBe(0)
1817
expect(px(10)).toBe('10px')
19-
expect(px(null)).toBe(null)
2018
expect(px(undefined)).toBe(undefined)
2119
expect(px('10px')).toBe('10px')
2220
})

packages/system/src/unit.ts

+8-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,14 @@ const pxToRem = (
2121
{ rootFontSize = 16 }: PxToRemOptions = {},
2222
): number => round(value / rootFontSize)
2323

24-
export const remPx = (value: CSSScalar, options?: PxToRemOptions): CSSScalar =>
25-
num(value) && value !== 0 ? `${pxToRem(value, options)}rem` : value
24+
export const remPx = (
25+
value: CSSScalar,
26+
options?: PxToRemOptions,
27+
): CSSScalar => {
28+
const num = Number(value)
29+
if (Number.isNaN(num) || num === 0) return value
30+
return `${pxToRem(num, options)}rem`
31+
}
2632

2733
export const rpx = (value: CSSScalar, options?: PxToRemOptions): CSSScalar => {
2834
if (!string(value) || value.length < 4) return value

0 commit comments

Comments
 (0)