Compare commits

..

77 Commits

Author SHA1 Message Date
FallenRiteMonk
f09c9cfe9a docs(): fix typo (#2071) 2017-11-09 16:13:47 -05:00
Sefa Ilkimen
d96d3eef07 feat(http): add support for new methods (#2054)
* feat(http): add patch request support (#2052)

* feat(http): add "disableRedirect" support (#2022)

* fix(http): remove obsolete "validateDomainName" function (#2053)
2017-11-09 16:13:36 -05:00
Daniel Sogl
95daca166b chore(package): Angular 5 support (#2089)
* docs(github): issue template

* initial commit

* Added StatusObject Interface

* style(wrap.tmpl): added missing field

* style(wrap.tmpl): added missing field

* chore(package.json): Angular 5 support

I also bumped the tslint rules and tslint

* Update package.json
2017-11-09 16:12:48 -05:00
Masashi Katsumata
196be026ea feat(google-maps): accept own properties for addMarker() and others (#2093)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions

* Bug fix: the zoom option is missing

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1712

* Update index.ts

* fix: need to convert instance type from the JS class to the wrapper class

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1706

* remove test file

* fix: Error: Illegal use of "@private" tag.

* fix: The Environment, Encode, and Spherical  are static class

* fix:  convert JS instance to the ionic instance
add: BaseClass.destroy()
add: getId() method for all instance classes

* Documentation Error https://github.com/ionic-team/ionic-native/issues/1994

* Need to create another way to convert the instance for marker cluster

* save

* Remove the instance of wrapper class if the JS instance is removed.

* Bug fix: HtmlInfoWindow missing .on and .one methods
https://github.com/ionic-team/ionic-native/issues/2034

* Bug fix: HtmlInfoWindow constructor cause the error
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1661

* Fix: Error when removing map
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1823

* Add: the cssOptions argument for HtmlInfoWindow.setContent() method

* Bug fix: Polyline.getPoints(), Polygon.getPoints() and Polygon.getHoles()

Those methods need to create new instance of BaseArrayClass of wrapper plugin.

* Add: forEachAsync(), mapAsync(), and filterAsync() methods into BaseArray class

* update: use document.querySelector() instead of document.getElementById() if the passed element is string

update: map.setDiv()

Bug fix: can not create empty GoogleMap (pure JS version is available way)

* Fix: wait until the page is fully ready

* Fix: missing `clickable` option for PolygonOptions and PolylineOptions

* Add: accept own properties for `addMarker()` and others #2087

Fix: some properties are required, but specified as optional.

Add: descriptions for properties

* Bug fix: Static classes are defined as non static class
https://stackoverflow.com/questions/47083289/ionic-native-google-maps-plugin-set-app-background-color/47165721#47165721

* Add: poly class (plugin.google.maps.geometory.poly namespace)
2017-11-08 08:12:07 -05:00
Daniel Sogl
1fa7c91105 chore(package): bump Angular (#2096) 2017-11-08 04:46:25 -05:00
Ibby Hadeed
ba105be55f chore(): update changelog 2017-11-01 05:01:25 -04:00
Ibby Hadeed
92d26eab94 4.3.3 2017-11-01 05:01:21 -04:00
Masashi Katsumata
ce6e412788 fix(google-maps): HtmlInfoWindow should extend BaseClass #2034 (#2035)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions

* Bug fix: the zoom option is missing

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1712

* Update index.ts

* fix: need to convert instance type from the JS class to the wrapper class

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1706

* remove test file

* fix: Error: Illegal use of "@private" tag.

* fix: The Environment, Encode, and Spherical  are static class

* fix:  convert JS instance to the ionic instance
add: BaseClass.destroy()
add: getId() method for all instance classes

* Documentation Error https://github.com/ionic-team/ionic-native/issues/1994

* Need to create another way to convert the instance for marker cluster

* save

* Remove the instance of wrapper class if the JS instance is removed.

* Bug fix: HtmlInfoWindow missing .on and .one methods
https://github.com/ionic-team/ionic-native/issues/2034

* Bug fix: HtmlInfoWindow constructor cause the error
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1661

* Fix: Error when removing map
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1823

* Add: the cssOptions argument for HtmlInfoWindow.setContent() method

* Bug fix: Polyline.getPoints(), Polygon.getPoints() and Polygon.getHoles()

Those methods need to create new instance of BaseArrayClass of wrapper plugin.

* Add: forEachAsync(), mapAsync(), and filterAsync() methods into BaseArray class

* update: use document.querySelector() instead of document.getElementById() if the passed element is string

update: map.setDiv()

Bug fix: can not create empty GoogleMap (pure JS version is available way)

* Fix: wait until the page is fully ready

* Fix: missing `clickable` option for PolygonOptions and PolylineOptions
2017-11-01 05:00:52 -04:00
Max Lynch
7243ed3960 Update index.ts 2017-10-19 14:24:37 -05:00
Ibby Hadeed
264670211d chore(): update changelog 2017-10-18 03:25:01 -04:00
Ibby Hadeed
847147a5fa 4.3.2 2017-10-18 03:24:54 -04:00
Ibby Hadeed
4639bf9a94 fix(google-maps): remove type from GoogleMapsEvent constant 2017-10-17 17:37:15 -04:00
William Pelrine
abb77e3e08 Merge pull request #2042 from ionic-team/pro-js-update
feat(pro): support corova-plugin-ionic v2.0.0
2017-10-13 09:28:53 -05:00
William Pelrine
975f08b7b5 feat(pro): support corova-plugin-ionic v2.0.0 2017-10-12 14:54:13 -05:00
Niklas Merz
773722b767 docs(DEVELOPER) Add documentation for CordovaFunctionOverride decorator (#2029) 2017-10-10 23:48:27 -04:00
Daniel Sogl
447aa56e3c chore(package): bump Angular (#2036) 2017-10-10 23:46:31 -04:00
Max Lynch
8d22798278 RxJS 5.4.2 -> 5.4.3 2017-10-10 09:12:49 -05:00
Max Lynch
30297fb81d Merge pull request #1799 from GulinSS/master
Use RxJS 5.4.2 to fix generics checking in TS 2.4.1
2017-10-10 09:12:17 -05:00
Max Lynch
ac777fca40 Merge branch 'master' into master 2017-10-10 09:11:48 -05:00
Max Lynch
43b70a12b5 Merge branch 'master' into master 2017-10-10 09:10:54 -05:00
Ibby Hadeed
ef28078815 Merge branch 'master' of github.com:ionic-team/ionic-native 2017-10-06 13:45:10 -04:00
Ibby Hadeed
e304ce0e53 chore(): fix readmes script 2017-10-06 13:44:58 -04:00
William Pelrine
9e5f03f15d chore(): update changelog 2017-10-06 10:41:37 -05:00
William Pelrine
465d5519d0 feat(pro): Add support for Ionic Pro by incorporating cordova-plugin-ionic 2017-10-06 10:35:54 -05:00
Ibby Hadeed
d683b9e5df chore(): update changelog 2017-10-05 23:28:48 -04:00
Ibby Hadeed
2b2476e873 4.3.1 2017-10-05 23:28:42 -04:00
Sandip Gadekar
196adc8b2f docs(): added methods that can guide how to create document and get all docs (#2005)
* adding detailed usage for couchbase lite

* added get url method

* create database method added

* delete database method added

* get all database method added

* space added in comments

* comments added unwanted import removed

* whitespaces added

* usage added in commented section

* get all documents,create document methods added

* spell mistake corrected
2017-10-05 23:26:43 -04:00
Daniel Olivares
363b41e075 fix(BLE): make readRSSI() not static (#2011) 2017-10-05 23:24:07 -04:00
Dmitry Smolyakov
2179699622 feat(regula-document-reader): separate initialization and scanning, add android (#2013) 2017-10-05 23:23:51 -04:00
Quentin Ligier
e65406cc2f refactor(photo-viewer): improve options documentation (#2014) 2017-10-05 23:23:09 -04:00
Thomas S
ddb6d43ffa docs(geolocation): update install command (#2016)
Hello guys,

I make this pull request to add the installation variable `GEOLOCATION_USAGE_DESCRIPTION` needed on iOS, since version 10.

Without this variable, using `getCurrentPosition` do nothing on iOS because phone wait user authorization. But that authorization is not display because there is no message defined.

This variable make this part of code in `info.plist` : 

```
<key>NSLocationWhenInUseUsageDescription</key>
<string>To allow locate you</string>
``` 

Source : https://github.com/apache/cordova-plugin-geolocation#ios-quirks

Have a good coding day :)
2017-10-05 23:22:43 -04:00
Kamil Piskorski
30ed33a046 fix(onesignal): fix property name (#2019) 2017-10-05 23:22:03 -04:00
Rene Escobar
3d0a12d40d refactor(): update return value in hasPermission() (#2023) 2017-10-05 23:21:34 -04:00
Masashi Katsumata
6ca5beaf0b fix(google-maps): various fixed introduced in previous release (#2024)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions

* Bug fix: the zoom option is missing

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1712

* Update index.ts

* fix: need to convert instance type from the JS class to the wrapper class

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1706

* remove test file

* fix: Error: Illegal use of "@private" tag.

* fix: The Environment, Encode, and Spherical  are static class

* fix:  convert JS instance to the ionic instance
add: BaseClass.destroy()
add: getId() method for all instance classes

* Documentation Error https://github.com/ionic-team/ionic-native/issues/1994

* Need to create another way to convert the instance for marker cluster

* save

* Remove the instance of wrapper class if the JS instance is removed.
2017-10-05 23:20:40 -04:00
Ibby Hadeed
536a906366 chore(): update changelog 2017-09-27 18:06:52 -04:00
Ibby Hadeed
7fcafaae81 4.3.0 2017-09-27 18:06:43 -04:00
Ibby Hadeed
1a7a0e7cc0 Merge branch 'master' of github.com:ionic-team/ionic-native 2017-09-27 17:58:55 -04:00
Euler Menezes Junior
34bf136703 feat(push): update PushOptions interfaces to match new version (#1908)
BREAKING CHANGE: this wrapper will work only with `phonegap-plugin-push@2.0.0`
2017-09-27 17:56:43 -04:00
Ibby Hadeed
bb798340c5 Merge branch 'master' of github.com:ionic-team/ionic-native 2017-09-27 17:48:54 -04:00
Iván Pérez
1b04ebb5e2 Zerconf: Action can also be resolved (#1924) 2017-09-27 17:48:45 -04:00
mflynnKVD
a150d4d522 fix(launch-navigator): fix navigate method (#1940) 2017-09-27 17:48:23 -04:00
Josh Armstrong
4246d47a6c feat(android-full-screen): add support for setSystemUiVisiblity (#1942) 2017-09-27 17:47:51 -04:00
Jan Piotrowski
024099a772 add note about limitation (#1953) 2017-09-27 17:47:15 -04:00
Buddy Reno
fff99694ba feat(music-controls): add support for next/prev track and skip forward/backward in control center (#1927) 2017-09-27 17:47:05 -04:00
Ibby Hadeed
429529a5ee Merge branch 'master' of github.com:ionic-team/ionic-native 2017-09-27 17:45:49 -04:00
Gordeev Artem
e2419a26b2 feat(uid): add UID plugin (#1946) 2017-09-27 17:45:44 -04:00
Inconspicuously
10eb3eeeeb feat(qr-scanner): added destroy method (#1916) (#1971)
fix(qr-scanner): added destroy method (#1916)
2017-09-27 17:44:38 -04:00
Ibby Hadeed
533cc4efc9 docs(): update docs 2017-09-27 17:44:06 -04:00
Ibby Hadeed
6b433b5373 Refactor 2017-09-27 17:42:40 -04:00
Niklas Merz
e684db479e feat(index-app-content) add Index-App-Content plugin (#1954) 2017-09-27 17:42:01 -04:00
Everett
81c576c28e docs(firebase-dynamic-links): update docs (#1964)
Variable REVERSED_CLIENT_ID can be found in your GoogleService-Info.plist under the same key name.
Variable PHOTO_LIBRARY_USAGE_DESCRIPTION specifies required value for NSPhotoLibraryUsageDescription on iOS.

See: https://github.com/chemerisuk/cordova-plugin-firebase-dynamiclinks
2017-09-27 17:39:05 -04:00
excelulous
e2f3702d0b fix(zeroconf): extend the ZeroconfResult.action definition (#1985)
This now includes the value 'resolved', as it is a valid action passed by the service browser on iOS (at least) when IP addresses for the chosen service have been resolved.
2017-09-27 17:36:32 -04:00
Daniel Ehrhardt
806766e33e feat(extended-device-information): add Extended Device Info plugin (#1980)
* Added Cordova Device Information Wrapper

* Updated Usage Description

* Removed unsued line

* Added Total Storage
2017-09-27 17:36:00 -04:00
Sandip Gadekar
432c0e901d docs(couchbase-lite): add usage (#1988)
* adding detailed usage for couchbase lite

* added get url method

* create database method added

* delete database method added

* get all database method added

* space added in comments

* comments added unwanted import removed

* whitespaces added

* usage added in commented section
2017-09-27 17:03:10 -04:00
Ibby Hadeed
fb70a24c61 refactor(regula-document-reader): rename plugin 2017-09-27 17:01:12 -04:00
Ibby Hadeed
202c680643 refactor(document-reader): add beta and paid tags 2017-09-27 16:59:06 -04:00
Dmitry Smolyakov
7b94d4fccf feat(document-reader): add cordova-plugin-documentreader (#1996) 2017-09-27 16:58:31 -04:00
Akshay Dwivedi
5b15bb9f46 fix(stripe): fix stripe create card token (#2002)
fix stripe create card token promise
2017-09-27 16:56:25 -04:00
Ibby Hadeed
c3930c814a refactor(google-maps): use es6 syntax 2017-09-27 16:52:06 -04:00
Masashi Katsumata
57af5c5e73 fix(google-maps): convert JS classes to Ionic Native (#1956)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions

* Bug fix: the zoom option is missing

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1712

* Update index.ts

* fix: need to convert instance type from the JS class to the wrapper class

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1706

* remove test file

* fix: Error: Illegal use of "@private" tag.

* fix: The Environment, Encode, and Spherical  are static class

* fix:  convert JS instance to the ionic instance
add: BaseClass.destroy()
add: getId() method for all instance classes
2017-09-27 15:56:30 -04:00
Ibby Hadeed
29604d6d3d Update README.md 2017-09-11 09:56:07 -04:00
AniketPant02
76effe98f8 docs(): fix typo
Typo
2017-09-11 04:12:23 -04:00
Ibby Hadeed
0783520723 chore(): bump core dependency to 4.2.0 2017-09-06 02:36:48 -04:00
Masashi Katsumata
ef898efcc6 fix(google-maps): the zoom option is missing in the GoogleMapOptions class (#1948)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions

* Bug fix: the zoom option is missing

https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1712

* Update index.ts
2017-09-06 02:34:18 -04:00
fredroo
fdd12b58b3 fix(twitter-connect (#1903)
* Update index.ts

* Update index.ts

* Update index.ts

* Update index.ts
2017-09-01 23:24:28 -04:00
Masashi Katsumata
80047907ea fix(google-maps): fix icons property of MarkerClusterOptions (#1937)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass

* Bug fix: the icons property of MarkerClusterOptions
2017-09-01 21:38:26 -04:00
Raman Rasliuk
3a1034eab0 fix(http): fix plugin ref (#1934) 2017-08-30 15:06:32 -04:00
Ibby Hadeed
c8586927c3 chore(): update changelog 2017-08-29 19:44:23 -04:00
Ibby Hadeed
f22c603c30 4.2.1 2017-08-29 19:44:15 -04:00
Masashi Katsumata
957396b5e5 fix(google-maps): fix issue when creating new instance of BaseArrayClass (#1931)
* Update index.ts

* Update index.ts

* Add missing features, and bug fix of methods

* update: classname must be in pascal case

* remove: duplicated class definition

* export encode and spherical static classes

* Add comma

* Fix Encoding and Spherical

* Add convenience methods

* Fix decorators for Encoding and Spherical

* Update: getMap() methods return the instance of the wrapper plugin

* Update: getMap() methods return the instance of the wrapper plugin

* Remove `@CordovaInstance` decorators from getMap()

* Update: GoogleMapOptions (all fields are not optional).

* Follow up:  version `2.0.0-beta2-20170719-2226` of cordova-plugin-googlemaps

* Fix: tslint error

* Fix: tslint error

* No more isAvailable() method.

* Bug fix: description is incorrect

* Bug fix: example code was wrong.

* Bug fix: HtmlInfoWindow does not work
https://github.com/ionic-team/ionic-native/pull/1815#issuecomment-318909795

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* Bug fix: HtmlInfoWindow does not work

* It seems the ionViewDidLoad() is enough delayed after platform.ready()

* Bug fix: map.setDiv()

* Bug fix: HtmlInfoWindow does not work

* Bug fix: BaseArrayClass definition is incorrect

* Bug fix: BaseArrayClass constructor is wrong

* Bug fix: Geocoder class does not work

* Bug fix: LatLngBounds constructor is wrong

* update: noNotify option is not declared

* Bug fix: Geocoder.geocode() returns array of GeocoderResult

* Update: clarify acceptable parameters of BaseArrayClass

* Add: AnimateCameraOption.padding is missing

* Revert: BaseClass.empty() method does not have the noNotify option

* Add `destruct` option to the CordovaOption.

- This allows BaseClass.on() is able to pass multiple retuned values from the cordova plugin side to the event lister.

* A semicolon is mixing

* update: event names

* Update: BaseClass.addEventListener(), addEventListenerOnce(), on(), and one()

* Add: destruct option for otherPromise
Change: inside event names (must use the version 2.0.0-beta3-20170808-1950 or higher)

* Build for working group

* Bug fix: map.getCameraTarget() definition is incorrect

* Bug fix: The definition of VisibleRegion interface is incorrect

* Fix: LatLng, LatLngBounds, and PolylineOptions classes
Update: map.getVisibleRegion()

Add: VisibleRegion class

* Bug fix: the definition of map.clear() method is incorrect

* Fix: map.fromLatLngToPoint()

* Ignore the dist directory on the master branch

* Remove the dist folder on the master branch

* fixes and tweaks

* use union types for CameraPosition

fixes issue mentioned on slack by @wf9a5m75

* fix types

* update AnimateCameraOptions interface

* remove AnimateCameraOptions interface

* add MarkerCluster class

* Bug fix: Can not create an instance of BaseArrayClass
2017-08-29 18:58:44 -04:00
Perry Govier
d891c3eea0 Merge pull request #1867 from janpio/patch-10
docs(navigation): add trailing slash to navigation items
2017-08-28 10:59:19 -05:00
Ibby Hadeed
37aa9a82fe chore(): update changelog 2017-08-26 04:04:12 -04:00
Ibby Hadeed
392b11bd05 4.2.0 2017-08-26 04:03:34 -04:00
Ibby Hadeed
d4fe051d56 update 2017-08-26 04:03:29 -04:00
Jan Piotrowski
4e0673c8e9 only add trailing slash on plugin pages
fixes that the trailing slash would have been added to the root and browser-usage.html as well
2017-08-05 17:37:16 +02:00
Jan Piotrowski
0cecf4e43f add trailing slash to navigation items
fixes the problem that each navigation item first has to redirected to the version with trailing slash

closes https://github.com/ionic-team/ionic-site/issues/1223
2017-08-05 17:27:02 +02:00
Serge S. Gulin
247efa656a Use RxJS 5.4.2 to fix generics checking in TS 2.4.1 2017-07-13 11:42:17 +04:00
36 changed files with 12742 additions and 6024 deletions

View File

@@ -1,7 +1,7 @@
**I'm submitting a ...** (check one with "x")
[ ] bug report
[ ] feature request
<!-- Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or https://ionicworldwide.herokuapp.com/ -->
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or https://ionicworldwide.herokuapp.com/
**Current behavior:**
<!-- Describe how the bug manifests. -->
@@ -21,8 +21,8 @@ insert any relevant code here
**Other information:**
<!-- List any other information that is relevant to your issue. Stack traces, related issues, suggestions on how to fix, Stack Overflow links, forum links, etc. -->
**package.json info:**
**Ionic info:** (run `ionic info` from a terminal/cmd prompt and paste output below):
```json
insert the content here
```
insert the output from ionic info here
```

View File

@@ -1,3 +1,115 @@
<a name="4.3.3"></a>
## [4.3.3](https://github.com/ionic-team/ionic-native/compare/4.3.2...v4.3.3) (2017-11-01)
### Bug Fixes
* **google-maps:** HtmlInfoWindow should extend BaseClass [#2034](https://github.com/ionic-team/ionic-native/issues/2034) ([#2035](https://github.com/ionic-team/ionic-native/issues/2035)) ([ce6e412](https://github.com/ionic-team/ionic-native/commit/ce6e412))
<a name="4.3.2"></a>
## [4.3.2](https://github.com/ionic-team/ionic-native/compare/4.3.1...4.3.2) (2017-10-17)
### Bug Fixes
* **google-maps:** remove type from GoogleMapsEvent constant ([4639bf9](https://github.com/ionic-team/ionic-native/commit/4639bf9))
### Features
* **pro:** support corova-plugin-ionic v2.0.0 ([975f08b](https://github.com/ionic-team/ionic-native/commit/975f08b))
<a name="4.3.1"></a>
## [4.3.1](https://github.com/ionic-team/ionic-native/compare/v4.3.1...4.3.1) (2017-10-06)
### Features
* **pro:** Add support for Ionic Pro by incorporating cordova-plugin-ionic ([465d551](https://github.com/ionic-team/ionic-native/commit/465d551))
<a name="4.3.1"></a>
## [4.3.1](https://github.com/ionic-team/ionic-native/compare/v4.3.0...v4.3.1) (2017-10-06)
### Bug Fixes
* **BLE:** make readRSSI() not static ([#2011](https://github.com/ionic-team/ionic-native/issues/2011)) ([363b41e](https://github.com/ionic-team/ionic-native/commit/363b41e))
* **google-maps:** various fixed introduced in previous release ([#2024](https://github.com/ionic-team/ionic-native/issues/2024)) ([6ca5bea](https://github.com/ionic-team/ionic-native/commit/6ca5bea))
* **onesignal:** fix property name ([#2019](https://github.com/ionic-team/ionic-native/issues/2019)) ([30ed33a](https://github.com/ionic-team/ionic-native/commit/30ed33a))
### Features
* **regula-document-reader:** separate initialization and scanning, add android ([#2013](https://github.com/ionic-team/ionic-native/issues/2013)) ([2179699](https://github.com/ionic-team/ionic-native/commit/2179699))
<a name="4.3.0"></a>
# [4.3.0](https://github.com/ionic-team/ionic-native/compare/v4.2.1...v4.3.0) (2017-09-27)
### Bug Fixes
* **google-maps:** convert JS classes to Ionic Native ([#1956](https://github.com/ionic-team/ionic-native/issues/1956)) ([57af5c5](https://github.com/ionic-team/ionic-native/commit/57af5c5))
* **google-maps:** fix icons property of MarkerClusterOptions ([#1937](https://github.com/ionic-team/ionic-native/issues/1937)) ([8004790](https://github.com/ionic-team/ionic-native/commit/8004790))
* **google-maps:** fix issue when creating new instance of BaseArrayClass ([#1931](https://github.com/ionic-team/ionic-native/issues/1931)) ([957396b](https://github.com/ionic-team/ionic-native/commit/957396b))
* **google-maps:** the zoom option is missing in the GoogleMapOptions class ([#1948](https://github.com/ionic-team/ionic-native/issues/1948)) ([ef898ef](https://github.com/ionic-team/ionic-native/commit/ef898ef))
* **http:** fix plugin ref ([#1934](https://github.com/ionic-team/ionic-native/issues/1934)) ([3a1034e](https://github.com/ionic-team/ionic-native/commit/3a1034e))
* **launch-navigator:** fix navigate method ([#1940](https://github.com/ionic-team/ionic-native/issues/1940)) ([a150d4d](https://github.com/ionic-team/ionic-native/commit/a150d4d))
* **stripe:** fix stripe create card token ([#2002](https://github.com/ionic-team/ionic-native/issues/2002)) ([5b15bb9](https://github.com/ionic-team/ionic-native/commit/5b15bb9))
* **zeroconf:** extend the ZeroconfResult.action definition ([#1985](https://github.com/ionic-team/ionic-native/issues/1985)) ([e2f3702](https://github.com/ionic-team/ionic-native/commit/e2f3702))
### Features
* **android-full-screen:** add support for setSystemUiVisiblity ([#1942](https://github.com/ionic-team/ionic-native/issues/1942)) ([4246d47](https://github.com/ionic-team/ionic-native/commit/4246d47))
* **document-reader:** add cordova-plugin-documentreader ([#1996](https://github.com/ionic-team/ionic-native/issues/1996)) ([7b94d4f](https://github.com/ionic-team/ionic-native/commit/7b94d4f))
* **extended-device-information:** add Extended Device Info plugin ([#1980](https://github.com/ionic-team/ionic-native/issues/1980)) ([806766e](https://github.com/ionic-team/ionic-native/commit/806766e))
* **music-controls:** add support for next/prev track and skip forward/backward in control center ([#1927](https://github.com/ionic-team/ionic-native/issues/1927)) ([fff9969](https://github.com/ionic-team/ionic-native/commit/fff9969))
* **push:** update PushOptions interfaces to match new version ([#1908](https://github.com/ionic-team/ionic-native/issues/1908)) ([34bf136](https://github.com/ionic-team/ionic-native/commit/34bf136))
* **qr-scanner:** added destroy method ([#1916](https://github.com/ionic-team/ionic-native/issues/1916)) ([#1971](https://github.com/ionic-team/ionic-native/issues/1971)) ([10eb3ee](https://github.com/ionic-team/ionic-native/commit/10eb3ee))
* **uid:** add UID plugin ([#1946](https://github.com/ionic-team/ionic-native/issues/1946)) ([e2419a2](https://github.com/ionic-team/ionic-native/commit/e2419a2))
### BREAKING CHANGES
* **push:** this wrapper will work only with `phonegap-plugin-push@2.0.0`
<a name="4.2.0"></a>
# [4.2.0](https://github.com/ionic-team/ionic-native/compare/v4.1.0...v4.2.0) (2017-08-26)
### Bug Fixes
* **fingerprint-aio:** add missing FingerprintOptions properties ([#1845](https://github.com/ionic-team/ionic-native/issues/1845)) ([85825c7](https://github.com/ionic-team/ionic-native/commit/85825c7))
* **geofence:** remove duplicate onTransitionReceived method ([00c0707](https://github.com/ionic-team/ionic-native/commit/00c0707))
* **google-maps:** add missing debug option ([#1832](https://github.com/ionic-team/ionic-native/issues/1832)) ([39ec515](https://github.com/ionic-team/ionic-native/commit/39ec515))
* **ms-adal:** make userId optional ([#1894](https://github.com/ionic-team/ionic-native/issues/1894)) ([21045ea](https://github.com/ionic-team/ionic-native/commit/21045ea))
* **native-geocoder:** update NativeGeocoderReverse result ([#1840](https://github.com/ionic-team/ionic-native/issues/1840)) ([7c1b409](https://github.com/ionic-team/ionic-native/commit/7c1b409))
* **native-spinner:** update pluginRef ([#1859](https://github.com/ionic-team/ionic-native/issues/1859)) ([262e18f](https://github.com/ionic-team/ionic-native/commit/262e18f))
* **serial:** add missing options for the open method ([#1844](https://github.com/ionic-team/ionic-native/issues/1844)) ([1acade4](https://github.com/ionic-team/ionic-native/commit/1acade4))
* **sqlite:** add optional key parameter to SQLiteDatabaseConfig to support sqlcipher-adapter ([#1917](https://github.com/ionic-team/ionic-native/issues/1917)) ([0c097ba](https://github.com/ionic-team/ionic-native/commit/0c097ba))
### Features
* **google-maps:** update plugin and fix a few issues ([#1834](https://github.com/ionic-team/ionic-native/issues/1834)) ([c11aec3](https://github.com/ionic-team/ionic-native/commit/c11aec3))
* **http:** use a different plugin source with better features ([#1921](https://github.com/ionic-team/ionic-native/issues/1921)) ([a2d3396](https://github.com/ionic-team/ionic-native/commit/a2d3396))
* **keychain-touch-id:** add KeychainTouchId plugin ([#1837](https://github.com/ionic-team/ionic-native/issues/1837)) ([a2cc187](https://github.com/ionic-team/ionic-native/commit/a2cc187))
* **local-notifications:** add `un` method to unsubscribe from events ([#1871](https://github.com/ionic-team/ionic-native/issues/1871)) ([ce5966b](https://github.com/ionic-team/ionic-native/commit/ce5966b))
* **paypal:** add payeeEmail for third party merchants ([#1864](https://github.com/ionic-team/ionic-native/issues/1864)) ([cde87e2](https://github.com/ionic-team/ionic-native/commit/cde87e2))
* **push:** add Browser Push notification support ([#1848](https://github.com/ionic-team/ionic-native/issues/1848)) ([aa4c3b3](https://github.com/ionic-team/ionic-native/commit/aa4c3b3))
<a name="4.1.0"></a>
# [4.1.0](https://github.com/ionic-team/ionic-native/compare/v4.0.1...v4.1.0) (2017-07-21)

View File

@@ -209,4 +209,13 @@ Example:
someMethod(): Promise<any> {
// anything here will only run if the plugin is available
}
```
#### CordovaFunctionOverride
Wrap a stub function in a call to a Cordova plugin, checking if both Cordova and the required plugin are installed.
Example:
```ts
@CordovaFunctionOverride()
someMethod(): Observable<any> { return; }
```

View File

@@ -52,38 +52,28 @@ import { NgZone } from '@angular/core';
@Component({ ... })
export class MyComponent {
constructor(private geolocation: Geolocation, private platform: Platform, private ngZone: NgZone) {
constructor(private geolocation: Geolocation, private platform: Platform) {
platform.ready().then(() => {
// get position
geolocation.getCurrentPosition().then(pos => {
console.log(`lat: ${pos.coords.latitude}, lon: ${pos.coords.longitude}`)
});
// watch position
const watch = geolocation.watchPosition().subscribe(pos => {
console.log(`lat: ${pos.coords.latitude}, lon: ${pos.coords.longitude}`)
// Currently, observables from Ionic Native plugins
// need to run inside of zone to trigger change detection
ngZone.run(() => {
this.position = pos;
})
this.position = pos;
});
// to stop watching
watch.unsubscribe();
});
}
}
```

16693
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,17 +1,17 @@
{
"name": "ionic-native",
"version": "4.1.0",
"version": "4.3.3",
"description": "Native plugin wrappers for Cordova and Ionic with TypeScript, ES6+, Promise and Observable support",
"homepage": "https://ionicframework.com/",
"author": "Ionic Team <hi@ionic.io> (https://ionic.io)",
"license": "MIT",
"devDependencies": {
"@angular/compiler": "4.1.3",
"@angular/compiler-cli": "4.1.3",
"@angular/core": "4.1.3",
"@angular/compiler": "5.0.0",
"@angular/compiler-cli": "5.0.0",
"@angular/core": "5.0.0",
"@types/cordova": "0.0.34",
"@types/jasmine": "^2.5.51",
"@types/node": "^7.0.27",
"@types/node": "^8.0.47",
"canonical-path": "0.0.2",
"child-process-promise": "2.2.1",
"conventional-changelog-cli": "1.3.1",
@@ -39,12 +39,12 @@
"q": "1.5.0",
"queue": "4.2.1",
"rimraf": "2.6.1",
"rxjs": "5.4.0",
"rxjs": "5.5.2",
"semver": "5.3.0",
"tslint": "3.15.1",
"tslint-ionic-rules": "0.0.8",
"typescript": "2.3.3",
"zone.js": "0.8.12"
"typescript": "~2.4.2",
"zone.js": "0.8.18"
},
"scripts": {
"start": "npm run test:watch",

View File

@@ -19,7 +19,7 @@ const ROOT = path.resolve(path.join(__dirname, '../../')), // root ionic-native
// dependency versions
const ANGULAR_VERSION = '*',
RXJS_VERSION = '^5.0.1',
MIN_CORE_VERSION = '^3.6.0 || >=4.0.0',
MIN_CORE_VERSION = '^4.2.0',
IONIC_NATIVE_VERSION = require(path.resolve(ROOT, 'package.json')).version;
// package dependencies

View File

@@ -41,7 +41,7 @@ module.exports = currentVersion => {
docTypes: ['class'],
getOutputPath: doc => doc.originalModule.replace(config.pluginDir + '/', '')
.replace('/plugins', '')
.replace('/index', '/README.md')
.replace(/\/index$/, '/README.md')
}];
})

View File

@@ -22,6 +22,10 @@ module.exports = function jekyll(renderDocsProcessor) {
doc.URL = doc.outputPath.replace('docs//', 'docs/')
.replace('/index.md', '')
.replace('content/', '');
// add trailing slash to plugin pages
if(!doc.URL.endsWith("/") && !doc.URL.endsWith(".html")) {
doc.URL = doc.URL+'/';
}
});
const betaDocs = [];

View File

@@ -1,9 +1,23 @@
import { Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* This is a template for new plugin wrappers
*
* TODO:
* - Add/Change information below
* - Document usage (importing, executing main functionality)
* - Remove any imports that you are not using
* - Add this file to /src/index.ts (follow style of other plugins)
* - Remove all the comments included in this template, EXCEPT the @Plugin wrapper docs and any other docs you added
* - Remove this note
*
*/
import { Injectable } from '@angular/core';
import { Plugin, Cordova, CordovaProperty, CordovaInstance, InstanceProperty, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
* @name {{ Plugin_Name }}
* @description
* This plugin does something
*
* @usage
* ```typescript
@@ -15,16 +29,33 @@ import { Injectable } from '@angular/core';
* ...
*
*
* this.{{ pluginName }}.functionName('Hello', 123)
* .then((res: any) => console.log(res))
* .catch((error: any) => console.error(error));
*
* ```
*/
@Plugin({
pluginName: '{{ PluginName }}',
plugin: '',
pluginRef: '',
repo: '',
platforms: []
plugin: '', // npm package name, example: cordova-plugin-camera
pluginRef: '', // the variable reference to call the plugin, example: navigator.geolocation
repo: '', // the github repository URL for the plugin
install: '', // OPTIONAL install command, in case the plugin requires variables
installVariables: [], // OPTIONAL the plugin requires variables
platforms: [] // Array of platforms supported, example: ['Android', 'iOS']
})
@Injectable()
export class {{ PluginName }} extends IonicNativePlugin {
/**
* This function does something
* @param arg1 {string} Some param to configure something
* @param arg2 {number} Another param to configure something
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
functionName(arg1: string, arg2: number): Promise<any> {
return; // We add return; here to avoid any IDE / Compiler errors
}
}

View File

@@ -40,8 +40,9 @@ import { Observable } from 'rxjs/Observable';
plugin: '', // npm package name, example: cordova-plugin-camera
pluginRef: '', // the variable reference to call the plugin, example: navigator.geolocation
repo: '', // the github repository URL for the plugin
platforms: [], // Array of platforms supported, example: ['Android', 'iOS']
install: '', // OPTIONAL install command, in case the plugin requires variables
installVariables: [], // OPTIONAL the plugin requires variables
platforms: [] // Array of platforms supported, example: ['Android', 'iOS']
})
@Injectable()
export class {{ PluginName }} extends IonicNativePlugin {

View File

@@ -1,6 +1,35 @@
import { Injectable } from '@angular/core';
import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* Bit flag values for setSystemUiVisibility()
* @see https://developer.android.com/reference/android/view/View.html#setSystemUiVisibility(int)
*/
export enum AndroidSystemUiFlags {
/** View has requested the system UI (status bar) to be visible (the default). SYSTEM_UI_FLAG_VISIBLE */
Visible = 0,
/** View has requested the system UI to enter an unobtrusive "low profile" mode. SYSTEM_UI_FLAG_LOW_PROFILE */
LowProfile = 1,
/** View has requested that the system navigation be temporarily hidden. SYSTEM_UI_FLAG_HIDE_NAVIGATION */
HideNavigation = 2,
/** View has requested to go into the normal fullscreen mode so that its content can take over the screen while still allowing the user to interact with the application. SYSTEM_UI_FLAG_FULLSCREEN */
Fullscreen = 4,
/** Requests the navigation bar to draw in a mode that is compatible with light navigation bar backgrounds. SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR */
LightNavigationBar = 16,
/** When using other layout flags, we would like a stable view of the content insets given to fitSystemWindows(Rect). SYSTEM_UI_FLAG_LAYOUT_STABLE */
LayoutStable = 256,
/** View would like its window to be laid out as if it has requested SYSTEM_UI_FLAG_HIDE_NAVIGATION, even if it currently hasn't. SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION */
LayoutHideNavigation = 512,
/** View would like its window to be laid out as if it has requested SYSTEM_UI_FLAG_FULLSCREEN, even if it currently hasn't. SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN */
LayoutFullscreen = 1024,
/** View would like to remain interactive when hiding the navigation bar with SYSTEM_UI_FLAG_HIDE_NAVIGATION. SYSTEM_UI_FLAG_IMMERSIVE */
Immersive = 2048,
/** View would like to remain interactive when hiding the status bar with SYSTEM_UI_FLAG_FULLSCREEN and/or hiding the navigation bar with SYSTEM_UI_FLAG_HIDE_NAVIGATION. SYSTEM_UI_FLAG_IMMERSIVE_STICKY */
ImmersiveSticky = 4096,
/** Requests the status bar to draw in a mode that is compatible with light status bar backgrounds. SYSTEM_UI_FLAG_LIGHT_STATUS_BAR */
LightStatusBar = 8192
}
/**
* @name Android Full Screen
* @description
@@ -92,4 +121,13 @@ export class AndroidFullScreen extends IonicNativePlugin {
*/
@Cordova()
immersiveMode(): Promise<void> { return; }
/**
* Manually set the the system UI to a custom mode. This mirrors the Android method of the same name. (Android 4.4+ only).
* @see https://developer.android.com/reference/android/view/View.html#setSystemUiVisibility(int)
* @param {AndroidSystemUiFlags} visibility Bitwise-OR of flags in AndroidSystemUiFlags
* @return {Promise<void>}
*/
@Cordova()
setSystemUiVisibility(visibility: AndroidSystemUiFlags): Promise<void> { return; }
}

View File

@@ -441,7 +441,7 @@ export class BLE extends IonicNativePlugin {
*@returns {Promise<any>}
*/
@Cordova()
static readRSSI(
readRSSI(
deviceId: string,
): Promise<any> { return; }
}

View File

@@ -4,7 +4,7 @@ import { Observable } from 'rxjs/Observable';
/**
* @name Bluetooth Serial
* @description This plugin enables serial communication over Bluetooth. It was written for communicating between Android or iOS and an Arduino.
* @description This plugin enables serial communication over Bluetooth. It was written for communicating between Android or iOS and an Arduino (not Android to Android or iOS to iOS).
* @usage
* ```typescript
* import { BluetoothSerial } from '@ionic-native/bluetooth-serial';

View File

@@ -10,14 +10,53 @@ import { Injectable } from '@angular/core';
* @usage
* ```typescript
* import { CouchbaseLite } from '@ionic-native/couchbase-lite';
*
* constructor(private couchbase: CouchbaseLite) {
*
* couchbase.getURL()
* .then(url => console.log(url))
* .catch(error => console.error(error));
*
* import { Http } from '@angular/http';
* import { Observable } from 'rxjs/Observable'
* constructor(private couchbase: CouchbaseLite, private platform:Platform,private _http:Http) {
* this.initMethod();
* }
* url:string;
* initMethod() {
* this.couchbase.getURL().then((url)=> {
* this.url = url;
* })
* }
* getUrl() {
* return this.url;
* }
* // DATABASES //
* createDatabase(database_name:string) {
* let url = this.getUrl();
* url = url+database_name;
* return this._http
* .put(url)
* .map(data => { this.results = data['results'] })
* .catch((error:any) => {
* return Observable.throw(error.json() || 'Couchbase Lite error');
* })
* }
* deleteDatabase(database_name:string) {
* let url = this.getUrl();
* url = url+database_name;
* return this._http
* .delete(url)
* .map(data => { this.results = data['results'] })
* .catch((error:any) => {
* return Observable.throw(error.json() || 'Couchbase Lite error');
* })
* }
*
* getAllDbs() {
* let url = this.getUrl();
* url = url+'_all_dbs';
* return this._http
* .get(url)
* .map(data => { this.results = data['results'] })
* .catch((error:any) => {
* return Observable.throw(error.json() || 'Couchbase Lite error');
* })
* }
*
*
* ```
*/

View File

@@ -0,0 +1,49 @@
import { Injectable } from '@angular/core';
import { CordovaProperty, Plugin, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Extended Device Information
* @description
* Retrieves additional device information that is not provided by other plugins
*
* @usage
* ```typescript
* import { ExtendedDeviceInformation } from '@ionic-native/extended-device-information';
*
*
* constructor(private extendedDeviceInformation: ExtendedDeviceInformation) { }
*
* ...
*
* console.log('The Memory is: ' + this.extendedDeviceInformation.memory);
* ```
*/
@Plugin({
pluginName: 'ExtendedDeviceInformation',
plugin: 'cordova-plugin-extended-device-information',
pluginRef: 'extended-device-information',
repo: 'https://github.com/danielehrhardt/cordova-plugin-extended-device-information',
platforms: ['Android']
})
@Injectable()
export class ExtendedDeviceInformation extends IonicNativePlugin {
/**
* Get the device's memory size
*/
@CordovaProperty
memory: number;
/**
* Get the device's CPU mhz
*/
@CordovaProperty
cpumhz: string;
/**
* Get the total storage
*/
@CordovaProperty
totalstorage: string;
}

View File

@@ -7,7 +7,7 @@ import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
* @description
* Cordova plugin for Firebase Analytics
*
* Go yo firebase console and export google-services.json and GoogleService-Info.plist. Put those files into the root of your cordova app folder.
* Go to firebase console and export google-services.json and GoogleService-Info.plist. Put those files into the root of your cordova app folder.
*
* NOTE: on iOS in order to collect demographic, age, gender data etc. you should additionally include AdSupport.framework into your project.
*

View File

@@ -15,7 +15,8 @@ export interface DynamicLinksOptions {
* Cordova plugin for Firebase Invites and Firebase Dynamic Links
*
* Variables APP_DOMAIN and APP_PATH specify web URL where your app will start an activity to handle the link. They also used to setup support for App Indexing.
*
* Variable REVERSED_CLIENT_ID can be found in your GoogleService-Info.plist under the same key name.
* Variable PHOTO_LIBRARY_USAGE_DESCRIPTION specifies required value for NSPhotoLibraryUsageDescription on iOS.
* Go to firebase console and export google-services.json and GoogleService-Info.plist. Put those files into the root of your cordova app folder.
*
* Preferences:

View File

@@ -71,10 +71,10 @@ export class Firebase extends IonicNativePlugin {
/**
* Check permission to receive push notifications
* @return {Promise<any>}
* @return {Promise<{isEnabled: boolean}>}
*/
@Cordova()
hasPermission(): Promise<any> { return; }
hasPermission(): Promise<{isEnabled: boolean}> { return; }
/**
* Set icon badge number. Set to 0 to clear the badge.

View File

@@ -153,6 +153,8 @@ export interface GeolocationOptions {
plugin: 'cordova-plugin-geolocation',
pluginRef: 'navigator.geolocation',
repo: 'https://github.com/apache/cordova-plugin-geolocation',
install: 'ionic cordova plugin add cordova-plugin-geolocation --variable GEOLOCATION_USAGE_DESCRIPTION="To locate you"',
installVariables: ['GEOLOCATION_USAGE_DESCRIPTION'],
platforms: ['Amazon Fire OS', 'Android', 'BlackBerry 10', 'Browser', 'Firefox OS', 'iOS', 'Ubuntu', 'Windows', 'Windows Phone']
})
@Injectable()

File diff suppressed because it is too large Load Diff

View File

@@ -60,7 +60,7 @@ export interface HTTPResponse {
@Plugin({
pluginName: 'HTTP',
plugin: 'cordova-plugin-advanced-http',
pluginRef: 'cordovaHTTP',
pluginRef: 'cordova.plugin.http',
repo: 'https://github.com/silkimen/cordova-plugin-advanced-http',
platforms: ['Android', 'iOS']
})
@@ -113,6 +113,13 @@ export class HTTP extends IonicNativePlugin {
@Cordova({ sync: true })
removeCookies(url: string, cb: () => void): void { }
/**
* Disable following redirects automatically
* @param disable {boolean} Set to true to disable following redirects automatically
*/
@Cordova({ sync: true })
disableRedirect(disable: boolean): void { }
/**
* Set request timeout
* @param timeout {number} The timeout in seconds. Default 60
@@ -140,14 +147,6 @@ export class HTTP extends IonicNativePlugin {
@Cordova()
acceptAllCerts(accept: boolean): Promise<void> { return; }
/**
* Whether or not to validate the domain name in the certificate. This defaults to true.
* @param validate {boolean} Set to true to validate
* @returns {Promise<void>} returns a promise that will resolve on success, and reject on failure
*/
@Cordova()
validateDomainName(validate: boolean): Promise<void> { return; }
/**
* Make a POST request
* @param url {string} The url to send the request to
@@ -178,6 +177,16 @@ export class HTTP extends IonicNativePlugin {
@Cordova()
put(url: string, body: any, headers: any): Promise<HTTPResponse> { return; }
/**
* Make a PATCH request
* @param url {string} The url to send the request to
* @param body {Object} The body of the request
* @param headers {Object} The headers to set for this request
* @returns {Promise<HTTPResponse>} returns a promise that resolve on success, and reject on failure
*/
@Cordova()
patch(url: string, body: any, headers: any): Promise<HTTPResponse> { return; }
/**
* Make a DELETE request
* @param url {string} The url to send the request to

View File

@@ -0,0 +1,136 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
export interface IndexItem {
domain: string;
identifier: string;
title: string;
description: string;
/**
* Url to image
*/
url: string;
/**
* Item keywords
*/
keywords?: Array<string>;
/**
* Lifetime in minutes
*/
lifetime?: number;
}
/**
* @name Index App Content
* @description
* This plugin gives you a Javascript API to interact with Core Spotlight on iOS (=> iOS 9).
* You can add, update and delete items to the spotlight search index.
* Spotlight Search will include these items in the result list. You can deep-link the search results with your app.
*
* @usage
* ```typescript
* import { IndexAppContent } from '@ionic-native/index-app-content';
*
*
* constructor(private indexAppContent: IndexAppContent) { }
*
* ...
*
* var items = [
* {
* domain: 'com.my.domain',
* identifier: '88asdf7dsf',
* title: 'Foo',
* description: 'Bar',
* url: 'http://location/of/my/image.jpg',
* },
* {
* domain: 'com.other.domain',
* identifier: '9asd67g6a',
* title: 'Baz',
* description: 'Woot',
* url: 'http://location/of/my/image2.jpg',
* }
* ];
*
* this.indexAppContent.setItems(items)
* .then((res: any) => console.log(res))
* .catch((error: any) => console.error(error));
*
* ```
*/
@Plugin({
pluginName: 'IndexAppContent',
plugin: 'cordova-plugin-indexappcontent',
pluginRef: 'window.plugins.indexAppContent',
repo: 'https://github.com/johanblomgren/cordova-plugin-indexappcontent',
platforms: ['iOS']
})
@Injectable()
export class IndexAppContent extends IonicNativePlugin {
/**
* The option to index app content might not be available at all due to device limitations or user settings.
* Therefore it's highly recommended to check upfront if indexing is possible.
* @return {Promise<boolean>} Returns a promise that resolves with true if indexing is available, false if not
*/
@Cordova()
isIndexingAvailable(): Promise<boolean> {
return;
}
/**
* Add or change items to spotlight index
* @param {Array<IndexItem>} Array of items to index
* @return {Promise<any>} Returns if index set was successfull
*/
@Cordova()
setItems(items: Array<IndexItem>): Promise<any> {
return;
}
/**
* If user taps on a search result in spotlight then the app will be launched.
* You can register a Javascript handler to get informed when this happens.
* @param {IndexItem} Clicked Item
* @return {Promise<any>} Returns promise
*/
@Cordova()
onItemPressed(payload: IndexItem) {
return;
}
/**
* Clear all items stored for a given array of domains
* @param {Array<string>} Array of domains to clear
* @return {Promise<any>} Resolve if successfull
*/
@Cordova()
clearItemsForDomains(domains: Array<string>): Promise<any> {
return;
}
/**
* Clear all items stored for a given array of identifiers
* @param {Array<string>} Array of identifiers to clear
* @return {Promise<any>} Resolve if successfull
*/
@Cordova()
clearItemsForIdentifiers(identifiers: Array<string>): Promise<any> {
return;
}
/**
* You might want to avoid to update spotlight index too frequently.
* Without calling this function a subsequent call to manipulate the index is only possible after 1440 minutes (= 24 hours)!
* @param {number} Numeric value => 0
*/
@Cordova()
setIndexingInterval(intervalMinutes: number) {
return;
}
}

View File

@@ -313,8 +313,8 @@ export class LaunchNavigator extends IonicNativePlugin {
* @returns {Promise<any>}
*/
@Cordova({
successIndex: 1,
errorIndex: 2
successIndex: 2,
errorIndex: 3
})
navigate(destination: string | number[], options?: LaunchNavigatorOptions): Promise<any> { return; }

View File

@@ -10,6 +10,10 @@ export interface MusicControlsOptions {
dismissable: boolean;
hasPrev: boolean;
hasNext: boolean;
hasSkipForward: boolean;
hasSkipBackward: boolean;
skipForwardInterval: number;
skipBackwardInterval: number;
hasClose: boolean;
album: string;
duration: number;
@@ -50,6 +54,10 @@ export interface MusicControlsOptions {
* album : 'Absolution' // optional, default: ''
* duration : 60, // optional, default: 0
* elapsed : 10, // optional, default: 0
* hasSkipForward : true, // show skip forward button, optional, default: false
* hasSkipBackward : true, // show skip backward button, optional, default: false
* skipForwardInterval: 15, // display number for skip forward, optional, default: 0
* skipBackwardInterval: 15, // display number for skip backward, optional, default: 0
*
* // Android only, optional
* // text displayed in the status bar when the notification (and the ticker) are updated
@@ -89,6 +97,12 @@ export interface MusicControlsOptions {
* });
* // Do something
* break;
* case 'music-controls-skip-forward':
* // Do something
* break;
* case 'music-controls-skip-backward':
* // Do something
* break;
*
* // Headset events (Android only)
* // All media button events are listed below
@@ -164,7 +178,7 @@ export class MusicControls extends IonicNativePlugin {
/**
* Update elapsed time, optionally toggle play/pause:
* @param args {Object}
* @param args {Object}
*/
@Cordova({
platforms: ['iOS']

View File

@@ -165,7 +165,7 @@ export interface OSNotificationPayload {
/**
* URL to open when opening the notification.
*/
launchUrl?: string;
launchURL?: string;
/**
* Sound resource to play when the notification is shown.
*/
@@ -301,7 +301,8 @@ export enum OSActionType {
* The OneSignal plugin is an client implementation for using the [OneSignal](https://onesignal.com/) Service.
* OneSignal is a simple implementation for delivering push notifications.
*
* Requires Cordova plugin: `onesignal-cordova-plugin`. For more info, please see the [OneSignal Cordova Docs](https://documentation.onesignal.com/docs/phonegap-sdk-installation).
* Please view the official [OneSignal Ionic SDK Installation](https://documentation.onesignal.com/docs/ionic-sdk-setup) guide
* for more information.
*
* #### Icons
* If you want to use generated icons with command `ionic cordova resources`:

View File

@@ -61,7 +61,7 @@ export interface LocalNotificationOptions {
* import { PhonegapLocalNotification } from '@ionic-native/phonegap-local-notification';
*
*
* constructor(private localNotification: PhonegapLocalNotifications) { }
* constructor(private localNotification: PhonegapLocalNotification) { }
*
* ...
*

View File

@@ -1,5 +1,13 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
export interface PhotoViewerOptions {
/**
* Set to false to disable the share button (Android only). Default: true
*/
share?: boolean;
}
/**
* @name Photo Viewer
* @description This plugin can display your image in full screen with the ability to pan, zoom, and share the image.
@@ -29,8 +37,8 @@ export class PhotoViewer extends IonicNativePlugin {
* Shows an image in full screen
* @param url {string} URL or path to image
* @param title {string}
* @param options {any}
* @param options {PhotoViewerOptions}
*/
@Cordova({sync: true})
show(url: string, title?: string, options?: {share?: boolean}): void { }
show(url: string, title?: string, options?: PhotoViewerOptions): void { }
}

View File

@@ -0,0 +1,173 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, CordovaInstance, IonicNativePlugin } from '@ionic-native/core';
import { Observable } from 'rxjs/Observable';
/**
* Information about the currently running app
*/
export interface AppInfo {
platform: string;
platformVersion: string;
version: string;
bundleName: string;
bundleVersion: string;
}
/**
* Information about the current live update
*/
export interface DeployInfo {
deploy_uuid: string;
channel: string;
binary_version: string;
}
/**
* Object for manually configuring deploy
*/
export interface DeployConfig {
appId?: string;
host?: string;
channel?: string;
}
/**
* @hidden
*/
export class ProDeploy {
constructor(private _objectInstance: any) { }
/**
* Re-initialize Deploy plugin with a new App ID and host. Not used in most cases.
* @param config A valid Deploy config object
*/
@CordovaInstance()
init(config: DeployConfig): Promise<any> { return; }
/**
* Check a channel for an available update
* @return {Promise<string>} Resolves with 'true' or 'false', or rejects with an error.
*/
@CordovaInstance({
observable: true
})
check(): Promise<string> { return; }
/**
* Download an available version
* @return {Observable<any>} Updates with percent completion, or errors with a message.
*/
@CordovaInstance({
observable: true
})
download(): Observable<any> { return; }
/**
* Unzip the latest downloaded version
* @return {Observable<any>} Updates with percent completion, or errors with a message.
*/
@CordovaInstance()
extract(): Observable<any> { return; }
/**
* Reload app with the deployed version
*/
@CordovaInstance()
redirect(): Promise<any> { return; }
/**
* Get info about the version running on the device
* @return {Promise<DeployInfo>} Information about the current version running on the app.
*/
@CordovaInstance()
info(): Promise<DeployInfo> { return; }
/**
* List versions stored on the device
*/
@CordovaInstance()
getVersions(): Promise<any> { return; }
/**
* Delete a version stored on the device by UUID
* @param version A version UUID
*/
@CordovaInstance()
deleteVersion(version: string): Promise<any> { return; }
}
/**
* @name Pro
* @description
* This plugin enables Ionic Pro services like live updates and error monitoring
*
* @usage
* ```typescript
* import { Pro, AppInfo, DeployInfo } from '@ionic-native/pro';
*
*
* constructor(private pro: Pro) { }
*
* // Get app info
* this.pro.getAppInfo().then((res: AppInfo) => {
* console.log(res)
* })
*
* // Get live update info
* this.pro.deploy.info().then((res: DeployInfo) => {
* console.log(res)
* })
* ```
*/
@Plugin({
pluginName: 'Pro',
plugin: 'cordova-plugin-ionic',
pluginRef: 'IonicCordova',
repo: 'https://github.com/ionic-team/cordova-plugin-ionic',
platforms: ['Android', 'iOS'],
install: 'ionic cordova plugin add cordova-plugin-ionic --save --variable APP_ID="XXXXXXXX" --variable CHANNEL_NAME="Channel"'
})
@Injectable()
export class Pro extends IonicNativePlugin {
/**
* Ionic Pro Deploy .js API.
*/
deploy: ProDeploy = new ProDeploy(Pro.getPlugin().deploy);
/**
* Not yet implemented
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
enableCrashLogging(): Promise<any> { return; }
/**
* Not yet implemented
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
checkForPendingCrash(): Promise<any> { return; }
/**
* Not yet implemented
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
loadPendingCrash(): Promise<any> { return; }
/**
* Not yet implemented
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
@Cordova()
forceCrash(): Promise<any> { return; }
/**
* Get information about the currently running app
* @return {Promise<any>} Returns a promise that resolves with current app info
*/
@Cordova()
getAppInfo(): Promise<AppInfo> { return; }
}

View File

@@ -62,16 +62,10 @@ export interface NotificationEventAdditionalData {
}
export interface IOSPushOptions {
/**
* Maps to the project number in the Google Developer Console. Setting this
* uses GCM for notifications instead of native.
*/
senderID?: string;
/**
* Whether to use prod or sandbox GCM setting.
*/
gcmSandbox?: boolean | string;
fcmSandbox?: boolean | string;
/**
* If true the device shows an alert on receipt of notification.
@@ -137,11 +131,6 @@ export interface CategoryActionData {
}
export interface AndroidPushOptions {
/**
* Maps to the project number in the Google Developer Console.
*/
senderID: string;
/**
* The name of a drawable resource to use as the small-icon. The name should
* not include the extension.
@@ -186,6 +175,16 @@ export interface AndroidPushOptions {
* subscribe to a GcmPubSub topic.
*/
topics?: string[];
/**
* The key to search for text of notification.
*/
messageKey?: string;
/**
* The key to search for title of notification.
*/
titleKey?: string;
}
export interface BrowserPushOptions {
@@ -244,9 +243,7 @@ export type PushEvent = 'registration' | 'error' | 'notification';
* // to initialize push notifications
*
* const options: PushOptions = {
* android: {
* senderID: '12345679'
* },
* android: {},
* ios: {
* alert: 'true',
* badge: true,
@@ -283,8 +280,7 @@ export type PushEvent = 'registration' | 'error' | 'notification';
plugin: 'phonegap-plugin-push',
pluginRef: 'PushNotification',
repo: 'https://github.com/phonegap/phonegap-plugin-push',
install: 'ionic cordova plugin add phonegap-plugin-push --variable SENDER_ID=XXXXXXXXX',
installVariables: ['SENDER_ID'],
install: 'ionic cordova plugin add phonegap-plugin-push',
platforms: ['Android', 'Browser', 'iOS', 'Windows']
})
@Injectable()

View File

@@ -159,6 +159,13 @@ export class QRScanner extends IonicNativePlugin {
})
enableLight(): Promise<QRScannerStatus> { return; }
/**
* Destroy the scanner instance.
* @returns {Promise<QRScannerStatus>}
*/
@Cordova()
destroy(): Promise<QRScannerStatus> { return; }
/**
* Disable the device's light.
* @return {Promise<QRScannerStatus>}

View File

@@ -0,0 +1,46 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @paid
* @beta
* @name Regula Document Reader
* @description
* Plugin for reading and validation of identification documents.
*
* @usage
* ```typescript
* import { RegulaDocumentReader } from '@ionic-native/regula-document-reader';
*
* let license; // read regula.license file
* RegulaDocumentReader.initReader(license); // initialize reader
* RegulaDocumentReader.scanDocument().then((result) => {
* // read result
* })
* ```
*/
@Plugin({
pluginName: 'Regula Document Reader',
plugin: 'cordova-plugin-documentreader',
pluginRef: 'DocumentReader',
repo: 'https://github.com/regulaforensics/cordova-plugin-documentreader.git',
platforms: ['iOS', 'Android'],
install: 'ionic plugin add cordova-plugin-documentreader --variable CAMERA_USAGE_DESCRIPTION="To take photo"',
})
@Injectable()
export class RegulaDocumentReader extends IonicNativePlugin {
/**
* Initialize the scanner
* @param license {any} License data
*/
@Cordova()
initReader(license: any): void {}
/**
* Run the scanner
* @return {Promise<string[]>} Returns a promise that resolves when results was got, and fails when not
*/
@Cordova()
scanDocument(): Promise<string[]> { return; }
}

View File

@@ -79,6 +79,31 @@ export interface StripeBankAccountParams {
account_holder_type?: string;
}
export interface StripeCardTokenRes {
/**
* Card Object.
*/
card: {
brand: string,
exp_month: number,
exp_year: number,
funding: string,
last4: string
};
/**
* Token Request Date Time.
*/
created: string;
/**
* Card Token.
*/
id: string;
/**
* Source Type (card or account).
*/
type: string;
}
/**
* @name Stripe
* @description
@@ -102,7 +127,7 @@ export interface StripeBankAccountParams {
* };
*
* this.stripe.createCardToken(card)
* .then(token => console.log(token))
* .then(token => console.log(token.id))
* .catch(error => console.error(error));
*
* ```
@@ -131,10 +156,10 @@ export class Stripe extends IonicNativePlugin {
/**
* Create Credit Card Token
* @param params {StripeCardTokenParams} Credit card information
* @return {Promise<string>} returns a promise that resolves with the token, or rejects with an error
* @return {Promise<StripeCardTokenRes>} returns a promise that resolves with the token object, or rejects with an error
*/
@Cordova()
createCardToken(params: StripeCardTokenParams): Promise<string> { return; }
createCardToken(params: StripeCardTokenParams): Promise<StripeCardTokenRes> { return; }
/**
* Create a bank account token

View File

@@ -55,9 +55,9 @@ export interface TwitterConnectResponse {
pluginName: 'TwitterConnect',
plugin: 'twitter-connect-plugin',
pluginRef: 'TwitterConnect',
repo: 'https://github.com/ManifestWebDesign/twitter-connect-plugin',
install: 'ionic cordova plugin add twitter-connect-plugin --variable FABRIC_KEY=fabric_API_key',
installVariables: ['FABRIC_KEY'],
repo: 'https://github.com/chroa/twitter-connect-plugin',
install: 'ionic cordova plugin add https://github.com/chroa/twitter-connect-plugin --variable FABRIC_KEY=<Fabric API Key> --variable TWITTER_KEY=<Twitter Consumer Key> --variable TWITTER_SECRET=<Twitter Consumer Secret>',
installVariables: ['FABRIC_KEY', 'TWITTER_KEY', 'TWITTER_SECRET'],
platforms: ['Android', 'iOS']
})
@Injectable()

View File

@@ -0,0 +1,69 @@
import { Injectable } from '@angular/core';
import { Plugin, CordovaProperty, IonicNativePlugin } from '@ionic-native/core';
/**
* @name Uid
* @description
* Get unique identifiers: UUID, IMEI, IMSI, ICCID and MAC.
*
* @usage
* ```typescript
* import { Uid } from '@ionic-native/uid';
* import { AndroidPermissions } from '@ionic-native/android-permissions';
*
* constructor(private uid: Uid, private androidPermissions: AndroidPermissions) { }
*
*
* async getImei() {
* const { hasPermission } = await this.androidPermissions.checkPermission(
* this.androidPermissions.PERMISSION.READ_PHONE_STATE
* );
*
* if (!hasPermission) {
* const result = await this.androidPermissions.requestPermission(
* this.androidPermissions.PERMISSION.READ_PHONE_STATE
* );
*
* if (!result.hasPermission) {
* throw new Error('Permissions required');
* }
*
* // ok, a user gave us permission, we can get him identifiers after restart app
* return;
* }
*
* return this.uid.IMEI
* }
* ```
*/
@Plugin({
pluginName: 'Uid',
plugin: 'https://github.com/hygieiasoft/cordova-plugin-uid',
pluginRef: 'cordova.plugins.uid',
repo: 'https://github.com/hygieiasoft/cordova-plugin-uid',
platforms: ['Android']
})
@Injectable()
export class Uid extends IonicNativePlugin {
/** Get the device Universally Unique Identifier (UUID). */
@CordovaProperty
UUID: string;
/** Get the device International Mobile Station Equipment Identity (IMEI). */
@CordovaProperty
IMEI: string;
/** Get the device International mobile Subscriber Identity (IMSI). */
@CordovaProperty
IMSI: string;
/** Get the sim Integrated Circuit Card Identifier (ICCID). */
@CordovaProperty
ICCID: string;
/** Get the Media Access Control address (MAC). */
@CordovaProperty
MAC: string;
}

View File

@@ -14,7 +14,7 @@ export interface ZeroconfService {
}
export interface ZeroconfResult {
action: 'registered' | 'added' | 'removed';
action: 'registered' | 'added' | 'removed' | 'resolved';
service: ZeroconfService;
}