React Native Propel Kit

React Native Propel Kit

  • Quick Start
  • Components
  • Github
  • v0.8.6

›Components

Introduction

  • Quick Start

Components

  • ActionSheetProvider
  • BackdropProvider
  • ModalDialog
  • Select
  • DatePicker
  • TimePicker
  • DateTimePicker
  • MonthPicker
  • YearPicker
  • Picker

Recipes

  • Customizing styles

MonthPicker

The <MonthPicker /> component gives you easy-to-use cross platform month picker leveraging this library ModalDialog and cross-platform Picker using an unified API.

  • Integrates well in forms as a themable TextInput-like button
  • Properly unified API and casted results.
  • Supports an UTC-mode for tz-proofing the data.

Preview

iOSAndroid

Usage

Setup dependencies

Since this components uses a backdrop, you need to wrap your application with a <BackdropProvider /> component. You usually want to wrap it as high as possible in your tree so that the backdrop properly covers the whole screen.

// App.jsx

import React from 'react';
import BackdropProvider from '@mgcrea/react-native-backdrop-provider';

const App: FunctionComponent = () => {
  return (
    <BackdropProvider>
      <RootNavigator />
    </BackdropProvider>
  );
};

export default App;

Basic

The basic API is relatively close to a regular TextInput

// MyComponent.jsx

import React from 'react';
import {Button} from 'react-native';
import {BackdropContext} from '@mgcrea/react-native-backdrop-provider';

const MyComponent = () => {
  const [date, setDate] = useState<Date>(new Date());
  return (
    <View>
      <Text style={{color: 'white', marginBottom: 12}}>Value: {time.toISOString()}</Text>
      <MonthPicker title="Pick a month" value={date} onChange={setDate} />
    </View>
  );
};

export default MyComponent;

Props

export type Props = Pick<ModalDialogProps, 'title' | 'confirmTitle' | 'cancelTitle'> &
  Pick<DatePickerIOSProps, 'locale'> & {
    children?: ReactNode;
    initialValue?: MonthPickerValue;
    InputButtonComponent?: ElementType<InputButtonProps>;
    labelExtractor?: (value: Date, options: LabelExtractorOptions) => string;
    onChange?: (value: MonthPickerValue) => void;
    onSubmitEditing?: (value: MonthPickerValue) => void;
    placeholder?: string;
    minYear?: number;
    maxYear?: number;
    value?: MonthPickerValue;
    utc?: boolean;
    [s: string]: any; // otherInputButtonProps
  };

Defaults

export const defaultProps = {
  initialValue: CURRENT_MONTH,
  InputButtonComponent: InputButton,
  labelExtractor: defaultLabelExtractor,
  locale: navigator.language || 'en-US',
  utc: true
};
Last updated on 9/11/2019
← DateTimePickerYearPicker →
  • Preview
  • Usage
    • Setup dependencies
    • Basic
  • Props
    • Defaults
React Native Propel Kit
Docs
Getting Started (or other categories)Guides (or other categories)API Reference (or other categories)
Community
User ShowcaseStack OverflowProject ChatTwitter
More
BlogGitHubStar
Facebook Open Source
Copyright © 2019 Olivier Louvignes