UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 1.91 kB
import*as UI from"../../ui/legacy/legacy.js";import{ConsoleView}from"./ConsoleView.js";let consolePanelInstance;export class ConsolePanel extends UI.Panel.Panel{view;constructor(){super("console"),this.view=ConsoleView.instance()}static instance(e={forceNew:null}){const{forceNew:n}=e;return consolePanelInstance&&!n||(consolePanelInstance=new ConsolePanel),consolePanelInstance}static updateContextFlavor(){const e=ConsolePanel.instance().view;UI.Context.Context.instance().setFlavor(ConsoleView,e.isShowing()?e:null)}wasShown(){super.wasShown();wrapperViewInstance&&wrapperViewInstance.isShowing()&&UI.InspectorView.InspectorView.instance().setDrawerMinimized(!0),this.view.show(this.element),ConsolePanel.updateContextFlavor()}willHide(){super.willHide(),UI.InspectorView.InspectorView.instance().setDrawerMinimized(!1),wrapperViewInstance&&wrapperViewInstance.showViewInWrapper(),ConsolePanel.updateContextFlavor()}searchableView(){return ConsoleView.instance().searchableView()}}let consoleRevealerInstance,wrapperViewInstance=null;export class WrapperView extends UI.Widget.VBox{view;constructor(){super(),this.view=ConsoleView.instance()}static instance(){return wrapperViewInstance||(wrapperViewInstance=new WrapperView),wrapperViewInstance}wasShown(){ConsolePanel.instance().isShowing()?UI.InspectorView.InspectorView.instance().setDrawerMinimized(!0):this.showViewInWrapper(),ConsolePanel.updateContextFlavor()}willHide(){UI.InspectorView.InspectorView.instance().setDrawerMinimized(!1),ConsolePanel.updateContextFlavor()}showViewInWrapper(){this.view.show(this.element)}}export class ConsoleRevealer{static instance(e={forceNew:null}){const{forceNew:n}=e;return consoleRevealerInstance&&!n||(consoleRevealerInstance=new ConsoleRevealer),consoleRevealerInstance}async reveal(e){const n=ConsoleView.instance();n.isShowing()?n.focus():await UI.ViewManager.ViewManager.instance().showView("console-view")}}