682 lines
16 KiB
TypeScript
Raw Normal View History

chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
import { Injectable } from '@angular/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
export enum ELocalNotificationTriggerUnit {
SECOND = 'second',
MINUTE = 'minute',
HOUR = 'hour',
DAY = 'day',
WEEK = 'week',
MONTH = 'month',
QUARTER = 'quarter',
YEAR = 'year',
WEEKDAY = 'weekday',
WEEKDAY_ORDINAL = 'weekdayOrdinal',
WEEK_OF_MONTH = 'weekOfMonth'
}
export interface ILocalNotificationTrigger {
/** ***** FIX ***** */
/**
* The date and time when the system should deliver the local notification. If the specified value is nil or is a date in the past, the local notification is delivered immediately.
* Default: now ~ new Date()
*/
at?: Date;
/** ***** TIMESPAN ***** */
/**
* Amount of units
*/
in?: number;
/**
* Unit
*/
unit?: ELocalNotificationTriggerUnit;
/** ***** REPEAT/MATCH ***** */
/**
* Amount of units
*/
count?: number;
/**
* Unit
*/
every?: ELocalNotificationTriggerUnit;
before?: Date;
/**
* The date and time when the system should deliver the local notification. If the specified value is nil or is a date in the past, the local notification is delivered immediately.
* Only for "repeat"
* Default: now ~ new Date()
*/
firstAt?: Date;
/**
* Only for "match"
*/
after?: Date;
/** ***** LOCATION ***** */
/**
* IOS ONLY
* Center of the location
* Latitude and Longitude values
*/
center?: number[];
/**
* IOS ONLY
* Radius in meters
*/
radius?: number;
/**
* IOS ONLY
* Trigger on entry of the location
*/
notifyOnEntry?: boolean;
/**
* IOS ONLY
* Trigger on exit of the location
*/
notifyOnExit?: boolean;
/**
* IOS ONLY
* Trigger only once?
*/
single?: boolean;
}
export enum ILocalNotificationActionType {
INPUT = 'input',
BUTTON = 'button'
}
/**
* Notification action
*
* @see https://github.com/katzer/cordova-plugin-local-notifications#actions
*/
export interface ILocalNotificationAction {
/**
* The id of the action is used as the event name in the listener function
*/
id?: string;
/**
* The title of the notification message
*/
title?: string;
/**
* Specifies whether the action causes the app to launch in the foreground
*/
launch?: boolean;
/**
* If the value is 'decline' the action is displayed with special highlighting to indicate that it performs a destructive task
*/
ui?: string;
/**
* Specifies whether the action requires that the users device be unlocked.
* When the user selects an action with this option, the system prompts
* the user to unlock the device
*/
needsAuth?: boolean;
/**
* The resource path of the action icon
*/
icon?: string;
/**
* The type of the action. If omitted 'button' is used.
*/
type?: ILocalNotificationActionType;
}
export interface ILocalNotificationProgressBar {
/**
* Is the progress bar enabled?
*/
enabled?: boolean;
/**
* The current value
*/
value?: number;
/**
* ANDROID ONLY
* The maximum value (default is 100)
*/
maxValue?: number;
/**
* ANDROID ONLY
* Show an indeterminate progress bar
*/
indeterminate?: boolean;
/**
* WINDOWS ONLY
* Gets or sets an optional string to be displayed instead of the
* default percentage string. If this isn't provided, something
* like "70%" will be displayed.
*/
description?: string;
/**
* WINDOWS ONLY
* Sets the status (required), which is displayed underneath the progress bar
* on the left.
* This string should reflect the status of the operation,
* like "Downloading..." or "Installing..."
*/
status?: string;
}
2016-07-17 19:59:26 +02:00
2016-12-06 09:20:49 -05:00
export interface ILocalNotification {
2016-12-06 09:20:49 -05:00
/**
* A unique identifier required to clear, cancel, update or retrieve the local notification in the future
* Default: 0
*/
id?: number;
/**
* First row of the notification
* Default: Empty string (iOS) or the app name (Android)
*/
title?: string;
/**
* Second row of the notification
* Default: Empty string
*/
text?: string | string[];
2016-12-06 09:20:49 -05:00
/**
* The number currently set as the badge of the app icon in Springboard (iOS) or at the right-hand side of the local notification (Android)
* Default: 0 (which means don't show a number)
*/
badge?: number;
/**
* Uri of the file containing the sound to play when an alert is displayed
* Default: res://platform_default
*/
sound?: string;
/**
* Arbitrary data, objects will be encoded to JSON string
* Default: null
*/
data?: any;
/**
* ANDROID ONLY
* Uri of the icon that is shown in the ticker and notification
* Default: res://icon
*/
icon?: string;
/**
* ANDROID ONLY
* Uri of the resource (only res://) to use in the notification layouts. Different classes of devices may return different sizes
* Default: res://ic_popup_reminder
*/
smallIcon?: string;
2017-03-01 21:28:05 -05:00
/**
* ANDROID ONLY
* RGB value for the background color of the smallIcon.
* Default: Androids COLOR_DEFAULT, which will vary based on Android version.
*/
color?: string;
2016-12-06 09:20:49 -05:00
/**
* ANDROID ONLY
* Use the default notification vibrate.
2016-12-06 09:20:49 -05:00
*/
vibrate?: boolean;
2016-12-06 09:20:49 -05:00
/**
* ANDROID ONLY
* Define the blinking of the LED on the device.
* If set to true, the LED will blink in the default color with
* timings for on and off set to 1000 ms.
* If set to a string, the LED will blink in this ARGB value with
* timings for on and off set to 1000 ms.
* If set to an array, the value of the key 0 will be used as the color,
* the value of the key 1 will be used as the 'on' timing, the value of
* the key 2 will be used as the 'off' timing
2016-12-06 09:20:49 -05:00
*/
led?: {color: string, on: number, off: number} | any[] | boolean | string;
/**
* Notification priority.
* Integers between -2 and 2, whereas -2 is minimum and 2 is maximum priority
*/
priority?: number;
/**
* Is a silent notification
*/
silent?: boolean;
/**
* Specifies whether the a click on the notification causes the app
* to launch in the foreground
*/
launch?: boolean;
/**
* ANDROID ONLY
* Wakeup the device. (default is true)
*/
wakeup?: boolean;
/**
* ANDROID ONLY
* Specifies a duration in milliseconds after which this notification should be canceled, if it is not already canceled.
*/
timeoutAfter?: number | false;
/**
* Actions id or actions
*/
actions?: string | ILocalNotificationAction[];
/**
* When to trigger the notification
*/
trigger?: ILocalNotificationTrigger;
/**
* A list of image attachments
*/
attachments?: string[];
/**
* ANDROID ONLY
* If and how the notification shall show the when date.
* Possbile values:
* boolean: true equals 'clock', false disable a watch/counter
* 'clock': Show the when date in the content view
* 'chronometer': Show a stopwatch
*
*/
clock?: boolean | string;
/**
* Shows a progress bar
* Setting a boolean is a shortcut for {enabled: true/false} respectively
*/
progressBar?: ILocalNotificationProgressBar | boolean;
/**
* ANDROID ONLY
* If multiple notifications have the same group your app can present
* them as a single group.
*/
group?: string;
/**
* ANDROID ONLY
* If set to 'true' this notification could use 'summary' to summarize
* the contents of the whole group
*/
groupSummary?: boolean;
/**
* ANDROID ONLY
* Summary of the whole notification group. Should be used in conjuntion
* with 'groupSummary' set to true
*/
summary?: string;
/**
* ANDROID ONLY
* Sets the number of items this notification represents.
*/
number?: number;
/**
* ANDROID ONLY
* Set whether this is an "ongoing" notification.
* Ongoing notifications cannot be dismissed by the user,
* so your application or service must take care of canceling them.
*/
sticky?: boolean;
/**
* ANDROID ONLY
* Make this notification automatically dismissed when the user touches it.
*/
autoClear?: boolean;
/**
* ANDROID ONLY
* If set to true the notification will be show in its entirety on all lockscreens.
* If set to false it will not be revealed on a secure lockscreen.
*/
lockscreen?: boolean;
/**
* ANDROID ONLY
* Set the default notification options that will be used.
* The value should be one or more of the following fields combined with
* bitwise-or: DEFAULT_SOUND, DEFAULT_VIBRATE, DEFAULT_LIGHTS.
*/
defaults?: number;
/**
* ANDROID ONLY
* Specifies the channel the notification should be delivered on.
*/
channel?: string;
/**
* ANDROID ONLY
* Set the token for the media session
*/
mediaSession?: string;
2016-12-06 09:20:49 -05:00
}
2016-07-17 19:59:26 +02:00
2016-03-10 17:25:24 -05:00
/**
* @name Local Notifications
* @description
* This plugin allows you to display local notifications on the device
2016-03-10 17:25:24 -05:00
*
* @usage
* ```typescript
chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
* import { LocalNotifications } from '@ionic-native/local-notifications';
*
*
* constructor(private localNotifications: LocalNotifications) { }
*
* ...
*
*
2016-03-10 17:25:24 -05:00
* // Schedule a single notification
chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
* this.localNotifications.schedule({
2016-03-10 17:25:24 -05:00
* id: 1,
2016-12-06 09:20:49 -05:00
* text: 'Single ILocalNotification',
* sound: isAndroid? 'file://sound.mp3': 'file://beep.caf',
2016-03-10 17:25:24 -05:00
* data: { secret: key }
* });
*
*
* // Schedule multiple notifications
chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
* this.localNotifications.schedule([{
2016-03-10 17:25:24 -05:00
* id: 1,
2016-12-06 09:20:49 -05:00
* text: 'Multi ILocalNotification 1',
* sound: isAndroid ? 'file://sound.mp3': 'file://beep.caf',
2016-03-10 17:25:24 -05:00
* data: { secret:key }
* },{
* id: 2,
2016-12-06 09:20:49 -05:00
* title: 'Local ILocalNotification Example',
* text: 'Multi ILocalNotification 2',
* icon: 'http://example.com/icon.png'
2016-03-10 17:25:24 -05:00
* }]);
*
*
* // Schedule delayed notification
chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
* this.localNotifications.schedule({
2016-12-06 09:20:49 -05:00
* text: 'Delayed ILocalNotification',
* trigger: {at: new Date(new Date().getTime() + 3600)},
* led: 'FF0000',
2016-03-10 17:25:24 -05:00
* sound: null
* });
* ```
2016-12-06 09:20:49 -05:00
* @interfaces
* ILocalNotification
2016-03-10 17:25:24 -05:00
*/
@Plugin({
pluginName: 'LocalNotifications',
plugin: 'cordova-plugin-local-notification',
2016-03-12 19:08:47 -05:00
pluginRef: 'cordova.plugins.notification.local',
2017-03-28 08:24:04 -04:00
repo: 'https://github.com/katzer/cordova-plugin-local-notifications',
platforms: ['Android', 'iOS', 'Windows']
2016-03-10 17:25:24 -05:00
})
chore(): merge v3-injectable into master (#1203) * feat(push): plugin is now instance based no more callbacks closes #250 * fix(push): fix typo in PushEvents enum * fix constructor * feat(push): add subscribe/unsubscribe fixes #861 * First try * Moving to modules * Removed * Moving things aroudn * tsconfig for plugins * Plugin tsconfigs * Core kind of buidls * Core * Plugin tsconfig * Test * Remove core * Build * Individual packages * Build and push * Some stuff * Bump * Update core-package.json.template * Update plugin-package.json.template * 3.0.0 * Working on injectable * Updates * Checkpoint * More stuff * Remove duplicate injectables * Remove lots of static stuff with a fancy regex * Fix build errors * chore(): nodejs build script * chore(): move fs-extra-promise to devDeps * feat(): make instance based plugins injectable * Cleanup * chore(build): convert dependencies to peer dependencies * chore(build): add auto install scripts (#1059) * feat(core): auto install scripts * minor fixes * minor fixes * remove prompt message * fix(plugins): rename packages/classes * rename google maps * gulp task to generate readme files * readme templates * automating readme file generation and adding it to CI # Conflicts: # src/@ionic-native/plugins/googlemap/index.ts # src/@ionic-native/plugins/inappbrowser/index.ts # src/@ionic-native/plugins/media/index.ts # src/@ionic-native/plugins/sqlite/index.ts * outputting readmes to dist dir instead of src * updating package name in usage instructions * chore(): ngc build * fix build * 3.0.1-0 * 3.1.0-alpha.1 * fix AoT support and add publish script * 3.1.0-alpha.2 * edit publish command * remove alpha tag * remove auto-install and cleanup * 3.1.0-alpha.3 * remove utils from publish command * refactor(): remove some prefixes * remove console logs closes #1145 * chore(): merge master into v3-injectable (#1146) * 2.5.0 * chore(): update changelog * fix(pin-dialog): add missing errorIndex * 2.5.1 * chore(): update changelog * fix(zip): progress callback is optional (#1049) * fix(apprate): add missing Windows Store option (#1072) * Update file-chooser.ts (#1071) Removed semicolon after .then() in usage instructions * docs(device-motion): update interface names (#1076) AccelerationData interface is wrongly named in docs. It should be DeviceMotionAccelerationData. And I added it to import statement. * feat(inappbrowser): add interface for IAB options (#1065) * Add InAppBrowserOptions Interface for better tooling. * feat(inappbrowser): add interface for IAB options * Add more constructor tests. * Add missing iOS options. * docs(media): update method usage (#1089) * fix(push): add the missing option clearBadge (#1087) * docs(badge): fix example (#1096) Error in code example (supplied parameters do not match call signature) * fix(imagepicker): add outputType option (#1098) * fix(facebook): fixes issue when not supplying default params (#1088) * Fix default facebook logEvent parameters * Implement correct parameters format in facebook logEvent method * Update ibeacon.ts (#1099) Return type of `getAuthorizationStatus()` made more explicit. * fix(file): add missing exports (#1101) Any declaration that is not being exported is missing from the resulting d.ts declaration files. * Add InAppBrowserOptions interface to documentation. (#1103) * Update sqlite.ts (#1106) Added a bracket to remove the syntax error * update device orientation docs to reflect renaming of CompassHeading interface (#1107) * Move marker code inside MAP_READY (#1108) The code to set the camera position and marker should be moved inside the function handling MAP_READY. Otherwise they execute before the event is fired and it doesn't work. * refactor(file): accept ArrayBuffer for data to write (#1109) * docs(google-maps): fix param type closes #1110 * fix(media): add missing pauseRecord and resumeRecord methods (#1122) * docs(stripe): fix type and naming issues (#1129) * refactor(paypal): fix type of items (#1125) Type of items should be Array<PayPalItem> instead of string. * fix(serial): Serial.requestPermission() options are optional (#1128) * add success/error indices * feat(browser-tab): add browser tab plugin (#1126) * feature: added hasPermission function to Firebase fixes #1115 * feat: Implemented support for BrowserTab #1077 * docs(browser-tab): add proper docs * fix(background-geolocation): configure returns a promise closes #1118 * docs(background-geolocation): add return types and platforms * fix(contacts): allow passing asterisk as contact field type closes 1093 * fix(contacts): allow passing asterisk as contact field type closes #1093 * fix(plugin): revert changes to support stable version (#1116) fix #1001 * feat(file): add system paths * feat(app-update): add cordova-plugin-app-update support (#1105) * add new app-update plugin * update plugin info * docs(app-update): add docs * feat(alipay): add alipay support. (#1097) * add cordova-alipay-base plugin. to support Alipay payment * change ALI_PID to APP_ID, make it same with the latest SDK * rewrite comments * docs(google-maps): improve docs (#1095) Move `map.moveCamera(position);` inside the MAP_READY event. Allow to zoom the map on first launch (both iOS and Android). * fix(file): remove FileError from return type (#1086) Promises that reject with a `FileError` are not of the type `Promise<T|FileError>`, but `Promise<T>`. The previous declarations of `Promise<T|FileError>` would break typing further down the chain where you are trying to use the value that the typing says could be `T|FileError` but in reality could only be `T`. * feat(google-maps): add constant for map type * fix(file): platform Browser will raise a an DOMException (#1082) fix(File): Platform Browser will raise a an DOMException on resoleLocalFilesystemUrl and tries to write on readonly property DOMException err.message in fillErrorMessage * feat(local-notifications): support for icon background color (#1079) The Cordova plugin Ionic Natives uses allows specifying the background color of the smallIcon. By not including it in your interface you force users to use the default color for their version of Android. While the LocalNotification plugin is not well documented, it does include this feature, see Options.java line 253: ``` /** * @return * The notification background color for the small icon * Returns null, if no color is given. */ public int getColor() { String hex = options.optString("color", null); if (hex == null) { return NotificationCompat.COLOR_DEFAULT; } int aRGB = Integer.parseInt(hex, 16); return aRGB + 0xFF000000; } ``` I've simply added the option to the interface as well as a short description. This lets you go from the default color (varies by Android version): https://goo.gl/photos/nERcj4GZgapy8aee9 To any color you'd like: https://goo.gl/photos/t8V9WVba8jDU49aHA And also works if you also specify a large icon: https://goo.gl/photos/gWQYwa12djmdXfYcA * feat(unique-device-add): add UniqueDeviceId plugin (#1064) * fix plugin * feat(text-to-speech): Add stop method (#1063) https://github.com/vilic/cordova-plugin-tts/pull/32 * feat(appodeal): adds Appodeal SDK wrappers for iOS and Android (#1031) * feat(Appodeal) bootrapping * starting docs * more docs * feat(appodeal): add event Observables * feat(appodeal): replace Cordova Observable events with #.fromEvent() * feat(appodeal): update decorator metadata * feat(couchbase-lite): add CouchbaseLite cordova plugin (#1025) * feat(CouchbaseLite): add CouchbaseLite cordova plugin * add plugin url * feat(background-fetch): Adding Background Fetch requested in #990 (#1013) * Adding Background Fetch (https://github.com/transistorsoft/cordova-plugin-background-fetch) requested in #990 * Adding BackgroundFetch to index * feat(gyroscope): add Gyroscope plugin (#1004) * add gyroscope.ts to plugins * add gyroscope to index * Update gyroscope.ts * Update gyroscope.ts * Revert "fix(File): typing where `FileError` can be thrown" (#1130) * tslint and fix build issues * 2.6.0 * chore(): update changelog * fix(core): dont check if method exists when overriding fixes #1043 * fix(file): fix writeExistingFile closes #1044 * feat(diagnostic): add new methods closes #1045 * feat(background-mode): replace event listeners with on method The methods onactivate, ondeactive and onfailure no longer exist. You must now use `on` method. * feat(background-mode): add missing functions closes #1078 * tslint * set GoogleMapsMapTypeId to private * remove beta from stripe * 2.7.0 * chore(): update changelog * feat(app-preferences): added cordova-plugin-app-preferences support (#1084) * (feat) added cordova-plugin-app-preferences support * replaced callback functions with promises * updated example * (feat) added cordova-plugin-browsertab support * Revert "(feat) added cordova-plugin-browsertab support" This reverts commit 00eb5cf5d8aaac9d798f9d8450e0f35f57ffb52a. * (update) synchronize fetch * feat(photo-library): added cordova-plugin-photo-library (#1102) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * refactor(photo-library): fixed circleci failing in 2.7.0 (#1132) * feat(photo-library): added cordova-plugin-photo-library * CordovaFiniteObservable moved to photo-library. Overloads are marked as private. * fixed typescript error in 2.7.0 * feat(health): add wrapper for cordova-plugin-health (#1039) * feat(health): add wrapper for cordova-plugin-health * fix(Health): add optional params to QueryOptions for .query() * docs(health): fix javadoc of interfaces * fix(health): remove unused Plugin option * docs(health): add missing documentation * doc(health): add promise to return * doc(health): remove empty lines * doc(health): Add description & reference to repo * doc(health: add "return {Promise<any>}" * refactor(safari-view-controller): hide returns promise * fix typo in ibeacon plugin (#1138) * fix(file): fix return types fixes #1139 * docs(background-geolocation): fix param docs * refactor(health): fix return types and prefix interfaces * 2.8.0 * chore(): update changelog * docs(sqlite): syntax error resolved (#1142) * Syntax error resolved The `{}` should be `[]`, but since there is no binding we do not get error. In case we add one, then the syntax will be incorrect. * Fixed a syntax error * fix(background-geolocation): configure returns an observable * docs(): update docs * 3.1.0-rc.1 * refactor(background-geolocation): update imports * docs(background-fetch): fix return type * docs(health): fix return type * chore(CI): fixing npm install instructions in generated readmes * set concurrency to number of cores * chore(): update deps * 3.1.0-rc.2 * chore(): update angular to 2.4.8 * 3.1.0-rc.3 * chore(): update angular to 2.4.8 * chore(): update rxjs to 5.0.1 * chore(): organize and enhance decorators (#1171) * fix/add decorators * fix google maps design * chore(): add root tsconfig to resolve imports in IDE * updates * more fixes * chore(): add options to InstanceCheck * chore(decorators): promise is default for Cordova/Instance check * chore(): add check decroators * docs(): update plugin docs * chore(decorators): fix cordovaCheck and instanceCheck * 3.1.0-rc.4 * chore(docs): remove gitPackage from doc generator * chore(docs): update to latest dgeni version * fix diagnostic * feat(media): create method now returns a promise Breaking change: create no longer returns a MediaObject instance. Make changes to your app accordingly. * docs update + remove any static methods/properties * remove duplicate method * remove extra docs * remove extra docs * docs(): rename plugins * chore(decorators): do not check method name on instancecheck * chore(decorators): do not check method name on cordovacheck * chore(plugin): fix pluginWarn * chore(plugin): fix pluginWarn * fix(decorators): fix InstanceCheck decorator * 3.1.0-rc.5 * chore(docs): fix readme generation * fix(transfer): fix v3 implementation * refactor(paypal): PayPal is brand name * chore(docs): replace all spaces with dashes * chore(): add dashify filter * chore(build): add aot path to core tsconfig * feat(action-sheet): add ANDROID_THEMES constant * refactor(): general cleanup (#1193) * feat(screen-orientation): update wrapper to match v2 of the plugin The whole implementation has changed now. You must update your code. * feat(stripe): add new methods * feat(linkedin): add LinkedIn plugin * 3.1.0-rc.6 * style(screen-orientation): double quote to single * tslint * refactor(pedometer): rename file to index
2017-03-20 16:38:14 -04:00
@Injectable()
export class LocalNotifications extends IonicNativePlugin {
/**
* Schedules a single or multiple notifications
2016-12-06 09:20:49 -05:00
* @param options {Notification | Array<ILocalNotification>} optional
*/
2016-03-10 17:25:24 -05:00
@Cordova({
sync: true
})
schedule(options?: ILocalNotification | Array<ILocalNotification>): void { }
/**
* Updates a previously scheduled notification. Must include the id in the options parameter.
2016-12-06 09:20:49 -05:00
* @param options {ILocalNotification} optional
*/
@Cordova({
sync: true
})
update(options?: ILocalNotification): void { }
/**
* Clears single or multiple notifications
* @param notificationId {any} A single notification id, or an array of notification ids.
* @returns {Promise<any>} Returns a promise when the notification had been cleared
*/
@Cordova()
clear(notificationId: any): Promise<any> { return; }
/**
* Clears all notifications
* @returns {Promise<any>} Returns a promise when all notifications have cleared
*/
@Cordova()
clearAll(): Promise<any> { return; }
/**
* Cancels single or multiple notifications
* @param notificationId {any} A single notification id, or an array of notification ids.
* @returns {Promise<any>} Returns a promise when the notification is canceled
*/
@Cordova()
cancel(notificationId: any): Promise<any> { return; }
/**
* Cancels all notifications
* @returns {Promise<any>} Returns a promise when all notifications are canceled
*/
@Cordova()
cancelAll(): Promise<any> { return; }
/**
* Checks presence of a notification
* @param notificationId {number}
* @returns {Promise<boolean>}
*/
@Cordova()
isPresent(notificationId: number): Promise<boolean> { return; }
/**
* Checks is a notification is scheduled
* @param notificationId {number}
* @returns {Promise<boolean>}
*/
@Cordova()
isScheduled(notificationId: number): Promise<boolean> { return; }
/**
* Checks if a notification is triggered
* @param notificationId {number}
* @returns {Promise<boolean>}
*/
@Cordova()
isTriggered(notificationId: number): Promise<boolean> { return; }
/**
* Get all the notification ids
* @returns {Promise<Array<number>>}
*/
@Cordova()
getIds(): Promise<Array<number>> { return; }
/**
* Get the ids of triggered notifications
* @returns {Promise<Array<number>>}
*/
@Cordova()
getTriggeredIds(): Promise<Array<number>> { return; }
/**
* Get the ids of scheduled notifications
* @returns {Promise<Array<number>>} Returns a promise
*/
@Cordova()
getScheduledIds(): Promise<Array<number>> { return; }
/**
* Get a notification object
* @param notificationId {any} The id of the notification to get
2016-12-06 09:20:49 -05:00
* @returns {Promise<ILocalNotification>}
*/
@Cordova()
get(notificationId: any): Promise<ILocalNotification> { return; }
/**
* Get a scheduled notification object
* @param notificationId {any} The id of the notification to get
2016-12-06 09:20:49 -05:00
* @returns {Promise<ILocalNotification>}
*/
@Cordova()
getScheduled(notificationId: any): Promise<ILocalNotification> { return; }
/**
* Get a triggered notification object
* @param notificationId The id of the notification to get
2016-12-06 09:20:49 -05:00
* @returns {Promise<ILocalNotification>}
*/
@Cordova()
getTriggered(notificationId: any): Promise<ILocalNotification> { return; }
/**
* Get all notification objects
2016-12-06 09:20:49 -05:00
* @returns {Promise<Array<ILocalNotification>>}
*/
@Cordova()
getAll(): Promise<Array<ILocalNotification>> { return; }
/**
* Get all scheduled notification objects
2016-12-06 09:20:49 -05:00
* @returns {Promise<Array<ILocalNotification>>}
*/
@Cordova()
getAllScheduled(): Promise<Array<ILocalNotification>> { return; }
/**
* Get all triggered notification objects
2016-12-06 09:20:49 -05:00
* @returns {Promise<Array<ILocalNotification>>}
*/
@Cordova()
getAllTriggered(): Promise<Array<ILocalNotification>> { return; }
/**
* Request permission to show notifications if not already granted.
* @returns {Promise<boolean>}
*/
@Cordova()
requestPermission(): Promise<boolean> { return; }
/**
* Informs if the app has the permission to show notifications.
* @returns {Promise<boolean>}
*/
@Cordova()
hasPermission(): Promise<boolean> { return; }
/**
* Adds a group of actions
* @param groupId The id of the action group
* @param actions The actions of this group
* @returns {Promise<any>}
*/
@Cordova()
addActions(groupId: any, actions: Array<ILocalNotificationAction>): Promise<any> { return; }
/**
* Removes a group of actions
* @param groupId The id of the action group
* @returns {Promise<any>}
*/
@Cordova()
removeActions(groupId: any): Promise<any> { return; }
/**
* Checks if a group of actions is defined
* @param groupId The id of the action group
* @returns {Promise<boolean>} Whether the group is defined
*/
@Cordova()
hasActions(groupId: any): Promise<boolean> { return; }
/**
* Gets the (platform specific) default settings.
* @returns {Promise<any>} An object with all default settings
*/
@Cordova({
sync: true
})
getDefaults(): Promise<any> { return; }
2016-03-10 17:25:24 -05:00
/**
* Overwrites the (platform specific) default settings.
* @returns {Promise<any>}
*/
@Cordova({
sync: true
})
setDefaults(defaults: any): Promise<any> { return; }
/**
* Sets a callback for a specific event
* @param eventName {string} The name of the event. Available events: schedule, trigger, click, update, clear, clearall, cancel, cancelall. Custom event names are possible for actions
* @return {Observable}
*/
@Cordova({
observable: true,
clearFunction: 'un',
clearWithArgs: true
})
on(eventName: string): Observable<any> { return; }
/**
* Not an official interface, however its possible to manually fire events.
** @param eventName The name of the event. Available events: schedule, trigger, click, update, clear, clearall, cancel, cancelall. Custom event names are possible for actions
* @param args Optional arguments
*/
@Cordova({
sync: true
})
fireEvent(eventName: string, args: any): void { }
/**
* Fire queued events once the device is ready and all listeners are registered.
* @returns {Promise<any>}
*/
@Cordova()
fireQueuedEvents(): Promise<any> { return; }
2016-03-10 17:25:24 -05:00
}