theme 主题插件,更改颜色主题

在 服务器 上的 plugins 子目录 新建一个 theme.js 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// gerrit https://gerrit.googlesource.com/gerrit/+/master/polygerrit-ui/app/samples/theme-plugin.js
// https://gerrit-review.googlesource.com/Documentation/pg-plugin-dev.html
// https://groups.google.com/g/repo-discuss/c/tgvmGhfFcgU
// https://stackoverflow.com/questions/19307964/customize-gerrit-home-pagelogo-and-color


Gerrit.install(plugin => {
const styleElement = document.createElement('dom-module');
styleElement.innerHTML = `
<template>
<style>
html {
--header-background-color: #ffff00;
--header-text-color: #000000;
--header-title-content: "xxx Gerrit";
--header-icon: url("/static/logo.png");
--header-icon-size: 1em;
--primary-text-color: #000000;
--dropdown-background-color: #ffff00;
}
</style>
</template>`;
styleElement.register('site-theme');
plugin.registerStyleModule('app-theme', 'site-theme');
}); // end Gerrit.install(plugin => {

banner 插件,横幅信息的展示

在 服务器 上的 plugins 子目录 新建一个 banner.js 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// gerrit https://gerrit.googlesource.com/gerrit/+/master/polygerrit-ui/app/samples/theme-plugin.js
// https://gerrit-review.googlesource.com/Documentation/pg-plugin-dev.html
// https://groups.google.com/g/repo-discuss/c/tgvmGhfFcgU
// https://stackoverflow.com/questions/19307964/customize-gerrit-home-pagelogo-and-color


Gerrit.install(plugin => {
const domHook = plugin.hook('banner', {replace: true});
domHook.onAttached(element => {
const banner = document.createElement('div');
banner.innerHTML = `

<div>
<style>
.bs-banner {
background-color: #D4E9A9;
color: #000000;
text-align: left;
padding: var(--header-padding);
}
.bs-banner .infored{
color: red;
}

</style>

<div class="bs-banner" id="bs-banner-message">
<span class="inner">
如果你有其他问题,清联系 SCM, 谢谢~~
</span>
</div>
</div>
`;

element.appendChild(banner);

}); //end domHook.onAttached(element => {

}); // end Gerrit.install(plugin => {



原理 是

这里的 ‘banner’ 要和 gerrit 定义好的 对应,
就是 gr-endpoint-decorator 这样的节点 都可以 自定义个js插件,往里注入内容的。 name=”banner” 就是这里的 ‘banner’