UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 8.64 kB
import*as SDK from"../../core/sdk/sdk.js";class HARBase{custom;constructor(e){if(!e||"object"!=typeof e)throw"First parameter is expected to be an object";this.custom=new Map}static safeDate(e){const t=new Date(e);if(!Number.isNaN(t.getTime()))return t;throw"Invalid date format"}static safeNumber(e){const t=Number(e);if(!Number.isNaN(t))return t;throw"Casting to number results in NaN"}static optionalNumber(e){return void 0!==e?HARBase.safeNumber(e):void 0}static optionalString(e){return void 0!==e?String(e):void 0}customAsString(e){const t=this.custom.get(e);if(t)return String(t)}customAsNumber(e){const t=this.custom.get(e);if(!t)return;const s=Number(t);return Number.isNaN(s)?void 0:s}customAsArray(e){const t=this.custom.get(e);if(t)return Array.isArray(t)?t:void 0}customInitiator(){return this.custom.get("initiator")}}export class HARRoot extends HARBase{log;constructor(e){super(e),this.log=new HARLog(e.log)}}export class HARLog extends HARBase{version;creator;browser;pages;entries;comment;constructor(e){if(super(e),this.version=String(e.version),this.creator=new HARCreator(e.creator),this.browser=e.browser?new HARCreator(e.browser):void 0,this.pages=Array.isArray(e.pages)?e.pages.map((e=>new HARPage(e))):[],!Array.isArray(e.entries))throw"log.entries is expected to be an array";this.entries=e.entries.map((e=>new HAREntry(e))),this.comment=HARBase.optionalString(e.comment)}}class HARCreator extends HARBase{name;version;comment;constructor(e){super(e),this.name=String(e.name),this.version=String(e.version),this.comment=HARBase.optionalString(e.comment)}}export class HARPage extends HARBase{startedDateTime;id;title;pageTimings;comment;constructor(e){super(e),this.startedDateTime=HARBase.safeDate(e.startedDateTime),this.id=String(e.id),this.title=String(e.title),this.pageTimings=new HARPageTimings(e.pageTimings),this.comment=HARBase.optionalString(e.comment)}}class HARPageTimings extends HARBase{onContentLoad;onLoad;comment;constructor(e){super(e),this.onContentLoad=HARBase.optionalNumber(e.onContentLoad),this.onLoad=HARBase.optionalNumber(e.onLoad),this.comment=HARBase.optionalString(e.comment)}}export class HAREntry extends HARBase{pageref;startedDateTime;time;request;response;cache;timings;serverIPAddress;connection;comment;constructor(e){super(e),this.pageref=HARBase.optionalString(e.pageref),this.startedDateTime=HARBase.safeDate(e.startedDateTime),this.time=HARBase.safeNumber(e.time),this.request=new HARRequest(e.request),this.response=new HARResponse(e.response),this.cache={},this.timings=new HARTimings(e.timings),this.serverIPAddress=HARBase.optionalString(e.serverIPAddress),this.connection=HARBase.optionalString(e.connection),this.comment=HARBase.optionalString(e.comment),this.custom.set("fromCache",HARBase.optionalString(e._fromCache)),this.custom.set("initiator",this.importInitiator(e._initiator)),this.custom.set("priority",HARBase.optionalString(e._priority)),this.custom.set("resourceType",HARBase.optionalString(e._resourceType)),this.custom.set("webSocketMessages",this.importWebSocketMessages(e._webSocketMessages))}importInitiator(e){if("object"==typeof e)return new HARInitiator(e)}importWebSocketMessages(e){if(!Array.isArray(e))return;const t=[];for(const s of e){if("object"!=typeof s)return;t.push(new HARWebSocketMessage(s))}return t}}class HARRequest extends HARBase{method;url;httpVersion;cookies;headers;queryString;postData;headersSize;bodySize;comment;constructor(e){super(e),this.method=String(e.method),this.url=String(e.url),this.httpVersion=String(e.httpVersion),this.cookies=Array.isArray(e.cookies)?e.cookies.map((e=>new HARCookie(e))):[],this.headers=Array.isArray(e.headers)?e.headers.map((e=>new HARHeader(e))):[],this.queryString=Array.isArray(e.queryString)?e.queryString.map((e=>new HARQueryString(e))):[],this.postData=e.postData?new HARPostData(e.postData):void 0,this.headersSize=HARBase.safeNumber(e.headersSize),this.bodySize=HARBase.safeNumber(e.bodySize),this.comment=HARBase.optionalString(e.comment)}}class HARResponse extends HARBase{status;statusText;httpVersion;cookies;headers;content;redirectURL;headersSize;bodySize;comment;constructor(e){super(e),this.status=HARBase.safeNumber(e.status),this.statusText=String(e.statusText),this.httpVersion=String(e.httpVersion),this.cookies=Array.isArray(e.cookies)?e.cookies.map((e=>new HARCookie(e))):[],this.headers=Array.isArray(e.headers)?e.headers.map((e=>new HARHeader(e))):[],this.content=new HARContent(e.content),this.redirectURL=String(e.redirectURL),this.headersSize=HARBase.safeNumber(e.headersSize),this.bodySize=HARBase.safeNumber(e.bodySize),this.comment=HARBase.optionalString(e.comment),this.custom.set("transferSize",HARBase.optionalNumber(e._transferSize)),this.custom.set("error",HARBase.optionalString(e._error))}}class HARCookie extends HARBase{name;value;path;domain;expires;httpOnly;secure;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.path=HARBase.optionalString(e.path),this.domain=HARBase.optionalString(e.domain),this.expires=e.expires?HARBase.safeDate(e.expires):void 0,this.httpOnly=void 0!==e.httpOnly?Boolean(e.httpOnly):void 0,this.secure=void 0!==e.secure?Boolean(e.secure):void 0,this.comment=HARBase.optionalString(e.comment)}}class HARHeader extends HARBase{name;value;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.comment=HARBase.optionalString(e.comment)}}class HARQueryString extends HARBase{name;value;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.comment=HARBase.optionalString(e.comment)}}class HARPostData extends HARBase{mimeType;params;text;comment;constructor(e){super(e),this.mimeType=String(e.mimeType),this.params=Array.isArray(e.params)?e.params.map((e=>new HARParam(e))):[],this.text=String(e.text),this.comment=HARBase.optionalString(e.comment)}}export class HARParam extends HARBase{name;value;fileName;contentType;comment;constructor(e){super(e),this.name=String(e.name),this.value=HARBase.optionalString(e.value),this.fileName=HARBase.optionalString(e.fileName),this.contentType=HARBase.optionalString(e.contentType),this.comment=HARBase.optionalString(e.comment)}}class HARContent extends HARBase{size;compression;mimeType;text;encoding;comment;constructor(e){super(e),this.size=HARBase.safeNumber(e.size),this.compression=HARBase.optionalNumber(e.compression),this.mimeType=String(e.mimeType),this.text=HARBase.optionalString(e.text),this.encoding=HARBase.optionalString(e.encoding),this.comment=HARBase.optionalString(e.comment)}}export class HARTimings extends HARBase{blocked;dns;connect;send;wait;receive;ssl;comment;constructor(e){super(e),this.blocked=HARBase.optionalNumber(e.blocked),this.dns=HARBase.optionalNumber(e.dns),this.connect=HARBase.optionalNumber(e.connect),this.send=HARBase.safeNumber(e.send),this.wait=HARBase.safeNumber(e.wait),this.receive=HARBase.safeNumber(e.receive),this.ssl=HARBase.optionalNumber(e.ssl),this.comment=HARBase.optionalString(e.comment),this.custom.set("blocked_queueing",HARBase.optionalNumber(e._blocked_queueing)),this.custom.set("blocked_proxy",HARBase.optionalNumber(e._blocked_proxy))}}export class HARInitiator extends HARBase{type;url;lineNumber;requestId;stack;constructor(e){super(e),this.type=HARBase.optionalString(e.type)??SDK.NetworkRequest.InitiatorType.Other,this.url=HARBase.optionalString(e.url),this.lineNumber=HARBase.optionalNumber(e.lineNumber),this.requestId=HARBase.optionalString(e.requestId),e.stack&&(this.stack=new HARStack(e.stack))}}export class HARStack extends HARBase{description;callFrames;parent;parentId;constructor(e){super(e),this.callFrames=Array.isArray(e.callFrames)?e.callFrames.map((e=>e?new HARCallFrame(e):null)).filter(Boolean):[],e.parent&&(this.parent=new HARStack(e.parent)),this.description=HARBase.optionalString(e.description);const t=e.parentId;t&&(this.parentId={id:HARBase.optionalString(t.id)??"",debuggerId:HARBase.optionalString(t.debuggerId)})}}export class HARCallFrame extends HARBase{functionName;scriptId;url="";lineNumber=-1;columnNumber=-1;constructor(e){super(e),this.functionName=HARBase.optionalString(e.functionName)??"",this.scriptId=HARBase.optionalString(e.scriptId)??"",this.url=HARBase.optionalString(e.url)??"",this.lineNumber=HARBase.optionalNumber(e.lineNumber)??-1,this.columnNumber=HARBase.optionalNumber(e.columnNumber)??-1}}class HARWebSocketMessage extends HARBase{time;opcode;data;type;constructor(e){super(e),this.time=HARBase.optionalNumber(e.time),this.opcode=HARBase.optionalNumber(e.opcode),this.data=HARBase.optionalString(e.data),this.type=HARBase.optionalString(e.type)}}