From 45c7e61142e181f150057e6d40de463c2e9ad0d9 Mon Sep 17 00:00:00 2001 From: Diego Muracciole Date: Sun, 22 Sep 2024 19:27:25 +0200 Subject: [PATCH] feat: add align-content: space-evenly support --- .changeset/smart-ligers-deny.md | 6 ++++++ packages/layout/src/node/setAlign.js | 1 + packages/layout/tests/node/setAlignContent.test.js | 8 ++++++++ packages/types/style.d.ts | 3 ++- 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 .changeset/smart-ligers-deny.md diff --git a/.changeset/smart-ligers-deny.md b/.changeset/smart-ligers-deny.md new file mode 100644 index 000000000..044cefbbd --- /dev/null +++ b/.changeset/smart-ligers-deny.md @@ -0,0 +1,6 @@ +--- +"@react-pdf/layout": minor +"@react-pdf/types": minor +--- + +feat: add align-content: space-evenly support diff --git a/packages/layout/src/node/setAlign.js b/packages/layout/src/node/setAlign.js index 0d4e53ffb..4b5a5639f 100644 --- a/packages/layout/src/node/setAlign.js +++ b/packages/layout/src/node/setAlign.js @@ -9,6 +9,7 @@ const ALIGN = { baseline: Yoga.Align.Baseline, 'space-between': Yoga.Align.SpaceBetween, 'space-around': Yoga.Align.SpaceAround, + 'space-evenly': Yoga.Align.SpaceEvenly, }; /** diff --git a/packages/layout/tests/node/setAlignContent.test.js b/packages/layout/tests/node/setAlignContent.test.js index 097e63faa..e66afe4a5 100644 --- a/packages/layout/tests/node/setAlignContent.test.js +++ b/packages/layout/tests/node/setAlignContent.test.js @@ -82,4 +82,12 @@ describe('node setAlignContent', () => { expect(mock.mock.calls[0][0]).toBe(Yoga.Align.SpaceAround); expect(result).toBe(node); }); + + test('Should set space-evenly', () => { + const result = setAlignContent('space-evenly')(node); + + expect(mock.mock.calls).toHaveLength(1); + expect(mock.mock.calls[0][0]).toBe(Yoga.Align.SpaceEvenly); + expect(result).toBe(node); + }); }); diff --git a/packages/types/style.d.ts b/packages/types/style.d.ts index 0d57f03ec..08e2a07f3 100644 --- a/packages/types/style.d.ts +++ b/packages/types/style.d.ts @@ -7,7 +7,8 @@ export interface Style { | 'center' | 'stretch' | 'space-between' - | 'space-around'; + | 'space-around' + | 'space-evenly'; alignItems?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'; alignSelf?: | 'auto'