Releases: grapp-dev/stacks
v3.1.0
v3.0.3
v3.0.2
v3.0.1
v3.0.0
What's Changed
Stacks
is now published in the @grapp
scope. So, you need to fix the imports first. Don't worry, it's a quick fix!
→ @mobily/stacks
@grapp/stacks
General
The Stacks
library has been completely rewritten in TypeScript, so it no longer supports ReScript.
React Native Unistyles is a core dependency.
The flex gap
values now define spaces between components (excluding Columns
, see this).
Components
Provider
Stacks
now uses Unistyles, which means that you can remove StacksProvider
from the React component tree and provide configuration values to the Unistyles
theme object, as described here.
Box
Several new props have been added to the Box
component, including width
, height
, gap
, rowGap
, columnGap
, backgroundColor
, borderRadius
, borderTopLeftRadius
, borderTopRightRadius
, borderBottomLeftRadius
, borderBottomRightRadius
, borderColor
, borderWidth
, and debuggable
.
Columns
The defaultWidth
prop is now defaultFlex
, and the width
prop has been changed to flex
.
Use Column.from
to create a custom Column
component.
The markAsColumn
prop has been removed.
FillView
FillView
has been renamed to FloatBox
.
The unset
helper has been removed, and the positioning has been fixed if you don't provide all offset values.
Hidden
Experimental support for hiding elements by transforming the React component tree with the provided Babel
plugin has been added.
Inline
The spaceX
and spaceY
props have been added.
Rows
The defaultHeight
prop is now defaultFlex
, and the height
prop has been changed to flex
.
Use Row.from
to create a custom Row
component.
The markAsRow
prop has been removed.
Tiles
The spaceX
and spaceY
props have been added, and empty
has been renamed to fill
.
Hooks
useStacks
has been removed, asStacksProvider
is no longer needed.useCurrentBreakpoint
has been removed. To get the current breakpoint name, you can useuseStyles
from Unistyles.useSpacing
has been removed. To achieve the same result, you can useuseSpacingHelpers
andmultiply
.useWindowDimensions
has been removed. You can now get the screen dimensions withUnistylesRuntime.screen
.
v2.2.2
v2.2.1
v2.2.0
v2.1.0
- ✨ added the
defaultWidth
prop toColumns
, which allows to set a default column width behavior (@domeknn) - ✨ added the
defaultHeight
prop toRows
, which allows to set a default row height behavior (@domeknn) - 🐛 fixed an issue occured in
react-testing-library
andreact-native-web
, #35 - 🐛 minor bug fixes
v2.0.0
- ✨ added the
Bleed
component - ✨ added the
Inset
component - ♻️
Column
: removed theheight
prop (as it has been added to theColumns
component) - 🔥
FillView
: removed theflex
prop - ♻️
FillView
: renamedreset
tounset
- ♻️
Inline
:align
is nowalignX
- ✨
Inline
: added thealignY
prop - ✨
Tiles
: added theempty
prop - 🐛 minor tweaks and fixes
You can also use Columns/Rows
with no Column/Row
in the markup tree, for instance, the following:
<Columns>
<Placeholder />
<Rows>
<Placeholder />
<Placeholder />
</Rows>
</Columns>
equals to:
<Columns>
<Column>
<Placeholder />
</Column>
<Column>
<Rows>
<Row>
<Placeholder />
</Row>
<Row>
<Placeholder />
</Row>
</Rows>
</Column>
</Columns>