diff --git a/auth0-js/auth0-js-tests.ts b/auth0-js/auth0-js-tests.ts
new file mode 100644
index 0000000000..197256ddd5
--- /dev/null
+++ b/auth0-js/auth0-js-tests.ts
@@ -0,0 +1,23 @@
+///
+
+var auth0 = new Auth0({
+ domain: 'mine.auth0.com',
+ clientID: 'dsa7d77dsa7d7',
+ callbackURL: 'http://my-app.com/callback',
+ callbackOnLocationHash: true
+});
+
+auth0.login({
+ connection: 'google-oauth2',
+ popup: true,
+ popupOptions: {
+ width: 450,
+ height: 800
+ }
+}, (err, profile, idToken, accessToken, state) => {
+ if (err) {
+ alert("something went wrong: " + err.message);
+ return;
+ }
+ alert('hello ' + profile.name);
+ });
diff --git a/auth0-js/index.d.ts b/auth0-js/index.d.ts
new file mode 100644
index 0000000000..50041bb5d1
--- /dev/null
+++ b/auth0-js/index.d.ts
@@ -0,0 +1,132 @@
+// Type definitions for Auth0.js
+// Project: https://github.com/auth0/auth0.js
+// Definitions by: Robert McLaws
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+/** Extensions to the browser Window object. */
+interface Window {
+ /** Allows you to pass the id_token to other APIs, as specified in https://docs.auth0.com/apps-apis */
+ token: string;
+}
+
+/** This is the interface for the main Auth0 client. */
+interface Auth0Static {
+
+ new(options: Auth0ClientOptions): Auth0Static;
+ changePassword(options: any, callback?: Function): void;
+ decodeJwt(jwt: string): any;
+ login(options: any, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
+ loginWithPopup(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
+ loginWithResourceOwner(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: any) => any): void;
+ loginWithUsernamePassword(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
+ logout(query: string): void;
+ getConnections(callback?: Function): void;
+ refreshToken(refreshToken: string, callback: (error?: Auth0Error, delegationResult?: Auth0DelegationToken) => any): void;
+ getDelegationToken(targetClientId: string, id_token: string, options: any, callback: (error?: Auth0Error, delegationResult?: Auth0DelegationToken) => any): void;
+ getProfile(id_token: string, callback?: Function): Auth0UserProfile;
+ getSSOData(withActiveDirectories: any, callback?: Function): void;
+ parseHash(hash: string): Auth0DecodedHash;
+ signup(options: Auth0SignupOptions, callback: Function): void;
+ validateUser(options: any, callback: (error?: Auth0Error, valid?: any) => any): void;
+}
+
+/** Represents constructor options for the Auth0 client. */
+interface Auth0ClientOptions {
+ clientID: string;
+ callbackURL: string;
+ callbackOnLocationHash?: boolean;
+ domain: string;
+ forceJSONP?: boolean;
+}
+
+/** Represents a normalized UserProfile. */
+interface Auth0UserProfile {
+ email: string;
+ family_name: string;
+ gender: string;
+ given_name: string;
+ locale: string;
+ name: string;
+ nickname: string;
+ picture: string;
+ user_id: string;
+ /** Represents one or more Identities that may be associated with the User. */
+ identities: Auth0Identity[];
+ user_metadata?: any;
+ app_metadata?: any;
+}
+
+/** Represents an Auth0UserProfile that has a Microsoft Account as the primary identity. */
+interface MicrosoftUserProfile extends Auth0UserProfile {
+ emails: string[];
+}
+
+/** Represents an Auth0UserProfile that has an Office365 account as the primary identity. */
+interface Office365UserProfile extends Auth0UserProfile {
+ tenantid: string;
+ upn: string;
+}
+
+/** Represents an Auth0UserProfile that has an Active Directory account as the primary identity. */
+interface AdfsUserProfile extends Auth0UserProfile {
+ issuer: string;
+}
+
+/** Represents multiple identities assigned to a user. */
+interface Auth0Identity {
+ access_token: string;
+ connection: string;
+ isSocial: boolean;
+ provider: string;
+ user_id: string;
+}
+
+interface Auth0DecodedHash {
+ access_token: string;
+ id_token: string;
+ profile: Auth0UserProfile;
+ state: any;
+}
+
+interface Auth0PopupOptions {
+ width: number;
+ height: number;
+}
+
+interface Auth0LoginOptions {
+ auto_login?: boolean;
+ connection?: string;
+ email?: string;
+ username?: string;
+ password?: string;
+ popup?: boolean;
+ popupOptions?: Auth0PopupOptions;
+}
+
+interface Auth0SignupOptions extends Auth0LoginOptions {
+ auto_login: boolean;
+}
+
+interface Auth0Error {
+ code: any;
+ details: any;
+ name: string;
+ message: string;
+ status: any;
+}
+
+/** Represents the response from an API Token Delegation request. */
+interface Auth0DelegationToken {
+ /** The length of time in seconds the token is valid for. */
+ expires_in: string;
+ /** The JWT for delegated access. */
+ id_token: string;
+ /** The type of token being returned. Possible values: "Bearer" */
+ token_type: string;
+}
+
+declare const Auth0: Auth0Static;
+
+declare module "auth0" {
+ export = Auth0
+}
diff --git a/auth0-js/tsconfig.json b/auth0-js/tsconfig.json
new file mode 100644
index 0000000000..7a0a649c3b
--- /dev/null
+++ b/auth0-js/tsconfig.json
@@ -0,0 +1,19 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": true,
+ "strictNullChecks": false,
+ "baseUrl": "../",
+ "typeRoots": [
+ "../"
+ ],
+ "types": [],
+ "noEmit": true,
+ "forceConsistentCasingInFileNames": true
+ },
+ "files": [
+ "index.d.ts",
+ "auth0-js-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/auth0-lock/auth0.lock-tests.ts b/auth0-lock/auth0.lock-tests.ts
index e62cd4ba2d..bba2fc8228 100644
--- a/auth0-lock/auth0.lock-tests.ts
+++ b/auth0-lock/auth0.lock-tests.ts
@@ -1,4 +1,4 @@
-///
+///
const CLIENT_ID = "YOUR_AUTH0_APP_CLIENTID";
diff --git a/auth0-lock/index.d.ts b/auth0-lock/index.d.ts
index da99744841..10ee3aac0d 100644
--- a/auth0-lock/index.d.ts
+++ b/auth0-lock/index.d.ts
@@ -3,7 +3,7 @@
// Definitions by: Brian Caruso
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-///
+///
interface Auth0LockAdditionalSignUpFieldOption {
value: string;
diff --git a/auth0.widget/auth0.widget-tests.ts b/auth0.widget/auth0.widget-tests.ts
index 79f1a2a7a7..ec5502ca7e 100644
--- a/auth0.widget/auth0.widget-tests.ts
+++ b/auth0.widget/auth0.widget-tests.ts
@@ -1,4 +1,4 @@
-///
+///
var widget: Auth0WidgetStatic = new Auth0Widget({
diff --git a/auth0.widget/index.d.ts b/auth0.widget/index.d.ts
index ed6a2f341b..24d978ab9d 100644
--- a/auth0.widget/index.d.ts
+++ b/auth0.widget/index.d.ts
@@ -3,7 +3,7 @@
// Definitions by: Robert McLaws
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-///
+///
interface Auth0WidgetStatic {
diff --git a/auth0/auth0-tests.ts b/auth0/auth0-tests.ts
index 7f48274eaf..391dee655a 100644
--- a/auth0/auth0-tests.ts
+++ b/auth0/auth0-tests.ts
@@ -1,23 +1,51 @@
///
-var auth0 = new Auth0({
- domain: 'mine.auth0.com',
- clientID: 'dsa7d77dsa7d7',
- callbackURL: 'http://my-app.com/callback',
- callbackOnLocationHash: true
+import * as auth0 from 'auth0';
+
+const management = new auth0.ManagementClient({
+ token: '{YOUR_API_V2_TOKEN}',
+ domain: '{YOUR_ACCOUNT}.auth0.com'
});
-auth0.login({
- connection: 'google-oauth2',
- popup: true,
- popupOptions: {
- width: 450,
- height: 800
- }
-}, (err, profile, idToken, accessToken, state) => {
- if (err) {
- alert("something went wrong: " + err.message);
- return;
- }
- alert('hello ' + profile.name);
- });
+const auth = new auth0.AuthenticationClient({
+ domain: '{YOUR_ACCOUNT}.auth0.com',
+ clientId: '{OPTIONAL_CLIENT_ID}'
+});
+
+// Using a callback.
+management.getUsers((err: Error, users: auth0.User[]) => {
+ if (err) {
+ // Handle error.
+ }
+ console.log(users);
+});
+
+// Using a Promise.
+management
+ .getUsers()
+ .then((users) => {
+ console.log(users);
+ })
+ .catch((err) => {
+ // Handle the error.
+ });
+
+management
+ .createUser({
+ connection: 'My-Connection',
+ email: 'hi@me.co',
+ }).then((user) => {
+ console.log(user);
+ }).catch((err) => {
+ // Handle the error.
+ });
+
+auth
+ .requestChangePasswordEmail({
+ connection: 'My-Connection',
+ email: 'hi@me.co',
+ }).then((response) => {
+ console.log(response);
+ }).catch((err) => {
+ // Handle the error.
+ });
diff --git a/auth0/index.d.ts b/auth0/index.d.ts
index 5ca8487f85..019d9edc38 100644
--- a/auth0/index.d.ts
+++ b/auth0/index.d.ts
@@ -1,132 +1,89 @@
-// Type definitions for Auth0.js
-// Project: http://auth0.com
-// Definitions by: Robert McLaws
+// Type definitions for auth0 v2.3.1
+// Project: https://github.com/auth0/node-auth0
+// Definitions by: Seth Westphal
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-/** Extensions to the browser Window object. */
-interface Window {
- /** Allows you to pass the id_token to other APIs, as specified in https://docs.auth0.com/apps-apis */
- token: string;
+import * as Promise from 'bluebird';
+
+export interface ManagementClientOptions {
+ token: string;
+ domain?: string;
}
-/** This is the interface for the main Auth0 client. */
-interface Auth0Static {
-
- new(options: Auth0ClientOptions): Auth0Static;
- changePassword(options: any, callback?: Function): void;
- decodeJwt(jwt: string): any;
- login(options: any, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
- loginWithPopup(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
- loginWithResourceOwner(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: any) => any): void;
- loginWithUsernamePassword(options: Auth0LoginOptions, callback: (error?: Auth0Error, profile?: Auth0UserProfile, id_token?: string, access_token?: string, state?: string) => any): void;
- logout(query: string): void;
- getConnections(callback?: Function): void;
- refreshToken(refreshToken: string, callback: (error?: Auth0Error, delegationResult?: Auth0DelegationToken) => any): void;
- getDelegationToken(targetClientId: string, id_token: string, options: any, callback: (error?: Auth0Error, delegationResult?: Auth0DelegationToken) => any): void;
- getProfile(id_token: string, callback?: Function): Auth0UserProfile;
- getSSOData(withActiveDirectories: any, callback?: Function): void;
- parseHash(hash: string): Auth0DecodedHash;
- signup(options: Auth0SignupOptions, callback: Function): void;
- validateUser(options: any, callback: (error?: Auth0Error, valid?: any) => any): void;
+export interface UserData {
+ connection: string;
+ email?: string;
+ username?: string;
+ password?: string;
+ phone_number?: string;
+ user_metadata?: {};
+ email_verified?: boolean;
+ app_metadata?: {};
}
-/** Represents constructor options for the Auth0 client. */
-interface Auth0ClientOptions {
- clientID: string;
- callbackURL: string;
- callbackOnLocationHash?: boolean;
- domain: string;
- forceJSONP?: boolean;
+export interface GetUsersData {
+ per_page?: number;
+ page?: number;
+ include_totals?: boolean;
+ sort?: string;
+ connection?: string;
+ fields?: string;
+ include_fields?: boolean;
+ q?: string;
+ search_engine?: string;
}
-/** Represents a normalized UserProfile. */
-interface Auth0UserProfile {
- email: string;
- family_name: string;
- gender: string;
- given_name: string;
- locale: string;
- name: string;
- nickname: string;
- picture: string;
- user_id: string;
- /** Represents one or more Identities that may be associated with the User. */
- identities: Auth0Identity[];
- user_metadata?: any;
- app_metadata?: any;
+export interface User {
+ email?: string;
+ email_verified?: boolean;
+ username?: string;
+ phone_number?: string;
+ phone_verified?: boolean;
+ user_id?: string;
+ created_at?: string;
+ updated_at?: string;
+ identities?: Identity[];
+ app_metadata?: {};
+ user_metadata?: {};
+ picture?: string;
+ name?: string;
+ nickname?: string;
+ multifactor?: string[];
+ last_ip?: string;
+ last_login?: string;
+ logins_count?: number;
+ blocked?: boolean;
}
-/** Represents an Auth0UserProfile that has a Microsoft Account as the primary identity. */
-interface MicrosoftUserProfile extends Auth0UserProfile {
- emails: string[];
+export interface Identity {
+ connection: string;
+ user_id: string;
+ provider: string;
+ isSocial: boolean;
}
-/** Represents an Auth0UserProfile that has an Office365 account as the primary identity. */
-interface Office365UserProfile extends Auth0UserProfile {
- tenantid: string;
- upn: string;
+export class ManagementClient {
+ constructor(options: ManagementClientOptions);
+
+ getUsers(params?: GetUsersData): Promise;
+ getUsers(params?: GetUsersData, cb?: (err: Error, users: User[]) => void): void;
+ createUser(data: UserData): Promise;
+ createUser(data: UserData, cb: (err: Error, data: User) => void): void;
}
-/** Represents an Auth0UserProfile that has an Active Directory account as the primary identity. */
-interface AdfsUserProfile extends Auth0UserProfile {
- issuer: string;
+export interface AuthenticationClientOptions {
+ clientId?: string;
+ domain: string;
}
-/** Represents multiple identities assigned to a user. */
-interface Auth0Identity {
- access_token: string;
- connection: string;
- isSocial: boolean;
- provider: string;
- user_id: string;
+export interface RequestChangePasswordEmailData {
+ connection: string;
+ email: string;
}
-interface Auth0DecodedHash {
- access_token: string;
- id_token: string;
- profile: Auth0UserProfile;
- state: any;
-}
+export class AuthenticationClient {
+ constructor(options: AuthenticationClientOptions);
-interface Auth0PopupOptions {
- width: number;
- height: number;
-}
-
-interface Auth0LoginOptions {
- auto_login?: boolean;
- connection?: string;
- email?: string;
- username?: string;
- password?: string;
- popup?: boolean;
- popupOptions?: Auth0PopupOptions;
-}
-
-interface Auth0SignupOptions extends Auth0LoginOptions {
- auto_login: boolean;
-}
-
-interface Auth0Error {
- code: any;
- details: any;
- name: string;
- message: string;
- status: any;
-}
-
-/** Represents the response from an API Token Delegation request. */
-interface Auth0DelegationToken {
- /** The length of time in seconds the token is valid for. */
- expires_in: string;
- /** The JWT for delegated access. */
- id_token: string;
- /** The type of token being returned. Possible values: "Bearer" */
- token_type: string;
-}
-
-declare var Auth0: Auth0Static;
-
-declare module "auth0" {
- export = Auth0
-}
+ requestChangePasswordEmail(data: RequestChangePasswordEmailData): Promise;
+ requestChangePasswordEmail(data: RequestChangePasswordEmailData, cb: (err: Error, message: string) => void): void;
+}
\ No newline at end of file
diff --git a/cordova-plugin-battery-status/cordova-plugin-battery-status-tests.ts b/cordova-plugin-battery-status/cordova-plugin-battery-status-tests.ts
new file mode 100644
index 0000000000..4dafa2e966
--- /dev/null
+++ b/cordova-plugin-battery-status/cordova-plugin-battery-status-tests.ts
@@ -0,0 +1,7 @@
+///
+
+window.addEventListener('batterystatus',
+ (ev: BatteryStatusEvent) => { console.log('Battery level is ' + ev.level); });
+
+window.addEventListener('batterycritical',
+ () => { alert('Battery is critical low!'); });
\ No newline at end of file
diff --git a/cordova/plugins/BatteryStatus.d.ts b/cordova-plugin-battery-status/index.d.ts
similarity index 97%
rename from cordova/plugins/BatteryStatus.d.ts
rename to cordova-plugin-battery-status/index.d.ts
index 11250e41b7..9baedc8cb0 100644
--- a/cordova/plugins/BatteryStatus.d.ts
+++ b/cordova-plugin-battery-status/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova BatteryStatus plugin.
+// Type definitions for Apache Cordova BatteryStatus plugin
// Project: https://github.com/apache/cordova-plugin-battery-status
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Window {
diff --git a/cordova-plugin-battery-status/tsconfig.json b/cordova-plugin-battery-status/tsconfig.json
new file mode 100644
index 0000000000..b781800488
--- /dev/null
+++ b/cordova-plugin-battery-status/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-battery-status-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-camera/cordova-plugin-camera-tests.ts b/cordova-plugin-camera/cordova-plugin-camera-tests.ts
new file mode 100644
index 0000000000..00edf02b0a
--- /dev/null
+++ b/cordova-plugin-camera/cordova-plugin-camera-tests.ts
@@ -0,0 +1,13 @@
+///
+
+navigator.camera.getPicture(
+ (data: string) => { alert('Got photo!'); },
+ (message: string)=> { alert('Failed!: ' + message); },
+ {
+ allowEdit: true,
+ cameraDirection: Camera.Direction.BACK,
+ destinationType: Camera.DestinationType.FILE_URI,
+ encodingType: Camera.EncodingType.JPEG,
+ sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
+ quality: 80
+ });
diff --git a/cordova/plugins/Camera.d.ts b/cordova-plugin-camera/index.d.ts
similarity index 96%
rename from cordova/plugins/Camera.d.ts
rename to cordova-plugin-camera/index.d.ts
index cf20d16ae8..48c8f8ae5c 100644
--- a/cordova/plugins/Camera.d.ts
+++ b/cordova-plugin-camera/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Camera plugin.
+// Type definitions for Apache Cordova Camera plugin
// Project: https://github.com/apache/cordova-plugin-camera
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-camera/tsconfig.json b/cordova-plugin-camera/tsconfig.json
new file mode 100644
index 0000000000..fd82d2283c
--- /dev/null
+++ b/cordova-plugin-camera/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-camera-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-contacts/cordova-plugin-contacts-tests.ts b/cordova-plugin-contacts/cordova-plugin-contacts-tests.ts
new file mode 100644
index 0000000000..c50912c3ba
--- /dev/null
+++ b/cordova-plugin-contacts/cordova-plugin-contacts-tests.ts
@@ -0,0 +1,18 @@
+///
+
+var contact: Contact = navigator.contacts.create({
+ nickname: 'John Smith',
+ displayName: 'John Smith',
+ phoneNumbers: [{ pref: true, type: "work", value: "+185642556856" }]
+});
+
+navigator.contacts.find(["phoneNumbers"],
+ (contacts: Contact[])=> { alert('Find ' + contacts.length + ' contacts'); },
+ (error: ContactError) => { alert('Error: ' + error.message); },
+ new ContactFindOptions("+1", true)
+);
+
+navigator.contacts.pickContact(
+ (contact: Contact)=> { console.log(contact); },
+ (err: ContactError)=> { console.log(err.message); }
+);
diff --git a/cordova/plugins/Contacts.d.ts b/cordova-plugin-contacts/index.d.ts
similarity index 97%
rename from cordova/plugins/Contacts.d.ts
rename to cordova-plugin-contacts/index.d.ts
index d940fccd77..e1faa7a2cd 100644
--- a/cordova/plugins/Contacts.d.ts
+++ b/cordova-plugin-contacts/index.d.ts
@@ -1,10 +1,10 @@
-// Type definitions for Apache Cordova Contacts plugin.
+// Type definitions for Apache Cordova Contacts plugin
// Project: https://github.com/apache/cordova-plugin-contacts
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
interface Navigator {
/** Provides access to the device contacts database. */
diff --git a/cordova-plugin-contacts/tsconfig.json b/cordova-plugin-contacts/tsconfig.json
new file mode 100644
index 0000000000..150cbbc01b
--- /dev/null
+++ b/cordova-plugin-contacts/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-contacts-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-device-motion/cordova-plugin-device-motion-tests.ts b/cordova-plugin-device-motion/cordova-plugin-device-motion-tests.ts
new file mode 100644
index 0000000000..17b1e49930
--- /dev/null
+++ b/cordova-plugin-device-motion/cordova-plugin-device-motion-tests.ts
@@ -0,0 +1,12 @@
+///
+
+navigator.accelerometer.getCurrentAcceleration(
+ (acc: Acceleration) => { console.log('X: ' + acc.x + 'Y: ' + acc.y + 'Z: ' + acc.z); },
+ () => { alert('Error!'); });
+
+var acchandle: WatchHandle = navigator.accelerometer.watchAcceleration(
+ (acc: Acceleration)=> { console.log('X: ' + acc.x + 'Y: ' + acc.y + 'Z: ' + acc.z); },
+ () => { alert('Error!'); },
+ { frequency: 10 });
+
+navigator.accelerometer.clearWatch(acchandle);
diff --git a/cordova/plugins/DeviceMotion.d.ts b/cordova-plugin-device-motion/index.d.ts
similarity index 94%
rename from cordova/plugins/DeviceMotion.d.ts
rename to cordova-plugin-device-motion/index.d.ts
index 803579e66a..ae38803fd2 100644
--- a/cordova/plugins/DeviceMotion.d.ts
+++ b/cordova-plugin-device-motion/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Device Motion plugin.
+// Type definitions for Apache Cordova Device Motion plugin
// Project: https://github.com/apache/cordova-plugin-device-motion
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-device-motion/tsconfig.json b/cordova-plugin-device-motion/tsconfig.json
new file mode 100644
index 0000000000..38d054da74
--- /dev/null
+++ b/cordova-plugin-device-motion/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-device-motion-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-device-orientation/cordova-plugin-media-device-orientation-tests.ts b/cordova-plugin-device-orientation/cordova-plugin-media-device-orientation-tests.ts
new file mode 100644
index 0000000000..097a66e99e
--- /dev/null
+++ b/cordova-plugin-device-orientation/cordova-plugin-media-device-orientation-tests.ts
@@ -0,0 +1,13 @@
+///
+
+navigator.compass.getCurrentHeading(
+ (heading: CompassHeading)=> { console.log('Got heading to ' + heading.magneticHeading); },
+ (error: CompassError)=> { alert('Error! ' + error.code); },
+ { frequency: 10 });
+
+var accelhandle = navigator.compass.watchHeading(
+ (heading: CompassHeading) => { console.log('Got heading to ' + heading.magneticHeading); },
+ (error: CompassError) => { alert('Error! ' + error.code); },
+ { frequency: 10 });
+
+navigator.compass.clearWatch(accelhandle);
diff --git a/cordova/plugins/DeviceOrientation.d.ts b/cordova-plugin-device-orientation/index.d.ts
similarity index 96%
rename from cordova/plugins/DeviceOrientation.d.ts
rename to cordova-plugin-device-orientation/index.d.ts
index 322d25ca9c..dcd9654efa 100644
--- a/cordova/plugins/DeviceOrientation.d.ts
+++ b/cordova-plugin-device-orientation/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Device Orientation plugin.
+// Type definitions for Apache Cordova Device Orientation plugin
// Project: https://github.com/apache/cordova-plugin-device-orientation
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-device-orientation/tsconfig.json b/cordova-plugin-device-orientation/tsconfig.json
new file mode 100644
index 0000000000..8af4fd1451
--- /dev/null
+++ b/cordova-plugin-device-orientation/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-device-orientation-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-device/cordova-plugin-device-tests.ts b/cordova-plugin-device/cordova-plugin-device-tests.ts
new file mode 100644
index 0000000000..450eadb1f0
--- /dev/null
+++ b/cordova-plugin-device/cordova-plugin-device-tests.ts
@@ -0,0 +1,3 @@
+///
+
+console.log(JSON.stringify(device));
\ No newline at end of file
diff --git a/cordova/plugins/Device.d.ts b/cordova-plugin-device/index.d.ts
similarity index 83%
rename from cordova/plugins/Device.d.ts
rename to cordova-plugin-device/index.d.ts
index b9aebbefd2..494b04f1e2 100644
--- a/cordova/plugins/Device.d.ts
+++ b/cordova-plugin-device/index.d.ts
@@ -1,10 +1,10 @@
-// Type definitions for Apache Cordova Device plugin.
+// Type definitions for Apache Cordova Device plugin
// Project: https://github.com/apache/cordova-plugin-device
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
/**
* This plugin defines a global device object, which describes the device's hardware and software.
diff --git a/cordova-plugin-device/tsconfig.json b/cordova-plugin-device/tsconfig.json
new file mode 100644
index 0000000000..2382a3c48b
--- /dev/null
+++ b/cordova-plugin-device/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-device-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-dialogs/cordova-plugin-dialogs-tests.ts b/cordova-plugin-dialogs/cordova-plugin-dialogs-tests.ts
new file mode 100644
index 0000000000..dd9396f36f
--- /dev/null
+++ b/cordova-plugin-dialogs/cordova-plugin-dialogs-tests.ts
@@ -0,0 +1,4 @@
+///
+
+navigator.notification.alert('Alert!', () => { alert('You\'re alerted'); }, 'Alert', 'Ok');
+navigator.notification.confirm('Are you ok?', (choice: number) => { alert('Your choice is ' + choice); });
diff --git a/cordova/plugins/Dialogs.d.ts b/cordova-plugin-dialogs/index.d.ts
similarity index 93%
rename from cordova/plugins/Dialogs.d.ts
rename to cordova-plugin-dialogs/index.d.ts
index c6753bbfeb..8a4035bf01 100644
--- a/cordova/plugins/Dialogs.d.ts
+++ b/cordova-plugin-dialogs/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Dialogs plugin.
+// Type definitions for Apache Cordova Dialogs plugin
// Project: https://github.com/apache/cordova-plugin-dialogs
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-dialogs/tsconfig.json b/cordova-plugin-dialogs/tsconfig.json
new file mode 100644
index 0000000000..8a06fc75a3
--- /dev/null
+++ b/cordova-plugin-dialogs/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-dialogs-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-file-transfer/cordova-plugin-file-transfer-tests.ts b/cordova-plugin-file-transfer/cordova-plugin-file-transfer-tests.ts
new file mode 100644
index 0000000000..4050b2c4aa
--- /dev/null
+++ b/cordova-plugin-file-transfer/cordova-plugin-file-transfer-tests.ts
@@ -0,0 +1,39 @@
+///
+
+var file = new FileTransfer();
+
+file.onprogress = (ev: ProgressEvent) => {
+ if (ev.lengthComputable) {
+ console.log(ev.loaded + '/' + ev.total);
+ }
+};
+
+file.download('http://some.server.com/download.php',
+ 'cdvfile://localhost/persistent/path/to/downloads/',
+ (file: FileEntry)=> { console.log('File Downloaded to ' + file.fullPath); },
+ (err: FileTransferError) => {
+ console.error('Error ' + err.code);
+ if (err.exception) {
+ console.error('Failed with exception ' + err.exception);
+ }
+ },
+ true,
+ {
+ headers: {
+ "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
+ }
+ });
+
+file.upload('cdvfile://localhost/persistent/path/to/downloads/',
+ 'http://some.server.com/download.php',
+ (result: FileUploadResult)=> { console.log('File uploaded. Bytes uploaded: ' + result.bytesSent); },
+ (err: FileTransferError) => {
+ console.error('Error ' + err.code);
+ if (err.exception) {
+ console.error('Failed with exception ' + err.exception);
+ }
+ },
+ { headers: {"X-Email": "user@mail.com", 'X-Token': "asdf3w234"}, httpMethod: "PUT" },
+ true);
+
+file.abort();
diff --git a/cordova/plugins/FileTransfer.d.ts b/cordova-plugin-file-transfer/index.d.ts
similarity index 95%
rename from cordova/plugins/FileTransfer.d.ts
rename to cordova-plugin-file-transfer/index.d.ts
index 40829668aa..4644dddd42 100644
--- a/cordova/plugins/FileTransfer.d.ts
+++ b/cordova-plugin-file-transfer/index.d.ts
@@ -1,12 +1,12 @@
-// Type definitions for Apache Cordova FileTransfer plugin.
+// Type definitions for Apache Cordova FileTransfer plugin
// Project: https://github.com/apache/cordova-plugin-file-transfer
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc.
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
-///
+///
/**
* The FileTransfer object provides a way to upload files using an HTTP multi-part POST request,
diff --git a/cordova-plugin-file-transfer/tsconfig.json b/cordova-plugin-file-transfer/tsconfig.json
new file mode 100644
index 0000000000..0e88ebb590
--- /dev/null
+++ b/cordova-plugin-file-transfer/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-file-transfer-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-file/cordova-plugin-file-tests.ts b/cordova-plugin-file/cordova-plugin-file-tests.ts
new file mode 100644
index 0000000000..a95872a229
--- /dev/null
+++ b/cordova-plugin-file/cordova-plugin-file-tests.ts
@@ -0,0 +1,40 @@
+///
+///
+
+function fsaccessor(fs: FileSystem) {
+ console.log('FS root is: ' + fs.root.name);
+ var fsreader: DirectoryReader = fs.root.createReader();
+ fsreader.readEntries(
+ (entries: Entry[]) => { console.log(fs.root.name + ' has ' + entries.length + ' child elements'); },
+ (err: FileError)=> { alert('Error: ' + err.code); });
+}
+
+window.requestFileSystem(
+ window.TEMPORARY,
+ 1024 * 1024 * 5,
+ fsaccessor,
+ (err: FileError) => { alert('Error: ' + err.code); }
+);
+
+window.resolveLocalFileSystemURI(cordova.file.applicationDirectory,
+ (entry: Entry)=> {
+ if (entry.isDirectory) {
+ console.log('successfully resolved ' + entry.fullPath + 'directory');
+ console.log(entry.toURL());
+ console.log(entry.toInternalURL());
+ } else {
+ var fentry = entry;
+ fentry.file((f: File) => { console.log(f.slice(f.size - 10, f.size)); });
+ fentry.createWriter((writer: FileWriter)=> {
+ if (writer.readyState == FileWriter.INIT) {
+ console.log('Init FileWriter');
+ writer.write(new Blob(['sdfdsfsdf']));
+ writer.onprogress = function(ev: ProgressEvent) {
+ console.log('Writing ' + ev.target);
+ };
+ }
+ });
+ }
+ },
+ (error: FileError) => { console.log(error.code); }
+);
\ No newline at end of file
diff --git a/cordova/plugins/FileSystem.d.ts b/cordova-plugin-file/index.d.ts
similarity index 98%
rename from cordova/plugins/FileSystem.d.ts
rename to cordova-plugin-file/index.d.ts
index 66a6014dea..765426db50 100644
--- a/cordova/plugins/FileSystem.d.ts
+++ b/cordova-plugin-file/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova File System plugin.
+// Type definitions for Apache Cordova File System plugin
// Project: https://github.com/apache/cordova-plugin-file
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Window {
diff --git a/cordova-plugin-file/tsconfig.json b/cordova-plugin-file/tsconfig.json
new file mode 100644
index 0000000000..ffc80437fa
--- /dev/null
+++ b/cordova-plugin-file/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-file-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-globalization/cordova-plugin-globalization-tests.ts b/cordova-plugin-globalization/cordova-plugin-globalization-tests.ts
new file mode 100644
index 0000000000..0a58703a32
--- /dev/null
+++ b/cordova-plugin-globalization/cordova-plugin-globalization-tests.ts
@@ -0,0 +1,13 @@
+///
+
+navigator.globalization.dateToString(new Date(),
+ (date) => { console.log(JSON.stringify(date)); },
+ (error) => { alert(error.message); },
+ { formatLength: "short", selector: "date" });
+
+navigator.globalization.getDateNames(
+ (names) => {
+ names.value.forEach((name) => { console.log(name); });
+ },
+ (error) => { alert(error.message); },
+ { item: "months", type: "wide" });
\ No newline at end of file
diff --git a/cordova/plugins/Globalization.d.ts b/cordova-plugin-globalization/index.d.ts
similarity index 98%
rename from cordova/plugins/Globalization.d.ts
rename to cordova-plugin-globalization/index.d.ts
index 911127357f..5894bd27d0 100644
--- a/cordova/plugins/Globalization.d.ts
+++ b/cordova-plugin-globalization/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Globalization plugin.
+// Type definitions for Apache Cordova Globalization plugin
// Project: https://github.com/apache/cordova-plugin-globalization
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-globalization/tsconfig.json b/cordova-plugin-globalization/tsconfig.json
new file mode 100644
index 0000000000..c743a2a3ee
--- /dev/null
+++ b/cordova-plugin-globalization/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-globalization-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-inappbrowser/cordova-plugin-inappbrowser-tests.ts b/cordova-plugin-inappbrowser/cordova-plugin-inappbrowser-tests.ts
new file mode 100644
index 0000000000..43b0d28153
--- /dev/null
+++ b/cordova-plugin-inappbrowser/cordova-plugin-inappbrowser-tests.ts
@@ -0,0 +1,15 @@
+///
+
+// InAppBrowser plugin
+//----------------------------------------------------------------------
+
+// signature of window.open() added by InAppBrowser plugin
+// is similar to native window.open signature, so the compiler can's
+// select proper overload, but we cast result to InAppBrowser manually.
+var iab = window.open('google.com', '_self');
+iab.addEventListener('loadstart', (ev: InAppBrowserEvent) => { console.log('Start opening ' + ev.url); });
+iab.show();
+iab.executeScript(
+ { code: "console.log('Injected script in action')" },
+ ()=> { console.log('Script is executed'); }
+);
\ No newline at end of file
diff --git a/cordova/plugins/InAppBrowser.d.ts b/cordova-plugin-inappbrowser/index.d.ts
similarity index 98%
rename from cordova/plugins/InAppBrowser.d.ts
rename to cordova-plugin-inappbrowser/index.d.ts
index 2e52068e16..d5e221ba42 100644
--- a/cordova/plugins/InAppBrowser.d.ts
+++ b/cordova-plugin-inappbrowser/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova InAppBrowser plugin.
+// Type definitions for Apache Cordova InAppBrowser plugin
// Project: https://github.com/apache/cordova-plugin-inappbrowser
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Window {
diff --git a/cordova-plugin-inappbrowser/tsconfig.json b/cordova-plugin-inappbrowser/tsconfig.json
new file mode 100644
index 0000000000..171d99407e
--- /dev/null
+++ b/cordova-plugin-inappbrowser/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-inappbrowser-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-keyboard/cordova-plugin-keyboard-tests.ts b/cordova-plugin-keyboard/cordova-plugin-keyboard-tests.ts
new file mode 100644
index 0000000000..3dce2776bf
--- /dev/null
+++ b/cordova-plugin-keyboard/cordova-plugin-keyboard-tests.ts
@@ -0,0 +1,25 @@
+///
+
+Keyboard.shrinkView(true);
+Keyboard.shrinkView(false);
+Keyboard.hideFormAccessoryBar(true);
+Keyboard.hideFormAccessoryBar(false);
+Keyboard.disableScrollingInShrinkView(true);
+Keyboard.disableScrollingInShrinkView(false);
+if (Keyboard.isVisible) {
+ console.log('Keyboard is visible');
+}
+Keyboard.automaticScrollToTopOnHiding = true;
+Keyboard.onshow = function () {
+ console.log('onshow');
+};
+Keyboard.onhide = function () {
+ console.log('onhide');
+};
+Keyboard.onshowing = function () {
+ console.log('onshowing');
+};
+Keyboard.onhiding= function () {
+ console.log('onhiding');
+};
+
diff --git a/cordova/plugins/Keyboard.d.ts b/cordova-plugin-keyboard/index.d.ts
similarity index 100%
rename from cordova/plugins/Keyboard.d.ts
rename to cordova-plugin-keyboard/index.d.ts
diff --git a/cordova-plugin-keyboard/tsconfig.json b/cordova-plugin-keyboard/tsconfig.json
new file mode 100644
index 0000000000..00a8c3f7c5
--- /dev/null
+++ b/cordova-plugin-keyboard/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-keyboard-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-media-capture/cordova-plugin-capture-tests.ts b/cordova-plugin-media-capture/cordova-plugin-capture-tests.ts
new file mode 100644
index 0000000000..8bd56c714f
--- /dev/null
+++ b/cordova-plugin-media-capture/cordova-plugin-capture-tests.ts
@@ -0,0 +1,13 @@
+///
+
+console.log('Supported audio modes are: ' + JSON.stringify(navigator.device.capture.supportedAudioModes));
+
+navigator.device.capture.captureAudio(
+ (captures: MediaFile[]) => { console.log(captures.length + ' captured'); },
+ (err: CaptureError) => { alert('Error ' + err.message); },
+ {
+ limit: 3,
+ duration: 10
+ }
+);
+
diff --git a/cordova/plugins/MediaCapture.d.ts b/cordova-plugin-media-capture/index.d.ts
similarity index 96%
rename from cordova/plugins/MediaCapture.d.ts
rename to cordova-plugin-media-capture/index.d.ts
index b7c2c9abdf..726c5dac88 100644
--- a/cordova/plugins/MediaCapture.d.ts
+++ b/cordova-plugin-media-capture/index.d.ts
@@ -1,10 +1,10 @@
-// Type definitions for Apache Cordova MediaCapture plugin.
+// Type definitions for Apache Cordova MediaCapture plugin
// Project: https://github.com/apache/cordova-plugin-media-capture
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
interface Navigator {
device: Device;
diff --git a/cordova-plugin-media-capture/tsconfig.json b/cordova-plugin-media-capture/tsconfig.json
new file mode 100644
index 0000000000..807c41c402
--- /dev/null
+++ b/cordova-plugin-media-capture/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-media-capture-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-media/cordova-plugin-media-tests.ts b/cordova-plugin-media/cordova-plugin-media-tests.ts
new file mode 100644
index 0000000000..76e39c8d7b
--- /dev/null
+++ b/cordova-plugin-media/cordova-plugin-media-tests.ts
@@ -0,0 +1,11 @@
+///
+
+// Media and Media Capture
+//----------------------------------------------------------------------
+
+var media = new Media('',
+ () => { console.log('Media opened'); },
+ (err: MediaError) => { alert('Error: ' + err.code); });
+media.play();
+media.setVolume(10);
+
diff --git a/cordova/plugins/Media.d.ts b/cordova-plugin-media/index.d.ts
similarity index 93%
rename from cordova/plugins/Media.d.ts
rename to cordova-plugin-media/index.d.ts
index e99db687c7..77f14d4e0b 100644
--- a/cordova/plugins/Media.d.ts
+++ b/cordova-plugin-media/index.d.ts
@@ -1,10 +1,10 @@
-// Type definitions for Apache Cordova Media plugin.
+// Type definitions for Apache Cordova Media plugin
// Project: https://github.com/apache/cordova-plugin-media
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
declare var Media: {
new (
diff --git a/cordova-plugin-media/tsconfig.json b/cordova-plugin-media/tsconfig.json
new file mode 100644
index 0000000000..7875dd04a0
--- /dev/null
+++ b/cordova-plugin-media/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-media-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-network-information/cordova-plugin-device-motion-tests.ts b/cordova-plugin-network-information/cordova-plugin-device-motion-tests.ts
new file mode 100644
index 0000000000..702aeb5714
--- /dev/null
+++ b/cordova-plugin-network-information/cordova-plugin-device-motion-tests.ts
@@ -0,0 +1,8 @@
+///
+
+var connType = navigator.connection.type;
+if (connType == Connection.WIFI) {
+ console.log('Congratulations, you\'re with fast Internet!');
+}
+
+document.addEventListener('offline', () => { alert('You\'re offline!'); });
diff --git a/cordova/plugins/NetworkInformation.d.ts b/cordova-plugin-network-information/index.d.ts
similarity index 92%
rename from cordova/plugins/NetworkInformation.d.ts
rename to cordova-plugin-network-information/index.d.ts
index 0d49597e3a..4e9457efbd 100644
--- a/cordova/plugins/NetworkInformation.d.ts
+++ b/cordova-plugin-network-information/index.d.ts
@@ -1,10 +1,10 @@
-// Type definitions for Apache Cordova Network Information plugin.
+// Type definitions for Apache Cordova Network Information plugin
// Project: https://github.com/apache/cordova-plugin-network-information
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
+// Copyright (c) Microsoft Open Technologies Inc
+// Licensed under the MIT license
interface Navigator {
/**
diff --git a/cordova-plugin-network-information/tsconfig.json b/cordova-plugin-network-information/tsconfig.json
new file mode 100644
index 0000000000..3c31bfbd8e
--- /dev/null
+++ b/cordova-plugin-network-information/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-network-information-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-splashscreen/cordova-plugin-splashscreen-tests.ts b/cordova-plugin-splashscreen/cordova-plugin-splashscreen-tests.ts
new file mode 100644
index 0000000000..d24720eb1d
--- /dev/null
+++ b/cordova-plugin-splashscreen/cordova-plugin-splashscreen-tests.ts
@@ -0,0 +1,4 @@
+///
+
+navigator.splashscreen.show();
+navigator.splashscreen.hide();
\ No newline at end of file
diff --git a/cordova/plugins/Splashscreen.d.ts b/cordova-plugin-splashscreen/index.d.ts
similarity index 69%
rename from cordova/plugins/Splashscreen.d.ts
rename to cordova-plugin-splashscreen/index.d.ts
index cf2f803762..968b340067 100644
--- a/cordova/plugins/Splashscreen.d.ts
+++ b/cordova-plugin-splashscreen/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Splashscreen plugin.
+// Type definitions for Apache Cordova Splashscreen plugin
// Project: https://github.com/apache/cordova-plugin-splashscreen
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-splashscreen/tsconfig.json b/cordova-plugin-splashscreen/tsconfig.json
new file mode 100644
index 0000000000..032aed70bc
--- /dev/null
+++ b/cordova-plugin-splashscreen/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-splashscreen-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova/plugins/StatusBar-tests.ts b/cordova-plugin-statusbar/cordova-plugin-statusbar-tests.ts
similarity index 91%
rename from cordova/plugins/StatusBar-tests.ts
rename to cordova-plugin-statusbar/cordova-plugin-statusbar-tests.ts
index 01ab0bf945..9d22ca912c 100644
--- a/cordova/plugins/StatusBar-tests.ts
+++ b/cordova-plugin-statusbar/cordova-plugin-statusbar-tests.ts
@@ -1,5 +1,4 @@
-// Licensed under the MIT license.
-
+///
var statusBar: StatusBar = window.StatusBar;
diff --git a/cordova/plugins/StatusBar.d.ts b/cordova-plugin-statusbar/index.d.ts
similarity index 97%
rename from cordova/plugins/StatusBar.d.ts
rename to cordova-plugin-statusbar/index.d.ts
index d5feeaf0ea..8e211f3530 100644
--- a/cordova/plugins/StatusBar.d.ts
+++ b/cordova-plugin-statusbar/index.d.ts
@@ -1,4 +1,4 @@
-// Type definitions for Apache Cordova StatusBar plugin.
+// Type definitions for Apache Cordova StatusBar plugin
// Project: https://github.com/apache/cordova-plugin-statusbar
// Definitions by: Xinkai Chen
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
diff --git a/cordova-plugin-statusbar/tsconfig.json b/cordova-plugin-statusbar/tsconfig.json
new file mode 100644
index 0000000000..c464e89096
--- /dev/null
+++ b/cordova-plugin-statusbar/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-statusbar-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-vibration/cordova-plugin-vibration-tests.ts b/cordova-plugin-vibration/cordova-plugin-vibration-tests.ts
new file mode 100644
index 0000000000..b34cd23675
--- /dev/null
+++ b/cordova-plugin-vibration/cordova-plugin-vibration-tests.ts
@@ -0,0 +1,8 @@
+///
+
+var notification: Notification;
+
+notification.vibrate(100);
+notification.vibrateWithPattern([100, 200, 200, 150, 50], 3);
+setTimeout(notification.cancelVibration, 1000);
+
diff --git a/cordova/plugins/Vibration.d.ts b/cordova-plugin-vibration/index.d.ts
similarity index 87%
rename from cordova/plugins/Vibration.d.ts
rename to cordova-plugin-vibration/index.d.ts
index a9371841ea..192c4781f5 100644
--- a/cordova/plugins/Vibration.d.ts
+++ b/cordova-plugin-vibration/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova Vibration plugin.
+// Type definitions for Apache Cordova Vibration plugin
// Project: https://github.com/apache/cordova-plugin-vibration
-// Definitions by: Microsoft Open Technologies, Inc. , Louis Lagrange
+// Definitions by: Microsoft Open Technologies Inc , Louis Lagrange
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
diff --git a/cordova-plugin-vibration/tsconfig.json b/cordova-plugin-vibration/tsconfig.json
new file mode 100644
index 0000000000..8835563a00
--- /dev/null
+++ b/cordova-plugin-vibration/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-vibration-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-websql/cordova-plugin-websql-tests.ts b/cordova-plugin-websql/cordova-plugin-websql-tests.ts
new file mode 100644
index 0000000000..8679b3d5c3
--- /dev/null
+++ b/cordova-plugin-websql/cordova-plugin-websql-tests.ts
@@ -0,0 +1,16 @@
+///
+
+
+var db = window.openDatabase('Test', '0.1', 'test', 1024 * 1024 * 5);
+db.transaction(
+ (tx: SqlTransaction) => {
+ tx.executeSql('CREATE TABLE Sample IF NOT EXIST...');
+ tx.executeSql('INSERT INTO Sample VALUES...');
+ },
+ (err: SqlError) => {
+ if (err.code = SqlError.SYNTAX_ERR) {
+ alert('Error ' + err.message);
+ }
+ },
+ () => { console.log('Transaction completed successfully'); }
+);
\ No newline at end of file
diff --git a/cordova/plugins/WebSQL.d.ts b/cordova-plugin-websql/index.d.ts
similarity index 94%
rename from cordova/plugins/WebSQL.d.ts
rename to cordova-plugin-websql/index.d.ts
index f51f30cb6b..cb2a0e00e4 100644
--- a/cordova/plugins/WebSQL.d.ts
+++ b/cordova-plugin-websql/index.d.ts
@@ -1,9 +1,9 @@
-// Type definitions for Apache Cordova WebSQL plugin.
+// Type definitions for Apache Cordova WebSQL plugin
// Project: https://github.com/MSOpenTech/cordova-plugin-websql
-// Definitions by: Microsoft Open Technologies, Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Window {
diff --git a/cordova-plugin-websql/tsconfig.json b/cordova-plugin-websql/tsconfig.json
new file mode 100644
index 0000000000..36e7e41481
--- /dev/null
+++ b/cordova-plugin-websql/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "target": "es6",
+ "noImplicitAny": false,
+ "strictNullChecks": false,
+ "noEmit": true
+ },
+ "files": [
+ "index.d.ts",
+ "cordova-plugin-websql-tests.ts"
+ ]
+}
\ No newline at end of file
diff --git a/cordova-plugin-x-socialsharing/cordova-plugin-x-socialsharing-tests.ts b/cordova-plugin-x-socialsharing/cordova-plugin-x-socialsharing-tests.ts
index 1d52b13646..fa1589c04f 100755
--- a/cordova-plugin-x-socialsharing/cordova-plugin-x-socialsharing-tests.ts
+++ b/cordova-plugin-x-socialsharing/cordova-plugin-x-socialsharing-tests.ts
@@ -1,6 +1,5 @@
///
-
window.plugins.socialsharing.iPadPopupCoordinates = function () {
return "100,100,200,300";
};
diff --git a/cordova-plugin-x-socialsharing/index.d.ts b/cordova-plugin-x-socialsharing/index.d.ts
index d498a981be..e99aa3a44f 100644
--- a/cordova-plugin-x-socialsharing/index.d.ts
+++ b/cordova-plugin-x-socialsharing/index.d.ts
@@ -3,6 +3,10 @@
// Definitions by: Markus Wagner
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+interface Window {
+ plugins: Plugins;
+}
+
interface Plugins {
socialsharing: SocialSharingPlugin.SocialSharing;
}
diff --git a/cordova/cordova-tests.ts b/cordova/cordova-tests.ts
index 6ab730af11..8b578b8a15 100644
--- a/cordova/cordova-tests.ts
+++ b/cordova/cordova-tests.ts
@@ -4,6 +4,9 @@
// Apache Cordova core
//----------------------------------------------------------------------
+///
+///
+
console.log('cordova.version: ' + cordova.version + ', cordova.platformId: ' + cordova.platformId);
console.log(typeof window.cordova);
@@ -30,301 +33,6 @@ declare var app: Application;
document.addEventListener('deviceready', () => { app.start(); });
document.addEventListener('pause', ()=> { app.pause(); });
-// Battery status plugin
-//----------------------------------------------------------------------
-window.addEventListener('batterystatus',
- (ev: BatteryStatusEvent) => { console.log('Battery level is ' + ev.level); });
-
-window.addEventListener('batterycritical',
- () => { alert('Battery is critical low!'); });
-
-// Camera plugin
-//----------------------------------------------------------------------
-
-navigator.camera.getPicture(
- (data: string) => { alert('Got photo!'); },
- (message: string)=> { alert('Failed!: ' + message); },
- {
- allowEdit: true,
- cameraDirection: Camera.Direction.BACK,
- destinationType: Camera.DestinationType.FILE_URI,
- encodingType: Camera.EncodingType.JPEG,
- sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
- quality: 80
- });
-
-// Contacts plugin
-//----------------------------------------------------------------------
-
-var contact: Contact = navigator.contacts.create({
- nickname: 'John Smith',
- displayName: 'John Smith',
- phoneNumbers: [{ pref: true, type: "work", value: "+185642556856" }]
-});
-
-navigator.contacts.find(["phoneNumbers"],
- (contacts: Contact[])=> { alert('Find ' + contacts.length + ' contacts'); },
- (error: ContactError) => { alert('Error: ' + error.message); },
- new ContactFindOptions("+1", true)
-);
-
-navigator.contacts.pickContact(
- (contact: Contact)=> { console.log(contact); },
- (err: ContactError)=> { console.log(err.message); }
-);
-
-// Device API
-//----------------------------------------------------------------------
-
-console.log(JSON.stringify(device));
-
-// DeviceMotion plugin
-//----------------------------------------------------------------------
-
-navigator.accelerometer.getCurrentAcceleration(
- (acc: Acceleration) => { console.log('X: ' + acc.x + 'Y: ' + acc.y + 'Z: ' + acc.z); },
- () => { alert('Error!'); });
-
-var acchandle: WatchHandle = navigator.accelerometer.watchAcceleration(
- (acc: Acceleration)=> { console.log('X: ' + acc.x + 'Y: ' + acc.y + 'Z: ' + acc.z); },
- () => { alert('Error!'); },
- { frequency: 10 });
-
-navigator.accelerometer.clearWatch(acchandle);
-
-// DeviceOrientation plugin
-//----------------------------------------------------------------------
-
-navigator.compass.getCurrentHeading(
- (heading: CompassHeading)=> { console.log('Got heading to ' + heading.magneticHeading); },
- (error: CompassError)=> { alert('Error! ' + error.code); },
- { frequency: 10 });
-
-var accelhandle = navigator.compass.watchHeading(
- (heading: CompassHeading) => { console.log('Got heading to ' + heading.magneticHeading); },
- (error: CompassError) => { alert('Error! ' + error.code); },
- { frequency: 10 });
-
-navigator.compass.clearWatch(accelhandle);
-
-// Dialogs plugin
-//----------------------------------------------------------------------
-
-navigator.notification.alert('Alert!', () => { alert('You\'re alerted'); }, 'Alert', 'Ok');
-navigator.notification.confirm('Are you ok?', (choice: number) => { alert('Your choice is ' + choice); });
-
-// FileSystem plugin
-//----------------------------------------------------------------------
-
-function fsaccessor(fs: FileSystem) {
- console.log('FS root is: ' + fs.root.name);
- var fsreader: DirectoryReader = fs.root.createReader();
- fsreader.readEntries(
- (entries: Entry[]) => { console.log(fs.root.name + ' has ' + entries.length + ' child elements'); },
- (err: FileError)=> { alert('Error: ' + err.code); });
-}
-
-window.requestFileSystem(
- window.TEMPORARY,
- 1024 * 1024 * 5,
- fsaccessor,
- (err: FileError) => { alert('Error: ' + err.code); }
-);
-
-window.resolveLocalFileSystemURI(cordova.file.applicationDirectory,
- (entry: Entry)=> {
- if (entry.isDirectory) {
- console.log('successfully resolved ' + entry.fullPath + 'directory');
- console.log(entry.toURL());
- console.log(entry.toInternalURL());
- } else {
- var fentry = entry;
- fentry.file((f: File) => { console.log(f.slice(f.size - 10, f.size)); });
- fentry.createWriter((writer: FileWriter)=> {
- if (writer.readyState == FileWriter.INIT) {
- console.log('Init FileWriter');
- writer.write(new Blob(['sdfdsfsdf']));
- writer.onprogress = function(ev: ProgressEvent) {
- console.log('Writing ' + ev.target);
- };
- }
- });
- }
- },
- (error: FileError) => { console.log(error.code); }
-);
-
-// FileTransfer plugin
-//----------------------------------------------------------------------
-
-var file = new FileTransfer();
-
-file.onprogress = (ev: ProgressEvent) => {
- if (ev.lengthComputable) {
- console.log(ev.loaded + '/' + ev.total);
- }
-};
-
-file.download('http://some.server.com/download.php',
- 'cdvfile://localhost/persistent/path/to/downloads/',
- (file: FileEntry)=> { console.log('File Downloaded to ' + file.fullPath); },
- (err: FileTransferError) => {
- console.error('Error ' + err.code);
- if (err.exception) {
- console.error('Failed with exception ' + err.exception);
- }
- },
- true,
- {
- headers: {
- "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
- }
- });
-
-file.upload('cdvfile://localhost/persistent/path/to/downloads/',
- 'http://some.server.com/download.php',
- (result: FileUploadResult)=> { console.log('File uploaded. Bytes uploaded: ' + result.bytesSent); },
- (err: FileTransferError) => {
- console.error('Error ' + err.code);
- if (err.exception) {
- console.error('Failed with exception ' + err.exception);
- }
- },
- { headers: {"X-Email": "user@mail.com", 'X-Token': "asdf3w234"}, httpMethod: "PUT" },
- true);
-
-file.abort();
-
-file.abort();
-// InAppBrowser plugin
-//----------------------------------------------------------------------
-// signature of window.open() added by InAppBrowser plugin
-// is similar to native window.open signature, so the compiler can's
-// select proper overload, but we cast result to InAppBrowser manually.
-var iab = window.open('google.com', '_self');
-iab.addEventListener('loadstart', (ev: InAppBrowserEvent) => { console.log('Start opening ' + ev.url); });
-iab.show();
-iab.executeScript(
- { code: "console.log('Injected script in action')" },
- ()=> { console.log('Script is executed'); }
-);
-
-// Globalization plugin
-//----------------------------------------------------------------------
-
-navigator.globalization.dateToString(new Date(),
- (date) => { console.log(JSON.stringify(date)); },
- (error) => { alert(error.message); },
- { formatLength: "short", selector: "date" });
-
-navigator.globalization.getDateNames(
- (names) => {
- names.value.forEach((name) => { console.log(name); });
- },
- (error) => { alert(error.message); },
- { item: "months", type: "wide" });
-
-// Media and Media Capture
-//----------------------------------------------------------------------
-
-var media = new Media('',
- () => { console.log('Media opened'); },
- (err: MediaError) => { alert('Error: ' + err.code); });
-media.play();
-media.setVolume(10);
-
-console.log('Supported audio modes are: ' + JSON.stringify(navigator.device.capture.supportedAudioModes));
-
-navigator.device.capture.captureAudio(
- (captures: MediaFile[])=> { console.log(captures.length + ' captured'); },
- (err: CaptureError)=> { alert('Error ' + err.message); },
- {
- limit: 3,
- duration: 10
- });
-
-// Push Notifications
-//----------------------------------------------------------------------
-
-var pushNotification = window.plugins.pushNotification;
-pushNotification.register(
- (regId: string) => { console.log('Successfully registered'); },
- (err: any) => { alert('Error!'); },
- {
- channelName: "your_channel_name",
- ecb: "onNotification"
- });
-
-function onNotification(e: any) {
- navigator.notification.alert(e.text2, () => { }, e.text1);
-}
-
-window.plugins.pushNotification.unregister(() => { }, () => { });
-
-// Network Plugin
-//----------------------------------------------------------------------
-
-var connType = navigator.connection.type;
-if (connType == Connection.WIFI) {
- console.log('Congratulations, you\'re with fast Internet!');
-}
-
-document.addEventListener('offline', () => { alert('You\'re offline!'); });
-
-// SplashScreen plugin
-//----------------------------------------------------------------------
-
-navigator.splashscreen.show();
-navigator.splashscreen.hide();
-
-
-// WebSQL plugin
-//----------------------------------------------------------------------
-
-var db = window.openDatabase('Test', '0.1', 'test', 1024 * 1024 * 5);
-db.transaction(
- (tx: SqlTransaction) => {
- tx.executeSql('CREATE TABLE Sample IF NOT EXIST...');
- tx.executeSql('INSERT INTO Sample VALUES...');
- },
- (err: SqlError) => {
- if (err.code = SqlError.SYNTAX_ERR) {
- alert('Error ' + err.message);
- }
- },
- () => { console.log('Transaction completed successfully'); }
-);
-
-// Vibration plugin
-//----------------------------------------------------------------------
-navigator.notification.vibrate(100);
-navigator.notification.vibrateWithPattern([100, 200, 200, 150, 50], 3);
-setTimeout(navigator.notification.cancelVibration, 1000);
-
-// Keyboard plugin
-//----------------------------------------------------------------------
-Keyboard.shrinkView(true);
-Keyboard.shrinkView(false);
-Keyboard.hideFormAccessoryBar(true);
-Keyboard.hideFormAccessoryBar(false);
-Keyboard.disableScrollingInShrinkView(true);
-Keyboard.disableScrollingInShrinkView(false);
-if (Keyboard.isVisible) {
- console.log('Keyboard is visible');
-}
-Keyboard.automaticScrollToTopOnHiding = true;
-Keyboard.onshow = function () {
- console.log('onshow');
-};
-Keyboard.onhide = function () {
- console.log('onhide');
-};
-Keyboard.onshowing = function () {
- console.log('onshowing');
-};
-Keyboard.onhiding= function () {
- console.log('onhiding');
-};
diff --git a/cordova/index.d.ts b/cordova/index.d.ts
index a830fa4881..30a827ed93 100644
--- a/cordova/index.d.ts
+++ b/cordova/index.d.ts
@@ -1,31 +1,12 @@
// Type definitions for Apache Cordova
// Project: http://cordova.apache.org
-// Definitions by: Microsoft Open Technologies Inc.
+// Definitions by: Microsoft Open Technologies Inc
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
-// Copyright (c) Microsoft Open Technologies, Inc.
+// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
+
interface Cordova {
/** Invokes native functionality by specifying corresponding service name, action and optional parameters.
diff --git a/cordova/plugins/Push.d.ts b/cordova/plugins/Push.d.ts
deleted file mode 100644
index 631cb7f008..0000000000
--- a/cordova/plugins/Push.d.ts
+++ /dev/null
@@ -1,70 +0,0 @@
-// Type definitions for Apache Cordova Push plugin.
-// Project: https://github.com/phonegap-build/PushPlugin
-// Definitions by: Microsoft Open Technologies, Inc.
-// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-//
-// Copyright (c) Microsoft Open Technologies, Inc.
-// Licensed under the MIT license.
-
-interface Window {
- plugins: Plugins
-}
-
-interface Plugins {
- /**
- * This plugin allows to receive push notifications. The Android implementation uses
- * Google's GCM (Google Cloud Messaging) service,
- * whereas the iOS version is based on Apple APNS Notifications
- */
- pushNotification: PushNotification
-}
-
-/**
- * This plugin allows to receive push notifications. The Android implementation uses
- * Google's GCM (Google Cloud Messaging) service,
- * whereas the iOS version is based on Apple APNS Notifications
- */
-interface PushNotification {
- /**
- * Registers as push notification receiver.
- * @param successCallback Called when a plugin method returns without error.
- * @param errorCallback Called when the plugin returns an error.
- * @param registrationOptions Options for registration process.
- */
- register(
- successCallback: (registrationId: string) => void,
- errorCallback: (error: any) => void,
- registrationOptions: RegistrationOptions): void;
- /**
- * Unregisters as push notification receiver.
- * @param successCallback Called when a plugin method returns without error.
- * @param errorCallback Called when the plugin returns an error.
- */
- unregister(
- successCallback: (result: any) => void,
- errorCallback: (error: any) => void): void;
- /**
- * Sets the badge count visible when the app is not running. iOS only.
- * @param successCallback Called when a plugin method returns without error.
- * @param errorCallback Called when the plugin returns an error.
- * @param badgeCount An integer indicating what number should show up in the badge. Passing 0 will clear the badge.
- */
- setApplicationIconBadgeNumber(
- successCallback: (result: any) => void,
- errorCallback: (error: any) => void,
- badgeCount: number): void;
-}
-
-/** Options for registration process. */
-interface RegistrationOptions {
- /** This is the Google project ID you need to obtain by registering your application for GCM. Android only */
- senderID?: string;
- /** WP8 only */
- channelName?: string;
- /** Callback, that is fired when notification arrived */
- ecb?: string;
- badge?: boolean;
- sound?: boolean;
- alert?: boolean
-}
-
diff --git a/cordova/tsconfig.json b/cordova/tsconfig.json
index e70b5ee0a5..b09d75d7b1 100644
--- a/cordova/tsconfig.json
+++ b/cordova/tsconfig.json
@@ -2,15 +2,9 @@
"compilerOptions": {
"module": "commonjs",
"target": "es6",
- "noImplicitAny": true,
+ "noImplicitAny": false,
"strictNullChecks": false,
- "baseUrl": "../",
- "typeRoots": [
- "../"
- ],
- "types": [],
- "noEmit": true,
- "forceConsistentCasingInFileNames": true
+ "noEmit": true
},
"files": [
"index.d.ts",
diff --git a/d3-array/d3-array-tests.ts b/d3-array/d3-array-tests.ts
index 3ec1a8fcfd..7183320b71 100644
--- a/d3-array/d3-array-tests.ts
+++ b/d3-array/d3-array-tests.ts
@@ -6,7 +6,7 @@
* are not intended as functional tests.
*/
-import * as d3 from 'd3-array';
+import * as d3Array from 'd3-array';
import { scaleTime } from 'd3-scale';
import { timeYear } from 'd3-time';
@@ -47,8 +47,8 @@ let date: Date;
let extentNum: [number, number];
let extentStr: [string, string];
let extentNumeric: [NumCoercible, NumCoercible];
-let extentDateMixed: [d3.Primitive, d3.Primitive];
-let extentMixed: [d3.Primitive | NumCoercible, d3.Primitive | NumCoercible];
+let extentDateMixed: [d3Array.Primitive, d3Array.Primitive];
+let extentMixed: [d3Array.Primitive | NumCoercible, d3Array.Primitive | NumCoercible];
let extentDate: [Date, Date];
let numbersArray = [10, 20, 30, 40, 50];
@@ -72,35 +72,35 @@ let mixedObjectArray = [
// without accessors
-num = d3.max(numbersArray);
-str = d3.max(stringyNumbersArray);
-numeric = d3.max(numericArray);
-date = d3.max(dateArray);
+num = d3Array.max(numbersArray);
+str = d3Array.max(stringyNumbersArray);
+numeric = d3Array.max(numericArray);
+date = d3Array.max(dateArray);
// with accessors
-num = d3.max(mixedObjectArray, function (datum, index, array) {
+num = d3Array.max(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.num;
});
-str = d3.max(mixedObjectArray, function (datum, index, array) {
+str = d3Array.max(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.str;
});
-numeric = d3.max(mixedObjectArray, function (datum, index, array) {
+numeric = d3Array.max(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.numeric;
});
-date = d3.max(mixedObjectArray, function (datum, index, array) {
+date = d3Array.max(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -111,35 +111,35 @@ date = d3.max(mixedObjectArray, function (datum, index, array) {
// without accessors
-num = d3.min(numbersArray);
-str = d3.min(stringyNumbersArray);
-numeric = d3.min(numericArray);
-date = d3.min(dateArray);
+num = d3Array.min(numbersArray);
+str = d3Array.min(stringyNumbersArray);
+numeric = d3Array.min(numericArray);
+date = d3Array.min(dateArray);
// with accessors
-num = d3.min(mixedObjectArray, function (datum, index, array) {
+num = d3Array.min(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.num;
});
-str = d3.min(mixedObjectArray, function (datum, index, array) {
+str = d3Array.min(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.str;
});
-numeric = d3.min(mixedObjectArray, function (datum, index, array) {
+numeric = d3Array.min(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.numeric;
});
-date = d3.min(mixedObjectArray, function (datum, index, array) {
+date = d3Array.min(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -150,36 +150,36 @@ date = d3.min(mixedObjectArray, function (datum, index, array) {
// without accessors
-extentNum = d3.extent(numbersArray);
-extentStr = d3.extent(stringyNumbersArray);
-extentNumeric = d3.extent(numericArray);
-extentDate = d3.extent(dateArray);
-extentMixed = d3.extent([new NumCoercible(10), 13, '12', true]);
+extentNum = d3Array.extent(numbersArray);
+extentStr = d3Array.extent(stringyNumbersArray);
+extentNumeric = d3Array.extent(numericArray);
+extentDate = d3Array.extent(dateArray);
+extentMixed = d3Array.extent([new NumCoercible(10), 13, '12', true]);
// with accessors
-extentNum = d3.extent(mixedObjectArray, function (datum, index, array) {
+extentNum = d3Array.extent(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.num;
});
-extentStr = d3.extent(mixedObjectArray, function (datum, index, array) {
+extentStr = d3Array.extent(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.str;
});
-extentMixed = d3.extent(mixedObjectArray, function (datum, index, array) {
+extentMixed = d3Array.extent(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
return datum.numeric;
});
-extentDateMixed = d3.extent(mixedObjectArray, function (datum, index, array) {
+extentDateMixed = d3Array.extent(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -188,9 +188,9 @@ extentDateMixed = d3.extent(mixedObjectArray, function (datum, index, array) {
// mean() ----------------------------------------------------------------------
-num = d3.mean(numbersArray);
+num = d3Array.mean(numbersArray);
-num = d3.mean(mixedObjectArray, function (datum, index, array) {
+num = d3Array.mean(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -199,9 +199,9 @@ num = d3.mean(mixedObjectArray, function (datum, index, array) {
// median() --------------------------------------------------------------------
-num = d3.median(numbersArray);
+num = d3Array.median(numbersArray);
-num = d3.median(mixedObjectArray, function (datum, index, array) {
+num = d3Array.median(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -210,9 +210,9 @@ num = d3.median(mixedObjectArray, function (datum, index, array) {
// quantile() ------------------------------------------------------------------
-num = d3.quantile(numbersArray, 0.5);
+num = d3Array.quantile(numbersArray, 0.5);
-num = d3.quantile(mixedObjectArray, 0.5, function (datum, index, array) {
+num = d3Array.quantile(mixedObjectArray, 0.5, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -222,9 +222,9 @@ num = d3.quantile(mixedObjectArray, 0.5, function (datum, index, array) {
// sum() -----------------------------------------------------------------------
-num = d3.sum(numbersArray);
+num = d3Array.sum(numbersArray);
-num = d3.sum(mixedObjectArray, function (datum, index, array) {
+num = d3Array.sum(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -233,9 +233,9 @@ num = d3.sum(mixedObjectArray, function (datum, index, array) {
// deviation() -----------------------------------------------------------------
-num = d3.deviation(numbersArray);
+num = d3Array.deviation(numbersArray);
-num = d3.deviation(mixedObjectArray, function (datum, index, array) {
+num = d3Array.deviation(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -244,9 +244,9 @@ num = d3.deviation(mixedObjectArray, function (datum, index, array) {
// variance() ------------------------------------------------------------------
-num = d3.variance(numbersArray);
+num = d3Array.variance(numbersArray);
-num = d3.variance(mixedObjectArray, function (datum, index, array) {
+num = d3Array.variance(mixedObjectArray, function (datum, index, array) {
let d: MixedObject = datum;
let i: number = index;
let arr: Array = array;
@@ -259,65 +259,65 @@ num = d3.variance(mixedObjectArray, function (datum, index, array) {
// scan() ----------------------------------------------------------------------
-num = d3.scan(mixedObjectArray, function (a, b) {
+num = d3Array.scan(mixedObjectArray, function (a, b) {
return a.num - b.num; // a and b are of type MixedObject
});
// bisectLeft() ----------------------------------------------------------------
-num = d3.bisectLeft([0, 2, 3, 4, 7, 8], 4);
-num = d3.bisectLeft([0, 2, 3, 4, 7, 8], 4, 1);
-num = d3.bisectLeft([0, 2, 3, 4, 7, 8], 4, 1, 4);
+num = d3Array.bisectLeft([0, 2, 3, 4, 7, 8], 4);
+num = d3Array.bisectLeft([0, 2, 3, 4, 7, 8], 4, 1);
+num = d3Array.bisectLeft([0, 2, 3, 4, 7, 8], 4, 1, 4);
-num = d3.bisectLeft(['0', '2', '3', '4', '7', '8'], '21');
-num = d3.bisectLeft(['0', '2', '3', '4', '7', '8'], '21', 1);
-num = d3.bisectLeft(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
+num = d3Array.bisectLeft(['0', '2', '3', '4', '7', '8'], '21');
+num = d3Array.bisectLeft(['0', '2', '3', '4', '7', '8'], '21', 1);
+num = d3Array.bisectLeft(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
-num = d3.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
-num = d3.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
-num = d3.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
+num = d3Array.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
+num = d3Array.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
+num = d3Array.bisectLeft([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
// bisectRight() ---------------------------------------------------------------
-num = d3.bisectRight([0, 2, 3, 4, 7, 8], 4);
-num = d3.bisectRight([0, 2, 3, 4, 7, 8], 4, 1);
-num = d3.bisectRight([0, 2, 3, 4, 7, 8], 4, 1, 4);
+num = d3Array.bisectRight([0, 2, 3, 4, 7, 8], 4);
+num = d3Array.bisectRight([0, 2, 3, 4, 7, 8], 4, 1);
+num = d3Array.bisectRight([0, 2, 3, 4, 7, 8], 4, 1, 4);
-num = d3.bisectRight(['0', '2', '3', '4', '7', '8'], '21');
-num = d3.bisectRight(['0', '2', '3', '4', '7', '8'], '21', 1);
-num = d3.bisectRight(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
+num = d3Array.bisectRight(['0', '2', '3', '4', '7', '8'], '21');
+num = d3Array.bisectRight(['0', '2', '3', '4', '7', '8'], '21', 1);
+num = d3Array.bisectRight(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
-num = d3.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
-num = d3.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
-num = d3.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
+num = d3Array.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
+num = d3Array.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
+num = d3Array.bisectRight([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
// bisect() --------------------------------------------------------------------
-num = d3.bisect([0, 2, 3, 4, 7, 8], 4);
-num = d3.bisect([0, 2, 3, 4, 7, 8], 4, 1);
-num = d3.bisect([0, 2, 3, 4, 7, 8], 4, 1, 4);
+num = d3Array.bisect([0, 2, 3, 4, 7, 8], 4);
+num = d3Array.bisect([0, 2, 3, 4, 7, 8], 4, 1);
+num = d3Array.bisect([0, 2, 3, 4, 7, 8], 4, 1, 4);
-num = d3.bisect(['0', '2', '3', '4', '7', '8'], '21');
-num = d3.bisect(['0', '2', '3', '4', '7', '8'], '21', 1);
-num = d3.bisect(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
+num = d3Array.bisect(['0', '2', '3', '4', '7', '8'], '21');
+num = d3Array.bisect(['0', '2', '3', '4', '7', '8'], '21', 1);
+num = d3Array.bisect(['0', '2', '3', '4', '7', '8'], '21', 1, 4);
-num = d3.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
-num = d3.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
-num = d3.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
+num = d3Array.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1));
+num = d3Array.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1);
+num = d3Array.bisect([new Date(2010, 1, 1), new Date(2011, 1, 1), new Date(2012, 1, 1), new Date(2013, 1, 1)], new Date(2011, 2, 1), 1, 2);
// bisector() ------------------------------------------------------------------
mixedObjectArray.sort(function (a, b) { return a.date.valueOf() - b.date.valueOf(); });
-let mixedObjectDateBisectorObject: d3.Bisector;
+let mixedObjectDateBisectorObject: d3Array.Bisector;
// define using accessor
-mixedObjectDateBisectorObject = d3.bisector(function (el) {
+mixedObjectDateBisectorObject = d3Array.bisector(function (el) {
return el.date;
});
// define using comparator
-mixedObjectDateBisectorObject = d3.bisector(function (el, x) {
+mixedObjectDateBisectorObject = d3Array.bisector(function (el, x) {
return el.date.valueOf() - x.valueOf();
});
@@ -334,15 +334,15 @@ num = mixedObjectDateBisectorObject.right(mixedObjectArray, new Date(2015, 3, 14
// ascending() -----------------------------------------------------------------
-num = d3.ascending(10, 20);
-num = d3.ascending('10', '20');
-num = d3.ascending(new Date(2016, 6, 13), new Date(2016, 6, 14));
+num = d3Array.ascending(10, 20);
+num = d3Array.ascending('10', '20');
+num = d3Array.ascending(new Date(2016, 6, 13), new Date(2016, 6, 14));
// descending() ----------------------------------------------------------------
-num = d3.descending(10, 20);
-num = d3.descending('10', '20');
-num = d3.descending(new Date(2016, 6, 13), new Date(2016, 6, 14));
+num = d3Array.descending(10, 20);
+num = d3Array.descending('10', '20');
+num = d3Array.descending(new Date(2016, 6, 13), new Date(2016, 6, 14));
// -----------------------------------------------------------------------------
// Test Transforming Arrays
@@ -367,20 +367,20 @@ let testArrays: MixedObject[][] = [
let mergedArray: MixedObject[];
-mergedArray = d3.merge(testArrays); // inferred type
-mergedArray = d3.merge(testArrays); // explicit type
+mergedArray = d3Array.merge(testArrays); // inferred type
+mergedArray = d3Array.merge(testArrays); // explicit type
// mergedArray = d3.merge([[10, 40, 30], [15, 30]]); // fails, type mismatch
// pairs() ---------------------------------------------------------------------
let pairs: Array<[MixedObject, MixedObject]>;
-pairs = d3.pairs(mergedArray);
+pairs = d3Array.pairs(mergedArray);
// permute() -------------------------------------------------------------------
// getting a permutation of array elements
-mergedArray = d3.permute(mergedArray, [1, 0, 2, 5, 3, 4, 6]);
+mergedArray = d3Array.permute(mergedArray, [1, 0, 2, 5, 3, 4, 6]);
// Getting an ordered array with object properties
@@ -391,35 +391,35 @@ let testObject = {
more: [10, 30, 40]
};
-let x: Array = d3.permute(testObject, ['name', 'val', 'when', 'more']);
+let x: Array = d3Array.permute(testObject, ['name', 'val', 'when', 'more']);
// range() ---------------------------------------------------------------------
-numbersArray = d3.range(10);
-numbersArray = d3.range(1, 10);
-numbersArray = d3.range(1, 10, 0.5);
+numbersArray = d3Array.range(10);
+numbersArray = d3Array.range(1, 10);
+numbersArray = d3Array.range(1, 10, 0.5);
// shuffle() -------------------------------------------------------------------
-mergedArray = d3.shuffle(mergedArray);
+mergedArray = d3Array.shuffle(mergedArray);
-mergedArray = d3.shuffle(mergedArray, 1);
+mergedArray = d3Array.shuffle(mergedArray, 1);
-mergedArray = d3.shuffle(mergedArray, 1, 3);
+mergedArray = d3Array.shuffle(mergedArray, 1, 3);
// ticks() ---------------------------------------------------------------------
-numbersArray = d3.ticks(1, 10, 5);
+numbersArray = d3Array.ticks(1, 10, 5);
// tickStep() ------------------------------------------------------------------
-numbersArray = d3.tickStep(1, 10, 5);
+numbersArray = d3Array.tickStep(1, 10, 5);
// transpose() -----------------------------------------------------------------
-testArrays = d3.transpose([
+testArrays = d3Array.transpose([
[
new MixedObject(10, new Date(2016, 6, 1)),
new MixedObject(50, new Date(2017, 4, 15))
@@ -432,7 +432,7 @@ testArrays = d3.transpose([
// zip() -----------------------------------------------------------------------
-testArrays = d3.zip(
+testArrays = d3Array.zip(
[
new MixedObject(10, new Date(2016, 6, 1)),
new MixedObject(20, new Date(2016, 7, 30)),
@@ -454,11 +454,11 @@ let tScale = scaleTime();
// Create histogram generator ==================================================
-let defaultHistogram: d3.HistogramGenerator;
-defaultHistogram = d3.histogram();
+let defaultHistogram: d3Array.HistogramGenerator;
+defaultHistogram = d3Array.histogram();
-let testHistogram: d3.HistogramGenerator;
-testHistogram = d3.histogram();
+let testHistogram: d3Array.HistogramGenerator;
+testHistogram = d3Array.histogram();
// Configure histogram generator ===============================================
@@ -501,7 +501,7 @@ domainAccessorFn = testHistogram.domain();
defaultHistogram = defaultHistogram.thresholds(3);
// with threshold count generator
-defaultHistogram = defaultHistogram.thresholds(d3.thresholdScott);
+defaultHistogram = defaultHistogram.thresholds(d3Array.thresholdScott);
// with thresholds value array
@@ -518,10 +518,10 @@ testHistogram = testHistogram.thresholds(tScale.ticks(timeYear));
// Use histogram generator =====================================================
-let defaultBins: Array>;
+let defaultBins: Array>;
defaultBins = defaultHistogram([-1, 0, 1, 1, 3, 20, 234]);
-let defaultBin: d3.Bin;
+let defaultBin: d3Array.Bin;
defaultBin = defaultBins[0];
num = defaultBin.length; // defaultBin is array
@@ -529,10 +529,10 @@ num = defaultBin[0]; // with element type number
num = defaultBin.x0; // bin lower bound is number
num = defaultBin.x1; // bin upper bound is number
-let testBins: Array>;
+let testBins: Array>;
testBins = testHistogram(mixedObjectArray);
-let testBin: d3.Bin;
+let testBin: d3Array.Bin;
testBin = testBins[0];
num = testBin.length; // defaultBin is array
@@ -544,8 +544,8 @@ date = testBin.x1; // bin upper bound is Date
// Histogram Tresholds =========================================================
-num = d3.thresholdFreedmanDiaconis([-1, 0, 1, 1, 3, 20, 234], -1, 234);
+num = d3Array.thresholdFreedmanDiaconis([-1, 0, 1, 1, 3, 20, 234], -1, 234);
-num = d3.thresholdScott([-1, 0, 1, 1, 3, 20, 234], -1, 234);
+num = d3Array.thresholdScott([-1, 0, 1, 1, 3, 20, 234], -1, 234);
-num = d3.thresholdSturges([-1, 0, 1, 1, 3, 20, 234]);
+num = d3Array.thresholdSturges([-1, 0, 1, 1, 3, 20, 234]);
diff --git a/d3-array/index.d.ts b/d3-array/index.d.ts
index 40563fa880..933f59e5a6 100644
--- a/d3-array/index.d.ts
+++ b/d3-array/index.d.ts
@@ -157,7 +157,7 @@ export function sum(array: T[], accessor: (datum: T, index: number, array: T[
export function deviation(array: number[]): number | undefined;
/**
- * Compute the standard deviation, defined as the square root of the bias-corrected variance, of the given array,
+ * Compute the standard deviation, defined as the square root of the bias-corrected variance, of the given array,
* using the given accessor to convert values to numbers.
*/
export function deviation(array: T[], accessor: (datum: T, index: number, array: T[]) => number): number | undefined;
@@ -255,7 +255,7 @@ export function range(start: number, stop: number, step?: number): number[];
export function shuffle(array: T[], lo?: number, hi?: number): T[];
/**
- * Generate an array of approximately count + 1 uniformly-spaced, nicely-rounded values between start and stop (inclusive).
+ * Generate an array of approximately count + 1 uniformly-spaced, nicely-rounded values between start and stop (inclusive).
*/
export function ticks(start: number, stop: number, count: number): number[];
@@ -274,7 +274,7 @@ export function transpose(matrix: T[][]): T[][];
/**
* Returns an array of arrays, where the ith array contains the ith element from each of the argument arrays.
- * The returned array is truncated in length to the shortest array in arrays. If arrays contains only a single array, the returned array
+ * The returned array is truncated in length to the shortest array in arrays. If arrays contains only a single array, the returned array
* contains one-element arrays. With no arguments, the returned array is empty.
*/
export function zip(...arrays: T[][]): T[][];
@@ -311,7 +311,7 @@ export interface HistogramGenerator {
/**
* Divide the domain uniformly into approximately count bins. IMPORTANT: This threshold
* setting approach only works, when the materialized values are numbers!
- *
+ *
* @param count The desired number of uniform bins.
*/
thresholds(count: number): this;
@@ -319,10 +319,10 @@ export interface HistogramGenerator {
* Set a threshold accessor function, which returns the desired number of bins.
* Divides the domain uniformly into approximately count bins. IMPORTANT: This threshold
* setting approach only works, when the materialized values are numbers!
- *
+ *
* @param count A function which accepts as arguments the array of materialized values, and
* optionally the domain minimum and maximum. The function calcutates and returns the suggested
- * number of bins.
+ * number of bins.
*/
thresholds(count: ThresholdCountGenerator): this;
/**
@@ -332,12 +332,12 @@ export interface HistogramGenerator {
*/
thresholds(thresholds: Value[]): this;
/**
- * Set a threshold accessor function, which returns the array of values to be used as
+ * Set a threshold accessor function, which returns the array of values to be used as
* thresholds in determining the bins.
- *
+ *
* @param thresholds A function which accepts as arguments the array of materialized values, and
- * optionally the domain minimum and maximum. The function calcutates and returns the array of values to be used as
- * thresholds in determining the bins.
+ * optionally the domain minimum and maximum. The function calcutates and returns the array of values to be used as
+ * thresholds in determining the bins.
*/
thresholds(thresholds: ThresholdArrayGenerator): this;
}
@@ -354,4 +354,3 @@ export function thresholdFreedmanDiaconis(values: number[], min: number, max: nu
export function thresholdScott(values: number[], min: number, max: number): number; // of type ThresholdCountGenerator
export function thresholdSturges(values: number[]): number; // of type ThresholdCountGenerator
-
diff --git a/d3-axis/d3-axis-tests.ts b/d3-axis/d3-axis-tests.ts
index 54fa6479c5..a95c58c8b3 100644
--- a/d3-axis/d3-axis-tests.ts
+++ b/d3-axis/d3-axis-tests.ts
@@ -13,6 +13,7 @@ import {
scaleOrdinal,
ScaleOrdinal,
scalePow,
+ ScalePower,
scaleTime,
ScaleTime,
} from 'd3-scale';
@@ -70,11 +71,17 @@ let leftAxis: d3Axis.Axis = d3Axis.axisLeft(scal
// scale(...) ----------------------------------------------------------------
leftAxis = leftAxis.scale(scalePow());
+let powerScale: ScalePower = leftAxis.scale>();
+// powerScale = leftAxis.scale(); // fails, without casting as AxisScale is purposely generic
+
+
+bottomAxis = bottomAxis.scale(scaleOrdinal());
// bottomAxis = bottomAxis.scale(scalePow()) // fails, domain of scale incompatible with domain of axis
let axisScale: d3Axis.AxisScale = bottomAxis.scale();
-// let ordinalScale: ScaleOrdinal = bottomAxis.scale(); // fails, without casting as AxisScale is purposely generic
+let ordinalScale: ScaleOrdinal = bottomAxis.scale>();
+// ordinalScale = bottomAxis.scale(); // fails, without casting as AxisScale is purposely generic
// ticks(...) ----------------------------------------------------------------
diff --git a/d3-axis/index.d.ts b/d3-axis/index.d.ts
index 33c3b2927f..233dd5f40d 100644
--- a/d3-axis/index.d.ts
+++ b/d3-axis/index.d.ts
@@ -1,11 +1,10 @@
// Type definitions for D3JS d3-axis module 1.0.0
// Project: https://github.com/d3/d3-axis/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
import { Selection, TransitionLike } from 'd3-selection';
-
// --------------------------------------------------------------------------
// Shared Types and Interfaces
// --------------------------------------------------------------------------
@@ -67,14 +66,14 @@ export interface Axis {
/**
* Gets the current scale underlying the axis.
*/
- scale(): AxisScale;
+ scale>(): A;
/**
* Sets the scale and returns the axis.
*
* @param scale The scale to be used for axis generation
*/
- scale(scale: AxisScale): Axis;
+ scale(scale: AxisScale): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
@@ -82,7 +81,7 @@ export interface Axis {
* @param count Number of ticks that should be rendered
* @param specifier An optional format specifier to customize how the tick values are formatted.
*/
- ticks(count: number, specifier?: string): Axis;
+ ticks(count: number, specifier?: string): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
@@ -92,12 +91,12 @@ export interface Axis {
* in d3-time. E.g. as obtained by passing in d3.timeMinute.every(15).
* @param specifier An optional format specifier to customize how the tick values are formatted.
*/
- ticks(interval: AxisTimeInterval, specifier?: string): Axis;
+ ticks(interval: AxisTimeInterval, specifier?: string): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
*/
- ticks(arg0: any, ...args: any[]): Axis;
+ ticks(arg0: any, ...args: any[]): this;
/**
* Get an array containing the currently set arguments to be passed into scale.ticks and scale.tickFormat.
@@ -109,7 +108,7 @@ export interface Axis {
*
* @param args An array containing a single element representing the count, i.e. number of ticks to be rendered.
*/
- tickArguments(args: [number]): Axis;
+ tickArguments(args: [number]): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
@@ -117,7 +116,7 @@ export interface Axis {
* @param args An array containing two elements. The first element represents the count, i.e. number of ticks to be rendered. The second
* element is a string representing the format specifier to customize how the tick values are formatted.
*/
- tickArguments(args: [number, string]): Axis;
+ tickArguments(args: [number, string]): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
@@ -126,7 +125,7 @@ export interface Axis {
* @param args An array containing a single element representing a time interval used to generate date-based ticks.
* This is typically a TimeInterval/CountableTimeInterval as defined in d3-time. E.g. as obtained by passing in d3.timeMinute.every(15).
*/
- tickArguments(args: [AxisTimeInterval]): Axis;
+ tickArguments(args: [AxisTimeInterval]): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
@@ -136,14 +135,14 @@ export interface Axis {
* This is typically a TimeInterval/CountableTimeInterval as defined in d3-time. E.g. as obtained by passing in d3.timeMinute.every(15).
* The second element is a string representing the format specifier to customize how the tick values are formatted.
*/
- tickArguments(args: [AxisTimeInterval, string]): Axis;
+ tickArguments(args: [AxisTimeInterval, string]): this;
/**
* Sets the arguments that will be passed to scale.ticks and scale.tickFormat when the axis is rendered, and returns the axis generator.
*
* @param args An array with arguments suitable for the scale to be used for tick generation
*/
- tickArguments(args: any[]): Axis;
+ tickArguments(args: any[]): this;
/**
* Returns the current tick values, which defaults to null.
@@ -158,14 +157,14 @@ export interface Axis {
*
* @param values An array with values from the Domain of the scale underlying the axis.
*/
- tickValues(values: Domain[]): Axis;
+ tickValues(values: Domain[]): this;
/**
* Clears any previously-set explicit tick values and reverts back to the scale’s tick generator.
*
* @param values null
*/
- tickValues(values: null): Axis;
+ tickValues(values: null): this;
/**
@@ -179,7 +178,7 @@ export interface Axis {
* @param format A function mapping a value from the axis Domain to a formatted string
* for display purposes.
*/
- tickFormat(format: (domainValue: Domain) => string): Axis;
+ tickFormat(format: (domainValue: Domain) => string): this;
/**
* Reset the tick format function. A null format indicates that the scale’s
@@ -189,7 +188,7 @@ export interface Axis {
*
* @param format null
*/
- tickFormat(format: null): Axis;
+ tickFormat(format: null): this;
/**
* Get the current inner tick size, which defaults to 6.
@@ -200,7 +199,7 @@ export interface Axis {
*
* @param size Tick size in pixels (Default is 6).
*/
- tickSize(size: number): Axis;
+ tickSize(size: number): this;
/**
* Get the current inner tick size, which defaults to 6.
@@ -216,7 +215,7 @@ export interface Axis {
*
* @param size Tick size in pixels (Default is 6).
*/
- tickSizeInner(size: number): Axis;
+ tickSizeInner(size: number): this;
/**
* Get the current outer tick size, which defaults to 6.
@@ -240,7 +239,7 @@ export interface Axis {
*
* @param size Tick size in pixels (Default is 6).
*/
- tickSizeOuter(size: number): Axis;
+ tickSizeOuter(size: number): this;
/**
* Get the current padding, which defaults to 3.
@@ -252,7 +251,7 @@ export interface Axis {
*
* @param padding Padding in pixels (Default is 3).
*/
- tickPadding(padding: number): Axis;
+ tickPadding(padding: number): this;
}
diff --git a/d3-brush/index.d.ts b/d3-brush/index.d.ts
index a91946b5c9..bfca8da856 100644
--- a/d3-brush/index.d.ts
+++ b/d3-brush/index.d.ts
@@ -1,9 +1,9 @@
// Type definitions for D3JS d3-brush module 1.0.1
// Project: https://github.com/d3/d3-brush/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-import { ArrayLike, Selection, TransitionLike } from 'd3-selection';
+import { ArrayLike, Selection, TransitionLike, ValueFn } from 'd3-selection';
/**
* Type alias for a BrushSelection. For a two-dimensional brush, it must be defined as [[x0, y0], [x1, y1]],
@@ -15,20 +15,20 @@ export type BrushSelection = [[number, number], [number, number]] | [number, num
export interface BrushBehavior {
(group: Selection, ...args: any[]): void;
- move(group: Selection, selection: BrushSelection): BrushBehavior;
- move(group: Selection, selection: (this: SVGGElement, d?: Datum, i?: number, group?: Array | ArrayLike) => BrushSelection): BrushBehavior;
- move(group: TransitionLike, selection: BrushSelection): BrushBehavior;
- move(group: TransitionLike, selection: (this: SVGGElement, d?: Datum, i?: number, group?: Array | ArrayLike) => BrushSelection): BrushBehavior;
- extent(): (this: SVGGElement, d: Datum, i: number, group: Array | ArrayLike) => [[number, number], [number, number]];
- extent(extent: [[number, number], [number, number]]): BrushBehavior;
- extent(extent: (this: SVGGElement, d: Datum, i: number, group: Array | ArrayLike) => [[number, number], [number, number]]): BrushBehavior;
- filter(): (this: SVGGElement, datum: Datum, index: number, group: Array | ArrayLike) => boolean;
- filter(filterFn: (this: SVGGElement, datum: Datum, index: number, group: Array | ArrayLike) => boolean): BrushBehavior;
+ move(group: Selection, selection: BrushSelection): void;
+ move(group: Selection, selection: ValueFn): void;
+ move(group: TransitionLike, selection: BrushSelection): void;
+ move(group: TransitionLike, selection: ValueFn): void;
+ extent(): ValueFn;
+ extent(extent: [[number, number], [number, number]]): this;
+ extent(extent: ValueFn): this;
+ filter(): ValueFn;
+ filter(filterFn: ValueFn): this;
handleSize(): number;
- handleSize(size: number): BrushBehavior;
- on(typenames: string): (this: SVGGElement, datum: Datum, index: number, group: Array | ArrayLike) => void;
- on(typenames: string, callback: null): BrushBehavior;
- on(typenames: string, callback: (this: SVGGElement, datum: Datum, index: number, group: Array | ArrayLike) => void): BrushBehavior;
+ handleSize(size: number): this;
+ on(typenames: string): ValueFn;
+ on(typenames: string, callback: null): this;
+ on(typenames: string, callback: ValueFn): this;
}
diff --git a/d3-chord/index.d.ts b/d3-chord/index.d.ts
index 3c232c15a6..f78cb62b78 100644
--- a/d3-chord/index.d.ts
+++ b/d3-chord/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for D3JS d3-chord module 1.0.0
// Project: https://github.com/d3/d3-chord/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// ---------------------------------------------------------------------
@@ -34,16 +34,16 @@ export interface Chords extends Array {
export interface ChordLayout {
(matrix: number[][]): Chords;
padAngle(): number;
- padAngle(angle: number): ChordLayout;
+ padAngle(angle: number): this;
sortGroups(): ((a: number, b: number) => number) | null;
- sortGroups(compare: null): ChordLayout;
- sortGroups(compare: (a: number, b: number) => number): ChordLayout;
+ sortGroups(compare: null): this;
+ sortGroups(compare: (a: number, b: number) => number): this;
sortSubgroups(): ((a: number, b: number) => number) | null;
- sortSubgroups(compare: null): ChordLayout;
- sortSubgroups(compare: (a: number, b: number) => number): ChordLayout;
+ sortSubgroups(compare: null): this;
+ sortSubgroups(compare: (a: number, b: number) => number): this;
sortChords(): ((a: number, b: number) => number) | null;
- sortChords(compare: null): ChordLayout;
- sortChords(compare: (a: number, b: number) => number): ChordLayout;
+ sortChords(compare: null): this;
+ sortChords(compare: (a: number, b: number) => number): this;
}
export function chord(): ChordLayout;
@@ -56,21 +56,21 @@ export function chord(): ChordLayout;
export interface RibbonGenerator {
(this: This, d: ChordDatum, ...args: any[]): string | undefined;
source(): (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum;
- source(source: (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum): RibbonGenerator;
+ source(source: (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum): this;
target(): (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum;
- target(target: (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum): RibbonGenerator;
+ target(target: (this: This, d: ChordDatum, ...args: any[]) => ChordSubgroupDatum): this;
radius(): (this: This, d: ChordSubgroupDatum, ...args: any[]) => number;
- radius(radius: number): RibbonGenerator;
- radius(radius: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): RibbonGenerator;
+ radius(radius: number): this;
+ radius(radius: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): this;
startAngle(): (this: This, d: ChordSubgroupDatum, ...args: any[]) => number;
- startAngle(angle: number): RibbonGenerator;
- startAngle(angle: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): RibbonGenerator;
+ startAngle(angle: number): this;
+ startAngle(angle: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): this;
endAngle(): (this: This, d: ChordSubgroupDatum, ...args: any[]) => number;
- endAngle(angle: number): RibbonGenerator;
- endAngle(angle: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): RibbonGenerator;
+ endAngle(angle: number): this;
+ endAngle(angle: (this: This, d: ChordSubgroupDatum, ...args: any[]) => number): this;
context(): CanvasRenderingContext2D | null;
- context(context: CanvasRenderingContext2D): RibbonGenerator;
- context(context: null): RibbonGenerator;
+ context(context: CanvasRenderingContext2D): this;
+ context(context: null): this;
}
export function ribbon(): RibbonGenerator;
diff --git a/d3-collection/index.d.ts b/d3-collection/index.d.ts
index fea25224a4..889879681f 100644
--- a/d3-collection/index.d.ts
+++ b/d3-collection/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for D3JS d3-collection module 1.0.0
// Project: https://github.com/d3/d3-collection/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/**
@@ -104,10 +104,10 @@ export interface NestedObject {
}
interface Nest {
- key(func: (datum: Datum) => string): Nest;
- sortKeys(comparator: (a: string, b: string) => number): Nest;
- sortValues(comparator: (a: Datum, b: Datum) => number): Nest;
- rollup(func: (values: Datum[]) => RollupType): Nest;
+ key(func: (datum: Datum) => string): this;
+ sortKeys(comparator: (a: string, b: string) => number): this;
+ sortValues(comparator: (a: Datum, b: Datum) => number): this;
+ rollup(func: (values: Datum[]) => RollupType): this;
map(array: Datum[]): Map; // more specifically it returns NestedMap
object(array: Datum[]): { [key: string]: any }; // more specifically it returns NestedObject
entries(array: Datum[]): Array<{ key: string; values: any; value: RollupType | undefined }>; // more specifically it returns NestedArray
diff --git a/d3-color/index.d.ts b/d3-color/index.d.ts
index e13aafbe6c..36124b3a03 100644
--- a/d3-color/index.d.ts
+++ b/d3-color/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for D3JS d3-color module 1.0.0
// Project: https://github.com/d3/d3-color/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// ---------------------------------------------------------------------------
@@ -12,6 +12,17 @@
*/
export type ColorSpaceObject = RGBColor | HSLColor | LabColor | HCLColor | CubehelixColor;
+/**
+ * A helper interface of methods common to color objects (including colors defined outside the d3-color standard module,
+ * e.g. in d3-hsv). This interface
+ */
+export interface ColorCommonInstance {
+ displayable(): boolean;
+ toString(): string;
+ brighter(k?: number): this;
+ darker(k?: number): this;
+ rgb(): RGBColor;
+}
export interface Color {
displayable(): boolean; // Note: While this method is used in prototyping for colors of specific colorspaces, it should not be called directly, as 'this.rgb' would not be implemented on Color
@@ -20,7 +31,7 @@ export interface Color {
export interface ColorFactory extends Function {
(cssColorSpecifier: string): RGBColor | HSLColor;
- (color: ColorSpaceObject): RGBColor | HSLColor;
+ (color: ColorSpaceObject | ColorCommonInstance): RGBColor | HSLColor;
// prototype: Color;
}
@@ -29,8 +40,8 @@ export interface RGBColor extends Color {
g: number;
b: number;
opacity: number;
- brighter(k?: number): RGBColor;
- darker(k?: number): RGBColor;
+ brighter(k?: number): this;
+ darker(k?: number): this;
displayable(): boolean;
rgb(): RGBColor;
toString(): string;
@@ -39,7 +50,7 @@ export interface RGBColor extends Color {
export interface RGBColorFactory extends Function {
(r: number, g: number, b: number, opacity?: number): RGBColor;
(cssColorSpecifier: string): RGBColor;
- (color: ColorSpaceObject): RGBColor;
+ (color: ColorSpaceObject | ColorCommonInstance): RGBColor;
// prototype: RGBColor;
}
@@ -48,8 +59,8 @@ export interface HSLColor extends Color {
s: number;
l: number;
opacity: number;
- brighter(k?: number): HSLColor;
- darker(k?: number): HSLColor;
+ brighter(k?: number): this;
+ darker(k?: number): this;
displayable(): boolean;
rgb(): RGBColor;
}
@@ -57,7 +68,7 @@ export interface HSLColor extends Color {
export interface HSLColorFactory extends Function {
(h: number, s: number, l: number, opacity?: number): HSLColor;
(cssColorSpecifier: string): HSLColor;
- (color: ColorSpaceObject): HSLColor;
+ (color: ColorSpaceObject | ColorCommonInstance): HSLColor;
// prototype: HSLColor;
}
@@ -66,15 +77,15 @@ export interface LabColor extends Color {
a: number;
b: number;
opacity: number;
- brighter(k?: number): LabColor;
- darker(k?: number): LabColor;
+ brighter(k?: number): this;
+ darker(k?: number): this;
rgb(): RGBColor;
}
export interface LabColorFactory extends Function {
(l: number, a: number, b: number, opacity?: number): LabColor;
(cssColorSpecifier: string): LabColor;
- (color: ColorSpaceObject): LabColor;
+ (color: ColorSpaceObject | ColorCommonInstance): LabColor;
// prototype: LabColor;
}
@@ -83,15 +94,15 @@ export interface HCLColor extends Color {
c: number;
l: number;
opacity: number;
- brighter(k?: number): HCLColor;
- darker(k?: number): HCLColor;
+ brighter(k?: number): this;
+ darker(k?: number): this;
rgb(): RGBColor;
}
export interface HCLColorFactory extends Function {
(h: number, l: number, c: number, opacity?: number): HCLColor;
(cssColorSpecifier: string): HCLColor;
- (color: ColorSpaceObject): HCLColor;
+ (color: ColorSpaceObject | ColorCommonInstance): HCLColor;
// prototype: HCLColor;
}
@@ -100,15 +111,15 @@ export interface CubehelixColor extends Color {
s: number;
l: number;
opacity: number;
- brighter(k?: number): CubehelixColor;
- darker(k?: number): CubehelixColor;
+ brighter(k?: number): this;
+ darker(k?: number): this;
rgb(): RGBColor;
}
export interface CubehelixColorFactory extends Function {
(h: number, s: number, l: number, opacity?: number): CubehelixColor;
(cssColorSpecifier: string): CubehelixColor;
- (color: ColorSpaceObject): CubehelixColor;
+ (color: ColorSpaceObject | ColorCommonInstance): CubehelixColor;
// prototype: CubehelixColor;
}
@@ -127,4 +138,3 @@ export var lab: LabColorFactory;
export var hcl: HCLColorFactory;
export var cubehelix: CubehelixColorFactory;
-
diff --git a/d3-dispatch/index.d.ts b/d3-dispatch/index.d.ts
index 41f03e75db..00f63de565 100644
--- a/d3-dispatch/index.d.ts
+++ b/d3-dispatch/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for D3JS d3-dispatch module 1.0.0
// Project: https://github.com/d3/d3-dispatch/
-// Definitions by: Alex Ford , Boris Yankov , Tom Wanzek
+// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
export interface Dispatch {
@@ -9,8 +9,8 @@ export interface Dispatch {
copy(): Dispatch;
on(typenames: string): (this: T, ...args: any[]) => void;
- on(typenames: string, callback: null): Dispatch;
- on(typenames: string, callback: (this: T, ...args: any[]) => void): Dispatch;
+ on(typenames: string, callback: null): this;
+ on(typenames: string, callback: (this: T, ...args: any[]) => void): this;
}
export function dispatch(...types: string[]): Dispatch