UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 1.52 kB
import*as TimelineModel from"../../models/timeline_model/timeline_model.js";import*as TraceEngine from"../../models/trace/trace.js";const SelectionRangeSymbol=Symbol("SelectionRange");export class TimelineSelection{startTime;endTime;object;constructor(e,i,n){this.startTime=e,this.endTime=i,this.object=n}static isFrameObject(e){return e instanceof TimelineModel.TimelineFrameModel.TimelineFrame}static fromFrame(e){return new TimelineSelection(TraceEngine.Types.Timing.MilliSeconds(e.startTime),TraceEngine.Types.Timing.MilliSeconds(e.endTime),e)}static isSyntheticNetworkRequestDetailsEventSelection(e){return!(e instanceof TraceEngine.Legacy.Event)&&(!TimelineSelection.isFrameObject(e)&&!TimelineSelection.isRangeSelection(e)&&(!!TraceEngine.Legacy.eventIsFromNewEngine(e)&&TraceEngine.Types.TraceEvents.isSyntheticNetworkRequestDetailsEvent(e)))}static isTraceEventSelection(e){return e instanceof TraceEngine.Legacy.Event||!TimelineSelection.isFrameObject(e)&&!TimelineSelection.isRangeSelection(e)&&(!TraceEngine.Types.TraceEvents.isSyntheticNetworkRequestDetailsEvent(e)&&TraceEngine.Legacy.eventIsFromNewEngine(e))}static fromTraceEvent(e){const{startTime:i,endTime:n}=TraceEngine.Legacy.timesForEventInMilliseconds(e);return new TimelineSelection(i,TraceEngine.Types.Timing.MilliSeconds(n||i+1),e)}static isRangeSelection(e){return e===SelectionRangeSymbol}static fromRange(e,i){return new TimelineSelection(TraceEngine.Types.Timing.MilliSeconds(e),TraceEngine.Types.Timing.MilliSeconds(i),SelectionRangeSymbol)}}