Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: setDataCfg 函数类型优化 #2286

Merged
merged 5 commits into from
Jul 28, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion packages/s2-core/src/common/interface/store.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ export interface StoreKey {
// interaction state
interactionStateInfo: InteractionStateInfo;

originalDataCfg: S2DataConfig;
originalDataCfg: Partial<S2DataConfig>;

panelBBox: BBox;
// resize area group
Expand Down
12 changes: 8 additions & 4 deletions packages/s2-core/src/sheet-type/spread-sheet.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {
get,
includes,
isEmpty,
isEqual,
isFunction,
isString,
memoize,
Expand Down Expand Up @@ -61,6 +60,7 @@ import { RootInteraction } from '../interaction/root';
import { getTheme } from '../theme';
import { HdAdapter } from '../ui/hd-adapter';
import { BaseTooltip } from '../ui/tooltip';
import { removeOffscreenCanvas } from '../utils/canvas';
import { clearValueRangeState } from '../utils/condition/state-controller';
import { hideColumnsByThunkGroup } from '../utils/hide-columns';
import {
Expand All @@ -69,7 +69,6 @@ import {
getSafetyOptions,
} from '../utils/merge';
import { getTooltipData, getTooltipOptions } from '../utils/tooltip';
import { removeOffscreenCanvas } from '../utils/canvas';

export abstract class SpreadSheet extends EE {
// theme config
Expand Down Expand Up @@ -364,9 +363,14 @@ export abstract class SpreadSheet extends EE {
* Group sort params kept in {@see store} and
* Priority: group sort > advanced sort
* @param dataCfg
* @param reset reset: true, 直接使用用户传入的 DataCfg ,不再与上次数据进行合并
* @param reset 是否使用传入的 dataCfg 重置已保存的 dataCfg
*
* @example setDataCfg(dataCfg, true) 直接使用传入的 DataCfg,不再与上次数据进行合并
*/
public setDataCfg(dataCfg: S2DataConfig, reset?: boolean) {
public setDataCfg<T extends boolean = false>(
dataCfg: T extends true ? S2DataConfig : Partial<S2DataConfig>,
1wkk marked this conversation as resolved.
Show resolved Hide resolved
reset?: T,
) {
this.store.set('originalDataCfg', dataCfg);
if (reset) {
this.dataCfg = getSafetyDataConfig(dataCfg);
Expand Down
2 changes: 1 addition & 1 deletion s2-site/docs/api/basic-class/base-data-set.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ s2.dataSet.xx()
| getFieldName | get field name | `() => string` | |
| getFieldFormatter | Get the field formatting function | `() => (v: string) => unknown` | |
| getFieldDescription | Get field description | `() => string` | |
| setDataCfg | Set data configuration | (dataCfg: [S2DataConfig](/docs/api/general/S2DataConfig) , reset?: boolean) => void | The `reset` parameter needs to be used in `@antv/s2-v1.34.0` version |
| setDataCfg | Set data configuration | `<T extends boolean = false>(dataCfg: T extends true ?` [`S2DataConfig`](/docs/api/general/S2DataConfig) `: Partial<`[`S2DataConfig`](/docs/api/general/S2DataConfig)`>, reset?: T) => void` | The `reset` parameter needs to be used in `@antv/s2-v1.34.0` version |
| getDisplayDataSet | Get the currently displayed dataset | () => [DataType\[\]](#datatype) | |
| getDimensionValues | get dimension value | (filed: string, query?: [DataType](#datatype) ) => string\[] | |
| getCellData | Get a single cell data | (params: [CellDataParams](#celldataparams) ) => [DataType\[\]](#datatype) | |
Expand Down
2 changes: 1 addition & 1 deletion s2-site/docs/api/basic-class/base-data-set.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ s2.dataSet.getFieldName('type')
| getFieldName | 获取字段名 | `() => string` | |
| getFieldFormatter | 获取字段格式化函数 | `() => (v: string) => unknown` | |
| getFieldDescription | 获取字段描述 | `() => string` | |
| setDataCfg | 设置数据配置 | (dataCfg: [S2DataConfig](/docs/api/general/S2DataConfig), reset?: boolean) => void | `reset` 参数需在 `@antv/s2-v1.34.0`版本使用 |
| setDataCfg | 设置数据配置 | `<T extends boolean = false>(dataCfg: T extends true ?` [`S2DataConfig`](/docs/api/general/S2DataConfig) `: Partial<`[`S2DataConfig`](/docs/api/general/S2DataConfig)`>, reset?: T) => void` | `reset` 参数需在 `@antv/s2-v1.34.0`版本使用 |
| getDisplayDataSet | 获取当前显示的数据集 | () => [DataType[]](#datatype) | |
| getDimensionValues | 获取维值 | (filed: string, query?: [DataType](#datatype) ) => string[] | |
| getCellData | 获取单个的单元格数据 | (params: [CellDataParams](#celldataparams)) => [DataType[]](#datatype) | |
Expand Down
2 changes: 1 addition & 1 deletion s2-site/docs/api/basic-class/spreadsheet.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ s2.xx()
| hideTooltip | hide tooltip | `() => void` | |
| destroyTooltip | destroy tooltip | `() => void` | |
| registerIcons | Register custom svg icons (according to `options.customSVGIcons` ) | `() => void` | |
| setDataCfg | Update data configuration | (dataCfg: [S2DataConfig](/docs/api/general/S2DataConfig) , reset?: boolean ) => void | The `reset` parameter needs to be used in `@antv/s2-v1.34.0` version |
| setDataCfg | Update data configuration | `<T extends boolean = false>(dataCfg: T extends true ?` [`S2DataConfig`](/docs/api/general/S2DataConfig) `: Partial<`[`S2DataConfig`](/docs/api/general/S2DataConfig)`>, reset?: T) => void` | The `reset` parameter needs to be used in `@antv/s2-v1.34.0` version |
| setOptions | Update table configuration | (options: [S2Options](/docs/api/general/S2Options) , reset?: boolean) => void | The `reset` parameter needs to be used in `@antv/s2-v1.34.0` version |
| render | Re-render the table, if `reloadData` = true, the data will be recalculated, `reBuildDataSet` = true, rebuild the data set, `reBuildHiddenColumnsDetail` = true rebuild hidden column information | `(reloadData?: boolean, { reBuildDataSet?: boolean; reBuildHiddenColumnsDetail?: boolean }) => void` | |
| destroy | destroy form | `() => void` | |
Expand Down
2 changes: 1 addition & 1 deletion s2-site/docs/api/basic-class/spreadsheet.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ s2.isPivotMode()
| hideTooltip | 隐藏 tooltip | `() => void` | |
| destroyTooltip | 销毁 tooltip | `() => void` | |
| registerIcons | 注册 自定义 svg 图标 (根据 `options.customSVGIcons`) | `() => void` | |
| setDataCfg | 更新数据配置 | (dataCfg: [S2DataConfig](/docs/api/general/S2DataConfig), reset?: boolean ) => void | `reset` 参数需在 `@antv/s2-v1.34.0`版本使用 |
| setDataCfg | 更新数据配置 | `<T extends boolean = false>(dataCfg: T extends true ?` [`S2DataConfig`](/docs/api/general/S2DataConfig) `: Partial<`[`S2DataConfig`](/docs/api/general/S2DataConfig)`>, reset?: T) => void` | `reset` 参数需在 `@antv/s2-v1.34.0`版本使用 |
| setOptions | 更新表格配置 | (options: [S2Options](/docs/api/general/S2Options), reset?: boolean) => void | `reset` 参数需在 `@antv/s2-v1.34.0`版本使用 |
| render | 重新渲染表格,如果 `reloadData` = true, 则会重新计算数据,`reBuildDataSet` = true, 重新构建数据集,`reBuildHiddenColumnsDetail` = true 重新构建隐藏列信息 | `(reloadData?: boolean, { reBuildDataSet?: boolean; reBuildHiddenColumnsDetail?: boolean }) => void` | |
| destroy | 销毁表格 | `() => void` | |
Expand Down
Loading