npm package: @sbr-technologies/b5-result
Description: Text for big five results score
Author: Geir Gåsodden
Latest version: 4.0.0

[![Build Status](https://travis-ci.com/Alheimsins/b5-result-text.svg?branch=master)](https://travis-ci.com/Alheimsins/b5-result-text)
[![Coverage Status](https://coveralls.io/repos/Alheimsins/b5-result-text/badge.svg?branch=master&service=github)](https://coveralls.io/github/Alheimsins/b5-result-text?branch=master)
[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](https://github.com/feross/standard)

# b5-result-text

Text for [big five](https://en.wikipedia.org/wiki/Big_Five_personality_traits) results score generated by [b5-calculate-score](https://github.com/alheimisins/b5-calculate-score)

## Installation

```
$ npm i @alheimsins/b5-result-text
```

## Usage

Pass an object with scores and language code for result.
Default language is English (en) but Norwegian (no) is supported as well.

```JavaScript
const getResult = require('@alheimsins/b5-result-text')
const scores = {
     'A': {
       'score': 6,
       'count': 2,
       'result': 'neutral',
       'facet': {
         '1': {
           'score': 6,
           'count': 2,
           'result': 'neutral'
         }
       }
     },
     'E': {
       'score': 6,
       'count': 2,
       'result': 'neutral',
       'facet': {
         '1': {
           'score': 3,
           'count': 1,
           'result': 'neutral'
         },
         '2': {
           'score': 3,
           'count': 1,
           'result': 'neutral'
         }
       }
     }
   }

const results = getResult({scores: scores, lang: 'no'})

console.log(JSON.stringify(results, null, 2))
```

returns

```JavaScript
[
  {
    'domain': 'A',
    'title': 'Medmenneskelighet',
    'shortDescription': 'Medmenneskelighet henspeiler på individuelle forskjeller\nnår det gjelder samarbeid og sosial harmoni.\n<br>\nMedmenneskelige individer setter det å komme overens med andre høyt.',
    'description': 'De er derfor hensynsfulle, vennlige og villige til å finne kompromisser dersom det er\ninteressekonflikter.\n<br><br>\nMedmenneskelige individer har også et optimistisk syn på menneskenaturen. De tror at mennesker i bunn og grunn er ærlige,\n<br>\nredelige og til å stole på. Lite medmenneskelige individer setter egne\ninteresser over det å komme overens med andre.\n<br>\nDe er generelt ikke så opptatt av andres ve og vel, og vil derfor ikke strekke seg langt for andre\nmennesker.\n<br>\nNoen ganger er det deres skepsis når det gjelder andres motiver som forårsaker deres mistenksomhet, uvennlighet og mangel på samarbeidsvilje.\n<br>\nMedmenneskelighet er svært fordelaktig for å bli populær og for å fortsette å være det.\n<br><br>\nMedmenneskelige individer er bedre likt enn de som er lite medmenneskelig.\nMen medmenneskelighet er ingen nyttig egenskap i\n<br>\nsituasjoner der det kreves at man tar tøffe og helt objektive beslutninger.\n<br><br>\nLite medmenneskelige individer kan bli dyktige vitenskapsmenn, kritikere eller soldater.',
    'scoreText': 'neutral',
    'count': 2,
    'score': 6,
    'facets': [
      {
        'facet': 1,
        'title': 'Tillit',
        'text': 'En person som skårer <u>høyt</u> på tillit ser som oftest på andre\nmennesker som rettferdige, ærlige og at de har gode hensikter.\n<br>\nPersoner som skårer <u>lavt</u> på tillit ser på andre som selvopptatte,\nbedragerske og potensielt farlige.',
        'score': 6,
        'count': 2,
        'scoreText': 'neutral'
      }
    ],
    'text': 'Ditt resultat på medmenneskelighet er <b>gjennomsnittlig</b>, noe som\ntyder på at du er noe opptatt av andres behov, men generelt lite villig\ntil å ofre deg for andre.'
  },
  {
    'domain': 'E',
    'title': 'Ekstroversjon',
    'shortDescription': 'Ekstroversjon kjennetegnes av tydelig engasjement i den ytre verden.',
    'description': 'De <b>ekstroverte</b> liker å være sammen med mennesker, er fulle av energi, og opplever ofte positive følelser.\n<br>\nDe pleier å være entusiastiske, handlingsorienterte individer som liker å si "Ja!" eller "La oss sette i gang!"\n<br>\nnår det åpner seg muligheter for å oppleve noe spennende.\n<br>\nDe liker å snakke i grupper, hevde seg selv og rette oppmerksomhet mot seg selv.\n<br><br>\nDe <b>introverte</b> mangler livligheten, energien og aktivitesnivået til de ekstroverte.\n<br>\nDe er ofte stille, nedstemte, forsiktige og lite engasjert i den sosiale verden.\n<br><br>\nDeres mangel på sosialt engasjement bør ikke tolkes som reserverthet eller depresjon;\n<br>\nden introverte trenger bare mindre stimulering enn den ekstroverte og foretrekker å være alene.\n<br><br>\nUavhengigheten og reservasjonen til den introverte er noen ganger feilaktig sett på som uvennlighet eller arroganse.\n<br>\nI realiteten så vil en introvert som skårer høyt på medmennesklighetsfaktoren ikke søke andre bevisst, men synes det er ganske greit hvis andre søker deres selskap.',
    'scoreText': 'neutral',
    'count': 2,
    'score': 6,
    'facets': [
      {
        'facet': 1,
        'title': 'Vennlighet',
        'text': 'Vennlige mennesker liker andre mennesker og viser åpent positive følelser de har ovenfor andre.\n<br>\nDe får lettere venner, og det er enkelt for dem å danne nære, intime forhold.\n<br>\nDe som skårer <u>lavt</u> på vennlighet er ikke nødvendvis kalde og fiendtlige, men de knytter seg ikke til andre og blir\n<br>\noppfattet som distanserte og reserverte.',
        'score': 3,
        'count': 1,
        'scoreText': 'neutral'
      },
      {
        'facet': 2,
        'title': 'Sosiabilitet',
        'text': 'Personer med <u>høy</u> sosiabilitet setter pris på andres selskap og finner det stimulerende og får mye ut av det.\n<br>\nDe synes det er spennende med mange mennesker. De som skårer <u>lavt</u> føler seg overveldet av mange mennesker, og unngår derfor aktivt slike situasjoner.\n<br>\nDet er ikke det at de nødvendigvis misliker å være med mennesker fra tid til annen, men deres behov for privatliv og tid for seg selv\n<br>\ner større enn for individer som skårer høyt her.',
        'score': 3,
        'count': 1,
        'scoreText': 'neutral'
      }
    ],
    'text': 'Ditt resultat på ekstroversjon er <b>gjennomsnittlig</b>, noe som tyder på at du verken foretrekker å\n<br>\nvære alene eller en godmodig pratemaker. Du liker å være med andre, samtidig som du også setter pris på alene-tid.'
  }
]
```

### Extras

```JavaScript
const { getInfo, getTemplate, getDomain, getFacet } = require('@alheimsins/b5-result-text')

console.log(getInfo()) // returns modules info

console.log(getTemplate('no')) // returns template for language

console.log(getDomain({language: 'no', domain: 'O'})) // returns content of a domain for given language

console.log(getFacet({language: 'no', domain: 'O', facet: 2})) // returns content of a facet for a given domain and language
```

## Related

- [bigfive-web](https://github.com/maccyber/bigfive-web) Web frontend for big five tests
- [b5-web](https://github.com/alheimisins/b5-web) Standalone website for big five tests


## Supported languages

| Code | Name      | Translator |
| ---- | --------- | ---------- |
| en   | English   |            |
| da   | Danish    |            |
| no   | Norsk | Eli Huseby |
| is   | Icelandic | Franz Jónas Arnar Arnarson and [Sigurður Kári Árnason](https://github.com/sigurdurkari) |
| ar   | Arabic    | Rayan Khan |

## Help wanted

If you want to help by translating the results to another language this is how you do it.

- clone the repo
- find a language you know in [lib/data](lib/data)
- duplicate the folder and rename it to the language you will translate
- use [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) language code as folder name.
- translate the content of all files except index.js
- don't change filenames or properties
- all files must be present in the folder
- add your language code to the [languages.json](lib/data/languages.json) file
- run the tests `$ npm run test`
- submit pull request
- happiness :-)

## License

[MIT](LICENSE)

## About

Created with ❤ for [Alheimsins](https://alheimsins.net)

<img src="https://image.ibb.co/dPH08G/logo_black.png" height="150px" width="150px" />