static parsePropertiesFromJs({components, ...js} = {}) {
        return {
            ...js,
            components: components && new Map(Object.entries(components).reduce((map, [characterKey, character]) => {
                map[characterKey] = Character.fromJS(character);