UNPKG

e-virt-table

Version:

A powerful data table based on canvas. You can use it as data grid、Microsoft Excel or Google sheets. It supports virtual scroll、cell edit etc.

65 lines (64 loc) 2.88 kB
import { Column, SpanParams } from './types'; declare function generateShortUUID(): string; declare function throttle<T extends (...args: any) => any>(func: T, delay: number | (() => number)): T; /** * 根据children获取最大深度 * @param data * @returns */ declare function getMaxRow(data?: Column[]): number; declare function sortFixed(arr?: Column[]): Column[]; declare function calCrossSpan(arr?: Column[], maxRow?: number, level?: number, parentKey?: string): Column[]; declare function toLeaf(arr?: Column[]): Column[]; declare function filterHiddenColumns(columns: Column[]): Column[]; type DebouncedFunction<F extends (...args: any[]) => any> = (...args: Parameters<F>) => void; declare function debounce<F extends (...args: any[]) => any>(func: F, delay: number): DebouncedFunction<F>; /** * @decodeSpreadsheetStr * @desc Decode spreadsheet string into array. refer from http://github.com/warpech/sheetclip/ * @param {string} str The string to parse. * @returns {array} */ declare function decodeSpreadsheetStr(str: string): string[][]; /** * @decodeSpreadsheetStr * @desc encode array to spreadsheet string. refer from http://github.com/warpech/sheetclip/ * @param {array} str The string to parse. * @returns {string} */ declare function encodeToSpreadsheetStr(arr: string[][]): string; declare function getSpanArrByRow(list: any, key: string, relationRowKeys?: string[]): number[]; declare function getSpanObjByColumn(row: any, columns: any): any; declare function mergeRowCell(params: SpanParams, mergeRowkey: string, relationRowKeys?: string[]): { rowspan: number; colspan: number; relationRowKeys: string[]; mergeRow: boolean; }; declare function mergeColCell(params: SpanParams, mergeColKeys?: string[]): { rowspan: number; colspan: any; relationColKeys: string[]; mergeCol: boolean; } | undefined; /** * 获取某个 CSS 变量的实际值 * @param name 变量名(可以带或不带前缀,例如 "color-primary" 或 "--color-primary") * @param el 可选元素,默认为 document.documentElement * @returns CSS 变量的计算值(如 "#1e90ff") */ declare function getCssVar(name: string, el?: HTMLElement): string; /** * 解析日期字符串,支持多种常见格式 * @param dateStr 日期字符串 * @returns Date 对象 */ declare function parseDate(dateStr: any): Date; /** * 比较两个日期值,支持多种常见格式 * @param a 第一个日期值 * @param b 第二个日期值 * @returns 比较结果:-1 表示 a < b,0 表示 a = b,1 表示 a > b */ declare function compareDates(a: any, b: any): number; export { debounce, throttle, generateShortUUID, toLeaf, sortFixed, calCrossSpan, getMaxRow, decodeSpreadsheetStr, encodeToSpreadsheetStr, mergeRowCell, mergeColCell, getSpanArrByRow, getSpanObjByColumn, getCssVar, parseDate, compareDates, filterHiddenColumns, };