The CEF dependency is not resolved using CMake because it's only
available behind a CAPTCHA, and the Boost dependency is not resolved
using CMake because it is a relatively large dependency that is better
shared between LOOT and its dependencies that use it, instead of each
having to build a separate copy.
This is slower than the existing Travis script, because all targets in
the dependencies are now built, but it is more portable.
It uses <paper-listbox> internally for better performance, and
automatically deselects items when they are selected, allowing the
same item to be selected repeatedly.
Editor data is now set only with setEditorData(), the `data`
member has been removed. All metadata changes need to be
propagated using setEditorData(). Plugin name, version and crc
now exist in the editor's light DOM.
The Vulcanize script can now build the UI, the element test files, or
both, defaulting to the latter.
The `mkdirp` package is used as it's the simplest way of getting
recursive `mkdir`, ie. `mkdir -p`, to work.
The installer only installs a settings file so that it can set LOOT's
language to that chosen for the installer. However, as of
6307a3c194 LOOT can load partial settings
files, so the installer just needs to write out the language string to a
new settings file if one is not already present. This then means the
repository's settings.yaml can be removed.
Closes#527.
Start with making plugin.js into a module, and re-implementing Plugin
using the class-based ES6 syntax, as it's a lot cleaner. Dispatch
events from setters instead of using Object.observe when changing
values that prompt external changes.
Vulcanize's whitespace stripper doesn't like the ES6 syntax though, so
disable that.
Also start implementing some tests using Mocha and should.js.
Finish refactoring JS Plugin code