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

Custom headers test #24

Open
wants to merge 58 commits into
base: custom-headers
Choose a base branch
from
Open

Custom headers test #24

wants to merge 58 commits into from

Conversation

Ilaiwi
Copy link

@Ilaiwi Ilaiwi commented Jan 22, 2019

Issue Number

Link to issue this PR addresses. If no issue exists, please provide reasoning for PR.

Overview of PR

Provide an overview of the changes in this PR.

Don't forget to update the CHANGELOG.md file with any changes that are in this PR

Ahmad Ilaiwi and others added 25 commits October 14, 2018 11:59
Copy link
Author

@Ilaiwi Ilaiwi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for dateHeader the following is missing

  • intervalRenderer tests
  • unit tests should cover more general cases with different timeline units
    for custom headers the following
  • test calculating left and width in intervals (let us talk about this)
  • unit tests should cover more general cases with different timeline units

please also check tests where we pass extra props to CustomHeader, DateHeader and SidebarHeader
for unit prop tests it should only be in custom headers and in date header just test props related to primary and secondary transformations



it("Given Dateheader When click on the primary header Then it should change the format", async () => {

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please test this though onTimeChange

const seconderyHeader = getAllByTestId('dateHeader')[2]
const unitHeader = getAllByTestId('dateHeader')[1]

const unitHeaderChildrenBeforeClick = unitHeader.childElementCount
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is very tied to the implementation. Lets talk about this later


})

it("Given Dateheader When click on the secondary header Then it should change the format", async () => {
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above

**Issue Number**

namespace-ee#349 

**Overview of PR**

this PR adds the following features:

1. render more headers in the header section 
2. add the ability to add completely customized headers.

To checkout, the work run the demo and chose `customHeaders` demo

![customheaders](https://user-images.githubusercontent.com/10817089/43393381-893d485a-93ff-11e8-9067-9fecd39f8dbf.gif)


 _**This work is still really really early and only to show core concept of the feature and to show progress**_

### TODO

- [x] fix drag items bug where extra custom headers cause items to not be correctly positioned correctly dragging
- [x] convert to propGetter pattern
- [x] add style and classnames props to customize headers root element


- [x] add props to style root element and add classnames to root element

- [x] add render prop for `DateHeader` for intervals
- [x] fix broken tests

- [x] add documentation



- [x] add tests for custom headers


- [x] delete format props
- [x] refactor and test 
- [x] decide what to do with sticky header prop
- [x] handle `headerRef` prop




- [x] maybe unify `CustomHeader` and `VerticalLines` label width calculation


- [x] make sure plugins don't break

- [x] delete sidebarContent and rightSidebarContent readme

- [x] delete `headerLabelGroupHeight` and `headerLabelHeight`
- [x] delete header css classes
- [x] custom header/day header pass primary/secondary via unit
- [x] pass components and functions for render prop
- [x] remove format object option from labelFormat
- [x] default styles in DateHeader => move to classnames and don't provide them if provide interval renderer
- [x] fix custom header docs (interval)
- [x] must pass height to custom headers? how do we fix this?
- [x] check if programmatically scrolling example work
- [x] write breaking change docs
- [x] cleanup old code
- [ ] handle touch state in `TimelineElementsHeader`



- [ ] fix a bug, where headers interval borders are not aligned with the vertical lines, form the calendar

- [ ] add an option to deal with `unit` as an interval of time
- [ ] pass `unit` as interval iterateTimes
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.

2 participants