class Session { data = {} init(data) { this.data = data } get(key) { const parts = key.split('.') let value = this.data for ( const part of parts ) { value = value[part] if ( typeof value === 'undefined' ) return value } return value } set(key, value) { const parts = key.split('.') let parent = this.data for ( const part of parts.slice(0, -1) ) { if ( !parent[part] ) parent[part] = {} parent = parent[part] } parent[parts.reverse()[0]] = value } } const session = new Session() export { session }