tonkean-react-calendar-timeline
Version:
react calendar timeline
284 lines (167 loc) • 9.43 kB
Markdown
# Change Log
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres (more or less) to [Semantic Versioning](http://semver.org/).
## Unreleased
### Added in this fork
* stackItems force - set stackItems as `force` to force the items to be stacked regardless of collision
* minGroupHeight - specify min group height. (optional)
### 0.17.2
### Added
* support passing `style` prop from item - #347
* `selected` is provided to `itemRenderer` - #348
* simplify logic for calculate dimensions and prevent item width and left properties from being unbounded - (refactoring)
### 0.17.1
### Added
* pass canvasTimeStart/End via timelineContext to the itemRenderer prop
### 0.17.0
### Breaking
* throw more descriptive error if visibleTimeStart/End and defaultTimeStart/End are not passed as props. Timeline no longer calculates visibleTime start and end from items. Removed `onTimeInit` prop as it no longer serves a purpose. - #299
* `interactjs` is a peerDependency (wasn't previously). Upped version to 1.3.4 to fix issue #297
### Fixed
* fix for issue where NaN is returned in onItemMove if the startTime is not unix timestamp #300
### 0.16.3
### Fixed
* tap on canvas now dispatches `onCanvasClicked` - #168
* regression bug related to touch zoom
* code cleanup and refactoring around group rows
### 0.16.2
### Fixed
* clicking on canvas when item is selected now calls `onCanvasClicked` - #312
### 0.16.1
### Added
* added `stickyHeader` to disable/enable timeline header sticking on scroll.
* removed `fullUpdate` prop and functionality. Labels rely on `position: sticky` to show for items that start before `visibleTimeStart`. This (should) greatly improve scroll performance.
* removed extraneous css such as `text-align: center` on `.rct-item`, `.rct-item-overflow` to simplify the dom structure of `Item.js`
* added `headerRef` callback to receive a reference to the header element. Due to the change in how the header positioning is implemented (i.e. using `position: sticky`), there is a need to use a polyfill in [certain browsers](https://caniuse.com/#feat=css-sticky) that don't support `position: sticky`. With a reference to the header dom element, you can use a polyfill to apply sticky behavior.
* `minimumWidthForItemContentVisibility` prop to control at what width inner item content is rendered.
### Breaking
* removed `fixedHeader` prop in favor of using `position: sticky` by default
* removed import of stylesheets in library code, put onus on user to handle this stylesheet
## 0.15.12
### Fixed
* Shift + Scroll via mouse wheel scrolls canvas horizontally - #281
## 0.15.11
### Fixed
* removed `preventDefault` call in item double click handler - #277
## 0.15.10
### Fixed
* fix issue with time report with onItem\* callbacks for browsers that don't support `x` property in rect object - #266
## 0.15.9
### Fixed
* header positioned incorrectly when not fixed/sticky - caused by #236
## 0.15.8
### Fixed
* propTypes error related to Item prop - #239
* onCanvasClick and onCanvasDoubleClick were being called on header click - #236
### Added
* on timeline zoom, onZoom prop is called with timelineContext - #248
## 0.15.7
This release contains a lot of code cleanup as well as an API change to the `itemRenderer` prop.
### Fixed
* peerDependency warning if using React 16 #187
### Added
* `timelineContext` is provided to `itemRenderer` #233
## 0.15.6
### Fixed
* Fixed issue with state not properly updated when ending resize #173
* Fixed issue with onItem\* events not reporting correct time when timeline has outer padding #227
## 0.15.5
### Fixed
* context click actually calls double click callback #225
* Removed href attribute from header divs #222
## 0.15.4
### Fixed
* Clicking on Svg element throws error #216
## 0.15.3
This version contains one crucial bug fix and a simple update to item clicks to report time. Much of the other work was around repo maintenance and preparing the repo for future development (update to dev-tooling, some documentation updates)
### Added
* Report time with all item clicks #210
### Fixed
* Drag doesn't stop when you leave the timeline canvas #182
## [0.15.0]
Plugin support and sticky header!
### Added
* Plugins system (pass them as children) @mariusandra #122
* Sticky header (`fixedHeader='sticky'`) @mariusandra #125
### Removed
* [BREAKING] Removed deprecated option to pass sidebar header content as children. Use `sidebarContent` instead. @mariusandra
* [BREAKING] Removed fixedHeader option `absolute`, which was broken and is now replaced with the option `sticky` @mariusandra
### Demo & Docs
* Notice for modern module bundlers @jlubben @mariusandra #128
* Add [treeGroups](http://namespace.ee/react-calendar-timeline-docs/#/treeGroups) demo
## [0.14.11]
Plenty of bugfixes, tests and new demos in these 0.14 patch releases.
### Fixed
* Fixed bug with `resizeDetector` and with detecting changes in `sidebarWidth` @mariusandra
* Fixed bug where order `0` was evaluated as a falsy @nicocrm #111
* Fix overflow-x with header @signalwerk
### Added
* Add meta+wheel modifier that zooms 3x the speed of the normal wheel events @mariusandra
### Changed
* Refactor `calculateDimensions` to be pure @signalwerk
* Convert `groupHeights` and `groupTops` to arrays (from objects) @mariusandra
### Demo & docs
* Add [linkedTimelines](http://namespace.ee/react-calendar-timeline-docs/#/linkedTimelines) demo
* Add [elementResize](http://namespace.ee/react-calendar-timeline-docs/#/elementResize) demo
* Add docs about modifier keys for zooming/scrolling @signalwerk
## [0.14.2]
### Changed
* Use `prop-types` instead of `React.PropTypes` to support React 15.5+. @mariusandra #110
## [0.14.0]
### Added
* Use `headerLabelFormats` and `subHeaderLabelFormats` to customise the header labels. @Slowyn #68
* Optional pluggable `resizeDetector` to detect when the element's container is resized. @Ziller321 #94
### Fixed
* Fix renders with empty `groups` array. @signalwerk #106
## [0.13.0]
### Added
* An option to add another sidebar to the right of the Timeline. @goooseman #80
* `itemRenderer` prop to allow specifying a custom component to render the items @nicocrm #103
* `groupRenderer` prop to allow specifying a custom component to render the groups @nicocrm #103
* `showCursorLine` prop to show a vertical line at the snap position @meikoudras
* You can now select multiple items if you take control of the `selected` prop and the `onItemSelect` handler. @meengit #71
* Canvas context menu handler `onCanvasContextMenu` @meikoudras
### Fixed
* Calculate width when we receive sidebar width property @jmerriweather #75
* Avoid updating updateDimensions right after updateScrollCanvas @nicocrm #87
* Fix typo collision detection in stack() @nicocrm #96
* Remove dead code @signalwerk #101
* Disable cursor style by interactjs @bkniffler #89
* Fixed header width and Header label weekday support @meikoudras #66
### Changed
* [Deprecated] To have content above the left sidebar, pass it in a `sidebarContent={<div />}` prop, not as children to the component.
## [0.11.1]
### Fixed
* Without canResize prop in items it gave a Uncaught TypeError. @tgosp
## [0.11.0]
### Added
* An option to fully update the calendar at every scroll event. With this change, labels of items are always fully visible, even if looking at a multi day event with a zoom level set at 30min. @mariusandra
## [0.10.1]
### Changed
* The left resize edge mouse cursor is now a left arrow @mariusandra
## [0.10.0]
### Added
* You can also resize items from the left now @mariusandra
## [0.9.0]
### Added
* Allow disabling selection clicks on items #58 by @sjchmiela
* Allow passing additional props to `Item`'s `<div/>` #58 by @sjchmiela
* Add `clickTolerance` so dragging more than 3 pixels is no longer a click @mariusandra
### Changed
* [BREAKING] Same arguments order (groupId, time, e) for onCanvasDoubleClick and onCanvasClick #52 by @signalwerk
* [Deprecated] `onTimeChange` now gets `updateScrollCanvas` as the third argument. Doing `this.updateScrollCanvas` is no longer needed and will be removed soon.
* Moved React & Moment from dependencies to peerDependencies #53 by @meikoudras
* Fix resizing when inside DIV #47 by @semargal
* Fix demo for IE11 #44 by @lucidlemon
* Package a .css file, not a .scss file as previously done. @mariusandra
[0.9.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.8.6...v0.9.0
[0.10.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.9.0...v0.10.0
[0.10.1]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.10.0...v0.10.1
[0.11.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.10.1...v0.11.0
[0.11.1]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.11.0...v0.11.1
[0.13.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.11.1...v0.13.0
[0.14.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.13.0...v0.14.0
[0.14.2]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.14.0...v0.14.2
[0.14.11]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.14.2...v0.14.11
[0.15.0]: https://github.com/namespace-ee/react-calendar-timeline/compare/v0.14.11...v0.15.0