Colli - build props
by Julia Will
JavaScript
const config = {
'sites.no.url': 'https://collicare.no',
'sites.no.text': 'Norway',
'sites.no.business.url': 'https://collicare.no',
'sites.no.business.text': 'Business',
'sites.no.private.url': 'https://collicare.no/private',
'sites.no.private.text': 'Private',
'sites.no.lang.main.url': 'https://collicare.no',
'sites.no.lang.main.text': 'No',
'sites.no.lang.en.url': 'https://collicare.no/en',
'sites.no.lang.en.text': 'En'
}
function buildConfig(path, value, conf) {
if (typeof path === 'string') {
path = path.split('.')
}
if (path.length == 1) {
conf[path[0]] = value
} else {
const elm = path.shift()
conf[elm] = conf[elm] || {}
buildConfig(path, value, conf[elm])
}
}
let conf = {}
Object.keys(config).forEach(key => {
buildConfig(key, config[key], conf)
})
console.log(conf)