| :linkattrs: |
| = Gerrit Code Review - PolyGerrit Plugin Styling |
| |
| == Plugin styles |
| |
| Plugins may provide |
| link:https://www.polymer-project.org/2.0/docs/devguide/style-shadow-dom#style-modules[Polymer |
| style modules,role=external,window=_blank] for UI CSS-based customization. |
| |
| PolyGerrit UI implements number of styling endpoints, which apply CSS mixins |
| link:https://tabatkins.github.io/specs/css-apply-rule/[using @apply,role=external,window=_blank] to its |
| direct contents. |
| |
| NOTE: Only items (i.e. CSS properties and mixin targets) documented here are |
| guaranteed to work in the long term, since they are covered by integration |
| tests. + When there is a need to add new property or endpoint, please |
| link:https://bugs.chromium.org/p/gerrit/issues/entry?template=PolyGerrit%20Issue[file |
| a bug,role=external,window=_blank] stating your use case to track and maintain for future releases. |
| |
| Plugins should be html-based and imported following PolyGerrit's |
| link:pg-plugin-dev.html#loading[dev guide]. |
| |
| Plugins should provide Style Module, for example: |
| |
| ``` html |
| <dom-module id="some-style"> |
| <template> |
| <style> |
| html { |
| --css-mixin-name: { |
| property: value; |
| } |
| } |
| </style> |
| </template> |
| </dom-module> |
| ``` |
| |
| Plugins should register style module with a styling endpoint using |
| `Plugin.prototype.registerStyleModule(endpointName, styleModuleName)`, for |
| example: |
| |
| ``` js |
| Gerrit.install(function(plugin) { |
| plugin.registerStyleModule('some-endpoint', 'some-style'); |
| }); |
| ``` |
| |
| == Available styling endpoints |
| === change-metadata |
| Following custom CSS mixins are recognized: |
| |
| * `--change-metadata-assignee` |
| + |
| is applied to `gr-change-metadata section.assignee` |
| * `--change-metadata-label-status` |
| + |
| is applied to `gr-change-metadata section.labelStatus` |
| * `--change-metadata-strategy` |
| + |
| is applied to `gr-change-metadata section.strategy` |
| * `--change-metadata-topic` |
| + |
| is applied to `gr-change-metadata section.topic` |
| |
| Following CSS properties have |
| link:https://gerrit.googlesource.com/gerrit/+/master/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html[long-term |
| support via integration test,role=external,window=_blank]: |
| |
| * `display` |
| + |
| can be set to `none` to hide a section. |