From b71fbf13305f974da5bcedaacd81262405876d1c Mon Sep 17 00:00:00 2001 From: Georgie Date: Thu, 31 Jul 2014 10:50:27 -0700 Subject: [PATCH 1/2] Complete DataTable, DataView --- .../google.visualization.d.ts | 103 +++++++++++++++++- 1 file changed, 97 insertions(+), 6 deletions(-) diff --git a/google.visualization/google.visualization.d.ts b/google.visualization/google.visualization.d.ts index f45f3f6a3..fb538d329 100644 --- a/google.visualization/google.visualization.d.ts +++ b/google.visualization/google.visualization.d.ts @@ -58,7 +58,7 @@ declare module google { setRefreshInterval(interval: number): void; setOption(key: string, value: any): void; setOptions(options: Object): void; - setView(view_spec: DataView): void; + setView(view_spec: string): void; } //#endregion @@ -71,17 +71,68 @@ declare module google { addColumn(descriptionObject: DataTableColumnDescription): number; addRow(cellObject: DataObjectCell): number; addRow(cellArray?: any[]): number; - addRows(count: number): number; - addRows(array: DataObjectCell[][]): number; - addRows(array: any[]): number; + addRows(numberOfEmptyRows: number): number; + addRows(rows: DataObjectCell[][]): number; + addRows(rows: any[][]): number; + clone(): DataTable; + getColumnId(columnIndex: number): String; + getColumnLabel(columnIndex: number): string; + getColumnPattern(columnIndex: number): string; + getColumnProperties(columnIndex: number): Properties; + getColumnProperty(columnIndex: number, name: string): any; + getColumnRange(columnIndex: number): { min: any; max: any }; + getColumnRole(columnIndex: string): string; + getColumnType(columnIndex: number): string; + getDistinctValues(columnIndex: number): any[]; getFilteredRows(filters: DataTableCellFilter[]): number[]; getFormattedValue(rowIndex: number, columnIndex: number): string; - getValue(rowIndex: number, columnIndex: number): any; getNumberOfColumns(): number; getNumberOfRows(): number; + getProperty(rowIndex: number, columnIndex: number, name: string): any; + getProperties(rowIndex: number, columnIndex: number): Properties; + getRowProperties(rowIndex: number): Properties; + getRowProperty(rowIndex: number, name: string): Properties; + getSortedRows(sortColumn: number): number[]; + getSortedRows(sortColumn: SortByColumn): number[]; + getSortedRows(sortColumns: number[]): number[]; + getSortedRows(sortColumns: SortByColumn[]): number[]; + getTableProperties(): Properties; + getTableProperty(name: string): any; + getValue(rowIndex: number, columnIndex: number): any; + insertColumn(columnIndex: number, type: string, label?: string, id?: string); + insertRows(rowIndex: number, numberOfEmptyRows: number); + insertRows(rowIndex: number, rows: DataObjectCell[][]); + insertRows(rowIndex: number, rows: any[][]); + removeColumn(columnIndex: number): void; + removeColumns(columnIndex: number, numberOfColumns: number): void; removeRow(rowIndex: number): void; removeRows(rowIndex: number, numberOfRows: number): void; + setCell(rowIndex: number, columnIndex: number, value?: any, formattedValue?: string, properties?: Properties): void; setColumnLabel(columnIndex: number, label: string): void; + setColumnProperty(columnIndex: number, name: string, value: any): void; + setColumnProperties(columnIndex: number, properties: Properties): void; + setFormattedValue(rowIndex: number, columnIndex: number, formattedValue: string): void; + setProperty(rowIndex: number, columnIndex: number, name: string, value: any): void; + setProperties(rowIndex: number, columnIndex: number, properties: Properties): void; + setRowProperty(rowIndex: number, name: string, value: any): void; + setRowProperties(rowIndex: number, properties: Properties): void; + setTableProperty(name: string, value: any): void; + setTableProperties(properties: Properties): void; + setValue(rowIndex: number, columnIndex: number, value: any); + sort(sortColumn: number): number[]; + sort(sortColumn: SortByColumn): number[]; + sort(sortColumns: number[]): number[]; + sort(sortColumns: SortByColumn[]): number[]; + toJSON(): string; + } + + export interface Properties { + [property: string]: any + } + + export interface SortByColumn { + column: number; + desc: boolean; } export interface DataTableColumnDescription { @@ -113,6 +164,9 @@ declare module google { export interface DataTableCellFilter { column: number; + value?: any; + minValue?: any; + maxValue?: any; } export interface DataObjectCell { @@ -139,7 +193,44 @@ declare module google { export class DataView { constructor(data: DataTable); constructor(data: DataView); - setColumns(columnIndexes: any[]): void; + + getColumnId(columnIndex: number): String; + getColumnLabel(columnIndex: number): string; + getColumnPattern(columnIndex: number): string; + getColumnProperty(columnIndex: number, name: string): any; + getColumnRange(columnIndex: number): { min: any; max: any }; + getColumnType(columnIndex: number): string; + getDistinctValues(columnIndex: number): any[]; + getFilteredRows(filters: DataTableCellFilter[]): number[]; + getFormattedValue(rowIndex: number, columnIndex: number): string; + getNumberOfColumns(): number; + getNumberOfRows(): number; + getProperty(rowIndex: number, columnIndex: number, name: string): any; + getProperties(rowIndex: number, columnIndex: number): Properties; + getRowProperty(rowIndex: number, name: string): Properties; + getSortedRows(sortColumn: number): number[]; + getSortedRows(sortColumn: SortByColumn): number[]; + getSortedRows(sortColumns: number[]): number[]; + getSortedRows(sortColumns: SortByColumn[]): number[]; + getTableProperty(name: string): any; + getValue(rowIndex: number, columnIndex: number): any; + getTableColumnIndex(viewColumnIndex: number): number; + getTableRowIndex(viewRowIndex: number): number; + getViewColumnIndex(tableColumnIndex: number): number; + getViewColumns(): number[]; + getViewRowIndex(tableRowIndex: number): number; + getViewRows(): number[]; + + hideColumns(columnIndexes: number[]): void; + hideRows(min: number, max: number): void; + hideRows(rowIndexes: number[]): void; + + setColumns(columnIndexes: number[]): void; + setRows(min: number, max: number): void; + setRows(rowIndexes: number[]); + + toDataTable(): DataTable; + toJSON(): string; } //#endregion From 9900804542bee0f8eb0ee99871dbaa7b860fd85f Mon Sep 17 00:00:00 2001 From: Georgie Date: Thu, 31 Jul 2014 11:04:51 -0700 Subject: [PATCH 2/2] Fixed setColumns, added void returns --- .../google.visualization.d.ts | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/google.visualization/google.visualization.d.ts b/google.visualization/google.visualization.d.ts index fb538d329..2657d8274 100644 --- a/google.visualization/google.visualization.d.ts +++ b/google.visualization/google.visualization.d.ts @@ -99,10 +99,10 @@ declare module google { getTableProperties(): Properties; getTableProperty(name: string): any; getValue(rowIndex: number, columnIndex: number): any; - insertColumn(columnIndex: number, type: string, label?: string, id?: string); - insertRows(rowIndex: number, numberOfEmptyRows: number); - insertRows(rowIndex: number, rows: DataObjectCell[][]); - insertRows(rowIndex: number, rows: any[][]); + insertColumn(columnIndex: number, type: string, label?: string, id?: string): void; + insertRows(rowIndex: number, numberOfEmptyRows: number): void; + insertRows(rowIndex: number, rows: DataObjectCell[][]): void; + insertRows(rowIndex: number, rows: any[][]): void; removeColumn(columnIndex: number): void; removeColumns(columnIndex: number, numberOfColumns: number): void; removeRow(rowIndex: number): void; @@ -118,7 +118,7 @@ declare module google { setRowProperties(rowIndex: number, properties: Properties): void; setTableProperty(name: string, value: any): void; setTableProperties(properties: Properties): void; - setValue(rowIndex: number, columnIndex: number, value: any); + setValue(rowIndex: number, columnIndex: number, value: any): void; sort(sortColumn: number): number[]; sort(sortColumn: SortByColumn): number[]; sort(sortColumns: number[]): number[]; @@ -226,13 +226,25 @@ declare module google { hideRows(rowIndexes: number[]): void; setColumns(columnIndexes: number[]): void; + setColumns(columnIndexes: ColumnSpec[]): void; + setColumns(columnIndexes: any[]): void; setRows(min: number, max: number): void; - setRows(rowIndexes: number[]); + setRows(rowIndexes: number[]): void; toDataTable(): DataTable; toJSON(): string; } + export interface ColumnSpec { + calc: (dataTable: DataTable, row: number) => any; + type: string; + label?: string; + id?: string; + sourceColumn?: number; + properties?: Properties; + role?: string; + } + //#endregion //#region GeoChart