Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs & hooks #3896

Merged
merged 1 commit into from
Sep 9, 2024

Conversation

langz
Copy link
Contributor

@langz langz commented Sep 4, 2024

The problem/challenge

The docs says that:

  • isSmall should correspond to allBelow(small)
  • isMedium should correspond to allBetween(small, medium)
  • isLarge should correspond to allAbove(medium)

This is not how it works today, as the mixins doesn’t match the hooks.

That the mixins should match the hooks, is stated in both the table, and the image/visualization :
image

CSB demonstrating how it works today. Please test it out by changing window size in the full view .

Observations:

  • At 960px isMedium is true, but allBetween(small, medium) is false. Based on the docs , at 960px, they both should be true.
  • At 960px isLarge is false(which is correct), but allAbove(medium) is true. Based on the docs, at 960px they, both should be false.

Screenshot from the CSB above, at 960px:
image

CSB demonstrating how it works after this fix. Please test it out by changing window size in the full view.

Screenshot from the CSB above, at 960px:
image

Screenshot from the CSB above, at 961px:
image

Discussion

Does this fix seem appropriate, something we want? Or should we rather just add new mixins that match the hook? Like isSmall, isMedium, isLarge?

If we are going with the fix, is it just a fix? Or a breaking change?

General thoughts

I like the functionality of the mixins allBelow, allAbove, and allBetween. But when they actual kick in(is valid) both before this PR and in this PR is to me difficult to understand. When small is 40em(640px) then to me it doesn't make sense that allBelow(small) is valid at 640px, as 640px is not below 640px. 639px is below 640px. Same goes for the other mixins. But I guess fixing or improving upon this is something else than this PR.

Copy link

vercel bot commented Sep 4, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
eufemia ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 9, 2024 0:17am

Copy link

codesandbox-ci bot commented Sep 4, 2024

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

@langz langz changed the title fix(styling): a more descriptive title fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs Sep 4, 2024
@langz langz force-pushed the fix/scss-media-query-mixins-below-above branch from 117ee63 to 30a36fb Compare September 4, 2024 19:27
@langz langz marked this pull request as ready for review September 4, 2024 20:05
@tujoworker
Copy link
Member

The offset screenshot tests should be aligned. Probably get a higher offset, so it matches the outcome from before.

@langz langz changed the title fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs/hooks Sep 5, 2024
Copy link
Member

@tujoworker tujoworker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Else it looks good 👏

@langz langz changed the title fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs/hooks fix(Breakpoint): ensure matching breakpoint ranges in mixins with docs & hooks Sep 5, 2024
@langz
Copy link
Contributor Author

langz commented Sep 5, 2024

The offset screenshot tests should be aligned. Probably get a higher offset, so it matches the outcome from before.

I've aligned this now in the following commit 0d9f60a

@langz
Copy link
Contributor Author

langz commented Sep 9, 2024

I should take a second look at this screenshot test.

...snapshots__/media-have-to-match-media-offset-for-below-ismedium-offset.snap.png

@langz langz force-pushed the fix/scss-media-query-mixins-below-above branch from 67ae873 to dc887b2 Compare September 9, 2024 12:10
@langz langz merged commit 260fcaf into main Sep 9, 2024
10 checks passed
@langz langz deleted the fix/scss-media-query-mixins-below-above branch September 9, 2024 12:34
tujoworker pushed a commit that referenced this pull request Sep 10, 2024
## [10.47.0](v10.46.0...v10.47.0) (2024-09-10)

### 📝 Documentation

* add component translations table to properties docs ([#3902](#3902)) ([66dd12e](66dd12e))
* **useTheme:** updates docs to match TS type definitions ([#3901](#3901)) ([52aaab3](52aaab3))

### ✨ Features

* **Button:** rewise documented `title` prop with aria-label documentation ([#3863](#3863)) ([ea444c0](ea444c0))
* **CopyOnClick:** adds copyContent prop ([e5a91b6](e5a91b6))
* **countries:** Added missing countries from ISO 3166 [#3894](#3894) ([2992084](2992084))
* **countries:** Added missing countries from ISO 3166 [#3894](#3894) ([#3899](#3899)) ([ada0e92](ada0e92))
* **Forms:** extend validations in `Field.NationalIdentityNumber` ([#3888](#3888)) ([50cc26b](50cc26b))
* **Forms:** make it possible to reuse and extend internal validators ([#3908](#3908)) ([7c97bf5](7c97bf5))
* **Forms:** provide `connectWithPath` in the validator and onBlurValidator to get values from other fields/paths ([#3895](#3895)) ([f4cf06f](f4cf06f))
* **Value.Date:** adds numeric variant ([#3907](#3907)) ([b03e199](b03e199))

### 🐛 Bug Fixes

* **Accordion:** deprecate (rename) expandBehaviour in favor of expandBehavior ([#3905](#3905)) ([76143b0](76143b0))
* **Breakpoint:** ensure matching breakpoint ranges in mixins with docs & hooks ([#3896](#3896)) ([260fcaf](260fcaf))
* **Flex:** enhance handling of React fragments ([#3892](#3892)) ([156c805](156c805))
* **Forms:** enhance cleanup routine of fields ([#3885](#3885)) ([388e0b2](388e0b2)), closes [#3877](#3877)
* **Forms:** ensure label supports HTML formatting ([#3911](#3911)) ([227569c](227569c))
* **Forms:** ensure labels do update when they change (async fields) ([#3910](#3910)) ([bc40449](bc40449))
* **Forms:** warn on value prop usage on fields inside iterate with itemPath ([#3886](#3886)) ([116820d](116820d)), closes [#3877](#3877) [#3882](#3882)
* **LabelDescription:** nothing was returned ([#3898](#3898)) ([3452855](3452855))
@tujoworker
Copy link
Member

🎉 This PR is included in version 10.47.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

2 participants