MCPcopy Create free account
hub / github.com/breck7/scroll / convertToScrollset

Function convertToScrollset

blog/scrollSetMaker.js:1–32  ·  view source on GitHub ↗
(data, delimiter = "|")

Source from the content-addressed store, hash-verified

1function convertToScrollset(data, delimiter = "|") {
2 const lines = data.trim().split("\n")
3 const headers = lines[0].split(delimiter)
4
5 let scrollset = ""
6
7 // Create parser definitions
8 headers.forEach((header, index) => {
9 const parserId = header.toLowerCase() + "Parser"
10 scrollset += `${parserId}\n`
11 scrollset += ` extends abstract${capitalizeFirstLetter(getParserType(header))}Parser\n`
12 scrollset += ` float sortIndex ${1 + (index + 1) / 10}\n\n`
13 })
14
15 // Create entries
16 for (let i = 1; i < lines.length; i++) {
17 const values = lines[i].split(delimiter)
18 if (values.length !== headers.length) continue
19
20 for (let j = 0; j < headers.length; j++) {
21 const header = headers[j].toLowerCase()
22 const value = values[j].trim()
23 if (value) {
24 scrollset += `${header} ${value}\n`
25 }
26 }
27
28 scrollset += "\n"
29 }
30
31 return scrollset
32}
33
34function capitalizeFirstLetter(string) {
35 return string.charAt(0).toUpperCase() + string.slice(1)

Callers

nothing calls this directly

Calls 5

capitalizeFirstLetterFunction · 0.85
getParserTypeFunction · 0.85
splitMethod · 0.80
trimMethod · 0.80
forEachMethod · 0.80

Tested by

no test coverage detected