react-native-form-model
Version:
An easily testable and opinionated React Native form model builder written in pure JavaScript.
30 lines (29 loc) • 1.37 kB
TypeScript
import moment, { Duration, Moment } from 'moment';
import { TextInputProps } from 'react-native';
import { MaybeObservable } from '../../util/reactUtil';
import { ViewRef } from '../formTypes';
import InputFieldModel, { ParsedInputFieldModelOptions } from './InputFieldModel';
import { KeyboardInputFieldModelBaseOptions } from './KeyboardInputFieldModel';
export interface TimeInputFieldModelOptions extends ParsedInputFieldModelOptions<Duration, Duration>, KeyboardInputFieldModelBaseOptions {
refDay?: MaybeObservable<Moment | undefined>;
futureDisabled?: boolean;
}
export default class TimeInputFieldModel extends InputFieldModel<Duration, Duration> implements TimeInputFieldModelOptions {
mode: TimeInputFieldModelOptions['mode'] | undefined;
refDay: MaybeObservable<Moment | undefined> | undefined;
futureDisabled: boolean;
autoFocus: boolean;
optional: boolean;
returnKeyType: TextInputProps['returnKeyType'];
clearTextOnFocus: boolean;
selectTextOnFocus: boolean;
clearButtonMode: TextInputProps['clearButtonMode'];
private _refDay?;
private _refDaySub?;
constructor(options: TimeInputFieldModelOptions);
getRefDay(): moment.Moment | undefined;
formatDate(date?: Moment): string;
formatTime(time?: Duration): string;
onMount(viewRef: ViewRef): void;
onUnmount(viewRef: ViewRef): void;
}