@visactor/vseed 0.1.26 → 0.1.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 (102) hide show
  1. package/dist/cjs/index.cjs +1 -1
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/builder/builder/builder.d.ts +124 -16
  4. package/dist/esm/dataSelector/selector.js +2 -4
  5. package/dist/esm/dataSelector/selector.js.map +1 -1
  6. package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js +0 -1
  7. package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js.map +1 -1
  8. package/dist/esm/pipeline/spec/chart/pipes/init/barParallel.js +6 -4
  9. package/dist/esm/pipeline/spec/chart/pipes/init/barParallel.js.map +1 -1
  10. package/dist/esm/pipeline/spec/chart/pipes/init/columnParallel.js +6 -4
  11. package/dist/esm/pipeline/spec/chart/pipes/init/columnParallel.js.map +1 -1
  12. package/dist/esm/pipeline/spec/chart/pipes/init/pivot.d.ts +0 -2
  13. package/dist/esm/pipeline/spec/chart/pipes/init/pivot.js +1 -19
  14. package/dist/esm/pipeline/spec/chart/pipes/init/pivot.js.map +1 -1
  15. package/dist/esm/pipeline/spec/chart/pipes/init/roseParallel.js +6 -4
  16. package/dist/esm/pipeline/spec/chart/pipes/init/roseParallel.js.map +1 -1
  17. package/dist/esm/pipeline/spec/chart/pipes/label/label.d.ts +1 -1
  18. package/dist/esm/pipeline/spec/chart/pipes/label/label.js +11 -6
  19. package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
  20. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js +2 -2
  21. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js.map +1 -1
  22. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js +1 -1
  23. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js.map +1 -1
  24. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js +1 -1
  25. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js.map +1 -1
  26. package/dist/esm/theme/common/axes.d.ts +5 -0
  27. package/dist/esm/theme/common/axes.js +156 -0
  28. package/dist/esm/theme/common/axes.js.map +1 -0
  29. package/dist/esm/theme/common/color.d.ts +12 -0
  30. package/dist/esm/theme/common/color.js +43 -0
  31. package/dist/esm/theme/common/color.js.map +1 -0
  32. package/dist/esm/theme/common/crosshair.d.ts +28 -0
  33. package/dist/esm/theme/common/crosshair.js +31 -0
  34. package/dist/esm/theme/common/crosshair.js.map +1 -0
  35. package/dist/esm/theme/common/index.d.ts +7 -0
  36. package/dist/esm/theme/common/index.js +7 -0
  37. package/dist/esm/theme/common/label.d.ts +8 -0
  38. package/dist/esm/theme/common/label.js +11 -0
  39. package/dist/esm/theme/common/label.js.map +1 -0
  40. package/dist/esm/theme/common/legend.d.ts +2 -0
  41. package/dist/esm/theme/common/legend.js +13 -0
  42. package/dist/esm/theme/common/legend.js.map +1 -0
  43. package/dist/esm/theme/common/table.d.ts +3 -0
  44. package/dist/esm/theme/common/table.js +34 -0
  45. package/dist/esm/theme/common/table.js.map +1 -0
  46. package/dist/esm/theme/common/tooltip.d.ts +2 -0
  47. package/dist/esm/theme/common/tooltip.js +6 -0
  48. package/dist/esm/theme/common/tooltip.js.map +1 -0
  49. package/dist/esm/theme/{dark.d.ts → dark/dark.d.ts} +1 -1
  50. package/dist/esm/theme/{dark.js → dark/dark.js} +30 -153
  51. package/dist/esm/theme/dark/dark.js.map +1 -0
  52. package/dist/esm/theme/dark/index.d.ts +1 -0
  53. package/dist/esm/theme/dark/index.js +2 -0
  54. package/dist/esm/theme/index.js +2 -2
  55. package/dist/esm/theme/light/index.d.ts +1 -0
  56. package/dist/esm/theme/light/index.js +2 -0
  57. package/dist/esm/theme/{light.d.ts → light/light.d.ts} +1 -1
  58. package/dist/esm/theme/{light.js → light/light.js} +30 -155
  59. package/dist/esm/theme/light/light.js.map +1 -0
  60. package/dist/esm/types/advancedVSeed.d.ts +44 -8
  61. package/dist/esm/types/chartType/area/zArea.d.ts +9 -8
  62. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +9 -8
  63. package/dist/esm/types/chartType/bar/zBar.d.ts +9 -8
  64. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +9 -8
  65. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +9 -8
  66. package/dist/esm/types/chartType/column/zColumn.d.ts +9 -8
  67. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +9 -8
  68. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +9 -8
  69. package/dist/esm/types/chartType/donut/zDonut.d.ts +1 -0
  70. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +9 -8
  71. package/dist/esm/types/chartType/funnel/zFunnel.d.ts +1 -0
  72. package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +1 -0
  73. package/dist/esm/types/chartType/line/zLine.d.ts +9 -8
  74. package/dist/esm/types/chartType/pie/zPie.d.ts +1 -0
  75. package/dist/esm/types/chartType/radar/zRadar.d.ts +1 -0
  76. package/dist/esm/types/chartType/rose/zRose.d.ts +1 -0
  77. package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +1 -0
  78. package/dist/esm/types/chartType/scatter/zScatter.d.ts +9 -8
  79. package/dist/esm/types/dataSelector/selector.d.ts +2 -2
  80. package/dist/esm/types/dataSelector/selector.js.map +1 -1
  81. package/dist/esm/types/properties/annotation/annotation.d.ts +8 -8
  82. package/dist/esm/types/properties/annotation/annotationArea.d.ts +1 -1
  83. package/dist/esm/types/properties/annotation/annotationPoint.d.ts +1 -1
  84. package/dist/esm/types/properties/annotation/zAnnotationArea.d.ts +2 -2
  85. package/dist/esm/types/properties/annotation/zAnnotationArea.js +1 -1
  86. package/dist/esm/types/properties/annotation/zAnnotationArea.js.map +1 -1
  87. package/dist/esm/types/properties/annotation/zAnnotationPoint.d.ts +2 -2
  88. package/dist/esm/types/properties/annotation/zAnnotationPoint.js +1 -1
  89. package/dist/esm/types/properties/annotation/zAnnotationPoint.js.map +1 -1
  90. package/dist/esm/types/properties/config/config.d.ts +36 -0
  91. package/dist/esm/types/properties/config/label/label.d.ts +8 -0
  92. package/dist/esm/types/properties/config/label/zLabel.d.ts +1 -0
  93. package/dist/esm/types/properties/config/label/zLabel.js +1 -0
  94. package/dist/esm/types/properties/config/label/zLabel.js.map +1 -1
  95. package/dist/esm/types/properties/config/label/zPieLabel.d.ts +1 -0
  96. package/dist/esm/types/properties/theme/customTheme.d.ts +36 -0
  97. package/dist/esm/types/zVseed.d.ts +106 -88
  98. package/dist/umd/index.js +309 -285
  99. package/dist/umd/index.js.map +1 -1
  100. package/package.json +1 -1
  101. package/dist/esm/theme/dark.js.map +0 -1
  102. package/dist/esm/theme/light.js.map +0 -1
@@ -17,6 +17,8 @@ const selector_selector = (vchartDatum, selector)=>{
17
17
  ];
18
18
  switch(op){
19
19
  case '=':
20
+ if (String(datum[selector.field]) === String(selectorValueArr[0])) return true;
21
+ break;
20
22
  case '==':
21
23
  if (datum[selector.field] === selectorValueArr[0]) return true;
22
24
  break;
@@ -38,8 +40,6 @@ const selector_selector = (vchartDatum, selector)=>{
38
40
  case 'between':
39
41
  if (Array.isArray(selector.value) && datum[selector.field] >= selectorValueArr[0] && datum[selector.field] <= selectorValueArr[1]) return true;
40
42
  break;
41
- default:
42
- break;
43
43
  }
44
44
  } else if (isDimensionSelector(selector)) {
45
45
  const op = selector.operator || selector.op;
@@ -53,8 +53,6 @@ const selector_selector = (vchartDatum, selector)=>{
53
53
  case 'not in':
54
54
  if (!selectorValueArr.includes(datum[selector.field])) return true;
55
55
  break;
56
- default:
57
- break;
58
56
  }
59
57
  } else if (isPartialDatumSelector(selector)) {
60
58
  if (Object.keys(selector).every((key)=>datum[key] === selector[key])) return true;
@@ -1 +1 @@
1
- {"version":3,"file":"dataSelector/selector.js","sources":["webpack://@visactor/vseed/./src/dataSelector/selector.ts"],"sourcesContent":["import type { Datum } from 'src/types'\nimport type {\n DimensionSelector,\n MeasureSelector,\n PartialDatumSelector,\n Selector,\n Selectors,\n ValueSelector,\n} from '../types/dataSelector'\nimport { omit } from 'remeda'\n\nexport const selector = (vchartDatum: Datum, selector: Selector | Selectors | undefined | null) => {\n // 无有效选择器, 则认为全部匹配成功\n if (!selector) {\n return true\n }\n\n const selectorMode = 'And'\n\n // 过滤掉 vchart 相关字段\n const vchartKeys = Object.keys(vchartDatum).filter((k) => k.toLocaleLowerCase().startsWith('__vchart'))\n const datum = omit(vchartDatum, vchartKeys) as Datum\n\n // 统一处理选择器为数组\n const selectors = (Array.isArray(selector) ? selector : [selector]) as Selectors\n\n return selectors[selectorMode === 'And' ? 'every' : 'some']((selector) => {\n // 1. 字符串或数字\n if (isValueSelector(selector)) {\n if (Object.values(datum).find((v) => v === selector)) {\n return true\n }\n }\n\n // 2. 指标选择器\n else if (isMeasureSelector(selector)) {\n const op = selector.operator || selector.op\n const selectorValueArr = Array.isArray(selector.value) ? selector.value : [selector.value]\n\n switch (op) {\n case '=':\n case '==':\n if (datum[selector.field] === selectorValueArr[0]) {\n return true\n }\n break\n case '!=':\n if (datum[selector.field] !== selectorValueArr[0]) {\n return true\n }\n break\n case '>':\n if (datum[selector.field] > selectorValueArr[0]) {\n return true\n }\n break\n case '<':\n if (datum[selector.field] < selectorValueArr[0]) {\n return true\n }\n break\n case '>=':\n if (datum[selector.field] >= selectorValueArr[0]) {\n return true\n }\n break\n case '<=':\n if (datum[selector.field] <= selectorValueArr[0]) {\n return true\n }\n break\n case 'between':\n if (\n Array.isArray(selector.value) &&\n datum[selector.field] >= selectorValueArr[0] &&\n datum[selector.field] <= selectorValueArr[1]\n ) {\n return true\n }\n break\n default:\n break\n }\n }\n // 3. 维度选择器\n else if (isDimensionSelector(selector)) {\n const op = selector.operator || selector.op\n const selectorValueArr = Array.isArray(selector.value) ? selector.value : [selector.value]\n switch (op) {\n case 'in':\n if (selectorValueArr.includes(datum[selector.field] as string | number)) {\n return true\n }\n break\n case 'not in':\n if (!selectorValueArr.includes(datum[selector.field] as string | number)) {\n return true\n }\n break\n default:\n break\n }\n }\n // 4. 部分数据对象选择器\n else if (isPartialDatumSelector(selector)) {\n if (Object.keys(selector).every((key) => datum[key] === selector[key])) {\n return true\n }\n }\n\n return false\n })\n}\n\nexport const isValueSelector = (selector: Selector): selector is ValueSelector => {\n return typeof selector === 'string' || typeof selector === 'number'\n}\n\nexport const isPartialDatumSelector = (selector: Selector): selector is PartialDatumSelector => {\n return typeof selector === 'object' && selector !== null\n}\n\nexport const isMeasureSelector = (selector: Selector): selector is MeasureSelector => {\n return (\n typeof selector === 'object' &&\n selector !== null &&\n 'field' in selector &&\n ('operator' in selector || 'op' in selector) &&\n 'value' in selector &&\n (['=', '==', '!=', '>', '<', '>=', '<=', 'between'].includes(selector.operator as string) ||\n ['=', '==', '!=', '>', '<', '>=', '<=', 'between'].includes(selector.op as string))\n )\n}\n\nexport const isDimensionSelector = (selector: Selector): selector is DimensionSelector => {\n return (\n typeof selector === 'object' &&\n selector !== null &&\n 'field' in selector &&\n ('operator' in selector || 'op' in selector) &&\n 'value' in selector &&\n (['in', 'not in'].includes(selector.operator as string) || ['in', 'not in'].includes(selector.op as string))\n )\n}\n"],"names":["selector","vchartDatum","selectorMode","vchartKeys","Object","k","datum","omit","selectors","Array","isValueSelector","v","isMeasureSelector","op","selectorValueArr","isDimensionSelector","isPartialDatumSelector","key"],"mappings":"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"}
1
+ {"version":3,"file":"dataSelector/selector.js","sources":["webpack://@visactor/vseed/./src/dataSelector/selector.ts"],"sourcesContent":["import type { Datum } from 'src/types'\nimport type {\n DimensionSelector,\n MeasureSelector,\n PartialDatumSelector,\n Selector,\n Selectors,\n ValueSelector,\n} from '../types/dataSelector'\nimport { omit } from 'remeda'\n\nexport const selector = (vchartDatum: Datum, selector: Selector | Selectors | undefined | null) => {\n // 无有效选择器, 则认为全部匹配成功\n if (!selector) {\n return true\n }\n\n const selectorMode = 'And'\n\n // 过滤掉 vchart 相关字段\n const vchartKeys = Object.keys(vchartDatum).filter((k) => k.toLocaleLowerCase().startsWith('__vchart'))\n const datum = omit(vchartDatum, vchartKeys) as Datum\n\n // 统一处理选择器为数组\n const selectors = (Array.isArray(selector) ? selector : [selector]) as Selectors\n\n return selectors[selectorMode === 'And' ? 'every' : 'some']((selector) => {\n // 1. 字符串或数字\n if (isValueSelector(selector)) {\n if (Object.values(datum).find((v) => v === selector)) {\n return true\n }\n }\n\n // 2. 指标选择器\n else if (isMeasureSelector(selector)) {\n const op = selector.operator || selector.op\n const selectorValueArr = Array.isArray(selector.value) ? selector.value : [selector.value]\n\n switch (op) {\n case '=':\n if (String(datum[selector.field]) === String(selectorValueArr[0])) {\n return true\n }\n break\n case '==':\n if (datum[selector.field] === selectorValueArr[0]) {\n return true\n }\n break\n case '!=':\n if (datum[selector.field] !== selectorValueArr[0]) {\n return true\n }\n break\n case '>':\n if (datum[selector.field] > selectorValueArr[0]) {\n return true\n }\n break\n case '<':\n if (datum[selector.field] < selectorValueArr[0]) {\n return true\n }\n break\n case '>=':\n if (datum[selector.field] >= selectorValueArr[0]) {\n return true\n }\n break\n case '<=':\n if (datum[selector.field] <= selectorValueArr[0]) {\n return true\n }\n break\n case 'between':\n if (\n Array.isArray(selector.value) &&\n datum[selector.field] >= selectorValueArr[0] &&\n datum[selector.field] <= selectorValueArr[1]\n ) {\n return true\n }\n break\n }\n }\n // 3. 维度选择器\n else if (isDimensionSelector(selector)) {\n const op = selector.operator || selector.op\n const selectorValueArr = Array.isArray(selector.value) ? selector.value : [selector.value]\n switch (op) {\n case 'in':\n if (selectorValueArr.includes(datum[selector.field] as string | number)) {\n return true\n }\n break\n case 'not in':\n if (!selectorValueArr.includes(datum[selector.field] as string | number)) {\n return true\n }\n break\n }\n }\n // 4. 部分数据对象选择器\n else if (isPartialDatumSelector(selector)) {\n if (Object.keys(selector).every((key) => datum[key] === selector[key])) {\n return true\n }\n }\n\n return false\n })\n}\n\nexport const isValueSelector = (selector: Selector): selector is ValueSelector => {\n return typeof selector === 'string' || typeof selector === 'number'\n}\n\nexport const isPartialDatumSelector = (selector: Selector): selector is PartialDatumSelector => {\n return typeof selector === 'object' && selector !== null\n}\n\nexport const isMeasureSelector = (selector: Selector): selector is MeasureSelector => {\n return (\n typeof selector === 'object' &&\n selector !== null &&\n 'field' in selector &&\n ('operator' in selector || 'op' in selector) &&\n 'value' in selector &&\n (['=', '==', '!=', '>', '<', '>=', '<=', 'between'].includes(selector.operator as string) ||\n ['=', '==', '!=', '>', '<', '>=', '<=', 'between'].includes(selector.op as string))\n )\n}\n\nexport const isDimensionSelector = (selector: Selector): selector is DimensionSelector => {\n return (\n typeof selector === 'object' &&\n selector !== null &&\n 'field' in selector &&\n ('operator' in selector || 'op' in selector) &&\n 'value' in selector &&\n (['in', 'not in'].includes(selector.operator as string) || ['in', 'not in'].includes(selector.op as string))\n )\n}\n"],"names":["selector","vchartDatum","selectorMode","vchartKeys","Object","k","datum","omit","selectors","Array","isValueSelector","v","isMeasureSelector","op","selectorValueArr","String","isDimensionSelector","isPartialDatumSelector","key"],"mappings":"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"}
@@ -5,7 +5,6 @@ const colorAdapter = (ordinalPipe, linearPipe)=>(spec, context)=>{
5
5
  return ordinalPipe(spec, context);
6
6
  };
7
7
  const isLinearColor = (advancedVSeed, vseed)=>{
8
- console.log(vseed);
9
8
  const { encoding } = advancedVSeed;
10
9
  const measures = vseed.measures || advancedVSeed.measures;
11
10
  const measureIdList = findAllMeasures(measures).map((measure)=>measure.id);
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/color/colorAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/colorAdapter.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedVSeed, SpecPipe, VSeed } from 'src/types'\n\nexport const colorAdapter = (ordinalPipe: SpecPipe, linearPipe: SpecPipe): SpecPipe => {\n return (spec, context) => {\n const { advancedVSeed, vseed } = context\n if (isLinearColor(advancedVSeed, vseed)) {\n return linearPipe(spec, context)\n }\n return ordinalPipe(spec, context)\n }\n}\n\nexport const isLinearColor = <T extends AdvancedVSeed, U extends VSeed>(advancedVSeed: T, vseed: U) => {\n console.log(vseed)\n const { encoding } = advancedVSeed\n const measures = vseed.measures || advancedVSeed.measures\n const measureIdList = findAllMeasures(measures).map((measure) => measure.id)\n const { color } = encoding\n return color?.length === 1 && measureIdList.includes(color[0])\n}\n\nexport const getColorMeasureId = <T extends AdvancedVSeed, U extends VSeed>(\n advancedVSeed: T,\n vseed: U,\n): string | undefined => {\n if (isLinearColor(advancedVSeed, vseed)) {\n const { encoding } = advancedVSeed\n const { color } = encoding\n return color?.[0]\n }\n return undefined\n}\n"],"names":["colorAdapter","ordinalPipe","linearPipe","spec","context","advancedVSeed","vseed","isLinearColor","console","encoding","measures","measureIdList","findAllMeasures","measure","color","getColorMeasureId"],"mappings":";AAGO,MAAMA,eAAe,CAACC,aAAuBC,aAC3C,CAACC,MAAMC;QACZ,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;QACjC,IAAIG,cAAcF,eAAeC,QAC/B,OAAOJ,WAAWC,MAAMC;QAE1B,OAAOH,YAAYE,MAAMC;IAC3B;AAGK,MAAMG,gBAAgB,CAA2CF,eAAkBC;IACxFE,QAAQ,GAAG,CAACF;IACZ,MAAM,EAAEG,QAAQ,EAAE,GAAGJ;IACrB,MAAMK,WAAWJ,MAAM,QAAQ,IAAID,cAAc,QAAQ;IACzD,MAAMM,gBAAgBC,gBAAgBF,UAAU,GAAG,CAAC,CAACG,UAAYA,QAAQ,EAAE;IAC3E,MAAM,EAAEC,KAAK,EAAE,GAAGL;IAClB,OAAOK,OAAO,WAAW,KAAKH,cAAc,QAAQ,CAACG,KAAK,CAAC,EAAE;AAC/D;AAEO,MAAMC,oBAAoB,CAC/BV,eACAC;IAEA,IAAIC,cAAcF,eAAeC,QAAQ;QACvC,MAAM,EAAEG,QAAQ,EAAE,GAAGJ;QACrB,MAAM,EAAES,KAAK,EAAE,GAAGL;QAClB,OAAOK,OAAO,CAAC,EAAE;IACnB;AAEF"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/color/colorAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/colorAdapter.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedVSeed, SpecPipe, VSeed } from 'src/types'\n\nexport const colorAdapter = (ordinalPipe: SpecPipe, linearPipe: SpecPipe): SpecPipe => {\n return (spec, context) => {\n const { advancedVSeed, vseed } = context\n if (isLinearColor(advancedVSeed, vseed)) {\n return linearPipe(spec, context)\n }\n return ordinalPipe(spec, context)\n }\n}\n\nexport const isLinearColor = <T extends AdvancedVSeed, U extends VSeed>(advancedVSeed: T, vseed: U) => {\n const { encoding } = advancedVSeed\n const measures = vseed.measures || advancedVSeed.measures\n const measureIdList = findAllMeasures(measures).map((measure) => measure.id)\n const { color } = encoding\n return color?.length === 1 && measureIdList.includes(color[0])\n}\n\nexport const getColorMeasureId = <T extends AdvancedVSeed, U extends VSeed>(\n advancedVSeed: T,\n vseed: U,\n): string | undefined => {\n if (isLinearColor(advancedVSeed, vseed)) {\n const { encoding } = advancedVSeed\n const { color } = encoding\n return color?.[0]\n }\n return undefined\n}\n"],"names":["colorAdapter","ordinalPipe","linearPipe","spec","context","advancedVSeed","vseed","isLinearColor","encoding","measures","measureIdList","findAllMeasures","measure","color","getColorMeasureId"],"mappings":";AAGO,MAAMA,eAAe,CAACC,aAAuBC,aAC3C,CAACC,MAAMC;QACZ,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;QACjC,IAAIG,cAAcF,eAAeC,QAC/B,OAAOJ,WAAWC,MAAMC;QAE1B,OAAOH,YAAYE,MAAMC;IAC3B;AAGK,MAAMG,gBAAgB,CAA2CF,eAAkBC;IACxF,MAAM,EAAEE,QAAQ,EAAE,GAAGH;IACrB,MAAMI,WAAWH,MAAM,QAAQ,IAAID,cAAc,QAAQ;IACzD,MAAMK,gBAAgBC,gBAAgBF,UAAU,GAAG,CAAC,CAACG,UAAYA,QAAQ,EAAE;IAC3E,MAAM,EAAEC,KAAK,EAAE,GAAGL;IAClB,OAAOK,OAAO,WAAW,KAAKH,cAAc,QAAQ,CAACG,KAAK,CAAC,EAAE;AAC/D;AAEO,MAAMC,oBAAoB,CAC/BT,eACAC;IAEA,IAAIC,cAAcF,eAAeC,QAAQ;QACvC,MAAM,EAAEE,QAAQ,EAAE,GAAGH;QACrB,MAAM,EAAEQ,KAAK,EAAE,GAAGL;QAClB,OAAOK,OAAO,CAAC,EAAE;IACnB;AAEF"}
@@ -1,4 +1,5 @@
1
1
  import { isDeepEqual } from "remeda";
2
+ import { MeasureName } from "../../../../../dataReshape/index.js";
2
3
  const initBarParallel = (spec, context)=>{
3
4
  const result = {
4
5
  ...spec
@@ -9,12 +10,13 @@ const initBarParallel = (spec, context)=>{
9
10
  const sameDimensionsMode = isDeepEqual(encoding.y, encoding.color);
10
11
  result.type = 'bar';
11
12
  result.direction = 'horizontal';
12
- result.yField = sameDimensionsMode ? [
13
+ result.yField = [
13
14
  unfoldInfo.encodingY
14
- ] : [
15
- unfoldInfo.encodingY,
16
- unfoldInfo.encodingDetail
17
15
  ];
16
+ if (!sameDimensionsMode) {
17
+ result.yField.push(unfoldInfo.encodingDetail);
18
+ if (encoding.detail?.[0] === MeasureName && encoding.x?.length === 1) result.yField.pop();
19
+ }
18
20
  result.xField = foldInfo.measureValue;
19
21
  result.seriesField = unfoldInfo.encodingColorId;
20
22
  result.padding = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/init/barParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/barParallel.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport type { SpecPipe } from 'src/types'\n\nexport const initBarParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.y, encoding.color)\n\n result.type = 'bar'\n result.direction = 'horizontal'\n\n result.yField = sameDimensionsMode\n ? [unfoldInfo.encodingY]\n : ([unfoldInfo.encodingY, unfoldInfo.encodingDetail] as string[])\n result.xField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n return result\n}\n"],"names":["initBarParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual"],"mappings":";AAIO,MAAMA,kBAA4B,CAACC,MAAMC;IAC9C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,UAAU,EAAEC,QAAQ,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IAEtD,MAAMI,qBAAqBC,YAAYJ,SAAS,CAAC,EAAEA,SAAS,KAAK;IAEjEH,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IAEnBA,OAAO,MAAM,GAAGM,qBACZ;QAACF,WAAW,SAAS;KAAC,GACrB;QAACA,WAAW,SAAS;QAAEA,WAAW,cAAc;KAAC;IACtDJ,OAAO,MAAM,GAAGK,SAAS,YAAY;IACrCL,OAAO,WAAW,GAAGI,WAAW,eAAe;IAE/CJ,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IACnB,OAAOA;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/barParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/barParallel.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\nimport type { SpecPipe } from 'src/types'\n\nexport const initBarParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.y, encoding.color)\n\n result.type = 'bar'\n result.direction = 'horizontal'\n\n result.yField = [unfoldInfo.encodingY]\n\n if (!sameDimensionsMode) {\n result.yField.push(unfoldInfo.encodingDetail)\n\n if (encoding.detail?.[0] === MeasureName && encoding.x?.length === 1) {\n result.yField.pop()\n }\n }\n\n result.xField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n return result\n}\n"],"names":["initBarParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual","MeasureName"],"mappings":";;AAKO,MAAMA,kBAA4B,CAACC,MAAMC;IAC9C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,UAAU,EAAEC,QAAQ,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IAEtD,MAAMI,qBAAqBC,YAAYJ,SAAS,CAAC,EAAEA,SAAS,KAAK;IAEjEH,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IAEnBA,OAAO,MAAM,GAAG;QAACI,WAAW,SAAS;KAAC;IAEtC,IAAI,CAACE,oBAAoB;QACvBN,OAAO,MAAM,CAAC,IAAI,CAACI,WAAW,cAAc;QAE5C,IAAID,SAAS,MAAM,EAAE,CAAC,EAAE,KAAKK,eAAeL,SAAS,CAAC,EAAE,WAAW,GACjEH,OAAO,MAAM,CAAC,GAAG;IAErB;IAEAA,OAAO,MAAM,GAAGK,SAAS,YAAY;IACrCL,OAAO,WAAW,GAAGI,WAAW,eAAe;IAE/CJ,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IACnB,OAAOA;AACT"}
@@ -1,4 +1,5 @@
1
1
  import { isDeepEqual } from "remeda";
2
+ import { MeasureName } from "../../../../../dataReshape/index.js";
2
3
  const initColumnParallel = (spec, context)=>{
3
4
  const result = {
4
5
  ...spec
@@ -9,12 +10,13 @@ const initColumnParallel = (spec, context)=>{
9
10
  const sameDimensionsMode = isDeepEqual(encoding.x, encoding.color);
10
11
  result.type = 'bar';
11
12
  result.direction = 'vertical';
12
- result.xField = sameDimensionsMode ? [
13
+ result.xField = [
13
14
  unfoldInfo.encodingX
14
- ] : [
15
- unfoldInfo.encodingX,
16
- unfoldInfo.encodingDetail
17
15
  ];
16
+ if (!sameDimensionsMode) {
17
+ result.xField.push(unfoldInfo.encodingDetail);
18
+ if (encoding.detail?.[0] === MeasureName && encoding.y?.length === 1) result.xField.pop();
19
+ }
18
20
  result.yField = foldInfo.measureValue;
19
21
  result.seriesField = unfoldInfo.encodingColorId;
20
22
  result.padding = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/init/columnParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/columnParallel.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport type { SpecPipe } from 'src/types'\n\nexport const initColumnParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.x, encoding.color)\n\n result.type = 'bar'\n result.direction = 'vertical'\n result.xField = sameDimensionsMode ? [unfoldInfo.encodingX] : [unfoldInfo.encodingX, unfoldInfo.encodingDetail]\n result.yField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n return result\n}\n"],"names":["initColumnParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual"],"mappings":";AAIO,MAAMA,qBAA+B,CAACC,MAAMC;IACjD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,UAAU,EAAEC,QAAQ,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IAEtD,MAAMI,qBAAqBC,YAAYJ,SAAS,CAAC,EAAEA,SAAS,KAAK;IAEjEH,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAGM,qBAAqB;QAACF,WAAW,SAAS;KAAC,GAAG;QAACA,WAAW,SAAS;QAAEA,WAAW,cAAc;KAAC;IAC/GJ,OAAO,MAAM,GAAGK,SAAS,YAAY;IACrCL,OAAO,WAAW,GAAGI,WAAW,eAAe;IAC/CJ,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IACnB,OAAOA;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/columnParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/columnParallel.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\nimport type { SpecPipe } from 'src/types'\n\nexport const initColumnParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.x, encoding.color)\n\n result.type = 'bar'\n result.direction = 'vertical'\n result.xField = [unfoldInfo.encodingX]\n\n if (!sameDimensionsMode) {\n result.xField.push(unfoldInfo.encodingDetail)\n\n if (encoding.detail?.[0] === MeasureName && encoding.y?.length === 1) {\n result.xField.pop()\n }\n }\n\n result.yField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n return result\n}\n"],"names":["initColumnParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual","MeasureName"],"mappings":";;AAKO,MAAMA,qBAA+B,CAACC,MAAMC;IACjD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,UAAU,EAAEC,QAAQ,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IAEtD,MAAMI,qBAAqBC,YAAYJ,SAAS,CAAC,EAAEA,SAAS,KAAK;IAEjEH,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAG;QAACI,WAAW,SAAS;KAAC;IAEtC,IAAI,CAACE,oBAAoB;QACvBN,OAAO,MAAM,CAAC,IAAI,CAACI,WAAW,cAAc;QAE5C,IAAID,SAAS,MAAM,EAAE,CAAC,EAAE,KAAKK,eAAeL,SAAS,CAAC,EAAE,WAAW,GACjEH,OAAO,MAAM,CAAC,GAAG;IAErB;IAEAA,OAAO,MAAM,GAAGK,SAAS,YAAY;IACrCL,OAAO,WAAW,GAAGI,WAAW,eAAe;IAC/CJ,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IACnB,OAAOA;AACT"}
@@ -1,4 +1,2 @@
1
1
  import type { SpecPipe } from '../../../../../types';
2
2
  export declare const initPivot: SpecPipe;
3
- export declare const pivotIndicatorsAsRow: SpecPipe;
4
- export declare const pivotIndicatorsAsCol: SpecPipe;
@@ -32,24 +32,6 @@ const initPivot = (spec)=>{
32
32
  }
33
33
  };
34
34
  };
35
- const pivotIndicatorsAsRow = (spec)=>{
36
- const result = {
37
- ...spec
38
- };
39
- return {
40
- ...result,
41
- indicatorsAsCol: false
42
- };
43
- };
44
- const pivotIndicatorsAsCol = (spec)=>{
45
- const result = {
46
- ...spec
47
- };
48
- return {
49
- ...result,
50
- indicatorsAsCol: true
51
- };
52
- };
53
- export { initPivot, pivotIndicatorsAsCol, pivotIndicatorsAsRow };
35
+ export { initPivot };
54
36
 
55
37
  //# sourceMappingURL=pivot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/init/pivot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/pivot.ts"],"sourcesContent":["import type { PivotChartConstructorOptions } from '@visactor/vtable'\nimport type { Spec, SpecPipe } from 'src/types'\n\nexport const initPivot: SpecPipe = (spec) => {\n const result = { ...spec } as PivotChartConstructorOptions\n\n return {\n ...result,\n animation: true,\n rows: [],\n columns: [],\n indicators: [],\n records: [],\n widthMode: 'adaptive',\n heightMode: 'adaptive',\n indicatorsAsCol: false,\n select: {\n highlightMode: 'cell',\n headerSelectMode: 'inline',\n },\n hover: {\n highlightMode: 'cross',\n },\n tooltip: {\n isShowOverflowTextTooltip: true,\n },\n corner: {\n titleOnDimension: 'all',\n },\n animationAppear: {\n duration: 600,\n type: 'all',\n direction: 'row',\n },\n }\n}\n\nexport const pivotIndicatorsAsRow: SpecPipe = (spec): Spec => {\n const result = { ...spec } as PivotChartConstructorOptions\n\n return {\n ...result,\n indicatorsAsCol: false,\n }\n}\n\nexport const pivotIndicatorsAsCol: SpecPipe = (spec): Spec => {\n const result = { ...spec } as PivotChartConstructorOptions\n\n return {\n ...result,\n indicatorsAsCol: true,\n }\n}\n"],"names":["initPivot","spec","result","pivotIndicatorsAsRow","pivotIndicatorsAsCol"],"mappings":"AAGO,MAAMA,YAAsB,CAACC;IAClC,MAAMC,SAAS;QAAE,GAAGD,IAAI;IAAC;IAEzB,OAAO;QACL,GAAGC,MAAM;QACT,WAAW;QACX,MAAM,EAAE;QACR,SAAS,EAAE;QACX,YAAY,EAAE;QACd,SAAS,EAAE;QACX,WAAW;QACX,YAAY;QACZ,iBAAiB;QACjB,QAAQ;YACN,eAAe;YACf,kBAAkB;QACpB;QACA,OAAO;YACL,eAAe;QACjB;QACA,SAAS;YACP,2BAA2B;QAC7B;QACA,QAAQ;YACN,kBAAkB;QACpB;QACA,iBAAiB;YACf,UAAU;YACV,MAAM;YACN,WAAW;QACb;IACF;AACF;AAEO,MAAMC,uBAAiC,CAACF;IAC7C,MAAMC,SAAS;QAAE,GAAGD,IAAI;IAAC;IAEzB,OAAO;QACL,GAAGC,MAAM;QACT,iBAAiB;IACnB;AACF;AAEO,MAAME,uBAAiC,CAACH;IAC7C,MAAMC,SAAS;QAAE,GAAGD,IAAI;IAAC;IAEzB,OAAO;QACL,GAAGC,MAAM;QACT,iBAAiB;IACnB;AACF"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/pivot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/pivot.ts"],"sourcesContent":["import type { PivotChartConstructorOptions } from '@visactor/vtable'\nimport type { SpecPipe } from 'src/types'\n\nexport const initPivot: SpecPipe = (spec) => {\n const result = { ...spec } as PivotChartConstructorOptions\n\n return {\n ...result,\n animation: true,\n rows: [],\n columns: [],\n indicators: [],\n records: [],\n widthMode: 'adaptive',\n heightMode: 'adaptive',\n indicatorsAsCol: false,\n select: {\n highlightMode: 'cell',\n headerSelectMode: 'inline',\n },\n hover: {\n highlightMode: 'cross',\n },\n tooltip: {\n isShowOverflowTextTooltip: true,\n },\n corner: {\n titleOnDimension: 'all',\n },\n animationAppear: {\n duration: 600,\n type: 'all',\n direction: 'row',\n },\n }\n}\n"],"names":["initPivot","spec","result"],"mappings":"AAGO,MAAMA,YAAsB,CAACC;IAClC,MAAMC,SAAS;QAAE,GAAGD,IAAI;IAAC;IAEzB,OAAO;QACL,GAAGC,MAAM;QACT,WAAW;QACX,MAAM,EAAE;QACR,SAAS,EAAE;QACX,YAAY,EAAE;QACd,SAAS,EAAE;QACX,WAAW;QACX,YAAY;QACZ,iBAAiB;QACjB,QAAQ;YACN,eAAe;YACf,kBAAkB;QACpB;QACA,OAAO;YACL,eAAe;QACjB;QACA,SAAS;YACP,2BAA2B;QAC7B;QACA,QAAQ;YACN,kBAAkB;QACpB;QACA,iBAAiB;YACf,UAAU;YACV,MAAM;YACN,WAAW;QACb;IACF;AACF"}
@@ -1,4 +1,5 @@
1
1
  import { isDeepEqual } from "remeda";
2
+ import { MeasureName } from "../../../../../dataReshape/index.js";
2
3
  const initRoseParallel = (spec, context)=>{
3
4
  const result = {
4
5
  ...spec
@@ -8,12 +9,13 @@ const initRoseParallel = (spec, context)=>{
8
9
  const { unfoldInfo, foldInfo } = datasetReshapeInfo[0];
9
10
  const sameDimensionsMode = isDeepEqual(encoding.angle, encoding.color);
10
11
  result.type = 'rose';
11
- result.angleField = sameDimensionsMode ? [
12
+ result.angleField = [
12
13
  unfoldInfo.encodingAngle
13
- ] : [
14
- unfoldInfo.encodingAngle,
15
- unfoldInfo.encodingDetail
16
14
  ];
15
+ if (!sameDimensionsMode) {
16
+ result.angleField.push(unfoldInfo.encodingDetail);
17
+ if (encoding.detail?.[0] === MeasureName && encoding.radius?.length === 1) result.angleField.pop();
18
+ }
17
19
  result.valueField = foldInfo.measureValue;
18
20
  result.seriesField = unfoldInfo.encodingColorId;
19
21
  result.padding = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/init/roseParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/roseParallel.ts"],"sourcesContent":["import type { IRoseChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport type { SpecPipe } from 'src/types'\n\nexport const initRoseParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IRoseChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, dataset, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.angle, encoding.color)\n\n result.type = 'rose'\n result.angleField = sameDimensionsMode\n ? [unfoldInfo.encodingAngle]\n : [unfoldInfo.encodingAngle, unfoldInfo.encodingDetail]\n result.valueField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n result.padding = 0\n\n result.outerRadius = 0.9\n result.innerRadius = 0\n\n const hasNegativeValue = dataset.flat().find((d) => d[foldInfo.measureValue] < 0)\n if (hasNegativeValue) {\n result.innerRadius = 0.05\n }\n\n result.rose = {\n style: {\n stroke: '#ffffff',\n lineWidth: 1,\n },\n state: {\n hover: {\n lineWidth: 1,\n fillOpacity: 0.6,\n },\n },\n }\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initRoseParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","dataset","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual","hasNegativeValue","d"],"mappings":";AAIO,MAAMA,mBAA6B,CAACC,MAAMC;IAC/C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGH;IAClD,MAAM,EAAEI,UAAU,EAAEC,QAAQ,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IAEtD,MAAMK,qBAAqBC,YAAYJ,SAAS,KAAK,EAAEA,SAAS,KAAK;IAErEJ,OAAO,IAAI,GAAG;IACdA,OAAO,UAAU,GAAGO,qBAChB;QAACF,WAAW,aAAa;KAAC,GAC1B;QAACA,WAAW,aAAa;QAAEA,WAAW,cAAc;KAAC;IACzDL,OAAO,UAAU,GAAGM,SAAS,YAAY;IACzCN,OAAO,WAAW,GAAGK,WAAW,eAAe;IAC/CL,OAAO,OAAO,GAAG;IAEjBA,OAAO,WAAW,GAAG;IACrBA,OAAO,WAAW,GAAG;IAErB,MAAMS,mBAAmBN,QAAQ,IAAI,GAAG,IAAI,CAAC,CAACO,IAAMA,CAAC,CAACJ,SAAS,YAAY,CAAC,GAAG;IAC/E,IAAIG,kBACFT,OAAO,WAAW,GAAG;IAGvBA,OAAO,IAAI,GAAG;QACZ,OAAO;YACL,QAAQ;YACR,WAAW;QACb;QACA,OAAO;YACL,OAAO;gBACL,WAAW;gBACX,aAAa;YACf;QACF;IACF;IACAA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IAEnB,OAAOA;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/roseParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/roseParallel.ts"],"sourcesContent":["import type { IRoseChartSpec } from '@visactor/vchart'\nimport { isDeepEqual } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\nimport type { SpecPipe } from 'src/types'\n\nexport const initRoseParallel: SpecPipe = (spec, context) => {\n const result = { ...spec } as IRoseChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, dataset, encoding } = advancedVSeed\n const { unfoldInfo, foldInfo } = datasetReshapeInfo[0]\n\n const sameDimensionsMode = isDeepEqual(encoding.angle, encoding.color)\n\n result.type = 'rose'\n result.angleField = [unfoldInfo.encodingAngle]\n\n if (!sameDimensionsMode) {\n result.angleField.push(unfoldInfo.encodingDetail)\n\n if (encoding.detail?.[0] === MeasureName && encoding.radius?.length === 1) {\n result.angleField.pop()\n }\n }\n\n result.valueField = foldInfo.measureValue\n result.seriesField = unfoldInfo.encodingColorId\n result.padding = 0\n\n result.outerRadius = 0.9\n result.innerRadius = 0\n\n const hasNegativeValue = dataset.flat().find((d) => d[foldInfo.measureValue] < 0)\n if (hasNegativeValue) {\n result.innerRadius = 0.05\n }\n\n result.rose = {\n style: {\n stroke: '#ffffff',\n lineWidth: 1,\n },\n state: {\n hover: {\n lineWidth: 1,\n fillOpacity: 0.6,\n },\n },\n }\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initRoseParallel","spec","context","result","advancedVSeed","datasetReshapeInfo","dataset","encoding","unfoldInfo","foldInfo","sameDimensionsMode","isDeepEqual","MeasureName","hasNegativeValue","d"],"mappings":";;AAKO,MAAMA,mBAA6B,CAACC,MAAMC;IAC/C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGH;IAClD,MAAM,EAAEI,UAAU,EAAEC,QAAQ,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IAEtD,MAAMK,qBAAqBC,YAAYJ,SAAS,KAAK,EAAEA,SAAS,KAAK;IAErEJ,OAAO,IAAI,GAAG;IACdA,OAAO,UAAU,GAAG;QAACK,WAAW,aAAa;KAAC;IAE9C,IAAI,CAACE,oBAAoB;QACvBP,OAAO,UAAU,CAAC,IAAI,CAACK,WAAW,cAAc;QAEhD,IAAID,SAAS,MAAM,EAAE,CAAC,EAAE,KAAKK,eAAeL,SAAS,MAAM,EAAE,WAAW,GACtEJ,OAAO,UAAU,CAAC,GAAG;IAEzB;IAEAA,OAAO,UAAU,GAAGM,SAAS,YAAY;IACzCN,OAAO,WAAW,GAAGK,WAAW,eAAe;IAC/CL,OAAO,OAAO,GAAG;IAEjBA,OAAO,WAAW,GAAG;IACrBA,OAAO,WAAW,GAAG;IAErB,MAAMU,mBAAmBP,QAAQ,IAAI,GAAG,IAAI,CAAC,CAACQ,IAAMA,CAAC,CAACL,SAAS,YAAY,CAAC,GAAG;IAC/E,IAAII,kBACFV,OAAO,WAAW,GAAG;IAGvBA,OAAO,IAAI,GAAG;QACZ,OAAO;YACL,QAAQ;YACR,WAAW;QACb;QACA,OAAO;YACL,OAAO;gBACL,WAAW;gBACX,aAAa;YACf;QACF;IACF;IACAA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IAEnB,OAAOA;AACT"}
@@ -4,4 +4,4 @@ import type { Dimensions, Encoding, FoldInfo, Formatter, Label, Measure, Measure
4
4
  export declare const label: SpecPipe;
5
5
  export declare const generateMeasureValue: (value: number | string, measure: Measure, labelAutoFormat?: boolean, numFormat?: NumFormat) => string;
6
6
  export declare const generateMeasurePercent: (value: number | string, sum: number, formatter: Formatter) => string;
7
- export declare const buildLabel: <T extends ILineLikeLabelSpec | IArcLabelSpec>(label: Label, vseedMeasures: Measures | undefined, vseedDimensions: Dimensions | undefined, advancedVSeedMeasures: Measures, encoding: Encoding, foldInfoList: FoldInfo[]) => T;
7
+ export declare const buildLabel: <T extends ILineLikeLabelSpec | IArcLabelSpec>(label: Label, vseedMeasures: Measures | undefined, vseedDimensions: Dimensions | undefined, advancedVSeedDimensions: Dimensions, advancedVSeedMeasures: Measures, encoding: Encoding, foldInfoList: FoldInfo[]) => T;
@@ -1,5 +1,6 @@
1
1
  import { createFormatter, createFormatterByMeasure, findMeasureById } from "../../../../utils/index.js";
2
2
  import { merge, uniqueBy } from "remeda";
3
+ import { MeasureName } from "../../../../../dataReshape/index.js";
3
4
  const label_label = (spec, context)=>{
4
5
  const result = {
5
6
  ...spec
@@ -10,7 +11,7 @@ const label_label = (spec, context)=>{
10
11
  const baseConfig = advancedVSeed.config[chartType];
11
12
  const foldInfo = datasetReshapeInfo[0].foldInfo;
12
13
  const { label } = baseConfig;
13
- result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.measures, encoding, [
14
+ result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.dimensions, advancedVSeed.measures, encoding, [
14
15
  foldInfo
15
16
  ]);
16
17
  return result;
@@ -32,10 +33,11 @@ const generateMeasurePercent = (value, sum, formatter)=>{
32
33
  const percentValue = num / sum;
33
34
  return formatter(percentValue);
34
35
  };
35
- const buildLabel = (label, vseedMeasures = [], vseedDimensions = [], advancedVSeedMeasures, encoding, foldInfoList)=>{
36
- const { enable, wrap, showValue, showValuePercent, labelOverlap, labelColorSmartInvert, labelColor, labelFontSize, labelFontWeight, labelBackgroundColor, labelPosition, autoFormat, numFormat = {} } = label;
37
- const labelDims = uniqueBy((vseedDimensions || []).filter((item)=>encoding.label?.includes(item.id)), (item)=>item.id);
38
- const labelMeas = uniqueBy((vseedMeasures || []).filter((item)=>encoding.label?.includes(item.id)), (item)=>item.id);
36
+ const buildLabel = (label, vseedMeasures = [], vseedDimensions = [], advancedVSeedDimensions, advancedVSeedMeasures, encoding, foldInfoList)=>{
37
+ const { enable, wrap, showValue, showValuePercent, showDimension, labelOverlap, labelColorSmartInvert, labelColor, labelFontSize, labelFontWeight, labelBackgroundColor, labelPosition, autoFormat, numFormat = {} } = label;
38
+ const hasDimLabelEncoding = vseedDimensions.some((item)=>encoding.label?.includes(item.id));
39
+ const labelDims = uniqueBy(hasDimLabelEncoding ? vseedDimensions.filter((item)=>encoding.label?.includes(item.id)) : showDimension ? advancedVSeedDimensions.filter((d)=>d.id !== MeasureName) : [], (item)=>item.id);
40
+ const labelMeas = uniqueBy(vseedMeasures.filter((item)=>encoding.label?.includes(item.id)), (item)=>item.id);
39
41
  const percentFormat = merge(numFormat, {
40
42
  type: 'percent'
41
43
  });
@@ -44,7 +46,10 @@ const buildLabel = (label, vseedMeasures = [], vseedDimensions = [], advancedVSe
44
46
  visible: enable,
45
47
  formatMethod: (_, datum)=>{
46
48
  const result = [];
47
- const dimLabels = labelDims.map((item)=>item.alias || item.id);
49
+ const dimLabels = labelDims.map((item)=>{
50
+ const id = item.id;
51
+ return datum[id];
52
+ });
48
53
  const meaLabels = labelMeas.map((item)=>generateMeasureValue(datum[item.id], item, autoFormat, numFormat));
49
54
  result.push(...dimLabels);
50
55
  foldInfoList.forEach((foldInfo)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { IArcLabelSpec, ILineChartSpec } from '@visactor/vchart'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\nimport { createFormatter, createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n SpecPipe,\n} from 'src/types'\nimport { merge, uniqueBy } from 'remeda'\n\nexport const label: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfo],\n )\n\n return result\n}\n\nexport const generateMeasureValue = (\n value: number | string,\n measure: Measure,\n labelAutoFormat?: boolean,\n numFormat: NumFormat = {},\n) => {\n const format = merge(numFormat, measure.numFormat || measure.format)\n const mergedMeasure = { ...measure, numFormat: format, autoFormat: labelAutoFormat || measure.autoFormat }\n\n const formatter = createFormatterByMeasure(mergedMeasure)\n return formatter(value)\n}\n\nexport const generateMeasurePercent = (value: number | string, sum: number, formatter: Formatter) => {\n if (value === undefined || value === null) return String(value)\n const num = Number(value)\n if (Number.isNaN(num)) return String(value)\n\n const percentValue = num / sum\n return formatter(percentValue)\n}\n\nexport const buildLabel = <T extends ILineLikeLabelSpec | IArcLabelSpec>(\n label: Label,\n vseedMeasures: Measures = [],\n vseedDimensions: Dimensions = [],\n advancedVSeedMeasures: Measures,\n encoding: Encoding,\n foldInfoList: FoldInfo[],\n): T => {\n const {\n enable,\n wrap,\n showValue,\n showValuePercent,\n labelOverlap,\n labelColorSmartInvert,\n labelColor,\n labelFontSize,\n labelFontWeight,\n labelBackgroundColor,\n labelPosition,\n autoFormat,\n numFormat = {},\n } = label\n\n const labelDims = uniqueBy(\n (vseedDimensions || []).filter((item) => encoding.label?.includes(item.id)),\n (item) => item.id,\n )\n const labelMeas = uniqueBy(\n (vseedMeasures || []).filter((item) => encoding.label?.includes(item.id)),\n (item) => item.id,\n )\n\n const percentFormat: NumFormat = merge(numFormat, {\n type: 'percent',\n } as NumFormat)\n\n const percentFormatter = createFormatter(percentFormat)\n\n const result = {\n visible: enable,\n formatMethod: (_, datum: Datum) => {\n const result = []\n\n const dimLabels = labelDims.map((item) => item.alias || item.id)\n const meaLabels = labelMeas.map((item) =>\n generateMeasureValue(datum[item.id] as number | string, item, autoFormat, numFormat),\n )\n\n result.push(...dimLabels)\n\n foldInfoList.forEach((foldInfo) => {\n const { measureId, measureValue, statistics } = foldInfo\n const measure = findMeasureById(advancedVSeedMeasures, datum[measureId] as string)\n if (measure) {\n const measureValueLabel = generateMeasureValue(\n datum[measureValue] as number | string,\n measure,\n autoFormat,\n numFormat,\n )\n const measurePercentLabel = generateMeasurePercent(\n datum[measureValue] as number | string,\n statistics.sum,\n percentFormatter,\n )\n if (showValue) {\n result.push(measureValueLabel)\n }\n if (showValuePercent) {\n result.push(measurePercentLabel)\n }\n }\n })\n\n result.push(...meaLabels)\n\n if (wrap) {\n return result\n }\n return result.join(' ')\n },\n position: labelPosition,\n style: {\n fill: labelColor,\n fontSize: labelFontSize,\n fontWeight: labelFontWeight,\n background: labelBackgroundColor,\n },\n smartInvert: labelColorSmartInvert,\n } as T\n\n if (labelOverlap) {\n result.overlap = {\n hideOnHit: true,\n clampForce: true,\n }\n }\n\n return result\n}\n"],"names":["label","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","buildLabel","generateMeasureValue","value","measure","labelAutoFormat","numFormat","format","merge","mergedMeasure","formatter","createFormatterByMeasure","generateMeasurePercent","sum","String","num","Number","percentValue","vseedMeasures","vseedDimensions","advancedVSeedMeasures","foldInfoList","enable","wrap","showValue","showValuePercent","labelOverlap","labelColorSmartInvert","labelColor","labelFontSize","labelFontWeight","labelBackgroundColor","labelPosition","autoFormat","labelDims","uniqueBy","item","labelMeas","percentFormat","percentFormatter","createFormatter","_","datum","dimLabels","meaLabels","measureId","measureValue","statistics","findMeasureById","measureValueLabel","measurePercentLabel"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { IArcLabelSpec, ILineChartSpec } from '@visactor/vchart'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\nimport { createFormatter, createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n SpecPipe,\n} from 'src/types'\nimport { merge, uniqueBy } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\n\nexport const label: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfo],\n )\n\n return result\n}\n\nexport const generateMeasureValue = (\n value: number | string,\n measure: Measure,\n labelAutoFormat?: boolean,\n numFormat: NumFormat = {},\n) => {\n const format = merge(numFormat, measure.numFormat || measure.format)\n const mergedMeasure = { ...measure, numFormat: format, autoFormat: labelAutoFormat || measure.autoFormat }\n\n const formatter = createFormatterByMeasure(mergedMeasure)\n return formatter(value)\n}\n\nexport const generateMeasurePercent = (value: number | string, sum: number, formatter: Formatter) => {\n if (value === undefined || value === null) return String(value)\n const num = Number(value)\n if (Number.isNaN(num)) return String(value)\n\n const percentValue = num / sum\n return formatter(percentValue)\n}\n\nexport const buildLabel = <T extends ILineLikeLabelSpec | IArcLabelSpec>(\n label: Label,\n vseedMeasures: Measures = [],\n vseedDimensions: Dimensions = [],\n advancedVSeedDimensions: Dimensions,\n advancedVSeedMeasures: Measures,\n encoding: Encoding,\n foldInfoList: FoldInfo[],\n): T => {\n const {\n enable,\n wrap,\n showValue,\n showValuePercent,\n showDimension,\n labelOverlap,\n labelColorSmartInvert,\n labelColor,\n labelFontSize,\n labelFontWeight,\n labelBackgroundColor,\n labelPosition,\n autoFormat,\n numFormat = {},\n } = label\n\n const hasDimLabelEncoding = vseedDimensions.some((item) => encoding.label?.includes(item.id))\n\n const labelDims = uniqueBy(\n hasDimLabelEncoding\n ? vseedDimensions.filter((item) => encoding.label?.includes(item.id))\n : showDimension\n ? advancedVSeedDimensions.filter((d) => d.id !== MeasureName)\n : [],\n (item) => item.id,\n )\n\n const labelMeas = uniqueBy(\n vseedMeasures.filter((item) => encoding.label?.includes(item.id)),\n (item) => item.id,\n )\n\n const percentFormat: NumFormat = merge(numFormat, {\n type: 'percent',\n } as NumFormat)\n\n const percentFormatter = createFormatter(percentFormat)\n\n const result = {\n visible: enable,\n formatMethod: (_, datum: Datum) => {\n const result = []\n\n const dimLabels = labelDims.map((item) => {\n const id = item.id\n return datum[id] as number | string\n })\n\n const meaLabels = labelMeas.map((item) =>\n generateMeasureValue(datum[item.id] as number | string, item, autoFormat, numFormat),\n )\n\n result.push(...dimLabels)\n\n foldInfoList.forEach((foldInfo) => {\n const { measureId, measureValue, statistics } = foldInfo\n const measure = findMeasureById(advancedVSeedMeasures, datum[measureId] as string)\n if (measure) {\n const measureValueLabel = generateMeasureValue(\n datum[measureValue] as number | string,\n measure,\n autoFormat,\n numFormat,\n )\n const measurePercentLabel = generateMeasurePercent(\n datum[measureValue] as number | string,\n statistics.sum,\n percentFormatter,\n )\n if (showValue) {\n result.push(measureValueLabel)\n }\n if (showValuePercent) {\n result.push(measurePercentLabel)\n }\n }\n })\n\n result.push(...meaLabels)\n\n if (wrap) {\n return result\n }\n return result.join(' ')\n },\n position: labelPosition,\n style: {\n fill: labelColor,\n fontSize: labelFontSize,\n fontWeight: labelFontWeight,\n background: labelBackgroundColor,\n },\n smartInvert: labelColorSmartInvert,\n } as T\n\n if (labelOverlap) {\n result.overlap = {\n hideOnHit: true,\n clampForce: true,\n }\n }\n\n return result\n}\n"],"names":["label","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","buildLabel","generateMeasureValue","value","measure","labelAutoFormat","numFormat","format","merge","mergedMeasure","formatter","createFormatterByMeasure","generateMeasurePercent","sum","String","num","Number","percentValue","vseedMeasures","vseedDimensions","advancedVSeedDimensions","advancedVSeedMeasures","foldInfoList","enable","wrap","showValue","showValuePercent","showDimension","labelOverlap","labelColorSmartInvert","labelColor","labelFontSize","labelFontWeight","labelBackgroundColor","labelPosition","autoFormat","hasDimLabelEncoding","item","labelDims","uniqueBy","d","MeasureName","labelMeas","percentFormat","percentFormatter","createFormatter","_","datum","dimLabels","id","meaLabels","measureId","measureValue","statistics","findMeasureById","measureValueLabel","measurePercentLabel"],"mappings":"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"}
@@ -9,7 +9,7 @@ const labelPrimary = (spec, context)=>{
9
9
  const { chartType } = advancedVSeed;
10
10
  const baseConfig = advancedVSeed.config[chartType];
11
11
  const foldInfoList = datasetReshapeInfo[0].foldInfoList;
12
- result.label = buildLabel(baseConfig.label, vseed.measures, vseed.dimensions, advancedVSeed.measures, encoding, [
12
+ result.label = buildLabel(baseConfig.label, vseed.measures, vseed.dimensions, advancedVSeed.dimensions, advancedVSeed.measures, encoding, [
13
13
  foldInfoList[0]
14
14
  ]);
15
15
  result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX;
@@ -24,7 +24,7 @@ const labelSecondary = (spec, context)=>{
24
24
  const { chartType } = advancedVSeed;
25
25
  const baseConfig = advancedVSeed.config[chartType];
26
26
  const foldInfoList = datasetReshapeInfo[0].foldInfoList;
27
- result.label = buildLabel(baseConfig.label, vseed.measures, vseed.dimensions, advancedVSeed.measures, encoding, [
27
+ result.label = buildLabel(baseConfig.label, vseed.measures, vseed.dimensions, advancedVSeed.dimensions, advancedVSeed.measures, encoding, [
28
28
  foldInfoList[1]
29
29
  ]);
30
30
  result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/label/labelDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelDualAxis.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, Label, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\nimport { DUAL_AXIS_LABEL_Z_INDEX } from 'src/pipeline/utils/constant'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\n\nexport const labelPrimary: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n result.label = buildLabel<ILineLikeLabelSpec>(\n baseConfig.label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfoList[0]],\n )\n result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX\n return result\n}\n\nexport const labelSecondary: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n baseConfig.label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfoList[1]],\n )\n result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX\n return result\n}\n"],"names":["labelPrimary","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","encoding","chartType","baseConfig","foldInfoList","buildLabel","DUAL_AXIS_LABEL_Z_INDEX","labelSecondary"],"mappings":";;AAMO,MAAMA,eAAyB,CAACC,MAAMC;IAC3C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAEC,QAAQ,EAAE,GAAGH;IACzC,MAAM,EAAEI,SAAS,EAAE,GAAGJ;IACtB,MAAMK,aAAaL,cAAc,MAAM,CAACI,UAAU;IAElD,MAAME,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IACvDH,OAAO,KAAK,GAAGQ,WACbF,WAAW,KAAK,EAChBJ,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,QAAQ,EACtBG,UACA;QAACG,YAAY,CAAC,EAAE;KAAC;IAEnBP,OAAO,KAAK,CAAC,MAAM,GAAGS;IACtB,OAAOT;AACT;AAEO,MAAMU,iBAA2B,CAACZ,MAAMC;IAC7C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAEC,QAAQ,EAAE,GAAGH;IACzC,MAAM,EAAEI,SAAS,EAAE,GAAGJ;IACtB,MAAMK,aAAaL,cAAc,MAAM,CAACI,UAAU;IAElD,MAAME,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IAEvDH,OAAO,KAAK,GAAGQ,WACbF,WAAW,KAAK,EAChBJ,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,QAAQ,EACtBG,UACA;QAACG,YAAY,CAAC,EAAE;KAAC;IAEnBP,OAAO,KAAK,CAAC,MAAM,GAAGS;IACtB,OAAOT;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/labelDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelDualAxis.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, Label, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\nimport { DUAL_AXIS_LABEL_Z_INDEX } from 'src/pipeline/utils/constant'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\n\nexport const labelPrimary: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n result.label = buildLabel<ILineLikeLabelSpec>(\n baseConfig.label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfoList[0]],\n )\n result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX\n return result\n}\n\nexport const labelSecondary: SpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n baseConfig.label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfoList[1]],\n )\n result.label.zIndex = DUAL_AXIS_LABEL_Z_INDEX\n return result\n}\n"],"names":["labelPrimary","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","encoding","chartType","baseConfig","foldInfoList","buildLabel","DUAL_AXIS_LABEL_Z_INDEX","labelSecondary"],"mappings":";;AAMO,MAAMA,eAAyB,CAACC,MAAMC;IAC3C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAEC,QAAQ,EAAE,GAAGH;IACzC,MAAM,EAAEI,SAAS,EAAE,GAAGJ;IACtB,MAAMK,aAAaL,cAAc,MAAM,CAACI,UAAU;IAElD,MAAME,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IACvDH,OAAO,KAAK,GAAGQ,WACbF,WAAW,KAAK,EAChBJ,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,UAAU,EACxBA,cAAc,QAAQ,EACtBG,UACA;QAACG,YAAY,CAAC,EAAE;KAAC;IAEnBP,OAAO,KAAK,CAAC,MAAM,GAAGS;IACtB,OAAOT;AACT;AAEO,MAAMU,iBAA2B,CAACZ,MAAMC;IAC7C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAEC,QAAQ,EAAE,GAAGH;IACzC,MAAM,EAAEI,SAAS,EAAE,GAAGJ;IACtB,MAAMK,aAAaL,cAAc,MAAM,CAACI,UAAU;IAElD,MAAME,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IAEvDH,OAAO,KAAK,GAAGQ,WACbF,WAAW,KAAK,EAChBJ,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,UAAU,EACxBA,cAAc,QAAQ,EACtBG,UACA;QAACG,YAAY,CAAC,EAAE;KAAC;IAEnBP,OAAO,KAAK,CAAC,MAAM,GAAGS;IACtB,OAAOT;AACT"}
@@ -9,7 +9,7 @@ const labelPie = (spec, context)=>{
9
9
  const baseConfig = advancedVSeed.config[chartType];
10
10
  const foldInfo = datasetReshapeInfo[0].foldInfo;
11
11
  const { label } = baseConfig;
12
- result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.measures, encoding, [
12
+ result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.dimensions, advancedVSeed.measures, encoding, [
13
13
  foldInfo
14
14
  ]);
15
15
  if (label.labelLayout) result.label.layout = {
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/label/labelPie.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelPie.ts"],"sourcesContent":["import type { IArcLabelSpec, IPieChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, PieLabel, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\n\nexport const labelPie: SpecPipe = (spec, context) => {\n const result = { ...spec } as IPieChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: PieLabel }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n\n result.label = buildLabel<IArcLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfo],\n )\n if (label.labelLayout) {\n result.label.layout = {\n align: label.labelLayout,\n }\n }\n return result\n}\n"],"names":["labelPie","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","label","buildLabel"],"mappings":";AAIO,MAAMA,WAAqB,CAACC,MAAMC;IACvC,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAE,GAAGF;IAC/B,MAAM,EAAEG,SAAS,EAAEC,QAAQ,EAAE,GAAGJ;IAChC,MAAMK,aAAaL,cAAc,MAAM,CAACG,UAAU;IAClD,MAAMG,WAAWJ,kBAAkB,CAAC,EAAE,CAAC,QAAQ;IAE/C,MAAM,EAAEK,KAAK,EAAE,GAAGF;IAElBN,OAAO,KAAK,GAAGS,WACbD,OACAN,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,QAAQ,EACtBI,UACA;QAACE;KAAS;IAEZ,IAAIC,MAAM,WAAW,EACnBR,OAAO,KAAK,CAAC,MAAM,GAAG;QACpB,OAAOQ,MAAM,WAAW;IAC1B;IAEF,OAAOR;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/labelPie.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelPie.ts"],"sourcesContent":["import type { IArcLabelSpec, IPieChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, PieLabel, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\n\nexport const labelPie: SpecPipe = (spec, context) => {\n const result = { ...spec } as IPieChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: PieLabel }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n\n result.label = buildLabel<IArcLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n [foldInfo],\n )\n if (label.labelLayout) {\n result.label.layout = {\n align: label.labelLayout,\n }\n }\n return result\n}\n"],"names":["labelPie","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","label","buildLabel"],"mappings":";AAIO,MAAMA,WAAqB,CAACC,MAAMC;IACvC,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAE,GAAGF;IAC/B,MAAM,EAAEG,SAAS,EAAEC,QAAQ,EAAE,GAAGJ;IAChC,MAAMK,aAAaL,cAAc,MAAM,CAACG,UAAU;IAClD,MAAMG,WAAWJ,kBAAkB,CAAC,EAAE,CAAC,QAAQ;IAE/C,MAAM,EAAEK,KAAK,EAAE,GAAGF;IAElBN,OAAO,KAAK,GAAGS,WACbD,OACAN,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,UAAU,EACxBA,cAAc,QAAQ,EACtBI,UACA;QAACE;KAAS;IAEZ,IAAIC,MAAM,WAAW,EACnBR,OAAO,KAAK,CAAC,MAAM,GAAG;QACpB,OAAOQ,MAAM,WAAW;IAC1B;IAEF,OAAOR;AACT"}
@@ -9,7 +9,7 @@ const labelScatter = (spec, context)=>{
9
9
  const baseConfig = advancedVSeed.config[chartType];
10
10
  const foldInfoList = datasetReshapeInfo[0].foldInfoList;
11
11
  const { label } = baseConfig;
12
- result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.measures, encoding, foldInfoList);
12
+ result.label = buildLabel(label, vseed.measures, vseed.dimensions, advancedVSeed.dimensions, advancedVSeed.measures, encoding, foldInfoList);
13
13
  return result;
14
14
  };
15
15
  export { labelScatter };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/label/labelScatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelScatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, Label, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\n\nexport const labelScatter: SpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n\n const { label } = baseConfig\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n foldInfoList,\n )\n\n return result\n}\n"],"names":["labelScatter","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfoList","label","buildLabel"],"mappings":";AAKO,MAAMA,eAAyB,CAACC,MAAMC;IAC3C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAE,GAAGF;IAC/B,MAAM,EAAEG,SAAS,EAAEC,QAAQ,EAAE,GAAGJ;IAChC,MAAMK,aAAaL,cAAc,MAAM,CAACG,UAAU;IAElD,MAAMG,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IAEvD,MAAM,EAAEK,KAAK,EAAE,GAAGF;IAElBN,OAAO,KAAK,GAAGS,WACbD,OACAN,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,QAAQ,EACtBI,UACAE;IAGF,OAAOP;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/labelScatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelScatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { Encoding, FoldInfo, Label, SpecPipe } from 'src/types'\nimport { buildLabel } from './label'\nimport type { ILineLikeLabelSpec } from '@visactor/vchart/esm/series/mixin/interface'\n\nexport const labelScatter: SpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n\n const foldInfoList = datasetReshapeInfo[0].foldInfoList as FoldInfo[]\n\n const { label } = baseConfig\n\n result.label = buildLabel<ILineLikeLabelSpec>(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions,\n advancedVSeed.measures,\n encoding as Encoding,\n foldInfoList,\n )\n\n return result\n}\n"],"names":["labelScatter","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfoList","label","buildLabel"],"mappings":";AAKO,MAAMA,eAAyB,CAACC,MAAMC;IAC3C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,kBAAkB,EAAE,GAAGF;IAC/B,MAAM,EAAEG,SAAS,EAAEC,QAAQ,EAAE,GAAGJ;IAChC,MAAMK,aAAaL,cAAc,MAAM,CAACG,UAAU;IAElD,MAAMG,eAAeJ,kBAAkB,CAAC,EAAE,CAAC,YAAY;IAEvD,MAAM,EAAEK,KAAK,EAAE,GAAGF;IAElBN,OAAO,KAAK,GAAGS,WACbD,OACAN,MAAM,QAAQ,EACdA,MAAM,UAAU,EAChBD,cAAc,UAAU,EACxBA,cAAc,QAAQ,EACtBI,UACAE;IAGF,OAAOP;AACT"}
@@ -0,0 +1,5 @@
1
+ import type { YBandAxis, YLinearAxis } from '../../types';
2
+ export declare const getLightLinearAxis: () => YLinearAxis;
3
+ export declare const getLightBandAxis: () => YBandAxis;
4
+ export declare const getDarkLinearAxis: () => YLinearAxis;
5
+ export declare const getDarkBandAxis: () => YBandAxis;
@@ -0,0 +1,156 @@
1
+ const getLightLinearAxis = ()=>({
2
+ nice: true,
3
+ zero: true,
4
+ inverse: false,
5
+ label: {
6
+ visible: true,
7
+ labelAngle: 0,
8
+ labelColor: '#797B85',
9
+ labelFontSize: 12,
10
+ labelFontWeight: 400
11
+ },
12
+ title: {
13
+ visible: false,
14
+ titleText: '',
15
+ titleColor: '#646A73',
16
+ titleFontSize: 12,
17
+ titleFontWeight: 400
18
+ },
19
+ grid: {
20
+ visible: true,
21
+ gridColor: '#36415926',
22
+ gridWidth: 0.5
23
+ },
24
+ tick: {
25
+ visible: false,
26
+ tickInside: false,
27
+ tickSize: 4,
28
+ tickColor: '#3641594d'
29
+ },
30
+ line: {
31
+ visible: false,
32
+ lineColor: '#3641594d',
33
+ lineWidth: 1
34
+ }
35
+ });
36
+ const getLightBandAxis = ()=>({
37
+ labelAutoHide: true,
38
+ labelAutoHideGap: 4,
39
+ labelAutoLimit: true,
40
+ labelAutoLimitLength: 80,
41
+ labelAutoRotate: false,
42
+ labelAutoRotateAngleRange: [
43
+ 0,
44
+ -45,
45
+ -90
46
+ ],
47
+ label: {
48
+ visible: true,
49
+ labelAngle: 0,
50
+ labelColor: '#797B85',
51
+ labelFontSize: 12,
52
+ labelFontWeight: 400
53
+ },
54
+ title: {
55
+ visible: false,
56
+ titleText: '',
57
+ titleColor: '#646A73',
58
+ titleFontSize: 12,
59
+ titleFontWeight: 400
60
+ },
61
+ grid: {
62
+ visible: false,
63
+ gridColor: '#36415926',
64
+ gridWidth: 0.5
65
+ },
66
+ tick: {
67
+ visible: false,
68
+ tickInside: false,
69
+ tickSize: 4,
70
+ tickColor: '#3641594d'
71
+ },
72
+ line: {
73
+ visible: true,
74
+ lineColor: '#3641594d',
75
+ lineWidth: 1
76
+ }
77
+ });
78
+ const getDarkLinearAxis = ()=>({
79
+ nice: true,
80
+ zero: true,
81
+ label: {
82
+ visible: true,
83
+ labelAngle: 0,
84
+ labelColor: '#E2E3E6',
85
+ labelFontSize: 12,
86
+ labelFontWeight: 400
87
+ },
88
+ title: {
89
+ visible: false,
90
+ titleText: '',
91
+ titleColor: '#FDFDFD',
92
+ titleFontSize: 12,
93
+ titleFontWeight: 400
94
+ },
95
+ grid: {
96
+ visible: true,
97
+ gridColor: '#404349',
98
+ gridWidth: 0.5
99
+ },
100
+ tick: {
101
+ visible: false,
102
+ tickInside: false,
103
+ tickSize: 4,
104
+ tickColor: '#4B4F54'
105
+ },
106
+ line: {
107
+ visible: false,
108
+ lineColor: '#4B4F54',
109
+ lineWidth: 1
110
+ }
111
+ });
112
+ const getDarkBandAxis = ()=>({
113
+ labelAutoHide: true,
114
+ labelAutoHideGap: 4,
115
+ labelAutoLimit: true,
116
+ labelAutoLimitLength: 80,
117
+ labelAutoRotate: false,
118
+ labelAutoRotateAngleRange: [
119
+ 0,
120
+ -45,
121
+ -90
122
+ ],
123
+ label: {
124
+ visible: true,
125
+ labelAngle: 0,
126
+ labelColor: '#E2E3E6',
127
+ labelFontSize: 12,
128
+ labelFontWeight: 400
129
+ },
130
+ title: {
131
+ visible: false,
132
+ titleText: '',
133
+ titleColor: '#FDFDFD',
134
+ titleFontSize: 12,
135
+ titleFontWeight: 400
136
+ },
137
+ grid: {
138
+ visible: false,
139
+ gridColor: '#404349',
140
+ gridWidth: 0.5
141
+ },
142
+ tick: {
143
+ visible: false,
144
+ tickInside: false,
145
+ tickSize: 4,
146
+ tickColor: '#4B4F54'
147
+ },
148
+ line: {
149
+ visible: true,
150
+ lineColor: '#4B4F54',
151
+ lineWidth: 1
152
+ }
153
+ });
154
+ export { getDarkBandAxis, getDarkLinearAxis, getLightBandAxis, getLightLinearAxis };
155
+
156
+ //# sourceMappingURL=axes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme/common/axes.js","sources":["webpack://@visactor/vseed/./src/theme/common/axes.ts"],"sourcesContent":["import type { YBandAxis, YLinearAxis } from 'src/types'\n\nexport const getLightLinearAxis = (): YLinearAxis => ({\n nice: true,\n zero: true,\n inverse: false,\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#797B85',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleText: '',\n titleColor: '#646A73',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: true,\n gridColor: '#36415926',\n gridWidth: 0.5,\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#3641594d',\n },\n line: {\n visible: false,\n lineColor: '#3641594d',\n lineWidth: 1,\n },\n})\n\nexport const getLightBandAxis = (): YBandAxis => ({\n labelAutoHide: true,\n labelAutoHideGap: 4,\n labelAutoLimit: true,\n labelAutoLimitLength: 80,\n labelAutoRotate: false,\n labelAutoRotateAngleRange: [0, -45, -90],\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#797B85',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleText: '',\n titleColor: '#646A73',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: false,\n gridColor: '#36415926',\n gridWidth: 0.5,\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#3641594d',\n },\n line: {\n visible: true,\n lineColor: '#3641594d',\n lineWidth: 1,\n },\n})\n\nexport const getDarkLinearAxis = (): YLinearAxis => ({\n nice: true,\n zero: true,\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#E2E3E6',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleText: '',\n titleColor: '#FDFDFD',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: true,\n gridColor: '#404349',\n gridWidth: 0.5,\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#4B4F54',\n },\n line: {\n visible: false,\n lineColor: '#4B4F54',\n lineWidth: 1,\n },\n})\n\nexport const getDarkBandAxis = (): YBandAxis => ({\n labelAutoHide: true,\n labelAutoHideGap: 4,\n labelAutoLimit: true,\n labelAutoLimitLength: 80,\n labelAutoRotate: false,\n labelAutoRotateAngleRange: [0, -45, -90],\n label: {\n visible: true,\n labelAngle: 0,\n labelColor: '#E2E3E6',\n labelFontSize: 12,\n labelFontWeight: 400,\n },\n title: {\n visible: false,\n titleText: '',\n titleColor: '#FDFDFD',\n titleFontSize: 12,\n titleFontWeight: 400,\n },\n grid: {\n visible: false,\n gridColor: '#404349',\n gridWidth: 0.5,\n },\n tick: {\n visible: false,\n tickInside: false,\n tickSize: 4,\n tickColor: '#4B4F54',\n },\n line: {\n visible: true,\n lineColor: '#4B4F54',\n lineWidth: 1,\n },\n})\n"],"names":["getLightLinearAxis","getLightBandAxis","getDarkLinearAxis","getDarkBandAxis"],"mappings":"AAEO,MAAMA,qBAAqB,IAAoB;QACpD,MAAM;QACN,MAAM;QACN,SAAS;QACT,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,WAAW;YACX,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,mBAAmB,IAAkB;QAChD,eAAe;QACf,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,iBAAiB;QACjB,2BAA2B;YAAC;YAAG;YAAK;SAAI;QACxC,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,WAAW;YACX,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,oBAAoB,IAAoB;QACnD,MAAM;QACN,MAAM;QACN,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,WAAW;YACX,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF;AAEO,MAAMC,kBAAkB,IAAkB;QAC/C,eAAe;QACf,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,iBAAiB;QACjB,2BAA2B;YAAC;YAAG;YAAK;SAAI;QACxC,OAAO;YACL,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,OAAO;YACL,SAAS;YACT,WAAW;YACX,YAAY;YACZ,eAAe;YACf,iBAAiB;QACnB;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,YAAY;YACZ,UAAU;YACV,WAAW;QACb;QACA,MAAM;YACJ,SAAS;YACT,WAAW;YACX,WAAW;QACb;IACF"}