playwright-core 1.58.0-alpha-2025-12-16 → 1.58.0-alpha-2025-12-18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browsers.json +4 -4
- package/lib/generated/injectedScriptSource.js +1 -1
- package/lib/server/agent/actionRunner.js +56 -16
- package/lib/server/agent/agent.js +19 -8
- package/lib/server/agent/codegen.js +2 -0
- package/lib/server/agent/context.js +17 -20
- package/lib/server/bidi/bidiConnection.js +1 -0
- package/lib/server/bidi/bidiDeserializer.js +116 -0
- package/lib/server/bidi/bidiExecutionContext.js +13 -21
- package/lib/server/bidi/bidiPage.js +5 -2
- package/lib/server/chromium/chromiumSwitches.js +2 -0
- package/lib/server/progress.js +7 -3
- package/lib/server/trace/viewer/traceViewer.js +17 -13
- package/lib/utils/isomorphic/trace/traceModel.js +4 -4
- package/lib/vite/traceViewer/assets/{codeMirrorModule-Dqdugjpa.js → codeMirrorModule-DqqhreXd.js} +1 -1
- package/lib/vite/traceViewer/assets/{defaultSettingsView-DIraU59a.js → defaultSettingsView-B-IIHg_U.js} +8 -8
- package/lib/vite/traceViewer/{index.D-mekvnz.js → index.CVDmenYz.js} +1 -1
- package/lib/vite/traceViewer/index.html +2 -2
- package/lib/vite/traceViewer/sw.bundle.js +4 -4
- package/lib/vite/traceViewer/uiMode.3umtrOtn.js +5 -0
- package/lib/vite/traceViewer/uiMode.html +2 -2
- package/package.json +1 -1
- package/types/protocol.d.ts +54 -54
- package/lib/server/bidi/third_party/bidiDeserializer.js +0 -98
- package/lib/vite/traceViewer/uiMode.BL60hFRS.js +0 -5
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./assets/xtermModule-CsJ4vdCR.js","./xtermModule.DYP7pi_n.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as zt,r as H,g as Kt,_ as Vt,h as $t,i as Ht,j as n,R as u,E as qt,s as yt,k as mt,l as Yt,t as Qt,m as Xt,n as q,o as F,T as Et,c as Jt,p as at,a as Zt,W as Gt,S as te,q as ee,b as se,e as ie,f as oe}from"./assets/defaultSettingsView-B-IIHg_U.js";var re={};class pt{constructor(t,e={}){this.isListing=!1,this._tests=new Map,this._rootSuite=new Z("","root"),this._options=e,this._reporter=t}reset(){this._rootSuite._entries=[],this._tests.clear()}dispatch(t){const{method:e,params:s}=t;if(e==="onConfigure"){this._onConfigure(s.config);return}if(e==="onProject"){this._onProject(s.project);return}if(e==="onBegin"){this._onBegin();return}if(e==="onTestBegin"){this._onTestBegin(s.testId,s.result);return}if(e==="onTestPaused"){this._onTestPaused(s.testId,s.resultId,s.stepId,s.errors);return}if(e==="onTestEnd"){this._onTestEnd(s.test,s.result);return}if(e==="onStepBegin"){this._onStepBegin(s.testId,s.resultId,s.step);return}if(e==="onAttach"){this._onAttach(s.testId,s.resultId,s.attachments);return}if(e==="onStepEnd"){this._onStepEnd(s.testId,s.resultId,s.step);return}if(e==="onError"){this._onError(s.error);return}if(e==="onStdIO"){this._onStdIO(s.type,s.testId,s.resultId,s.data,s.isBase64);return}if(e==="onEnd")return this._onEnd(s.result);if(e==="onExit")return this._onExit()}_onConfigure(t){var e,s;this._rootDir=t.rootDir,this._config=this._parseConfig(t),(s=(e=this._reporter).onConfigure)==null||s.call(e,this._config)}_onProject(t){let e=this._options.mergeProjects?this._rootSuite.suites.find(s=>s.project().name===t.name):void 0;e||(e=new Z(t.name,"project"),this._rootSuite._addSuite(e)),e._project=this._parseProject(t);for(const s of t.suites)this._mergeSuiteInto(s,e)}_onBegin(){var t,e;(e=(t=this._reporter).onBegin)==null||e.call(t,this._rootSuite)}_onTestBegin(t,e){var l,r;const s=this._tests.get(t);this._options.clearPreviousResultsWhenTestBegins&&(s.results=[]);const i=s._createTestResult(e.id);i.retry=e.retry,i.workerIndex=e.workerIndex,i.parallelIndex=e.parallelIndex,i.setStartTimeNumber(e.startTime),(r=(l=this._reporter).onTestBegin)==null||r.call(l,s,i)}_onTestPaused(t,e,s,i){var d,h;const l=this._tests.get(t),r=l.results.find(a=>a._id===e),m=r._stepMap.get(s);r.errors.push(...i),r.error=r.errors[0],(h=(d=this._reporter).onTestPaused)==null||h.call(d,l,r,m)}_onTestEnd(t,e){var l,r;const s=this._tests.get(t.testId);s.timeout=t.timeout,s.expectedStatus=t.expectedStatus;const i=s.results.find(m=>m._id===e.id);i.duration=e.duration,i.status=e.status,i.errors.push(...e.errors??[]),i.error=i.errors[0],e.attachments&&(i.attachments=this._parseAttachments(e.attachments)),e.annotations&&(this._absoluteAnnotationLocationsInplace(e.annotations),i.annotations=e.annotations,s.annotations=e.annotations),(r=(l=this._reporter).onTestEnd)==null||r.call(l,s,i),i._stepMap=new Map}_onStepBegin(t,e,s){var h,a;const i=this._tests.get(t),l=i.results.find(w=>w._id===e),r=s.parentStepId?l._stepMap.get(s.parentStepId):void 0,m=this._absoluteLocation(s.location),d=new ae(s,r,m,l);r?r.steps.push(d):l.steps.push(d),l._stepMap.set(s.id,d),(a=(h=this._reporter).onStepBegin)==null||a.call(h,i,l,d)}_onStepEnd(t,e,s){var m,d;const i=this._tests.get(t),l=i.results.find(h=>h._id===e),r=l._stepMap.get(s.id);r._endPayload=s,r.duration=s.duration,r.error=s.error,(d=(m=this._reporter).onStepEnd)==null||d.call(m,i,l,r)}_onAttach(t,e,s){this._tests.get(t).results.find(r=>r._id===e).attachments.push(...s.map(r=>({name:r.name,contentType:r.contentType,path:r.path,body:r.base64&&globalThis.Buffer?Buffer.from(r.base64,"base64"):void 0})))}_onError(t){var e,s;(s=(e=this._reporter).onError)==null||s.call(e,t)}_onStdIO(t,e,s,i,l){var h,a,w,S;const r=l?globalThis.Buffer?Buffer.from(i,"base64"):atob(i):i,m=e?this._tests.get(e):void 0,d=m&&s?m.results.find(c=>c._id===s):void 0;t==="stdout"?(d==null||d.stdout.push(r),(a=(h=this._reporter).onStdOut)==null||a.call(h,r,m,d)):(d==null||d.stderr.push(r),(S=(w=this._reporter).onStdErr)==null||S.call(w,r,m,d))}async _onEnd(t){var e,s;await((s=(e=this._reporter).onEnd)==null?void 0:s.call(e,{status:t.status,startTime:new Date(t.startTime),duration:t.duration}))}_onExit(){var t,e;return(e=(t=this._reporter).onExit)==null?void 0:e.call(t)}_parseConfig(t){const e={...ce,...t};return this._options.configOverrides&&(e.configFile=this._options.configOverrides.configFile,e.reportSlowTests=this._options.configOverrides.reportSlowTests,e.quiet=this._options.configOverrides.quiet,e.reporter=[...this._options.configOverrides.reporter]),e}_parseProject(t){return{metadata:t.metadata,name:t.name,outputDir:this._absolutePath(t.outputDir),repeatEach:t.repeatEach,retries:t.retries,testDir:this._absolutePath(t.testDir),testIgnore:lt(t.testIgnore),testMatch:lt(t.testMatch),timeout:t.timeout,grep:lt(t.grep),grepInvert:lt(t.grepInvert),dependencies:t.dependencies,teardown:t.teardown,snapshotDir:this._absolutePath(t.snapshotDir),use:t.use}}_parseAttachments(t){return t.map(e=>({...e,body:e.base64&&globalThis.Buffer?Buffer.from(e.base64,"base64"):void 0}))}_mergeSuiteInto(t,e){let s=e.suites.find(i=>i.title===t.title);s||(s=new Z(t.title,e.type==="project"?"file":"describe"),e._addSuite(s)),s.location=this._absoluteLocation(t.location),t.entries.forEach(i=>{"testId"in i?this._mergeTestInto(i,s):this._mergeSuiteInto(i,s)})}_mergeTestInto(t,e){let s=this._options.mergeTestCases?e.tests.find(i=>i.title===t.title&&i.repeatEachIndex===t.repeatEachIndex):void 0;s||(s=new ne(t.testId,t.title,this._absoluteLocation(t.location),t.repeatEachIndex),e._addTest(s),this._tests.set(s.id,s)),this._updateTest(t,s)}_updateTest(t,e){return e.id=t.testId,e.location=this._absoluteLocation(t.location),e.retries=t.retries,e.tags=t.tags??[],e.annotations=t.annotations??[],this._absoluteAnnotationLocationsInplace(e.annotations),e}_absoluteAnnotationLocationsInplace(t){for(const e of t)e.location&&(e.location=this._absoluteLocation(e.location))}_absoluteLocation(t){return t&&{...t,file:this._absolutePath(t.file)}}_absolutePath(t){if(t!==void 0)return this._options.resolvePath?this._options.resolvePath(this._rootDir,t):this._rootDir+"/"+t}}class Z{constructor(t,e){this._entries=[],this._requireFile="",this._parallelMode="none",this.title=t,this._type=e}get type(){return this._type}get suites(){return this._entries.filter(t=>t.type!=="test")}get tests(){return this._entries.filter(t=>t.type==="test")}entries(){return this._entries}allTests(){const t=[],e=s=>{for(const i of s.entries())i.type==="test"?t.push(i):e(i)};return e(this),t}titlePath(){const t=this.parent?this.parent.titlePath():[];return(this.title||this._type!=="describe")&&t.push(this.title),t}project(){var t;return this._project??((t=this.parent)==null?void 0:t.project())}_addTest(t){t.parent=this,this._entries.push(t)}_addSuite(t){t.parent=this,this._entries.push(t)}}class ne{constructor(t,e,s,i){this.fn=()=>{},this.results=[],this.type="test",this.expectedStatus="passed",this.timeout=0,this.annotations=[],this.retries=0,this.tags=[],this.repeatEachIndex=0,this.id=t,this.title=e,this.location=s,this.repeatEachIndex=i}titlePath(){const t=this.parent?this.parent.titlePath():[];return t.push(this.title),t}outcome(){return de(this)}ok(){const t=this.outcome();return t==="expected"||t==="flaky"||t==="skipped"}_createTestResult(t){const e=new le(this.results.length,t);return this.results.push(e),e}}class ae{constructor(t,e,s,i){this.duration=-1,this.steps=[],this._startTime=0,this.title=t.title,this.category=t.category,this.location=s,this.parent=e,this._startTime=t.startTime,this._result=i}titlePath(){var e;return[...((e=this.parent)==null?void 0:e.titlePath())||[],this.title]}get startTime(){return new Date(this._startTime)}set startTime(t){this._startTime=+t}get attachments(){var t,e;return((e=(t=this._endPayload)==null?void 0:t.attachments)==null?void 0:e.map(s=>this._result.attachments[s]))??[]}get annotations(){var t;return((t=this._endPayload)==null?void 0:t.annotations)??[]}}class le{constructor(t,e){this.parallelIndex=-1,this.workerIndex=-1,this.duration=-1,this.stdout=[],this.stderr=[],this.attachments=[],this.annotations=[],this.status="skipped",this.steps=[],this.errors=[],this._stepMap=new Map,this._startTime=0,this.retry=t,this._id=e}setStartTimeNumber(t){this._startTime=t}get startTime(){return new Date(this._startTime)}set startTime(t){this._startTime=+t}}const ce={forbidOnly:!1,fullyParallel:!1,globalSetup:null,globalTeardown:null,globalTimeout:0,grep:/.*/,grepInvert:null,maxFailures:0,metadata:{},preserveOutput:"always",projects:[],reporter:[[re.CI?"dot":"list"]],reportSlowTests:{max:5,threshold:3e5},configFile:"",rootDir:"",quiet:!1,shard:null,tags:[],updateSnapshots:"missing",updateSourceMethod:"patch",runAgents:!1,version:"",workers:0,webServer:null};function lt(o){return o.map(t=>t.s!==void 0?t.s:new RegExp(t.r.source,t.r.flags))}function de(o){let t=0,e=0,s=0;for(const i of o.results)i.status==="interrupted"||(i.status==="skipped"&&o.expectedStatus==="skipped"?++t:i.status==="skipped"||(i.status===o.expectedStatus?++e:++s));return e===0&&s===0?"skipped":s===0?"expected":e===0&&t===0?"unexpected":"flaky"}class gt{constructor(t,e,s,i,l,r){this._treeItemById=new Map,this._treeItemByTestId=new Map;const m=i&&[...i.values()].some(Boolean);this.pathSeparator=l,this.rootItem={kind:"group",subKind:"folder",id:t,title:"",location:{file:"",line:0,column:0},duration:0,parent:void 0,children:[],status:"none",hasLoadErrors:!1},this._treeItemById.set(t,this.rootItem);const d=(h,a,w,S)=>{for(const c of S==="tests"?[]:a.suites){if(!c.title){d(h,c,w,"all");continue}let k=w.children.find(_=>_.kind==="group"&&_.title===c.title);k||(k={kind:"group",subKind:"describe",id:"suite:"+a.titlePath().join("")+""+c.title,title:c.title,location:c.location,duration:0,parent:w,children:[],status:"none",hasLoadErrors:!1},this._addChild(w,k)),d(h,c,k,"all")}for(const c of S==="suites"?[]:a.tests){const k=c.title;let _=w.children.find(D=>D.kind!=="group"&&D.title===k);_||(_={kind:"case",id:"test:"+c.titlePath().join(""),title:k,parent:w,children:[],tests:[],location:c.location,duration:0,status:"none",project:void 0,test:void 0,tags:c.tags},this._addChild(w,_));const x=c.results[0];let I="none";(x==null?void 0:x[G])==="scheduled"?I="scheduled":(x==null?void 0:x[G])==="running"?I="running":(x==null?void 0:x.status)==="skipped"?I="skipped":(x==null?void 0:x.status)==="interrupted"?I="none":x&&c.outcome()!=="expected"?I="failed":x&&c.outcome()==="expected"&&(I="passed"),_.tests.push(c);const b={kind:"test",id:c.id,title:h.name,location:c.location,test:c,parent:_,children:[],status:I,duration:c.results.length?Math.max(0,c.results[0].duration):0,project:h};this._addChild(_,b),this._treeItemByTestId.set(c.id,b),_.duration=_.children.reduce((D,B)=>D+B.duration,0)}};for(const h of(e==null?void 0:e.suites)||[])if(!(m&&!i.get(h.title)))for(const a of h.suites)if(r){if(d(h.project(),a,this.rootItem,"suites"),a.tests.length){const w=this._defaultDescribeItem();d(h.project(),a,w,"tests")}}else{const w=this._fileItem(a.location.file.split(l),!0);d(h.project(),a,w,"all")}for(const h of s){if(!h.location)continue;const a=this._fileItem(h.location.file.split(l),!0);a.hasLoadErrors=!0}}_addChild(t,e){t.children.push(e),e.parent=t,this._treeItemById.set(e.id,e)}filterTree(t,e,s){const i=t.trim().toLowerCase().split(" "),l=[...e.values()].some(Boolean),r=d=>{const h=[...d.tests[0].titlePath(),...d.tests[0].tags].join(" ").toLowerCase();return!i.every(a=>h.includes(a))&&!d.tests.some(a=>s==null?void 0:s.has(a.id))?!1:(d.children=d.children.filter(a=>!l||(s==null?void 0:s.has(a.test.id))||e.get(a.status)),d.tests=d.children.map(a=>a.test),!!d.children.length)},m=d=>{const h=[];for(const a of d.children)a.kind==="case"?r(a)&&h.push(a):(m(a),(a.children.length||a.hasLoadErrors)&&h.push(a));d.children=h};m(this.rootItem)}_fileItem(t,e){if(t.length===0)return this.rootItem;const s=t.join(this.pathSeparator),i=this._treeItemById.get(s);if(i)return i;const l=this._fileItem(t.slice(0,t.length-1),!1),r={kind:"group",subKind:e?"file":"folder",id:s,title:t[t.length-1],location:{file:s,line:0,column:0},duration:0,parent:l,children:[],status:"none",hasLoadErrors:!1};return this._addChild(l,r),r}_defaultDescribeItem(){let t=this._treeItemById.get("<anonymous>");return t||(t={kind:"group",subKind:"describe",id:"<anonymous>",title:"<anonymous>",location:{file:"",line:0,column:0},duration:0,parent:this.rootItem,children:[],status:"none",hasLoadErrors:!1},this._addChild(this.rootItem,t)),t}sortAndPropagateStatus(){Rt(this.rootItem)}flattenForSingleProject(){const t=e=>{e.kind==="case"&&e.children.length===1?(e.project=e.children[0].project,e.test=e.children[0].test,e.children=[],this._treeItemByTestId.set(e.test.id,e)):e.children.forEach(t)};t(this.rootItem)}shortenRoot(){let t=this.rootItem;for(;t.children.length===1&&t.children[0].kind==="group"&&t.children[0].subKind==="folder";)t=t.children[0];t.location=this.rootItem.location,this.rootItem=t}fileNames(){const t=new Set,e=s=>{s.kind==="group"&&s.subKind==="file"?t.add(s.id):s.children.forEach(e)};return e(this.rootItem),[...t]}flatTreeItems(){const t=[],e=s=>{t.push(s),s.children.forEach(e)};return e(this.rootItem),t}treeItemById(t){return this._treeItemById.get(t)}collectTestIds(t){return ue(t)}}function Rt(o){for(const r of o.children)Rt(r);o.kind==="group"&&o.children.sort((r,m)=>r.location.file.localeCompare(m.location.file)||r.location.line-m.location.line);let t=o.children.length>0,e=o.children.length>0,s=!1,i=!1,l=!1;for(const r of o.children)e=e&&r.status==="skipped",t=t&&(r.status==="passed"||r.status==="skipped"),s=s||r.status==="failed",i=i||r.status==="running",l=l||r.status==="scheduled";i?o.status="running":l?o.status="scheduled":s?o.status="failed":e?o.status="skipped":t&&(o.status="passed")}function ue(o){const t=new Set,e=new Set,s=i=>{if(i.kind!=="test"&&i.kind!=="case"){i.children.forEach(s);return}let l=i;for(;l&&l.parent&&!(l.kind==="group"&&l.subKind==="file");)l=l.parent;e.add(l.location.file),i.kind==="case"?i.tests.forEach(r=>t.add(r.id)):t.add(i.id)};return s(o),{testIds:t,locations:e}}const G=Symbol("statusEx");class he{constructor(t){this.loadErrors=[],this.progress={total:0,passed:0,failed:0,skipped:0},this._lastRunTestCount=0,this._receiver=new pt(this._createReporter(),{mergeProjects:!0,mergeTestCases:!0,resolvePath:Tt(t.pathSeparator),clearPreviousResultsWhenTestBegins:!0}),this._options=t}_createReporter(){return{version:()=>"v2",onConfigure:t=>{this.config=t,this._lastRunReceiver=new pt({version:()=>"v2",onBegin:e=>{this._lastRunTestCount=e.allTests().length,this._lastRunReceiver=void 0}},{mergeProjects:!0,mergeTestCases:!1,resolvePath:Tt(this._options.pathSeparator)}),this._lastRunReceiver.dispatch({method:"onConfigure",params:{config:t}})},onBegin:t=>{var e;if(this.rootSuite||(this.rootSuite=t),this._testResultsSnapshot){for(const s of this.rootSuite.allTests())s.results=((e=this._testResultsSnapshot)==null?void 0:e.get(s.id))||s.results;this._testResultsSnapshot=void 0}this.progress.total=this._lastRunTestCount,this.progress.passed=0,this.progress.failed=0,this.progress.skipped=0,this._options.onUpdate(!0)},onEnd:()=>{this._options.onUpdate(!0)},onTestBegin:(t,e)=>{e[G]="running",this._options.onUpdate()},onTestEnd:(t,e)=>{t.outcome()==="skipped"?++this.progress.skipped:t.outcome()==="unexpected"?++this.progress.failed:++this.progress.passed,e[G]=e.status,this._options.onUpdate()},onError:t=>this._handleOnError(t),printsToStdio:()=>!1}}processGlobalReport(t){const e=new pt({version:()=>"v2",onConfigure:s=>{this.config=s},onError:s=>this._handleOnError(s)});for(const s of t)e.dispatch(s)}processListReport(t){var s;const e=((s=this.rootSuite)==null?void 0:s.allTests())||[];this._testResultsSnapshot=new Map(e.map(i=>[i.id,i.results])),this._receiver.reset();for(const i of t)this._receiver.dispatch(i)}processTestReportEvent(t){var e,s,i;(s=(e=this._lastRunReceiver)==null?void 0:e.dispatch(t))==null||s.catch(()=>{}),(i=this._receiver.dispatch(t))==null||i.catch(()=>{})}_handleOnError(t){var e,s;this.loadErrors.push(t),(s=(e=this._options).onError)==null||s.call(e,t),this._options.onUpdate()}asModel(){return{rootSuite:this.rootSuite||new Z("","root"),config:this.config,loadErrors:this.loadErrors,progress:this.progress}}}function Tt(o){return(t,e)=>{const s=[];for(const i of[...t.split(o),...e.split(o)]){const l=o==="\\"&&s.length===1&&s[0].endsWith(":"),r=!s.length;if(!(!i&&!r&&!l)&&i!=="."){if(i===".."){s.pop();continue}s.push(i)}}return s.join(o)}}const fe=({source:o})=>{const[t,e]=zt(),[s,i]=H.useState(Kt()),[l]=H.useState(Vt(()=>import("./assets/xtermModule-CsJ4vdCR.js"),__vite__mapDeps([0,1]),import.meta.url).then(m=>m.default)),r=H.useRef(null);return H.useEffect(()=>($t(i),()=>Ht(i)),[]),H.useEffect(()=>{const m=o.write,d=o.clear;return(async()=>{const{Terminal:h,FitAddon:a}=await l,w=e.current;if(!w)return;const S=s==="dark-mode"?ge:pe;if(r.current&&r.current.terminal.options.theme===S)return;r.current&&(w.textContent="");const c=new h({convertEol:!0,fontSize:13,scrollback:1e4,fontFamily:"monospace",theme:S}),k=new a;c.loadAddon(k);for(const _ of o.pending)c.write(_);o.write=(_=>{o.pending.push(_),c.write(_)}),o.clear=()=>{o.pending=[],c.clear()},c.open(w),k.fit(),r.current={terminal:c,fitAddon:k}})(),()=>{o.clear=d,o.write=m}},[l,r,e,o,s]),H.useEffect(()=>{setTimeout(()=>{r.current&&(r.current.fitAddon.fit(),o.resize(r.current.terminal.cols,r.current.terminal.rows))},250)},[t,o]),n.jsx("div",{"data-testid":"output",className:"xterm-wrapper",style:{flex:"auto"},ref:e})},pe={foreground:"#383a42",background:"#fafafa",cursor:"#383a42",black:"#000000",red:"#e45649",green:"#50a14f",yellow:"#c18401",blue:"#4078f2",magenta:"#a626a4",cyan:"#0184bc",white:"#a0a0a0",brightBlack:"#000000",brightRed:"#e06c75",brightGreen:"#98c379",brightYellow:"#d19a66",brightBlue:"#4078f2",brightMagenta:"#a626a4",brightCyan:"#0184bc",brightWhite:"#383a42",selectionBackground:"#d7d7d7",selectionForeground:"#383a42"},ge={foreground:"#f8f8f2",background:"#1e1e1e",cursor:"#f8f8f0",black:"#000000",red:"#ff5555",green:"#50fa7b",yellow:"#f1fa8c",blue:"#bd93f9",magenta:"#ff79c6",cyan:"#8be9fd",white:"#bfbfbf",brightBlack:"#4d4d4d",brightRed:"#ff6e6e",brightGreen:"#69ff94",brightYellow:"#ffffa5",brightBlue:"#d6acff",brightMagenta:"#ff92df",brightCyan:"#a4ffff",brightWhite:"#e6e6e6",selectionBackground:"#44475a",selectionForeground:"#f8f8f2"},me=({filterText:o,setFilterText:t,statusFilters:e,setStatusFilters:s,projectFilters:i,setProjectFilters:l,testModel:r,runTests:m})=>{const[d,h]=u.useState(!1),a=u.useRef(null);u.useEffect(()=>{var c;(c=a.current)==null||c.focus()},[]);const w=[...e.entries()].filter(([c,k])=>k).map(([c])=>c).join(" ")||"all",S=[...i.entries()].filter(([c,k])=>k).map(([c])=>c).join(" ")||"all";return n.jsxs("div",{className:"filters",children:[n.jsx(qt,{expanded:d,setExpanded:h,title:n.jsx("input",{ref:a,type:"search",placeholder:"Filter (e.g. text, @tag)",spellCheck:!1,value:o,onChange:c=>{t(c.target.value)},onKeyDown:c=>{c.key==="Enter"&&m()}})}),n.jsxs("div",{className:"filter-summary",title:"Status: "+w+`
|
|
3
|
+
Projects: `+S,onClick:()=>h(!d),children:[n.jsx("span",{className:"filter-label",children:"Status:"})," ",w,n.jsx("span",{className:"filter-label",children:"Projects:"})," ",S]}),d&&n.jsxs("div",{className:"hbox",style:{marginLeft:14,maxHeight:200,overflowY:"auto"},children:[n.jsx("div",{className:"filter-list",role:"list","data-testid":"status-filters",children:[...e.entries()].map(([c,k])=>n.jsx("div",{className:"filter-entry",role:"listitem",children:n.jsxs("label",{children:[n.jsx("input",{type:"checkbox",checked:k,onChange:()=>{const _=new Map(e);_.set(c,!_.get(c)),s(_)}}),n.jsx("div",{children:c})]})},c))}),n.jsx("div",{className:"filter-list",role:"list","data-testid":"project-filters",children:[...i.entries()].map(([c,k])=>n.jsx("div",{className:"filter-entry",role:"listitem",children:n.jsxs("label",{children:[n.jsx("input",{type:"checkbox",checked:k,onChange:()=>{var I;const _=new Map(i);_.set(c,!_.get(c)),l(_);const x=(I=r==null?void 0:r.config)==null?void 0:I.configFile;x&&yt.setObject(x+":projects",[..._.entries()].filter(([b,D])=>D).map(([b])=>b))}}),n.jsx("div",{children:c||"untitled"})]})},c))})]})]})},_e=({tag:o,style:t,onClick:e})=>n.jsx("span",{className:mt("tag",`tag-color-${ve(o)}`),onClick:e,style:{margin:"6px 0 0 6px",...t},title:`Click to filter by tag: ${o}`,children:o});function ve(o){let t=0;for(let e=0;e<o.length;e++)t=o.charCodeAt(e)+((t<<8)-t);return Math.abs(t%6)}const we=Yt,be=({filterText:o,testModel:t,testServerConnection:e,testTree:s,runTests:i,runningState:l,watchAll:r,watchedTreeIds:m,setWatchedTreeIds:d,isLoading:h,onItemSelected:a,requestedCollapseAllCount:w,requestedExpandAllCount:S,setFilterText:c,onRevealSource:k})=>{const[_,x]=u.useState({expandedItems:new Map}),[I,b]=u.useState(),[D,B]=u.useState(w),[W,tt]=u.useState(S);u.useEffect(()=>{if(D!==w){_.expandedItems.clear();for(const j of s.flatTreeItems())_.expandedItems.set(j.id,!1);B(w),b(void 0),x({..._});return}if(W!==S){_.expandedItems.clear();for(const j of s.flatTreeItems())_.expandedItems.set(j.id,!0);tt(S),b(void 0),x({..._});return}if(!l||l.itemSelectedByUser)return;let f;const R=j=>{var M;j.children.forEach(R),!f&&j.status==="failed"&&(j.kind==="test"&&l.testIds.has(j.test.id)||j.kind==="case"&&l.testIds.has((M=j.tests[0])==null?void 0:M.id))&&(f=j)};R(s.rootItem),f&&b(f.id)},[l,b,s,D,B,w,W,tt,S,_,x]);const P=u.useMemo(()=>{if(I)return s.treeItemById(I)},[I,s]);u.useEffect(()=>{if(!t)return;const f=xe(P,t);let R;(P==null?void 0:P.kind)==="test"?R=P.test:(P==null?void 0:P.kind)==="case"&&P.tests.length===1&&(R=P.tests[0]),a({treeItem:P,testCase:R,testFile:f})},[t,P,a]),u.useEffect(()=>{if(!h)if(r)e==null||e.watchNoReply({fileNames:s.fileNames()});else{const f=new Set;for(const R of m.value){const j=s.treeItemById(R),M=j==null?void 0:j.location.file;M&&f.add(M)}e==null||e.watchNoReply({fileNames:[...f]})}},[h,s,r,m,e]);const $=f=>{b(f.id),i("bounce-if-busy",s.collectTestIds(f))},K=(f,R)=>{if(f.preventDefault(),f.stopPropagation(),f.metaKey||f.ctrlKey){const j=o.split(" ");j.includes(R)?c(j.filter(M=>M!==R).join(" ").trim()):c((o+" "+R).trim())}else c((o.split(" ").filter(j=>!j.startsWith("@")).join(" ")+" "+R).trim())};return n.jsx(we,{name:"tests",treeState:_,setTreeState:x,rootItem:s.rootItem,dataTestId:"test-tree",render:f=>{const R=f.id.replace(/[^\w\d-_]/g,"-"),j=R+"-label",M=R+"-time";return n.jsxs("div",{className:"hbox ui-mode-tree-item","aria-labelledby":`${j} ${M}`,children:[n.jsxs("div",{id:j,className:"ui-mode-tree-item-title",children:[n.jsx("span",{children:f.title}),f.kind==="case"?f.tags.map(Y=>n.jsx(_e,{tag:Y.slice(1),onClick:ct=>K(ct,Y)},Y)):null]}),!!f.duration&&f.status!=="skipped"&&n.jsx("div",{id:M,className:"ui-mode-tree-item-time",children:Xt(f.duration)}),n.jsxs(q,{noMinHeight:!0,noShadow:!0,children:[n.jsx(F,{icon:"play",title:"Run",onClick:()=>$(f),disabled:!!l&&!l.completed}),n.jsx(F,{icon:"go-to-file",title:"Show source",onClick:k,style:f.kind==="group"&&f.subKind==="folder"?{visibility:"hidden"}:{}}),!r&&n.jsx(F,{icon:"eye",title:"Watch",onClick:()=>{m.value.has(f.id)?m.value.delete(f.id):m.value.add(f.id),d({...m})},toggled:m.value.has(f.id)})]})]})},icon:f=>Qt(f.status),title:f=>f.title,selectedItem:P,onAccepted:$,onSelected:f=>{l&&(l.itemSelectedByUser=!0),b(f.id)},isError:f=>f.kind==="group"?f.hasLoadErrors:!1,autoExpandDepth:o?5:1,noItemsMessage:h?"Loading…":"No tests"})};function xe(o,t){if(!(!o||!t))return{file:o.location.file,line:o.location.line,column:o.location.column,source:{errors:t.loadErrors.filter(e=>{var s;return((s=e.location)==null?void 0:s.file)===o.location.file}).map(e=>({line:e.location.line,message:e.message})),content:void 0}}}function Se(o){return`.playwright-artifacts-${o}`}const Te=({item:o,rootDir:t,onOpenExternally:e,revealSource:s,pathSeparator:i})=>{var w,S;const[l,r]=u.useState(void 0),[m,d]=u.useState(0),h=u.useRef(null),{outputDir:a}=u.useMemo(()=>({outputDir:o.testCase?ke(o.testCase):void 0}),[o]);return u.useEffect(()=>{var x,I;h.current&&clearTimeout(h.current);const c=(x=o.testCase)==null?void 0:x.results[0];if(!c){r(void 0);return}const k=c&&c.duration>=0&&c.attachments.find(b=>b.name==="trace");if(k&&k.path){kt(k.path,c.startTime.getTime()).then(b=>r({model:b,isLive:!1}));return}if(!a){r(void 0);return}const _=[a,Se(c.workerIndex),"traces",`${(I=o.testCase)==null?void 0:I.id}.json`].join(i);return h.current=setTimeout(async()=>{try{const b=await kt(_,Date.now());r({model:b,isLive:!0})}catch{const b=new Et("",[]);b.errorDescriptors.push(...c.errors.flatMap(D=>D.message?[{message:D.message}]:[])),r({model:b,isLive:!1})}finally{d(m+1)}},500),()=>{h.current&&clearTimeout(h.current)}},[a,o,r,m,d,i]),n.jsx(Jt,{model:l==null?void 0:l.model,showSourcesFirst:!0,rootDir:t,fallbackLocation:o.testFile,isLive:l==null?void 0:l.isLive,status:(w=o.treeItem)==null?void 0:w.status,annotations:((S=o.testCase)==null?void 0:S.annotations)??[],onOpenExternally:e,revealSource:s},"workbench")},ke=o=>{var t;for(let e=o.parent;e;e=e.parent)if(e.project())return(t=e.project())==null?void 0:t.outputDir};async function kt(o,t){const e=`file?path=${encodeURIComponent(o)}×tamp=${t}`,s=new URLSearchParams;s.set("trace",e);const l=await(await fetch(`contexts?${s.toString()}`)).json();return new Et(e,l)}let jt={cols:80};const z={pending:[],clear:()=>{},write:o=>z.pending.push(o),resize:()=>{}},A=new URLSearchParams(window.location.search),je=new URL(A.get("server")??"../",window.location.href),_t=new URL(A.get("ws"),je);_t.protocol=_t.protocol==="https:"?"wss:":"ws:";const C={args:A.getAll("arg"),grep:A.get("grep")||void 0,grepInvert:A.get("grepInvert")||void 0,projects:A.getAll("project"),workers:A.get("workers")||void 0,headed:A.has("headed"),updateSnapshots:A.get("updateSnapshots")||void 0,reporters:A.has("reporter")?A.getAll("reporter"):void 0,pathSeparator:A.get("pathSeparator")||"/"};C.updateSnapshots&&!["all","changed","none","missing"].includes(C.updateSnapshots)&&(C.updateSnapshots=void 0);const It=navigator.platform==="MacIntel";function Ie(o){return o.startsWith("/")&&(o=o.substring(1)),o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}const ye=({})=>{var xt;const[o,t]=u.useState(""),[e,s]=u.useState(!1),[i,l]=u.useState(!1),[r,m]=u.useState(new Map([["passed",!1],["failed",!1],["skipped",!1]])),[d,h]=u.useState(new Map),[a,w]=u.useState(),[S,c]=u.useState(),[k,_]=u.useState({}),[x,I]=u.useState(!1),[b,D]=u.useState(),B=b&&!b.completed,[W,tt]=at("watch-all",!1),[P,$]=u.useState({value:new Set}),K=u.useRef(Promise.resolve()),f=u.useRef({testIds:new Set,locations:new Set}),[R,j]=u.useState(0),[M,Y]=u.useState(0),[ct,Ct]=u.useState(!1),[vt,wt]=u.useState(!0),[v,Bt]=u.useState(),[et,Pt]=u.useState(),[st,Nt]=u.useState(!1),[it,Lt]=u.useState(!1),[Dt,bt]=u.useState(!1),Mt=u.useCallback(()=>bt(!0),[bt]),[dt,Ft]=at("single-worker",!1),[ut,Ot]=at("updateSnapshots","missing"),[Q]=at("mergeFiles",!1),At=u.useRef(null),ot=u.useCallback(()=>{Bt(p=>(p==null||p.close(),new Zt(new Gt(_t))))},[]);u.useEffect(()=>{var p;(p=At.current)==null||p.focus(),I(!0),ot()},[ot]),u.useEffect(()=>{if(!v)return;const p=[v.onStdio(g=>{if(g.buffer){const T=atob(g.buffer);z.write(T)}else z.write(g.text);g.type==="stderr"&&l(!0)}),v.onClose(()=>Ct(!0))];return z.resize=(g,T)=>{jt={cols:g,rows:T},v.resizeTerminalNoReply({cols:g,rows:T})},()=>{for(const g of p)g.dispose()}},[v]),u.useEffect(()=>{if(!v)return;let p;const g=new he({onUpdate:T=>{clearTimeout(p),p=void 0,T?w(g.asModel()):p||(p=setTimeout(()=>{w(g.asModel())},250))},onError:T=>{z.write((T.stack||T.value||"")+`
|
|
4
|
+
`),l(!0)},pathSeparator:C.pathSeparator});return Pt(g),w(void 0),I(!0),$({value:new Set}),(async()=>{try{await v.initialize({interceptStdio:!0,watchTestDirs:!0});const{status:T,report:E}=await v.runGlobalSetup({});if(g.processGlobalReport(E),T!=="passed")return;const N=await v.listTests({projects:C.projects,locations:C.args,grep:C.grep,grepInvert:C.grepInvert});g.processListReport(N.report),v.onReport(V=>{g.processTestReportEvent(V)});const{hasBrowsers:O}=await v.checkBrowsers({});wt(O)}finally{I(!1)}})(),()=>{clearTimeout(p)}},[v]),u.useEffect(()=>{if(!a)return;const{config:p,rootSuite:g}=a,T=p.configFile?yt.getObject(p.configFile+":projects",void 0):void 0,E=new Map(d);for(const N of E.keys())g.suites.find(O=>O.title===N)||E.delete(N);for(const N of g.suites)E.has(N.title)||E.set(N.title,!!(T!=null&&T.includes(N.title)));!T&&E.size&&![...E.values()].includes(!0)&&E.set(E.entries().next().value[0],!0),(d.size!==E.size||[...d].some(([N,O])=>E.get(N)!==O))&&h(E)},[d,a]),u.useEffect(()=>{B&&(a!=null&&a.progress)?c(a.progress):a||c(void 0)},[a,B]);const{testTree:rt}=u.useMemo(()=>{if(!a)return{testTree:new gt("",new Z("","root"),[],d,C.pathSeparator,Q)};const p=new gt("",a.rootSuite,a.loadErrors,d,C.pathSeparator,Q);return p.filterTree(o,r,B?b==null?void 0:b.testIds:void 0),p.sortAndPropagateStatus(),p.shortenRoot(),p.flattenForSingleProject(),{testTree:p}},[o,a,r,d,b,B,Q]),X=u.useCallback((p,g)=>{if(!(!v||!a)&&!(p==="bounce-if-busy"&&B)){for(const T of g.testIds)f.current.testIds.add(T);for(const T of g.locations)f.current.locations.add(T);K.current=K.current.then(async()=>{var O,V,U;const{testIds:T,locations:E}=f.current;if(f.current={testIds:new Set,locations:new Set},!T.size)return;{for(const y of((O=a.rootSuite)==null?void 0:O.allTests())||[])if(T.has(y.id)){y.results=[];const L=y._createTestResult("pending");L[G]="scheduled"}w({...a})}const N=" ["+new Date().toLocaleTimeString()+"]";z.write("\x1B[2m—".repeat(Math.max(0,jt.cols-N.length))+N+"\x1B[22m"),c({total:0,passed:0,failed:0,skipped:0}),D({testIds:T}),await v.runTests({locations:[...E].map(Ie),grep:C.grep,grepInvert:C.grepInvert,testIds:[...T],projects:[...d].filter(([y,L])=>L).map(([y])=>y),updateSnapshots:ut,reporters:C.reporters,workers:dt?1:void 0,trace:"on"});for(const y of((V=a.rootSuite)==null?void 0:V.allTests())||[])((U=y.results[0])==null?void 0:U.duration)===-1&&(y.results=[]);w({...a}),D(y=>y?{...y,completed:!0}:void 0)})}},[d,B,a,v,ut,dt]),nt=u.useCallback(()=>X("bounce-if-busy",rt.collectTestIds(rt.rootItem)),[X,rt]);u.useEffect(()=>{if(!v||!et)return;const p=v.onTestFilesChanged(async g=>{if(K.current=K.current.then(async()=>{I(!0);try{const U=await v.listTests({projects:C.projects,locations:C.args,grep:C.grep,grepInvert:C.grepInvert});et.processListReport(U.report)}catch(U){console.log(U)}finally{I(!1)}}),await K.current,g.testFiles.length===0)return;const T=et.asModel(),E=new gt("",T.rootSuite,T.loadErrors,d,C.pathSeparator,Q),N=[],O=[],V=new Set(g.testFiles);if(W){const U=y=>{const L=y.location.file;if(L&&V.has(L)){const J=E.collectTestIds(y);N.push(...J.locations),O.push(...J.testIds)}y.kind==="group"&&y.subKind==="folder"&&y.children.forEach(U)};U(E.rootItem)}else for(const U of P.value){const y=E.treeItemById(U);if(!y)continue;let L=y;for(;!(L.kind==="group"&&(L.subKind==="file"||L.subKind==="folder"))&&L.parent;)L=L.parent;const J=L==null?void 0:L.location.file;if(J&&V.has(J)){const St=E.collectTestIds(y);N.push(...St.locations),O.push(...St.testIds)}}X("queue-if-busy",{locations:N,testIds:O})});return()=>p.dispose()},[X,v,W,P,et,d,Q]),u.useEffect(()=>{if(!v)return;const p=g=>{g.code==="Backquote"&&g.ctrlKey?(g.preventDefault(),s(!e)):g.code==="F5"&&g.shiftKey?(g.preventDefault(),v==null||v.stopTestsNoReply({})):g.code==="F5"&&(g.preventDefault(),nt())};return addEventListener("keydown",p),()=>{removeEventListener("keydown",p)}},[nt,ot,v,e]);const ht=u.useRef(null),Ut=u.useCallback(p=>{var g;p.preventDefault(),p.stopPropagation(),(g=ht.current)==null||g.showModal()},[]),ft=u.useCallback(p=>{var g;p.preventDefault(),p.stopPropagation(),(g=ht.current)==null||g.close()},[]),Wt=u.useCallback(p=>{ft(p),s(!0),v==null||v.installBrowsers({}).then(async()=>{s(!1);const{hasBrowsers:g}=await(v==null?void 0:v.checkBrowsers({}));wt(g)})},[ft,v]);return n.jsxs("div",{className:"vbox ui-mode",children:[!vt&&n.jsxs("dialog",{ref:ht,children:[n.jsxs("div",{className:"title",children:[n.jsx("span",{className:"codicon codicon-lightbulb"}),"Install browsers"]}),n.jsxs("div",{className:"body",children:["Playwright did not find installed browsers.",n.jsx("br",{}),"Would you like to run `playwright install`?",n.jsx("br",{}),n.jsx("button",{className:"button",onClick:Wt,children:"Install"}),n.jsx("button",{className:"button secondary",onClick:ft,children:"Dismiss"})]})]}),ct&&n.jsxs("div",{className:"disconnected",children:[n.jsx("div",{className:"title",children:"UI Mode disconnected"}),n.jsxs("div",{children:[n.jsx("a",{href:"#",onClick:()=>window.location.href="/",children:"Reload the page"})," to reconnect"]})]}),n.jsx(te,{sidebarSize:250,minSidebarSize:150,orientation:"horizontal",sidebarIsFirst:!0,settingName:"testListSidebar",main:n.jsxs("div",{className:"vbox",children:[n.jsxs("div",{className:mt("vbox",!e&&"hidden"),children:[n.jsxs(q,{children:[n.jsx("div",{className:"section-title",style:{flex:"none"},children:"Output"}),n.jsx(F,{icon:"circle-slash",title:"Clear output",onClick:()=>{z.clear(),l(!1)}}),n.jsx("div",{className:"spacer"}),n.jsx(F,{icon:"close",title:"Close",onClick:()=>s(!1)})]}),n.jsx(fe,{source:z})]}),n.jsx("div",{className:mt("vbox",e&&"hidden"),children:n.jsx(Te,{pathSeparator:C.pathSeparator,item:k,rootDir:(xt=a==null?void 0:a.config)==null?void 0:xt.rootDir,revealSource:Dt,onOpenExternally:p=>v==null?void 0:v.openNoReply({location:{file:p.file,line:p.line,column:p.column}})})})]}),sidebar:n.jsxs("div",{className:"vbox ui-mode-sidebar",children:[n.jsxs(q,{noShadow:!0,noMinHeight:!0,children:[n.jsx("img",{src:"playwright-logo.svg",alt:"Playwright logo"}),n.jsx("div",{className:"section-title",children:"Playwright"}),n.jsx(F,{icon:"refresh",title:"Reload",onClick:()=>ot(),disabled:B||x}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(F,{icon:"terminal",title:"Toggle output — "+(It?"⌃`":"Ctrl + `"),toggled:e,onClick:()=>{s(!e)}}),i&&n.jsx("div",{title:"Output contains error",style:{position:"absolute",top:2,right:2,width:7,height:7,borderRadius:"50%",backgroundColor:"var(--vscode-notificationsErrorIcon-foreground)"}})]}),!vt&&n.jsx(F,{icon:"lightbulb-autofix",style:{color:"var(--vscode-list-warningForeground)"},title:"Playwright browsers are missing",onClick:Ut})]}),n.jsx(me,{filterText:o,setFilterText:t,statusFilters:r,setStatusFilters:m,projectFilters:d,setProjectFilters:h,testModel:a,runTests:nt}),n.jsxs(q,{className:"section-toolbar",noMinHeight:!0,children:[!B&&!S&&n.jsx("div",{className:"section-title",children:"Tests"}),!B&&S&&n.jsx("div",{"data-testid":"status-line",className:"status-line",children:n.jsxs("div",{children:[S.passed,"/",S.total," passed (",S.passed/S.total*100|0,"%)"]})}),B&&S&&n.jsx("div",{"data-testid":"status-line",className:"status-line",children:n.jsxs("div",{children:["Running ",S.passed,"/",b.testIds.size," passed (",S.passed/b.testIds.size*100|0,"%)"]})}),n.jsx(F,{icon:"play",title:"Run all — F5",onClick:nt,disabled:B||x}),n.jsx(F,{icon:"debug-stop",title:"Stop — "+(It?"⇧F5":"Shift + F5"),onClick:()=>v==null?void 0:v.stopTests({}),disabled:!B||x}),n.jsx(F,{icon:"eye",title:"Watch all",toggled:W,onClick:()=>{$({value:new Set}),tt(!W)}}),n.jsx(F,{icon:"collapse-all",title:"Collapse all",onClick:()=>{j(R+1)}}),n.jsx(F,{icon:"expand-all",title:"Expand all",onClick:()=>{Y(M+1)}})]}),n.jsx(be,{filterText:o,testModel:a,testTree:rt,testServerConnection:v,runningState:b,runTests:X,onItemSelected:_,watchAll:W,watchedTreeIds:P,setWatchedTreeIds:$,isLoading:x,requestedCollapseAllCount:R,requestedExpandAllCount:M,setFilterText:t,onRevealSource:Mt}),n.jsxs(q,{noShadow:!0,noMinHeight:!0,className:"settings-toolbar",onClick:()=>Lt(!it),children:[n.jsx("span",{className:`codicon codicon-${it?"chevron-down":"chevron-right"}`,style:{marginLeft:5},title:it?"Hide Testing Options":"Show Testing Options"}),n.jsx("div",{className:"section-title",children:"Testing Options"})]}),it&&n.jsx(ee,{settings:[{type:"check",value:dt,set:Ft,name:"Single worker"},{type:"select",options:[{label:"All",value:"all"},{label:"Changed",value:"changed"},{label:"Missing",value:"missing"},{label:"None",value:"none"}],value:ut,set:Ot,name:"Update snapshots"}]}),n.jsxs(q,{noShadow:!0,noMinHeight:!0,className:"settings-toolbar",onClick:()=>Nt(!st),children:[n.jsx("span",{className:`codicon codicon-${st?"chevron-down":"chevron-right"}`,style:{marginLeft:5},title:st?"Hide Settings":"Show Settings"}),n.jsx("div",{className:"section-title",children:"Settings"})]}),st&&n.jsx(se,{location:"ui-mode"})]})})]})};(async()=>{if(ie(),window.location.protocol!=="file:"){if(window.location.href.includes("isUnderTest=true")&&await new Promise(o=>setTimeout(o,1e3)),!navigator.serviceWorker)throw new Error(`Service workers are not supported.
|
|
5
|
+
Make sure to serve the website (${window.location}) via HTTPS or localhost.`);navigator.serviceWorker.register("sw.bundle.js"),navigator.serviceWorker.controller||await new Promise(o=>{navigator.serviceWorker.oncontrollerchange=()=>o()}),setInterval(function(){fetch("ping")},1e4)}oe.createRoot(document.querySelector("#root")).render(n.jsx(ye,{}))})();
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
7
|
<link rel="icon" href="./playwright-logo.svg" type="image/svg+xml">
|
|
8
8
|
<title>Playwright Test</title>
|
|
9
|
-
<script type="module" crossorigin src="./uiMode.
|
|
10
|
-
<link rel="modulepreload" crossorigin href="./assets/defaultSettingsView-
|
|
9
|
+
<script type="module" crossorigin src="./uiMode.3umtrOtn.js"></script>
|
|
10
|
+
<link rel="modulepreload" crossorigin href="./assets/defaultSettingsView-B-IIHg_U.js">
|
|
11
11
|
<link rel="stylesheet" crossorigin href="./defaultSettingsView.CpI7RarT.css">
|
|
12
12
|
<link rel="stylesheet" crossorigin href="./uiMode.Btcz36p_.css">
|
|
13
13
|
</head>
|
package/package.json
CHANGED
package/types/protocol.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This is generated from /utils/protocol-types-generator/index.js
|
|
2
2
|
type binary = string;
|
|
3
|
-
export
|
|
4
|
-
export
|
|
3
|
+
export namespace Protocol {
|
|
4
|
+
export namespace Accessibility {
|
|
5
5
|
/**
|
|
6
6
|
* Unique accessibility node identifier.
|
|
7
7
|
*/
|
|
@@ -341,7 +341,7 @@ including nodes that are ignored for accessibility.
|
|
|
341
341
|
}
|
|
342
342
|
}
|
|
343
343
|
|
|
344
|
-
export
|
|
344
|
+
export namespace Animation {
|
|
345
345
|
/**
|
|
346
346
|
* Animation instance.
|
|
347
347
|
*/
|
|
@@ -667,7 +667,7 @@ percentage [0 - 100] for scroll driven animations
|
|
|
667
667
|
/**
|
|
668
668
|
* Audits domain allows investigation of page violations and possible improvements.
|
|
669
669
|
*/
|
|
670
|
-
export
|
|
670
|
+
export namespace Audits {
|
|
671
671
|
/**
|
|
672
672
|
* Information about a cookie that is affected by an inspector issue.
|
|
673
673
|
*/
|
|
@@ -1242,7 +1242,7 @@ using Audits.issueAdded event.
|
|
|
1242
1242
|
/**
|
|
1243
1243
|
* Defines commands and events for Autofill.
|
|
1244
1244
|
*/
|
|
1245
|
-
export
|
|
1245
|
+
export namespace Autofill {
|
|
1246
1246
|
export interface CreditCard {
|
|
1247
1247
|
/**
|
|
1248
1248
|
* 16-digit credit card number.
|
|
@@ -1409,7 +1409,7 @@ If the field and related form cannot be autofilled, returns an error.
|
|
|
1409
1409
|
/**
|
|
1410
1410
|
* Defines events for background web platform features.
|
|
1411
1411
|
*/
|
|
1412
|
-
export
|
|
1412
|
+
export namespace BackgroundService {
|
|
1413
1413
|
/**
|
|
1414
1414
|
* The Background Service that will be associated with the commands/events.
|
|
1415
1415
|
Every Background Service operates independently, but they share the same
|
|
@@ -1512,7 +1512,7 @@ events afterwards if enabled and recording.
|
|
|
1512
1512
|
* This domain allows configuring virtual Bluetooth devices to test
|
|
1513
1513
|
the web-bluetooth API.
|
|
1514
1514
|
*/
|
|
1515
|
-
export
|
|
1515
|
+
export namespace BluetoothEmulation {
|
|
1516
1516
|
/**
|
|
1517
1517
|
* Indicates the various states of Central.
|
|
1518
1518
|
*/
|
|
@@ -1797,7 +1797,7 @@ by |characteristicId|.
|
|
|
1797
1797
|
/**
|
|
1798
1798
|
* The Browser domain defines methods and events for browser managing.
|
|
1799
1799
|
*/
|
|
1800
|
-
export
|
|
1800
|
+
export namespace Browser {
|
|
1801
1801
|
export type BrowserContextID = string;
|
|
1802
1802
|
export type WindowID = number;
|
|
1803
1803
|
/**
|
|
@@ -2284,7 +2284,7 @@ CSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM no
|
|
|
2284
2284
|
can also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and
|
|
2285
2285
|
subsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods.
|
|
2286
2286
|
*/
|
|
2287
|
-
export
|
|
2287
|
+
export namespace CSS {
|
|
2288
2288
|
/**
|
|
2289
2289
|
* Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent
|
|
2290
2290
|
stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via
|
|
@@ -3870,7 +3870,7 @@ instrumentation).
|
|
|
3870
3870
|
}
|
|
3871
3871
|
}
|
|
3872
3872
|
|
|
3873
|
-
export
|
|
3873
|
+
export namespace CacheStorage {
|
|
3874
3874
|
/**
|
|
3875
3875
|
* Unique identifier of the Cache object.
|
|
3876
3876
|
*/
|
|
@@ -4067,7 +4067,7 @@ is the count of all entries from this storage.
|
|
|
4067
4067
|
* A domain for interacting with Cast, Presentation API, and Remote Playback API
|
|
4068
4068
|
functionalities.
|
|
4069
4069
|
*/
|
|
4070
|
-
export
|
|
4070
|
+
export namespace Cast {
|
|
4071
4071
|
export interface Sink {
|
|
4072
4072
|
name: string;
|
|
4073
4073
|
id: string;
|
|
@@ -4156,7 +4156,7 @@ and never sends the same node twice. It is client's responsibility to collect in
|
|
|
4156
4156
|
the nodes that were sent to the client. Note that `iframe` owner elements will return
|
|
4157
4157
|
corresponding document elements as their child nodes.
|
|
4158
4158
|
*/
|
|
4159
|
-
export
|
|
4159
|
+
export namespace DOM {
|
|
4160
4160
|
/**
|
|
4161
4161
|
* Unique DOM node identifier.
|
|
4162
4162
|
*/
|
|
@@ -5619,7 +5619,7 @@ popover if it was previously force-opened.
|
|
|
5619
5619
|
* DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript
|
|
5620
5620
|
execution will stop on these operations as if there was a regular breakpoint set.
|
|
5621
5621
|
*/
|
|
5622
|
-
export
|
|
5622
|
+
export namespace DOMDebugger {
|
|
5623
5623
|
/**
|
|
5624
5624
|
* DOM breakpoint type.
|
|
5625
5625
|
*/
|
|
@@ -5821,7 +5821,7 @@ EventTarget.
|
|
|
5821
5821
|
/**
|
|
5822
5822
|
* This domain facilitates obtaining document snapshots with DOM, layout, and style information.
|
|
5823
5823
|
*/
|
|
5824
|
-
export
|
|
5824
|
+
export namespace DOMSnapshot {
|
|
5825
5825
|
/**
|
|
5826
5826
|
* A Node in the DOM tree.
|
|
5827
5827
|
*/
|
|
@@ -6359,7 +6359,7 @@ The final text color opacity is computed based on the opacity of all overlapping
|
|
|
6359
6359
|
/**
|
|
6360
6360
|
* Query and modify DOM storage.
|
|
6361
6361
|
*/
|
|
6362
|
-
export
|
|
6362
|
+
export namespace DOMStorage {
|
|
6363
6363
|
export type SerializedStorageKey = string;
|
|
6364
6364
|
/**
|
|
6365
6365
|
* DOM Storage identifier.
|
|
@@ -6442,7 +6442,7 @@ The final text color opacity is computed based on the opacity of all overlapping
|
|
|
6442
6442
|
}
|
|
6443
6443
|
}
|
|
6444
6444
|
|
|
6445
|
-
export
|
|
6445
|
+
export namespace DeviceAccess {
|
|
6446
6446
|
/**
|
|
6447
6447
|
* Device request id.
|
|
6448
6448
|
*/
|
|
@@ -6504,7 +6504,7 @@ selectPrompt or cancelPrompt command.
|
|
|
6504
6504
|
}
|
|
6505
6505
|
}
|
|
6506
6506
|
|
|
6507
|
-
export
|
|
6507
|
+
export namespace DeviceOrientation {
|
|
6508
6508
|
|
|
6509
6509
|
|
|
6510
6510
|
/**
|
|
@@ -6538,7 +6538,7 @@ selectPrompt or cancelPrompt command.
|
|
|
6538
6538
|
/**
|
|
6539
6539
|
* This domain emulates different environments for the page.
|
|
6540
6540
|
*/
|
|
6541
|
-
export
|
|
6541
|
+
export namespace Emulation {
|
|
6542
6542
|
export interface SafeAreaInsets {
|
|
6543
6543
|
/**
|
|
6544
6544
|
* Overrides safe-area-inset-top.
|
|
@@ -7435,7 +7435,7 @@ of size 100lvh.
|
|
|
7435
7435
|
occurring in native code invoked from JavaScript. Once breakpoint is hit, it is
|
|
7436
7436
|
reported through Debugger domain, similarly to regular breakpoints being hit.
|
|
7437
7437
|
*/
|
|
7438
|
-
export
|
|
7438
|
+
export namespace EventBreakpoints {
|
|
7439
7439
|
|
|
7440
7440
|
|
|
7441
7441
|
/**
|
|
@@ -7472,7 +7472,7 @@ reported through Debugger domain, similarly to regular breakpoints being hit.
|
|
|
7472
7472
|
/**
|
|
7473
7473
|
* Defines commands and events for browser extensions.
|
|
7474
7474
|
*/
|
|
7475
|
-
export
|
|
7475
|
+
export namespace Extensions {
|
|
7476
7476
|
/**
|
|
7477
7477
|
* Storage areas.
|
|
7478
7478
|
*/
|
|
@@ -7591,7 +7591,7 @@ will be merged with existing values in the storage area.
|
|
|
7591
7591
|
/**
|
|
7592
7592
|
* This domain allows interacting with the FedCM dialog.
|
|
7593
7593
|
*/
|
|
7594
|
-
export
|
|
7594
|
+
export namespace FedCm {
|
|
7595
7595
|
/**
|
|
7596
7596
|
* Whether this is a sign-up or sign-in action for this account, i.e.
|
|
7597
7597
|
whether this account has ever been used to sign in to this RP before.
|
|
@@ -7699,7 +7699,7 @@ a dialog even if one was recently dismissed by the user.
|
|
|
7699
7699
|
/**
|
|
7700
7700
|
* A domain for letting clients substitute browser's network layer with client code.
|
|
7701
7701
|
*/
|
|
7702
|
-
export
|
|
7702
|
+
export namespace Fetch {
|
|
7703
7703
|
/**
|
|
7704
7704
|
* Unique request identifier.
|
|
7705
7705
|
Note that this does not identify individual HTTP requests that are part of
|
|
@@ -8070,7 +8070,7 @@ domain before body is received results in an undefined behavior.
|
|
|
8070
8070
|
}
|
|
8071
8071
|
}
|
|
8072
8072
|
|
|
8073
|
-
export
|
|
8073
|
+
export namespace FileSystem {
|
|
8074
8074
|
export interface File {
|
|
8075
8075
|
name: string;
|
|
8076
8076
|
/**
|
|
@@ -8121,7 +8121,7 @@ domain before body is received results in an undefined behavior.
|
|
|
8121
8121
|
/**
|
|
8122
8122
|
* This domain provides experimental commands only supported in headless mode.
|
|
8123
8123
|
*/
|
|
8124
|
-
export
|
|
8124
|
+
export namespace HeadlessExperimental {
|
|
8125
8125
|
/**
|
|
8126
8126
|
* Encoding options for a screenshot.
|
|
8127
8127
|
*/
|
|
@@ -8201,7 +8201,7 @@ display. Reported for diagnostic uses, may be removed in the future.
|
|
|
8201
8201
|
/**
|
|
8202
8202
|
* Input/Output operations for streams produced by DevTools.
|
|
8203
8203
|
*/
|
|
8204
|
-
export
|
|
8204
|
+
export namespace IO {
|
|
8205
8205
|
/**
|
|
8206
8206
|
* This is either obtained from another method or specified as `blob:<uuid>` where
|
|
8207
8207
|
`<uuid>` is an UUID of a Blob.
|
|
@@ -8269,7 +8269,7 @@ following the last read). Some types of streams may only support sequential read
|
|
|
8269
8269
|
}
|
|
8270
8270
|
}
|
|
8271
8271
|
|
|
8272
|
-
export
|
|
8272
|
+
export namespace IndexedDB {
|
|
8273
8273
|
/**
|
|
8274
8274
|
* Database with an array of object stores.
|
|
8275
8275
|
*/
|
|
@@ -8648,7 +8648,7 @@ Security origin.
|
|
|
8648
8648
|
}
|
|
8649
8649
|
}
|
|
8650
8650
|
|
|
8651
|
-
export
|
|
8651
|
+
export namespace Input {
|
|
8652
8652
|
export interface TouchPoint {
|
|
8653
8653
|
/**
|
|
8654
8654
|
* X coordinate of the event relative to the main frame's viewport in CSS pixels.
|
|
@@ -9171,7 +9171,7 @@ for the preferred input type).
|
|
|
9171
9171
|
}
|
|
9172
9172
|
}
|
|
9173
9173
|
|
|
9174
|
-
export
|
|
9174
|
+
export namespace Inspector {
|
|
9175
9175
|
|
|
9176
9176
|
/**
|
|
9177
9177
|
* Fired when remote debugging connection is about to be terminated. Contains detach reason.
|
|
@@ -9211,7 +9211,7 @@ for the preferred input type).
|
|
|
9211
9211
|
}
|
|
9212
9212
|
}
|
|
9213
9213
|
|
|
9214
|
-
export
|
|
9214
|
+
export namespace LayerTree {
|
|
9215
9215
|
/**
|
|
9216
9216
|
* Unique Layer identifier.
|
|
9217
9217
|
*/
|
|
@@ -9508,7 +9508,7 @@ transform/scrolling purposes only.
|
|
|
9508
9508
|
/**
|
|
9509
9509
|
* Provides access to log entries.
|
|
9510
9510
|
*/
|
|
9511
|
-
export
|
|
9511
|
+
export namespace Log {
|
|
9512
9512
|
/**
|
|
9513
9513
|
* Log entry.
|
|
9514
9514
|
*/
|
|
@@ -9624,7 +9624,7 @@ transform/scrolling purposes only.
|
|
|
9624
9624
|
/**
|
|
9625
9625
|
* This domain allows detailed inspection of media elements.
|
|
9626
9626
|
*/
|
|
9627
|
-
export
|
|
9627
|
+
export namespace Media {
|
|
9628
9628
|
/**
|
|
9629
9629
|
* Players will get an ID that is unique within the agent context.
|
|
9630
9630
|
*/
|
|
@@ -9755,7 +9755,7 @@ event for each active player.
|
|
|
9755
9755
|
}
|
|
9756
9756
|
}
|
|
9757
9757
|
|
|
9758
|
-
export
|
|
9758
|
+
export namespace Memory {
|
|
9759
9759
|
/**
|
|
9760
9760
|
* Memory pressure level.
|
|
9761
9761
|
*/
|
|
@@ -9935,7 +9935,7 @@ collected since browser process startup.
|
|
|
9935
9935
|
* Network domain allows tracking network activities of the page. It exposes information about http,
|
|
9936
9936
|
file, data and other requests and responses, their headers, bodies, timing, etc.
|
|
9937
9937
|
*/
|
|
9938
|
-
export
|
|
9938
|
+
export namespace Network {
|
|
9939
9939
|
/**
|
|
9940
9940
|
* Resource type as it was perceived by the rendering engine.
|
|
9941
9941
|
*/
|
|
@@ -12597,7 +12597,7 @@ Page reload is required before the new cookie behavior will be observed
|
|
|
12597
12597
|
/**
|
|
12598
12598
|
* This domain provides various functionality related to drawing atop the inspected page.
|
|
12599
12599
|
*/
|
|
12600
|
-
export
|
|
12600
|
+
export namespace Overlay {
|
|
12601
12601
|
/**
|
|
12602
12602
|
* Configuration data for drawing the source order of an elements children.
|
|
12603
12603
|
*/
|
|
@@ -13423,7 +13423,7 @@ Backend then generates 'inspectNodeRequested' event upon element selection.
|
|
|
13423
13423
|
/**
|
|
13424
13424
|
* This domain allows interacting with the browser to control PWAs.
|
|
13425
13425
|
*/
|
|
13426
|
-
export
|
|
13426
|
+
export namespace PWA {
|
|
13427
13427
|
/**
|
|
13428
13428
|
* The following types are the replica of
|
|
13429
13429
|
https://crsrc.org/c/chrome/browser/web_applications/proto/web_app_os_integration_state.proto;drc=9910d3be894c8f142c977ba1023f30a656bc13fc;l=67
|
|
@@ -13594,7 +13594,7 @@ supported yet.
|
|
|
13594
13594
|
/**
|
|
13595
13595
|
* Actions and events related to the inspected page belong to the page domain.
|
|
13596
13596
|
*/
|
|
13597
|
-
export
|
|
13597
|
+
export namespace Page {
|
|
13598
13598
|
/**
|
|
13599
13599
|
* Unique frame identifier.
|
|
13600
13600
|
*/
|
|
@@ -15714,7 +15714,7 @@ components/optimization_guide/proto/features/common_quality_data.proto
|
|
|
15714
15714
|
}
|
|
15715
15715
|
}
|
|
15716
15716
|
|
|
15717
|
-
export
|
|
15717
|
+
export namespace Performance {
|
|
15718
15718
|
/**
|
|
15719
15719
|
* Run-time execution metric.
|
|
15720
15720
|
*/
|
|
@@ -15791,7 +15791,7 @@ this method while metrics collection is enabled returns an error.
|
|
|
15791
15791
|
* Reporting of performance timeline events, as specified in
|
|
15792
15792
|
https://w3c.github.io/performance-timeline/#dom-performanceobserver.
|
|
15793
15793
|
*/
|
|
15794
|
-
export
|
|
15794
|
+
export namespace PerformanceTimeline {
|
|
15795
15795
|
/**
|
|
15796
15796
|
* See https://github.com/WICG/LargestContentfulPaint and largest_contentful_paint.idl
|
|
15797
15797
|
*/
|
|
@@ -15880,7 +15880,7 @@ Note that not all types exposed to the web platform are currently supported.
|
|
|
15880
15880
|
}
|
|
15881
15881
|
}
|
|
15882
15882
|
|
|
15883
|
-
export
|
|
15883
|
+
export namespace Preload {
|
|
15884
15884
|
/**
|
|
15885
15885
|
* Unique id
|
|
15886
15886
|
*/
|
|
@@ -16072,7 +16072,7 @@ that is incompatible with prerender and has caused the cancellation of the attem
|
|
|
16072
16072
|
}
|
|
16073
16073
|
}
|
|
16074
16074
|
|
|
16075
|
-
export
|
|
16075
|
+
export namespace Security {
|
|
16076
16076
|
/**
|
|
16077
16077
|
* An internal certificate ID value.
|
|
16078
16078
|
*/
|
|
@@ -16377,7 +16377,7 @@ be handled by the DevTools client and should be answered with `handleCertificate
|
|
|
16377
16377
|
}
|
|
16378
16378
|
}
|
|
16379
16379
|
|
|
16380
|
-
export
|
|
16380
|
+
export namespace ServiceWorker {
|
|
16381
16381
|
export type RegistrationID = string;
|
|
16382
16382
|
/**
|
|
16383
16383
|
* ServiceWorker registration.
|
|
@@ -16499,7 +16499,7 @@ For cached script it is the last time the cache entry was validated.
|
|
|
16499
16499
|
}
|
|
16500
16500
|
}
|
|
16501
16501
|
|
|
16502
|
-
export
|
|
16502
|
+
export namespace Storage {
|
|
16503
16503
|
export type SerializedStorageKey = string;
|
|
16504
16504
|
/**
|
|
16505
16505
|
* Enum of possible storage types.
|
|
@@ -17604,7 +17604,7 @@ party URL, only the first-party URL is returned in the array.
|
|
|
17604
17604
|
/**
|
|
17605
17605
|
* The SystemInfo domain defines methods and events for querying low-level system information.
|
|
17606
17606
|
*/
|
|
17607
|
-
export
|
|
17607
|
+
export namespace SystemInfo {
|
|
17608
17608
|
/**
|
|
17609
17609
|
* Describes a single graphics processor (GPU).
|
|
17610
17610
|
*/
|
|
@@ -17802,7 +17802,7 @@ supported.
|
|
|
17802
17802
|
/**
|
|
17803
17803
|
* Supports additional targets discovery and allows to attach to them.
|
|
17804
17804
|
*/
|
|
17805
|
-
export
|
|
17805
|
+
export namespace Target {
|
|
17806
17806
|
export type TargetID = string;
|
|
17807
17807
|
/**
|
|
17808
17808
|
* Unique identifier of attached debugging session.
|
|
@@ -18317,7 +18317,7 @@ and performance.
|
|
|
18317
18317
|
/**
|
|
18318
18318
|
* The Tethering domain defines methods and events for browser port binding.
|
|
18319
18319
|
*/
|
|
18320
|
-
export
|
|
18320
|
+
export namespace Tethering {
|
|
18321
18321
|
|
|
18322
18322
|
/**
|
|
18323
18323
|
* Informs that port was successfully bound and got a specified connection id.
|
|
@@ -18357,7 +18357,7 @@ and performance.
|
|
|
18357
18357
|
}
|
|
18358
18358
|
}
|
|
18359
18359
|
|
|
18360
|
-
export
|
|
18360
|
+
export namespace Tracing {
|
|
18361
18361
|
/**
|
|
18362
18362
|
* Configuration for memory dump. Used only when "memory-infra" category is enabled.
|
|
18363
18363
|
*/
|
|
@@ -18575,7 +18575,7 @@ are ignored.
|
|
|
18575
18575
|
* This domain allows inspection of Web Audio API.
|
|
18576
18576
|
https://webaudio.github.io/web-audio-api/
|
|
18577
18577
|
*/
|
|
18578
|
-
export
|
|
18578
|
+
export namespace WebAudio {
|
|
18579
18579
|
/**
|
|
18580
18580
|
* An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API
|
|
18581
18581
|
*/
|
|
@@ -18812,7 +18812,7 @@ capacity and glitch may occur.
|
|
|
18812
18812
|
* This domain allows configuring virtual authenticators to test the WebAuthn
|
|
18813
18813
|
API.
|
|
18814
18814
|
*/
|
|
18815
|
-
export
|
|
18815
|
+
export namespace WebAuthn {
|
|
18816
18816
|
export type AuthenticatorId = string;
|
|
18817
18817
|
export type AuthenticatorProtocol = "u2f"|"ctap2";
|
|
18818
18818
|
export type Ctap2Version = "ctap2_0"|"ctap2_1";
|
|
@@ -19109,7 +19109,7 @@ https://w3c.github.io/webauthn/#sctn-automation-set-credential-properties
|
|
|
19109
19109
|
/**
|
|
19110
19110
|
* This domain is deprecated - use Runtime or Log instead.
|
|
19111
19111
|
*/
|
|
19112
|
-
export
|
|
19112
|
+
export namespace Console {
|
|
19113
19113
|
/**
|
|
19114
19114
|
* Console message.
|
|
19115
19115
|
*/
|
|
@@ -19178,7 +19178,7 @@ https://w3c.github.io/webauthn/#sctn-automation-set-credential-properties
|
|
|
19178
19178
|
* Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing
|
|
19179
19179
|
breakpoints, stepping through execution, exploring stack traces, etc.
|
|
19180
19180
|
*/
|
|
19181
|
-
export
|
|
19181
|
+
export namespace Debugger {
|
|
19182
19182
|
/**
|
|
19183
19183
|
* Breakpoint identifier.
|
|
19184
19184
|
*/
|
|
@@ -20205,7 +20205,7 @@ before next pause.
|
|
|
20205
20205
|
}
|
|
20206
20206
|
}
|
|
20207
20207
|
|
|
20208
|
-
export
|
|
20208
|
+
export namespace HeapProfiler {
|
|
20209
20209
|
/**
|
|
20210
20210
|
* Heap snapshot object id.
|
|
20211
20211
|
*/
|
|
@@ -20434,7 +20434,7 @@ Deprecated in favor of `exposeInternals`.
|
|
|
20434
20434
|
}
|
|
20435
20435
|
}
|
|
20436
20436
|
|
|
20437
|
-
export
|
|
20437
|
+
export namespace Profiler {
|
|
20438
20438
|
/**
|
|
20439
20439
|
* Profile node. Holds callsite information, execution statistics and child nodes.
|
|
20440
20440
|
*/
|
|
@@ -20704,7 +20704,7 @@ and unique identifier that can be used for further object reference. Original ob
|
|
|
20704
20704
|
maintained in memory unless they are either explicitly released or are released along with the
|
|
20705
20705
|
other objects in their object group.
|
|
20706
20706
|
*/
|
|
20707
|
-
export
|
|
20707
|
+
export namespace Runtime {
|
|
20708
20708
|
/**
|
|
20709
20709
|
* Unique script identifier.
|
|
20710
20710
|
*/
|
|
@@ -21763,7 +21763,7 @@ Error was thrown.
|
|
|
21763
21763
|
/**
|
|
21764
21764
|
* This domain is deprecated.
|
|
21765
21765
|
*/
|
|
21766
|
-
export
|
|
21766
|
+
export namespace Schema {
|
|
21767
21767
|
/**
|
|
21768
21768
|
* Description of the protocol domain.
|
|
21769
21769
|
*/
|