MCPcopy
hub / github.com/apache/echarts / parseListContents

Function parseListContents

src/component/toolbox/feature/DataView.ts:228–270  ·  view source on GitHub ↗
(str: string)

Source from the content-addressed store, hash-verified

226}
227
228function parseListContents(str: string) {
229 const lines = str.split(/\n+/g);
230 const seriesName = trim(lines.shift());
231
232 const data: DataList = [];
233 for (let i = 0; i < lines.length; i++) {
234 // if line is empty, ignore it.
235 // there is a case that a user forgot to delete `\n`.
236 const line = trim(lines[i]);
237 if (!line) {
238 continue;
239 }
240 let items = line.split(itemSplitRegex);
241
242 let name = '';
243 let value: number[];
244 let hasName = false;
245 if (isNaN(items[0] as unknown as number)) { // First item is name
246 hasName = true;
247 name = items[0];
248 items = items.slice(1);
249 data[i] = {
250 name: name,
251 value: []
252 };
253 value = (data[i] as DataItem).value as number[];
254 }
255 else {
256 value = data[i] = [];
257 }
258 for (let j = 0; j < items.length; j++) {
259 value.push(+items[j]);
260 }
261 if (value.length === 1) {
262 hasName ? ((data[i] as DataItem).value = value[0]) : (data[i] = value[0]);
263 }
264 }
265
266 return {
267 name: seriesName,
268 data: data
269 };
270}
271
272function parseContents(str: string, blockMetaList: SeriesGroupMeta[]) {
273 const blocks = str.split(new RegExp('\n*' + BLOCK_SPLITER + '\n*', 'g'));

Callers 1

parseContentsFunction · 0.85

Calls 1

trimFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…