2 components in React Native.
1. List "wheel"
--------------------------
November
December
January
February
March
--------------------------
Props:
- items: string[] | {value,label}[]
["January", ..., "December"] | [{value: "0" label: "January"}, ..., {value: "11" label: "December"}] - loop: boolean
- strings: number – always converted to an odd number (for example, 4 → 5), so the selected row is in the middle
- selected: string | value
- disable: string[] | value[] – I can refer to elements either by label or by value, so both options should work.
Events:
- onChange returns the selected string | value
No 3D effect, flat. With inertia, if swiped. A good example is selecting time on the alarm clock in Android.
The design, of course, is customizable. Changing fonts, margins, etc. should not break the component
2. Two calendars built based on this wheel
1. Regular calendar that inputs/outputs dates in the format "dd-mm-yyyy".
2. Jewish calendar with an identical external interface "dd-mm-yyyy", but internally using the Jewish date system. To find out the number of days in a month in a year, use the "hebcal" library.
What I expect to receive
• Reusable, well-typed React Native components (preferably TypeScript)
• Clean, commented source code without external native modules, except for standard React Native libraries and community date libraries (e.g., moment-hijri, date-fns, and similar)
• Quick demo screen showcasing the wheel separately and each calendar in action
• Basic README file describing properties, expected formats, and an import example
I will integrate the components into an existing application, so clarity and maintainability play a key role.
Here are examples of the appearance:


