@qilin-agent/experimental-inspector 0.0.0-stage → 3.1.6
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/README.i18n.yaml +49 -0
- package/README.md +179 -2
- package/README.zh.md +180 -0
- package/icon.svg +23 -0
- package/lib/client.js +3572 -0
- package/lib/client.page.js +314 -0
- package/lib/devtools/Images/3d-center.svg +3 -0
- package/lib/devtools/Images/3d-pan.svg +3 -0
- package/lib/devtools/Images/3d-rotate.svg +3 -0
- package/lib/devtools/Images/accelerometer-back.svg +69 -0
- package/lib/devtools/Images/accelerometer-bottom.png +0 -0
- package/lib/devtools/Images/accelerometer-front.svg +28 -0
- package/lib/devtools/Images/accelerometer-left.png +0 -0
- package/lib/devtools/Images/accelerometer-right.png +0 -0
- package/lib/devtools/Images/accelerometer-top.png +0 -0
- package/lib/devtools/Images/account-tree.svg +10 -0
- package/lib/devtools/Images/add-photo.svg +3 -0
- package/lib/devtools/Images/ai-explorer-badge.svg +114 -0
- package/lib/devtools/Images/align-content-center.svg +5 -0
- package/lib/devtools/Images/align-content-end.svg +5 -0
- package/lib/devtools/Images/align-content-space-around.svg +6 -0
- package/lib/devtools/Images/align-content-space-between.svg +4 -0
- package/lib/devtools/Images/align-content-space-evenly.svg +6 -0
- package/lib/devtools/Images/align-content-start.svg +5 -0
- package/lib/devtools/Images/align-content-stretch.svg +4 -0
- package/lib/devtools/Images/align-items-baseline.svg +4 -0
- package/lib/devtools/Images/align-items-center.svg +5 -0
- package/lib/devtools/Images/align-items-end.svg +5 -0
- package/lib/devtools/Images/align-items-start.svg +5 -0
- package/lib/devtools/Images/align-items-stretch.svg +6 -0
- package/lib/devtools/Images/align-self-center.svg +3 -0
- package/lib/devtools/Images/align-self-end.svg +4 -0
- package/lib/devtools/Images/align-self-start.svg +4 -0
- package/lib/devtools/Images/align-self-stretch.svg +5 -0
- package/lib/devtools/Images/animation.svg +3 -0
- package/lib/devtools/Images/arrow-back.svg +4 -0
- package/lib/devtools/Images/arrow-collapse.svg +3 -0
- package/lib/devtools/Images/arrow-down.svg +10 -0
- package/lib/devtools/Images/arrow-drop-down-dark.svg +3 -0
- package/lib/devtools/Images/arrow-drop-down-light.svg +3 -0
- package/lib/devtools/Images/arrow-drop-down.svg +3 -0
- package/lib/devtools/Images/arrow-forward.svg +4 -0
- package/lib/devtools/Images/arrow-right-circle.svg +3 -0
- package/lib/devtools/Images/arrow-up-down-circle.svg +3 -0
- package/lib/devtools/Images/arrow-up-down.svg +3 -0
- package/lib/devtools/Images/arrow-up.svg +10 -0
- package/lib/devtools/Images/attach-file.svg +3 -0
- package/lib/devtools/Images/baseline-high-availability.svg +17 -0
- package/lib/devtools/Images/baseline-limited-availability.svg +19 -0
- package/lib/devtools/Images/baseline-low-availability.svg +31 -0
- package/lib/devtools/Images/bell.svg +3 -0
- package/lib/devtools/Images/bezier-curve-filled.svg +3 -0
- package/lib/devtools/Images/bin.svg +1 -0
- package/lib/devtools/Images/bottom-panel-close.svg +1 -0
- package/lib/devtools/Images/bottom-panel-open.svg +1 -0
- package/lib/devtools/Images/brackets.svg +1 -0
- package/lib/devtools/Images/breakpoint-circle.svg +4 -0
- package/lib/devtools/Images/breakpoint-crossed-filled.svg +1 -0
- package/lib/devtools/Images/breakpoint-crossed.svg +1 -0
- package/lib/devtools/Images/brush-2.svg +3 -0
- package/lib/devtools/Images/brush-filled.svg +1 -0
- package/lib/devtools/Images/brush.svg +1 -0
- package/lib/devtools/Images/bucket.svg +4 -0
- package/lib/devtools/Images/bug.svg +3 -0
- package/lib/devtools/Images/button-magic.svg +3 -0
- package/lib/devtools/Images/calendar-today.svg +3 -0
- package/lib/devtools/Images/center-focus-weak.svg +3 -0
- package/lib/devtools/Images/check-circle.svg +3 -0
- package/lib/devtools/Images/check-double.svg +3 -0
- package/lib/devtools/Images/checker.svg +12 -0
- package/lib/devtools/Images/checkmark.svg +1 -0
- package/lib/devtools/Images/chevron-double-right.svg +3 -0
- package/lib/devtools/Images/chevron-down.svg +3 -0
- package/lib/devtools/Images/chevron-left-dot.svg +4 -0
- package/lib/devtools/Images/chevron-left.svg +3 -0
- package/lib/devtools/Images/chevron-right.svg +3 -0
- package/lib/devtools/Images/chevron-up.svg +3 -0
- package/lib/devtools/Images/chromeLeft.avif +0 -0
- package/lib/devtools/Images/chromeMiddle.avif +0 -0
- package/lib/devtools/Images/chromeRight.avif +0 -0
- package/lib/devtools/Images/class.svg +6 -0
- package/lib/devtools/Images/clear-list.svg +3 -0
- package/lib/devtools/Images/clear.svg +3 -0
- package/lib/devtools/Images/cloud.svg +3 -0
- package/lib/devtools/Images/code-circle.svg +5 -0
- package/lib/devtools/Images/code-whisperer-badge.svg +166 -0
- package/lib/devtools/Images/code.svg +3 -0
- package/lib/devtools/Images/colon.svg +4 -0
- package/lib/devtools/Images/color-picker-filled.svg +3 -0
- package/lib/devtools/Images/color-picker.svg +3 -0
- package/lib/devtools/Images/compress.svg +8 -0
- package/lib/devtools/Images/console-conditional-breakpoint.svg +1 -0
- package/lib/devtools/Images/console-logpoint.svg +1 -0
- package/lib/devtools/Images/container.svg +4 -0
- package/lib/devtools/Images/cookie.svg +3 -0
- package/lib/devtools/Images/cookie_off.svg +3 -0
- package/lib/devtools/Images/copy.svg +3 -0
- package/lib/devtools/Images/corporate-fare.svg +3 -0
- package/lib/devtools/Images/credit-card.svg +3 -0
- package/lib/devtools/Images/cross-circle-filled.svg +3 -0
- package/lib/devtools/Images/cross-circle.svg +3 -0
- package/lib/devtools/Images/cross.svg +3 -0
- package/lib/devtools/Images/cssoverview_icons_2x.avif +0 -0
- package/lib/devtools/Images/database-off.svg +1 -0
- package/lib/devtools/Images/database.svg +3 -0
- package/lib/devtools/Images/deployed.svg +3 -0
- package/lib/devtools/Images/device-fold.svg +1 -0
- package/lib/devtools/Images/devices.svg +3 -0
- package/lib/devtools/Images/devtools-thumbnail.svg +57 -0
- package/lib/devtools/Images/devtools-tips.svg +61 -0
- package/lib/devtools/Images/devtools-user-badge.svg +129 -0
- package/lib/devtools/Images/devtools.svg +13 -0
- package/lib/devtools/Images/difference.svg +3 -0
- package/lib/devtools/Images/dock-bottom.svg +3 -0
- package/lib/devtools/Images/dock-left.svg +3 -0
- package/lib/devtools/Images/dock-right.svg +3 -0
- package/lib/devtools/Images/dock-window.svg +3 -0
- package/lib/devtools/Images/document.svg +3 -0
- package/lib/devtools/Images/dog-paw.svg +10 -0
- package/lib/devtools/Images/dom-detective-badge.svg +136 -0
- package/lib/devtools/Images/domain.svg +3 -0
- package/lib/devtools/Images/dots-horizontal.svg +1 -0
- package/lib/devtools/Images/dots-vertical.svg +3 -0
- package/lib/devtools/Images/download.svg +3 -0
- package/lib/devtools/Images/edit.svg +1 -0
- package/lib/devtools/Images/empty.svg +2 -0
- package/lib/devtools/Images/errorWave.svg +74 -0
- package/lib/devtools/Images/exclamation.svg +3 -0
- package/lib/devtools/Images/expand.svg +1 -0
- package/lib/devtools/Images/experiment-check.svg +1 -0
- package/lib/devtools/Images/experiment.svg +3 -0
- package/lib/devtools/Images/extension.svg +1 -0
- package/lib/devtools/Images/eye-crossed.svg +3 -0
- package/lib/devtools/Images/eye.svg +3 -0
- package/lib/devtools/Images/file-document.svg +3 -0
- package/lib/devtools/Images/file-fetch-xhr.svg +3 -0
- package/lib/devtools/Images/file-font.svg +4 -0
- package/lib/devtools/Images/file-generic.svg +3 -0
- package/lib/devtools/Images/file-image.svg +3 -0
- package/lib/devtools/Images/file-json.svg +4 -0
- package/lib/devtools/Images/file-manifest.svg +3 -0
- package/lib/devtools/Images/file-media.svg +3 -0
- package/lib/devtools/Images/file-script.svg +3 -0
- package/lib/devtools/Images/file-snippet.svg +4 -0
- package/lib/devtools/Images/file-stylesheet.svg +4 -0
- package/lib/devtools/Images/file-wasm.svg +5 -0
- package/lib/devtools/Images/file-websocket.svg +3 -0
- package/lib/devtools/Images/filter-clear.svg +3 -0
- package/lib/devtools/Images/filter-filled.svg +3 -0
- package/lib/devtools/Images/filter.svg +3 -0
- package/lib/devtools/Images/flex-direction.svg +5 -0
- package/lib/devtools/Images/flex-no-wrap.svg +5 -0
- package/lib/devtools/Images/flex-wrap.svg +8 -0
- package/lib/devtools/Images/flow.svg +3 -0
- package/lib/devtools/Images/flowsheet.svg +1 -0
- package/lib/devtools/Images/fold-more.svg +3 -0
- package/lib/devtools/Images/folder-asterisk.svg +10 -0
- package/lib/devtools/Images/folder-off.svg +3 -0
- package/lib/devtools/Images/folder.svg +3 -0
- package/lib/devtools/Images/frame-crossed.svg +3 -0
- package/lib/devtools/Images/frame-icon.svg +54 -0
- package/lib/devtools/Images/frame.svg +3 -0
- package/lib/devtools/Images/gdp-logo-dark.png +0 -0
- package/lib/devtools/Images/gdp-logo-light.png +0 -0
- package/lib/devtools/Images/gear-filled.svg +3 -0
- package/lib/devtools/Images/gear.svg +4 -0
- package/lib/devtools/Images/gears.svg +3 -0
- package/lib/devtools/Images/geminiInDevTools.png +0 -0
- package/lib/devtools/Images/geminiInDevTools_2x.png +0 -0
- package/lib/devtools/Images/global.svg +5 -0
- package/lib/devtools/Images/google.svg +3 -0
- package/lib/devtools/Images/goto-filled.svg +1 -0
- package/lib/devtools/Images/grid-direction.svg +6 -0
- package/lib/devtools/Images/grid-on.svg +10 -0
- package/lib/devtools/Images/group.svg +3 -0
- package/lib/devtools/Images/heap-snapshot.svg +6 -0
- package/lib/devtools/Images/heap-snapshots.svg +7 -0
- package/lib/devtools/Images/help.svg +3 -0
- package/lib/devtools/Images/history.svg +3 -0
- package/lib/devtools/Images/home.svg +3 -0
- package/lib/devtools/Images/hover.svg +6 -0
- package/lib/devtools/Images/iframe-crossed.svg +3 -0
- package/lib/devtools/Images/iframe.svg +3 -0
- package/lib/devtools/Images/import.svg +3 -0
- package/lib/devtools/Images/indeterminate-question-box.svg +3 -0
- package/lib/devtools/Images/info-filled.svg +3 -0
- package/lib/devtools/Images/info.svg +3 -0
- package/lib/devtools/Images/issue-cross-filled.svg +3 -0
- package/lib/devtools/Images/issue-exclamation-filled.svg +3 -0
- package/lib/devtools/Images/issue-questionmark-filled.svg +3 -0
- package/lib/devtools/Images/issue-text-filled.svg +3 -0
- package/lib/devtools/Images/justify-content-center.svg +5 -0
- package/lib/devtools/Images/justify-content-end.svg +5 -0
- package/lib/devtools/Images/justify-content-space-around.svg +6 -0
- package/lib/devtools/Images/justify-content-space-between.svg +4 -0
- package/lib/devtools/Images/justify-content-space-evenly.svg +6 -0
- package/lib/devtools/Images/justify-content-start.svg +5 -0
- package/lib/devtools/Images/justify-content-stretch.svg +4 -0
- package/lib/devtools/Images/justify-items-center.svg +4 -0
- package/lib/devtools/Images/justify-items-end.svg +4 -0
- package/lib/devtools/Images/justify-items-start.svg +4 -0
- package/lib/devtools/Images/justify-items-stretch.svg +4 -0
- package/lib/devtools/Images/keyboard-arrow-right.svg +1 -0
- package/lib/devtools/Images/keyboard-full.svg +10 -0
- package/lib/devtools/Images/keyboard-pen.svg +1 -0
- package/lib/devtools/Images/keyboard.svg +3 -0
- package/lib/devtools/Images/label-auto.svg +3 -0
- package/lib/devtools/Images/label.svg +10 -0
- package/lib/devtools/Images/large-arrow-right-filled.svg +1 -0
- package/lib/devtools/Images/layers-filled.svg +1 -0
- package/lib/devtools/Images/layers.svg +1 -0
- package/lib/devtools/Images/left-panel-close.svg +1 -0
- package/lib/devtools/Images/left-panel-open.svg +1 -0
- package/lib/devtools/Images/lightbulb-spark.svg +13 -0
- package/lib/devtools/Images/lightbulb.svg +3 -0
- package/lib/devtools/Images/lighthouse_logo.svg +158 -0
- package/lib/devtools/Images/list.svg +3 -0
- package/lib/devtools/Images/location-on.svg +3 -0
- package/lib/devtools/Images/lock-person.svg +1 -0
- package/lib/devtools/Images/lock.svg +3 -0
- package/lib/devtools/Images/mark-email-unread.svg +3 -0
- package/lib/devtools/Images/match-case.svg +3 -0
- package/lib/devtools/Images/match-whole-word.svg +1 -0
- package/lib/devtools/Images/memory.svg +6 -0
- package/lib/devtools/Images/minus.svg +3 -0
- package/lib/devtools/Images/mop.svg +1 -0
- package/lib/devtools/Images/mouse.svg +4 -0
- package/lib/devtools/Images/navigationControls.png +0 -0
- package/lib/devtools/Images/navigationControls_2x.png +0 -0
- package/lib/devtools/Images/network-settings.svg +3 -0
- package/lib/devtools/Images/node-stack-icon.svg +1 -0
- package/lib/devtools/Images/nodeIcon.avif +0 -0
- package/lib/devtools/Images/open-externally.svg +3 -0
- package/lib/devtools/Images/override.svg +11 -0
- package/lib/devtools/Images/palette.svg +10 -0
- package/lib/devtools/Images/pause-circle.svg +1 -0
- package/lib/devtools/Images/pause.svg +1 -0
- package/lib/devtools/Images/pen-spark.svg +3 -0
- package/lib/devtools/Images/performance-panel-delete-annotation.svg +32 -0
- package/lib/devtools/Images/performance-panel-diagram.svg +34 -0
- package/lib/devtools/Images/performance-panel-entry-label.svg +75 -0
- package/lib/devtools/Images/performance-panel-time-range.svg +15 -0
- package/lib/devtools/Images/performance.svg +3 -0
- package/lib/devtools/Images/person.svg +3 -0
- package/lib/devtools/Images/photo-camera.svg +10 -0
- package/lib/devtools/Images/play.svg +3 -0
- package/lib/devtools/Images/plus.svg +3 -0
- package/lib/devtools/Images/policy.svg +3 -0
- package/lib/devtools/Images/popoverArrows.png +0 -0
- package/lib/devtools/Images/popup.svg +3 -0
- package/lib/devtools/Images/preview_feature_video_thumbnail.svg +92 -0
- package/lib/devtools/Images/profile.svg +3 -0
- package/lib/devtools/Images/psychiatry.svg +3 -0
- package/lib/devtools/Images/puzzle.svg +3 -0
- package/lib/devtools/Images/record-start.svg +4 -0
- package/lib/devtools/Images/record-stop.svg +4 -0
- package/lib/devtools/Images/redo.svg +3 -0
- package/lib/devtools/Images/refresh.svg +10 -0
- package/lib/devtools/Images/regular-expression.svg +3 -0
- package/lib/devtools/Images/replace.svg +1 -0
- package/lib/devtools/Images/replay.svg +3 -0
- package/lib/devtools/Images/report.svg +1 -0
- package/lib/devtools/Images/resizeDiagonal.svg +1 -0
- package/lib/devtools/Images/resizeHorizontal.svg +1 -0
- package/lib/devtools/Images/resizeVertical.svg +1 -0
- package/lib/devtools/Images/resume.svg +1 -0
- package/lib/devtools/Images/revert.svg +3 -0
- package/lib/devtools/Images/review.svg +5 -0
- package/lib/devtools/Images/right-panel-close.svg +1 -0
- package/lib/devtools/Images/right-panel-open.svg +1 -0
- package/lib/devtools/Images/scissors.svg +3 -0
- package/lib/devtools/Images/screen-rotation.svg +1 -0
- package/lib/devtools/Images/search.svg +3 -0
- package/lib/devtools/Images/select-element.svg +3 -0
- package/lib/devtools/Images/send.svg +3 -0
- package/lib/devtools/Images/shadow.svg +3 -0
- package/lib/devtools/Images/shield.svg +3 -0
- package/lib/devtools/Images/small-status-dot.svg +3 -0
- package/lib/devtools/Images/smart-assistant.svg +3 -0
- package/lib/devtools/Images/snippet.svg +4 -0
- package/lib/devtools/Images/spark-info.svg +3 -0
- package/lib/devtools/Images/spark.svg +3 -0
- package/lib/devtools/Images/speculative-loads.svg +1 -0
- package/lib/devtools/Images/speedster-badge.svg +166 -0
- package/lib/devtools/Images/star.svg +3 -0
- package/lib/devtools/Images/step-into.svg +1 -0
- package/lib/devtools/Images/step-out.svg +1 -0
- package/lib/devtools/Images/step-over.svg +1 -0
- package/lib/devtools/Images/step.svg +1 -0
- package/lib/devtools/Images/stop.svg +3 -0
- package/lib/devtools/Images/symbol.svg +3 -0
- package/lib/devtools/Images/sync.svg +3 -0
- package/lib/devtools/Images/tab-move.svg +1 -0
- package/lib/devtools/Images/table.svg +3 -0
- package/lib/devtools/Images/terminal.svg +10 -0
- package/lib/devtools/Images/text-analysis.svg +3 -0
- package/lib/devtools/Images/thumb-down-filled.svg +3 -0
- package/lib/devtools/Images/thumb-down.svg +3 -0
- package/lib/devtools/Images/thumb-up-filled.svg +3 -0
- package/lib/devtools/Images/thumb-up.svg +3 -0
- package/lib/devtools/Images/tonality.svg +10 -0
- package/lib/devtools/Images/toolbarResizerVertical.png +0 -0
- package/lib/devtools/Images/top-panel-close.svg +1 -0
- package/lib/devtools/Images/top-panel-open.svg +1 -0
- package/lib/devtools/Images/touch-app.svg +4 -0
- package/lib/devtools/Images/touchCursor.png +0 -0
- package/lib/devtools/Images/touchCursor_2x.png +0 -0
- package/lib/devtools/Images/triangle-bottom-right.svg +3 -0
- package/lib/devtools/Images/triangle-down.svg +1 -0
- package/lib/devtools/Images/triangle-left.svg +1 -0
- package/lib/devtools/Images/triangle-right.svg +1 -0
- package/lib/devtools/Images/triangle-up.svg +3 -0
- package/lib/devtools/Images/trophy.svg +3 -0
- package/lib/devtools/Images/tune.svg +3 -0
- package/lib/devtools/Images/undo.svg +1 -0
- package/lib/devtools/Images/warning-filled.svg +3 -0
- package/lib/devtools/Images/warning.svg +3 -0
- package/lib/devtools/Images/watch.svg +3 -0
- package/lib/devtools/Images/whatsnew.svg +61 -0
- package/lib/devtools/Images/width.svg +3 -0
- package/lib/devtools/Images/zoom-in.svg +3 -0
- package/lib/devtools/LICENSE +27 -0
- package/lib/devtools/application_tokens.css +413 -0
- package/lib/devtools/chunks/FormatterActions-FcPgI0uV.js +19 -0
- package/lib/devtools/chunks/UIFilter-CIzBruM3.js +18 -0
- package/lib/devtools/chunks/UIRequestLocation-CtGcVN3I.js +48 -0
- package/lib/devtools/chunks/_dsh-devtools_empty-BvRk9kiK.js +0 -0
- package/lib/devtools/chunks/accessibility-OQcgkXIB.js +2718 -0
- package/lib/devtools/chunks/acorn-_jSanihy.js +3232 -0
- package/lib/devtools/chunks/adorners-Be2VY5BN.js +45 -0
- package/lib/devtools/chunks/ai_assistance-DRe9GF9j.js +4255 -0
- package/lib/devtools/chunks/angular-Dutmu-L9.js +117 -0
- package/lib/devtools/chunks/animation-TQzd9HO4.js +922 -0
- package/lib/devtools/chunks/application-B8ko2TRt.js +12740 -0
- package/lib/devtools/chunks/autofill-D_Bi6xxt.js +198 -0
- package/lib/devtools/chunks/autofill_manager-Cw0wOndc.js +58 -0
- package/lib/devtools/chunks/bindings-B7uzkbnH.js +4105 -0
- package/lib/devtools/chunks/browser-DL1S1Kiu.js +62 -0
- package/lib/devtools/chunks/browser_debugger-6syzh5He.js +629 -0
- package/lib/devtools/chunks/changes-8Dpo591z.js +393 -0
- package/lib/devtools/chunks/changes-Hp2cPKPp.js +2 -0
- package/lib/devtools/chunks/checkbox.css-Cwxn2mfx.js +4 -0
- package/lib/devtools/chunks/chunk-DF993M8W.js +11 -0
- package/lib/devtools/chunks/code_highlighter-oWKo9plW.js +210 -0
- package/lib/devtools/chunks/codemirror-CBR9VJma.js +15842 -0
- package/lib/devtools/chunks/color_picker-CHmwJ7or.js +1566 -0
- package/lib/devtools/chunks/common-BGyPsfVb.js +2 -0
- package/lib/devtools/chunks/common-C6gzvSKg.js +15145 -0
- package/lib/devtools/chunks/common-qd_KLeYO.js +6639 -0
- package/lib/devtools/chunks/components-B5xBXfXj.js +704 -0
- package/lib/devtools/chunks/components-BkETO50Z.js +1090 -0
- package/lib/devtools/chunks/components-DlE11Hk_.js +1338 -0
- package/lib/devtools/chunks/console-DEk3riFh.js +3855 -0
- package/lib/devtools/chunks/console-OWEKC7bo.js +2 -0
- package/lib/devtools/chunks/console_counters-ClDYfPF6.js +103 -0
- package/lib/devtools/chunks/coverage-Dg9NvtX9.js +1176 -0
- package/lib/devtools/chunks/coverage-uK2NUeVj.js +2 -0
- package/lib/devtools/chunks/cpp-CdElSCaB.js +435 -0
- package/lib/devtools/chunks/css_overview-6FosuoNY.js +1288 -0
- package/lib/devtools/chunks/data_grid-6RZWyPx-.js +1671 -0
- package/lib/devtools/chunks/developer_resources-C6_2oeLF.js +240 -0
- package/lib/devtools/chunks/diff-qn55JSCS.js +444 -0
- package/lib/devtools/chunks/dom_extension-B0UaTHZj.js +172 -0
- package/lib/devtools/chunks/elements-CcvMWzGx.js +2 -0
- package/lib/devtools/chunks/elements-Xw7oHKeq.js +11407 -0
- package/lib/devtools/chunks/emulation-B7sLFSxp.js +1306 -0
- package/lib/devtools/chunks/emulation-CvVuS_p0.js +157 -0
- package/lib/devtools/chunks/emulation-DMC3TuHv.js +2 -0
- package/lib/devtools/chunks/emulation-_lA-Xb1h.js +2732 -0
- package/lib/devtools/chunks/event_listeners-CdGgpDsg.js +414 -0
- package/lib/devtools/chunks/explain-fG84ckui.js +747 -0
- package/lib/devtools/chunks/greendev-DvYwqqmc.js +152 -0
- package/lib/devtools/chunks/heap_snapshot-CZt2KUPL.js +427 -0
- package/lib/devtools/chunks/helper-DoR8dYRk.js +33 -0
- package/lib/devtools/chunks/helpers-BypUnKdS.js +29 -0
- package/lib/devtools/chunks/i18n-DUXZnMbP.js +17 -0
- package/lib/devtools/chunks/icon_button-mu37qw0h.js +83 -0
- package/lib/devtools/chunks/inline_editor-Dgctmf2_.js +1309 -0
- package/lib/devtools/chunks/inspector_main-yb83VyUs.js +279 -0
- package/lib/devtools/chunks/issue_counter-COHuTTL3.js +193 -0
- package/lib/devtools/chunks/issues-C94onoob.js +1649 -0
- package/lib/devtools/chunks/issues_manager-7hP__vf-.js +3009 -0
- package/lib/devtools/chunks/java-7g_qfFa2.js +263 -0
- package/lib/devtools/chunks/layer_viewer-BF3qEG7C.js +1423 -0
- package/lib/devtools/chunks/layers-KW9wwW__.js +370 -0
- package/lib/devtools/chunks/legacy-C0IOfyhX.js +41804 -0
- package/lib/devtools/chunks/legacy-DOCLCisy.js +1434 -0
- package/lib/devtools/chunks/less-DXiRNbd4.js +195 -0
- package/lib/devtools/chunks/lighthouse-BUitD7KK.js +2 -0
- package/lib/devtools/chunks/lighthouse-f3QbU2gw.js +3920 -0
- package/lib/devtools/chunks/linear_memory_inspector-Dhv8CzB6.js +305 -0
- package/lib/devtools/chunks/live-metrics-DTntFi2I.js +284 -0
- package/lib/devtools/chunks/main---7244L8.js +2 -0
- package/lib/devtools/chunks/main-CQ4zKr5A.js +755 -0
- package/lib/devtools/chunks/markdown-tZoR6Bsu.js +1512 -0
- package/lib/devtools/chunks/markdown_view-DN02v7_2.js +461 -0
- package/lib/devtools/chunks/marked-zGgfoDxO.js +1362 -0
- package/lib/devtools/chunks/media-BNfBOtUh.js +1337 -0
- package/lib/devtools/chunks/media-eTuT8cbS.js +2 -0
- package/lib/devtools/chunks/menus-DoacKucS.js +969 -0
- package/lib/devtools/chunks/mobile_throttling-BKeQegny.js +1052 -0
- package/lib/devtools/chunks/mobile_throttling-DXj04TKw.js +2 -0
- package/lib/devtools/chunks/network-BIhtpwBx.js +2 -0
- package/lib/devtools/chunks/network-C1U3mkwJ.js +9181 -0
- package/lib/devtools/chunks/objectValue.css-B7vmCz4R.js +4 -0
- package/lib/devtools/chunks/object_ui-B8MxYDLE.js +2 -0
- package/lib/devtools/chunks/object_ui-C8fCheVq.js +1461 -0
- package/lib/devtools/chunks/perf_ui-4xM6fYl7.js +2 -0
- package/lib/devtools/chunks/perf_ui-Cp2qToEB.js +3143 -0
- package/lib/devtools/chunks/performance_monitor-BUcbKqz4.js +385 -0
- package/lib/devtools/chunks/php-tl5gKrxu.js +423 -0
- package/lib/devtools/chunks/platform-BzB373NB.js +600 -0
- package/lib/devtools/chunks/profiler-Dq2TBqy8.js +4608 -0
- package/lib/devtools/chunks/protocol_client-Cwf_jb8R.js +24329 -0
- package/lib/devtools/chunks/protocol_monitor-BG2dkmPK.js +1224 -0
- package/lib/devtools/chunks/protocol_monitor-DC2CZGW5.js +2 -0
- package/lib/devtools/chunks/puppeteer-ZLIws8kb.js +13299 -0
- package/lib/devtools/chunks/python-D9AdRkMm.js +580 -0
- package/lib/devtools/chunks/quick_open-B0xhg6ZL.js +2 -0
- package/lib/devtools/chunks/quick_open-Dfzyy8ve.js +722 -0
- package/lib/devtools/chunks/recorder-BwV8H_Us.js +5465 -0
- package/lib/devtools/chunks/recorder-actions-S2RfLX4H.js +6 -0
- package/lib/devtools/chunks/request_link_icon-BjtC6uxv.js +87 -0
- package/lib/devtools/chunks/root-DbVQo07X.js +255 -0
- package/lib/devtools/chunks/sass-BPQlMmw2.js +370 -0
- package/lib/devtools/chunks/security-BjoaTtpU.js +898 -0
- package/lib/devtools/chunks/sensors-m9L9nmDB.js +752 -0
- package/lib/devtools/chunks/settings-DvrCWlb3.js +1433 -0
- package/lib/devtools/chunks/settings_ui-Df8-TVsv.js +175 -0
- package/lib/devtools/chunks/snackbars-DTKjs7om.js +12010 -0
- package/lib/devtools/chunks/snippets-DkuCZu-J.js +173 -0
- package/lib/devtools/chunks/source_frame-CzY7luV4.js +1352 -0
- package/lib/devtools/chunks/sources-CdvYPTNy.js +2 -0
- package/lib/devtools/chunks/sources-CoHLP03P.js +8216 -0
- package/lib/devtools/chunks/suggestion_input-CpR9sfDn.js +196 -0
- package/lib/devtools/chunks/svelte-DJS1itbE.js +744 -0
- package/lib/devtools/chunks/textInput.css-D9hN8XWo.js +4 -0
- package/lib/devtools/chunks/text_editor-BH_W0fXD.js +15706 -0
- package/lib/devtools/chunks/text_utils-ohNt_gua.js +608 -0
- package/lib/devtools/chunks/theme_support-DJK4CjXB.js +92 -0
- package/lib/devtools/chunks/third-party-web-DGiPoc0U.js +12626 -0
- package/lib/devtools/chunks/timeline-D6VQ2WWf.js +16347 -0
- package/lib/devtools/chunks/timeline-DfcTNEAb.js +2 -0
- package/lib/devtools/chunks/utils-DqoFGxV_.js +298 -0
- package/lib/devtools/chunks/vue-CjH9yovn.js +73 -0
- package/lib/devtools/chunks/wast-CbGHiqaW.js +109 -0
- package/lib/devtools/chunks/web_audio-CTM_kqxU.js +277 -0
- package/lib/devtools/chunks/webauthn-Bt1tTNVo.js +522 -0
- package/lib/devtools/chunks/whats_new-Dv7HPSaK.js +177 -0
- package/lib/devtools/chunks/xml-DI9dcP5w.js +327 -0
- package/lib/devtools/connect.js +9 -0
- package/lib/devtools/design_system_tokens.css +1061 -0
- package/lib/devtools/device_mode_emulation_frame.html +25 -0
- package/lib/devtools/devtools_app.html +25 -0
- package/lib/devtools/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nest-hub-horizontal.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nest-hub-max-horizontal.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPad-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPad-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
- package/lib/devtools/emulated_devices/optimized/optimized_images.gni +53 -0
- package/lib/devtools/entrypoints/device_mode_emulation_frame/device_mode_emulation_frame.js +4 -0
- package/lib/devtools/entrypoints/devtools_app/devtools_app.js +6240 -0
- package/lib/devtools/entrypoints/formatter_worker/formatter_worker-entrypoint.js +2810 -0
- package/lib/devtools/entrypoints/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +2142 -0
- package/lib/devtools/entrypoints/lighthouse_worker/lighthouse_worker.js +290095 -0
- package/lib/devtools/entrypoints/wasmparser_worker/wasmparser_worker-entrypoint.js +3403 -0
- package/lib/devtools/models/issues_manager/descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
- package/lib/devtools/models/issues_manager/descriptions/CoepCorpNotSameSite.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/CompatibilityModeQuirks.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/LowTextContrast.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/arInsecureContext.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/arInvalidInfoHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNavigationRegistrationUniqueScopeAlreadySet.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNavigationRegistrationWithoutTransientUserActivation.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/arNoRegisterOsSourceHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNoRegisterOsTriggerHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNoRegisterSourceHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNoRegisterTriggerHeader.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/arNoWebOrOsSupport.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/arOsSourceIgnored.md +18 -0
- package/lib/devtools/models/issues_manager/descriptions/arOsTriggerIgnored.md +19 -0
- package/lib/devtools/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/arSourceIgnored.md +13 -0
- package/lib/devtools/models/issues_manager/descriptions/arTriggerIgnored.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/arWebAndOsHeaders.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/bounceTrackingMitigations.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistInvalidAllowlistItemType.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistInvalidHeader.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistInvalidUrlPattern.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistItemNotInnerList.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistMoreThanOneList.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/connectionAllowlistReportingEndpointNotToken.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieCrossSiteRedirectDowngrade.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludeBlockedWithinRelatedWebsiteSet.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludePortMismatch.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludeSchemeMismatch.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutRead.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutSet.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieWarnMetadataGrantRead.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieWarnMetadataGrantSet.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutRead.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutSet.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/corsAllowCredentialsRequired.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/corsDisabledScheme.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/corsDisallowedByMode.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/corsInvalidHeaderValues.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/corsLocalNetworkAccessPermissionDenied.md +19 -0
- package/lib/devtools/models/issues_manager/descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/corsOriginMismatch.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/corsPreflightResponseInvalid.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/corsRedirectContainsCredentials.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/corsWildcardOriginNotAllowed.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/cspEvalViolation.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/cspInlineViolation.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/cspTrustedTypesPolicyViolation.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/cspTrustedTypesSinkViolation.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/cspURLViolation.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/deprecation.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestDnsFetchFailed.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestDnsInvalidRecord.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestInvalidEmail.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestKeyBindingSigningFailed.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestRpOriginIsOpaque.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenHttpNotFound.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidContentType.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidSdJwt.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenMalformedSdJwt.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestTokenNoResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestUserLoggedOut.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownAccountsEndpointCrossOrigin.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownHttpNotFound.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownInvalidContentType.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownInvalidResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownIssuanceEndpointCrossOrigin.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownListEmpty.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownMissingAccountsEndpoint.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownMissingIssuanceEndpoint.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownNoResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/emailVerificationRequestWellKnownUnsupportedSigningAlgorithm.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestCanceled.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestErrorIdToken.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthRequestTooManyRequests.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/fetchingPartitionedBlobURL.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/genericBackUINavigationWouldSkipAd.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormAriaLabelledByToNonExistingIdError.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormDuplicateIdForInputError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormInputWithNoLabelError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormLabelForNameError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormLabelHasNeitherForNorNestedInputError.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormModelContextMissingToolDescription.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormModelContextMissingToolName.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormModelContextParameterMissingName.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormModelContextParameterMissingTitleAndDescription.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericFormModelContextRequiredParameterMissingName.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/genericNavigationEntryMarkedSkippable.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/genericResponseWasBlockedByORB.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/heavyAd.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/mixedContent.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/navigatingPartitionedBlobURL.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementActivationDisabled.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementActivationDisabledWithOccluder.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementActivationDisabledWithOccluderParent.md +9 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementCspFrameAncestorsMissing.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementFencedFrameDisallowed.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementFontSizeTooLarge.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementFontSizeTooSmall.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementGeolocationDeprecated.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementInsetBoxShadowUnsupported.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementInvalidDisplayStyle.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementInvalidSizeValue.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementInvalidType.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementInvalidTypeActivation.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementLowContrast.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementNonOpaqueColor.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementPaddingBottomUnsupported.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementPaddingRightUnsupported.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementPermissionsPolicyBlocked.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementRegistrationFailed.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementRequestInProgress.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementSecurityChecksFailed.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementTypeNotSupported.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/permissionElementUntrustedEvent.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/placeholderDescriptionForInvisibleIssues.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/propertyRuleInvalidNameIssue.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/propertyRuleIssue.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityDisallowedOptGroupChild.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityDisallowedSelectChild.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentLegendChild.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentOptionChild.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/selectElementAccessibilityNonPhrasingContentOptionChild.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/selectivePermissionsIntervention.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedArrayBuffer.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryUseErrorCrossOriginNoCorsRequest.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryUseErrorDictionaryLoadFailure.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryUseErrorMatchingDictionaryNotUsed.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorCossOriginNoCorsRequest.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorDisallowedBySettings.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorExpiredResponse.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorFeatureDisabled.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorInsufficientResources.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidMatchField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidStructuredHeader.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidTTLField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNavigationRequest.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNoMatchField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonIntegerTTLField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonListMatchDestField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonSecureContext.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringIdField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringInMatchDestList.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringMatchField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonTokenTypeField.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorRequestAborted.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorShuttingDown.md +1 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorTooLongIdField.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sharedDictionaryWriteErrorUnsupportedType.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/sriInvalidSignatureHeader.md +14 -0
- package/lib/devtools/models/issues_manager/descriptions/sriInvalidSignatureInputHeader.md +15 -0
- package/lib/devtools/models/issues_manager/descriptions/sriMissingSignatureHeader.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/sriMissingSignatureInputHeader.md +7 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureHeaderValueIsIncorrectLength.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureHeaderValueIsNotByteSequence.md +14 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureHeaderValueIsParameterized.md +15 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentName.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentType.md +13 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidDerivedComponentParameter.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidHeaderComponentParameter.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidParameter.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderKeyIdLength.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderMissingLabel.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderMissingRequiredParameters.md +8 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderValueMissingComponents.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/sriSignatureInputHeaderValueNotInnerList.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/sriValidationFailedIntegrityMismatch.md +10 -0
- package/lib/devtools/models/issues_manager/descriptions/sriValidationFailedInvalidLength.md +5 -0
- package/lib/devtools/models/issues_manager/descriptions/sriValidationFailedSignatureExpired.md +6 -0
- package/lib/devtools/models/issues_manager/descriptions/sriValidationFailedSignatureMismatch.md +11 -0
- package/lib/devtools/models/issues_manager/descriptions/stylesheetLateImport.md +4 -0
- package/lib/devtools/models/issues_manager/descriptions/stylesheetRequestFailed.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/summaryElementAccessibilityInteractiveContentSummaryDescendant.md +3 -0
- package/lib/devtools/models/issues_manager/descriptions/unencodedDigestIncorrectDigestLength.md +12 -0
- package/lib/devtools/models/issues_manager/descriptions/unencodedDigestIncorrectDigestType.md +17 -0
- package/lib/devtools/models/issues_manager/descriptions/unencodedDigestMalformedDictionary.md +14 -0
- package/lib/devtools/models/issues_manager/descriptions/unencodedDigestUnknownAlgorithm.md +15 -0
- package/lib/devtools/models/live-metrics/web-vitals-injected/web-vitals-injected.generated.js +1 -0
- package/lib/devtools/panels/recorder/injected/injected.generated.js +1 -0
- package/lib/devtools/panels/whats_new/resources/WNDT.md +14 -0
- package/lib/devtools/resource-manifest.json +3818 -0
- package/lib/devtools/third_party/acorn/package/LICENSE +21 -0
- package/lib/devtools/third_party/axe-core/LICENSE +362 -0
- package/lib/devtools/third_party/chromium/LICENSE +27 -0
- package/lib/devtools/third_party/codemirror/package/LICENSE +21 -0
- package/lib/devtools/third_party/codemirror.next/LICENSE +21 -0
- package/lib/devtools/third_party/csp_evaluator/package/LICENSE +202 -0
- package/lib/devtools/third_party/diff/LICENSE +202 -0
- package/lib/devtools/third_party/i18n/LICENSE +202 -0
- package/lib/devtools/third_party/intl-messageformat/LICENSE +33 -0
- package/lib/devtools/third_party/intl-messageformat/package/LICENSE.md +33 -0
- package/lib/devtools/third_party/json5/LICENSE +23 -0
- package/lib/devtools/third_party/legacy-javascript/LICENSE +202 -0
- package/lib/devtools/third_party/lighthouse/LICENSE +202 -0
- package/lib/devtools/third_party/lit/LICENSE +28 -0
- package/lib/devtools/third_party/marked/LICENSE +39 -0
- package/lib/devtools/third_party/marked/package/LICENSE.md +44 -0
- package/lib/devtools/third_party/puppeteer/LICENSE +202 -0
- package/lib/devtools/third_party/puppeteer/third_party/mitt/LICENSE +21 -0
- package/lib/devtools/third_party/puppeteer/third_party/parsel/LICENSE +21 -0
- package/lib/devtools/third_party/puppeteer/third_party/rxjs/LICENSE +201 -0
- package/lib/devtools/third_party/puppeteer-replay/package/LICENSE +202 -0
- package/lib/devtools/third_party/source-map-scopes-codec/LICENSE +26 -0
- package/lib/devtools/third_party/source-map-scopes-codec/package/LICENSE +26 -0
- package/lib/devtools/third_party/third-party-web/LICENSE +20 -0
- package/lib/devtools/third_party/third-party-web/package/LICENSE +20 -0
- package/lib/devtools/third_party/vscode.web-custom-data/package/LICENSE.md +21 -0
- package/lib/devtools/third_party/wasmparser/package/LICENSE +177 -0
- package/lib/devtools/third_party/web-vitals/package/LICENSE +202 -0
- package/lib/index.js +2599 -0
- package/lib/types/client/bottom/keyboard.d.ts +10 -0
- package/lib/types/client/bottom/locales.d.ts +17 -0
- package/lib/types/client/bottom/page.d.ts +10 -0
- package/lib/types/client/bottom/resize.d.ts +12 -0
- package/lib/types/client/bridge/controller.d.ts +10 -0
- package/lib/types/client/bridge/dispatcher.d.ts +26 -0
- package/lib/types/client/bridge/lifecycle.d.ts +22 -0
- package/lib/types/client/bridge/locales.d.ts +3 -0
- package/lib/types/client/bridge/publisher.d.ts +42 -0
- package/lib/types/client/bridge/rpc.d.ts +13 -0
- package/lib/types/client/bridge/transport.d.ts +41 -0
- package/lib/types/client/cdp/console.d.ts +45 -0
- package/lib/types/client/cdp/debugger.d.ts +8 -0
- package/lib/types/client/cdp/errors.d.ts +8 -0
- package/lib/types/client/cdp/heap-profiler.d.ts +8 -0
- package/lib/types/client/cdp/index.d.ts +10 -0
- package/lib/types/client/cdp/objects.d.ts +69 -0
- package/lib/types/client/cdp/profiler.d.ts +8 -0
- package/lib/types/client/cdp/properties.d.ts +16 -0
- package/lib/types/client/cdp/runtime.d.ts +79 -0
- package/lib/types/client/cdp/sources.d.ts +53 -0
- package/lib/types/client/cdp/stack.d.ts +27 -0
- package/lib/types/client/index.d.ts +3 -0
- package/lib/types/client/inspection/cordis.d.ts +3 -0
- package/lib/types/client/inspection/network.d.ts +4 -0
- package/lib/types/client/inspection/realm.d.ts +27 -0
- package/lib/types/client/plugin.d.ts +29 -0
- package/lib/types/host/bridge/controller.d.ts +108 -0
- package/lib/types/host/bridge/dispatcher.d.ts +16 -0
- package/lib/types/host/bridge/lifecycle.d.ts +42 -0
- package/lib/types/host/bridge/publisher.d.ts +31 -0
- package/lib/types/host/bridge/rpc.d.ts +15 -0
- package/lib/types/host/bridge/transport.d.ts +28 -0
- package/lib/types/host/cdp/console.d.ts +14 -0
- package/lib/types/host/cdp/debugger.d.ts +8 -0
- package/lib/types/host/cdp/errors.d.ts +6 -0
- package/lib/types/host/cdp/heap-profiler.d.ts +8 -0
- package/lib/types/host/cdp/index.d.ts +10 -0
- package/lib/types/host/cdp/objects.d.ts +8 -0
- package/lib/types/host/cdp/profiler.d.ts +8 -0
- package/lib/types/host/cdp/properties.d.ts +7 -0
- package/lib/types/host/cdp/runtime.d.ts +16 -0
- package/lib/types/host/cdp/sources.d.ts +14 -0
- package/lib/types/host/cdp/stack.d.ts +4 -0
- package/lib/types/host/index.d.ts +3 -0
- package/lib/types/host/inspection/cordis.d.ts +3 -0
- package/lib/types/host/inspection/network.d.ts +23 -0
- package/lib/types/host/inspection/realm.d.ts +9 -0
- package/lib/types/host/plugin.d.ts +24 -0
- package/lib/types/index.d.ts +50 -0
- package/lib/types/shared/bridge/buffer.d.ts +62 -0
- package/lib/types/shared/bridge/codec.d.ts +4 -0
- package/lib/types/shared/bridge/control-codec.d.ts +27 -0
- package/lib/types/shared/bridge/ids.d.ts +19 -0
- package/lib/types/shared/bridge/messages/control.d.ts +64 -0
- package/lib/types/shared/bridge/messages/cordis.d.ts +4 -0
- package/lib/types/shared/bridge/messages/network.d.ts +4 -0
- package/lib/types/shared/bridge/messages/observation.d.ts +110 -0
- package/lib/types/shared/bridge/messages/query/codec.d.ts +40 -0
- package/lib/types/shared/bridge/messages/query/commands.d.ts +35 -0
- package/lib/types/shared/bridge/messages/query/frames.d.ts +31 -0
- package/lib/types/shared/bridge/messages/query/index.d.ts +5 -0
- package/lib/types/shared/bridge/messages/runtime/command-codec.d.ts +9 -0
- package/lib/types/shared/bridge/messages/runtime/commands.d.ts +76 -0
- package/lib/types/shared/bridge/messages/runtime/console-frames.d.ts +52 -0
- package/lib/types/shared/bridge/messages/runtime/frames.d.ts +98 -0
- package/lib/types/shared/bridge/messages/runtime/index.d.ts +5 -0
- package/lib/types/shared/bridge/messages/runtime/value-codec.d.ts +28 -0
- package/lib/types/shared/bridge/messages/sources/codec.d.ts +15 -0
- package/lib/types/shared/bridge/messages/sources/commands.d.ts +42 -0
- package/lib/types/shared/bridge/messages/sources/frames.d.ts +67 -0
- package/lib/types/shared/bridge/messages/sources/index.d.ts +5 -0
- package/lib/types/shared/bridge/publisher.d.ts +33 -0
- package/lib/types/shared/bridge/query-reader.d.ts +10 -0
- package/lib/types/shared/bridge/rpc.d.ts +62 -0
- package/lib/types/shared/bridge/validation.d.ts +3 -0
- package/lib/types/shared/bridge/version.d.ts +3 -0
- package/lib/types/shared/cdp/capabilities.d.ts +17 -0
- package/lib/types/shared/cdp/console.d.ts +28 -0
- package/lib/types/shared/cdp/debugger.d.ts +69 -0
- package/lib/types/shared/cdp/errors.d.ts +27 -0
- package/lib/types/shared/cdp/ids.d.ts +9 -0
- package/lib/types/shared/cdp/index.d.ts +11 -0
- package/lib/types/shared/cdp/operations.d.ts +86 -0
- package/lib/types/shared/cdp/property.d.ts +28 -0
- package/lib/types/shared/cdp/realm.d.ts +137 -0
- package/lib/types/shared/cdp/remote-object.d.ts +44 -0
- package/lib/types/shared/cdp/sources.d.ts +18 -0
- package/lib/types/shared/cordis/collector.d.ts +26 -0
- package/lib/types/shared/cordis/ids.d.ts +7 -0
- package/lib/types/shared/cordis/model.d.ts +61 -0
- package/lib/types/shared/cordis/object-reference.d.ts +14 -0
- package/lib/types/shared/cordis/object-registry.d.ts +80 -0
- package/lib/types/shared/cordis/observer.d.ts +15 -0
- package/lib/types/shared/cordis/projector.d.ts +34 -0
- package/lib/types/shared/cordis/publisher.d.ts +13 -0
- package/lib/types/shared/cordis/reader.d.ts +18 -0
- package/lib/types/shared/cordis/snapshot.d.ts +39 -0
- package/lib/types/shared/dispose.d.ts +11 -0
- package/lib/types/shared/identity.d.ts +12 -0
- package/lib/types/shared/index.d.ts +18 -0
- package/lib/types/shared/json.d.ts +35 -0
- package/lib/types/shared/network/event-source.d.ts +20 -0
- package/lib/types/shared/network/observation.d.ts +52 -0
- package/lib/types/shared/service.d.ts +23 -0
- package/lib/types/shared/validation.d.ts +52 -0
- package/lib/types/shared/web.d.ts +16 -0
- package/lib/types/worker/bridge/endpoint.d.ts +49 -0
- package/lib/types/worker/bridge/hub.d.ts +108 -0
- package/lib/types/worker/bridge/runtime-rpc.d.ts +90 -0
- package/lib/types/worker/bridge/session.d.ts +15 -0
- package/lib/types/worker/bridge/source-rpc.d.ts +42 -0
- package/lib/types/worker/cdp/domains/debugger/cdp-params.d.ts +15 -0
- package/lib/types/worker/cdp/domains/debugger/index.d.ts +6 -0
- package/lib/types/worker/cdp/domains/debugger/projector.d.ts +22 -0
- package/lib/types/worker/cdp/domains/debugger/script-registry.d.ts +70 -0
- package/lib/types/worker/cdp/domains/debugger/session.d.ts +47 -0
- package/lib/types/worker/cdp/domains/dom/index.d.ts +4 -0
- package/lib/types/worker/cdp/domains/dom/model.d.ts +121 -0
- package/lib/types/worker/cdp/domains/dom/session.d.ts +78 -0
- package/lib/types/worker/cdp/domains/native.d.ts +25 -0
- package/lib/types/worker/cdp/domains/network/session.d.ts +46 -0
- package/lib/types/worker/cdp/domains/runtime/cdp-params.d.ts +82 -0
- package/lib/types/worker/cdp/domains/runtime/index.d.ts +3 -0
- package/lib/types/worker/cdp/domains/runtime/object-table.d.ts +117 -0
- package/lib/types/worker/cdp/domains/runtime/session.d.ts +97 -0
- package/lib/types/worker/cdp/ids.d.ts +37 -0
- package/lib/types/worker/cdp/protocol.d.ts +46 -0
- package/lib/types/worker/cdp/realm-sessions.d.ts +67 -0
- package/lib/types/worker/cdp/session.d.ts +39 -0
- package/lib/types/worker/cdp/target.d.ts +17 -0
- package/lib/types/worker/entry.d.ts +3 -0
- package/lib/types/worker/inspection/cordis-query.d.ts +11 -0
- package/lib/types/worker/inspection/cordis-store.d.ts +94 -0
- package/lib/types/worker/inspection/network-store.d.ts +110 -0
- package/lib/types/worker/inspection/query-router.d.ts +78 -0
- package/lib/types/worker/inspection/realm-store.d.ts +58 -0
- package/lib/types/worker/inspection/realm.d.ts +43 -0
- package/lib/types/worker/realms/client/bridge.d.ts +18 -0
- package/lib/types/worker/realms/client/console.d.ts +21 -0
- package/lib/types/worker/realms/client/debugger.d.ts +8 -0
- package/lib/types/worker/realms/client/index.d.ts +18 -0
- package/lib/types/worker/realms/client/runtime.d.ts +28 -0
- package/lib/types/worker/realms/client/scripts.d.ts +15 -0
- package/lib/types/worker/realms/client/sources.d.ts +30 -0
- package/lib/types/worker/realms/client/values.d.ts +55 -0
- package/lib/types/worker/realms/host/bridge.d.ts +49 -0
- package/lib/types/worker/realms/host/console.d.ts +25 -0
- package/lib/types/worker/realms/host/debugger.d.ts +25 -0
- package/lib/types/worker/realms/host/index.d.ts +13 -0
- package/lib/types/worker/realms/host/runtime.d.ts +54 -0
- package/lib/types/worker/realms/host/scripts.d.ts +9 -0
- package/lib/types/worker/realms/host/sources.d.ts +26 -0
- package/lib/types/worker/realms/host/values.d.ts +22 -0
- package/lib/types/worker/server.d.ts +16 -0
- package/lib/worker.js +7293 -0
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +86 -3
|
@@ -0,0 +1,1176 @@
|
|
|
1
|
+
import { n as e } from "./chunk-DF993M8W.js";
|
|
2
|
+
import { Ot as t, gt as n, rt as r, v as i } from "./platform-BzB373NB.js";
|
|
3
|
+
import { At as a, Et as o, L as s, Ot as c, at as l, bt as u, d, wt as f } from "./common-qd_KLeYO.js";
|
|
4
|
+
import { $i as p, Al as m, Fo as h, Hc as ee, Io as te, Ja as ne, L as g, La as _, Md as v, Nd as re, Nl as ie, Pl as ae, Po as y, Qt as oe, Vc as b, Wc as x, Wo as S, Zo as C, ei as se, fa as ce, ff as le, ii as ue, ja as de, jr as fe, mf as w, mo as pe, na as T, pf as E, pl as me, rc as he, yl as ge } from "./legacy-C0IOfyhX.js";
|
|
5
|
+
import { g as D } from "./text_utils-ohNt_gua.js";
|
|
6
|
+
import { S as O, f as k, k as _e, o as ve, s as A, w as j } from "./bindings-B7uzkbnH.js";
|
|
7
|
+
import { t as ye } from "./data_grid-6RZWyPx-.js";
|
|
8
|
+
//#region node_modules/.pnpm/chrome-devtools-frontend@1.0.1638082/node_modules/chrome-devtools-frontend/front_end/panels/coverage/CoverageModel.ts
|
|
9
|
+
var be = /* @__PURE__ */ e({
|
|
10
|
+
CoverageInfo: () => z,
|
|
11
|
+
CoverageModel: () => P,
|
|
12
|
+
CoverageType: () => M,
|
|
13
|
+
Events: () => N,
|
|
14
|
+
SourceURLCoverageInfo: () => L,
|
|
15
|
+
SuspensionState: () => xe,
|
|
16
|
+
URLCoverageInfo: () => I,
|
|
17
|
+
mergeSegments: () => R
|
|
18
|
+
}), M = /* @__PURE__ */ function(e) {
|
|
19
|
+
return e[e.CSS = 1] = "CSS", e[e.JAVA_SCRIPT = 2] = "JAVA_SCRIPT", e[e.JAVA_SCRIPT_PER_FUNCTION = 4] = "JAVA_SCRIPT_PER_FUNCTION", e;
|
|
20
|
+
}({}), xe = /* @__PURE__ */ function(e) {
|
|
21
|
+
return e.ACTIVE = "Active", e.SUSPENDING = "Suspending", e.SUSPENDED = "Suspended", e;
|
|
22
|
+
}({}), N = /* @__PURE__ */ function(e) {
|
|
23
|
+
return e.CoverageUpdated = "CoverageUpdated", e.CoverageReset = "CoverageReset", e.SourceMapResolved = "SourceMapResolved", e;
|
|
24
|
+
}({}), Se = 200, Ce = 500, P = class e extends le {
|
|
25
|
+
cpuProfilerModel;
|
|
26
|
+
cssModel;
|
|
27
|
+
debuggerModel;
|
|
28
|
+
coverageByURL;
|
|
29
|
+
coverageByContentProvider;
|
|
30
|
+
coverageUpdateTimes;
|
|
31
|
+
suspensionState;
|
|
32
|
+
pollTimer;
|
|
33
|
+
currentPollPromise;
|
|
34
|
+
shouldResumePollingOnResume;
|
|
35
|
+
jsBacklog;
|
|
36
|
+
cssBacklog;
|
|
37
|
+
performanceTraceRecording;
|
|
38
|
+
sourceMapManager;
|
|
39
|
+
willResolveSourceMaps;
|
|
40
|
+
processSourceMapBacklog;
|
|
41
|
+
constructor(e) {
|
|
42
|
+
super(e), this.cpuProfilerModel = e.model(he), this.cssModel = e.model(m), this.debuggerModel = e.model(me), this.sourceMapManager = this.debuggerModel?.sourceMapManager() || null, this.sourceMapManager?.addEventListener(ae.SourceMapAttached, this.sourceMapAttached, this), this.coverageByURL = /* @__PURE__ */ new Map(), this.coverageByContentProvider = /* @__PURE__ */ new Map(), this.coverageUpdateTimes = /* @__PURE__ */ new Set(), this.suspensionState = "Active", this.pollTimer = null, this.currentPollPromise = null, this.shouldResumePollingOnResume = !1, this.jsBacklog = [], this.cssBacklog = [], this.performanceTraceRecording = !1, this.willResolveSourceMaps = !1, this.processSourceMapBacklog = [];
|
|
43
|
+
}
|
|
44
|
+
async start(e) {
|
|
45
|
+
if (this.suspensionState !== "Active") throw Error("Cannot start CoverageModel while it is not active.");
|
|
46
|
+
let t = [];
|
|
47
|
+
return this.cssModel && (this.clearCSS(), this.cssModel.addEventListener(ie.StyleSheetAdded, this.handleStyleSheetAdded, this), t.push(this.cssModel.startCoverage())), this.cpuProfilerModel && t.push(this.cpuProfilerModel.startPreciseCoverage(e, this.preciseCoverageDeltaUpdate.bind(this))), await Promise.all(t), !!(this.cssModel || this.cpuProfilerModel);
|
|
48
|
+
}
|
|
49
|
+
async sourceMapAttached(e) {
|
|
50
|
+
let t = e.data.client, n = e.data.sourceMap;
|
|
51
|
+
this.processSourceMapBacklog.push({
|
|
52
|
+
script: t,
|
|
53
|
+
sourceMap: n
|
|
54
|
+
}), this.willResolveSourceMaps || (this.willResolveSourceMaps = !0, setTimeout(this.resolveSourceMapsAndUpdate.bind(this), Ce));
|
|
55
|
+
}
|
|
56
|
+
async resolveSourceMapsAndUpdate() {
|
|
57
|
+
this.willResolveSourceMaps = !1;
|
|
58
|
+
let e = this.processSourceMapBacklog;
|
|
59
|
+
this.processSourceMapBacklog = [], await Promise.all(e.map(({ script: e, sourceMap: t }) => this.resolveSourceMap(e, t))), this.dispatchEventToListeners("SourceMapResolved");
|
|
60
|
+
}
|
|
61
|
+
async resolveSourceMap(e, t) {
|
|
62
|
+
let n = e.sourceURL, r = this.coverageByURL.get(n);
|
|
63
|
+
if (r && r.sourcesURLCoverageInfo.size === 0) {
|
|
64
|
+
let n = D.contentDataOrEmpty(await e.requestContentData()), [i, a] = this.calculateSizeForSources(t, n.textObj, e.contentLength);
|
|
65
|
+
r.setSourceSegments(a);
|
|
66
|
+
for (let e of t.sourceURLs()) this.addCoverageForSource(e, i.get(e) || 0, r.type(), r);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
async preciseCoverageDeltaUpdate(e, t) {
|
|
70
|
+
this.coverageUpdateTimes.add(e);
|
|
71
|
+
let n = await this.backlogOrProcessJSCoverage(t, e);
|
|
72
|
+
n.length && this.dispatchEventToListeners("CoverageUpdated", n);
|
|
73
|
+
}
|
|
74
|
+
async stop() {
|
|
75
|
+
await this.stopPolling();
|
|
76
|
+
let e = [];
|
|
77
|
+
this.cpuProfilerModel && e.push(this.cpuProfilerModel.stopPreciseCoverage()), this.cssModel && (e.push(this.cssModel.stopCoverage()), this.cssModel.removeEventListener(ie.StyleSheetAdded, this.handleStyleSheetAdded, this)), await Promise.all(e);
|
|
78
|
+
}
|
|
79
|
+
reset() {
|
|
80
|
+
this.coverageByURL = /* @__PURE__ */ new Map(), this.coverageByContentProvider = /* @__PURE__ */ new Map(), this.coverageUpdateTimes = /* @__PURE__ */ new Set(), this.dispatchEventToListeners("CoverageReset");
|
|
81
|
+
}
|
|
82
|
+
async startPolling() {
|
|
83
|
+
this.currentPollPromise || this.suspensionState !== "Active" || await this.pollLoop();
|
|
84
|
+
}
|
|
85
|
+
async pollLoop() {
|
|
86
|
+
this.clearTimer(), this.currentPollPromise = this.pollAndCallback(), await this.currentPollPromise, (this.suspensionState === "Active" || this.performanceTraceRecording) && (this.pollTimer = window.setTimeout(() => this.pollLoop(), Se));
|
|
87
|
+
}
|
|
88
|
+
async stopPolling() {
|
|
89
|
+
this.clearTimer(), await this.currentPollPromise, this.currentPollPromise = null, await this.pollAndCallback();
|
|
90
|
+
}
|
|
91
|
+
async pollAndCallback() {
|
|
92
|
+
if (this.suspensionState === "Suspended" && !this.performanceTraceRecording) return;
|
|
93
|
+
let e = await this.takeAllCoverage();
|
|
94
|
+
console.assert(this.suspensionState !== "Suspended" || !!this.performanceTraceRecording, "CoverageModel was suspended while polling."), e.length && this.dispatchEventToListeners("CoverageUpdated", e);
|
|
95
|
+
}
|
|
96
|
+
clearTimer() {
|
|
97
|
+
this.pollTimer &&= (clearTimeout(this.pollTimer), null);
|
|
98
|
+
}
|
|
99
|
+
async preSuspendModel(e) {
|
|
100
|
+
if (this.suspensionState === "Active") {
|
|
101
|
+
if (this.suspensionState = "Suspending", e === "performance-timeline") {
|
|
102
|
+
this.performanceTraceRecording = !0;
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
this.currentPollPromise && (await this.stopPolling(), this.shouldResumePollingOnResume = !0);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
async suspendModel(e) {
|
|
109
|
+
this.suspensionState = "Suspended";
|
|
110
|
+
}
|
|
111
|
+
async resumeModel() {}
|
|
112
|
+
async postResumeModel() {
|
|
113
|
+
this.suspensionState = "Active", this.performanceTraceRecording = !1, this.shouldResumePollingOnResume && (this.shouldResumePollingOnResume = !1, await this.startPolling());
|
|
114
|
+
}
|
|
115
|
+
entries() {
|
|
116
|
+
return Array.from(this.coverageByURL.values());
|
|
117
|
+
}
|
|
118
|
+
getCoverageForUrl(e) {
|
|
119
|
+
return this.coverageByURL.get(e) || null;
|
|
120
|
+
}
|
|
121
|
+
usageForRange(e, t, n) {
|
|
122
|
+
return this.coverageByContentProvider.get(e)?.usageForRange(t, n);
|
|
123
|
+
}
|
|
124
|
+
clearCSS() {
|
|
125
|
+
for (let e of this.coverageByContentProvider.values()) {
|
|
126
|
+
if (e.type() !== 1) continue;
|
|
127
|
+
let t = e.getContentProvider();
|
|
128
|
+
this.coverageByContentProvider.delete(t);
|
|
129
|
+
let n = this.coverageByURL.get(e.url());
|
|
130
|
+
if (!n) continue;
|
|
131
|
+
let r = `${t.startLine}:${t.startColumn}`;
|
|
132
|
+
n.removeCoverageEntry(r, e), n.numberOfEntries() === 0 && this.coverageByURL.delete(e.url());
|
|
133
|
+
}
|
|
134
|
+
if (this.cssModel) for (let e of this.cssModel.getAllStyleSheetHeaders()) this.addStyleSheetToCSSCoverage(e);
|
|
135
|
+
}
|
|
136
|
+
async takeAllCoverage() {
|
|
137
|
+
let [e, t] = await Promise.all([this.takeCSSCoverage(), this.takeJSCoverage()]);
|
|
138
|
+
return [...e, ...t];
|
|
139
|
+
}
|
|
140
|
+
async takeJSCoverage() {
|
|
141
|
+
if (!this.cpuProfilerModel) return [];
|
|
142
|
+
let { coverage: e, timestamp: t } = await this.cpuProfilerModel.takePreciseCoverage();
|
|
143
|
+
return this.coverageUpdateTimes.add(t), await this.backlogOrProcessJSCoverage(e, t);
|
|
144
|
+
}
|
|
145
|
+
async backlogOrProcessJSCoverage(e, t) {
|
|
146
|
+
if (e.length > 0 && this.jsBacklog.push({
|
|
147
|
+
rawCoverageData: e,
|
|
148
|
+
stamp: t
|
|
149
|
+
}), this.suspensionState !== "Active") return [];
|
|
150
|
+
let n = (e, t) => e.stamp - t.stamp, r = [];
|
|
151
|
+
for (let { rawCoverageData: e, stamp: t } of this.jsBacklog.sort(n)) r.push(await this.processJSCoverage(e, t));
|
|
152
|
+
return this.jsBacklog = [], r.flat();
|
|
153
|
+
}
|
|
154
|
+
async processJSBacklog() {
|
|
155
|
+
this.backlogOrProcessJSCoverage([], 0);
|
|
156
|
+
}
|
|
157
|
+
async processJSCoverage(e, t) {
|
|
158
|
+
if (!this.debuggerModel) return [];
|
|
159
|
+
let n = [];
|
|
160
|
+
for (let r of e) {
|
|
161
|
+
let e = this.debuggerModel.scriptForId(r.scriptId);
|
|
162
|
+
if (!e) continue;
|
|
163
|
+
let i = [], a = 2;
|
|
164
|
+
for (let e of r.functions) {
|
|
165
|
+
e.isBlockCoverage === !1 && !(e.ranges.length === 1 && !e.ranges[0].count) && (a |= 4);
|
|
166
|
+
for (let t of e.ranges) i.push(t);
|
|
167
|
+
}
|
|
168
|
+
let o = await this.addCoverage(e, e.contentLength, e.lineOffset, e.columnOffset, i, a, t);
|
|
169
|
+
o && n.push(...o);
|
|
170
|
+
}
|
|
171
|
+
return n;
|
|
172
|
+
}
|
|
173
|
+
handleStyleSheetAdded(e) {
|
|
174
|
+
this.addStyleSheetToCSSCoverage(e.data);
|
|
175
|
+
}
|
|
176
|
+
async takeCSSCoverage() {
|
|
177
|
+
if (!this.cssModel || this.suspensionState !== "Active") return [];
|
|
178
|
+
let { coverage: e, timestamp: t } = await this.cssModel.takeCoverageDelta();
|
|
179
|
+
return this.coverageUpdateTimes.add(t), await this.backlogOrProcessCSSCoverage(e, t);
|
|
180
|
+
}
|
|
181
|
+
async backlogOrProcessCSSCoverage(e, t) {
|
|
182
|
+
if (e.length > 0 && this.cssBacklog.push({
|
|
183
|
+
rawCoverageData: e,
|
|
184
|
+
stamp: t
|
|
185
|
+
}), this.suspensionState !== "Active") return [];
|
|
186
|
+
let n = (e, t) => e.stamp - t.stamp, r = [];
|
|
187
|
+
for (let { rawCoverageData: e, stamp: t } of this.cssBacklog.sort(n)) r.push(await this.processCSSCoverage(e, t));
|
|
188
|
+
return this.cssBacklog = [], r.flat();
|
|
189
|
+
}
|
|
190
|
+
async processCSSCoverage(e, t) {
|
|
191
|
+
if (!this.cssModel) return [];
|
|
192
|
+
let n = [], r = /* @__PURE__ */ new Map();
|
|
193
|
+
for (let t of e) {
|
|
194
|
+
let e = this.cssModel.styleSheetHeaderForId(t.styleSheetId);
|
|
195
|
+
if (!e) continue;
|
|
196
|
+
let n = r.get(e);
|
|
197
|
+
n || (n = [], r.set(e, n)), n.push({
|
|
198
|
+
startOffset: t.startOffset,
|
|
199
|
+
endOffset: t.endOffset,
|
|
200
|
+
count: Number(t.used)
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
for (let e of r) {
|
|
204
|
+
let r = e[0], i = e[1], a = await this.addCoverage(r, r.contentLength, r.startLine, r.startColumn, i, 1, t);
|
|
205
|
+
a && n.push(...a);
|
|
206
|
+
}
|
|
207
|
+
return n;
|
|
208
|
+
}
|
|
209
|
+
static convertToDisjointSegments(e, t) {
|
|
210
|
+
e.sort((e, t) => e.startOffset - t.startOffset);
|
|
211
|
+
let n = [], r = [];
|
|
212
|
+
for (let t of e) {
|
|
213
|
+
let e = r[r.length - 1];
|
|
214
|
+
for (; e && e.endOffset <= t.startOffset;) i(e.endOffset, e.count), r.pop(), e = r[r.length - 1];
|
|
215
|
+
i(t.startOffset, e ? e.count : 0), r.push(t);
|
|
216
|
+
}
|
|
217
|
+
for (let e = r.pop(); e; e = r.pop()) i(e.endOffset, e.count);
|
|
218
|
+
function i(e, r) {
|
|
219
|
+
let i = n[n.length - 1];
|
|
220
|
+
if (i) {
|
|
221
|
+
if (i.end === e) return;
|
|
222
|
+
if (i.count === r) {
|
|
223
|
+
i.end = e;
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
n.push({
|
|
228
|
+
end: e,
|
|
229
|
+
count: r,
|
|
230
|
+
stamp: t
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
return n;
|
|
234
|
+
}
|
|
235
|
+
addStyleSheetToCSSCoverage(e) {
|
|
236
|
+
this.addCoverage(e, e.contentLength, e.startLine, e.startColumn, [], 1, Date.now());
|
|
237
|
+
}
|
|
238
|
+
calculateSizeForSources(e, t, n) {
|
|
239
|
+
let r = /* @__PURE__ */ new Map(), i = [], a = function(e, n, r, i) {
|
|
240
|
+
if (e === r) return i - n;
|
|
241
|
+
if (t) {
|
|
242
|
+
let a = t.offsetFromPosition(e, n);
|
|
243
|
+
return t.offsetFromPosition(r, i) - a;
|
|
244
|
+
}
|
|
245
|
+
return i;
|
|
246
|
+
}, o = e.mappings();
|
|
247
|
+
if (o.length === 0) return [r, i];
|
|
248
|
+
let s = o[0], c = 0;
|
|
249
|
+
t ? c += t.offsetFromPosition(s.lineNumber, s.columnNumber) : c += a(0, 0, s.lineNumber, s.columnNumber), i.push({
|
|
250
|
+
end: c,
|
|
251
|
+
sourceUrl: ""
|
|
252
|
+
});
|
|
253
|
+
for (let l = 0; l < o.length; l++) {
|
|
254
|
+
let u = o[l], d = e.findEntryRanges(u.lineNumber, u.columnNumber);
|
|
255
|
+
if (d) {
|
|
256
|
+
let e = d.range, i = d.sourceURL, s = r.get(i) || 0, c = 0;
|
|
257
|
+
c = l === o.length - 1 ? n - t.offsetFromPosition(e.startLine, e.startColumn) : a(e.startLine, e.startColumn, e.endLine, e.endColumn), r.set(i, s + c);
|
|
258
|
+
}
|
|
259
|
+
let f = a(s.lineNumber, s.columnNumber, u.lineNumber, u.columnNumber);
|
|
260
|
+
if (c += f, u.sourceURL !== s.sourceURL) if (t) {
|
|
261
|
+
let e = t.offsetFromPosition(u.lineNumber, u.columnNumber);
|
|
262
|
+
i.push({
|
|
263
|
+
end: e,
|
|
264
|
+
sourceUrl: s.sourceURL || ""
|
|
265
|
+
});
|
|
266
|
+
} else i.push({
|
|
267
|
+
end: c,
|
|
268
|
+
sourceUrl: s.sourceURL || ""
|
|
269
|
+
});
|
|
270
|
+
s = u, l === o.length - 1 && i.push({
|
|
271
|
+
end: n,
|
|
272
|
+
sourceUrl: u.sourceURL || ""
|
|
273
|
+
});
|
|
274
|
+
}
|
|
275
|
+
return [r, i];
|
|
276
|
+
}
|
|
277
|
+
async addCoverage(t, n, r, i, a, o, s) {
|
|
278
|
+
let c = [], l = t.contentURL();
|
|
279
|
+
if (!l) return null;
|
|
280
|
+
let u = this.coverageByURL.get(l), d = !1;
|
|
281
|
+
if (!u) {
|
|
282
|
+
d = !0, u = new I(l), this.coverageByURL.set(l, u);
|
|
283
|
+
let e = await this.sourceMapManager?.sourceMapForClientPromise(t);
|
|
284
|
+
if (e) {
|
|
285
|
+
let r = D.contentDataOrEmpty(await t.requestContentData()), [i, a] = this.calculateSizeForSources(e, r.textObj, n);
|
|
286
|
+
u.setSourceSegments(a);
|
|
287
|
+
for (let t of e.sourceURLs()) {
|
|
288
|
+
let e = this.addCoverageForSource(t, i.get(t) || 0, o, u);
|
|
289
|
+
e && c.push(e);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
let f = u.ensureEntry(t, n, r, i, o);
|
|
294
|
+
this.coverageByContentProvider.set(t, f);
|
|
295
|
+
let p = e.convertToDisjointSegments(a, s), m = p[p.length - 1];
|
|
296
|
+
m && m.end < n && p.push({
|
|
297
|
+
end: n,
|
|
298
|
+
stamp: s,
|
|
299
|
+
count: 0
|
|
300
|
+
});
|
|
301
|
+
let h = f.mergeCoverage(p);
|
|
302
|
+
if (!d && h === 0) return null;
|
|
303
|
+
u.addToSizes(h, 0);
|
|
304
|
+
for (let [e, t] of f.sourceDeltaMap) {
|
|
305
|
+
let n = u.sourcesURLCoverageInfo.get(e);
|
|
306
|
+
n && (n.addToSizes(t, 0), n.lastSourceUsedRange = f.sourceUsedRangeMap.get(e) || []);
|
|
307
|
+
}
|
|
308
|
+
return c.push(f), c;
|
|
309
|
+
}
|
|
310
|
+
addCoverageForSource(e, t, n, r) {
|
|
311
|
+
let i = j.instance().uiSourceCodeForURL(e), a = new L(e, r), o = a.ensureEntry(i, t, 0, 0, n);
|
|
312
|
+
return r.sourcesURLCoverageInfo.set(e, a), o;
|
|
313
|
+
}
|
|
314
|
+
async exportReport(e) {
|
|
315
|
+
let t = [], n = Array.from(this.coverageByURL.keys()).sort();
|
|
316
|
+
for (let e of n) {
|
|
317
|
+
let n = this.coverageByURL.get(e);
|
|
318
|
+
if (!n) continue;
|
|
319
|
+
let r = n.url();
|
|
320
|
+
r.startsWith("extensions::") || s(r, "chrome-extension:") || t.push(...await n.entriesForExport());
|
|
321
|
+
}
|
|
322
|
+
await e.write(JSON.stringify(t, void 0, 2)), e.close();
|
|
323
|
+
}
|
|
324
|
+
};
|
|
325
|
+
le.register(P, {
|
|
326
|
+
capabilities: re.NONE,
|
|
327
|
+
autostart: !1
|
|
328
|
+
});
|
|
329
|
+
function F(e, t) {
|
|
330
|
+
let [n, r] = e.split(":"), [i, a] = t.split(":");
|
|
331
|
+
return Number.parseInt(n, 10) - Number.parseInt(i, 10) || Number.parseInt(r, 10) - Number.parseInt(a, 10);
|
|
332
|
+
}
|
|
333
|
+
var I = class e extends a {
|
|
334
|
+
#e;
|
|
335
|
+
coverageInfoByLocation;
|
|
336
|
+
#t;
|
|
337
|
+
#n;
|
|
338
|
+
#r;
|
|
339
|
+
#i;
|
|
340
|
+
sourcesURLCoverageInfo = /* @__PURE__ */ new Map();
|
|
341
|
+
sourceSegments;
|
|
342
|
+
constructor(e) {
|
|
343
|
+
super(), this.#e = e, this.coverageInfoByLocation = /* @__PURE__ */ new Map(), this.#t = 0, this.#n = 0, this.#i = !1;
|
|
344
|
+
}
|
|
345
|
+
url() {
|
|
346
|
+
return this.#e;
|
|
347
|
+
}
|
|
348
|
+
type() {
|
|
349
|
+
return this.#r;
|
|
350
|
+
}
|
|
351
|
+
size() {
|
|
352
|
+
return this.#t;
|
|
353
|
+
}
|
|
354
|
+
usedSize() {
|
|
355
|
+
return this.#n;
|
|
356
|
+
}
|
|
357
|
+
unusedSize() {
|
|
358
|
+
return this.#t - this.#n;
|
|
359
|
+
}
|
|
360
|
+
usedPercentage() {
|
|
361
|
+
return this.#t === 0 || !this.unusedSize() || !this.size() ? 0 : this.usedSize() / this.size();
|
|
362
|
+
}
|
|
363
|
+
unusedPercentage() {
|
|
364
|
+
return this.#t === 0 ? 1 : this.unusedSize() / this.size();
|
|
365
|
+
}
|
|
366
|
+
isContentScript() {
|
|
367
|
+
return this.#i;
|
|
368
|
+
}
|
|
369
|
+
entries() {
|
|
370
|
+
return this.coverageInfoByLocation.values();
|
|
371
|
+
}
|
|
372
|
+
numberOfEntries() {
|
|
373
|
+
return this.coverageInfoByLocation.size;
|
|
374
|
+
}
|
|
375
|
+
removeCoverageEntry(e, t) {
|
|
376
|
+
this.coverageInfoByLocation.delete(e) && this.addToSizes(-t.getUsedSize(), -t.getSize());
|
|
377
|
+
}
|
|
378
|
+
addToSizes(t, n) {
|
|
379
|
+
this.#n += t, this.#t += n, (t !== 0 || n !== 0) && this.dispatchEventToListeners(e.Events.SizesChanged);
|
|
380
|
+
}
|
|
381
|
+
setSourceSegments(e) {
|
|
382
|
+
this.sourceSegments = e;
|
|
383
|
+
}
|
|
384
|
+
ensureEntry(e, t, n, r, i) {
|
|
385
|
+
let a = `${n}:${r}`, o = this.coverageInfoByLocation.get(a);
|
|
386
|
+
return i & 2 && !this.coverageInfoByLocation.size && e instanceof ge && (this.#i = e.isContentScript()), this.#r |= i, o ? (o.addCoverageType(i), o) : (i & 2 && !this.coverageInfoByLocation.size && e instanceof ge && (this.#i = e.isContentScript()), o = new z(e, t, n, r, i, this), this.coverageInfoByLocation.set(a, o), this.addToSizes(0, t), o);
|
|
387
|
+
}
|
|
388
|
+
async getFullText() {
|
|
389
|
+
let e = !1, t = this.url();
|
|
390
|
+
for (let n of this.coverageInfoByLocation.values()) {
|
|
391
|
+
let { lineOffset: r, columnOffset: i } = n.getOffsets();
|
|
392
|
+
if (r || i) {
|
|
393
|
+
e = !!t;
|
|
394
|
+
break;
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
if (!e) return null;
|
|
398
|
+
let n = x.resourceForURL(t);
|
|
399
|
+
return n ? D.contentDataOrEmpty(await n.requestContentData()).textObj : null;
|
|
400
|
+
}
|
|
401
|
+
entriesForExportBasedOnFullText(e) {
|
|
402
|
+
let t = Array.from(this.coverageInfoByLocation.keys()).sort(F), n = {
|
|
403
|
+
url: this.url(),
|
|
404
|
+
ranges: [],
|
|
405
|
+
text: e.value()
|
|
406
|
+
};
|
|
407
|
+
for (let r of t) {
|
|
408
|
+
let t = this.coverageInfoByLocation.get(r);
|
|
409
|
+
if (!t) continue;
|
|
410
|
+
let { lineOffset: i, columnOffset: a } = t.getOffsets(), o = e ? e.offsetFromPosition(i, a) : 0;
|
|
411
|
+
n.ranges.push(...t.rangesForExport(o));
|
|
412
|
+
}
|
|
413
|
+
return n;
|
|
414
|
+
}
|
|
415
|
+
async entriesForExportBasedOnContent() {
|
|
416
|
+
let e = Array.from(this.coverageInfoByLocation.keys()).sort(F), t = [];
|
|
417
|
+
for (let n of e) {
|
|
418
|
+
let e = this.coverageInfoByLocation.get(n);
|
|
419
|
+
if (!e) continue;
|
|
420
|
+
let r = {
|
|
421
|
+
url: this.url(),
|
|
422
|
+
ranges: e.rangesForExport(),
|
|
423
|
+
text: D.textOr(await e.getContentProvider().requestContentData(), null)
|
|
424
|
+
};
|
|
425
|
+
t.push(r);
|
|
426
|
+
}
|
|
427
|
+
return t;
|
|
428
|
+
}
|
|
429
|
+
async entriesForExport() {
|
|
430
|
+
let e = await this.getFullText();
|
|
431
|
+
return e ? [await this.entriesForExportBasedOnFullText(e)] : await this.entriesForExportBasedOnContent();
|
|
432
|
+
}
|
|
433
|
+
}, L = class extends I {
|
|
434
|
+
generatedURLCoverageInfo;
|
|
435
|
+
lastSourceUsedRange = [];
|
|
436
|
+
constructor(e, t) {
|
|
437
|
+
super(e), this.generatedURLCoverageInfo = t;
|
|
438
|
+
}
|
|
439
|
+
};
|
|
440
|
+
(function(e) {
|
|
441
|
+
e.Events = /* @__PURE__ */ function(e) {
|
|
442
|
+
return e.SizesChanged = "SizesChanged", e;
|
|
443
|
+
}({});
|
|
444
|
+
})(I ||= {});
|
|
445
|
+
var R = (e, t) => {
|
|
446
|
+
let n = [], r = 0, i = 0;
|
|
447
|
+
for (; r < e.length && i < t.length;) {
|
|
448
|
+
let a = e[r], o = t[i], s = (a.count || 0) + (o.count || 0), c = Math.min(a.end, o.end), l = n[n.length - 1], u = Math.min(a.stamp, o.stamp);
|
|
449
|
+
l?.count !== s || l.stamp !== u ? n.push({
|
|
450
|
+
end: c,
|
|
451
|
+
count: s,
|
|
452
|
+
stamp: u
|
|
453
|
+
}) : l.end = c, a.end <= o.end && r++, a.end >= o.end && i++;
|
|
454
|
+
}
|
|
455
|
+
for (; r < e.length; r++) n.push(e[r]);
|
|
456
|
+
for (; i < t.length; i++) n.push(t[i]);
|
|
457
|
+
return n;
|
|
458
|
+
}, z = class {
|
|
459
|
+
contentProvider;
|
|
460
|
+
size;
|
|
461
|
+
usedSize;
|
|
462
|
+
statsByTimestamp;
|
|
463
|
+
lineOffset;
|
|
464
|
+
columnOffset;
|
|
465
|
+
coverageType;
|
|
466
|
+
segments;
|
|
467
|
+
generatedUrlCoverageInfo;
|
|
468
|
+
sourceUsedSizeMap = /* @__PURE__ */ new Map();
|
|
469
|
+
sourceDeltaMap = /* @__PURE__ */ new Map();
|
|
470
|
+
sourceUsedRangeMap = /* @__PURE__ */ new Map();
|
|
471
|
+
constructor(e, t, n, r, i, a) {
|
|
472
|
+
this.contentProvider = e, this.size = t, this.usedSize = 0, this.statsByTimestamp = /* @__PURE__ */ new Map(), this.lineOffset = n, this.columnOffset = r, this.coverageType = i, this.generatedUrlCoverageInfo = a, this.segments = [];
|
|
473
|
+
}
|
|
474
|
+
getContentProvider() {
|
|
475
|
+
return this.contentProvider;
|
|
476
|
+
}
|
|
477
|
+
url() {
|
|
478
|
+
return this.contentProvider.contentURL();
|
|
479
|
+
}
|
|
480
|
+
type() {
|
|
481
|
+
return this.coverageType;
|
|
482
|
+
}
|
|
483
|
+
addCoverageType(e) {
|
|
484
|
+
this.coverageType |= e;
|
|
485
|
+
}
|
|
486
|
+
getOffsets() {
|
|
487
|
+
return {
|
|
488
|
+
lineOffset: this.lineOffset,
|
|
489
|
+
columnOffset: this.columnOffset
|
|
490
|
+
};
|
|
491
|
+
}
|
|
492
|
+
mergeCoverage(e) {
|
|
493
|
+
let t = this.usedSize;
|
|
494
|
+
return this.segments = R(this.segments, e), this.updateStats(), this.generatedUrlCoverageInfo.sourceSegments && this.generatedUrlCoverageInfo.sourceSegments.length > 0 && this.updateSourceCoverage(), this.usedSize - t;
|
|
495
|
+
}
|
|
496
|
+
getSize() {
|
|
497
|
+
return this.size;
|
|
498
|
+
}
|
|
499
|
+
getUsedSize() {
|
|
500
|
+
return this.usedSize;
|
|
501
|
+
}
|
|
502
|
+
usageForRange(e, n) {
|
|
503
|
+
let r = t(this.segments, e, (e, t) => e - t.end);
|
|
504
|
+
for (; r < this.segments.length && this.segments[r].end < n; ++r) if (this.segments[r].count) return !0;
|
|
505
|
+
return r < this.segments.length && !!this.segments[r].count;
|
|
506
|
+
}
|
|
507
|
+
updateStats() {
|
|
508
|
+
this.statsByTimestamp = /* @__PURE__ */ new Map(), this.usedSize = 0;
|
|
509
|
+
let e = 0;
|
|
510
|
+
for (let t of this.segments) {
|
|
511
|
+
let n = this.statsByTimestamp.get(t.stamp);
|
|
512
|
+
if (n === void 0 && (n = 0), t.count) {
|
|
513
|
+
let r = t.end - e;
|
|
514
|
+
this.usedSize += r, this.statsByTimestamp.set(t.stamp, n + r);
|
|
515
|
+
}
|
|
516
|
+
e = t.end;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
updateSourceCoverage() {
|
|
520
|
+
let e = /* @__PURE__ */ new Map();
|
|
521
|
+
this.sourceDeltaMap = /* @__PURE__ */ new Map(), this.sourceUsedRangeMap = /* @__PURE__ */ new Map();
|
|
522
|
+
let t = this.generatedUrlCoverageInfo.sourceSegments || [], n = 0, r = 0;
|
|
523
|
+
for (let i of this.segments) {
|
|
524
|
+
let a = i.end;
|
|
525
|
+
if (i.count) for (let i = r; i < t.length; i++) {
|
|
526
|
+
let o = i === 0 ? 0 : t[i - 1].end + 1, s = t[i].end, c = Math.max(n, o), l = Math.min(a, s);
|
|
527
|
+
if (c <= l) {
|
|
528
|
+
let n = l - c + 1, a = {
|
|
529
|
+
start: c,
|
|
530
|
+
end: l
|
|
531
|
+
};
|
|
532
|
+
e.has(t[i].sourceUrl) ? e.set(t[i].sourceUrl, e.get(t[i].sourceUrl) + n) : e.set(t[i].sourceUrl, n), this.sourceUsedRangeMap.has(t[i].sourceUrl) ? this.sourceUsedRangeMap.get(t[i].sourceUrl)?.push(a) : this.sourceUsedRangeMap.set(t[i].sourceUrl, [a]), r = i;
|
|
533
|
+
}
|
|
534
|
+
if (a < s) break;
|
|
535
|
+
}
|
|
536
|
+
n = a + 1;
|
|
537
|
+
}
|
|
538
|
+
for (let [t, n] of e) {
|
|
539
|
+
let e = this.sourceUsedSizeMap.get(t) || 0;
|
|
540
|
+
e !== n && (this.sourceUsedSizeMap.set(t, n), this.sourceDeltaMap.set(t, n - e));
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
rangesForExport(e = 0) {
|
|
544
|
+
let t = [], n = 0;
|
|
545
|
+
for (let r of this.segments) {
|
|
546
|
+
if (r.count) {
|
|
547
|
+
let i = t.length > 0 ? t[t.length - 1] : null;
|
|
548
|
+
i?.end === n + e ? i.end = r.end + e : t.push({
|
|
549
|
+
start: n + e,
|
|
550
|
+
end: r.end + e
|
|
551
|
+
});
|
|
552
|
+
}
|
|
553
|
+
n = r.end;
|
|
554
|
+
}
|
|
555
|
+
return t;
|
|
556
|
+
}
|
|
557
|
+
}, B = "/*\n * Copyright 2021 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file.\n */\n\n @scope to (devtools-widget > *) {\n .data-grid {\n border: none;\n }\n\n .data-grid td .url-outer {\n width: 100%;\n display: inline-flex;\n justify-content: flex-start;\n }\n\n .data-grid td .url-outer .filter-highlight {\n font-weight: bold;\n }\n\n .data-grid td .url-prefix {\n overflow-x: hidden;\n text-overflow: ellipsis;\n }\n\n .data-grid td .url-suffix {\n flex: none;\n }\n\n .data-grid td .bar {\n display: inline-block;\n height: 8px;\n border: 1px solid transparent;\n }\n\n .data-grid td .bar-unused-size {\n background-color: var(--app-color-coverage-unused);\n }\n\n .data-grid td .bar-used-size {\n background-color: var(--app-color-coverage-used);\n }\n\n .data-grid td .percent-value {\n width: 7ex;\n display: inline-block;\n color: var(--sys-color-on-surface-subtle);\n }\n\n @media (forced-colors: active) {\n .data-grid td .bar-container {\n forced-color-adjust: none;\n }\n\n .data-grid td .bar-unused-size {\n background-color: ButtonText;\n }\n\n .data-grid td .bar-used-size {\n background-color: ButtonFace;\n }\n\n .data-grid td .bar {\n border-color: ButtonText;\n }\n\n .data-grid .selected td .bar {\n border-top-color: HighlightText;\n border-bottom-color: HighlightText;\n }\n\n .data-grid .selected td .bar:last-child {\n border-right-color: HighlightText;\n }\n\n .data-grid .selected td .bar:first-child {\n border-left-color: HighlightText;\n }\n\n .data-grid:focus tr.selected span.percent-value {\n color: HighlightText;\n }\n }\n}\n", we = /* @__PURE__ */ e({
|
|
558
|
+
CoverageListView: () => je,
|
|
559
|
+
DEFAULT_VIEW: () => Ae,
|
|
560
|
+
coverageTypeToString: () => U
|
|
561
|
+
}), { ifExpanded: Te } = ye, V = {
|
|
562
|
+
css: "CSS",
|
|
563
|
+
jsPerFunction: "JS (per function)",
|
|
564
|
+
jsPerBlock: "JS (per block)",
|
|
565
|
+
url: "URL",
|
|
566
|
+
type: "Type",
|
|
567
|
+
totalBytes: "Total Bytes",
|
|
568
|
+
unusedBytes: "Unused Bytes",
|
|
569
|
+
usageVisualization: "Usage Visualization",
|
|
570
|
+
codeCoverage: "Code Coverage",
|
|
571
|
+
jsCoverageWithPerFunction: "JS coverage with per function granularity: Once a function was executed, the whole function is marked as covered.",
|
|
572
|
+
jsCoverageWithPerBlock: "JS coverage with per block granularity: Once a block of JavaScript was executed, that block is marked as covered.",
|
|
573
|
+
sBytes: "{n, plural, =1 {# byte} other {# bytes}}",
|
|
574
|
+
sBytesS: "{n, plural, =1 {# byte, {percentage}} other {# bytes, {percentage}}}",
|
|
575
|
+
sBytesSBelongToFunctionsThatHave: "{PH1} bytes ({PH2}) belong to functions that have not (yet) been executed.",
|
|
576
|
+
sBytesSBelongToBlocksOf: "{PH1} bytes ({PH2}) belong to blocks of JavaScript that have not (yet) been executed.",
|
|
577
|
+
sBytesSBelongToFunctionsThatHaveExecuted: "{PH1} bytes ({PH2}) belong to functions that have executed at least once.",
|
|
578
|
+
sBytesSBelongToBlocksOfJavascript: "{PH1} bytes ({PH2}) belong to blocks of JavaScript that have executed at least once.",
|
|
579
|
+
sOfFileUnusedSOfFileUsed: "{PH1} % of file unused, {PH2} % of file used"
|
|
580
|
+
}, Ee = f("panels/coverage/CoverageListView.ts", V), H = u.bind(void 0, Ee), { styleMap: De, repeat: Oe } = S;
|
|
581
|
+
function U(e) {
|
|
582
|
+
let t = [];
|
|
583
|
+
return e & M.CSS && t.push(H(V.css)), e & M.JAVA_SCRIPT_PER_FUNCTION ? t.push(H(V.jsPerFunction)) : e & M.JAVA_SCRIPT && t.push(H(V.jsPerBlock)), t.join("+");
|
|
584
|
+
}
|
|
585
|
+
var ke = (e) => Fe().format(e ?? 0), W = (e) => Ne().format(e ?? 0), Ae = (e, t, n) => {
|
|
586
|
+
h(y`
|
|
587
|
+
<style>${B}</style>
|
|
588
|
+
<devtools-data-grid class="flex-auto" name=${H(V.codeCoverage)} striped autofocus resize="last"
|
|
589
|
+
.template=${y`
|
|
590
|
+
<table>
|
|
591
|
+
<tr>
|
|
592
|
+
<th id="url" width="250px" weight="3" sortable>${H(V.url)}</th>
|
|
593
|
+
<th id="type" width="45px" weight="1" fixed sortable>${H(V.type)}</th>
|
|
594
|
+
<th id="size" width="60px" align="right" weight="1" fixed sortable>${H(V.totalBytes)}</th>
|
|
595
|
+
<th id="unused-size" width="100px" align="right" weight="1" fixed sortable sort="descending">${H(V.unusedBytes)}</th>
|
|
596
|
+
<th id="bars" width="250px" weight="1" sortable>${H(V.usageVisualization)}</th>
|
|
597
|
+
</tr>
|
|
598
|
+
${Oe(e.items, (e) => e.url, (t) => Ie(t, e))}
|
|
599
|
+
</table>`}>
|
|
600
|
+
</devtools-data-grid>`, n);
|
|
601
|
+
}, je = class extends se {
|
|
602
|
+
#e;
|
|
603
|
+
#t = [];
|
|
604
|
+
#n = null;
|
|
605
|
+
#r = 0;
|
|
606
|
+
#i = /* @__PURE__ */ new Set();
|
|
607
|
+
#a;
|
|
608
|
+
constructor(e, t = Ae) {
|
|
609
|
+
super(e, {
|
|
610
|
+
useShadowDom: !0,
|
|
611
|
+
delegatesFocus: !0
|
|
612
|
+
}), this.#a = t, this.#e = null;
|
|
613
|
+
}
|
|
614
|
+
set highlightRegExp(e) {
|
|
615
|
+
this.#e = e, this.requestUpdate();
|
|
616
|
+
}
|
|
617
|
+
get highlightRegExp() {
|
|
618
|
+
return this.#e;
|
|
619
|
+
}
|
|
620
|
+
set coverageInfo(e) {
|
|
621
|
+
this.#t = e, this.#r = e.reduce((e, t) => Math.max(e, t.size), 0), this.requestUpdate();
|
|
622
|
+
}
|
|
623
|
+
get coverageInfo() {
|
|
624
|
+
return this.#t;
|
|
625
|
+
}
|
|
626
|
+
performUpdate() {
|
|
627
|
+
let e = {
|
|
628
|
+
items: this.#t,
|
|
629
|
+
selectedUrl: this.#n,
|
|
630
|
+
maxSize: this.#r,
|
|
631
|
+
expandedUrls: this.#i,
|
|
632
|
+
onOpen: (e) => {
|
|
633
|
+
this.selectedUrl = e;
|
|
634
|
+
},
|
|
635
|
+
onExpand: () => {
|
|
636
|
+
this.requestUpdate();
|
|
637
|
+
},
|
|
638
|
+
onCollapse: () => {
|
|
639
|
+
this.requestUpdate();
|
|
640
|
+
},
|
|
641
|
+
highlightRegExp: this.#e
|
|
642
|
+
};
|
|
643
|
+
this.#a(e, {}, this.contentElement);
|
|
644
|
+
}
|
|
645
|
+
reset() {
|
|
646
|
+
this.#t = [], this.#r = 0, this.requestUpdate();
|
|
647
|
+
}
|
|
648
|
+
set selectedUrl(e) {
|
|
649
|
+
if (!this.#t.find((t) => t.url === e)) return;
|
|
650
|
+
this.#n !== e && (this.#n = e, this.requestUpdate());
|
|
651
|
+
let t = e ? j.instance().uiSourceCodeForURL(e) : null;
|
|
652
|
+
t && l(t);
|
|
653
|
+
}
|
|
654
|
+
get selectedUrl() {
|
|
655
|
+
return this.#n;
|
|
656
|
+
}
|
|
657
|
+
}, Me = null;
|
|
658
|
+
function Ne() {
|
|
659
|
+
return Me ||= new Intl.NumberFormat(c.instance().locale, {
|
|
660
|
+
style: "percent",
|
|
661
|
+
maximumFractionDigits: 1
|
|
662
|
+
}), Me;
|
|
663
|
+
}
|
|
664
|
+
var Pe = null;
|
|
665
|
+
function Fe() {
|
|
666
|
+
return Pe ||= new Intl.NumberFormat(c.instance().locale), Pe;
|
|
667
|
+
}
|
|
668
|
+
function Ie(e, t) {
|
|
669
|
+
function n(e) {
|
|
670
|
+
let n = t.highlightRegExp?.exec(e);
|
|
671
|
+
return n?.length ? `${n.index},${n[0].length}` : "";
|
|
672
|
+
}
|
|
673
|
+
let r = /^(.*)(\/[^/]*)$/.exec(e.url);
|
|
674
|
+
return y`
|
|
675
|
+
<style>${B}</style>
|
|
676
|
+
<tr data-url=${e.url} selected=${e.url === t.selectedUrl}
|
|
677
|
+
@open=${() => t.onOpen(e.url)}
|
|
678
|
+
@expand=${() => t.onExpand()}
|
|
679
|
+
@collapse=${() => t.onCollapse()}>
|
|
680
|
+
<td data-value=${e.url} title=${e.url} aria-label=${e.url}>
|
|
681
|
+
<devtools-highlight ranges=${n(e.url)} class="url-outer" aria-hidden="true">
|
|
682
|
+
<div class="url-prefix">${r ? r[1] : e.url}</div>
|
|
683
|
+
<div class="url-suffix">${r ? r[2] : ""}</div>
|
|
684
|
+
</devtools-highlight>
|
|
685
|
+
</td>
|
|
686
|
+
<td data-value=${U(e.type)}
|
|
687
|
+
title=${e.type & M.JAVA_SCRIPT_PER_FUNCTION ? H(V.jsCoverageWithPerFunction) : e.type & M.JAVA_SCRIPT ? H(V.jsCoverageWithPerBlock) : ""}>
|
|
688
|
+
${U(e.type)}
|
|
689
|
+
</td>
|
|
690
|
+
<td data-value=${e.size} aria-label=${H(V.sBytes, { n: e.size || 0 })}>
|
|
691
|
+
<span>${ke(e.size)}</span>
|
|
692
|
+
</td>
|
|
693
|
+
<td data-value=${e.unusedSize} aria-label=${H(V.sBytesS, {
|
|
694
|
+
n: e.unusedSize,
|
|
695
|
+
percentage: W(e.unusedPercentage)
|
|
696
|
+
})}>
|
|
697
|
+
<span>${ke(e.unusedSize)}</span>
|
|
698
|
+
<span class="percent-value">
|
|
699
|
+
${W(e.unusedPercentage)}
|
|
700
|
+
</span>
|
|
701
|
+
</td>
|
|
702
|
+
<td data-value=${e.unusedSize} aria-label=${H(V.sOfFileUnusedSOfFileUsed, {
|
|
703
|
+
PH1: W(e.unusedPercentage),
|
|
704
|
+
PH2: W(e.usedPercentage)
|
|
705
|
+
})}>
|
|
706
|
+
<div class="bar-container">
|
|
707
|
+
${e.unusedSize > 0 ? y`
|
|
708
|
+
<div class="bar bar-unused-size"
|
|
709
|
+
title=${e.type & M.JAVA_SCRIPT_PER_FUNCTION ? H(V.sBytesSBelongToFunctionsThatHave, {
|
|
710
|
+
PH1: e.unusedSize,
|
|
711
|
+
PH2: W(e.unusedPercentage)
|
|
712
|
+
}) : e.type & M.JAVA_SCRIPT ? H(V.sBytesSBelongToBlocksOf, {
|
|
713
|
+
PH1: e.unusedSize,
|
|
714
|
+
PH2: W(e.unusedPercentage)
|
|
715
|
+
}) : ""}
|
|
716
|
+
style=${De({ width: (e.unusedSize / t.maxSize * 100 || 0) + "%" })}>
|
|
717
|
+
</div>` : C}
|
|
718
|
+
${e.usedSize > 0 ? y`
|
|
719
|
+
<div class="bar bar-used-size"
|
|
720
|
+
title=${e.type & M.JAVA_SCRIPT_PER_FUNCTION ? H(V.sBytesSBelongToFunctionsThatHaveExecuted, {
|
|
721
|
+
PH1: e.usedSize,
|
|
722
|
+
PH2: W(e.usedPercentage)
|
|
723
|
+
}) : e.type & M.JAVA_SCRIPT ? H(V.sBytesSBelongToBlocksOfJavascript, {
|
|
724
|
+
PH1: e.usedSize,
|
|
725
|
+
PH2: W(e.usedPercentage)
|
|
726
|
+
}) : ""}
|
|
727
|
+
style=${De({ width: (e.usedSize / t.maxSize * 100 || 0) + "%" })}>
|
|
728
|
+
</div>` : C}
|
|
729
|
+
</div>
|
|
730
|
+
</td>
|
|
731
|
+
${e.sources.length > 0 ? y`
|
|
732
|
+
<td><table>
|
|
733
|
+
${Te(y`${Oe(e.sources, (e) => e.url, (e) => Ie(e, t))}`)}
|
|
734
|
+
</table></td>` : C}
|
|
735
|
+
</tr>`;
|
|
736
|
+
}
|
|
737
|
+
//#endregion
|
|
738
|
+
//#region node_modules/.pnpm/chrome-devtools-frontend@1.0.1638082/node_modules/chrome-devtools-frontend/front_end/panels/coverage/CoverageDecorationManager.ts
|
|
739
|
+
var Le = /* @__PURE__ */ e({
|
|
740
|
+
CoverageDecorationManager: () => K,
|
|
741
|
+
decoratorType: () => G
|
|
742
|
+
}), G = "coverage", K = class e {
|
|
743
|
+
coverageModel;
|
|
744
|
+
textByProvider;
|
|
745
|
+
uiSourceCodeByContentProvider;
|
|
746
|
+
#e;
|
|
747
|
+
#t;
|
|
748
|
+
#n;
|
|
749
|
+
constructor(e, t, n, i) {
|
|
750
|
+
this.coverageModel = e, this.#e = t, this.#t = n, this.#n = i, this.textByProvider = /* @__PURE__ */ new Map(), this.uiSourceCodeByContentProvider = new r();
|
|
751
|
+
for (let e of this.#e.uiSourceCodes()) e.setDecorationData(G, this);
|
|
752
|
+
this.#e.addEventListener(O.UISourceCodeAdded, this.onUISourceCodeAdded, this);
|
|
753
|
+
}
|
|
754
|
+
reset() {
|
|
755
|
+
for (let e of this.#e.uiSourceCodes()) e.setDecorationData(G, void 0);
|
|
756
|
+
}
|
|
757
|
+
dispose() {
|
|
758
|
+
this.reset(), this.#e.removeEventListener(O.UISourceCodeAdded, this.onUISourceCodeAdded, this);
|
|
759
|
+
}
|
|
760
|
+
update(e) {
|
|
761
|
+
for (let t of e) for (let e of this.uiSourceCodeByContentProvider.get(t.getContentProvider())) e.setDecorationData(G, this);
|
|
762
|
+
}
|
|
763
|
+
async usageByLine(t, n) {
|
|
764
|
+
let r = [];
|
|
765
|
+
await this.updateTexts(t, n);
|
|
766
|
+
for (let { startLine: i, startColumn: a, endLine: o, endColumn: s } of n) {
|
|
767
|
+
let n = this.rawLocationsForSourceLocation(t, i, a), c = this.rawLocationsForSourceLocation(t, o, s), [l, u] = await Promise.all([n, c]), d;
|
|
768
|
+
for (let t = 0, n = 0; t < l.length; ++t) {
|
|
769
|
+
let r = l[t];
|
|
770
|
+
for (; n < u.length && e.compareLocations(r, u[n]) >= 0;) ++n;
|
|
771
|
+
if (n >= u.length || u[n].id !== r.id) continue;
|
|
772
|
+
let i = u[n++], a = this.textByProvider.get(i.contentProvider);
|
|
773
|
+
if (!a) continue;
|
|
774
|
+
let o = a.value(), s = Math.min(a.offsetFromPosition(r.line, r.column), o.length - 1), c = Math.min(a.offsetFromPosition(i.line, i.column), o.length - 1);
|
|
775
|
+
for (; s <= c && /\s/.test(o[s]);) ++s;
|
|
776
|
+
for (; s <= c && /\s/.test(o[c]);) --c;
|
|
777
|
+
if (s <= c && (d = this.coverageModel.usageForRange(i.contentProvider, s, c)), d) break;
|
|
778
|
+
}
|
|
779
|
+
r.push(d);
|
|
780
|
+
}
|
|
781
|
+
return r;
|
|
782
|
+
}
|
|
783
|
+
async updateTexts(e, t) {
|
|
784
|
+
let n = [];
|
|
785
|
+
for (let r of t) for (let t of await this.rawLocationsForSourceLocation(e, r.startLine, 0)) this.textByProvider.has(t.contentProvider) || (this.textByProvider.set(t.contentProvider, null), this.uiSourceCodeByContentProvider.set(t.contentProvider, e), n.push(this.updateTextForProvider(t.contentProvider)));
|
|
786
|
+
await Promise.all(n);
|
|
787
|
+
}
|
|
788
|
+
async updateTextForProvider(e) {
|
|
789
|
+
let t = D.contentDataOrEmpty(await e.requestContentData());
|
|
790
|
+
this.textByProvider.set(e, t.textObj);
|
|
791
|
+
}
|
|
792
|
+
async rawLocationsForSourceLocation(t, n, r) {
|
|
793
|
+
let i = [], a = t.contentType();
|
|
794
|
+
if (a.hasScripts()) {
|
|
795
|
+
let e = await this.#t.uiLocationToRawLocations(t, n, r);
|
|
796
|
+
e = e.filter((e) => !!e.script());
|
|
797
|
+
for (let t of e) {
|
|
798
|
+
let e = t.script();
|
|
799
|
+
e && (e.isInlineScript() && a.isDocument() && (t.lineNumber -= e.lineOffset, t.lineNumber || (t.columnNumber -= e.columnOffset)), i.push({
|
|
800
|
+
id: `js:${t.scriptId}`,
|
|
801
|
+
contentProvider: e,
|
|
802
|
+
line: t.lineNumber,
|
|
803
|
+
column: t.columnNumber
|
|
804
|
+
}));
|
|
805
|
+
}
|
|
806
|
+
}
|
|
807
|
+
if (a.isStyleSheet() || a.isDocument()) {
|
|
808
|
+
let e = this.#n.uiLocationToRawLocations(new _e(t, n, r));
|
|
809
|
+
for (let t of e) {
|
|
810
|
+
let e = t.header();
|
|
811
|
+
e && (e.isInline && a.isDocument() && (t.lineNumber -= e.startLine, t.lineNumber || (t.columnNumber -= e.startColumn)), i.push({
|
|
812
|
+
id: `css:${t.styleSheetId}`,
|
|
813
|
+
contentProvider: e,
|
|
814
|
+
line: t.lineNumber,
|
|
815
|
+
column: t.columnNumber
|
|
816
|
+
}));
|
|
817
|
+
}
|
|
818
|
+
}
|
|
819
|
+
return i.sort(e.compareLocations);
|
|
820
|
+
}
|
|
821
|
+
static compareLocations(e, t) {
|
|
822
|
+
return e.id.localeCompare(t.id) || e.line - t.line || e.column - t.column;
|
|
823
|
+
}
|
|
824
|
+
onUISourceCodeAdded(e) {
|
|
825
|
+
e.data.setDecorationData(G, this);
|
|
826
|
+
}
|
|
827
|
+
}, Re = "/*\n * Copyright 2016 The Chromium Authors\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file.\n */\n\n:host {\n overflow: hidden;\n}\n\n.coverage-toolbar-container {\n display: flex;\n border-bottom: 1px solid var(--sys-color-divider);\n flex: 0 0 auto;\n}\n\n.coverage-toolbar {\n flex: auto;\n}\n\n.coverage-toolbar-summary {\n background-color: var(--sys-color-cdt-base-container);\n border-top: 1px solid var(--sys-color-divider);\n padding-left: 5px;\n flex: 0 0 19px;\n display: flex;\n padding-right: 5px;\n}\n\n.coverage-toolbar-summary .coverage-message {\n padding-top: 2px;\n padding-left: 1ex;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.coverage-results {\n overflow-y: auto;\n display: flex;\n flex: auto;\n}\n\n.bfcache-page,\n.prerender-page {\n justify-content: center;\n align-items: center;\n padding: 20px;\n}\n\n.bfcache-page .message,\n.prerender-page .message {\n white-space: pre-line;\n text-align: center;\n}\n\n.inline-button {\n display: inline-flex;\n border: 1px solid var(--sys-color-neutral-outline);\n border-radius: 4px;\n position: relative;\n vertical-align: sub;\n margin: 2px;\n background-color: var(--sys-color-cdt-base-container);\n justify-content: center;\n width: 28px;\n}\n\n.inline-button:hover {\n border-color: transparent;\n background-color: var(--sys-color-state-hover-on-subtle);\n}\n", ze = /* @__PURE__ */ e({
|
|
828
|
+
ActionDelegate: () => Ke,
|
|
829
|
+
CoverageView: () => Ge,
|
|
830
|
+
DEFAULT_VIEW: () => $
|
|
831
|
+
}), q = {
|
|
832
|
+
chooseCoverageGranularityPer: "Choose coverage granularity: Per function has low overhead, per block has significant overhead.",
|
|
833
|
+
perFunction: "Per function",
|
|
834
|
+
perBlock: "Per block",
|
|
835
|
+
filterByUrl: "Filter by URL",
|
|
836
|
+
filterCoverageByType: "Filter coverage by type",
|
|
837
|
+
all: "All",
|
|
838
|
+
css: "CSS",
|
|
839
|
+
javascript: "JavaScript",
|
|
840
|
+
includeExtensionContentScripts: "Include extension content scripts",
|
|
841
|
+
contentScripts: "Content scripts",
|
|
842
|
+
noCoverageData: "No coverage data",
|
|
843
|
+
reloadPage: "Reload page",
|
|
844
|
+
startRecording: "Start recording",
|
|
845
|
+
clickTheReloadButtonSToReloadAnd: "Click the \"{PH1}\" button to reload and start capturing coverage.",
|
|
846
|
+
clickTheRecordButtonSToStart: "Click the \"{PH1}\" button to start capturing coverage.",
|
|
847
|
+
bfcacheNoCapture: "Could not capture coverage info because the page was served from the back/forward cache.",
|
|
848
|
+
activationNoCapture: "Could not capture coverage info because the page was prerendered in the background.",
|
|
849
|
+
reloadPrompt: "Click the reload button {PH1} to reload and get coverage.",
|
|
850
|
+
filteredSTotalS: "Filtered: {PH1} Total: {PH2}",
|
|
851
|
+
sOfSSUsedSoFarSUnused: "{PH1} of {PH2} ({PH3}%) used so far, {PH4} unused."
|
|
852
|
+
}, J = f("panels/coverage/CoverageView.ts", q), Y = u.bind(void 0, J), Be = te.bind(void 0, J), { ref: Ve } = S, { bindToAction: X, bindToSetting: He } = oe, { widget: Z } = ue, Q, $ = (e, t, n) => {
|
|
853
|
+
h(y`
|
|
854
|
+
<style>${Re}</style>
|
|
855
|
+
<div class="coverage-toolbar-container" jslog=${pe()} role="toolbar">
|
|
856
|
+
<devtools-toolbar class="coverage-toolbar" role="presentation" wrappable>
|
|
857
|
+
<select title=${Y(q.chooseCoverageGranularityPer)}
|
|
858
|
+
aria-label=${Y(q.chooseCoverageGranularityPer)}
|
|
859
|
+
jslog=${de("coverage-type").track({ change: !0 })}
|
|
860
|
+
@change=${(t) => e.onCoverageTypeChanged(t.target.selectedIndex)}
|
|
861
|
+
.selectedIndex=${e.coverageType}
|
|
862
|
+
?disabled=${e.recording}>
|
|
863
|
+
<option value=${M.JAVA_SCRIPT | M.JAVA_SCRIPT_PER_FUNCTION}
|
|
864
|
+
jslog=${_(`${M.JAVA_SCRIPT | M.JAVA_SCRIPT_PER_FUNCTION}`).track({ click: !0 })}>
|
|
865
|
+
${Y(q.perFunction)}
|
|
866
|
+
</option>
|
|
867
|
+
<option value=${M.JAVA_SCRIPT}
|
|
868
|
+
jslog=${_(`${M.JAVA_SCRIPT}`).track({ click: !0 })}>
|
|
869
|
+
${Y(q.perBlock)}
|
|
870
|
+
</option>
|
|
871
|
+
</select>
|
|
872
|
+
<devtools-button ${X(e.supportsRecordOnReload && !e.recording ? "coverage.start-with-reload" : "coverage.toggle-recording")}>
|
|
873
|
+
</devtools-button>
|
|
874
|
+
<devtools-button ${X("coverage.clear")}></devtools-button>
|
|
875
|
+
<div class="toolbar-divider"></div>
|
|
876
|
+
<devtools-button ${X("coverage.export")}></devtools-button>
|
|
877
|
+
<div class="toolbar-divider"></div>
|
|
878
|
+
<devtools-toolbar-input type="filter" placeholder=${Y(q.filterByUrl)}
|
|
879
|
+
?disabled=${!e.coverageInfo}
|
|
880
|
+
@change=${(t) => e.onFilterChanged(t.detail)}
|
|
881
|
+
style="flex-grow:1; flex-shrink:1">
|
|
882
|
+
</devtools-toolbar-input>
|
|
883
|
+
<div class="toolbar-divider"></div>
|
|
884
|
+
<select title=${Y(q.filterCoverageByType)}
|
|
885
|
+
aria-label=${Y(q.filterCoverageByType)}
|
|
886
|
+
jslog=${de("coverage-by-type").track({ change: !0 })}
|
|
887
|
+
?disabled=${!e.coverageInfo}
|
|
888
|
+
@change=${(t) => e.onTypeFilterChanged(Number(t.target.selectedOptions[0]?.value))}>
|
|
889
|
+
<option value="" jslog=${_("").track({ click: !0 })}
|
|
890
|
+
.selected=${e.typeFilter === null}>${Y(q.all)}</option>
|
|
891
|
+
<option value=${M.CSS}
|
|
892
|
+
jslog=${_(`${M.CSS}`).track({ click: !0 })}
|
|
893
|
+
.selected=${e.typeFilter === M.CSS}>
|
|
894
|
+
${Y(q.css)}
|
|
895
|
+
</option>
|
|
896
|
+
<option value=${M.JAVA_SCRIPT | M.JAVA_SCRIPT_PER_FUNCTION}
|
|
897
|
+
jslog=${_(`${M.JAVA_SCRIPT | M.JAVA_SCRIPT_PER_FUNCTION}`).track({ click: !0 })}
|
|
898
|
+
.selected=${e.typeFilter !== null && !!(e.typeFilter & (M.JAVA_SCRIPT | M.JAVA_SCRIPT_PER_FUNCTION))}>
|
|
899
|
+
${Y(q.javascript)}
|
|
900
|
+
</option>
|
|
901
|
+
</select>
|
|
902
|
+
<div class="toolbar-divider"></div>
|
|
903
|
+
<devtools-checkbox title=${Y(q.includeExtensionContentScripts)}
|
|
904
|
+
${He(e.showContentScriptsSetting)}
|
|
905
|
+
?disabled=${!e.coverageInfo}>
|
|
906
|
+
${Y(q.contentScripts)}
|
|
907
|
+
</devtools-checkbox>
|
|
908
|
+
</devtools-toolbar>
|
|
909
|
+
</div>
|
|
910
|
+
<div class="coverage-results">
|
|
911
|
+
${e.needsReload ? We(e.needsReload === "bfcache-page" ? Y(q.bfcacheNoCapture) : Y(q.activationNoCapture), e.needsReload) : e.coverageInfo ? y`
|
|
912
|
+
<devtools-widget autofocus class="results" ${Z(je, {
|
|
913
|
+
coverageInfo: e.coverageInfo,
|
|
914
|
+
highlightRegExp: e.textFilter,
|
|
915
|
+
selectedUrl: e.selectedUrl
|
|
916
|
+
})}
|
|
917
|
+
${Ve((e) => {
|
|
918
|
+
e instanceof HTMLElement && (t.focusResults = () => {
|
|
919
|
+
e.focus();
|
|
920
|
+
});
|
|
921
|
+
})}>` : Ue(e.supportsRecordOnReload)}
|
|
922
|
+
</div>
|
|
923
|
+
<div class="coverage-toolbar-summary">
|
|
924
|
+
<div class="coverage-message">
|
|
925
|
+
${e.statusMessage}
|
|
926
|
+
</div>
|
|
927
|
+
</div>`, n, { container: { attributes: { jslog: `${ne("coverage").track({ resize: !0 })}` } } });
|
|
928
|
+
};
|
|
929
|
+
function Ue(e) {
|
|
930
|
+
return e ? y`
|
|
931
|
+
<devtools-widget ${Z(g, {
|
|
932
|
+
header: Y(q.noCoverageData),
|
|
933
|
+
link: "https://developer.chrome.com/docs/devtools/coverage",
|
|
934
|
+
text: Y(q.clickTheReloadButtonSToReloadAnd, { PH1: Y(q.reloadPage) })
|
|
935
|
+
})}>
|
|
936
|
+
<devtools-button ${X("coverage.start-with-reload")}
|
|
937
|
+
.variant=${p.TONAL} .iconName=${void 0}>
|
|
938
|
+
${Y(q.reloadPage)}
|
|
939
|
+
</devtools-button>
|
|
940
|
+
</devtools-widget>` : y`
|
|
941
|
+
<devtools-widget ${Z(g, {
|
|
942
|
+
header: Y(q.noCoverageData),
|
|
943
|
+
link: "https://developer.chrome.com/docs/devtools/coverage",
|
|
944
|
+
text: Y(q.clickTheRecordButtonSToStart, { PH1: Y(q.startRecording) })
|
|
945
|
+
})}>
|
|
946
|
+
<devtools-button ${X("coverage.toggle-recording")}
|
|
947
|
+
.variant=${p.TONAL} .iconName=${void 0}>
|
|
948
|
+
${Y(q.startRecording)}
|
|
949
|
+
</devtools-button>
|
|
950
|
+
</devtools-widget>`;
|
|
951
|
+
}
|
|
952
|
+
function We(e, t) {
|
|
953
|
+
return y`
|
|
954
|
+
<div class="widget vbox ${t}">
|
|
955
|
+
<div class="message">${e}</div>
|
|
956
|
+
<span class="message">
|
|
957
|
+
${Be(q.reloadPrompt, { PH1: y`
|
|
958
|
+
<devtools-button class="inline-button" ${X("inspector-main.reload")}></devtools-button>` })}
|
|
959
|
+
</span>
|
|
960
|
+
</div>`;
|
|
961
|
+
}
|
|
962
|
+
var Ge = class e extends se {
|
|
963
|
+
#e;
|
|
964
|
+
#t;
|
|
965
|
+
#n;
|
|
966
|
+
#r;
|
|
967
|
+
#i;
|
|
968
|
+
#a;
|
|
969
|
+
#o;
|
|
970
|
+
#s;
|
|
971
|
+
#c;
|
|
972
|
+
#l;
|
|
973
|
+
#u;
|
|
974
|
+
#d = null;
|
|
975
|
+
#f = "";
|
|
976
|
+
#p = { focusResults: () => {} };
|
|
977
|
+
#m = null;
|
|
978
|
+
#h = null;
|
|
979
|
+
constructor(e = $) {
|
|
980
|
+
super({
|
|
981
|
+
useShadowDom: "pure",
|
|
982
|
+
delegatesFocus: !0
|
|
983
|
+
}), this.registerRequiredCSS(Re), this.#l = e, this.#e = null, this.#t = null, this.#n = d.instance().createSetting("coverage-view-coverage-type", 0), this.#r = T.instance().getAction("coverage.toggle-recording");
|
|
984
|
+
let t = v.instance().primaryPageTarget();
|
|
985
|
+
this.#u = !!t?.model(x), this.#i = T.instance().getAction("coverage.clear"), this.#i.setEnabled(!1), this.#a = T.instance().getAction("coverage.export"), this.#a.setEnabled(!1), this.#o = null, this.#s = null, this.#c = d.instance().createSetting("show-content-scripts", !1), this.#c.addChangeListener(this.#T, this), this.requestUpdate();
|
|
986
|
+
}
|
|
987
|
+
performUpdate() {
|
|
988
|
+
let e = {
|
|
989
|
+
coverageType: this.#n.get(),
|
|
990
|
+
recording: this.#r.toggled(),
|
|
991
|
+
supportsRecordOnReload: this.#u,
|
|
992
|
+
typeFilter: this.#s,
|
|
993
|
+
showContentScriptsSetting: this.#c,
|
|
994
|
+
needsReload: this.#d,
|
|
995
|
+
coverageInfo: this.#m,
|
|
996
|
+
textFilter: this.#o,
|
|
997
|
+
selectedUrl: this.#h,
|
|
998
|
+
statusMessage: this.#f,
|
|
999
|
+
onCoverageTypeChanged: this.#v.bind(this),
|
|
1000
|
+
onFilterChanged: (e) => {
|
|
1001
|
+
this.#o = e ? i(e, "i") : null, this.#T();
|
|
1002
|
+
},
|
|
1003
|
+
onTypeFilterChanged: this.#E.bind(this)
|
|
1004
|
+
};
|
|
1005
|
+
this.#l(e, this.#p, this.contentElement);
|
|
1006
|
+
}
|
|
1007
|
+
static instance() {
|
|
1008
|
+
return Q ||= new e(), Q;
|
|
1009
|
+
}
|
|
1010
|
+
static removeInstance() {
|
|
1011
|
+
Q = void 0;
|
|
1012
|
+
}
|
|
1013
|
+
clear() {
|
|
1014
|
+
this.#e && this.#e.reset(), this.#g();
|
|
1015
|
+
}
|
|
1016
|
+
#g() {
|
|
1017
|
+
this.#t &&= (this.#t.dispose(), null), this.#d = null, this.#m = null, this.#f = "", this.#a.setEnabled(!1), this.requestUpdate();
|
|
1018
|
+
}
|
|
1019
|
+
toggleRecording() {
|
|
1020
|
+
this.#r.toggled() ? this.stopRecording() : this.startRecording({
|
|
1021
|
+
reload: !1,
|
|
1022
|
+
jsCoveragePerBlock: this.isBlockCoverageSelected()
|
|
1023
|
+
});
|
|
1024
|
+
}
|
|
1025
|
+
isBlockCoverageSelected() {
|
|
1026
|
+
return this.#n.get() === M.JAVA_SCRIPT;
|
|
1027
|
+
}
|
|
1028
|
+
#_(e) {
|
|
1029
|
+
let t = +!!e;
|
|
1030
|
+
this.#n.set(t);
|
|
1031
|
+
}
|
|
1032
|
+
#v(e) {
|
|
1033
|
+
this.#n.set(e);
|
|
1034
|
+
}
|
|
1035
|
+
async startRecording(e) {
|
|
1036
|
+
this.#g();
|
|
1037
|
+
let t = v.instance().primaryPageTarget();
|
|
1038
|
+
if (!t) return;
|
|
1039
|
+
let { reload: n, jsCoveragePerBlock: r } = {
|
|
1040
|
+
reload: !1,
|
|
1041
|
+
jsCoveragePerBlock: !1,
|
|
1042
|
+
...e
|
|
1043
|
+
};
|
|
1044
|
+
if ((!this.#e || n) && (this.#e = t.model(P)), !this.#e || (E.actionTaken(w.CoverageStarted), r && E.actionTaken(w.CoverageStartedPerBlock), !await this.#e.start(!!r))) return;
|
|
1045
|
+
this.#_(!!r), this.#e.addEventListener(N.CoverageUpdated, this.#y, this), this.#e.addEventListener(N.SourceMapResolved, this.#b, this);
|
|
1046
|
+
let i = t.model(x);
|
|
1047
|
+
v.instance().addModelListener(x, b.PrimaryPageChanged, this.#S, this), this.#t = new K(this.#e, j.instance(), A.instance(), k.instance()), this.#r.setToggled(!0), this.#i.setEnabled(!1), this.#m = [], this.#d = null, this.requestUpdate(), await this.updateComplete, this.#p.focusResults(), n && i ? i.reloadPage() : this.#e.startPolling();
|
|
1048
|
+
}
|
|
1049
|
+
#y(e) {
|
|
1050
|
+
let t = e.data;
|
|
1051
|
+
this.#C(t);
|
|
1052
|
+
}
|
|
1053
|
+
#b() {
|
|
1054
|
+
let e = (this.#e?.entries() || []).map((e) => this.#x(e)).filter((e) => this.#D(e)).map((e) => ({
|
|
1055
|
+
...e,
|
|
1056
|
+
sources: e.sources.filter((e) => this.#D(e))
|
|
1057
|
+
}));
|
|
1058
|
+
this.#m = e;
|
|
1059
|
+
}
|
|
1060
|
+
#x(e) {
|
|
1061
|
+
return {
|
|
1062
|
+
url: e.url(),
|
|
1063
|
+
type: e.type(),
|
|
1064
|
+
size: e.size(),
|
|
1065
|
+
usedSize: e.usedSize(),
|
|
1066
|
+
unusedSize: e.unusedSize(),
|
|
1067
|
+
usedPercentage: e.usedPercentage(),
|
|
1068
|
+
unusedPercentage: e.unusedPercentage(),
|
|
1069
|
+
sources: [...e.sourcesURLCoverageInfo.values()].map(this.#x, this),
|
|
1070
|
+
isContentScript: e.isContentScript(),
|
|
1071
|
+
generatedUrl: e instanceof L ? e.generatedURLCoverageInfo.url() : void 0
|
|
1072
|
+
};
|
|
1073
|
+
}
|
|
1074
|
+
async stopRecording() {
|
|
1075
|
+
v.instance().removeModelListener(x, b.PrimaryPageChanged, this.#S, this), this.#e && (await this.#e.stop(), this.#e.removeEventListener(N.CoverageUpdated, this.#y, this)), this.#r.setToggled(!1), this.#i.setEnabled(!0), this.requestUpdate();
|
|
1076
|
+
}
|
|
1077
|
+
async #S(e) {
|
|
1078
|
+
let t = e.data.frame, n = t.resourceTreeModel().target().model(P);
|
|
1079
|
+
if (n) {
|
|
1080
|
+
if (this.#e !== n) {
|
|
1081
|
+
if (this.#e && (await this.#e.stop(), this.#e.removeEventListener(N.CoverageUpdated, this.#y, this)), this.#e = n, !await this.#e.start(this.isBlockCoverageSelected())) return;
|
|
1082
|
+
this.#e.addEventListener(N.CoverageUpdated, this.#y, this), this.#t = new K(this.#e, j.instance(), A.instance(), k.instance());
|
|
1083
|
+
}
|
|
1084
|
+
e.data.type === ee.ACTIVATION ? this.#d = "prerender-page" : t.backForwardCacheDetails.restoredFromCache ? this.#d = "bfcache-page" : (this.#d = null, this.#m = []), this.requestUpdate(), this.#e.reset(), this.#t?.reset(), this.#e.startPolling();
|
|
1085
|
+
}
|
|
1086
|
+
}
|
|
1087
|
+
#C(e) {
|
|
1088
|
+
this.#w(), this.#b(), this.#a.setEnabled(this.#e !== null && this.#e.entries().length > 0), this.#t?.update(e), this.requestUpdate();
|
|
1089
|
+
}
|
|
1090
|
+
#w() {
|
|
1091
|
+
let e = {
|
|
1092
|
+
total: 0,
|
|
1093
|
+
unused: 0
|
|
1094
|
+
}, t = {
|
|
1095
|
+
total: 0,
|
|
1096
|
+
unused: 0
|
|
1097
|
+
}, n = this.#o !== null;
|
|
1098
|
+
if (this.#e) for (let n of this.#e.entries()) {
|
|
1099
|
+
e.total += n.size(), e.unused += n.unusedSize();
|
|
1100
|
+
let r = this.#x(n);
|
|
1101
|
+
if (this.#D(r)) if (this.#o?.test(n.url())) t.total += n.size(), t.unused += n.unusedSize();
|
|
1102
|
+
else for (let e of n.sourcesURLCoverageInfo.values()) this.#D(this.#x(e)) && (t.total += e.size(), t.unused += e.unusedSize());
|
|
1103
|
+
}
|
|
1104
|
+
this.#f = n ? Y(q.filteredSTotalS, {
|
|
1105
|
+
PH1: r(t),
|
|
1106
|
+
PH2: r(e)
|
|
1107
|
+
}) : r(e);
|
|
1108
|
+
function r({ total: e, unused: t }) {
|
|
1109
|
+
let n = e - t, r = e ? Math.round(100 * n / e) : 0;
|
|
1110
|
+
return Y(q.sOfSSUsedSoFarSUnused, {
|
|
1111
|
+
PH1: o(n),
|
|
1112
|
+
PH2: o(e),
|
|
1113
|
+
PH3: r,
|
|
1114
|
+
PH4: o(t)
|
|
1115
|
+
});
|
|
1116
|
+
}
|
|
1117
|
+
}
|
|
1118
|
+
#T() {
|
|
1119
|
+
this.#b(), this.#w(), this.requestUpdate();
|
|
1120
|
+
}
|
|
1121
|
+
#E(e) {
|
|
1122
|
+
E.actionTaken(w.CoverageReportFiltered), this.#s = e, this.#b(), this.#w(), this.requestUpdate();
|
|
1123
|
+
}
|
|
1124
|
+
#D(t) {
|
|
1125
|
+
let n = t.url;
|
|
1126
|
+
if (n.startsWith(e.EXTENSION_BINDINGS_URL_PREFIX) || t.isContentScript && !this.#c.get() || this.#s && !(t.type & this.#s)) return !1;
|
|
1127
|
+
if (t.sources.length > 0) {
|
|
1128
|
+
for (let e of t.sources) if (this.#D(e)) return !0;
|
|
1129
|
+
}
|
|
1130
|
+
return !this.#o || this.#o.test(n);
|
|
1131
|
+
}
|
|
1132
|
+
async exportReport() {
|
|
1133
|
+
let e = new ve(), t = `Coverage-${n(/* @__PURE__ */ new Date())}.json`;
|
|
1134
|
+
await e.open(t) && this.#e && await this.#e.exportReport(e);
|
|
1135
|
+
}
|
|
1136
|
+
selectCoverageItemByUrl(e) {
|
|
1137
|
+
this.#h = e, this.requestUpdate();
|
|
1138
|
+
}
|
|
1139
|
+
static EXTENSION_BINDINGS_URL_PREFIX = "extensions::";
|
|
1140
|
+
wasShown() {
|
|
1141
|
+
ce.instance().setFlavor(e, this), super.wasShown();
|
|
1142
|
+
}
|
|
1143
|
+
willHide() {
|
|
1144
|
+
super.willHide(), ce.instance().setFlavor(e, null);
|
|
1145
|
+
}
|
|
1146
|
+
get model() {
|
|
1147
|
+
return this.#e;
|
|
1148
|
+
}
|
|
1149
|
+
}, Ke = class {
|
|
1150
|
+
handleAction(e, t) {
|
|
1151
|
+
let n = "coverage";
|
|
1152
|
+
return fe.instance().showView(n, !1, !0).then(() => fe.instance().view(n)?.widget()).then((e) => this.#e(e, t)), !0;
|
|
1153
|
+
}
|
|
1154
|
+
#e(e, t) {
|
|
1155
|
+
switch (t) {
|
|
1156
|
+
case "coverage.toggle-recording":
|
|
1157
|
+
e.toggleRecording();
|
|
1158
|
+
break;
|
|
1159
|
+
case "coverage.start-with-reload":
|
|
1160
|
+
e.startRecording({
|
|
1161
|
+
reload: !0,
|
|
1162
|
+
jsCoveragePerBlock: e.isBlockCoverageSelected()
|
|
1163
|
+
});
|
|
1164
|
+
break;
|
|
1165
|
+
case "coverage.clear":
|
|
1166
|
+
e.clear();
|
|
1167
|
+
break;
|
|
1168
|
+
case "coverage.export":
|
|
1169
|
+
e.exportReport();
|
|
1170
|
+
break;
|
|
1171
|
+
default: console.assert(!1, `Unknown action: ${t}`);
|
|
1172
|
+
}
|
|
1173
|
+
}
|
|
1174
|
+
};
|
|
1175
|
+
//#endregion
|
|
1176
|
+
export { be as a, P as i, Le as n, N as o, we as r, I as s, ze as t };
|