{"version":3,"file":"processData.mjs","sources":["../../../../packages/chart-line/utils/processData.ts"],"sourcesContent":["import { CHART_LINE_LABEL_ID } from './constants.js'\nimport { LineData } from '../types.js'\n\ntype ProcessedLineData = LineData & {\n  id: string\n  index: number\n  width: number\n}\n\ntype ProcessedData = {\n  data: ProcessedLineData[]\n  ids: string[]\n}\n\nexport const processData = (\n  data: LineData[],\n  containerId: string,\n  maxValue?: number,\n): ProcessedData => {\n  // Calculate maxValue once if not provided\n  const calculatedMaxValue =\n    maxValue ?? Math.max(...data.map((item) => item.threshold.value))\n\n  return data\n    .sort((a, b) => a.threshold.value - b.threshold.value)\n    .reduce<ProcessedData>(\n      (acc, item, index) => {\n        const { threshold } = item\n        const id = `${containerId}-${CHART_LINE_LABEL_ID}-${index}-${threshold.label}`\n        const width = threshold.value / (calculatedMaxValue / 100)\n\n        const processedItem: ProcessedLineData = {\n          ...item,\n          id,\n          index,\n          width,\n        }\n\n        acc.data.push(processedItem)\n        acc.ids.push(id)\n\n        return acc\n      },\n      { data: [], ids: [] },\n    )\n}\n"],"names":["processData","data","containerId","maxValue","calculatedMaxValue","Math","max","map","item","threshold","value","sort","a","b","reduce","acc","index","id","CHART_LINE_LABEL_ID","label","width","processedItem","push","ids"],"mappings":";;AAcO,MAAMA,WAAW,GAAGA,CACzBC,IAAgB,EAChBC,WAAmB,EACnBC,QAAiB,KACC;AAClB;EACA,MAAMC,kBAAkB,GACtBD,QAAQ,IAAIE,IAAI,CAACC,GAAG,CAAC,GAAGL,IAAI,CAACM,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACC,SAAS,CAACC,KAAK,CAAC,CAAC,CAAA;AAEnE,EAAA,OAAOT,IAAI,CACRU,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACH,SAAS,CAACC,KAAK,GAAGG,CAAC,CAACJ,SAAS,CAACC,KAAK,CAAC,CACrDI,MAAM,CACL,CAACC,GAAG,EAAEP,IAAI,EAAEQ,KAAK,KAAK;IACpB,MAAM;AAAEP,MAAAA,SAAAA;AAAU,KAAC,GAAGD,IAAI,CAAA;AAC1B,IAAA,MAAMS,EAAE,GAAG,CAAGf,EAAAA,WAAW,CAAIgB,CAAAA,EAAAA,mBAAmB,CAAIF,CAAAA,EAAAA,KAAK,CAAIP,CAAAA,EAAAA,SAAS,CAACU,KAAK,CAAE,CAAA,CAAA;IAC9E,MAAMC,KAAK,GAAGX,SAAS,CAACC,KAAK,IAAIN,kBAAkB,GAAG,GAAG,CAAC,CAAA;AAE1D,IAAA,MAAMiB,aAAgC,GAAG;AACvC,MAAA,GAAGb,IAAI;MACPS,EAAE;MACFD,KAAK;AACLI,MAAAA,KAAAA;KACD,CAAA;AAEDL,IAAAA,GAAG,CAACd,IAAI,CAACqB,IAAI,CAACD,aAAa,CAAC,CAAA;AAC5BN,IAAAA,GAAG,CAACQ,GAAG,CAACD,IAAI,CAACL,EAAE,CAAC,CAAA;AAEhB,IAAA,OAAOF,GAAG,CAAA;AACZ,GAAC,EACD;AAAEd,IAAAA,IAAI,EAAE,EAAE;AAAEsB,IAAAA,GAAG,EAAE,EAAA;AAAG,GACtB,CAAC,CAAA;AACL;;;;"}