@yuebai008/cli
Version:
Command line interface for rapid qg-minigame development
1 lines • 1.47 kB
JavaScript
import*as Common from"../../core/common/common.js";import*as i18n from"../../core/i18n/i18n.js";import*as SDK from"../../core/sdk/sdk.js";import*as MobileThrottling from"../../panels/mobile_throttling/mobile_throttling.js";import*as Components from"../../ui/legacy/components/utils/utils.js";const UIStrings={main:"Main"},str_=i18n.i18n.registerUIStrings("entrypoints/worker_app/WorkerMain.ts",UIStrings),i18nString=i18n.i18n.getLocalizedString.bind(void 0,str_);let workerMainImplInstance;export class WorkerMainImpl{static instance(e={forceNew:null}){const{forceNew:n}=e;return workerMainImplInstance&&!n||(workerMainImplInstance=new WorkerMainImpl),workerMainImplInstance}async run(){SDK.Connections.initMainConnection((async()=>{await SDK.TargetManager.TargetManager.instance().maybeAttachInitialTarget()||SDK.TargetManager.TargetManager.instance().createTarget("main",i18nString(UIStrings.main),SDK.Target.Type.ServiceWorker,null)}),Components.TargetDetachedDialog.TargetDetachedDialog.webSocketConnectionLost),new MobileThrottling.NetworkPanelIndicator.NetworkPanelIndicator}}Common.Runnable.registerEarlyInitializationRunnable(WorkerMainImpl.instance),SDK.ChildTargetManager.ChildTargetManager.install((async({target:e,waitingForDebugger:n})=>{if(e.parentTarget()||e.type()!==SDK.Target.Type.ServiceWorker||!n)return;const r=e.model(SDK.DebuggerModel.DebuggerModel);r&&(r.isReadyToPause()||await r.once(SDK.DebuggerModel.Events.DebuggerIsReadyToPause),r.pause())}));