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

Version Packages #331

Merged
merged 1 commit into from
Jun 1, 2023
Merged

Version Packages #331

merged 1 commit into from
Jun 1, 2023

Conversation

paulmarsicloud
Copy link
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

react-swipeable@7.0.1

Patch Changes

  • Adding GitHub release workflow (#328)
    New Features:
  • add new swipeDuration prop - "allowable duration of a swipe"
    • A swipe lasting more than swipeDuration, in milliseconds, will not be considered a swipe.
    • Defaults to Infinity for backwards compatibility
  • add new touchEventOptions prop that can set the options for the touch event listeners
    • this provides users full control of if/when they want to set passive
    • Defaults to { passive: true }
  • add new onTouchStartOrOnMouseDown prop that is called for touchstart and mousedown. Before a swipe even starts.
    • combined with touchEventOptions allows users the ability to now call preventDefault on touchstart
  • add new onTouchEndOrOnMouseUp prop that is called for touchend and mouseup.
  • add react 18 to peerDependencies

Breaking Changes:

  • we have dropped support for es5 transpiled output
    • we target es2015 for our transpilation now
      • swipeable utilizes object/array spread & const/let natively
  • preventScrollOnSwipe - "new" prop. Replaces preventDefaultTouchmoveEvent
    • same functionality but renamed to be more explicit on its intended use
    • fixed bug - where toggling this prop did not re-attach event listeners
    • update - we now only change the passive event listener option for touchmove depending on this prop
    • Thank you @stefvhuynh

Bug fixes:

  • fix bug where directional swiped check allowed undefined/falsy values to set cancelablePageSwipe
  • fix bug when both trackTouch and trackMouse were present that triggered an erroneous swipe when the user clicked outside and above the swipeable area

Infrastructure:

  • post size-limit report to PRs with bundle diff sizes
  • utilize rollup for build & output
    • remove dependency on microbundle
    • remove interop injected code - pull/260
    • Thank you @binoy14
  • upgrade lots of dev dependencies
    • 🎉 upgrade to typescript v4.6.3
  • export/outputs housekeeping and cleaning (mimicked from react-redux)
    • removed/renamed exports from package.json:
      • browser, umd:main(renamed dist), jsnext:main(use module), typings(use types)
    • moved exports - old => new
      • "main": "./dist/react-swipeable.js" => "main": "./lib/index.js"
      • "module": "./dist/react-swipeable.module.js" => "module": "es/index.js"
      • "types": "./dist/index.d.ts" => "types": "./es/index.d.ts"

v6.2.2

  • add react v18 to peerDependencies

v6.2.1

  • Fix issue with some config properties being set to undefined breaking swipeable
    • PR #296
    • explicitly set undefined config props to config defaults
    • Thank you @simonflk

v6.2.0

  • delta prop can now be an object specifying different values for each direction
  • Maintenance
    • upgrade to latest version of microbundle
      • remove comments from built files
        • attempt to lower size to counter unnecessary increase from microbundle upgrade due to rollup output.interop
      • include type updates influenced by PR #259
    • dependabot security updates

v6.1.2

  • Maintenance
    • actually include dependabot security updates
    • update badge links

v6.1.1

  • Maintenance
    • dependabot security updates
    • Migrate to github actions, remove travis, update badges
    • Update examples and provide link via codesandbox

v6.1.0

  • Add new event handler prop onSwipeStart

    • called only once per swipe at the start and before the first onSwiping callback
      • The first property of the SwipeEventData will be true
    • PR #226
    • Thank you @feketegy for the idea!
  • typescript updated to v4.1.3 and associated deps bumped to be compatible

v6.0.1

  • Fix issue with first property on SwipeEventData always being true.

v6.0.0

New Features:

  • include passive event listener option, by default, to internal uses of addEventListener
  • add new onTap event handler prop which executes its callback after a tap
  • add new vxvy event data property
    • [ deltaX/time, deltaY/time] - velocity per axis
    • Thank you @upatel32!

Breaking Changes:

  • remove <Swipeable> component
  • event data update correctly calculate deltaX and deltaY
    • from initial - current to current - initial
    • fixes issue #157
    • Thank you @upatel32!
  • drop support for ie11
    • using addEventListener options object needs to be polyfilled, browser support
  • requires react >= 16.8.3, additionally supports new react v17

Bug fixes:

  • Swipes can now start at edges (x or y === 0)

Infrastructure:

  • typescript Converted entire code base, tests, and examples to typescript
    • changed type EventData -> SwipeEventData - The event data provided for all swipe event callbacks
    • removed type SwipeableOptions - use SwipeableProps now
    • removed types associated with <Swipeable> component
    • new type TapCallback - callback for the new onTap prop handler
    • new type SwipeDirections - "Left" | "Right" | "Up" | "Down"
  • Converted tests to @testing-library/react, react testing library
  • Build bundles with microbundle. microbundle

Maintenance:

  • Upgraded all dev dependencies, jest, babel, webpack, eslint, prettier

5.5.0

5.4.0

  • Add initial property to eventData that supplies the inital [x, y] swipe value coordinates issue #150 and PR #131

5.3.0

5.2.3

5.2.2

5.2.0

5.1.0

  • Fix for preventDefaultTouchmoveEvent in safari issue #127 and PR #131
    • Thank you @JiiB and @bhj!
    • use ref callback for both <Swipeable> and useSwipeable to attach all touch event handlers
      • useSwipeable's returned handlers now contains a ref callback
      • Please see disscusion and comments in both #127 and #131 for more details and info.
        • fix avoids the passive: true issue from chrome document event listeners
        • fix avoids bug on safari where the touchmove event listener needs to be attached before a touchstart in order to be able to call e.preventDefault
  • removed touchHandlerOption prop
    • fix above deprecates this prop

5.0.0

  • Introduce react hook, useSwipeable
  • Core rewrite to simplify api and trim down bundled size
  • Add size-limit to help keep bundled size down
  • Add es export via "module": "es/index.js" to package.json
  • Add prettier code formating
  • [BREAKING] simplify handler event data to allow destructuring
    • onSwiped = ({ event, direction, absX, absY, velocity}) => console.log('swiped')
  • [BREAKING] deprecated onSwiping{Left|Right|Up|Down} handler props
    • can be replaced with direction/dir event data
    • onSwiping = ({ dir }) => console.log(`swiping - ${dir}`)
  • [BREAKING] deprecated props
    • flickThreshold
    • stopPropagation
    • disabled
  • [BREAKING] deprecated passing "rest" of props down
    • removed additional props besides the ones used by <Swipeable> from being passed down
      • only className and style get passed to <Swipeable>'s dom node, default div

4.3.0

  • Add rotationAngle prop. #103
    • will allow to set a rotation angle, e.g. for a four-player game on a tablet, where each player has a 90° turned view.
    • Thank you @Narquadah and @LarsKumbier!

4.2.2

  • fixed bug that happened when if either onSwiping or onSwiped were set we were not calling e.preventDefault() appropriately

4.2.0

  • Add support for calling preventDefault on Chrome 56+ via passive event support checking and manual event listener setup. #88

4.1.0

  • add disabled prop. #83
  • add innerRef prop that allows user to access to <Swipeable>'s inner dom node react ref. #82

4.0.1

4.0.0

  • Major Change preventDefaultTouchmoveEvent defaults to false now #69
  • Major Change drop support for React 12 & 13, peerDependencies updated #64
    • prop-types added to dependencies #64
  • Major Change trackMouse now 'tracks' the swipe outside of the swipeable component, #67.
  • react 16 added to peerDependencies

3.9.0

3.8.0

  • Allow onMouseDown, onMouseUp, and onMouseMove props to fire appropriately again. #55, thanks @lochstar
  • Stop using this.state to track swipes, thanks @grantila for pointing out this change and submitting PR, #58. Should provide minor performance gains since Swipeable will no longer be calling this.setState internally.

3.7.0

3.6.0

  • add stopPropagation prop for all swipe events, defaults to false. See #46 for more info.

3.5.1

  • fix React 15.2.0 warning for unknown properties on DOM elements

3.5.0

  • Add configurable container element via nodeName prop, defaults to 'div'. See #24 and #40 for more info.

3.4.0

  • Add preventDefault while swiping when props onSwipedLeft, onSwipedRight, onSwipedUp, and onSwipedDown are present. See #21 and #37 for more info.

3.3.0

  • Adds velocity data to onSwiping callback
  • Updated the build process introducing ES2015 and babel

3.2.0

  • Adds preventDefaultTouchMoveEvent option, defaults to true

3.1.0

  • Adds isFLick to onSwipe events
  • Removes React as a peer dep
  • Adds onSwiping events

3.0.2

  • Fixes onSwipeDown and onSwipeUp events

3.0.1

  • Fixes vertical swiping

3.0.0

  • Refactors build into jsx.

2.1.0

  • Adds onSwipedUp, onSwipedRight, onSwipedDown, onSwipedLeft callbacks.

2.0

  • onFlick prop has been removed.

  • onSwipe now has a 4th argument for the callback Boolean isFlick

  • Added a prop flickThreshold which allows you to customize at what velocity a flick is detected.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2023

size-limit report 📦

Path Size
lib/index.js 1.62 KB (0%)
dist/react-swipeable.js 1.72 KB (0%)
es/index.js 1.72 KB (0%)

@paulmarsicloud paulmarsicloud merged commit 07eced3 into main Jun 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Swipes starting at edges (x or y === 0) are disregarded
1 participant