### Tips for working with Bower components

## General
When updating or adding a Bower dependency you will need to re-generate the `bower-components.xml` plugin.

1. Go to project root
2. Run `npm install` to ensure you have the right dependencies
(Note you will need to be [setup to access npm-private.atlassian.io](https://extranet.atlassian.com/display/NPM/npm.atlassian.io+Home))
3. Run `npm run bower-xml` to regenerate the XML file

There may be additional configuration required for new transitive dependencies, for more detailed instructions on
 managing dependencies see https://extranet.atlassian.com/display/STASH/HOWTO+-+Manage+Bower+frontend+dependencies+in+Stash

## CodeMirror
When you upgrade CodeMirror make sure you get any new modules and changes to meta.js
Once the new modules are added you need to regenerate the highlight.xml to ensure they can be loaded into the front end.

1. Go to `etc/build`
2. Execute `node highlight.js` This will regenerate your highlight.xml with any changes that are needed.
3. Commit the new highlight.xml

This step will also ensure that all the modes listed in meta.js have the correct code, if they don't node will fail.
