{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/plots/bullet/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { BulletOptions } from './types';\n\ntype TransformData = {\n min: number;\n max: number;\n ds: any[];\n};\n/**\n * bullet 处理数据\n * @param options\n */\nexport function transformData(options: BulletOptions): TransformData {\n const { data, xField, measureField, rangeField, targetField, layout } = options;\n const ds: any[] = [];\n const scales: number[] = [];\n data.forEach((item: any, index: number) => {\n // 构建 title * range\n item[rangeField].sort((a: number, b: number) => a - b);\n item[rangeField].forEach((d: number, i: number) => {\n const range = i === 0 ? d : item[rangeField][i] - item[rangeField][i - 1];\n ds.push({\n rKey: `${rangeField}_${i}`,\n [xField]: xField ? item[xField] : String(index), // 没有xField就用索引\n [rangeField]: range,\n });\n });\n // 构建 title * measure\n item[measureField].forEach((d: number, i: number) => {\n ds.push({\n mKey: item[measureField].length > 1 ? `${measureField}_${i}` : `${measureField}`, // 一个数据就不带索引了\n [xField]: xField ? item[xField] : String(index),\n [measureField]: d,\n });\n });\n // 构建 title * target\n ds.push({\n tKey: `${targetField}`,\n [xField]: xField ? item[xField] : String(index),\n [targetField]: item[targetField],\n });\n // 为了取最大值和最小值,先存储\n scales.push(item[rangeField], item[measureField], item[targetField]);\n });\n // scales 是嵌套的需要拍平\n let min = Math.min(...scales.flat(Infinity));\n const max = Math.max(...scales.flat(Infinity));\n // min 大于 0 从 0 开始\n min = min > 0 ? 0 : min;\n\n // 垂直情况,需要反转数据\n if (layout === 'vertical') {\n ds.reverse();\n }\n return { min, max, ds };\n}\n"]}