@visactor/vseed 0.4.27 → 0.4.28

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.
Files changed (36) hide show
  1. package/dist/cjs/index.cjs +2 -2
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationDifferenceLine.js +63 -10
  4. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationDifferenceLine.js.map +1 -1
  5. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointCommon.d.ts +1 -0
  6. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointCommon.js +8 -3
  7. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointCommon.js.map +1 -1
  8. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js +3 -3
  9. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js.map +1 -1
  10. package/dist/esm/types/chartType/area/zArea.d.ts +2 -0
  11. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +2 -0
  12. package/dist/esm/types/chartType/bar/zBar.d.ts +2 -0
  13. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +2 -0
  14. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +2 -0
  15. package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +2 -0
  16. package/dist/esm/types/chartType/column/zColumn.d.ts +2 -0
  17. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +2 -0
  18. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +2 -0
  19. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +2 -0
  20. package/dist/esm/types/chartType/histogram/zHistogram.d.ts +2 -0
  21. package/dist/esm/types/chartType/line/zLine.d.ts +2 -0
  22. package/dist/esm/types/chartType/raceBar/zRaceBar.d.ts +2 -0
  23. package/dist/esm/types/chartType/raceColumn/zRaceColumn.d.ts +2 -0
  24. package/dist/esm/types/chartType/raceLine/zRaceLine.d.ts +2 -0
  25. package/dist/esm/types/chartType/raceScatter/zRaceScatter.d.ts +2 -0
  26. package/dist/esm/types/chartType/scatter/zScatter.d.ts +2 -0
  27. package/dist/esm/types/properties/annotation/annotation.d.ts +2 -0
  28. package/dist/esm/types/properties/annotation/annotationPoint.d.ts +4 -0
  29. package/dist/esm/types/properties/annotation/zAnnotationPoint.d.ts +1 -0
  30. package/dist/esm/types/properties/annotation/zAnnotationPoint.js +1 -0
  31. package/dist/esm/types/properties/annotation/zAnnotationPoint.js.map +1 -1
  32. package/dist/esm/types/properties/config/annotation/zAnnotation.js +1 -0
  33. package/dist/esm/types/properties/config/annotation/zAnnotation.js.map +1 -1
  34. package/dist/umd/index.js +78 -28
  35. package/dist/umd/index.js.map +1 -1
  36. package/package.json +2 -2
@@ -1033,6 +1033,7 @@ export declare const zRaceBar: z.ZodObject<{
1033
1033
  }>>>;
1034
1034
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1035
1035
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1036
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1036
1037
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1037
1038
  type: z.ZodLiteral<"row-with-field">;
1038
1039
  description: z.ZodOptional<z.ZodString>;
@@ -1214,6 +1215,7 @@ export declare const zRaceBar: z.ZodObject<{
1214
1215
  }>>>;
1215
1216
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1216
1217
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1218
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1217
1219
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1218
1220
  type: z.ZodLiteral<"row-with-field">;
1219
1221
  description: z.ZodOptional<z.ZodString>;
@@ -1033,6 +1033,7 @@ export declare const zRaceColumn: z.ZodObject<{
1033
1033
  }>>>;
1034
1034
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1035
1035
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1036
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1036
1037
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1037
1038
  type: z.ZodLiteral<"row-with-field">;
1038
1039
  description: z.ZodOptional<z.ZodString>;
@@ -1214,6 +1215,7 @@ export declare const zRaceColumn: z.ZodObject<{
1214
1215
  }>>>;
1215
1216
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1216
1217
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1218
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1217
1219
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1218
1220
  type: z.ZodLiteral<"row-with-field">;
1219
1221
  description: z.ZodOptional<z.ZodString>;
@@ -1379,6 +1379,7 @@ export declare const zRaceLine: z.ZodObject<{
1379
1379
  }>>>;
1380
1380
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1381
1381
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1382
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1382
1383
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1383
1384
  type: z.ZodLiteral<"row-with-field">;
1384
1385
  description: z.ZodOptional<z.ZodString>;
@@ -1560,6 +1561,7 @@ export declare const zRaceLine: z.ZodObject<{
1560
1561
  }>>>;
1561
1562
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1562
1563
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1564
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1563
1565
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1564
1566
  type: z.ZodLiteral<"row-with-field">;
1565
1567
  description: z.ZodOptional<z.ZodString>;
@@ -1065,6 +1065,7 @@ export declare const zRaceScatter: z.ZodObject<{
1065
1065
  }>>>;
1066
1066
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1067
1067
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1068
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1068
1069
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1069
1070
  type: z.ZodLiteral<"row-with-field">;
1070
1071
  description: z.ZodOptional<z.ZodString>;
@@ -1246,6 +1247,7 @@ export declare const zRaceScatter: z.ZodObject<{
1246
1247
  }>>>;
1247
1248
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1248
1249
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1250
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1249
1251
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1250
1252
  type: z.ZodLiteral<"row-with-field">;
1251
1253
  description: z.ZodOptional<z.ZodString>;
@@ -1036,6 +1036,7 @@ export declare const zScatter: z.ZodObject<{
1036
1036
  }>>>;
1037
1037
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1038
1038
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1039
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1039
1040
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1040
1041
  type: z.ZodLiteral<"row-with-field">;
1041
1042
  description: z.ZodOptional<z.ZodString>;
@@ -1217,6 +1218,7 @@ export declare const zScatter: z.ZodObject<{
1217
1218
  }>>>;
1218
1219
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
1219
1220
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
1221
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1220
1222
  dynamicFilter: z.ZodOptional<z.ZodObject<{
1221
1223
  type: z.ZodLiteral<"row-with-field">;
1222
1224
  description: z.ZodOptional<z.ZodString>;
@@ -74,6 +74,7 @@ export declare const zAnnotation: z.ZodObject<{
74
74
  }>>>;
75
75
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
76
76
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
77
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
77
78
  dynamicFilter: z.ZodOptional<z.ZodObject<{
78
79
  type: z.ZodLiteral<"row-with-field">;
79
80
  description: z.ZodOptional<z.ZodString>;
@@ -255,6 +256,7 @@ export declare const zAnnotation: z.ZodObject<{
255
256
  }>>>;
256
257
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
257
258
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
259
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
258
260
  dynamicFilter: z.ZodOptional<z.ZodObject<{
259
261
  type: z.ZodLiteral<"row-with-field">;
260
262
  description: z.ZodOptional<z.ZodString>;
@@ -8,6 +8,10 @@ export type AnnotationPoint = {
8
8
  * @description 标注点的选择器, 用于选择数据点.
9
9
  */
10
10
  selector?: Selector | Selectors;
11
+ /**
12
+ * @description 指定标注点所属的指标 id。在多 measure 场景下,可与 selector 组合以唯一定位目标指标对应的标注点。
13
+ */
14
+ measureId?: string;
11
15
  /**
12
16
  * 动态筛选器(AI生成代码执行)
13
17
  * @description
@@ -73,6 +73,7 @@ export declare const zAnnotationPoint: z.ZodObject<{
73
73
  }>>>;
74
74
  value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>]>;
75
75
  }, z.core.$strip>, z.ZodRecord<z.ZodUnion<[z.ZodString, z.ZodNumber]>, z.ZodAny>]>>]>>>;
76
+ measureId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
76
77
  dynamicFilter: z.ZodOptional<z.ZodObject<{
77
78
  type: z.ZodLiteral<"row-with-field">;
78
79
  description: z.ZodOptional<z.ZodString>;
@@ -5,6 +5,7 @@ const zAnnotationPoint = z.object({
5
5
  zSelector,
6
6
  zSelectors
7
7
  ]).nullish(),
8
+ measureId: z.string().nullish(),
8
9
  dynamicFilter: zChartDynamicFilter.optional(),
9
10
  text: z.string().or(z.array(z.string())).nullish(),
10
11
  textColor: z.string().default('#ffffff').nullish(),
@@ -1 +1 @@
1
- {"version":3,"file":"types/properties/annotation/zAnnotationPoint.js","sources":["../../../../../src/types/properties/annotation/zAnnotationPoint.ts"],"sourcesContent":["import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector'\nimport { z } from 'zod'\n\nexport const zAnnotationPoint = z.object({\n selector: z.union([zSelector, zSelectors]).nullish(),\n dynamicFilter: zChartDynamicFilter.optional(),\n text: z.string().or(z.array(z.string())).nullish(),\n textColor: z.string().default('#ffffff').nullish(),\n textFontSize: z.number().default(12).nullish(),\n textFontWeight: z.number().default(400).nullish(),\n textAlign: z.enum(['left', 'right', 'center']).default('center').nullish(),\n textBaseline: z.enum(['top', 'middle', 'bottom']).default('middle').nullish(),\n textBackgroundVisible: z.boolean().default(true).nullish(),\n textBackgroundColor: z.string().default('#212121').nullish(),\n textBackgroundBorderColor: z.string().nullish(),\n textBackgroundBorderWidth: z.number().default(1).nullish(),\n textBackgroundBorderRadius: z.number().default(4).nullish(),\n textBackgroundPadding: z.number().nullish(),\n\n offsetY: z.number().default(0).nullish(),\n offsetX: z.number().default(0).nullish(),\n})\n"],"names":["zAnnotationPoint","z","zSelector","zSelectors","zChartDynamicFilter"],"mappings":";;AAGO,MAAMA,mBAAmBC,EAAE,MAAM,CAAC;IACvC,UAAUA,EAAE,KAAK,CAAC;QAACC;QAAWC;KAAW,EAAE,OAAO;IAClD,eAAeC,oBAAoB,QAAQ;IAC3C,MAAMH,EAAE,MAAM,GAAG,EAAE,CAACA,EAAE,KAAK,CAACA,EAAE,MAAM,KAAK,OAAO;IAChD,WAAWA,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,OAAO;IAChD,cAAcA,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,OAAO;IAC5C,gBAAgBA,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,OAAO;IAC/C,WAAWA,CAAC,CAADA,OAAM,CAAC;QAAC;QAAQ;QAAS;KAAS,EAAE,OAAO,CAAC,UAAU,OAAO;IACxE,cAAcA,CAAC,CAADA,OAAM,CAAC;QAAC;QAAO;QAAU;KAAS,EAAE,OAAO,CAAC,UAAU,OAAO;IAC3E,uBAAuBA,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,OAAO;IACxD,qBAAqBA,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,OAAO;IAC1D,2BAA2BA,EAAE,MAAM,GAAG,OAAO;IAC7C,2BAA2BA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACxD,4BAA4BA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACzD,uBAAuBA,EAAE,MAAM,GAAG,OAAO;IAEzC,SAASA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACtC,SAASA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;AACxC"}
1
+ {"version":3,"file":"types/properties/annotation/zAnnotationPoint.js","sources":["../../../../../src/types/properties/annotation/zAnnotationPoint.ts"],"sourcesContent":["import { zChartDynamicFilter, zSelector, zSelectors } from '../../dataSelector'\nimport { z } from 'zod'\n\nexport const zAnnotationPoint = z.object({\n selector: z.union([zSelector, zSelectors]).nullish(),\n measureId: z.string().nullish(),\n dynamicFilter: zChartDynamicFilter.optional(),\n text: z.string().or(z.array(z.string())).nullish(),\n textColor: z.string().default('#ffffff').nullish(),\n textFontSize: z.number().default(12).nullish(),\n textFontWeight: z.number().default(400).nullish(),\n textAlign: z.enum(['left', 'right', 'center']).default('center').nullish(),\n textBaseline: z.enum(['top', 'middle', 'bottom']).default('middle').nullish(),\n textBackgroundVisible: z.boolean().default(true).nullish(),\n textBackgroundColor: z.string().default('#212121').nullish(),\n textBackgroundBorderColor: z.string().nullish(),\n textBackgroundBorderWidth: z.number().default(1).nullish(),\n textBackgroundBorderRadius: z.number().default(4).nullish(),\n textBackgroundPadding: z.number().nullish(),\n\n offsetY: z.number().default(0).nullish(),\n offsetX: z.number().default(0).nullish(),\n})\n"],"names":["zAnnotationPoint","z","zSelector","zSelectors","zChartDynamicFilter"],"mappings":";;AAGO,MAAMA,mBAAmBC,EAAE,MAAM,CAAC;IACvC,UAAUA,EAAE,KAAK,CAAC;QAACC;QAAWC;KAAW,EAAE,OAAO;IAClD,WAAWF,EAAE,MAAM,GAAG,OAAO;IAC7B,eAAeG,oBAAoB,QAAQ;IAC3C,MAAMH,EAAE,MAAM,GAAG,EAAE,CAACA,EAAE,KAAK,CAACA,EAAE,MAAM,KAAK,OAAO;IAChD,WAAWA,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,OAAO;IAChD,cAAcA,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,OAAO;IAC5C,gBAAgBA,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,OAAO;IAC/C,WAAWA,CAAC,CAADA,OAAM,CAAC;QAAC;QAAQ;QAAS;KAAS,EAAE,OAAO,CAAC,UAAU,OAAO;IACxE,cAAcA,CAAC,CAADA,OAAM,CAAC;QAAC;QAAO;QAAU;KAAS,EAAE,OAAO,CAAC,UAAU,OAAO;IAC3E,uBAAuBA,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,OAAO;IACxD,qBAAqBA,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,OAAO;IAC1D,2BAA2BA,EAAE,MAAM,GAAG,OAAO;IAC7C,2BAA2BA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACxD,4BAA4BA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACzD,uBAAuBA,EAAE,MAAM,GAAG,OAAO;IAEzC,SAASA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;IACtC,SAASA,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;AACxC"}
@@ -5,6 +5,7 @@ import { zAnnotationHorizontalLine } from "../../annotation/zAnnotationHorizonta
5
5
  import { zAnnotationArea } from "../../annotation/zAnnotationArea.js";
6
6
  const zAnnotationPointConfig = zAnnotationPoint.omit({
7
7
  selector: true,
8
+ measureId: true,
8
9
  text: true
9
10
  }).partial();
10
11
  const zAnnotationHorizontalLineConfig = zAnnotationHorizontalLine.pick({
@@ -1 +1 @@
1
- {"version":3,"file":"types/properties/config/annotation/zAnnotation.js","sources":["../../../../../../src/types/properties/config/annotation/zAnnotation.ts"],"sourcesContent":["import { z } from 'zod'\nimport { zAnnotationPoint } from '../../annotation/zAnnotationPoint'\nimport { zAnnotationDifferenceLine } from '../../annotation/zAnnotationDifferenceLine'\nimport { zAnnotationHorizontalLine } from '../../annotation/zAnnotationHorizontalLine'\nimport { zAnnotationArea } from '../../annotation/zAnnotationArea'\n\nexport const zAnnotationPointConfig = zAnnotationPoint.omit({ selector: true, text: true }).partial()\n\n// Use pick to explicitly list fields we want to expose in config variants.\nexport const zAnnotationHorizontalLineConfig = zAnnotationHorizontalLine\n .pick({\n // only pick fields that exist on the runtime schema\n lineColor: true,\n lineWidth: true,\n lineVisible: true,\n lineStyle: true,\n\n textBackgroundVisible: true,\n textColor: true,\n textFontSize: true,\n textFontWeight: true,\n textBackgroundColor: true,\n textBackgroundBorderColor: true,\n textBackgroundBorderWidth: true,\n textBackgroundBorderRadius: true,\n textBackgroundPadding: true,\n })\n // extend with additional config-only fields that runtime schema doesn't include\n .extend({\n endSymbolVisible: z.boolean().nullish(),\n endSymbolType: z.string().nullish(),\n endSymbolSize: z.number().nullish(),\n\n startSymbolVisible: z.boolean().nullish(),\n startSymbolType: z.string().nullish(),\n startSymbolSize: z.number().nullish(),\n })\n .partial()\n\nexport const zAnnotationVerticalLineConfig = zAnnotationHorizontalLineConfig.clone()\n\nexport const zAnnotationAreaConfig = zAnnotationArea\n .pick({\n textColor: true,\n textFontSize: true,\n textFontWeight: true,\n\n textBackgroundVisible: true,\n textBackgroundColor: true,\n textBackgroundBorderColor: true,\n textBackgroundBorderWidth: true,\n textBackgroundBorderRadius: true,\n textBackgroundPadding: true,\n\n areaColor: true,\n areaColorOpacity: true,\n areaBorderColor: true,\n areaBorderWidth: true,\n areaBorderRadius: true,\n areaLineDash: true,\n\n outerPadding: true,\n })\n .partial()\n\nexport const zAnnotationDifferenceLineConfig = zAnnotationDifferenceLine\n .pick({\n lineColor: true,\n textColor: true,\n textFontSize: true,\n textBackgroundColor: true,\n })\n .partial()\n\nexport const zAnnotationConfig = z.object({\n annotationPoint: zAnnotationPointConfig.nullish(),\n annotationHorizontalLine: zAnnotationHorizontalLineConfig.nullish(),\n annotationVerticalLine: zAnnotationVerticalLineConfig.nullish(),\n annotationArea: zAnnotationAreaConfig.nullish(),\n annotationDifferenceLine: zAnnotationDifferenceLineConfig.nullish(),\n})\n"],"names":["zAnnotationPointConfig","zAnnotationPoint","zAnnotationHorizontalLineConfig","zAnnotationHorizontalLine","z","zAnnotationVerticalLineConfig","zAnnotationAreaConfig","zAnnotationArea","zAnnotationDifferenceLineConfig","zAnnotationDifferenceLine","zAnnotationConfig"],"mappings":";;;;;AAMO,MAAMA,yBAAyBC,iBAAiB,IAAI,CAAC;IAAE,UAAU;IAAM,MAAM;AAAK,GAAG,OAAO;AAG5F,MAAMC,kCAAkCC,0BAAAA,IACxC,CAAC;IAEJ,WAAW;IACX,WAAW;IACX,aAAa;IACb,WAAW;IAEX,uBAAuB;IACvB,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,qBAAqB;IACrB,2BAA2B;IAC3B,2BAA2B;IAC3B,4BAA4B;IAC5B,uBAAuB;AACzB,GAEC,MAAM,CAAC;IACN,kBAAkBC,EAAE,OAAO,GAAG,OAAO;IACrC,eAAeA,EAAE,MAAM,GAAG,OAAO;IACjC,eAAeA,EAAE,MAAM,GAAG,OAAO;IAEjC,oBAAoBA,EAAE,OAAO,GAAG,OAAO;IACvC,iBAAiBA,EAAE,MAAM,GAAG,OAAO;IACnC,iBAAiBA,EAAE,MAAM,GAAG,OAAO;AACrC,GACC,OAAO;AAEH,MAAMC,gCAAgCH,gCAAgC,KAAK;AAE3E,MAAMI,wBAAwBC,gBAAAA,IAC9B,CAAC;IACJ,WAAW;IACX,cAAc;IACd,gBAAgB;IAEhB,uBAAuB;IACvB,qBAAqB;IACrB,2BAA2B;IAC3B,2BAA2B;IAC3B,4BAA4B;IAC5B,uBAAuB;IAEvB,WAAW;IACX,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,kBAAkB;IAClB,cAAc;IAEd,cAAc;AAChB,GACC,OAAO;AAEH,MAAMC,kCAAkCC,0BAAAA,IACxC,CAAC;IACJ,WAAW;IACX,WAAW;IACX,cAAc;IACd,qBAAqB;AACvB,GACC,OAAO;AAEH,MAAMC,oBAAoBN,EAAE,MAAM,CAAC;IACxC,iBAAiBJ,uBAAuB,OAAO;IAC/C,0BAA0BE,gCAAgC,OAAO;IACjE,wBAAwBG,8BAA8B,OAAO;IAC7D,gBAAgBC,sBAAsB,OAAO;IAC7C,0BAA0BE,gCAAgC,OAAO;AACnE"}
1
+ {"version":3,"file":"types/properties/config/annotation/zAnnotation.js","sources":["../../../../../../src/types/properties/config/annotation/zAnnotation.ts"],"sourcesContent":["import { z } from 'zod'\nimport { zAnnotationPoint } from '../../annotation/zAnnotationPoint'\nimport { zAnnotationDifferenceLine } from '../../annotation/zAnnotationDifferenceLine'\nimport { zAnnotationHorizontalLine } from '../../annotation/zAnnotationHorizontalLine'\nimport { zAnnotationArea } from '../../annotation/zAnnotationArea'\n\nexport const zAnnotationPointConfig = zAnnotationPoint.omit({ selector: true, measureId: true, text: true }).partial()\n\n// Use pick to explicitly list fields we want to expose in config variants.\nexport const zAnnotationHorizontalLineConfig = zAnnotationHorizontalLine\n .pick({\n // only pick fields that exist on the runtime schema\n lineColor: true,\n lineWidth: true,\n lineVisible: true,\n lineStyle: true,\n\n textBackgroundVisible: true,\n textColor: true,\n textFontSize: true,\n textFontWeight: true,\n textBackgroundColor: true,\n textBackgroundBorderColor: true,\n textBackgroundBorderWidth: true,\n textBackgroundBorderRadius: true,\n textBackgroundPadding: true,\n })\n // extend with additional config-only fields that runtime schema doesn't include\n .extend({\n endSymbolVisible: z.boolean().nullish(),\n endSymbolType: z.string().nullish(),\n endSymbolSize: z.number().nullish(),\n\n startSymbolVisible: z.boolean().nullish(),\n startSymbolType: z.string().nullish(),\n startSymbolSize: z.number().nullish(),\n })\n .partial()\n\nexport const zAnnotationVerticalLineConfig = zAnnotationHorizontalLineConfig.clone()\n\nexport const zAnnotationAreaConfig = zAnnotationArea\n .pick({\n textColor: true,\n textFontSize: true,\n textFontWeight: true,\n\n textBackgroundVisible: true,\n textBackgroundColor: true,\n textBackgroundBorderColor: true,\n textBackgroundBorderWidth: true,\n textBackgroundBorderRadius: true,\n textBackgroundPadding: true,\n\n areaColor: true,\n areaColorOpacity: true,\n areaBorderColor: true,\n areaBorderWidth: true,\n areaBorderRadius: true,\n areaLineDash: true,\n\n outerPadding: true,\n })\n .partial()\n\nexport const zAnnotationDifferenceLineConfig = zAnnotationDifferenceLine\n .pick({\n lineColor: true,\n textColor: true,\n textFontSize: true,\n textBackgroundColor: true,\n })\n .partial()\n\nexport const zAnnotationConfig = z.object({\n annotationPoint: zAnnotationPointConfig.nullish(),\n annotationHorizontalLine: zAnnotationHorizontalLineConfig.nullish(),\n annotationVerticalLine: zAnnotationVerticalLineConfig.nullish(),\n annotationArea: zAnnotationAreaConfig.nullish(),\n annotationDifferenceLine: zAnnotationDifferenceLineConfig.nullish(),\n})\n"],"names":["zAnnotationPointConfig","zAnnotationPoint","zAnnotationHorizontalLineConfig","zAnnotationHorizontalLine","z","zAnnotationVerticalLineConfig","zAnnotationAreaConfig","zAnnotationArea","zAnnotationDifferenceLineConfig","zAnnotationDifferenceLine","zAnnotationConfig"],"mappings":";;;;;AAMO,MAAMA,yBAAyBC,iBAAiB,IAAI,CAAC;IAAE,UAAU;IAAM,WAAW;IAAM,MAAM;AAAK,GAAG,OAAO;AAG7G,MAAMC,kCAAkCC,0BAAAA,IACxC,CAAC;IAEJ,WAAW;IACX,WAAW;IACX,aAAa;IACb,WAAW;IAEX,uBAAuB;IACvB,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,qBAAqB;IACrB,2BAA2B;IAC3B,2BAA2B;IAC3B,4BAA4B;IAC5B,uBAAuB;AACzB,GAEC,MAAM,CAAC;IACN,kBAAkBC,EAAE,OAAO,GAAG,OAAO;IACrC,eAAeA,EAAE,MAAM,GAAG,OAAO;IACjC,eAAeA,EAAE,MAAM,GAAG,OAAO;IAEjC,oBAAoBA,EAAE,OAAO,GAAG,OAAO;IACvC,iBAAiBA,EAAE,MAAM,GAAG,OAAO;IACnC,iBAAiBA,EAAE,MAAM,GAAG,OAAO;AACrC,GACC,OAAO;AAEH,MAAMC,gCAAgCH,gCAAgC,KAAK;AAE3E,MAAMI,wBAAwBC,gBAAAA,IAC9B,CAAC;IACJ,WAAW;IACX,cAAc;IACd,gBAAgB;IAEhB,uBAAuB;IACvB,qBAAqB;IACrB,2BAA2B;IAC3B,2BAA2B;IAC3B,4BAA4B;IAC5B,uBAAuB;IAEvB,WAAW;IACX,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,kBAAkB;IAClB,cAAc;IAEd,cAAc;AAChB,GACC,OAAO;AAEH,MAAMC,kCAAkCC,0BAAAA,IACxC,CAAC;IACJ,WAAW;IACX,WAAW;IACX,cAAc;IACd,qBAAqB;AACvB,GACC,OAAO;AAEH,MAAMC,oBAAoBN,EAAE,MAAM,CAAC;IACxC,iBAAiBJ,uBAAuB,OAAO;IAC/C,0BAA0BE,gCAAgC,OAAO;IACjE,wBAAwBG,8BAA8B,OAAO;IAC7D,gBAAgBC,sBAAsB,OAAO;IAC7C,0BAA0BE,gCAAgC,OAAO;AACnE"}
package/dist/umd/index.js CHANGED
@@ -1341,7 +1341,7 @@
1341
1341
  registerScatter: ()=>registerScatter,
1342
1342
  zAreaPercent: ()=>zAreaPercent,
1343
1343
  isDimension: ()=>isDimension,
1344
- isBarLikeChart: ()=>isBarLikeChart,
1344
+ isBarLikeChart: ()=>chatType_isBarLikeChart,
1345
1345
  columnParallelAdvancedPipeline: ()=>columnParallelAdvancedPipeline,
1346
1346
  deleteDimensionTreeByCallback: ()=>deleteDimensionTreeByCallback,
1347
1347
  zBarConfig: ()=>zBarConfig,
@@ -3197,7 +3197,7 @@ self.R = R;
3197
3197
  const isAreaPercent = (vseed)=>vseed.chartType === ChartTypeEnum.AreaPercent;
3198
3198
  const isColumnPercent = (vseed)=>vseed.chartType === ChartTypeEnum.ColumnPercent;
3199
3199
  const isBarPercent = (vseed)=>vseed.chartType === ChartTypeEnum.BarPercent;
3200
- const isBarLikeChart = (vseed)=>vseed.chartType === ChartTypeEnum.Bar || vseed.chartType === ChartTypeEnum.RaceBar || vseed.chartType === ChartTypeEnum.BarPercent || vseed.chartType === ChartTypeEnum.BarParallel;
3200
+ const chatType_isBarLikeChart = (vseed)=>vseed.chartType === ChartTypeEnum.Bar || vseed.chartType === ChartTypeEnum.RaceBar || vseed.chartType === ChartTypeEnum.BarPercent || vseed.chartType === ChartTypeEnum.BarParallel;
3201
3201
  const isVTable = (vseed)=>[
3202
3202
  'table',
3203
3203
  'pivotTable'
@@ -6986,8 +6986,11 @@ self.R = R;
6986
6986
  };
6987
6987
  const generateAnnotationPointPipe = (options)=>{
6988
6988
  const findSelectedDatas = options.findSelectedDatas ?? ((opts)=>{
6989
- const { dataset, selector: s, dynamicFilter } = opts;
6990
- return dataset.filter((datum)=>dynamicFilter ? selectorWithDynamicFilter(datum, dynamicFilter, s) : selector_selector(datum, s));
6989
+ const { dataset, selector: s, measureId, dynamicFilter } = opts;
6990
+ return dataset.filter((datum)=>{
6991
+ const isSelected = dynamicFilter ? selectorWithDynamicFilter(datum, dynamicFilter, s) : selector_selector(datum, s);
6992
+ return isSelected && (!measureId || datum[MeasureId] === measureId);
6993
+ });
6991
6994
  });
6992
6995
  const generateMarkPoint = options.generateMarkPoint ?? ((datum)=>[
6993
6996
  {
@@ -7016,7 +7019,7 @@ self.R = R;
7016
7019
  const annotationPointList = Array.isArray(annotationPoint) ? annotationPoint : [
7017
7020
  annotationPoint
7018
7021
  ];
7019
- const isHorizontalBar = isBarLikeChart(advancedVSeed);
7022
+ const isHorizontalBar = chatType_isBarLikeChart(advancedVSeed);
7020
7023
  const defaultStyle = isHorizontalBar ? {
7021
7024
  textAlign: 'right',
7022
7025
  textBaseline: 'middle'
@@ -7025,11 +7028,12 @@ self.R = R;
7025
7028
  textBaseline: 'top'
7026
7029
  };
7027
7030
  const markPoint = annotationPointList.flatMap((annotationPoint)=>{
7028
- const { selector: selectorPoint, dynamicFilter, text = '', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = defaultStyle.textAlign, textBaseline = defaultStyle.textBaseline, textBackgroundBorderColor = theme?.textBackgroundBorderColor, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundColor = theme?.textBackgroundColor ?? '#212121', textBackgroundPadding = theme?.textBackgroundPadding ?? 2, textBackgroundVisible = theme?.textBackgroundVisible ?? true, offsetX = theme?.offsetX ?? 0, offsetY = theme?.offsetY ?? 0 } = annotationPoint;
7031
+ const { selector: selectorPoint, measureId, dynamicFilter, text = '', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = defaultStyle.textAlign, textBaseline = defaultStyle.textBaseline, textBackgroundBorderColor = theme?.textBackgroundBorderColor, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundColor = theme?.textBackgroundColor ?? '#212121', textBackgroundPadding = theme?.textBackgroundPadding ?? 2, textBackgroundVisible = theme?.textBackgroundVisible ?? true, offsetX = theme?.offsetX ?? 0, offsetY = theme?.offsetY ?? 0 } = annotationPoint;
7029
7032
  const dataset = advancedVSeed.dataset.flat();
7030
7033
  const selectedData = selectorPoint || dynamicFilter ? findSelectedDatas({
7031
7034
  dataset,
7032
7035
  selector: selectorPoint,
7036
+ measureId,
7033
7037
  dynamicFilter,
7034
7038
  spec,
7035
7039
  context
@@ -7300,26 +7304,18 @@ self.R = R;
7300
7304
  if ('percent' === differenceType) return `${(100 * differenceValue).toFixed(2)}%`;
7301
7305
  return `${differenceValue}`;
7302
7306
  };
7303
- const inferDifferenceConnectDirection = (vseed, values)=>{
7304
- const isNegativeSide = values.every((value)=>value < 0);
7305
- if (isBarLikeChart(vseed)) return isNegativeSide ? 'left' : 'right';
7306
- return isNegativeSide ? 'bottom' : 'top';
7307
- };
7308
- const inferDifferenceBracketDirection = (start, end)=>{
7309
- if (void 0 === start.bandIndex || void 0 === end.bandIndex) return 'right';
7310
- return start.bandIndex <= end.bandIndex ? 'right' : 'left';
7311
- };
7312
7307
  const DEFAULT_LINE_COLOR = '#BCC1CB';
7313
7308
  const DEFAULT_TEXT_COLOR = '#ffffff';
7314
7309
  const DEFAULT_TEXT_BACKGROUND_COLOR = '#BCC1CB';
7315
7310
  const DEFAULT_TEXT_FONT_SIZE = 12;
7316
- const DEFAULT_EXPAND_DISTANCE = 24;
7317
7311
  const DEFAULT_LINE_WIDTH = 2;
7318
7312
  const DEFAULT_CORNER_RADIUS = 4;
7319
7313
  const DEFAULT_LABEL_PADDING = 4;
7320
7314
  const DEFAULT_END_SYMBOL_SIZE = 12;
7321
7315
  const DEFAULT_END_SYMBOL_REF_X = -4;
7322
- const DEFAULT_BRACKET_EXPAND_DISTANCE = 80;
7316
+ const DEFAULT_GUTTER_BASE_OFFSET = 20;
7317
+ const DEFAULT_GUTTER_RIGHT_PADDING = 44;
7318
+ const DEFAULT_GUTTER_TOP_PADDING = 36;
7323
7319
  const DEFAULT_BRACKET_LINE_DASH = [
7324
7320
  2,
7325
7321
  2
@@ -7335,6 +7331,54 @@ self.R = R;
7335
7331
  value
7336
7332
  ];
7337
7333
  };
7334
+ const normalizeRegionPadding = (padding)=>{
7335
+ if ('number' == typeof padding) return {
7336
+ top: padding,
7337
+ right: padding,
7338
+ bottom: padding,
7339
+ left: padding
7340
+ };
7341
+ return {
7342
+ top: padding?.top ?? 0,
7343
+ right: padding?.right ?? 0,
7344
+ bottom: padding?.bottom ?? 0,
7345
+ left: padding?.left ?? 0
7346
+ };
7347
+ };
7348
+ const mergeDifferenceLineRegionPadding = (spec, paddingPatch)=>{
7349
+ const region = spec.region;
7350
+ if (!Array.isArray(region) || 0 === region.length) return spec;
7351
+ const mergedPadding = normalizeRegionPadding(region[0].padding);
7352
+ if (void 0 !== paddingPatch.top) mergedPadding.top = Math.max(mergedPadding.top, paddingPatch.top);
7353
+ if (void 0 !== paddingPatch.right) mergedPadding.right = Math.max(mergedPadding.right, paddingPatch.right);
7354
+ if (void 0 !== paddingPatch.bottom) mergedPadding.bottom = Math.max(mergedPadding.bottom, paddingPatch.bottom);
7355
+ if (void 0 !== paddingPatch.left) mergedPadding.left = Math.max(mergedPadding.left, paddingPatch.left);
7356
+ return {
7357
+ ...spec,
7358
+ region: [
7359
+ {
7360
+ ...region[0],
7361
+ padding: mergedPadding
7362
+ },
7363
+ ...region.slice(1)
7364
+ ]
7365
+ };
7366
+ };
7367
+ const buildFixedGutterExpandDistance = (isHorizontalChart)=>(_markerData, context)=>{
7368
+ const region = context?.region;
7369
+ const coordinatePoints = Array.isArray(context?.coordinatePoints) ? context.coordinatePoints : [];
7370
+ if (!region || 0 === coordinatePoints.length) return 0;
7371
+ const { x: regionStartX, y: regionStartY } = region.getLayoutStartPoint();
7372
+ const { width } = region.getLayoutRect();
7373
+ if (isHorizontalChart) {
7374
+ const targetY = regionStartY - DEFAULT_GUTTER_BASE_OFFSET;
7375
+ const minY = Math.min(...coordinatePoints.map((point)=>point.y));
7376
+ return Math.max(0, minY - targetY);
7377
+ }
7378
+ const targetX = regionStartX + width + DEFAULT_GUTTER_BASE_OFFSET;
7379
+ const maxX = Math.max(...coordinatePoints.map((point)=>point.x));
7380
+ return Math.max(0, targetX - maxX);
7381
+ };
7338
7382
  const getAxisFormatter = (spec)=>{
7339
7383
  const valueAxisOrient = 'horizontal' === spec.direction ? 'bottom' : 'left';
7340
7384
  const formatMethod = spec.axes?.find((axis)=>axis.orient === valueAxisOrient)?.label?.formatMethod;
@@ -7402,6 +7446,7 @@ self.R = R;
7402
7446
  const measureIds = measures.map((measure)=>measure.id);
7403
7447
  const axisFormatter = getAxisFormatter(chartSpec);
7404
7448
  const percentFormatter = createFormatter(DEFAULT_PERCENT_DIFFERENCE_FORMAT);
7449
+ const isHorizontalChart = 'horizontal' === chartSpec.direction;
7405
7450
  const markLine = annotationDifferenceLineList.flatMap((annotationDifferenceLine, index)=>{
7406
7451
  try {
7407
7452
  assertDifferenceLineConfig(annotationDifferenceLine, getDifferenceLinePath(index, annotationDifferenceLineList.length));
@@ -7425,11 +7470,8 @@ self.R = R;
7425
7470
  if (start.mode !== end.mode) return [];
7426
7471
  const usesRuntimeStackEnd = useElementStackEnd || ('column' === vseed.chartType || 'bar' === vseed.chartType) && 'element' === start.mode && 'auto' === stackResolveMode;
7427
7472
  const useBracketStyle = isBracketChart || ('column' === vseed.chartType || 'bar' === vseed.chartType) && 'element' === start.mode && 'auto' === stackResolveMode;
7428
- const isStackedBarElementBracket = 'bar' === vseed.chartType && 'element' === start.mode && 'auto' === stackResolveMode;
7429
- const connectDirection = useBracketStyle ? isStackedBarElementBracket ? 'top' : inferDifferenceBracketDirection(start, end) : inferDifferenceConnectDirection(vseed, [
7430
- start.value,
7431
- end.value
7432
- ]);
7473
+ const connectDirection = isHorizontalChart ? 'top' : 'right';
7474
+ const expandDistance = buildFixedGutterExpandDistance(isHorizontalChart);
7433
7475
  const lineColor = annotationDifferenceLine.lineColor ?? theme?.lineColor ?? DEFAULT_LINE_COLOR;
7434
7476
  const textColor = annotationDifferenceLine.textColor ?? theme?.textColor ?? DEFAULT_TEXT_COLOR;
7435
7477
  const textBackgroundColor = annotationDifferenceLine.textBackgroundColor ?? theme?.textBackgroundColor ?? DEFAULT_TEXT_BACKGROUND_COLOR;
@@ -7501,7 +7543,7 @@ self.R = R;
7501
7543
  autoRange: true,
7502
7544
  zIndex: 1000,
7503
7545
  connectDirection,
7504
- expandDistance: useBracketStyle ? DEFAULT_BRACKET_EXPAND_DISTANCE : DEFAULT_EXPAND_DISTANCE,
7546
+ expandDistance,
7505
7547
  coordinates: (seriesData, relativeSeries)=>{
7506
7548
  try {
7507
7549
  return [
@@ -7574,13 +7616,19 @@ self.R = R;
7574
7616
  }
7575
7617
  });
7576
7618
  const specMarkLine = chartSpec.markLine || [];
7577
- return {
7619
+ const nextSpec = {
7578
7620
  ...spec,
7579
7621
  markLine: [
7580
7622
  ...specMarkLine,
7581
7623
  ...markLine
7582
7624
  ]
7583
7625
  };
7626
+ if (0 === markLine.length) return nextSpec;
7627
+ return mergeDifferenceLineRegionPadding(nextSpec, isHorizontalChart ? {
7628
+ top: DEFAULT_GUTTER_TOP_PADDING
7629
+ } : {
7630
+ right: DEFAULT_GUTTER_RIGHT_PADDING
7631
+ });
7584
7632
  };
7585
7633
  const annotationVerticalLine_annotationVerticalLine = (spec, context)=>{
7586
7634
  const { advancedVSeed, vseed } = context;
@@ -7824,7 +7872,7 @@ self.R = R;
7824
7872
  left: 'insideLeft',
7825
7873
  right: 'insideRight'
7826
7874
  };
7827
- const defaultTextPosition = isBarLikeChart(advancedVSeed) ? 'right' : 'top';
7875
+ const defaultTextPosition = chatType_isBarLikeChart(advancedVSeed) ? 'right' : 'top';
7828
7876
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
7829
7877
  const { selector: selectorPoint, text = '', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#191d24', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#191d24', textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundPadding = theme?.textBackgroundPadding ?? 4, areaColor = theme?.areaColor ?? '#888888', areaColorOpacity = theme?.areaColorOpacity ?? 0.15, areaBorderColor = theme?.areaBorderColor ?? '#888888', areaBorderRadius = theme?.areaBorderRadius ?? 4, areaBorderWidth = theme?.areaBorderWidth ?? 1, areaLineDash = theme?.areaLineDash, outerPadding = theme?.outerPadding ?? 4 } = annotationArea;
7830
7878
  const dataset = advancedVSeed.dataset.flat();
@@ -9683,7 +9731,7 @@ self.R = R;
9683
9731
  left: 'insideLeft',
9684
9732
  right: 'insideRight'
9685
9733
  };
9686
- const defaultTextPosition = isBarLikeChart(advancedVSeed) ? 'right' : 'top';
9734
+ const defaultTextPosition = chatType_isBarLikeChart(advancedVSeed) ? 'right' : 'top';
9687
9735
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
9688
9736
  const { selector: selectorPoint, text = '', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#191d24', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#191d24', textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundPadding = theme?.textBackgroundPadding ?? 4, areaColor = theme?.areaColor ?? '#888888', areaColorOpacity = theme?.areaColorOpacity ?? 0.15, areaBorderColor = theme?.areaBorderColor ?? '#888888', areaBorderRadius = theme?.areaBorderRadius ?? 4, areaBorderWidth = theme?.areaBorderWidth ?? 1, areaLineDash = theme?.areaLineDash, outerPadding = theme?.outerPadding ?? 4 } = annotationArea;
9689
9737
  const textPosition = annotationArea.textPosition ?? defaultTextPosition;
@@ -15090,13 +15138,13 @@ self.R = R;
15090
15138
  }
15091
15139
  const annotationPointOfDualAxis = generateAnnotationPointPipe({
15092
15140
  findSelectedDatas: (options)=>{
15093
- const { dataset, selector: s, dynamicFilter, context } = options;
15141
+ const { dataset, selector: s, measureId, dynamicFilter, context } = options;
15094
15142
  return dataset.reduce((res, d)=>{
15095
15143
  const { advancedVSeed } = context;
15096
15144
  const allMeasureIds = flatReshapeMeasures(advancedVSeed.reshapeMeasures ?? []).map((m)=>m.id);
15097
15145
  const pickedDatum = pickWithout(d, allMeasureIds.filter((id)=>id !== d[MeasureId]));
15098
15146
  const shouldSelect = dynamicFilter ? selectorWithDynamicFilter(pickedDatum, dynamicFilter, s) : selector_selector(pickedDatum, s);
15099
- if (shouldSelect) res.push(pickedDatum);
15147
+ if (shouldSelect && (!measureId || pickedDatum[MeasureId] === measureId)) res.push(pickedDatum);
15100
15148
  return res;
15101
15149
  }, []);
15102
15150
  },
@@ -25630,6 +25678,7 @@ self.R = R;
25630
25678
  zSelector,
25631
25679
  zSelectors
25632
25680
  ]).nullish(),
25681
+ measureId: schemas_string().nullish(),
25633
25682
  dynamicFilter: zChartDynamicFilter.optional(),
25634
25683
  text: schemas_string().or(schemas_array(schemas_string())).nullish(),
25635
25684
  textColor: schemas_string().default('#ffffff').nullish(),
@@ -25770,6 +25819,7 @@ self.R = R;
25770
25819
  });
25771
25820
  const zAnnotationPointConfig = zAnnotationPoint.omit({
25772
25821
  selector: true,
25822
+ measureId: true,
25773
25823
  text: true
25774
25824
  }).partial();
25775
25825
  const zAnnotationHorizontalLineConfig = zAnnotationHorizontalLine.pick({