@visactor/vbi 0.4.16 → 0.4.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/builder/features/dimensions/dim-builder.d.ts +10 -10
- package/dist/builder/features/dimensions/dim-node-builder.d.ts +4 -0
- package/dist/builder/features/dimensions/dimension-utils.d.ts +4 -0
- package/dist/builder/features/havingFilter/having-builder.d.ts +3 -3
- package/dist/builder/features/measures/mea-builder.d.ts +9 -9
- package/dist/builder/features/measures/mea-node-builder.d.ts +4 -0
- package/dist/builder/features/measures/measure-utils.d.ts +4 -0
- package/dist/builder/features/whereFilter/where-builder.d.ts +3 -3
- package/dist/builder/index.d.ts +1 -1
- package/dist/builder/modules/apply-update.d.ts +2 -0
- package/dist/builder/modules/build-vquery.d.ts +4 -0
- package/dist/builder/modules/build-vseed.d.ts +8 -0
- package/dist/builder/modules/build.d.ts +3 -0
- package/dist/builder/modules/create-builder-features.d.ts +14 -0
- package/dist/builder/modules/encode-state-as-update.d.ts +2 -0
- package/dist/builder/modules/get-schema.d.ts +5 -0
- package/dist/builder/modules/index.d.ts +8 -0
- package/dist/builder/modules/is-empty.d.ts +2 -0
- package/dist/builder/vbi-builder.d.ts +7 -6
- package/dist/index.cjs +548 -412
- package/dist/index.d.ts +2 -1
- package/dist/index.js +546 -410
- package/dist/types/builder/VBIInterface.d.ts +1 -0
- package/dist/types/dsl/dimensions/dimensions.d.ts +2 -0
- package/dist/types/dsl/measures/measures.d.ts +2 -0
- package/dist/types/dsl/vbi/vbi.d.ts +2 -0
- package/dist/vbi/create-vbi.d.ts +14 -0
- package/dist/vbi/from/from-vbi-dsl-input.d.ts +3 -0
- package/dist/vbi/from/set-base-dsl-fields.d.ts +3 -0
- package/dist/vbi/generate-empty-dsl.d.ts +3 -0
- package/dist/vbi/normalize/ensure-having-group.d.ts +2 -0
- package/dist/vbi/normalize/ensure-where-group.d.ts +2 -0
- package/dist/vbi/normalize/ensure-y-array.d.ts +3 -0
- package/dist/vbi/normalize/to-y-map.d.ts +3 -0
- package/dist/vbi/normalize/types.d.ts +5 -0
- package/dist/vbi.d.ts +14 -0
- package/package.json +5 -5
- package/dist/builder/vbi.d.ts +0 -16
|
@@ -6,7 +6,7 @@ import { DimensionNodeBuilder } from './dim-node-builder';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class DimensionsBuilder {
|
|
8
8
|
private dsl;
|
|
9
|
-
constructor(
|
|
9
|
+
constructor(doc: Y.Doc, dsl: Y.Map<any>);
|
|
10
10
|
/**
|
|
11
11
|
* @description 添加一个维度
|
|
12
12
|
* @param field - 字段名
|
|
@@ -14,21 +14,21 @@ export declare class DimensionsBuilder {
|
|
|
14
14
|
*/
|
|
15
15
|
add(field: string, callback: (node: DimensionNodeBuilder) => void): DimensionsBuilder;
|
|
16
16
|
/**
|
|
17
|
-
* @description
|
|
18
|
-
* @param
|
|
17
|
+
* @description 删除指定 ID 的维度
|
|
18
|
+
* @param id - 维度 ID
|
|
19
19
|
*/
|
|
20
|
-
remove(
|
|
20
|
+
remove(id: string): DimensionsBuilder;
|
|
21
21
|
/**
|
|
22
|
-
* @description
|
|
23
|
-
* @param
|
|
22
|
+
* @description 更新指定维度 ID 的配置
|
|
23
|
+
* @param id - 维度 ID
|
|
24
24
|
* @param callback - 回调函数
|
|
25
25
|
*/
|
|
26
|
-
update(
|
|
26
|
+
update(id: string, callback: (node: DimensionNodeBuilder) => void): DimensionsBuilder;
|
|
27
27
|
/**
|
|
28
|
-
* @description
|
|
29
|
-
* @param
|
|
28
|
+
* @description 按回调条件查找第一个维度,行为与 Array.find 一致
|
|
29
|
+
* @param predicate - 查找条件
|
|
30
30
|
*/
|
|
31
|
-
find(
|
|
31
|
+
find(predicate: (node: DimensionNodeBuilder, index: number) => boolean): DimensionNodeBuilder | undefined;
|
|
32
32
|
/**
|
|
33
33
|
* @description 获取所有维度
|
|
34
34
|
*/
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as Y from 'yjs';
|
|
2
|
+
export declare const getOrCreateDimensions: (dsl: Y.Map<any>) => Y.Array<any>;
|
|
3
|
+
export declare const normalizeDimensionNodeIds: (dimensions: Y.Array<any>) => void;
|
|
4
|
+
export declare const locateDimensionIndexById: (dimensions: Y.Array<any>, dimensionId: string) => number;
|
|
@@ -39,10 +39,10 @@ export declare class HavingFilterBuilder {
|
|
|
39
39
|
*/
|
|
40
40
|
remove(idOrIndex: string | number): HavingFilterBuilder;
|
|
41
41
|
/**
|
|
42
|
-
* @description
|
|
43
|
-
* @param
|
|
42
|
+
* @description 按回调条件查找第一个条件(过滤或分组),行为与 Array.find 一致
|
|
43
|
+
* @param predicate - 查找条件
|
|
44
44
|
*/
|
|
45
|
-
find(
|
|
45
|
+
find(predicate: (entry: HavingFilterNodeBuilder | HavingGroupBuilder, index: number) => boolean): HavingFilterNodeBuilder | HavingGroupBuilder | undefined;
|
|
46
46
|
/**
|
|
47
47
|
* @description 清空所有 Having 过滤条件
|
|
48
48
|
*/
|
|
@@ -6,7 +6,7 @@ import { MeasureNodeBuilder } from './mea-node-builder';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class MeasuresBuilder {
|
|
8
8
|
private dsl;
|
|
9
|
-
constructor(
|
|
9
|
+
constructor(doc: Y.Doc, dsl: Y.Map<any>);
|
|
10
10
|
/**
|
|
11
11
|
* @description 添加一个度量
|
|
12
12
|
* @param field - 字段名
|
|
@@ -14,21 +14,21 @@ export declare class MeasuresBuilder {
|
|
|
14
14
|
*/
|
|
15
15
|
add(field: string, callback: (node: MeasureNodeBuilder) => void): MeasuresBuilder;
|
|
16
16
|
/**
|
|
17
|
-
* @description
|
|
18
|
-
* @param
|
|
17
|
+
* @description 删除指定 ID 的度量
|
|
18
|
+
* @param id - 度量 ID
|
|
19
19
|
*/
|
|
20
|
-
remove(
|
|
20
|
+
remove(id: string): MeasuresBuilder;
|
|
21
21
|
/**
|
|
22
22
|
* @description 更新度量配置
|
|
23
|
-
* @param
|
|
23
|
+
* @param id - 度量 ID
|
|
24
24
|
* @param callback - 回调函数
|
|
25
25
|
*/
|
|
26
|
-
update(
|
|
26
|
+
update(id: string, callback: (node: MeasureNodeBuilder) => void): MeasuresBuilder;
|
|
27
27
|
/**
|
|
28
|
-
* @description
|
|
29
|
-
* @param
|
|
28
|
+
* @description 按回调条件查找第一个度量,行为与 Array.find 一致
|
|
29
|
+
* @param predicate - 查找条件
|
|
30
30
|
*/
|
|
31
|
-
find(
|
|
31
|
+
find(predicate: (node: MeasureNodeBuilder, index: number) => boolean): MeasureNodeBuilder | undefined;
|
|
32
32
|
/**
|
|
33
33
|
* @description 获取所有度量
|
|
34
34
|
*/
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as Y from 'yjs';
|
|
2
|
+
export declare const getOrCreateMeasures: (dsl: Y.Map<any>) => Y.Array<any>;
|
|
3
|
+
export declare const normalizeMeasureNodeIds: (measures: Y.Array<any>) => void;
|
|
4
|
+
export declare const locateMeasureIndexById: (measures: Y.Array<any>, measureId: string) => number;
|
|
@@ -39,10 +39,10 @@ export declare class WhereFilterBuilder {
|
|
|
39
39
|
*/
|
|
40
40
|
remove(idOrIndex: string | number): WhereFilterBuilder;
|
|
41
41
|
/**
|
|
42
|
-
* @description
|
|
43
|
-
* @param
|
|
42
|
+
* @description 按回调条件查找第一个条件(过滤或分组),行为与 Array.find 一致
|
|
43
|
+
* @param predicate - 查找条件
|
|
44
44
|
*/
|
|
45
|
-
find(
|
|
45
|
+
find(predicate: (entry: WhereFilterNodeBuilder | WhereGroupBuilder, index: number) => boolean): WhereFilterNodeBuilder | WhereGroupBuilder | undefined;
|
|
46
46
|
/**
|
|
47
47
|
* @description 清空所有 Where 过滤条件
|
|
48
48
|
*/
|
package/dist/builder/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { VBIBuilder } from './vbi-builder';
|
|
2
|
-
export { VBI } from '
|
|
2
|
+
export { VBI } from '../vbi';
|
|
3
3
|
export { MeasuresBuilder, DimensionsBuilder, ChartTypeBuilder, HavingFilterBuilder, WhereFilterBuilder, ThemeBuilder, LocaleBuilder, LimitBuilder, UndoManager, } from './features';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { VSeedDSL } from '@visactor/vseed';
|
|
2
|
+
import type { VQueryDSL } from '@visactor/vquery';
|
|
3
|
+
import type { VBIDSL } from '../../types';
|
|
4
|
+
export interface BuildVSeedInput {
|
|
5
|
+
vbiDSL: VBIDSL;
|
|
6
|
+
queryDSL: VQueryDSL;
|
|
7
|
+
}
|
|
8
|
+
export declare const buildVSeedDSL: ({ vbiDSL, queryDSL }: BuildVSeedInput) => Promise<VSeedDSL>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as Y from 'yjs';
|
|
2
|
+
import { DimensionsBuilder, MeasuresBuilder, HavingFilterBuilder, WhereFilterBuilder, ChartTypeBuilder, ThemeBuilder, LocaleBuilder, LimitBuilder, UndoManager } from '../features';
|
|
3
|
+
export interface BuilderFeatureInstances {
|
|
4
|
+
chartType: ChartTypeBuilder;
|
|
5
|
+
measures: MeasuresBuilder;
|
|
6
|
+
dimensions: DimensionsBuilder;
|
|
7
|
+
havingFilter: HavingFilterBuilder;
|
|
8
|
+
whereFilter: WhereFilterBuilder;
|
|
9
|
+
theme: ThemeBuilder;
|
|
10
|
+
locale: LocaleBuilder;
|
|
11
|
+
limit: LimitBuilder;
|
|
12
|
+
undoManager: UndoManager;
|
|
13
|
+
}
|
|
14
|
+
export declare const createBuilderFeatures: (doc: Y.Doc, dsl: Y.Map<any>) => BuilderFeatureInstances;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { applyUpdateToDoc } from './apply-update';
|
|
2
|
+
export { encodeDocStateAsUpdate } from './encode-state-as-update';
|
|
3
|
+
export { buildVBIDSL } from './build';
|
|
4
|
+
export { buildVQueryDSL } from './build-vquery';
|
|
5
|
+
export { buildVSeedDSL } from './build-vseed';
|
|
6
|
+
export { isEmptyVBIDSL } from './is-empty';
|
|
7
|
+
export { getBuilderSchema } from './get-schema';
|
|
8
|
+
export { createBuilderFeatures } from './create-builder-features';
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import * as Y from 'yjs';
|
|
2
|
-
import { VSeedDSL } from '@visactor/vseed';
|
|
3
|
-
import { VQueryDSL } from '@visactor/vquery';
|
|
2
|
+
import type { VSeedDSL } from '@visactor/vseed';
|
|
3
|
+
import type { VQueryDSL } from '@visactor/vquery';
|
|
4
4
|
import { DimensionsBuilder, MeasuresBuilder, HavingFilterBuilder, WhereFilterBuilder, ChartTypeBuilder, ThemeBuilder, LocaleBuilder, LimitBuilder, UndoManager } from './features';
|
|
5
|
-
import { VBIDSL, VBIBuilderInterface } from '../types';
|
|
5
|
+
import type { VBIDSL, VBIBuilderInterface } from '../types';
|
|
6
6
|
export declare class VBIBuilder implements VBIBuilderInterface {
|
|
7
7
|
doc: Y.Doc;
|
|
8
8
|
dsl: Y.Map<any>;
|
|
9
|
-
undoManager: UndoManager;
|
|
10
9
|
chartType: ChartTypeBuilder;
|
|
11
10
|
measures: MeasuresBuilder;
|
|
12
11
|
dimensions: DimensionsBuilder;
|
|
@@ -15,12 +14,14 @@ export declare class VBIBuilder implements VBIBuilderInterface {
|
|
|
15
14
|
theme: ThemeBuilder;
|
|
16
15
|
locale: LocaleBuilder;
|
|
17
16
|
limit: LimitBuilder;
|
|
17
|
+
undoManager: UndoManager;
|
|
18
18
|
constructor(doc: Y.Doc);
|
|
19
|
-
applyUpdate(update: Uint8Array)
|
|
20
|
-
encodeStateAsUpdate(targetStateVector?: Uint8Array)
|
|
19
|
+
applyUpdate: (update: Uint8Array, transactionOrigin?: any) => void;
|
|
20
|
+
encodeStateAsUpdate: (targetStateVector?: Uint8Array) => Uint8Array<ArrayBufferLike>;
|
|
21
21
|
buildVSeed: () => Promise<VSeedDSL>;
|
|
22
22
|
buildVQuery: () => VQueryDSL;
|
|
23
23
|
build: () => VBIDSL;
|
|
24
|
+
isEmpty: () => boolean;
|
|
24
25
|
getSchema: () => Promise<{
|
|
25
26
|
name: string;
|
|
26
27
|
type: string;
|