diff --git a/types/clockpicker/clockpicker-tests.ts b/types/clockpicker/clockpicker-tests.ts new file mode 100644 index 0000000000..473c268aac --- /dev/null +++ b/types/clockpicker/clockpicker-tests.ts @@ -0,0 +1,32 @@ +// ClockPicker tests from https://github.com/weareoutman/clockpicker + +// Initialize ClockPicker +$('.clockpicker').clockpicker(); + +// Initialize ClockPicker with options +$('.clockpicker').clockpicker({ + default: 'now', + placement: 'bottom', + align: 'left', + donetext: 'Done', + autoclose: false, + twelvehour: true, + vibrate: true, + fromnow: 0, + init: () => {}, + beforeShow: () => {}, + afterShow: () => {}, + beforeHide: () => {}, + afterHide: () => {}, + beforeHourSelect: () => {}, + afterHourSelect: () => {}, + beforeDone: () => {}, + afterDone: () => {}, +}); + +// Invoke ClockPicker operation methods +$('.clockpicker').clockpicker('show'); +$('.clockpicker').clockpicker('hide'); +$('.clockpicker').clockpicker('remove'); +$('.clockpicker').clockpicker('toggleView', 'hours'); +$('.clockpicker').clockpicker('toggleView', 'minutes'); diff --git a/types/clockpicker/index.d.ts b/types/clockpicker/index.d.ts new file mode 100644 index 0000000000..d9dbd444e8 --- /dev/null +++ b/types/clockpicker/index.d.ts @@ -0,0 +1,36 @@ +// Type definitions for ClockPicker 0.0 +// Project: https://github.com/weareoutman/clockpicker +// Definitions by: jfcere +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +interface ClockPickerOptions { + default?: string; + placement?: string; + align?: string; + donetext?: string; + autoclose?: boolean; + twelvehour?: boolean; + vibrate?: boolean; + fromnow?: number; + init?: () => void; + beforeShow?: () => void; + afterShow?: () => void; + beforeHide?: () => void; + afterHide?: () => void; + beforeHourSelect?: () => void; + afterHourSelect?: () => void; + beforeDone?: () => void; + afterDone?: () => void; +} + +interface ClockPicker { + (options?: ClockPickerOptions): JQuery; + (methodName: string, ...params: any[]): JQuery; +} + +interface JQuery { + clockpicker: ClockPicker; +} diff --git a/types/clockpicker/tsconfig.json b/types/clockpicker/tsconfig.json new file mode 100644 index 0000000000..64b80a0278 --- /dev/null +++ b/types/clockpicker/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": false, + "strictNullChecks": false, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clockpicker-tests.ts" + ] +} diff --git a/types/clockpicker/tslint.json b/types/clockpicker/tslint.json new file mode 100644 index 0000000000..11584e5acd --- /dev/null +++ b/types/clockpicker/tslint.json @@ -0,0 +1,6 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "prefer-method-signature": false + } +}