typedphonegap
v0.0.3
Published
TypeScript layer for PhoneGap / Apache Cordova 3.4.0
Downloads
3
Readme
TypedPhoneGap
TypeScript layer for PhoneGap (Apache Cordova) version 3.4.0 and all core plugins
Quick links:
Motivation
TypeScript definitions allow editing code with some degree of type checking and code completion. It saves time and eliminates bugs.
It turns out that simple .d.ts
is not enough, since Cordova API is
weird. So TypedPhoneGap provides a little JavaScript layer as
well. To see why it is worth it, consider for example how Cordova has
you write (with inappbrowser
plugin):
window.open('http://apache.org', '_blank', 'location=yes');
Here, what should go into options string? You do not know without reading the docs.
TypedPhoneGap, on the other hand, makes everything pleasantly typed:
import IAB = TypedPhoneGap.InAppBrowser;
var iab = IAB.getPlugin();
iab.openWindow('http://apache.org', IAB.Target.blank, {
location: true
});
You can examine Options
interface to see what is available. Also,
where possible, getPlugin
functions do checks and fire informative
exceptions when you forget to configure your application with a given
plugin.
Status
Rewritten for version 3.4.0 and TypeScript 0.9.7. Currently testing, API subject to change.
Building
Build the project with npm. In the root folder, do:
npm install
This should obtain three files:
build/TypedPhoneGap.d.ts
build/TypedPhoneGap.js
build/TypedPhoneGap.min.js
Usage
In your application, reference the .d.ts
for TypeScript development
and include the .js
or .min.js
after cordova.js
.
The project includes a command-line tool to help populate files in a
project generated by the cordova
tool. Synopsis:
cd myapp
npm install -g typedphonegap
typedphonegap install
This populates your project with:
www/js/TypedPhoneGap.js
www/js/TypedPhoneGap.min.js
www/typings/TypedPhoneGap.d.ts
License
All files are released under Apache 2.0 License.
Contributing
Contributions are welcome, especially for testing the code on real-world examples.