Migrate codemirror plugin to TypeScript and Lit

Release-Notes: skip
Google-Bug-Id: b/234805062
Change-Id: I31671da9ceb79d68fc6bf0d91f9fe90d56052e67
32 files changed
tree: 25b42920dfab47bb4b311558505607e508f07bee
  1. java/
  2. web/
  3. .gitignore
  4. BUILD
  6. README.md

CodeMirror Editor

A plugin that uses CodeMirror to provide a rich code editing experience in PolyGerrit.

The plugins hooks into the editor endpoint and registers gr-editor for it.

The codemirror-element using CodeMirror is loaded lazily from another js bundle, because it is fairly large, and we don't want to load the large bundle, if the user is not editing anything.

We are using the generic test target in the plugins/ folder. See plugins/BUILD for how to enable the tests and then run bazel run plugins:web-test-runner.

For testing you can use FE dev helper (https://gerrit.googlesource.com/gerrit-fe-dev-helper/). It allows you to redirect to (symlinks to) your locally built files. You can use npm run start to serve files and put the locally built files (or symlinks) in the polygerrit-ui/app/ folder.