2016-02-16 06:22:50 +08:00
|
|
|
import {Plugin, Cordova} from './plugin';
|
|
|
|
|
2016-03-07 02:51:12 +08:00
|
|
|
export interface datePickerOptions {
|
|
|
|
/**
|
|
|
|
* Platforms: iOS, Android, Windows
|
|
|
|
* The mode of the date picker
|
|
|
|
* Values: date | time | datetime
|
|
|
|
*/
|
2016-03-07 03:31:00 +08:00
|
|
|
mode: string,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Platforms: iOS, Android, Windows
|
|
|
|
* Selected date
|
|
|
|
*/
|
2016-03-07 03:31:00 +08:00
|
|
|
date: Date,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Platforms: iOS, Android, Windows
|
|
|
|
* Minimum date
|
|
|
|
* Type: Date | empty String
|
|
|
|
* Default: empty String
|
|
|
|
*/
|
2016-03-09 03:23:22 +08:00
|
|
|
minDate: Date,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Platforms: iOS, Android, Windows
|
|
|
|
* Maximum date
|
|
|
|
* Type: Date | empty String
|
|
|
|
* Default: empty String
|
|
|
|
*/
|
2016-03-09 03:23:22 +08:00
|
|
|
maxDate: Date,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Platforms: Android
|
|
|
|
* Label for the dialog title. If empty, uses android default (Set date/Set time).
|
|
|
|
* Type: String
|
|
|
|
* Default: empty String
|
|
|
|
*/
|
2016-03-09 03:23:22 +08:00
|
|
|
titleText: string,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Platforms: Android
|
|
|
|
* Label of BUTTON_POSITIVE (done button) on Android
|
|
|
|
*/
|
2016-03-09 03:23:22 +08:00
|
|
|
okText: string,
|
2016-03-07 02:51:12 +08:00
|
|
|
|
|
|
|
// TODO complete documentation here, and copy params & docs to main plugin docs
|
2016-03-09 03:23:22 +08:00
|
|
|
cancelText: string,
|
|
|
|
todayText: string,
|
|
|
|
nowText: string,
|
|
|
|
is24Hour: boolean,
|
|
|
|
androidTheme: number,
|
|
|
|
allowOldDate: boolean,
|
|
|
|
allowFutureDates: boolean,
|
|
|
|
doneButtonLabel: string,
|
|
|
|
doneButtonColor: string,
|
|
|
|
cancelButtonLabel: string,
|
|
|
|
cancelButtonColor: string,
|
|
|
|
x: number,
|
|
|
|
y: number,
|
|
|
|
minuteInterval: number,
|
|
|
|
popoverArrowDirection: string,
|
|
|
|
locale: string
|
2016-03-07 02:51:12 +08:00
|
|
|
}
|
|
|
|
|
2016-02-16 06:22:50 +08:00
|
|
|
/**
|
|
|
|
* The DatePicker plugin allows the user to fetch date or time using native dialogs.
|
|
|
|
*
|
|
|
|
* Platforms supported: iOS, Android, Windows
|
|
|
|
*
|
2016-03-07 02:51:12 +08:00
|
|
|
* Requires Cordova plugin: `cordova-plugin-datepicker`. For more info, please see the [DatePicker plugin docs](https://github.com/VitaliiBlagodir/cordova-plugin-datepicker).
|
2016-02-16 06:22:50 +08:00
|
|
|
*
|
|
|
|
* Install the plugin by running the following command:
|
|
|
|
* ```shell
|
2016-03-07 02:51:12 +08:00
|
|
|
* cordova plugin add https://github.com/VitaliiBlagodir/cordova-plugin-datepicker.git
|
2016-02-16 06:22:50 +08:00
|
|
|
* ```
|
|
|
|
*
|
|
|
|
* @usage
|
|
|
|
* ```js
|
2016-03-07 03:31:00 +08:00
|
|
|
* DatePicker.show({
|
|
|
|
* date: new Date(),
|
|
|
|
* mode: 'date'
|
|
|
|
* }).then(
|
|
|
|
* date => console.log("Got date: ", date),
|
|
|
|
* err => console.log("Error occurred while getting date:", err)
|
|
|
|
* );
|
2016-02-16 06:22:50 +08:00
|
|
|
* ```
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
@Plugin({
|
2016-03-07 02:51:12 +08:00
|
|
|
plugin: 'https://github.com/VitaliiBlagodir/cordova-plugin-datepicker.git',
|
|
|
|
pluginRef: 'datePicker'
|
2016-02-16 06:22:50 +08:00
|
|
|
})
|
|
|
|
export class DatePicker {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Shows the date and/or time picker dialog(s)
|
|
|
|
* @param options
|
|
|
|
* @returns {Promise<Date>} Returns a promise that resolves with the picked date and/or time, or rejects with an error.
|
|
|
|
*/
|
2016-03-05 05:42:21 +08:00
|
|
|
@Cordova()
|
2016-03-11 05:48:20 +08:00
|
|
|
static show(options: datePickerOptions): Promise<Date> { return }
|
2016-02-16 06:22:50 +08:00
|
|
|
|
|
|
|
}
|