This is the main javascript logic from the dndbeyond.com character sheets

The data is downloaded using `sourcemapper` from https://github.com/denandz/sourcemapper

Given the main JS file URL, the source code can be downloaded and mapped using:
```
~/go/bin/sourcemapper -output ddb -jsurl https://media.dndbeyond.com/character-app/static/js/main.90aa78c5.js
```

For convenience you can run `python update.py`

## Syncing with git repo

The script is designed to keep the contents of a git repo up-to-date with the
current files. This can be paired with a cronjob to keep an up-to-date version
of the code someplace.

To ensure the `push` phase of the update works as expected, it is recommended
to provide an SSH URL for the repository, as we can leverage an SSH key for a
password-less authentication.

The following example would keep the latest code extracted from dndbeyond.com
stored in the `ddb_src` directory on the `master` branch of the given git repo.
If changes are found they are automatically pushed to the repository,
```
python update.py \
 --directory "ddb_src" \
 --git-repo "ssh://git@git.example.com/test/dndbeyond_src.git"
 --git-branch "master"
```
