npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@tatil/react-native-wheel-date-picker

v0.1.1

Published

Native inline wheel date picker for React Native (New Architecture): Android DatePicker spinner, iOS UIDatePicker wheels.

Readme

@tatil/react-native-wheel-date-picker

Inline native wheel date picker for React Native.

The picker is a plain view: place it wherever you need, for example inside your own bottom sheet or modal. onChange fires on every wheel step, so a "Save" button can read the value at any moment, even while the wheel is still spinning.

Requirements

[!IMPORTANT] New Architecture only. The Android picker is a Fabric component and does not work on the old architecture (Paper).

| Dependency | Version | | --- | --- | | react-native | >= 0.80 with the New Architecture enabled | | react | >= 19 | | @react-native-community/datetimepicker | >= 9.1.0 (peer dependency, used on iOS) |

Installation

yarn add @tatil/react-native-wheel-date-picker @react-native-community/datetimepicker
npm install @tatil/react-native-wheel-date-picker @react-native-community/datetimepicker

Then install pods and rebuild the native apps:

cd ios && bundle exec pod install

Autolinking handles the rest; no manual registration is needed.

Usage

import { useState } from 'react';
import { WheelDatePicker } from '@tatil/react-native-wheel-date-picker';

const BirthDateField = () => {
  const [date, setDate] = useState(new Date(1990, 0, 1));

  return (
    <WheelDatePicker
      value={date}
      onChange={setDate}
      minimumDate={new Date(1920, 0, 1)}
      maximumDate={new Date()}
      locale="tr-TR"
    />
  );
};

The picker is controlled: keep the date in state and update it in onChange.

Props

| Prop | Type | Platform | Description | | --- | --- | --- | --- | | value | Date | both | Selected date. Required. | | onChange | (date: Date) => void | both | Called on every wheel step. Required. | | minimumDate | Date | both | Earliest selectable date. | | maximumDate | Date | both | Latest selectable date. | | textColor | string | both | Wheel text color, e.g. '#1F1F1F'. Android 10 (API 29) and later; older Android versions use the theme color. | | locale | string | iOS | Locale for month names and wheel order, e.g. 'tr-TR'. | | style | StyleProp<ViewStyle> | both | Size and layout. Android defaults to full width and 200 pt height. |

Dates and time zones

Every date going in and out of the picker is normalized to 12:00 local time on the selected day. Some time zones changed their UTC offset in the past (for example Türkiye before 2016), and a midnight Date can shift to 23:00 of the previous day during conversions. Noon keeps the day stable. If you need midnight, reset the hours yourself.

Platform notes

Android

  • Language: month names and wheel order (day, month, year) follow the device language. The locale prop has no effect on Android.

  • Theme: the wheel uses a light theme. To change the default text and divider colors, declare a style with the same name in your app's android/app/src/main/res/values/styles.xml:

    <style name="ThemeOverlay.TatilWheelDatePicker" parent="">
        <item name="android:datePickerStyle">@style/Widget.TatilWheelDatePicker</item>
        <!-- Wheel text -->
        <item name="android:textColorPrimary">#1F1F1F</item>
        <!-- Selection divider lines -->
        <item name="android:colorControlNormal">#525252</item>
    </style>
  • Gestures: while a wheel is being dragged, parent scroll views and bottom sheets do not take over the touch.

iOS

  • The wheel always uses the light appearance.
  • The package ships no iOS native code of its own; @react-native-community/datetimepicker must be installed in the app.

Contributing

License

MIT


Made with create-react-native-library