mirror of
https://github.com/artemkorsakov/project-euler-stats.git
synced 2026-07-22 05:42:55 +00:00
15 lines
463 B
TypeScript
15 lines
463 B
TypeScript
|
|
import { Source, PersonalTask } from './types';
|
||
|
|
import { extractPercentage } from './parsers';
|
||
|
|
|
||
|
|
export function extractSources(source: string): Source {
|
||
|
|
const tasks = source
|
||
|
|
.split('\n')
|
||
|
|
.filter(line => line.trim() !== '')
|
||
|
|
.map(line => {
|
||
|
|
const [task, percentage] = line.split(';').map(part => part.trim());
|
||
|
|
return new PersonalTask(task, extractPercentage(percentage));
|
||
|
|
});
|
||
|
|
|
||
|
|
return new Source(tasks);
|
||
|
|
}
|