@univerjs-pro/sheets-pivot
Version:
Univer Sheets Pivot Table
52 lines (51 loc) • 2.49 kB
TypeScript
import { DataFieldManager } from '@univerjs-pro/engine-pivot';
import { Injector } from '@univerjs/core';
import { IDataFieldDataArray } from './type';
import { FUniver } from '@univerjs/core/facade';
import { FGenericPivotTable } from './f-generic-pivot-table';
/**
* @ignore
*/
export interface IFUniverPivotTableEventMixin {
/**
* Create a pivot table instance that does not depend on a workbook
* @param {IDataFieldDataArray} data - The data used to create the pivot table
* @param {new (...args: unknown[]) => DataFieldManager} [CustomDataFieldManager] - The custom data field manager class. If not passed, the default DataFieldManager will be used
* @returns {FGenericPivotTable} The generated pivot table instance.
* @example
* ```typescript
* const sourceData = [
* ["区域", "省份", "城市", "类别", "商品", "数量", "销售日期"],
* ["西部", "河南", "洛阳", "fruit", "葡萄", 38, "2021-06-30"],
* ["北部", "辽宁", "沈阳", "fruit", "葡萄", 45, "2023-08-31"]
* ]
* const pivot = univerAPI.generatePivotTable(sourceData);
* pivot.addFieldWithName('数量', 3);
* const res = pivot.getResultByCalculate();
* console.log('debugger', pivot, res);
* ```
*/
generatePivotTable<T extends DataFieldManager>(data: IDataFieldDataArray, CustomDataFieldManager?: new (...args: unknown[]) => T): FGenericPivotTable;
}
export declare class FUniverPivotTableEventMixin extends FUniver implements IFUniverPivotTableEventMixin {
_initialize(injector: Injector): void;
private _firePivotTableFieldAddedEvent;
private _firePivotTableFieldRemovedEvent;
private _firePivotTableFieldMovedEvent;
private _firePivotTableFieldCollapsedEvent;
private _firePivotTableFieldFilterChangedEvent;
private _firePivotTableFieldSortChangedEvent;
private _firePivotTableFieldSettingChangedEvent;
private _firePivotTableValuePositionChangedEvent;
private _fireAddPivotTableEvent;
private _fireBeforeAddPivotTableEvent;
private _firePivotTableRemovedEvent;
private _fireBeforeMovePivotTableEvent;
private _fireMovedPivotTableEvent;
private _fireRenderPivotTableEvent;
generatePivotTable<T extends DataFieldManager>(data: IDataFieldDataArray, CustomDataFieldManager?: new (...args: unknown[]) => T): FGenericPivotTable;
}
declare module '@univerjs/core/facade' {
interface FUniver extends IFUniverPivotTableEventMixin {
}
}