From 4c3d3cafc5c57cb513f319338e1b4592173b0d8c Mon Sep 17 00:00:00 2001 From: Boris Yankov Date: Tue, 16 Oct 2012 20:55:16 +0300 Subject: [PATCH] Definitions for all widgets added for jQuery UI 1.9 --- Definitions/jqueryui-1.9.d.ts | 452 +++++++++++++++++++++++++++++++++- 1 file changed, 444 insertions(+), 8 deletions(-) diff --git a/Definitions/jqueryui-1.9.d.ts b/Definitions/jqueryui-1.9.d.ts index cb68a5594..a9788562c 100644 --- a/Definitions/jqueryui-1.9.d.ts +++ b/Definitions/jqueryui-1.9.d.ts @@ -1,11 +1,256 @@ -/// +/// -// Partial typing for the jQueryUI library, version 1.8.x +// Type definitions for jQueryUI 1.9 +// Project: http://jqueryui.com/ +// Definitions: https://github.com/borisyankov/DefinitelyTyped + + +// Widget ////////////////////////////////////////////////// + +interface Widget { + + // Methods + destroy(); + disable(); + enable(); + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + refresh(): void; + widget(): JQuery; + + // Events + create(event: Event, ui): void; +} + + +// Accordion ////////////////////////////////////////////////// + +interface Accordion extends Widget { + + // Options + active?: any; // bool or number + animate?: any; // bool, number, string or object + collapsible?: bool; + disabled?: bool; + event?: string; + header?: any; // TODO: Selector + heightStyle?: string; + icons?: any; + + // Methods + destroy(); + disable(); + enable(); + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + refresh(); + widget(): JQuery; + + // Events + activate(event: Event, ui): void; + beforeActivate(event: Event, ui): void; + create(event: Event, ui): void; +} + + +// Autocomplete ////////////////////////////////////////////////// + +interface Autocomplete { + + // Options + appendTo?: any; //Selector; + autoFocus?: bool; + delay?: number; + disabled?: bool; + minLength?: number; + position?: any; // TODO: JqueryPosition + source?: any; // [], string or () + + // Methods + close(); + destroy(); + disable(); + enable(); + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + search(value?: string); + widget(): JQuery; + + // Events + change(event: Event, ui): void; + close(event: Event, ui): void; + create(event: Event, ui): void; + focus(event: Event, ui): void; + open(event: Event, ui): void; + response(event: Event, ui): void; + search(event: Event, ui): void; + select(event: Event, ui): void; +} + + +// Button ////////////////////////////////////////////////// + +interface Button { + + // Options + disabled?: bool; + icons?: any; + label?: string; + text?: bool; + + // Methods + destroy(); + disable(); + enable(); + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + refresh(); + widget(): JQuery; + + // Events + create(event: Event, ui): void; +} + + +// Datepicker ////////////////////////////////////////////////// + +interface Datepicker { + + // Options + altFieldType?: any; // Selecotr, jQuery or Element + altFormat?: string; + appendText?: string; + autoSize?: bool; + beforeShow?: (input: Element, inst: any) => void; + beforeShowDay?: (date: Date) => void; + buttonImage?: string; + buttonImageOnly?: bool; + buttonText?: string; + calculateWeek?: () => any; + changeMonth?: bool; + changeYear?: bool; + closeText?: string; + constrainInput?: bool; + currentText?: string; + dateFormat?: string; + dayNames?: string[]; + dayNamesMin?: string[]; + dayNamesShort?: string[]; + defaultDateType?: any; // Date, number or string + duration?: string; + firstDay?: number; + gotoCurrent?: bool; + hideIfNoPrevNext?: bool; + isRTL?: bool; + maxDate?: any; // Date, number or string + minDate?: any; // Date, number or string + monthNames?: string[]; + monthNamesShort?: string[]; + navigationAsDateFormat?: bool; + nextText?: string; + numberOfMonths?: any; // number or [] + onChangeMonthYear?: (year: number, month: number, inst: any) => void; + onClose?: (dateText: string, inst: any) => void; + onSelect?: (dateText: string, inst: any) => void; + prevText?: string; + selectOtherMonths?: bool; + shortYearCutoff?: any; // number or string + showAnim?: string; + showButtonPanel?: bool; + showCurrentAtPos?: number; + showMonthAfterYear?: bool; + showOn?: string; + showOptions?: any; // TODO + showOtherMonths?: bool; + showWeek?: bool; + stepMonths?: number; + weekHeader?: string; + yearRange?: string; + yearSuffix?: string; + + // Methods + destroy(); + dialog(date: any, onSelect?: (), settings?: any, pos?: any); + getDate(): Date; + hide(): void; + isDisabled(): bool; + refresh(): void; + setDate(date: Date): void; + show(); + + // Events +} + + +// Dialog ////////////////////////////////////////////////// + +interface Dialog { + + // Options + autoOpen?: bool; + buttons?: any; // object or [] + closeOnEscape?: bool; + closeText?: string; + dialogClass?: string; + disabled?: bool; + draggable?: bool; + height?: any; // number or string + maxHeight?: number; + maxWidth?: number; + minHeight?: number; + minWidth?: number; + modal?: bool; + position?: any; // object, string or [] + resizable?: bool; + show?: any; // number, string or object + stack?: bool; + title?: string; + width?: number; + zIndex?: number; + + // Methods + close(): void; + destroy(): void; + disable(): void; + enable(): void; + isOpen(): bool; + moveToTop(): void; + open(): void; + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + widget(): JQuery; + + // Events + beforeClose(event: Event, ui): void; + close(event: Event, ui): void; + create(event: Event, ui): void; + drag(event: Event, ui): void; + dragStart(event: Event, ui): void; + dragStop(event: Event, ui): void; + focus(event: Event, ui): void; + open(event: Event, ui): void; + resize(event: Event, ui): void; + resizeStart(event: Event, ui): void; + resizeStop(event: Event, ui): void; +} + + +// Draggable ////////////////////////////////////////////////// interface DraggableEventUIParam { helper: JQuery; - position: { top: number; left: number;}; - offset: { top: number; left: number;}; + position: { top: number; left: number; }; + offset: { top: number; left: number; }; } interface DraggableEvent { @@ -13,6 +258,7 @@ interface DraggableEvent { } interface Draggable { + // Options disabled?: bool; addClasses?: bool; @@ -42,18 +288,22 @@ interface Draggable { snapTolerance?: number; stack?: string; zIndex?: number; + // Events create?: DraggableEvent; start?: DraggableEvent; - drag?: DraggableEvent; - stop?: DraggableEvent; + drag?: DraggableEvent; + stop?: DraggableEvent; } + +// Droppable ////////////////////////////////////////////////// + interface DroppableEventUIParam { draggable: JQuery; helper: JQuery; - position: { top: number; left: number;}; - offset: { top: number; left: number;}; + position: { top: number; left: number; }; + offset: { top: number; left: number; }; } interface DroppableEvent { @@ -61,6 +311,7 @@ interface DroppableEvent { } interface Droppable { + // Options disabled?: bool; accept?: any; @@ -69,6 +320,7 @@ interface Droppable { hoverClass?: string; scope?: string; tolerance?: string; + // Events create?: DroppableEvent; activate?: DroppableEvent; @@ -101,6 +353,190 @@ interface JQueryDatePicker { setDefaults(JQueryDatePickerDefaults); } + +// Menu ////////////////////////////////////////////////// + +interface Menu { + + // Options + disabled?: bool; + icons?: any; + menus?: string; + position?: any; // TODO + role?: string; + + // Methods + blur(event?: Event): void; + collapse(event?: Event): void; + blurAll(event?: Event, all?: bool): void; + destroy(); + disable(); + enable(); + expand(event?: Event): void; + focus(event?: Event, item?: JQuery): void; + isFirstItem(): bool; + isLastItem(): bool; + next(event?: Event): void; + nextPage(event?: Event): void; + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + previous(event?: Event): void; + previousPage(event?: Event): void; + refresh(): void; + select(event?: Event): void; + widget(): JQuery; + + // Events + blur(event: Event, ui): void; + create(event: Event, ui): void; + focus(event: Event, ui): void; + select(event: Event, ui): void; +} + + +// Progressbar ////////////////////////////////////////////////// + +interface Progressbar { + + // Options + disabled?: bool; + value?: number; + + // Methods + destroy(); + disable(); + enable(); + option(optionName: string): any; + option(): any; + option(optionName: string, value: any): void; + option(options: any): void; + value(): number; + value(newValue: number): void; + widget(): JQuery; + + // Events + change(event: Event, ui): void; + complete(event: Event, ui): void; + create(event: Event, ui): void; +} + + +// Slider ////////////////////////////////////////////////// + +interface Slider extends Widget { + + // Options + animate?: any; // bool, string or number + disabled?: bool; + max?: number; + min?: number; + orientation?: string; + range?: any; // bool or string + step?: number; + value?: number; + values?: number[]; + + // Methods + value(): number; + value(newValue: number): void; + values(): number[]; + values(index: number): number; + values(index: number, newValue: number): void; + values(newValues: numbers[]): void; + + // Events + change(event: Event, ui): void; + create(event: Event, ui): void; + slide(event: Event, ui): void; + start(event: Event, ui): void; + stop(event: Event, ui): void; +} + + +// Spinner ////////////////////////////////////////////////// + +interface Spinner { + + // Options + culture?: string; + disabled?: bool; + icons?: any; + incremental?: any; // bool or () + max?: any; // number or string + min?: any; // number or string + numberFormat?: string; + page?: number; + step?: any; // number or string + + // Methods + pageDown(pages?: number): void; + pageUp(pages?: number): void; + stepDown(steps?: number): void; + stepUp(steps?: number): void; + value(): number; + value(newValue: number): void; + + // Events + spin(event: Event, ui): void; + start(event: Event, ui): void; + stop(event: Event, ui): void; +} + + +// Tabs ////////////////////////////////////////////////// + +interface Tabs { + + // Options + active?: any; // bool or number + collapsible?: bool; + disabled?: any; // bool or [] + event?: string; + heightStyle?: string; + hide?: any; // bool, number, string or object + show?: any; // bool, number, string or object + + // Methods + disable(index: any): void; + enable(index: any): void; + load(index: any): void; + + // Events + activate(event: Event, ui): void; + beforeActivate(event: Event, ui): void; + beforeLoad(event: Event, ui): void; + load(event: Event, ui): void; +} + + +// Tooltip ////////////////////////////////////////////////// + +interface Tooltip { + + // Options + content?: any; // () or string + disabled?: bool; + hide?: any; // bool, number, string or object + items?: any; // TODO Selector + position?: any; // TODO + show?: any; // bool, number, string or object + tooltipClass?: string; + track?: bool; + + // Methods + close(event?: Event): void; + open(event?: Event): void; + + // Events + close(event: Event, ui): void; + open(event: Event, ui): void; +} + + +//////////////////////////////////////////////////////////////////////////////////////////////////// + interface JQuery { draggable(options: Draggable): JQuery; draggable(optionLiteral: string, options: Draggable): JQuery;