-
Notifications
You must be signed in to change notification settings - Fork 99
fix(layout_columns): Remove use of enum for breakpoints #912
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
Conversation
shiny/ui/_layout_columns.py
Outdated
lg = "lg" | ||
xl = "xl" | ||
xxl = "xxl" | ||
def bs_breakpoints() -> Iterable[Breakpoints]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't tell if this is for public use. If so, can we do without the bs_
prefix? If not, maybe just make this a variable instead of a function.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not for public use, so I made it a variable and removed the prefix.
* main: (24 commits) docs: Use definition lists for parameter descriptions to enable full markdown support (#901) docs(layout_columns): Add example app (#903) fix(layout_columns): Remove use of enum for breakpoints (#912) Express: don't automatically put strings in a `<pre>` block (#905) Deprecate `nav()` in favor of `nav_panel()` (#876) chore: Remove unused import refactor(layout_column_wrap): Use helper for wrapping children (#910) fix(layout_columns): Don't apply fillable class to layout container (#909) Add output to React template (#908) fix(layout_columns): Add missing `bslib-mb-spacing` class (#906) Custom component template updates (#874) fix(layout_columns): If the breakpoint name is an enum, need to collect the value (#902) chore: exclude `_dev/` folder (#897) feat: Add `ui.layout_columns()` (#856) Update VS Code settings file Express: change default page function to page_fixed (#892) Better messages for `AttributeError` in Shiny Express (#888) Fix 0.6.0 release date Fix failing express tests (#887) Explain why function is called twice ...
* main: (76 commits) Add shiny/templates to MANIFEST.in files (#926) docs: Function Reference Proofreads (#919) Fix failing deploy tests (#925) Add GitHub sources to shiny create Make changelog styling more consistent Function reference edits (#857) docs: Use definition lists for parameter descriptions to enable full markdown support (#901) docs(layout_columns): Add example app (#903) fix(layout_columns): Remove use of enum for breakpoints (#912) Express: don't automatically put strings in a `<pre>` block (#905) Deprecate `nav()` in favor of `nav_panel()` (#876) chore: Remove unused import refactor(layout_column_wrap): Use helper for wrapping children (#910) fix(layout_columns): Don't apply fillable class to layout container (#909) Add output to React template (#908) fix(layout_columns): Add missing `bslib-mb-spacing` class (#906) Custom component template updates (#874) fix(layout_columns): If the breakpoint name is an enum, need to collect the value (#902) chore: exclude `_dev/` folder (#897) feat: Add `ui.layout_columns()` (#856) ...
* main: (36 commits) Add shiny/templates to MANIFEST.in files (#926) docs: Function Reference Proofreads (#919) Fix failing deploy tests (#925) Add GitHub sources to shiny create Make changelog styling more consistent Function reference edits (#857) docs: Use definition lists for parameter descriptions to enable full markdown support (#901) docs(layout_columns): Add example app (#903) fix(layout_columns): Remove use of enum for breakpoints (#912) Express: don't automatically put strings in a `<pre>` block (#905) Deprecate `nav()` in favor of `nav_panel()` (#876) chore: Remove unused import refactor(layout_column_wrap): Use helper for wrapping children (#910) fix(layout_columns): Don't apply fillable class to layout container (#909) Add output to React template (#908) fix(layout_columns): Add missing `bslib-mb-spacing` class (#906) Custom component template updates (#874) fix(layout_columns): If the breakpoint name is an enum, need to collect the value (#902) chore: exclude `_dev/` folder (#897) feat: Add `ui.layout_columns()` (#856) ...
It turns out that using an enum is over-engineering and annoying as a user. With an enum the following code gives a type warning
because
"md"
isn't literally theBreakpoints.md
value. Unless I'm missing something, you'd have to useassuming we export
Breakpoints
. Currently you'd have toui._layout_columns.Breakpoints.md.value
, which is just too much.This PR goes back to a typed
Breakpoints
literal type and adds abs_breakpoints()
helper function.