mirror of
https://github.com/BookStackApp/BookStack.git
synced 2025-07-31 15:24:31 +03:00
Lexical: Integrated diagram manager, added menu split button
This commit is contained in:
31
resources/js/wysiwyg/ui/framework/blocks/button-with-menu.ts
Normal file
31
resources/js/wysiwyg/ui/framework/blocks/button-with-menu.ts
Normal file
@ -0,0 +1,31 @@
|
||||
import {EditorContainerUiElement, EditorUiElement} from "../core";
|
||||
import {el} from "../../../utils/dom";
|
||||
import {EditorButton} from "../buttons";
|
||||
import {EditorDropdownButton} from "./dropdown-button";
|
||||
import caretDownIcon from "@icons/caret-down-large.svg";
|
||||
|
||||
export class EditorButtonWithMenu extends EditorContainerUiElement {
|
||||
protected button: EditorButton;
|
||||
protected dropdownButton: EditorDropdownButton;
|
||||
|
||||
constructor(button: EditorButton, menuItems: EditorUiElement[]) {
|
||||
super([button]);
|
||||
|
||||
this.button = button;
|
||||
this.dropdownButton = new EditorDropdownButton({
|
||||
button: {label: 'Menu', icon: caretDownIcon},
|
||||
showOnHover: false,
|
||||
direction: 'vertical',
|
||||
}, menuItems);
|
||||
this.addChildren(this.dropdownButton);
|
||||
}
|
||||
|
||||
buildDOM(): HTMLElement {
|
||||
return el('div', {
|
||||
class: 'editor-button-with-menu-container',
|
||||
}, [
|
||||
this.button.getDOMElement(),
|
||||
this.dropdownButton.getDOMElement()
|
||||
]);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user