import { $, DOMUtils, log } from "@/env";
import { Panel } from "@components/setting/panel";
export const M_CSDNBlogArticleRightToolBar = {
init() {
DOMUtils.onReady(() => {
let $toolbar = this.createRightToolBar();
Panel.execMenuOnce("m-csdn-blog-right-toolbar-like", () => {
return this.addLike($toolbar);
});
Panel.execMenuOnce("m-csdn-blog-right-toolbar-bury", () => {
return this.addBury($toolbar);
});
});
},
/**
* 创建右侧悬浮工具栏
*/
createRightToolBar() {
const $toolbar =
$(".gm-right-toolbar") ||
DOMUtils.createElement("div", {
className: "gm-right-toolbar",
});
const shadowRoot = $toolbar.attachShadow({ mode: "closed" });
const $style = DOMUtils.createElement("style", {
innerHTML: /*css*/ `
.gm-right-toolbar-container{
position: fixed;
top: 0;
right: 0;
z-index: 20000;
}
.gm-right-toolbar-container .toolbar-item{
}
`,
});
const $toolbarContainer = DOMUtils.createElement("div", {
className: "gm-right-toolbar-container",
});
shadowRoot.appendChild($style);
shadowRoot.appendChild($toolbarContainer);
if (!document.body.contains($toolbar)) {
document.body.appendChild($toolbar);
}
return $toolbarContainer;
},
/**
* 添加点赞按钮
*/
addLike($toolbar: HTMLElement) {
log.info(`添加点赞按钮`);
const $item = DOMUtils.createElement("div", {
className: "toolbar-item",
innerHTML: /*html*/ `
`,
});
$toolbar.appendChild($item);
return $item;
},
/**
* 添加点踩按钮
*/
addBury($toolbar: HTMLElement) {
log.info(`添加点踩按钮`);
const $item = DOMUtils.createElement("div", {
className: "toolbar-item",
innerHTML: /*html*/ `
`,
});
$toolbar.appendChild($item);
return $item;
},
};