@yuebai008/cli
Version:
Command line interface for rapid qg-minigame development
1 lines • 1.56 kB
JavaScript
import*as Common from"../../core/common/common.js";import*as Host from"../../core/host/host.js";let fileManagerInstance;export class FileManager extends Common.ObjectWrapper.ObjectWrapper{saveCallbacks;constructor(){super(),this.saveCallbacks=new Map,Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(Host.InspectorFrontendHostAPI.Events.SavedURL,this.savedURL,this),Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(Host.InspectorFrontendHostAPI.Events.CanceledSaveURL,this.canceledSavedURL,this),Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(Host.InspectorFrontendHostAPI.Events.AppendedToURL,this.appendedToURL,this)}static instance(e={forceNew:null}){const{forceNew:t}=e;return fileManagerInstance&&!t||(fileManagerInstance=new FileManager),fileManagerInstance}save(e,t,n){const s=new Promise((t=>this.saveCallbacks.set(e,t)));return Host.InspectorFrontendHost.InspectorFrontendHostInstance.save(e,t,n),s}savedURL(e){const{url:t,fileSystemPath:n}=e.data,s=this.saveCallbacks.get(t);this.saveCallbacks.delete(t),s&&s({fileSystemPath:n})}canceledSavedURL({data:e}){const t=this.saveCallbacks.get(e);this.saveCallbacks.delete(e),t&&t(null)}append(e,t){Host.InspectorFrontendHost.InspectorFrontendHostInstance.append(e,t)}close(e){Host.InspectorFrontendHost.InspectorFrontendHostInstance.close(e)}appendedToURL({data:e}){this.dispatchEventToListeners(Events.AppendedToURL,e)}}export var Events;!function(e){e.AppendedToURL="AppendedToURL"}(Events||(Events={}));