commit | e211fb1bd21043e2574c438a687c8f492d538c97 | [log] [tgz] |
---|---|---|
author | Tao Zhou <taoalpha@google.com> | Mon May 11 13:21:37 2020 +0200 |
committer | Tao Zhou <taoalpha@google.com> | Mon May 11 13:21:37 2020 +0200 |
tree | 94f5dbde76545b0f811badc0a24563793733b53f | |
parent | dccbda5542de6dded7863b30090e23174b454179 [diff] |
Move codemirror editor plugin to Polymer 3 This migration still left the lazy load asset `codemirror-element` as a html module due to the selectively support on languages. Change-Id: I7896c86b59c75fe1967bc94d3d5c8d8d01150941
A plugin that uses CodeMirror to provide a rich code editing experience in PolyGerrit.
This plugin is rewritten into Polymer 3 syntax. The gr-editor.js
is the main entry for the plugin.
But to support the lazy load on the codemirror
with supported languages, we still have the codemirror-element.html
as an asset which still built separately as an html.
We may consider drop the selectively language support and in favor of all-in-one bundle in the future or change build rule to support bundle css
in js
to move off of the html completely.
To run UI tests here will need install dependencies from both npm and bower.
npm run wct-test
should take care both for you, read more in package.json
.
You will need polymer-bridges
which is a submodule you can clone from: https://gerrit-review.googlesource.com/admin/repos/polymer-bridges
As polymer 3 no longer support Polymer.importHref
anymore, Gerrit still supports through a custom implementation, the implementation is copied here for testing purpose (test/import-href.js
).
bazel build :codemirror_editor
gerrit/plugins/codemirror-editor/
folder and it will automatically served at http://localhost:8081/plugins_/codemirror-editor/
If your plugin is already enabled, then you can block it and then inject the compiled local verison.
See more about how to use dev helper extension to help you test here: https://gerrit.googlesource.com/gerrit-fe-dev-helper/+/master