- Add
className
to the TypeScript definition for the TetherComponent. Thanks @ryprice
- Use
React.createPortal
🎉 Big thanks to @doronbrikman for their work on this. In versions wherecreatePortal
isn't available we still fall back to the old method. - Default export has changed: You can now use the default export in ES Modules and TypeScript, but in CommonJS environments you'll have to use
require('react-tether').default
. See the examples. - TypeScript definition file built in
- Upgrade to Webpack 4 for the UMD distribution. Smaller bundle sizes!
- Internal: New unit and E2E tests with code coverage, a new demo page, linting and prettier applied to the source, publishing less files to npm.
- 😿 Dropped bower support. Recommended upgrade path is either npm or unpkg
- Upgrade tether to 1.4.3 #63
- Update compatibility for React 16 #57
- Update repo to point at danreeves/react-tether
Update the target node when updating the component PR #48
Compatibility React 15.5.0 PR #49
Properly call onUpdate
and onRepositioned
PR #40
Only render subtree if destroy
method was not called yet PR #41
Use babel-plugin-add-module-exports
for dist
files
Add .npmignore
PR #39
Expose Tether event system as imperative and props API PR #30
Update tether version to 1.3.7 PR #32
Attachment positions PR #33
Better renderElementTo
PR #19
Use Children.toArray
instead of Children.forEach
to get individual children
Fixed Tether element props not being re-rendered on change
Added the ability to apply an id
, className
, or style
to the wrapper Tether element.
Fixes:
renderElementTo
now uses document.querySelector
Add dependency warning for people using old school script tags
Fix ASI issue with document.body PR #12
Fixes:
Fix tethered element not being positioned correctly
All Tether options are now props
renderElementTag
prop to specify which DOM tag to use to render the second child to
renderElementTo
prop to specify where in the DOM the element should be appended to
Added position
public method from Tether
removed shallowCompare
Bower exposed lib name renamed to TetherComponent
from TetherElement
New API accepts a max of two children. First child is used as the target and second child is used as the element that is being tethered.