From a3523e6090a8141917a72bd9be38345c054ee7c8 Mon Sep 17 00:00:00 2001 From: "jiangtao.yang" Date: Wed, 20 May 2026 14:43:58 +0800 Subject: [PATCH 1/4] fix: run lint fix --- packages/vbi/package.json | 2 +- packages/vbi/src/chart-builder/builder.ts | 2 +- packages/vbi/src/chart-builder/connector.ts | 2 +- .../features/chart-type/chart-type-builder.ts | 4 ++-- .../features/dimensions/dim-node-builder.ts | 2 +- .../features/havingFilter/having-node-builder.ts | 2 +- .../src/chart-builder/features/limit/limit-builder.ts | 4 ++-- .../chart-builder/features/locale/locale-builder.ts | 4 ++-- .../features/measures/mea-node-builder.ts | 2 +- .../src/chart-builder/features/theme/theme-builder.ts | 4 ++-- .../features/whereFilter/where-node-builder.ts | 2 +- packages/vbi/src/chart-builder/modules/build.ts | 2 +- packages/vbi/src/chart-builder/modules/get-schema.ts | 2 +- packages/vbi/src/dashboard-builder/builder.ts | 2 +- .../dashboard-builder/features/chart/chart-builder.ts | 2 +- .../features/insight/insight-builder.ts | 2 +- packages/vbi/src/dashboard-builder/modules/build.ts | 2 +- packages/vbi/src/insight-builder/builder.ts | 2 +- packages/vbi/src/insight-builder/modules/build.ts | 2 +- packages/vbi/src/insight-builder/modules/is-empty.ts | 2 +- packages/vbi/src/report-builder/builder.ts | 2 +- .../src/report-builder/features/page/page-builder.ts | 2 +- .../features/page/page-collection-builder.ts | 2 +- packages/vbi/src/report-builder/modules/build.ts | 2 +- packages/vbi/src/types/builder/context.ts | 2 +- packages/vbi/src/vbi/from/set-base-dsl-fields.ts | 2 +- packages/vbi/src/vbi/normalize/ensure-having-group.ts | 2 +- packages/vbi/src/vbi/normalize/ensure-where-group.ts | 2 +- packages/vbi/src/vbi/resource-uuid.ts | 2 +- packages/vquery/package.json | 2 +- packages/vquery/src/VQuery.ts | 2 +- .../src/adapters/query-adapter/duckdbNodeAdapter.ts | 8 ++++---- .../src/adapters/query-adapter/duckdbWebAdapter.ts | 4 ++-- .../src/adapters/storage-adapter/indexeddbAdapter.ts | 4 ++-- .../src/adapters/storage-adapter/inmemoryAdapter.ts | 4 ++-- .../src/data-source-builder/dataSourceBuilder.ts | 2 +- packages/vquery/src/dataset/constants.ts | 2 +- packages/vquery/src/dataset/dataset.ts | 2 +- packages/vquery/src/sql-builder/builders/select.ts | 2 +- packages/vquery/src/sql-builder/builders/where.ts | 2 +- .../vquery/src/sql-builder/dialect/postgresDialect.ts | 5 +++-- packages/vquery/src/sql-builder/utils/guards.ts | 2 +- packages/vquery/src/types/adapters/QueryAdapter.ts | 2 +- packages/vquery/src/types/adapters/StorageAdapter.ts | 4 ++-- packages/vquery/src/types/dsl/QueryDSL.ts | 10 +++++----- .../tests/unit/adapters/indexeddbAdapter.test.ts | 4 ++-- .../vquery/tests/unit/adapters/inmemoryAdapter.test.ts | 4 ++-- .../unit/data-source-builder/dataSourceBuilder.test.ts | 2 +- packages/vquery/tests/unit/dataset/dataset.test.ts | 6 +++--- .../vquery/tests/unit/vquery/vquery_coverage.test.ts | 2 +- 50 files changed, 71 insertions(+), 70 deletions(-) diff --git a/packages/vbi/package.json b/packages/vbi/package.json index 1bdc540fb7..afcbeaf1b9 100644 --- a/packages/vbi/package.json +++ b/packages/vbi/package.json @@ -31,7 +31,7 @@ "build": "rslib build", "dev": "rslib build --watch --no-clean", "format": "oxfmt .", - "lint": "oxlint .", + "lint": "oxlint --fix .", "test": "rstest", "test:update": "rstest --update", "test:coverage": "rstest --coverage && node scripts/build-coverage-badge.mjs && open coverage/index.html", diff --git a/packages/vbi/src/chart-builder/builder.ts b/packages/vbi/src/chart-builder/builder.ts index db94714fdb..e0caaf4fd4 100644 --- a/packages/vbi/src/chart-builder/builder.ts +++ b/packages/vbi/src/chart-builder/builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import { resolveVBIChartBuilderAdapters } from 'src/chart-builder/adapters/vquery-vseed' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed' diff --git a/packages/vbi/src/chart-builder/connector.ts b/packages/vbi/src/chart-builder/connector.ts index 88415c6cbf..fc07748403 100644 --- a/packages/vbi/src/chart-builder/connector.ts +++ b/packages/vbi/src/chart-builder/connector.ts @@ -1,4 +1,4 @@ -import { VBIConnector, VBIConnectorId } from 'src/types/connector/connector' +import type { VBIConnector, VBIConnectorId } from 'src/types/connector/connector' export const connectorMap: Map Promise)> = new Map() diff --git a/packages/vbi/src/chart-builder/features/chart-type/chart-type-builder.ts b/packages/vbi/src/chart-builder/features/chart-type/chart-type-builder.ts index cf3ecd5b8d..8aeb6c0bfa 100644 --- a/packages/vbi/src/chart-builder/features/chart-type/chart-type-builder.ts +++ b/packages/vbi/src/chart-builder/features/chart-type/chart-type-builder.ts @@ -1,6 +1,6 @@ import { ChartTypeEnum } from '@visactor/vseed' -import { ObserveCallback } from 'src/types' -import * as Y from 'yjs' +import type { ObserveCallback } from 'src/types' +import type * as Y from 'yjs' import { getRecommendedDimensionEncodingsForChartType, getSupportedDimensionEncodingsForChartType, diff --git a/packages/vbi/src/chart-builder/features/dimensions/dim-node-builder.ts b/packages/vbi/src/chart-builder/features/dimensions/dim-node-builder.ts index 49d620bb47..0800cc1c34 100644 --- a/packages/vbi/src/chart-builder/features/dimensions/dim-node-builder.ts +++ b/packages/vbi/src/chart-builder/features/dimensions/dim-node-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIDimension, VBISort } from 'src/types' /** diff --git a/packages/vbi/src/chart-builder/features/havingFilter/having-node-builder.ts b/packages/vbi/src/chart-builder/features/havingFilter/having-node-builder.ts index 02c7fc6032..c3af5bfd3e 100644 --- a/packages/vbi/src/chart-builder/features/havingFilter/having-node-builder.ts +++ b/packages/vbi/src/chart-builder/features/havingFilter/having-node-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIHavingFilter, VBIHavingAggregate } from 'src/types' /** diff --git a/packages/vbi/src/chart-builder/features/limit/limit-builder.ts b/packages/vbi/src/chart-builder/features/limit/limit-builder.ts index ac837e0abd..b689351781 100644 --- a/packages/vbi/src/chart-builder/features/limit/limit-builder.ts +++ b/packages/vbi/src/chart-builder/features/limit/limit-builder.ts @@ -1,5 +1,5 @@ -import { ObserveCallback } from 'src/types' -import * as Y from 'yjs' +import type { ObserveCallback } from 'src/types' +import type * as Y from 'yjs' /** * @description 数据量限制构建器,用于设置和获取当前 limit diff --git a/packages/vbi/src/chart-builder/features/locale/locale-builder.ts b/packages/vbi/src/chart-builder/features/locale/locale-builder.ts index 05faf59058..65e4cc32e1 100644 --- a/packages/vbi/src/chart-builder/features/locale/locale-builder.ts +++ b/packages/vbi/src/chart-builder/features/locale/locale-builder.ts @@ -1,5 +1,5 @@ -import { ObserveCallback } from 'src/types' -import * as Y from 'yjs' +import type { ObserveCallback } from 'src/types' +import type * as Y from 'yjs' /** * @description 语言构建器,用于设置和获取当前语言 diff --git a/packages/vbi/src/chart-builder/features/measures/mea-node-builder.ts b/packages/vbi/src/chart-builder/features/measures/mea-node-builder.ts index 5e4a248eca..8ab0af9a3f 100644 --- a/packages/vbi/src/chart-builder/features/measures/mea-node-builder.ts +++ b/packages/vbi/src/chart-builder/features/measures/mea-node-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIMeasure, VBIMeasureFormat, VBISort } from 'src/types' /** diff --git a/packages/vbi/src/chart-builder/features/theme/theme-builder.ts b/packages/vbi/src/chart-builder/features/theme/theme-builder.ts index 8834b9d891..ea3dde56ab 100644 --- a/packages/vbi/src/chart-builder/features/theme/theme-builder.ts +++ b/packages/vbi/src/chart-builder/features/theme/theme-builder.ts @@ -1,5 +1,5 @@ -import { ObserveCallback } from 'src/types' -import * as Y from 'yjs' +import type { ObserveCallback } from 'src/types' +import type * as Y from 'yjs' /** * @description 主题构建器,用于设置和获取当前主题 diff --git a/packages/vbi/src/chart-builder/features/whereFilter/where-node-builder.ts b/packages/vbi/src/chart-builder/features/whereFilter/where-node-builder.ts index 0b1056d241..8411a1aec0 100644 --- a/packages/vbi/src/chart-builder/features/whereFilter/where-node-builder.ts +++ b/packages/vbi/src/chart-builder/features/whereFilter/where-node-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIWhereDatePredicate, VBIWhereFilter } from 'src/types' /** diff --git a/packages/vbi/src/chart-builder/modules/build.ts b/packages/vbi/src/chart-builder/modules/build.ts index 27fb2c20a8..c06559727a 100644 --- a/packages/vbi/src/chart-builder/modules/build.ts +++ b/packages/vbi/src/chart-builder/modules/build.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIChartDSL } from 'src/types' export const buildVBIChartDSL = (dsl: Y.Map): VBIChartDSL => { diff --git a/packages/vbi/src/chart-builder/modules/get-schema.ts b/packages/vbi/src/chart-builder/modules/get-schema.ts index 5104068881..1f2c4ea4f9 100644 --- a/packages/vbi/src/chart-builder/modules/get-schema.ts +++ b/packages/vbi/src/chart-builder/modules/get-schema.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import { getConnector } from '../connector' export const getBuilderSchema = async (dsl: Y.Map) => { diff --git a/packages/vbi/src/dashboard-builder/builder.ts b/packages/vbi/src/dashboard-builder/builder.ts index 89e8362e9e..91b23f8692 100644 --- a/packages/vbi/src/dashboard-builder/builder.ts +++ b/packages/vbi/src/dashboard-builder/builder.ts @@ -7,7 +7,7 @@ import { createEmptyDashboardLayout } from 'src/vbi/create-empty-dashboard' import { getOrCreateDashboardWidgets } from 'src/vbi/from/dashboard-widget-y-map' import type { VBIResourceRegistry } from 'src/vbi/resources' import { ensureResourceUUID, getResourceUUID } from 'src/vbi/resource-uuid' -import * as Y from 'yjs' +import type * as Y from 'yjs' import { DashboardChartCollectionBuilder, DashboardInsightCollectionBuilder, UndoManager } from './features' import { applyUpdateToDoc, buildVBIDashboardDSL, encodeDocStateAsUpdate, isEmptyVBIDashboardDSL } from './modules' diff --git a/packages/vbi/src/dashboard-builder/features/chart/chart-builder.ts b/packages/vbi/src/dashboard-builder/features/chart/chart-builder.ts index ba23f4e6dc..19e4119b27 100644 --- a/packages/vbi/src/dashboard-builder/features/chart/chart-builder.ts +++ b/packages/vbi/src/dashboard-builder/features/chart/chart-builder.ts @@ -1,7 +1,7 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIChartBuilder } from 'src/chart-builder/builder' import type { VBIDashboardBreakpoint, VBIDashboardItemLayout, VBIDashboardWidget } from 'src/types' -import * as Y from 'yjs' +import type * as Y from 'yjs' type ResourceReference = string | { getUUID: () => string } diff --git a/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts b/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts index acd61d01fa..6946898b86 100644 --- a/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts +++ b/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIInsightBuilder } from 'src/insight-builder/builder' import type { VBIDashboardBreakpoint, VBIDashboardItemLayout, VBIDashboardWidget } from 'src/types' diff --git a/packages/vbi/src/dashboard-builder/modules/build.ts b/packages/vbi/src/dashboard-builder/modules/build.ts index b5e9608c73..45e6951cab 100644 --- a/packages/vbi/src/dashboard-builder/modules/build.ts +++ b/packages/vbi/src/dashboard-builder/modules/build.ts @@ -1,6 +1,6 @@ import type { VBIDashboardDSL } from 'src/types' import { zVBIDashboardDSL } from 'src/types/dashboardDSL/dashboard' -import * as Y from 'yjs' +import type * as Y from 'yjs' export const buildVBIDashboardDSL = (dsl: Y.Map): VBIDashboardDSL => { return zVBIDashboardDSL.parse(dsl.toJSON()) diff --git a/packages/vbi/src/insight-builder/builder.ts b/packages/vbi/src/insight-builder/builder.ts index 4fc2986c68..418cc5acbb 100644 --- a/packages/vbi/src/insight-builder/builder.ts +++ b/packages/vbi/src/insight-builder/builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIInsightBuilderInterface, VBIInsightDSL } from 'src/types' import { UndoManager } from 'src/chart-builder/features' import { applyUpdateToDoc, buildVBIInsightDSL, encodeDocStateAsUpdate, isEmptyVBIInsightDSL } from './modules' diff --git a/packages/vbi/src/insight-builder/modules/build.ts b/packages/vbi/src/insight-builder/modules/build.ts index 1f10ebc409..91b4d597a1 100644 --- a/packages/vbi/src/insight-builder/modules/build.ts +++ b/packages/vbi/src/insight-builder/modules/build.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIInsightDSL } from 'src/types' import { zVBIInsightDSL } from 'src/types/insightDSL/insight' diff --git a/packages/vbi/src/insight-builder/modules/is-empty.ts b/packages/vbi/src/insight-builder/modules/is-empty.ts index 7abb62e5d9..092530794d 100644 --- a/packages/vbi/src/insight-builder/modules/is-empty.ts +++ b/packages/vbi/src/insight-builder/modules/is-empty.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' export const isEmptyVBIInsightDSL = (dsl: Y.Map): boolean => { return (dsl.get('content') ?? '') === '' diff --git a/packages/vbi/src/report-builder/builder.ts b/packages/vbi/src/report-builder/builder.ts index 5a4c18bfc9..830a9ff08b 100644 --- a/packages/vbi/src/report-builder/builder.ts +++ b/packages/vbi/src/report-builder/builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIChartBuilder } from 'src/chart-builder/builder' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIInsightBuilder } from 'src/insight-builder/builder' diff --git a/packages/vbi/src/report-builder/features/page/page-builder.ts b/packages/vbi/src/report-builder/features/page/page-builder.ts index 459a002526..d34f4aca83 100644 --- a/packages/vbi/src/report-builder/features/page/page-builder.ts +++ b/packages/vbi/src/report-builder/features/page/page-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIChartBuilder } from 'src/chart-builder/builder' import type { VBIInsightBuilder } from 'src/insight-builder/builder' diff --git a/packages/vbi/src/report-builder/features/page/page-collection-builder.ts b/packages/vbi/src/report-builder/features/page/page-collection-builder.ts index 878a0bcb6b..06184f8e0d 100644 --- a/packages/vbi/src/report-builder/features/page/page-collection-builder.ts +++ b/packages/vbi/src/report-builder/features/page/page-collection-builder.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIReportBuilder } from 'src/report-builder/builder' import { createEmptyReportPage } from 'src/vbi/index' diff --git a/packages/vbi/src/report-builder/modules/build.ts b/packages/vbi/src/report-builder/modules/build.ts index 504dc5e39b..9afb659d01 100644 --- a/packages/vbi/src/report-builder/modules/build.ts +++ b/packages/vbi/src/report-builder/modules/build.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIReportDSL } from 'src/types' import { zVBIReportDSL } from 'src/types/reportDSL/report' diff --git a/packages/vbi/src/types/builder/context.ts b/packages/vbi/src/types/builder/context.ts index f784b363f9..e91752fb20 100644 --- a/packages/vbi/src/types/builder/context.ts +++ b/packages/vbi/src/types/builder/context.ts @@ -1,4 +1,4 @@ -import { VBIChartDSL } from '../chartDSL' +import type { VBIChartDSL } from '../chartDSL' export interface BuilderContext { getVBIChartDSL(): VBIChartDSL diff --git a/packages/vbi/src/vbi/from/set-base-dsl-fields.ts b/packages/vbi/src/vbi/from/set-base-dsl-fields.ts index c1a39f6ee7..a49637a5cc 100644 --- a/packages/vbi/src/vbi/from/set-base-dsl-fields.ts +++ b/packages/vbi/src/vbi/from/set-base-dsl-fields.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import type { VBIChartDSLInput } from 'src/types' export const setBaseDSLFields = (dsl: Y.Map, vbi: VBIChartDSLInput) => { diff --git a/packages/vbi/src/vbi/normalize/ensure-having-group.ts b/packages/vbi/src/vbi/normalize/ensure-having-group.ts index 8b6801b406..d32e473371 100644 --- a/packages/vbi/src/vbi/normalize/ensure-having-group.ts +++ b/packages/vbi/src/vbi/normalize/ensure-having-group.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import { createHavingGroup } from 'src/chart-builder/features/havingFilter/having-utils' import { ensureYArray } from './ensure-y-array' import type { FilterGroupInput } from './types' diff --git a/packages/vbi/src/vbi/normalize/ensure-where-group.ts b/packages/vbi/src/vbi/normalize/ensure-where-group.ts index 5ad0ccc68d..c7d968d6af 100644 --- a/packages/vbi/src/vbi/normalize/ensure-where-group.ts +++ b/packages/vbi/src/vbi/normalize/ensure-where-group.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import { createWhereGroup } from 'src/chart-builder/features/whereFilter/where-utils' import { ensureYArray } from './ensure-y-array' import type { FilterGroupInput } from './types' diff --git a/packages/vbi/src/vbi/resource-uuid.ts b/packages/vbi/src/vbi/resource-uuid.ts index cadcf68320..8975116808 100644 --- a/packages/vbi/src/vbi/resource-uuid.ts +++ b/packages/vbi/src/vbi/resource-uuid.ts @@ -1,4 +1,4 @@ -import * as Y from 'yjs' +import type * as Y from 'yjs' import { id } from 'src/utils' const UUID_KEY = 'uuid' diff --git a/packages/vquery/package.json b/packages/vquery/package.json index 9c665f3e1a..905686d675 100644 --- a/packages/vquery/package.json +++ b/packages/vquery/package.json @@ -45,7 +45,7 @@ "build:docs": "node scripts/build-examples.js", "g": "pnpm run build:test && pnpm run build:docs && pnpm run test:update", "dev": "rslib build --watch --no-clean", - "lint": "oxlint .", + "lint": "oxlint --fix .", "test": "rstest", "format": "oxfmt .", "test:update": "rstest --update", diff --git a/packages/vquery/src/VQuery.ts b/packages/vquery/src/VQuery.ts index 0d3852987b..d6cf71eae8 100644 --- a/packages/vquery/src/VQuery.ts +++ b/packages/vquery/src/VQuery.ts @@ -1,5 +1,5 @@ import { Dataset } from './dataset/dataset' -import { RawDatasetSource, DatasetColumn, QueryAdapter, StorageAdapter } from './types' +import type { RawDatasetSource, DatasetColumn, QueryAdapter, StorageAdapter } from './types' import { DatasetSourceBuilder } from './data-source-builder' export class VQuery { diff --git a/packages/vquery/src/adapters/query-adapter/duckdbNodeAdapter.ts b/packages/vquery/src/adapters/query-adapter/duckdbNodeAdapter.ts index 95f12eff9c..9cacdfad09 100644 --- a/packages/vquery/src/adapters/query-adapter/duckdbNodeAdapter.ts +++ b/packages/vquery/src/adapters/query-adapter/duckdbNodeAdapter.ts @@ -1,8 +1,8 @@ -import type { DuckDBBundles } from '@duckdb/duckdb-wasm/blocking' -import { createDuckDB, ConsoleLogger, NODE_RUNTIME, DuckDBConnection } from '@duckdb/duckdb-wasm/blocking' +import type { DuckDBBundles, DuckDBConnection } from '@duckdb/duckdb-wasm/blocking' +import { createDuckDB, ConsoleLogger, NODE_RUNTIME } from '@duckdb/duckdb-wasm/blocking' import { createRequire } from 'node:module' -import { QueryAdapter } from '../../types' -import { QueryResult } from '../../types/DataSet' +import type { QueryAdapter } from '../../types' +import type { QueryResult } from '../../types/DataSet' export class DuckDBNodeQueryAdapter implements QueryAdapter { private bindings: any | null = null diff --git a/packages/vquery/src/adapters/query-adapter/duckdbWebAdapter.ts b/packages/vquery/src/adapters/query-adapter/duckdbWebAdapter.ts index 925e3bfbc8..27442d70d2 100644 --- a/packages/vquery/src/adapters/query-adapter/duckdbWebAdapter.ts +++ b/packages/vquery/src/adapters/query-adapter/duckdbWebAdapter.ts @@ -1,7 +1,7 @@ import type { DuckDBBundles, AsyncDuckDBConnection } from '@duckdb/duckdb-wasm' import { AsyncDuckDB, selectBundle, ConsoleLogger } from '@duckdb/duckdb-wasm' -import { QueryAdapter } from '../../types' -import { QueryResult } from '../../types/DataSet' +import type { QueryAdapter } from '../../types' +import type { QueryResult } from '../../types/DataSet' export class DuckDBWebQueryAdapter implements QueryAdapter { private db: AsyncDuckDB | null = null diff --git a/packages/vquery/src/adapters/storage-adapter/indexeddbAdapter.ts b/packages/vquery/src/adapters/storage-adapter/indexeddbAdapter.ts index 423aa47251..01dddd6bd8 100644 --- a/packages/vquery/src/adapters/storage-adapter/indexeddbAdapter.ts +++ b/packages/vquery/src/adapters/storage-adapter/indexeddbAdapter.ts @@ -1,5 +1,5 @@ -import { DatasetSource, StorageAdapter } from '../../types' -import { DatasetSchema } from '../../types/DataSet' +import type { DatasetSource, StorageAdapter } from '../../types' +import type { DatasetSchema } from '../../types/DataSet' import { idbPut, idbGet, idbDelete, idbGetAll } from './idb-helpers' type StoredDataset = { diff --git a/packages/vquery/src/adapters/storage-adapter/inmemoryAdapter.ts b/packages/vquery/src/adapters/storage-adapter/inmemoryAdapter.ts index f5995942e2..12c73f9fbd 100644 --- a/packages/vquery/src/adapters/storage-adapter/inmemoryAdapter.ts +++ b/packages/vquery/src/adapters/storage-adapter/inmemoryAdapter.ts @@ -1,5 +1,5 @@ -import { DatasetSource, StorageAdapter } from '../../types' -import { DatasetSchema } from '../../types/DataSet' +import type { DatasetSource, StorageAdapter } from '../../types' +import type { DatasetSchema } from '../../types/DataSet' // 为了代码清晰,定义一个内部存储记录的类型 type StoredDataset = { diff --git a/packages/vquery/src/data-source-builder/dataSourceBuilder.ts b/packages/vquery/src/data-source-builder/dataSourceBuilder.ts index e9c5eeb268..e6f33e4b5a 100644 --- a/packages/vquery/src/data-source-builder/dataSourceBuilder.ts +++ b/packages/vquery/src/data-source-builder/dataSourceBuilder.ts @@ -1,5 +1,5 @@ import { isUrl } from '../utils' -import { DatasetSourceType, DatasetSourceValue, RawDatasetSource } from '../types' +import type { DatasetSourceType, DatasetSourceValue, RawDatasetSource } from '../types' const MIME_TYPES: Record = { csv: 'text/csv', diff --git a/packages/vquery/src/dataset/constants.ts b/packages/vquery/src/dataset/constants.ts index 15c99b1673..add6ab3e95 100644 --- a/packages/vquery/src/dataset/constants.ts +++ b/packages/vquery/src/dataset/constants.ts @@ -1,4 +1,4 @@ -import { DatasetSourceType, DataType } from '../types' +import type { DatasetSourceType, DataType } from '../types' export const READ_FUNCTION_MAP: Record = { csv: 'read_csv_auto', diff --git a/packages/vquery/src/dataset/dataset.ts b/packages/vquery/src/dataset/dataset.ts index 149291db17..5ea47bdaab 100644 --- a/packages/vquery/src/dataset/dataset.ts +++ b/packages/vquery/src/dataset/dataset.ts @@ -1,4 +1,4 @@ -import { DatasetColumn, DatasetSource, QueryDSL, QueryAdapter, StorageAdapter, VQueryDSL } from '../types' +import type { DatasetColumn, DatasetSource, QueryDSL, QueryAdapter, StorageAdapter, VQueryDSL } from '../types' import { convertDSLToSQL } from '../sql-builder' import { READ_FUNCTION_MAP, buildColumnsStruct } from './constants' diff --git a/packages/vquery/src/sql-builder/builders/select.ts b/packages/vquery/src/sql-builder/builders/select.ts index b3793ff358..00aab26deb 100644 --- a/packages/vquery/src/sql-builder/builders/select.ts +++ b/packages/vquery/src/sql-builder/builders/select.ts @@ -1,4 +1,4 @@ -import { SelectItem } from '../../types/dsl/Select' +import type { SelectItem } from '../../types/dsl/Select' import { isSelectItem } from '../utils' import { sql } from 'kysely' import type { SelectQueryBuilder } from 'kysely' diff --git a/packages/vquery/src/sql-builder/builders/where.ts b/packages/vquery/src/sql-builder/builders/where.ts index b3b8f8a375..12793f150b 100644 --- a/packages/vquery/src/sql-builder/builders/where.ts +++ b/packages/vquery/src/sql-builder/builders/where.ts @@ -1,4 +1,4 @@ -import { Where, WhereClause } from '../../types' +import type { Where, WhereClause } from '../../types' import { sql } from 'kysely' import type { RawBuilder, SelectQueryBuilder } from 'kysely' import { toSqlOperator } from '../utils' diff --git a/packages/vquery/src/sql-builder/dialect/postgresDialect.ts b/packages/vquery/src/sql-builder/dialect/postgresDialect.ts index 8f941594ca..4e09c12085 100644 --- a/packages/vquery/src/sql-builder/dialect/postgresDialect.ts +++ b/packages/vquery/src/sql-builder/dialect/postgresDialect.ts @@ -1,13 +1,14 @@ -import { Dialect, DummyDriver } from 'kysely' +import { DummyDriver } from 'kysely' import { PostgresQueryCompiler } from 'kysely' import { PostgresAdapter } from 'kysely' -import { Kysely } from 'kysely' +import type { Kysely } from 'kysely' import type { DatabaseIntrospector, SchemaMetadata, TableMetadata, DatabaseMetadata, DatabaseMetadataOptions, + Dialect, } from 'kysely' export class PostgresDialect implements Dialect { diff --git a/packages/vquery/src/sql-builder/utils/guards.ts b/packages/vquery/src/sql-builder/utils/guards.ts index 5c19e8d814..09a9749c1f 100644 --- a/packages/vquery/src/sql-builder/utils/guards.ts +++ b/packages/vquery/src/sql-builder/utils/guards.ts @@ -1,4 +1,4 @@ -import { SelectItem } from '../../types/dsl/Select' +import type { SelectItem } from '../../types/dsl/Select' export const isSelectItem = (item: keyof T | SelectItem): item is SelectItem => { return typeof item === 'object' && 'field' in item diff --git a/packages/vquery/src/types/adapters/QueryAdapter.ts b/packages/vquery/src/types/adapters/QueryAdapter.ts index 987ef64d28..5a323ea074 100644 --- a/packages/vquery/src/types/adapters/QueryAdapter.ts +++ b/packages/vquery/src/types/adapters/QueryAdapter.ts @@ -1,4 +1,4 @@ -import { QueryResult } from '../QueryResult' +import type { QueryResult } from '../QueryResult' export interface QueryAdapter { open: () => Promise diff --git a/packages/vquery/src/types/adapters/StorageAdapter.ts b/packages/vquery/src/types/adapters/StorageAdapter.ts index c46a1e76ec..92639f7d66 100644 --- a/packages/vquery/src/types/adapters/StorageAdapter.ts +++ b/packages/vquery/src/types/adapters/StorageAdapter.ts @@ -1,5 +1,5 @@ -import { DatasetSchema } from '../DataSet' -import { DatasetSource } from '../DataSource' +import type { DatasetSchema } from '../DataSet' +import type { DatasetSource } from '../DataSource' export interface StorageAdapter { open: () => Promise diff --git a/packages/vquery/src/types/dsl/QueryDSL.ts b/packages/vquery/src/types/dsl/QueryDSL.ts index 3dedc3ba49..7c8d637e1a 100644 --- a/packages/vquery/src/types/dsl/QueryDSL.ts +++ b/packages/vquery/src/types/dsl/QueryDSL.ts @@ -1,8 +1,8 @@ -import { GroupBy } from './GroupBy' -import { Having } from './Having' -import { OrderBy } from './OrderBy' -import { Select } from './Select' -import { Where } from './Where' +import type { GroupBy } from './GroupBy' +import type { Having } from './Having' +import type { OrderBy } from './OrderBy' +import type { Select } from './Select' +import type { Where } from './Where' export interface QueryDSL { select: Select
diff --git a/packages/vquery/tests/unit/adapters/indexeddbAdapter.test.ts b/packages/vquery/tests/unit/adapters/indexeddbAdapter.test.ts index 89d28214f0..02206bb4b2 100644 --- a/packages/vquery/tests/unit/adapters/indexeddbAdapter.test.ts +++ b/packages/vquery/tests/unit/adapters/indexeddbAdapter.test.ts @@ -1,6 +1,6 @@ import { IndexedDBAdapter } from '../../../src/adapters/storage-adapter/indexeddbAdapter' -import { DatasetSchema } from '../../../src/types/DataSet' -import { DatasetSource } from '../../../src/types' +import type { DatasetSchema } from '../../../src/types/DataSet' +import type { DatasetSource } from '../../../src/types' describe('IndexedDBAdapter', () => { let adapter: IndexedDBAdapter diff --git a/packages/vquery/tests/unit/adapters/inmemoryAdapter.test.ts b/packages/vquery/tests/unit/adapters/inmemoryAdapter.test.ts index 50a193559d..7db6f834a8 100644 --- a/packages/vquery/tests/unit/adapters/inmemoryAdapter.test.ts +++ b/packages/vquery/tests/unit/adapters/inmemoryAdapter.test.ts @@ -1,6 +1,6 @@ import { InMemoryAdapter } from '../../../src/adapters/storage-adapter/inmemoryAdapter' -import { DatasetSchema } from '../../../src/types/DataSet' -import { DatasetSource } from '../../../src/types' +import type { DatasetSchema } from '../../../src/types/DataSet' +import type { DatasetSource } from '../../../src/types' describe('InMemoryAdapter', () => { let adapter: InMemoryAdapter diff --git a/packages/vquery/tests/unit/data-source-builder/dataSourceBuilder.test.ts b/packages/vquery/tests/unit/data-source-builder/dataSourceBuilder.test.ts index c317446998..f1de9c0a43 100644 --- a/packages/vquery/tests/unit/data-source-builder/dataSourceBuilder.test.ts +++ b/packages/vquery/tests/unit/data-source-builder/dataSourceBuilder.test.ts @@ -1,5 +1,5 @@ import { DatasetSourceBuilder } from '@visactor/vquery' -import { RawDatasetSource } from '@visactor/vquery' +import type { RawDatasetSource } from '@visactor/vquery' describe('DatasetSourceBuilder', () => { it('should handle Blob input', async () => { diff --git a/packages/vquery/tests/unit/dataset/dataset.test.ts b/packages/vquery/tests/unit/dataset/dataset.test.ts index 1b570a5d8a..85e12c4e77 100644 --- a/packages/vquery/tests/unit/dataset/dataset.test.ts +++ b/packages/vquery/tests/unit/dataset/dataset.test.ts @@ -1,7 +1,7 @@ import { Dataset } from '@visactor/vquery' -import { QueryAdapter, StorageAdapter, DatasetSource } from '@visactor/vquery' -import { QueryResult } from '../../../src/types/DataSet' -import { DatasetSchema } from '../../../src/types/DataSet' +import type { QueryAdapter, StorageAdapter, DatasetSource } from '@visactor/vquery' +import type { QueryResult } from '../../../src/types/DataSet' +import type { DatasetSchema } from '../../../src/types/DataSet' class MockQueryAdapter implements QueryAdapter { open = async () => {} diff --git a/packages/vquery/tests/unit/vquery/vquery_coverage.test.ts b/packages/vquery/tests/unit/vquery/vquery_coverage.test.ts index 38dc6bb80e..d79f0dce29 100644 --- a/packages/vquery/tests/unit/vquery/vquery_coverage.test.ts +++ b/packages/vquery/tests/unit/vquery/vquery_coverage.test.ts @@ -1,5 +1,5 @@ import { VQuery } from '@visactor/vquery' -import { DatasetColumn, RawDatasetSource } from '@visactor/vquery' +import type { DatasetColumn, RawDatasetSource } from '@visactor/vquery' describe('VQuery Coverage', () => { let vquery: VQuery From 0da0a0188ec3d824482bd2f6f66820af2e0b4793 Mon Sep 17 00:00:00 2001 From: "jiangtao.yang" Date: Wed, 20 May 2026 14:52:45 +0800 Subject: [PATCH 2/4] fix lint warnings --- .oxlintrc.json | 7 +++++++ apps/vbi_fe/src/components/Collaborators.tsx | 2 +- apps/website/components/guide/Dataset20k.tsx | 2 +- apps/website/components/guide/PagePlayer.tsx | 9 ++++++--- apps/website/components/guide/raceChart/raceBar.tsx | 2 +- .../components/guide/raceChart/raceColumn.tsx | 2 +- .../website/components/guide/raceChart/raceDonut.tsx | 2 +- apps/website/components/guide/raceChart/raceLine.tsx | 2 +- apps/website/components/guide/raceChart/racePie.tsx | 2 +- .../components/guide/raceChart/raceScatter.tsx | 2 +- apps/website/components/render/Chart.tsx | 6 ++++-- apps/website/components/render/PivotChart.tsx | 6 ++++-- apps/website/components/render/PivotTable.tsx | 6 ++++-- apps/website/components/render/Table.tsx | 6 ++++-- apps/website/components/render/VSeedRender.tsx | 12 +++++------- .../website/components/vquery/VQueryResultRender.tsx | 2 +- apps/website/components/vseed/VSeedRender.tsx | 12 +++++------- .../src/components/Filter/HavingFilterModal.tsx | 3 ++- practices/professional/src/model/VBIStore.ts | 4 ++-- practices/standard/src/App/App.tsx | 2 +- .../standard/src/components/Render/VSeedRender.tsx | 12 +++++------- practices/standard/src/hooks/useVBIBuilder.ts | 2 +- practices/standard/src/hooks/useVBIChartType.ts | 2 +- practices/standard/src/hooks/useVBIDimensions.ts | 3 ++- practices/standard/src/hooks/useVBIHavingFilter.ts | 2 +- practices/standard/src/hooks/useVBIMeasures.ts | 3 ++- practices/standard/src/hooks/useVBIUndoManager.ts | 2 +- practices/standard/src/hooks/useVBIWhereFilter.ts | 3 ++- practices/standard/src/model/VBIStore.ts | 3 ++- .../src/components/Render/VSeedRender.tsx | 12 +++++------- practices/streamlined/src/model/VBIStore.ts | 4 ++-- tools/bugserver-trigger/scripts/trigger-test.ts | 3 ++- 32 files changed, 79 insertions(+), 63 deletions(-) diff --git a/.oxlintrc.json b/.oxlintrc.json index 7494985534..daa6fa49ea 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -34,6 +34,13 @@ "typescript/triple-slash-reference": "off" }, "overrides": [ + { + "files": ["apps/vbi_be/**/*.{ts,tsx}"], + "rules": { + "typescript/consistent-type-exports": "off", + "typescript/consistent-type-imports": "off" + } + }, { "files": [ "apps/vbi_cli/**/*.ts", diff --git a/apps/vbi_fe/src/components/Collaborators.tsx b/apps/vbi_fe/src/components/Collaborators.tsx index 3b831249b5..ad7ef068e2 100644 --- a/apps/vbi_fe/src/components/Collaborators.tsx +++ b/apps/vbi_fe/src/components/Collaborators.tsx @@ -1,6 +1,6 @@ import { Avatar, Tooltip } from 'antd' import { useEffect, useState } from 'react' -import { HocuspocusProvider } from '@hocuspocus/provider' +import type { HocuspocusProvider } from '@hocuspocus/provider' import { funnel } from 'remeda' import { CollaboratorCursorOverlay } from './CollaboratorCursorOverlay' import { diff --git a/apps/website/components/guide/Dataset20k.tsx b/apps/website/components/guide/Dataset20k.tsx index 56bebf4d27..eac0fc1157 100644 --- a/apps/website/components/guide/Dataset20k.tsx +++ b/apps/website/components/guide/Dataset20k.tsx @@ -1,5 +1,5 @@ import { memo } from 'react' -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VChartRender } from '@components/render/Chart' export const Dataset20K = memo(() => { diff --git a/apps/website/components/guide/PagePlayer.tsx b/apps/website/components/guide/PagePlayer.tsx index 9b175e6b6c..5ea4aea21d 100644 --- a/apps/website/components/guide/PagePlayer.tsx +++ b/apps/website/components/guide/PagePlayer.tsx @@ -1,7 +1,10 @@ import { useRef, useEffect, useState, memo } from 'react' -import VChart, { ISpec } from '@visactor/vchart' -import { ListTable, ListTableConstructorOptions, PivotTableConstructorOptions, PivotTable } from '@visactor/vtable' -import { registerAll, VSeed, Builder, isTable, isPivotTable } from '@visactor/vseed' +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { ListTableConstructorOptions, PivotTableConstructorOptions } from '@visactor/vtable' +import { ListTable, PivotTable } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' +import { registerAll, Builder, isTable, isPivotTable } from '@visactor/vseed' registerAll() const PagePlayer = memo(() => { diff --git a/apps/website/components/guide/raceChart/raceBar.tsx b/apps/website/components/guide/raceChart/raceBar.tsx index 4b04327b37..1a0d4f1b5a 100644 --- a/apps/website/components/guide/raceChart/raceBar.tsx +++ b/apps/website/components/guide/raceChart/raceBar.tsx @@ -1,4 +1,4 @@ -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VSeedRender } from '@components' import { memo } from 'react' diff --git a/apps/website/components/guide/raceChart/raceColumn.tsx b/apps/website/components/guide/raceChart/raceColumn.tsx index d2f6e29c48..156163c4fc 100644 --- a/apps/website/components/guide/raceChart/raceColumn.tsx +++ b/apps/website/components/guide/raceChart/raceColumn.tsx @@ -1,4 +1,4 @@ -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VSeedRender } from '@components' import { memo } from 'react' diff --git a/apps/website/components/guide/raceChart/raceDonut.tsx b/apps/website/components/guide/raceChart/raceDonut.tsx index 2f72fbc325..c301d411bf 100644 --- a/apps/website/components/guide/raceChart/raceDonut.tsx +++ b/apps/website/components/guide/raceChart/raceDonut.tsx @@ -1,4 +1,4 @@ -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VSeedRender } from '@components' import { memo } from 'react' diff --git a/apps/website/components/guide/raceChart/raceLine.tsx b/apps/website/components/guide/raceChart/raceLine.tsx index 72e6aa52e0..6efeab8213 100644 --- a/apps/website/components/guide/raceChart/raceLine.tsx +++ b/apps/website/components/guide/raceChart/raceLine.tsx @@ -1,4 +1,4 @@ -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VSeedRender } from '@components' import { memo } from 'react' diff --git a/apps/website/components/guide/raceChart/racePie.tsx b/apps/website/components/guide/raceChart/racePie.tsx index 039933786c..7197b69654 100644 --- a/apps/website/components/guide/raceChart/racePie.tsx +++ b/apps/website/components/guide/raceChart/racePie.tsx @@ -1,4 +1,4 @@ -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { VSeedRender } from '@components' import { memo } from 'react' diff --git a/apps/website/components/guide/raceChart/raceScatter.tsx b/apps/website/components/guide/raceChart/raceScatter.tsx index 29ce32b512..023d48933a 100644 --- a/apps/website/components/guide/raceChart/raceScatter.tsx +++ b/apps/website/components/guide/raceChart/raceScatter.tsx @@ -1,5 +1,5 @@ import { VSeedRender } from '@components' -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' export const RaceScatter = () => { const vseed: VSeed = { diff --git a/apps/website/components/render/Chart.tsx b/apps/website/components/render/Chart.tsx index 56bfb2e0c0..1e22629c84 100644 --- a/apps/website/components/render/Chart.tsx +++ b/apps/website/components/render/Chart.tsx @@ -1,8 +1,10 @@ import { useDark } from '@rspress/core/runtime' import { useRef, useEffect, memo } from 'react' -import VChart, { ISpec } from '@visactor/vchart' -import { registerAll, VSeed, Builder } from '@visactor/vseed' +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { VSeed } from '@visactor/vseed' +import { registerAll, Builder } from '@visactor/vseed' registerAll() export const VChartRender = memo((props: { vseed: VSeed }) => { diff --git a/apps/website/components/render/PivotChart.tsx b/apps/website/components/render/PivotChart.tsx index 1a13c72159..ef4cf22a0f 100644 --- a/apps/website/components/render/PivotChart.tsx +++ b/apps/website/components/render/PivotChart.tsx @@ -1,7 +1,9 @@ import { useRef, useEffect, memo } from 'react' import VChart from '@visactor/vchart' -import { register, PivotChart as VTablePivotChart, PivotChartConstructorOptions } from '@visactor/vtable' -import { registerAll, VSeed, Builder, ColorIdEncoding, DATUM_HIDE_KEY } from '@visactor/vseed' +import type { PivotChartConstructorOptions } from '@visactor/vtable' +import { register, PivotChart as VTablePivotChart } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' +import { registerAll, Builder, ColorIdEncoding, DATUM_HIDE_KEY } from '@visactor/vseed' import { useDark } from '@rspress/core/runtime' register.chartModule('vchart', VChart) diff --git a/apps/website/components/render/PivotTable.tsx b/apps/website/components/render/PivotTable.tsx index c4910b41a0..5da8a7973e 100644 --- a/apps/website/components/render/PivotTable.tsx +++ b/apps/website/components/render/PivotTable.tsx @@ -1,6 +1,8 @@ import { useRef, useEffect, memo } from 'react' -import { PivotTable as VTablePivotTable, PivotTableConstructorOptions } from '@visactor/vtable' -import { registerAll, VSeed, Builder, ColorIdEncoding } from '@visactor/vseed' +import type { PivotTableConstructorOptions } from '@visactor/vtable' +import { PivotTable as VTablePivotTable } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' +import { registerAll, Builder, ColorIdEncoding } from '@visactor/vseed' import { useDark } from '@rspress/core/runtime' registerAll() diff --git a/apps/website/components/render/Table.tsx b/apps/website/components/render/Table.tsx index 0c70b698a9..38631a05ba 100644 --- a/apps/website/components/render/Table.tsx +++ b/apps/website/components/render/Table.tsx @@ -1,6 +1,8 @@ import { useRef, useEffect, memo } from 'react' -import { ListTable as VTableListTable, ListTableConstructorOptions } from '@visactor/vtable' -import { registerAll, VSeed, Builder, ColorIdEncoding } from '@visactor/vseed' +import type { ListTableConstructorOptions } from '@visactor/vtable' +import { ListTable as VTableListTable } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' +import { registerAll, Builder, ColorIdEncoding } from '@visactor/vseed' import { useDark } from '@rspress/core/runtime' registerAll() diff --git a/apps/website/components/render/VSeedRender.tsx b/apps/website/components/render/VSeedRender.tsx index 605d55e8d3..f8964ae0fb 100644 --- a/apps/website/components/render/VSeedRender.tsx +++ b/apps/website/components/render/VSeedRender.tsx @@ -1,18 +1,16 @@ import { useRef, useEffect } from 'react' import { useDark } from '@rspress/core/runtime' -import VChart, { ISpec } from '@visactor/vchart' -import { - ListTable, - PivotTable, - PivotChart, - register, +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { ListTableConstructorOptions, PivotTableConstructorOptions, PivotChartConstructorOptions, } from '@visactor/vtable' +import { ListTable, PivotTable, PivotChart, register } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' import { registerAll, - VSeed, Builder, isPivotChart, isVChart, diff --git a/apps/website/components/vquery/VQueryResultRender.tsx b/apps/website/components/vquery/VQueryResultRender.tsx index 2e18468853..19aa896300 100644 --- a/apps/website/components/vquery/VQueryResultRender.tsx +++ b/apps/website/components/vquery/VQueryResultRender.tsx @@ -1,7 +1,7 @@ import type { VQueryDSL, DatasetColumn } from '@visactor/vquery' import { useEffect, useState, useRef } from 'react' import { VSeedRender } from '@components' -import { VSeed } from '@visactor/vseed' +import type { VSeed } from '@visactor/vseed' import { useDark } from '@rspress/core/runtime' interface VQueryConfig { diff --git a/apps/website/components/vseed/VSeedRender.tsx b/apps/website/components/vseed/VSeedRender.tsx index 8b81583c0f..1c0b60ca9c 100644 --- a/apps/website/components/vseed/VSeedRender.tsx +++ b/apps/website/components/vseed/VSeedRender.tsx @@ -1,18 +1,16 @@ import { useRef, useEffect, useState } from 'react' import { useDark } from '@rspress/core/runtime' -import VChart, { ISpec } from '@visactor/vchart' -import { - ListTable, - PivotTable, - PivotChart, - register, +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { ListTableConstructorOptions, PivotTableConstructorOptions, PivotChartConstructorOptions, } from '@visactor/vtable' +import { ListTable, PivotTable, PivotChart, register } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' import { registerAll, - VSeed, Builder, isPivotChart, isVChart, diff --git a/practices/professional/src/components/Filter/HavingFilterModal.tsx b/practices/professional/src/components/Filter/HavingFilterModal.tsx index 5e230f1318..e589eb0e10 100644 --- a/practices/professional/src/components/Filter/HavingFilterModal.tsx +++ b/practices/professional/src/components/Filter/HavingFilterModal.tsx @@ -1,7 +1,8 @@ import type { VBIHavingAggregate } from '@visactor/vbi' import { Form, InputNumber, Modal, Select } from 'antd' import type { FormInstance } from 'antd' -import { aggregateOptionsForRole, operatorOptions } from './havingOptions' +import type { aggregateOptionsForRole } from './havingOptions' +import { operatorOptions } from './havingOptions' import type { HavingAggregateFunc, HavingField } from './havingTypes' type HavingFilterModalProps = { diff --git a/practices/professional/src/model/VBIStore.ts b/practices/professional/src/model/VBIStore.ts index d306ca1f3d..8f8f9ba54f 100644 --- a/practices/professional/src/model/VBIStore.ts +++ b/practices/professional/src/model/VBIStore.ts @@ -1,5 +1,5 @@ -import { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' -import { VSeed } from '@visactor/vseed' +import type { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' +import type { VSeed } from '@visactor/vseed' import { createStore, type StoreApi } from 'zustand/vanilla' import { createDefaultBuilder, initVBIConnector } from 'src/utils/localConnector' diff --git a/practices/standard/src/App/App.tsx b/practices/standard/src/App/App.tsx index edfee78a94..5f75226008 100644 --- a/practices/standard/src/App/App.tsx +++ b/practices/standard/src/App/App.tsx @@ -1,4 +1,4 @@ -import { VBIChartBuilder } from '@visactor/vbi' +import type { VBIChartBuilder } from '@visactor/vbi' import { theme as antdTheme, Card, ConfigProvider, Flex, Spin } from 'antd' import deDE from 'antd/locale/de_DE' import enUS from 'antd/locale/en_US' diff --git a/practices/standard/src/components/Render/VSeedRender.tsx b/practices/standard/src/components/Render/VSeedRender.tsx index dab159fe76..be7348e3a2 100644 --- a/practices/standard/src/components/Render/VSeedRender.tsx +++ b/practices/standard/src/components/Render/VSeedRender.tsx @@ -1,17 +1,15 @@ import { useRef, useEffect } from 'react' -import VChart, { ISpec } from '@visactor/vchart' -import { - ListTable, - PivotTable, - PivotChart, - register, +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { PivotChartConstructorOptions, ListTableConstructorOptions, PivotTableConstructorOptions, } from '@visactor/vtable' +import { ListTable, PivotTable, PivotChart, register } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' import { registerAll, - VSeed, isPivotChart, isVChart, isPivotTable, diff --git a/practices/standard/src/hooks/useVBIBuilder.ts b/practices/standard/src/hooks/useVBIBuilder.ts index f9444e96d2..ff74b7b1d6 100644 --- a/practices/standard/src/hooks/useVBIBuilder.ts +++ b/practices/standard/src/hooks/useVBIBuilder.ts @@ -1,5 +1,5 @@ import { useState, useEffect, useCallback } from 'react' -import { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' +import type { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' import { DEMO_DEFAULT_LIMIT, DEMO_DEFAULT_LOCALE, diff --git a/practices/standard/src/hooks/useVBIChartType.ts b/practices/standard/src/hooks/useVBIChartType.ts index 65455d2985..7b6358b611 100644 --- a/practices/standard/src/hooks/useVBIChartType.ts +++ b/practices/standard/src/hooks/useVBIChartType.ts @@ -1,5 +1,5 @@ import { useState, useEffect, useCallback } from 'react' -import { VBIChartBuilder } from '@visactor/vbi' +import type { VBIChartBuilder } from '@visactor/vbi' /** * VBI ChartType Hook diff --git a/practices/standard/src/hooks/useVBIDimensions.ts b/practices/standard/src/hooks/useVBIDimensions.ts index ceb411d25a..d2a7e97249 100644 --- a/practices/standard/src/hooks/useVBIDimensions.ts +++ b/practices/standard/src/hooks/useVBIDimensions.ts @@ -1,5 +1,6 @@ import { useCallback } from 'react' -import { VBIChartBuilder, type VBIDimension as CoreVBIDimension, type VBISort } from '@visactor/vbi' +import type { VBIChartBuilder } from '@visactor/vbi' +import { type VBIDimension as CoreVBIDimension, type VBISort } from '@visactor/vbi' import { useBuilderDocState } from './useBuilderDocState' export type VBIDimension = CoreVBIDimension diff --git a/practices/standard/src/hooks/useVBIHavingFilter.ts b/practices/standard/src/hooks/useVBIHavingFilter.ts index 34fd6a8785..8b283880fb 100644 --- a/practices/standard/src/hooks/useVBIHavingFilter.ts +++ b/practices/standard/src/hooks/useVBIHavingFilter.ts @@ -1,5 +1,5 @@ import { useCallback } from 'react' -import { VBIChartBuilder, VBIHavingAggregate, VBIHavingClause } from '@visactor/vbi' +import type { VBIChartBuilder, VBIHavingAggregate, VBIHavingClause } from '@visactor/vbi' import { useBuilderDocState } from './useBuilderDocState' const EMPTY_HAVING_CLAUSES: VBIHavingClause[] = [] diff --git a/practices/standard/src/hooks/useVBIMeasures.ts b/practices/standard/src/hooks/useVBIMeasures.ts index 038f730136..a64c34020d 100644 --- a/practices/standard/src/hooks/useVBIMeasures.ts +++ b/practices/standard/src/hooks/useVBIMeasures.ts @@ -1,5 +1,6 @@ import { useCallback } from 'react' -import { VBIChartBuilder, type VBIMeasure as CoreVBIMeasure, type VBIMeasureFormat, type VBISort } from '@visactor/vbi' +import type { VBIChartBuilder } from '@visactor/vbi' +import { type VBIMeasure as CoreVBIMeasure, type VBIMeasureFormat, type VBISort } from '@visactor/vbi' import { useBuilderDocState } from './useBuilderDocState' export type VBIMeasure = Omit & { diff --git a/practices/standard/src/hooks/useVBIUndoManager.ts b/practices/standard/src/hooks/useVBIUndoManager.ts index bf715ea981..aaadae96f9 100644 --- a/practices/standard/src/hooks/useVBIUndoManager.ts +++ b/practices/standard/src/hooks/useVBIUndoManager.ts @@ -1,5 +1,5 @@ import { useState, useEffect, useCallback } from 'react' -import { VBIChartBuilder } from '@visactor/vbi' +import type { VBIChartBuilder } from '@visactor/vbi' const isEditableTarget = (target: EventTarget | null) => { if (!(target instanceof HTMLElement)) { diff --git a/practices/standard/src/hooks/useVBIWhereFilter.ts b/practices/standard/src/hooks/useVBIWhereFilter.ts index 233f425b88..69199abb4b 100644 --- a/practices/standard/src/hooks/useVBIWhereFilter.ts +++ b/practices/standard/src/hooks/useVBIWhereFilter.ts @@ -1,5 +1,6 @@ import { useCallback } from 'react' -import { VBIChartBuilder, VBIWhereClause, VBIWhereFilter, isVBIFilter, isVBIWhereGroup } from '@visactor/vbi' +import type { VBIChartBuilder, VBIWhereClause, VBIWhereFilter } from '@visactor/vbi' +import { isVBIFilter, isVBIWhereGroup } from '@visactor/vbi' import { useBuilderDocState } from './useBuilderDocState' const EMPTY_WHERE_CLAUSES: VBIWhereClause[] = [] diff --git a/practices/standard/src/model/VBIStore.ts b/practices/standard/src/model/VBIStore.ts index 6641731e69..daf45ef8d8 100644 --- a/practices/standard/src/model/VBIStore.ts +++ b/practices/standard/src/model/VBIStore.ts @@ -1,4 +1,5 @@ -import { VBI, VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' +import type { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' +import { VBI } from '@visactor/vbi' import { type DatasetColumn } from '@visactor/vquery' import { Builder as VSeedBuilder, type VSeed } from '@visactor/vseed' import { createDefaultBuilder, setLocalDataWithSchema } from 'src/utils/localConnector' diff --git a/practices/streamlined/src/components/Render/VSeedRender.tsx b/practices/streamlined/src/components/Render/VSeedRender.tsx index 4ed1eacdfe..a206c7de8e 100644 --- a/practices/streamlined/src/components/Render/VSeedRender.tsx +++ b/practices/streamlined/src/components/Render/VSeedRender.tsx @@ -1,14 +1,13 @@ import { useEffect, useRef } from 'react' -import VChart, { ISpec } from '@visactor/vchart' -import { - ListTable, - PivotChart, +import type { ISpec } from '@visactor/vchart' +import VChart from '@visactor/vchart' +import type { PivotChartConstructorOptions, - PivotTable, PivotTableConstructorOptions, ListTableConstructorOptions, - register, } from '@visactor/vtable' +import { ListTable, PivotChart, PivotTable, register } from '@visactor/vtable' +import type { VSeed } from '@visactor/vseed' import { Builder as VSeedBuilder, ColorIdEncoding, @@ -17,7 +16,6 @@ import { isTable, isVChart, registerAll, - VSeed, } from '@visactor/vseed' registerAll() diff --git a/practices/streamlined/src/model/VBIStore.ts b/practices/streamlined/src/model/VBIStore.ts index c7860f03b3..7e7d611c35 100644 --- a/practices/streamlined/src/model/VBIStore.ts +++ b/practices/streamlined/src/model/VBIStore.ts @@ -1,5 +1,5 @@ -import { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' -import { VSeed } from '@visactor/vseed' +import type { VBIChartBuilder, VBIChartDSL } from '@visactor/vbi' +import type { VSeed } from '@visactor/vseed' import { createStore, type StoreApi } from 'zustand/vanilla' import { createDefaultBuilder } from 'src/utils/demoConnector' diff --git a/tools/bugserver-trigger/scripts/trigger-test.ts b/tools/bugserver-trigger/scripts/trigger-test.ts index be7e3dd8a5..1701d02b0c 100644 --- a/tools/bugserver-trigger/scripts/trigger-test.ts +++ b/tools/bugserver-trigger/scripts/trigger-test.ts @@ -1,6 +1,7 @@ import nodeFetch from 'node-fetch' import NodeFormData from 'form-data' -import fs, { ReadStream } from 'fs' +import type { ReadStream } from 'fs' +import fs from 'fs' import path from 'path' const BUG_SERVER_HOST = 'https://bug-server.zijieapi.com' From 533c8416929abba2ffcc103d6d82a995b4356c50 Mon Sep 17 00:00:00 2001 From: "jiangtao.yang" Date: Wed, 20 May 2026 15:10:20 +0800 Subject: [PATCH 3/4] fix lint warnings --- .oxlintrc.json | 31 +++++++------------ .../components/practices/PracticePreview.tsx | 8 ----- .../features/insight/insight-builder.ts | 2 +- packages/vbi/src/report-builder/builder.ts | 7 +++-- .../features/page/page-collection-builder.ts | 4 +-- packages/vbi/src/vbi/create-vbi.ts | 16 +++++----- .../src/vbi/from/dashboard-widget-y-map.ts | 2 +- .../vbi/from/from-vbi-dashboard-dsl-input.ts | 2 +- .../src/vbi/from/from-vbi-report-dsl-input.ts | 2 +- packages/vbi/src/vbi/namespaces/chart.ts | 4 +-- packages/vbi/src/vbi/namespaces/dashboard.ts | 4 +-- packages/vbi/src/vbi/namespaces/insight.ts | 4 +-- packages/vbi/src/vbi/namespaces/report.ts | 4 +-- packages/vbi/src/vbi/namespaces/resources.ts | 2 +- packages/vbi/src/vbi/resources/chart-store.ts | 2 +- .../vbi/src/vbi/resources/insight-store.ts | 2 +- practices/vbi-react-starter/src/ApiDemos.tsx | 2 +- 17 files changed, 41 insertions(+), 57 deletions(-) diff --git a/.oxlintrc.json b/.oxlintrc.json index daa6fa49ea..2cba8c051a 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -27,9 +27,16 @@ ], "rules": { "no-console": "off", - "import/no-cycle": "warn", - "typescript/consistent-type-exports": "warn", - "typescript/consistent-type-imports": "warn", + "import/no-cycle": "off", + "typescript/no-unused-vars": [ + "error", + { + "argsIgnorePattern": "^_", + "varsIgnorePattern": "^_" + } + ], + "typescript/consistent-type-exports": "error", + "typescript/consistent-type-imports": "error", "typescript/no-explicit-any": "off", "typescript/triple-slash-reference": "off" }, @@ -42,23 +49,9 @@ } }, { - "files": [ - "apps/vbi_cli/**/*.ts", - "apps/vbi_provider/**/*.ts", - "packages/vbi-agent/**/*.ts", - "packages/vbi-react/**/*.{ts,tsx}", - "packages/vseed/**/*.{ts,tsx}" - ], - "rules": { - "typescript/consistent-type-exports": "error", - "typescript/consistent-type-imports": "error" - } - }, - { - "files": ["packages/vbi-react/**/*.{ts,tsx}", "packages/vseed/**/*.{ts,tsx}"], + "files": ["packages/vbi/**/*.{ts,tsx}", "packages/vquery/**/*.{ts,tsx}"], "rules": { - "no-console": "error", - "typescript/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }] + "import/no-cycle": "error" } } ] diff --git a/apps/website/components/practices/PracticePreview.tsx b/apps/website/components/practices/PracticePreview.tsx index 7336c631aa..48a3c6e38c 100644 --- a/apps/website/components/practices/PracticePreview.tsx +++ b/apps/website/components/practices/PracticePreview.tsx @@ -4,14 +4,6 @@ import type { ComponentType } from 'react' const SUPPORTED_PRACTICE_LOCALES = ['zh-CN', 'en-US', 'ja-JP', 'de-DE', 'id-ID', 'fr-FR', 'ko-KR', 'vi-VN'] as const type PracticeLocale = (typeof SUPPORTED_PRACTICE_LOCALES)[number] -type PracticeTheme = 'light' | 'dark' - -type PracticeAppProps = { - hideLocale?: boolean - hideTheme?: boolean - locale?: PracticeLocale - theme?: PracticeTheme -} type PracticePreviewProps = { App: ComponentType diff --git a/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts b/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts index 6946898b86..65da68b79f 100644 --- a/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts +++ b/packages/vbi/src/dashboard-builder/features/insight/insight-builder.ts @@ -17,7 +17,7 @@ export interface DashboardInsightBuilderOptions { getBuilder?: (insightId: string) => VBIInsightBuilder | undefined } -export class DashboardInsightBuilder { +export class DashboardInsightBuilder<_TQueryDSL = DefaultVBIQueryDSL, _TSeedDSL = DefaultVBISeedDSL> { private _layouts: DashboardWidgetLayouts = {} constructor( diff --git a/packages/vbi/src/report-builder/builder.ts b/packages/vbi/src/report-builder/builder.ts index 830a9ff08b..477a79c23e 100644 --- a/packages/vbi/src/report-builder/builder.ts +++ b/packages/vbi/src/report-builder/builder.ts @@ -3,7 +3,8 @@ import type { VBIChartBuilder } from 'src/chart-builder/builder' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIInsightBuilder } from 'src/insight-builder/builder' import type { VBIReportDSL, VBIReportBuilderInterface, VBIReportBuilderOptions, VBIReportSnapshotDSL } from 'src/types' -import { UndoManager, ReportPageCollectionBuilder } from './features' +import { UndoManager } from 'src/chart-builder/features/undo-manager' +import { ReportPageCollectionBuilder } from './features/page/page-collection-builder' import { applyUpdateToDoc, buildVBIReportDSL, @@ -11,8 +12,8 @@ import { encodeDocStateAsUpdate, isEmptyVBIReportDSL, } from './modules' -import { getOrCreateReportPages } from 'src/vbi/from' -import type { VBIResourceRegistry } from 'src/vbi/resources' +import { getOrCreateReportPages } from 'src/vbi/from/report-page-y-map' +import type { VBIResourceRegistry } from 'src/vbi/resources/resource-registry' import { ensureResourceUUID, getResourceUUID } from 'src/vbi/resource-uuid' export interface VBIReportBuilderDependencies { diff --git a/packages/vbi/src/report-builder/features/page/page-collection-builder.ts b/packages/vbi/src/report-builder/features/page/page-collection-builder.ts index 06184f8e0d..4d71592b92 100644 --- a/packages/vbi/src/report-builder/features/page/page-collection-builder.ts +++ b/packages/vbi/src/report-builder/features/page/page-collection-builder.ts @@ -1,8 +1,8 @@ import type * as Y from 'yjs' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIReportBuilder } from 'src/report-builder/builder' -import { createEmptyReportPage } from 'src/vbi/index' -import { createReportPageYMap, getOrCreateReportPages, locateReportPageIndexById } from 'src/vbi/from' +import { createEmptyReportPage } from 'src/vbi/create-empty-report-page' +import { createReportPageYMap, getOrCreateReportPages, locateReportPageIndexById } from 'src/vbi/from/report-page-y-map' import { ReportPageBuilder } from './page-builder' export class ReportPageCollectionBuilder { diff --git a/packages/vbi/src/vbi/create-vbi.ts b/packages/vbi/src/vbi/create-vbi.ts index 98b646befc..6bff3413a4 100644 --- a/packages/vbi/src/vbi/create-vbi.ts +++ b/packages/vbi/src/vbi/create-vbi.ts @@ -1,14 +1,12 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIChartBuilderOptions } from 'src/types' -import { - createVBIChartNamespace, - createVBIConnectorNamespace, - createVBIDashboardNamespace, - createVBIInsightNamespace, - createVBIReportNamespace, - createVBIResourceNamespace, -} from './namespaces' -import { createVBIResourceRegistry } from './resources' +import { createVBIChartNamespace } from './namespaces/chart' +import { createVBIConnectorNamespace } from './namespaces/connectors' +import { createVBIDashboardNamespace } from './namespaces/dashboard' +import { createVBIInsightNamespace } from './namespaces/insight' +import { createVBIReportNamespace } from './namespaces/report' +import { createVBIResourceNamespace } from './namespaces/resources' +import { createVBIResourceRegistry } from './resources/resource-registry' import type { VBIInstance } from './types' /** diff --git a/packages/vbi/src/vbi/from/dashboard-widget-y-map.ts b/packages/vbi/src/vbi/from/dashboard-widget-y-map.ts index f19dc85a9d..f6620588a1 100644 --- a/packages/vbi/src/vbi/from/dashboard-widget-y-map.ts +++ b/packages/vbi/src/vbi/from/dashboard-widget-y-map.ts @@ -40,7 +40,7 @@ export const removeDashboardWidgetLayouts = (dsl: Y.Map, widgetId: string): } if (layout instanceof Y.Map) { - for (const [_breakpoint, items] of layout.entries()) { + for (const items of layout.values()) { if (items instanceof Y.Array) { const indices: number[] = [] items.forEach((item: any, index: number) => { diff --git a/packages/vbi/src/vbi/from/from-vbi-dashboard-dsl-input.ts b/packages/vbi/src/vbi/from/from-vbi-dashboard-dsl-input.ts index 8bfc5a01af..277a964a3b 100644 --- a/packages/vbi/src/vbi/from/from-vbi-dashboard-dsl-input.ts +++ b/packages/vbi/src/vbi/from/from-vbi-dashboard-dsl-input.ts @@ -3,7 +3,7 @@ import { VBIDashboardBuilder } from 'src/dashboard-builder/builder' import type { VBIDashboardBuilderOptions, VBIDashboardDSLInput } from 'src/types' import { zVBIDashboardDSL } from 'src/types/dashboardDSL/dashboard' import * as Y from 'yjs' -import type { VBIResourceRegistry } from '../resources' +import type { VBIResourceRegistry } from '../resources/resource-registry' import { createDashboardWidgetYMap, getOrCreateDashboardWidgets } from './dashboard-widget-y-map' export const createDashboardBuilderFromVBIDashboardDSLInput = < diff --git a/packages/vbi/src/vbi/from/from-vbi-report-dsl-input.ts b/packages/vbi/src/vbi/from/from-vbi-report-dsl-input.ts index ec4df88d95..4fa0bfba64 100644 --- a/packages/vbi/src/vbi/from/from-vbi-report-dsl-input.ts +++ b/packages/vbi/src/vbi/from/from-vbi-report-dsl-input.ts @@ -3,7 +3,7 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/ad import type { VBIReportDSLInput, VBIReportBuilderOptions } from 'src/types' import { zVBIReportDSL } from 'src/types/reportDSL/report' import { VBIReportBuilder } from 'src/report-builder/builder' -import type { VBIResourceRegistry } from '../resources' +import type { VBIResourceRegistry } from '../resources/resource-registry' import { ensureReportPages } from './report-page-y-map' export const createReportBuilderFromVBIReportDSLInput = ( diff --git a/packages/vbi/src/vbi/namespaces/chart.ts b/packages/vbi/src/vbi/namespaces/chart.ts index 751d38781d..ac8d6f3d9f 100644 --- a/packages/vbi/src/vbi/namespaces/chart.ts +++ b/packages/vbi/src/vbi/namespaces/chart.ts @@ -1,8 +1,8 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIChartBuilderOptions } from 'src/types' import { createEmptyChart } from '../create-empty-chart' -import { createChartBuilderFromVBIChartDSLInput } from '../from' -import type { VBIResourceRegistry } from '../resources' +import { createChartBuilderFromVBIChartDSLInput } from '../from/from-vbi-dsl-input' +import type { VBIResourceRegistry } from '../resources/resource-registry' import type { VBIChartNamespace } from '../types' export const mergeChartBuilderOptions = ( diff --git a/packages/vbi/src/vbi/namespaces/dashboard.ts b/packages/vbi/src/vbi/namespaces/dashboard.ts index a6bf9df449..a4da5190b5 100644 --- a/packages/vbi/src/vbi/namespaces/dashboard.ts +++ b/packages/vbi/src/vbi/namespaces/dashboard.ts @@ -1,8 +1,8 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIDashboardBuilderOptions, VBIChartBuilderOptions } from 'src/types' import { createEmptyDashboard } from '../create-empty-dashboard' -import { createDashboardBuilderFromVBIDashboardDSLInput } from '../from' -import type { VBIResourceRegistry } from '../resources' +import { createDashboardBuilderFromVBIDashboardDSLInput } from '../from/from-vbi-dashboard-dsl-input' +import type { VBIResourceRegistry } from '../resources/resource-registry' import type { VBIDashboardNamespace } from '../types' import { mergeChartBuilderOptions } from './chart' diff --git a/packages/vbi/src/vbi/namespaces/insight.ts b/packages/vbi/src/vbi/namespaces/insight.ts index a346854fa4..15a97702bf 100644 --- a/packages/vbi/src/vbi/namespaces/insight.ts +++ b/packages/vbi/src/vbi/namespaces/insight.ts @@ -1,7 +1,7 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import { createEmptyInsight } from '../create-empty-insight' -import { createInsightBuilderFromVBIInsightDSLInput } from '../from' -import type { VBIResourceRegistry } from '../resources' +import { createInsightBuilderFromVBIInsightDSLInput } from '../from/from-vbi-insight-dsl-input' +import type { VBIResourceRegistry } from '../resources/resource-registry' import type { VBIInsightNamespace } from '../types' export const createVBIInsightNamespace = ( diff --git a/packages/vbi/src/vbi/namespaces/report.ts b/packages/vbi/src/vbi/namespaces/report.ts index facba94b99..4f8bd8de5c 100644 --- a/packages/vbi/src/vbi/namespaces/report.ts +++ b/packages/vbi/src/vbi/namespaces/report.ts @@ -2,8 +2,8 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/ad import type { VBIChartBuilderOptions, VBIReportBuilderOptions } from 'src/types' import { createEmptyReport } from '../create-empty-report' import { createEmptyReportPage } from '../create-empty-report-page' -import { createReportBuilderFromVBIReportDSLInput } from '../from' -import type { VBIResourceRegistry } from '../resources' +import { createReportBuilderFromVBIReportDSLInput } from '../from/from-vbi-report-dsl-input' +import type { VBIResourceRegistry } from '../resources/resource-registry' import type { VBIReportNamespace } from '../types' import { mergeChartBuilderOptions } from './chart' diff --git a/packages/vbi/src/vbi/namespaces/resources.ts b/packages/vbi/src/vbi/namespaces/resources.ts index b57d268687..d7f1d90015 100644 --- a/packages/vbi/src/vbi/namespaces/resources.ts +++ b/packages/vbi/src/vbi/namespaces/resources.ts @@ -1,7 +1,7 @@ import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import { zVBIChartDSL } from 'src/types/chartDSL/vbi/vbi' import { zVBIInsightDSL } from 'src/types/insightDSL/insight' -import type { VBIResourceRegistry } from '../resources' +import type { VBIResourceRegistry } from '../resources/resource-registry' import type { VBIResourceNamespace } from '../types' export const createVBIResourceNamespace = ( diff --git a/packages/vbi/src/vbi/resources/chart-store.ts b/packages/vbi/src/vbi/resources/chart-store.ts index c3e168c29e..8731440034 100644 --- a/packages/vbi/src/vbi/resources/chart-store.ts +++ b/packages/vbi/src/vbi/resources/chart-store.ts @@ -1,7 +1,7 @@ import type { VBIChartBuilder } from 'src/chart-builder/builder' import type { DefaultVBIQueryDSL, DefaultVBISeedDSL } from 'src/chart-builder/adapters/vquery-vseed/types' import type { VBIChartBuilderOptions, VBIChartDSL } from 'src/types' -import { createChartBuilderFromVBIChartDSLInput } from '../from' +import { createChartBuilderFromVBIChartDSLInput } from '../from/from-vbi-dsl-input' import { createResourceStore, type ResourceStore } from './resource-store' export type ChartStore = ResourceStore< diff --git a/packages/vbi/src/vbi/resources/insight-store.ts b/packages/vbi/src/vbi/resources/insight-store.ts index 297861de78..adf05b3824 100644 --- a/packages/vbi/src/vbi/resources/insight-store.ts +++ b/packages/vbi/src/vbi/resources/insight-store.ts @@ -1,6 +1,6 @@ import type { VBIInsightBuilder } from 'src/insight-builder/builder' import type { VBIInsightDSL } from 'src/types' -import { createInsightBuilderFromVBIInsightDSLInput } from '../from' +import { createInsightBuilderFromVBIInsightDSLInput } from '../from/from-vbi-insight-dsl-input' import { createResourceStore, type ResourceStore } from './resource-store' export type InsightStore = ResourceStore diff --git a/practices/vbi-react-starter/src/ApiDemos.tsx b/practices/vbi-react-starter/src/ApiDemos.tsx index 269c029cdd..5c03d33921 100644 --- a/practices/vbi-react-starter/src/ApiDemos.tsx +++ b/practices/vbi-react-starter/src/ApiDemos.tsx @@ -1,4 +1,4 @@ -import { useEffect, useMemo, useState, type CSSProperties, type ReactNode } from 'react' +import { useEffect, useState, type CSSProperties, type ReactNode } from 'react' import { VBI, type VBIChartBuilder } from '@visactor/vbi' import { BuilderLayout, From 4f942e118ff7cd15c59c5008c9500b5848ed3d07 Mon Sep 17 00:00:00 2001 From: "jiangtao.yang" Date: Wed, 20 May 2026 15:24:17 +0800 Subject: [PATCH 4/4] fix: remove import cycles --- .oxlintrc.json | 2 +- apps/website/components/guide/raceChart/raceBar.tsx | 2 +- apps/website/components/guide/raceChart/raceColumn.tsx | 2 +- apps/website/components/guide/raceChart/raceDonut.tsx | 2 +- apps/website/components/guide/raceChart/raceLine.tsx | 2 +- apps/website/components/guide/raceChart/racePie.tsx | 2 +- apps/website/components/guide/raceChart/raceScatter.tsx | 2 +- apps/website/components/vquery/VQueryResultRender.tsx | 2 +- packages/vseed/src/builder/builder/buildAdvanced.ts | 7 ++++--- packages/vseed/src/builder/builder/buildSpec.ts | 5 +++-- packages/vseed/src/builder/register/all.ts | 3 ++- packages/vseed/src/builder/register/theme/custom.ts | 3 ++- packages/vseed/src/builder/register/theme/dark.ts | 2 +- packages/vseed/src/builder/register/theme/light.ts | 2 +- packages/vseed/src/dataReshape/dataReshapeByEncoding.ts | 2 +- .../chart/pipes/reshape/pivotReshapeWithDualEncoding.ts | 2 +- .../vseed/src/pipeline/spec/chart/pipes/init/histogram.ts | 2 +- packages/vseed/src/pipeline/utils/boxplot.ts | 2 +- packages/vseed/src/theme/tokenTheme.ts | 2 +- packages/vseed/src/types/dataSelector/selector.ts | 2 +- .../src/types/properties/annotation/annotationArea.ts | 2 +- .../properties/annotation/annotationDifferenceLine.ts | 2 +- .../properties/annotation/annotationHorizontalLine.ts | 2 +- .../src/types/properties/annotation/annotationPoint.ts | 4 ++-- .../types/properties/annotation/annotationVerticalLine.ts | 2 +- .../src/types/properties/annotation/zAnnotationArea.ts | 2 +- .../properties/annotation/zAnnotationDifferenceLine.ts | 2 +- .../properties/annotation/zAnnotationHorizontalLine.ts | 2 +- .../src/types/properties/annotation/zAnnotationPoint.ts | 2 +- .../types/properties/annotation/zAnnotationVerticalLine.ts | 2 +- .../vseed/src/types/properties/cellStyle/bodyCellStyle.ts | 4 ++-- packages/vseed/src/types/properties/markStyle/areaStyle.ts | 4 ++-- packages/vseed/src/types/properties/markStyle/barStyle.ts | 4 ++-- .../vseed/src/types/properties/markStyle/boxPlotStyle.ts | 2 +- packages/vseed/src/types/properties/markStyle/lineStyle.ts | 4 ++-- .../vseed/src/types/properties/markStyle/outlierStyle.ts | 2 +- .../vseed/src/types/properties/markStyle/pointStyle.ts | 4 ++-- .../vseed/src/types/properties/markStyle/zAreaStyle.ts | 2 +- 38 files changed, 51 insertions(+), 47 deletions(-) diff --git a/.oxlintrc.json b/.oxlintrc.json index 2cba8c051a..2bd4c009f2 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -27,7 +27,7 @@ ], "rules": { "no-console": "off", - "import/no-cycle": "off", + "import/no-cycle": "error", "typescript/no-unused-vars": [ "error", { diff --git a/apps/website/components/guide/raceChart/raceBar.tsx b/apps/website/components/guide/raceChart/raceBar.tsx index 1a0d4f1b5a..c2b82c56e0 100644 --- a/apps/website/components/guide/raceChart/raceBar.tsx +++ b/apps/website/components/guide/raceChart/raceBar.tsx @@ -1,5 +1,5 @@ import type { VSeed } from '@visactor/vseed' -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import { memo } from 'react' export const RaceBar = memo(() => { diff --git a/apps/website/components/guide/raceChart/raceColumn.tsx b/apps/website/components/guide/raceChart/raceColumn.tsx index 156163c4fc..03c6c8c345 100644 --- a/apps/website/components/guide/raceChart/raceColumn.tsx +++ b/apps/website/components/guide/raceChart/raceColumn.tsx @@ -1,5 +1,5 @@ import type { VSeed } from '@visactor/vseed' -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import { memo } from 'react' export const RaceColumn = memo(() => { diff --git a/apps/website/components/guide/raceChart/raceDonut.tsx b/apps/website/components/guide/raceChart/raceDonut.tsx index c301d411bf..7e5207886f 100644 --- a/apps/website/components/guide/raceChart/raceDonut.tsx +++ b/apps/website/components/guide/raceChart/raceDonut.tsx @@ -1,5 +1,5 @@ import type { VSeed } from '@visactor/vseed' -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import { memo } from 'react' export const RaceDonut = memo(() => { diff --git a/apps/website/components/guide/raceChart/raceLine.tsx b/apps/website/components/guide/raceChart/raceLine.tsx index 6efeab8213..afd280d173 100644 --- a/apps/website/components/guide/raceChart/raceLine.tsx +++ b/apps/website/components/guide/raceChart/raceLine.tsx @@ -1,5 +1,5 @@ import type { VSeed } from '@visactor/vseed' -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import { memo } from 'react' export const RaceLine = memo(() => { diff --git a/apps/website/components/guide/raceChart/racePie.tsx b/apps/website/components/guide/raceChart/racePie.tsx index 7197b69654..759abcded7 100644 --- a/apps/website/components/guide/raceChart/racePie.tsx +++ b/apps/website/components/guide/raceChart/racePie.tsx @@ -1,5 +1,5 @@ import type { VSeed } from '@visactor/vseed' -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import { memo } from 'react' export const RacePie = memo(() => { diff --git a/apps/website/components/guide/raceChart/raceScatter.tsx b/apps/website/components/guide/raceChart/raceScatter.tsx index 023d48933a..36bbd89736 100644 --- a/apps/website/components/guide/raceChart/raceScatter.tsx +++ b/apps/website/components/guide/raceChart/raceScatter.tsx @@ -1,4 +1,4 @@ -import { VSeedRender } from '@components' +import { VSeedRender } from '../../vseed/VSeedRender' import type { VSeed } from '@visactor/vseed' export const RaceScatter = () => { diff --git a/apps/website/components/vquery/VQueryResultRender.tsx b/apps/website/components/vquery/VQueryResultRender.tsx index 19aa896300..ee112d7a6e 100644 --- a/apps/website/components/vquery/VQueryResultRender.tsx +++ b/apps/website/components/vquery/VQueryResultRender.tsx @@ -1,6 +1,6 @@ import type { VQueryDSL, DatasetColumn } from '@visactor/vquery' import { useEffect, useState, useRef } from 'react' -import { VSeedRender } from '@components' +import { VSeedRender } from '../vseed/VSeedRender' import type { VSeed } from '@visactor/vseed' import { useDark } from '@rspress/core/runtime' diff --git a/packages/vseed/src/builder/builder/buildAdvanced.ts b/packages/vseed/src/builder/builder/buildAdvanced.ts index 6c7a0b8cff..051e091220 100644 --- a/packages/vseed/src/builder/builder/buildAdvanced.ts +++ b/packages/vseed/src/builder/builder/buildAdvanced.ts @@ -1,6 +1,6 @@ import type { AdvancedPipelineContext, AdvancedVSeed } from 'src/types' import { execPipeline } from '../../pipeline' -import { Builder } from './builder' +import type { Builder } from './builder' import { intl } from 'src/i18n' export const buildAdvanced = (builder: Builder): AdvancedVSeed | null => { @@ -10,7 +10,8 @@ export const buildAdvanced = (builder: Builder): AdvancedVSeed | null => { throw new Error('chartType is nil in buildAdvanced') } - const pipeline = Builder.getAdvancedPipeline(chartType) + const BuilderCtor = builder.constructor as typeof Builder + const pipeline = BuilderCtor.getAdvancedPipeline(chartType) if (!pipeline) { throw new Error( `please invoke registerAll or register ${chartType} before build, no advanced pipeline for chartType ${chartType}`, @@ -19,7 +20,7 @@ export const buildAdvanced = (builder: Builder): AdvancedVSeed | null => { const context: AdvancedPipelineContext = { vseed: builder.vseed, - customTheme: Builder.getThemeMap(), + customTheme: BuilderCtor.getThemeMap(), } if (builder.locale) { intl.setLocale(builder.locale) diff --git a/packages/vseed/src/builder/builder/buildSpec.ts b/packages/vseed/src/builder/builder/buildSpec.ts index 16368bc915..5cc9bd74a1 100644 --- a/packages/vseed/src/builder/builder/buildSpec.ts +++ b/packages/vseed/src/builder/builder/buildSpec.ts @@ -1,5 +1,5 @@ import type { AdvancedVSeed, Pipe, Spec, SpecPipelineContext } from 'src/types' -import { Builder } from './builder' +import type { Builder } from './builder' import { execPipeline } from '../../pipeline' import { intl } from 'src/i18n' @@ -8,7 +8,8 @@ export const buildSpec = (builder: Builder, advancedVSeed: AdvancedVSeed): Spec const { chartType } = builder.vseed - const pipeline = Builder.getSpecPipeline(chartType) + const BuilderCtor = builder.constructor as typeof Builder + const pipeline = BuilderCtor.getSpecPipeline(chartType) if (!pipeline) { throw new Error( `please invoke registerAll or register ${chartType} before build, no spec pipeline for chartType ${chartType}`, diff --git a/packages/vseed/src/builder/register/all.ts b/packages/vseed/src/builder/register/all.ts index d438e8bdc9..69c9aec9d1 100644 --- a/packages/vseed/src/builder/register/all.ts +++ b/packages/vseed/src/builder/register/all.ts @@ -33,7 +33,8 @@ import { registerHierarchySankey, registerSankey, } from './chartType' -import { registerDarkTheme, registerLightTheme } from './theme' +import { registerDarkTheme } from './theme/dark' +import { registerLightTheme } from './theme/light' /** * @description 注册所有内置的图表类型和主题。 * 包括:表格、透视表、折线图、柱状图、饼图、散点图等所有支持的图表,以及浅色/深色主题。 diff --git a/packages/vseed/src/builder/register/theme/custom.ts b/packages/vseed/src/builder/register/theme/custom.ts index 687b261e45..9c3b7483ac 100644 --- a/packages/vseed/src/builder/register/theme/custom.ts +++ b/packages/vseed/src/builder/register/theme/custom.ts @@ -1,6 +1,7 @@ import type { CustomThemeConfig } from 'src/types' import { Builder } from '../../builder' -import { darkTheme, lightTheme } from '../../../theme' +import { darkTheme } from '../../../theme/dark' +import { lightTheme } from '../../../theme/light' /** * @description 注册自定义主题。 diff --git a/packages/vseed/src/builder/register/theme/dark.ts b/packages/vseed/src/builder/register/theme/dark.ts index 1213aed6ce..79c6ad2e7f 100644 --- a/packages/vseed/src/builder/register/theme/dark.ts +++ b/packages/vseed/src/builder/register/theme/dark.ts @@ -1,4 +1,4 @@ -import { darkTheme } from '../../../theme' +import { darkTheme } from '../../../theme/dark' import { registerCustomTheme } from './custom' /** diff --git a/packages/vseed/src/builder/register/theme/light.ts b/packages/vseed/src/builder/register/theme/light.ts index 3da43bd379..85b619bb47 100644 --- a/packages/vseed/src/builder/register/theme/light.ts +++ b/packages/vseed/src/builder/register/theme/light.ts @@ -1,5 +1,5 @@ import { registerCustomTheme } from './custom' -import { lightTheme } from '../../../theme' +import { lightTheme } from '../../../theme/light' /** * @description 注册浅色主题 (Light Theme)。 diff --git a/packages/vseed/src/dataReshape/dataReshapeByEncoding.ts b/packages/vseed/src/dataReshape/dataReshapeByEncoding.ts index 21b862aeaa..5cb469867a 100644 --- a/packages/vseed/src/dataReshape/dataReshapeByEncoding.ts +++ b/packages/vseed/src/dataReshape/dataReshapeByEncoding.ts @@ -2,7 +2,7 @@ import type { Dataset, Dimension, Encoding, FoldInfo, Measure, Measures, UnfoldI import { foldMeasures } from './foldMeasures' import { FoldMeasureId, FoldMeasureName, FoldMeasureValue, Separator } from './constant' import { unfoldDimensions } from './unfoldDimensions' -import { createFormatterByDimension } from 'src/pipeline/utils' +import { createFormatterByDimension } from 'src/pipeline/utils/format/createFormatterByDimension' export const dataReshapeByEncoding = ( dataset: Dataset, diff --git a/packages/vseed/src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts b/packages/vseed/src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts index 7b6e2d28bd..6ddd6022f1 100644 --- a/packages/vseed/src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts +++ b/packages/vseed/src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts @@ -1,7 +1,7 @@ import { uniqueBy, unique } from 'remeda' import { dataReshapeByEncoding, DimAxisType, FoldPrimaryMeasureValue, FoldSecondaryMeasureValue } from 'src/dataReshape' -import { DEFAULT_DUAL_CHART_TYPE } from 'src/index' import { getColorMeasureId } from 'src/pipeline/spec/chart/pipes' +import { DEFAULT_DUAL_CHART_TYPE } from 'src/pipeline/utils/chatType' import type { AdvancedPipe, AdvancedVSeed, diff --git a/packages/vseed/src/pipeline/spec/chart/pipes/init/histogram.ts b/packages/vseed/src/pipeline/spec/chart/pipes/init/histogram.ts index e3393e8425..fdf3f39134 100644 --- a/packages/vseed/src/pipeline/spec/chart/pipes/init/histogram.ts +++ b/packages/vseed/src/pipeline/spec/chart/pipes/init/histogram.ts @@ -1,5 +1,5 @@ import type { IHistogramChartSpec } from '@visactor/vchart' -import { BinEndMeasureId, BinStartMeasureId, FoldMeasureValue } from 'src/index' +import { BinEndMeasureId, BinStartMeasureId, FoldMeasureValue } from 'src/dataReshape' import type { VChartSpecPipe } from 'src/types' export const initHistogram: VChartSpecPipe = (spec) => { diff --git a/packages/vseed/src/pipeline/utils/boxplot.ts b/packages/vseed/src/pipeline/utils/boxplot.ts index f89ba9cf36..cd62607e79 100644 --- a/packages/vseed/src/pipeline/utils/boxplot.ts +++ b/packages/vseed/src/pipeline/utils/boxplot.ts @@ -1,4 +1,4 @@ -import { BoxPlotPivotIndicator } from 'src/dataReshape' +import { BoxPlotPivotIndicator } from 'src/dataReshape/constant' export const revisedBoxPlotFieldKey = (fieldKey: string, groupId: string, isPivotChart = true) => { if (!isPivotChart) { diff --git a/packages/vseed/src/theme/tokenTheme.ts b/packages/vseed/src/theme/tokenTheme.ts index 965ace7c13..cab51c2b82 100644 --- a/packages/vseed/src/theme/tokenTheme.ts +++ b/packages/vseed/src/theme/tokenTheme.ts @@ -1,7 +1,7 @@ import tinycolor from 'tinycolor2' import type { Config, CustomThemeConfig } from 'src/types' import { registerAll } from '../builder/register/all' -import { registerCustomTheme } from '../builder/register/theme' +import { registerCustomTheme } from '../builder/register/theme/custom' import { darkTheme } from './dark' import { lightTheme } from './light' diff --git a/packages/vseed/src/types/dataSelector/selector.ts b/packages/vseed/src/types/dataSelector/selector.ts index 06ae068fcb..cd83616735 100644 --- a/packages/vseed/src/types/dataSelector/selector.ts +++ b/packages/vseed/src/types/dataSelector/selector.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zDatum, type Datum } from '../properties' +import { zDatum, type Datum } from '../properties/dataset/dataset' export type ValueSelector = string | number diff --git a/packages/vseed/src/types/properties/annotation/annotationArea.ts b/packages/vseed/src/types/properties/annotation/annotationArea.ts index d748860f8c..1e3bc0dd22 100644 --- a/packages/vseed/src/types/properties/annotation/annotationArea.ts +++ b/packages/vseed/src/types/properties/annotation/annotationArea.ts @@ -1,4 +1,4 @@ -import type { AreaSelectors, AreaSelector } from '../../dataSelector' +import type { AreaSelectors, AreaSelector } from '../../dataSelector/selector' export type AnnotationArea = { /** diff --git a/packages/vseed/src/types/properties/annotation/annotationDifferenceLine.ts b/packages/vseed/src/types/properties/annotation/annotationDifferenceLine.ts index 7f8294f6c6..19b7f4b5f8 100644 --- a/packages/vseed/src/types/properties/annotation/annotationDifferenceLine.ts +++ b/packages/vseed/src/types/properties/annotation/annotationDifferenceLine.ts @@ -1,4 +1,4 @@ -import type { DimensionSelector, MeasureSelector, PartialDatumSelector } from '../../dataSelector' +import type { DimensionSelector, MeasureSelector, PartialDatumSelector } from '../../dataSelector/selector' /** * @description 差异标注锚点选择器,仅支持能明确绑定到具体数据项的选择器类型。 diff --git a/packages/vseed/src/types/properties/annotation/annotationHorizontalLine.ts b/packages/vseed/src/types/properties/annotation/annotationHorizontalLine.ts index 62e88d4249..b7dd7e4d0e 100644 --- a/packages/vseed/src/types/properties/annotation/annotationHorizontalLine.ts +++ b/packages/vseed/src/types/properties/annotation/annotationHorizontalLine.ts @@ -1,4 +1,4 @@ -import type { ValueDynamicFilter } from '../../dataSelector' +import type { ValueDynamicFilter } from '../../dataSelector/selector' /** * @description 水平标注线, 根据用户设置的 yValue, 从左向右绘制一条末尾有箭头的线, 标签默认在标注线的终点正下方 diff --git a/packages/vseed/src/types/properties/annotation/annotationPoint.ts b/packages/vseed/src/types/properties/annotation/annotationPoint.ts index ac0a8936ae..8fa5d8b1e6 100644 --- a/packages/vseed/src/types/properties/annotation/annotationPoint.ts +++ b/packages/vseed/src/types/properties/annotation/annotationPoint.ts @@ -1,5 +1,5 @@ -import type { ChartDynamicFilter } from '../../dataSelector' -import { type Selector, type Selectors } from '../../dataSelector' +import type { ChartDynamicFilter } from '../../dataSelector/selector' +import { type Selector, type Selectors } from '../../dataSelector/selector' /** * @description 标注点, 根据用户设置的selector, 在数据点的左下方, 显示一个带有背景的标签. */ diff --git a/packages/vseed/src/types/properties/annotation/annotationVerticalLine.ts b/packages/vseed/src/types/properties/annotation/annotationVerticalLine.ts index 4d25c23d62..5fb540683b 100644 --- a/packages/vseed/src/types/properties/annotation/annotationVerticalLine.ts +++ b/packages/vseed/src/types/properties/annotation/annotationVerticalLine.ts @@ -1,4 +1,4 @@ -import type { ValueDynamicFilter } from '../../dataSelector' +import type { ValueDynamicFilter } from '../../dataSelector/selector' /** * @description 垂直标注线, 根据用户设置的selector 或 xValue, 从下向上绘制一条末尾有箭头的线, 标签默认在标注线终点的正左侧 diff --git a/packages/vseed/src/types/properties/annotation/zAnnotationArea.ts b/packages/vseed/src/types/properties/annotation/zAnnotationArea.ts index bb0a770d42..a1b1bf42a8 100644 --- a/packages/vseed/src/types/properties/annotation/zAnnotationArea.ts +++ b/packages/vseed/src/types/properties/annotation/zAnnotationArea.ts @@ -1,4 +1,4 @@ -import { zAreaSelector, zAreaSelectors } from '../../dataSelector' +import { zAreaSelector, zAreaSelectors } from '../../dataSelector/selector' import { z } from 'zod' export const zAnnotationArea = z.object({ diff --git a/packages/vseed/src/types/properties/annotation/zAnnotationDifferenceLine.ts b/packages/vseed/src/types/properties/annotation/zAnnotationDifferenceLine.ts index 253e4f07a5..adc93905e1 100644 --- a/packages/vseed/src/types/properties/annotation/zAnnotationDifferenceLine.ts +++ b/packages/vseed/src/types/properties/annotation/zAnnotationDifferenceLine.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zDimensionSelector, zMeasureSelector, zPartialSelector } from '../../dataSelector' +import { zDimensionSelector, zMeasureSelector, zPartialSelector } from '../../dataSelector/selector' export const zDifferenceSelector = z.union([zPartialSelector, zMeasureSelector, zDimensionSelector]) export const zDifferenceSelectors = z.array(zDifferenceSelector) diff --git a/packages/vseed/src/types/properties/annotation/zAnnotationHorizontalLine.ts b/packages/vseed/src/types/properties/annotation/zAnnotationHorizontalLine.ts index 1733c013ec..8ad204210f 100644 --- a/packages/vseed/src/types/properties/annotation/zAnnotationHorizontalLine.ts +++ b/packages/vseed/src/types/properties/annotation/zAnnotationHorizontalLine.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zValueDynamicFilter } from '../../dataSelector' +import { zValueDynamicFilter } from '../../dataSelector/selector' export const zAnnotationHorizontalLine = z.object({ yValue: z.union([z.number(), z.string(), z.array(z.union([z.number(), z.string()]))]).nullish(), diff --git a/packages/vseed/src/types/properties/annotation/zAnnotationPoint.ts b/packages/vseed/src/types/properties/annotation/zAnnotationPoint.ts index 3fd73e2a5b..1bddd77cd7 100644 --- a/packages/vseed/src/types/properties/annotation/zAnnotationPoint.ts +++ b/packages/vseed/src/types/properties/annotation/zAnnotationPoint.ts @@ -1,4 +1,4 @@ -import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector' +import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector/selector' import { z } from 'zod' export const zAnnotationPoint = z.object({ diff --git a/packages/vseed/src/types/properties/annotation/zAnnotationVerticalLine.ts b/packages/vseed/src/types/properties/annotation/zAnnotationVerticalLine.ts index 51249d47c3..4e59358915 100644 --- a/packages/vseed/src/types/properties/annotation/zAnnotationVerticalLine.ts +++ b/packages/vseed/src/types/properties/annotation/zAnnotationVerticalLine.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zValueDynamicFilter } from '../../dataSelector' +import { zValueDynamicFilter } from '../../dataSelector/selector' export const zAnnotationVerticalLine = z.object({ xValue: z.union([z.number(), z.string(), z.array(z.union([z.number(), z.string()]))]).nullish(), diff --git a/packages/vseed/src/types/properties/cellStyle/bodyCellStyle.ts b/packages/vseed/src/types/properties/cellStyle/bodyCellStyle.ts index ec24612e0a..4c8bcdb692 100644 --- a/packages/vseed/src/types/properties/cellStyle/bodyCellStyle.ts +++ b/packages/vseed/src/types/properties/cellStyle/bodyCellStyle.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import type { FieldSelector, TableDynamicFilter } from '../../dataSelector' +import type { FieldSelector, TableDynamicFilter } from '../../dataSelector/selector' import { zFieldSelector, zSelector, @@ -7,7 +7,7 @@ import { zTableDynamicFilter, type Selector, type Selectors, -} from '../../dataSelector' +} from '../../dataSelector/selector' export type BodyCellStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/areaStyle.ts b/packages/vseed/src/types/properties/markStyle/areaStyle.ts index 690a173f30..a6e4627bb6 100644 --- a/packages/vseed/src/types/properties/markStyle/areaStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/areaStyle.ts @@ -1,5 +1,5 @@ -import type { ChartDynamicFilter } from '../../dataSelector' -import { type Selector, type Selectors } from '../../dataSelector' +import type { ChartDynamicFilter } from '../../dataSelector/selector' +import { type Selector, type Selectors } from '../../dataSelector/selector' export type AreaStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/barStyle.ts b/packages/vseed/src/types/properties/markStyle/barStyle.ts index b9165e7098..f3d3af05e9 100644 --- a/packages/vseed/src/types/properties/markStyle/barStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/barStyle.ts @@ -1,6 +1,6 @@ import { z } from 'zod' -import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector' -import { zChartDynamicFilter, type ChartDynamicFilter } from '../../dataSelector' +import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector/selector' +import { zChartDynamicFilter, type ChartDynamicFilter } from '../../dataSelector/selector' export type BarStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/boxPlotStyle.ts b/packages/vseed/src/types/properties/markStyle/boxPlotStyle.ts index 751bfe4663..187f2c6916 100644 --- a/packages/vseed/src/types/properties/markStyle/boxPlotStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/boxPlotStyle.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector' +import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector/selector' export type BoxPlotStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/lineStyle.ts b/packages/vseed/src/types/properties/markStyle/lineStyle.ts index a64d71d558..4bd94f03a3 100644 --- a/packages/vseed/src/types/properties/markStyle/lineStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/lineStyle.ts @@ -1,6 +1,6 @@ import { z } from 'zod' -import type { ChartDynamicFilter } from '../../dataSelector' -import { zChartDynamicFilter, zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector' +import type { ChartDynamicFilter } from '../../dataSelector/selector' +import { zChartDynamicFilter, zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector/selector' export type LineStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/outlierStyle.ts b/packages/vseed/src/types/properties/markStyle/outlierStyle.ts index 9b8b39a32e..1a7442b0d9 100644 --- a/packages/vseed/src/types/properties/markStyle/outlierStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/outlierStyle.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector' +import { zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector/selector' export type OutlierStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/pointStyle.ts b/packages/vseed/src/types/properties/markStyle/pointStyle.ts index 1db01212cc..4d3beee28d 100644 --- a/packages/vseed/src/types/properties/markStyle/pointStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/pointStyle.ts @@ -1,6 +1,6 @@ import { z } from 'zod' -import type { ChartDynamicFilter } from '../../dataSelector' -import { zChartDynamicFilter, zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector' +import type { ChartDynamicFilter } from '../../dataSelector/selector' +import { zChartDynamicFilter, zSelector, zSelectors, type Selector, type Selectors } from '../../dataSelector/selector' export type PointStyle = { /** diff --git a/packages/vseed/src/types/properties/markStyle/zAreaStyle.ts b/packages/vseed/src/types/properties/markStyle/zAreaStyle.ts index 74e1e7b0cd..ec7a6fa031 100644 --- a/packages/vseed/src/types/properties/markStyle/zAreaStyle.ts +++ b/packages/vseed/src/types/properties/markStyle/zAreaStyle.ts @@ -1,5 +1,5 @@ import { z } from 'zod' -import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector' +import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector/selector' export const zAreaStyle = z.object({ selector: z.union([zSelector, zSelectors]).nullish(),