This repository has been archived by the owner on Dec 26, 2024. It is now read-only.
refactor: propose enhancement for calendar 0.1.0 #511
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR refactors the calendar component to make the code more concise. By leveraging
date-fns
, we’re now offering more intuitive internationalization. Additionally, astyles
prop has been introduced, allowing for customization of all sub-component styles.To optimize the scrolling experience, the implementation now utilizes
FlatList
, ensuring smoother horizontal transitions. However, a limitation was encountered withscrollToIndex
in FlatList, which didn’t trigger as expected. As a workaround, and as documented in the comments, we’ve implemented the onScrollToIndexFailed solution suggested in this Stack Overflow post.Lastly, updates have been made to
CalendarCarouselBasicStory
to reflect the current changes.Test Plan
You can test by injecting props into
CalendarCarouselBasicStory
. Currently, it’s a very basic version, and you can primarily try making style-centric changes.Related Issues
N/A
Tests
WIP
Checklist
Before you create this PR confirms that it meets all requirements listed below by checking the relevant checkboxes (
[x]
). This will ensure a smooth and quick review process.yarn test:all
and make sure nothing fails.