Releases: helpscout/hsds-react
Blue - v0.0.34
Add scrollableRef to Scrollable and Modal
- Add
scrollableRef
prop to Scrollable and Modal to expose the scrollable DOM node - Add
onScroll
callback for Modal - Make
isNodeElement()
util more robust
Resolves: #72
Blue - v0.0.33
New Features
Add InfiniteScroller component + enhance Scrollable
This update adds a new InfiniteScroller component that makes it easy to dynamically fetch/load/inject content (or do anything else!). It has a couple of handy callbacks to provide the user with control when the component is scrolled into position.
Example
<Scrollable>
...
<InfiniteScroller onLoading={loadMoreContent} />
</Scrollable>
The Scrollable component has also been enhanced with a new onScroll
callback.
Additional Updates
- Adjust markup for Modal to better support Scrollable usage
- Add scrollParent prop to InfiniteScroller to accept DOM elements
- Create new Storybook for InfiniteScroller example (with Modal)
Other Updates
- Remove yarn.lock (and add to gitignore)
- Remove fetch dependency and polyfill. Blue doesn't use Fetch API.
- Add prop-types-extra for DOM node checking
Resolves: #12
Maintenence
- Rename Card className from c-card to c-Card
Resolves #66
Bug Fixes
The onSortEnd
prop that uses the onSortEnd()
method in the Sortable
class is being overwritten by the onSortEnd
prop in the rest
object. A quick fix to pull out the onSortEnd
property from the rest
object.
Blue - v0.0.32
SidebarCollapsibleCard: Fix #
usage in header
Currently, when I click on the toggle on the SidebarCollapsibleCard
component, the browser navigates to "#". This is a quick fix to prevent that behavior.
I also added a new line to .gitignore, for those of us who are using PHPStorm (me 😄 <-- @lgariepy )
Blue - v0.0.31
Add Dropdown Component ✨
Ooooo boy! This update adds LOTS of stuff to Blue, including:
New Drop HOC Component
A new Drop
HOC component, that Portals and auto positions the composedComponent based on the trigger.
New Dropdown Components
This update adds new Dropdown
, DropdownTrigger
, DropdownMenu
, DropdownItem
, and DropdownDivider
components
New Utilities!
This update adds new focus
, node
, and nodePosition
DOM-based utils
Other enhancements
The EventListener
and KeypressListener
components were enhanced with scope
, allowing them to listen to events on specific node elements other than just document
.
KeypressListener
has also been improved to handle modifier keys (like shift
or alt
).
slim
CSS stylesheet removal
Based on a discussion with @Charca and @knicklabs , this update removes the .slim
version of the Blue CSS. This allows for a cleaner CSS build structure, and allow for us to use the standard c-ComponentName
className structure.
Blue - v0.0.30
Update package-lock.json
To update the dependencies from https://github.com/helpscout/blue/releases/tag/v0.0.29
Blue - v0.0.29
Resolve package.json dependencies
Move project dependencies to dependencies instead of devDependencies.
Some of these items are used by polyfill.js (by create-react-app).
Others are being used by Blue components.
Spotted by @lgariepy
Blue - v0.0.28
Add hint text to input component
It may be desirable to have text appear above and/or below the input but currently it is only possible to configure the input to have text appear below it via the helpText
prop.
This PR adds a hintText
prop that can be used to configure the input to have text appear above it, as shown below.
Blue - v0.0.27
Add EmojiPicker and Emoji components
This update adds 2 new components: <EmojiPicker />
and <Emoji />
. Both of these components are light wrappers around the components provided by the emoji-mart library.
The strategy I used to tweak the styles EmojiPicker was to structure the EmojiPicker/*.scss
files as if we had smaller components, exactly like how we structure the CSS for other Blue components.
Each .scss
file under EmojiPicker
is scoped under the main component class. This allows the styles to not leak into global scope, and it allows for us to easily override the default library styles in an easy-to-understand + maintainable way.
Resolves: #26
Blue - v0.0.26
Sortable: Re-render children on children prop change
This update fixes the Sortable component lifecycle to update the remapped state.items
when there is a change in props.children
. Previously, this was only firing on mount, but it now fires on componentWillReceiveProps
as well.
Resolves: #49
Blue - v0.0.25
Avatar - Add initials
prop
Beacon API is going to be specifying an initials
attribute, which we want to use to override the default <Avatar>
initials parsing from the name
attribute. This update adds an initials
property to the Avatar
component.
Resolves: #46