diff --git a/d3/d3-tests.ts b/d3/d3-tests.ts index ab3953e9ec..02623aa9fc 100644 --- a/d3/d3-tests.ts +++ b/d3/d3-tests.ts @@ -48,6 +48,10 @@ function testPieChart() { } //Example from http://bl.ocks.org/3887051 +interface GroupedData { + State: string; + ages: Array<{ name: string; value: number;}>; +} function groupedBarChart() { var margin = { top: 20, right: 20, bottom: 30, left: 40 }, width = 960 - margin.left - margin.right, @@ -79,7 +83,7 @@ function groupedBarChart() { .append("g") .attr("transform", "translate(" + margin.left + "," + margin.top + ")"); - d3.csv("data.csv", function (error, data) { + d3.csv("data.csv", function (error, data: Array) { var ageNames = d3.keys(data[0]).filter(function (key) { return key !== "State"; }); data.forEach(function (d) { @@ -731,6 +735,11 @@ function chainedTransitions() { } //Example from http://bl.ocks.org/mbostock/4062085 +interface PyramidData { + people: number; + year: number; + age: number; +} function populationPyramid() { var margin = { top: 20, right: 40, bottom: 30, left: 20 }, width = 960 - margin.left - margin.right, @@ -766,7 +775,7 @@ function populationPyramid() { .attr("dy", ".71em") .text(2000); - d3.csv("population.csv", function (error, data) { + d3.csv("population.csv", function (error, data: Array) { // Convert strings to numbers. data.forEach(function (d) { @@ -1470,8 +1479,8 @@ function streamGraph() { var n = 20, // number of layers m = 200, // number of samples per layer stack = d3.layout.stack().offset("wiggle"), - layers0 = stack(d3.range(n).map(function () { return bumpLayer(m); } )), - layers1 = stack(d3.range(n).map(function () { return bumpLayer(m); } )); + layers0 = stack(d3.range(n).map(function () { return bumpLayer(m); })), + layers1 = stack(d3.range(n).map(function () { return bumpLayer(m); })); var width = 960, height = 500; @@ -1481,16 +1490,16 @@ function streamGraph() { .range([0, width]); var y = d3.scale.linear() - .domain([0, d3.max(layers0.concat(layers1), function (layer) { return d3.max(layer, function (d) { return d.y0 + d.y; } ); } )]) + .domain([0, d3.max(layers0.concat(layers1), function (layer) { return d3.max(layer, function (d) { return d.y0 + d.y; }); })]) .range([height, 0]); var color = d3.scale.linear() .range(["#aad", "#556"]); var area = d3.svg.area() - .x(function (d) { return x(d.x); } ) - .y0(function (d) { return y(d.y0); } ) - .y1(function (d) { return y(d.y0 + d.y); } ); + .x(function (d) { return x(d.x); }) + .y0(function (d) { return y(d.y0); }) + .y1(function (d) { return y(d.y0 + d.y); }); var svg = d3.select("body").append("svg") .attr("width", width) @@ -1500,7 +1509,7 @@ function streamGraph() { .data(layers0) .enter().append("path") .attr("d", area) - .style("fill", function () { return color(Math.random()); } ); + .style("fill", function () { return color(Math.random()); }); function transition() { d3.selectAll("path") @@ -1508,14 +1517,14 @@ function streamGraph() { var d = layers1; layers1 = layers0; return layers0 = d; - } ) + }) .transition() .duration(2500) .attr("d", area); } // Inspired by Lee Byron's test data generator. - function bumpLayer(n) { + function bumpLayer(n): Array<{x: number; y: number;y0?:number;}> { function bump(a) { var x = 1 / (.1 + Math.random()), @@ -2123,7 +2132,7 @@ function nestTest () { entries = d3.nest() .key(function(d) { return d.foo; }) - .rollup(function(values) { return d3.sum(values, function(d) { return d.bar; }); }) + .rollup(function(values) { return d3.sum(values, function(d) { return d.bar; }); }) .entries([{foo: 1, bar: 2}, {foo: 1, bar: 0}, {foo: 1, bar: 1}, {foo: 2}]); entries = d3.nest() diff --git a/d3/d3.d.ts b/d3/d3.d.ts index fc3d7c34a5..fb20a6d109 100644 --- a/d3/d3.d.ts +++ b/d3/d3.d.ts @@ -200,7 +200,7 @@ declare module D3 { * * @param map Array of objects to get the key values from */ - keys(map: any[]): any[]; + keys(map: any): string[]; /** * List the values of an associative array. * @@ -1032,7 +1032,7 @@ declare module D3 { } export interface StackLayout { - (layers: any[], index?: number): any[]; + (layers: T[], index?: number): T[]; values(accessor?: (d: any) => any): StackLayout; offset(offset: string): StackLayout; } diff --git a/fullCalendar/fullCalendar-tests.ts b/fullCalendar/fullCalendar-tests.ts index 33a5c97987..e7c01a27ef 100644 --- a/fullCalendar/fullCalendar-tests.ts +++ b/fullCalendar/fullCalendar-tests.ts @@ -669,6 +669,13 @@ $('#calendar').fullCalendar({ eventColor: '#378006' }); +interface EventWithDescription extends FullCalendar.EventObject { + description: string; +} +interface JQuery { + qtip: any; // dummy plugin interface +} + $('#calendar').fullCalendar({ events: [ { @@ -678,7 +685,7 @@ $('#calendar').fullCalendar({ } // more events here ], - eventRender: function (event, element) { + eventRender: function (event: EventWithDescription, element) { element.qtip({ content: event.description }); diff --git a/fullCalendar/fullCalendar.d.ts b/fullCalendar/fullCalendar.d.ts index 04698dec53..ec24c4e7fe 100644 --- a/fullCalendar/fullCalendar.d.ts +++ b/fullCalendar/fullCalendar.d.ts @@ -69,16 +69,16 @@ declare module FullCalendar { dayNamesShort?: Array; weekNumberTitle?: number; - dayClick?: (date: Date, allDay: boolean, jsEvent: Event, view: View) => void; - eventClick?: (event: EventObject, jsEvent: Event, view: View) => any; // return type boolean or void - eventMouseover?: (event: EventObject, jsEvent: Event, view: View) => void; - eventMouseout?: (event: EventObject, jsEvent: Event, view: View) => void; + dayClick?: (date: Date, allDay: boolean, jsEvent: MouseEvent, view: View) => void; + eventClick?: (event: EventObject, jsEvent: MouseEvent, view: View) => any; // return type boolean or void + eventMouseover?: (event: EventObject, jsEvent: MouseEvent, view: View) => void; + eventMouseout?: (event: EventObject, jsEvent: MouseEvent, view: View) => void; selectable?: any; // Boolean/ViewOptionHash selectHelper?: any; // Boolean/Function unselectAuto?: boolean; unselectCancel?: string; - select?: (startDate: Date, endDate: Date, allDay: boolean, jsEvent: Event, view: View) => void; + select?: (startDate: Date, endDate: Date, allDay: boolean, jsEvent: MouseEvent, view: View) => void; unselect?: (view: View, jsEvent: Event) => void; eventSources?: Array; @@ -103,16 +103,16 @@ declare module FullCalendar { disableResizing?: boolean; dragRevertDuration?: number; dragOpacity?: any; // Float/ViewOptionHash - eventDragStart?: (event: EventObject, jsEvent: Event, ui: any, view: View) => void; - eventDragStop?: (event: EventObject, jsEvent: Event, ui: any, view: View) => void; + eventDragStart?: (event: EventObject, jsEvent: MouseEvent, ui: any, view: View) => void; + eventDragStop?: (event: EventObject, jsEvent: MouseEvent, ui: any, view: View) => void; eventDrop?: (event: EventObject, dayDelta: number, minuteDelta: number, revertFunc: Function, jsEvent: Event, ui: any, view: View) => void; - eventResizeStart?: (event: EventObject, jsEvent: Event, ui: any, view: View) => void; - eventResizeStop?: (event: EventObject, jsEvent: Event, ui: any, view: View) => void; + eventResizeStart?: (event: EventObject, jsEvent: MouseEvent, ui: any, view: View) => void; + eventResizeStop?: (event: EventObject, jsEvent: MouseEvent, ui: any, view: View) => void; eventResize?: (event: EventObject, dayDelta: number, minuteDelta: number, revertFunc: Function, jsEvent: Event, ui: any, view: View) => void; droppable?: boolean; dropAccept?: any; // String/Function - drop?: (date: Date, allDay: boolean, jsEvent: Event, ui: any) => void; + drop?: (date: Date, allDay: boolean, jsEvent: MouseEvent, ui: any) => void; } export interface View { @@ -194,14 +194,6 @@ declare module FullCalendar { } interface JQuery { - /** - * Create calendar object - */ - fullCalendar(options: FullCalendar.Options): JQuery; - /** - * Generic method function - */ - fullCalendar(method: string, arg1: any, arg2: any, arg3: any): void; /** * Get/Set option value */ @@ -306,6 +298,14 @@ interface JQuery { * Rerenders all events on the calendar. */ fullCalendar(method: 'rerenderEvents'): void; + /** + * Create calendar object + */ + fullCalendar(options: FullCalendar.Options): JQuery; + /** + * Generic method function + */ + fullCalendar(method: string, arg1: any, arg2: any, arg3: any): void; } interface JQueryStatic { diff --git a/jquery.simplePagination/jquery.simplePagination.d.ts b/jquery.simplePagination/jquery.simplePagination.d.ts index 1f3bc15539..6e2dd4b402 100644 --- a/jquery.simplePagination/jquery.simplePagination.d.ts +++ b/jquery.simplePagination/jquery.simplePagination.d.ts @@ -24,8 +24,6 @@ interface SimplePaginationOptions { interface JQuery { pagination(options?: SimplePaginationOptions): JQuery; - pagination(method: string): any; - pagination(method: string, value: any): any; pagination(method: 'selectPage', pageNumber: number): void; pagination(method: 'prevPage'): void; pagination(method: 'nextPage'): void; @@ -36,4 +34,6 @@ interface JQuery { pagination(method: 'destroy'): void; pagination(method: 'redraw'): void; pagination(method: 'updateItems', items: number): void; + pagination(method: string): any; + pagination(method: string, value: any): any; } diff --git a/jqueryui/jqueryui.d.ts b/jqueryui/jqueryui.d.ts index ab904dfc5d..7bd2be2f78 100644 --- a/jqueryui/jqueryui.d.ts +++ b/jqueryui/jqueryui.d.ts @@ -781,56 +781,55 @@ declare module JQueryUI { interface JQuery { accordion(): JQuery; - accordion(methodName: string): JQuery; accordion(methodName: 'destroy'): void; accordion(methodName: 'disable'): void; accordion(methodName: 'enable'): void; accordion(methodName: 'refresh'): void; accordion(methodName: 'widget'): JQuery; + accordion(methodName: string): JQuery; accordion(options: JQueryUI.AccordionOptions): JQuery; accordion(optionLiteral: string, optionName: string): any; accordion(optionLiteral: string, options: JQueryUI.AccordionOptions): any; accordion(optionLiteral: string, optionName: string, optionValue: any): JQuery; autocomplete(): JQuery; - autocomplete(methodName: string): JQuery; autocomplete(methodName: 'close'): void; autocomplete(methodName: 'destroy'): void; autocomplete(methodName: 'disable'): void; autocomplete(methodName: 'enable'): void; autocomplete(methodName: 'search', value?: string): void; autocomplete(methodName: 'widget'): JQuery; + autocomplete(methodName: string): JQuery; autocomplete(options: JQueryUI.AutocompleteOptions): JQuery; autocomplete(optionLiteral: string, optionName: string): any; autocomplete(optionLiteral: string, options: JQueryUI.AutocompleteOptions): any; autocomplete(optionLiteral: string, optionName: string, optionValue: any): JQuery; button(): JQuery; - button(methodName: string): JQuery; button(methodName: 'destroy'): void; button(methodName: 'disable'): void; button(methodName: 'enable'): void; button(methodName: 'refresh'): void; button(methodName: 'widget'): JQuery; + button(methodName: string): JQuery; button(options: JQueryUI.ButtonOptions): JQuery; button(optionLiteral: string, optionName: string): any; button(optionLiteral: string, options: JQueryUI.ButtonOptions): any; button(optionLiteral: string, optionName: string, optionValue: any): JQuery; buttonset(): JQuery; - buttonset(methodName: string): JQuery; buttonset(methodName: 'destroy'): void; buttonset(methodName: 'disable'): void; buttonset(methodName: 'enable'): void; buttonset(methodName: 'refresh'): void; buttonset(methodName: 'widget'): JQuery; + buttonset(methodName: string): JQuery; buttonset(options: JQueryUI.ButtonOptions): JQuery; buttonset(optionLiteral: string, optionName: string): any; buttonset(optionLiteral: string, options: JQueryUI.ButtonOptions): any; buttonset(optionLiteral: string, optionName: string, optionValue: any): JQuery; datepicker(): JQuery; - datepicker(methodName: string): JQuery; datepicker(methodName: 'destroy'): void; datepicker(methodName: 'dialog', date?: Date, onSelect?: () => void , pos?: any): void; datepicker(methodName: 'dialog', date?: string, onSelect?: () => void , pos?: any): void; @@ -842,48 +841,48 @@ interface JQuery { datepicker(methodName: 'setDate', date: string): void; datepicker(methodName: 'show'): void; datepicker(methodName: 'widget'): JQuery; + datepicker(methodName: string): JQuery; datepicker(options: JQueryUI.DatepickerOptions): JQuery; datepicker(optionLiteral: string, optionName: string): any; datepicker(optionLiteral: string, options: JQueryUI.DatepickerOptions): any; datepicker(optionLiteral: string, optionName: string, optionValue: any): JQuery; dialog(): JQuery; - dialog(methodName: string): JQuery; dialog(methodName: 'close'): JQuery; dialog(methodName: 'destroy'): JQuery; dialog(methodName: 'isOpen'): boolean; dialog(methodName: 'moveToTop'): JQuery; dialog(methodName: 'open'): JQuery; dialog(methodName: 'widget'): JQuery; + dialog(methodName: string): JQuery; dialog(options: JQueryUI.DialogOptions): JQuery; dialog(optionLiteral: string, optionName: string): any; dialog(optionLiteral: string, options: JQueryUI.DialogOptions): any; dialog(optionLiteral: string, optionName: string, optionValue: any): JQuery; draggable(): JQuery; - draggable(methodName: string): JQuery; draggable(methodName: 'destroy'): void; draggable(methodName: 'disable'): void; draggable(methodName: 'enable'): void; draggable(methodName: 'widget'): JQuery; + draggable(methodName: string): JQuery; draggable(options: JQueryUI.DraggableOptions): JQuery; draggable(optionLiteral: string, optionName: string): any; draggable(optionLiteral: string, options: JQueryUI.DraggableOptions): any; draggable(optionLiteral: string, optionName: string, optionValue: any): JQuery; droppable(): JQuery; - droppable(methodName: string): JQuery; droppable(methodName: 'destroy'): void; droppable(methodName: 'disable'): void; droppable(methodName: 'enable'): void; droppable(methodName: 'widget'): JQuery; + droppable(methodName: string): JQuery; droppable(options: JQueryUI.DroppableOptions): JQuery; droppable(optionLiteral: string, optionName: string): any; droppable(optionLiteral: string, options: JQueryUI.DraggableOptions): any; droppable(optionLiteral: string, optionName: string, optionValue: any): JQuery; menu(): JQuery; - menu(methodName: string): JQuery; menu(methodName: 'blur'): void; menu(methodName: 'collapse', event?: JQueryEventObject): void; menu(methodName: 'collapseAll', event?: JQueryEventObject, all?: boolean): void; @@ -901,13 +900,13 @@ interface JQuery { menu(methodName: 'refresh'): void; menu(methodName: 'select', event?: JQueryEventObject): void; menu(methodName: 'widget'): JQuery; + menu(methodName: string): JQuery; menu(options: JQueryUI.MenuOptions): JQuery; menu(optionLiteral: string, optionName: string): any; menu(optionLiteral: string, options: JQueryUI.MenuOptions): any; menu(optionLiteral: string, optionName: string, optionValue: any): JQuery; progressbar(): JQuery; - progressbar(methodName: string): JQuery; progressbar(methodName: 'destroy'): void; progressbar(methodName: 'disable'): void; progressbar(methodName: 'enable'): void; @@ -916,35 +915,35 @@ interface JQuery { progressbar(methodName: 'value', value: number): void; progressbar(methodName: 'value', value: boolean): void; progressbar(methodName: 'widget'): JQuery; + progressbar(methodName: string): JQuery; progressbar(options: JQueryUI.ProgressbarOptions): JQuery; progressbar(optionLiteral: string, optionName: string): any; progressbar(optionLiteral: string, options: JQueryUI.ProgressbarOptions): any; progressbar(optionLiteral: string, optionName: string, optionValue: any): JQuery; resizable(): JQuery; - resizable(methodName: string): JQuery; resizable(methodName: 'destroy'): void; resizable(methodName: 'disable'): void; resizable(methodName: 'enable'): void; resizable(methodName: 'widget'): JQuery; + resizable(methodName: string): JQuery; resizable(options: JQueryUI.ResizableOptions): JQuery; resizable(optionLiteral: string, optionName: string): any; resizable(optionLiteral: string, options: JQueryUI.ResizableOptions): any; resizable(optionLiteral: string, optionName: string, optionValue: any): JQuery; selectable(): JQuery; - selectable(methodName: string): JQuery; selectable(methodName: 'destroy'): void; selectable(methodName: 'disable'): void; selectable(methodName: 'enable'): void; selectable(methodName: 'widget'): JQuery; + selectable(methodName: string): JQuery; selectable(options: JQueryUI.SelectableOptions): JQuery; selectable(optionLiteral: string, optionName: string): any; selectable(optionLiteral: string, options: JQueryUI.SelectableOptions): any; selectable(optionLiteral: string, optionName: string, optionValue: any): JQuery; slider(): JQuery; - slider(methodName: string): JQuery; slider(methodName: 'destroy'): void; slider(methodName: 'disable'): void; slider(methodName: 'enable'): void; @@ -958,24 +957,24 @@ interface JQuery { slider(methodName: string, values: Array): void; slider(methodName: 'values', values: Array): void; slider(methodName: 'widget'): JQuery; + slider(methodName: string): JQuery; slider(options: JQueryUI.SliderOptions): JQuery; slider(optionLiteral: string, optionName: string): any; slider(optionLiteral: string, options: JQueryUI.SliderOptions): any; slider(optionLiteral: string, optionName: string, optionValue: any): JQuery; sortable(): JQuery; - sortable(methodName: string): JQuery; sortable(methodName: 'destroy'): void; sortable(methodName: 'disable'): void; sortable(methodName: 'enable'): void; sortable(methodName: 'widget'): JQuery; + sortable(methodName: string): JQuery; sortable(options: JQueryUI.SortableOptions): JQuery; sortable(optionLiteral: string, optionName: string): any; sortable(optionLiteral: string, options: JQueryUI.SortableOptions): any; sortable(optionLiteral: string, optionName: string, optionValue: any): JQuery; spinner(): JQuery; - spinner(methodName: string): JQuery; spinner(methodName: 'destroy'): void; spinner(methodName: 'disable'): void; spinner(methodName: 'enable'): void; @@ -986,32 +985,33 @@ interface JQuery { spinner(methodName: 'value'): number; spinner(methodName: 'value', value: number): void; spinner(methodName: 'widget'): JQuery; + spinner(methodName: string): JQuery; spinner(options: JQueryUI.SpinnerOptions): JQuery; spinner(optionLiteral: string, optionName: string): any; spinner(optionLiteral: string, options: JQueryUI.SpinnerOptions): any; spinner(optionLiteral: string, optionName: string, optionValue: any): JQuery; tabs(): JQuery; - tabs(methodName: string): JQuery; tabs(methodName: 'destroy'): void; tabs(methodName: 'disable'): void; tabs(methodName: 'enable'): void; tabs(methodName: 'load', index: number): void; tabs(methodName: 'refresh'): void; tabs(methodName: 'widget'): JQuery; + tabs(methodName: string): JQuery; tabs(options: JQueryUI.TabsOptions): JQuery; tabs(optionLiteral: string, optionName: string): any; tabs(optionLiteral: string, options: JQueryUI.TabsOptions): any; tabs(optionLiteral: string, optionName: string, optionValue: any): JQuery; tooltip(): JQuery; - tooltip(methodName: string): JQuery; tooltip(methodName: 'destroy'): void; tooltip(methodName: 'disable'): void; tooltip(methodName: 'enable'): void; tooltip(methodName: 'open'): void; tooltip(methodName: 'close'): void; tooltip(methodName: 'widget'): JQuery; + tooltip(methodName: string): JQuery; tooltip(options: JQueryUI.TooltipOptions): JQuery; tooltip(optionLiteral: string, optionName: string): any; tooltip(optionLiteral: string, options: JQueryUI.TooltipOptions): any;